classification
Title: pulldom.DOMEventStream.__getitem__ is broken
Type: behavior Stage: resolved
Components: Library (Lib), XML Versions: Python 3.8
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: Thomas Fenzl, berker.peksag, eric.araujo, mark.smith, martin.panter, serhiy.storchaka
Priority: normal Keywords: patch

Created on 2010-07-24 13:04 by mark.smith, last changed 2018-08-11 06:05 by berker.peksag. This issue is now closed.

Files
File name Uploaded Description Edit
pulldom_deprecation.diff Thomas Fenzl, 2013-03-20 18:16 review
Pull Requests
URL Status Linked Edit
PR 8609 merged berker.peksag, 2018-08-01 18:42
Messages (8)
msg111475 - (view) Author: Mark Smith (mark.smith) * Date: 2010-07-24 13:04
DOMEventStream implements __getitem__, but ignores the index/key that is passed in and simply returns the next item from the stream. This is seriously unexpected behaviour.

I don't believe this functionality can be sensibly implemented in this class, and plan to submit a patch deprecating this method.
msg111477 - (view) Author: Éric Araujo (eric.araujo) * (Python committer) Date: 2010-07-24 13:10
You may want to keep existing functionality, this time in the proper method (__iter__).
msg111479 - (view) Author: Mark Smith (mark.smith) * Date: 2010-07-24 13:46
I should have mentioned: __iter__ is already implemented, and works as expected.
msg184773 - (view) Author: Thomas Fenzl (Thomas Fenzl) * Date: 2013-03-20 18:16
I added a depreciation warning to __getitem__.
Also added a testcase checking for it. As item access to DOMEventStream was never documented, no changes were made to the documentation.
msg258342 - (view) Author: Martin Panter (martin.panter) * (Python committer) Date: 2016-01-16 00:30
Left a review
msg258363 - (view) Author: Serhiy Storchaka (serhiy.storchaka) * (Python committer) Date: 2016-01-16 06:07
Similar outdated __getitem__ left in wsgiref.util.FileWrapper and fileinput.FileInput.
msg322879 - (view) Author: Berker Peksag (berker.peksag) * (Python committer) Date: 2018-08-01 18:44
I've fixed a bug that uses DOMEventStream.__getitem__ at work today. I've opened PR 8609 to deprecate __getitem__ methods of DOMEventStream, FileInput and FileWrapper classes.
msg323400 - (view) Author: Berker Peksag (berker.peksag) * (Python committer) Date: 2018-08-11 06:05
New changeset 84a13fbda0d79789e3c9efcc9f64752261ce1e8d by Berker Peksag in branch 'master':
bpo-9372: Deprecate several __getitem__ methods (GH-8609)
https://github.com/python/cpython/commit/84a13fbda0d79789e3c9efcc9f64752261ce1e8d
History
Date User Action Args
2018-08-11 06:05:27berker.peksagsetstatus: open -> closed
resolution: fixed
stage: patch review -> resolved
2018-08-11 06:05:06berker.peksagsetmessages: + msg323400
2018-08-01 18:44:44berker.peksagsetversions: + Python 3.8, - Python 3.6
nosy: + berker.peksag

messages: + msg322879

components: + Library (Lib)
2018-08-01 18:42:13berker.peksagsetpull_requests: + pull_request8115
2016-01-16 06:07:19serhiy.storchakasetnosy: + serhiy.storchaka
messages: + msg258363
2016-01-16 00:30:52martin.pantersetversions: + Python 3.6, - Python 3.2
nosy: + martin.panter

messages: + msg258342

stage: test needed -> patch review
2013-03-20 18:16:38Thomas Fenzlsetfiles: + pulldom_deprecation.diff

nosy: + Thomas Fenzl
messages: + msg184773

keywords: + patch
2010-07-24 13:46:55mark.smithsetmessages: + msg111479
2010-07-24 13:10:50eric.araujosetnosy: + eric.araujo
messages: + msg111477

type: behavior
stage: test needed
2010-07-24 13:04:52mark.smithcreate