Commit Graph

408 Commits

Author SHA1 Message Date
R David Murray 410d320703 whatsnew: XMLPullParser, plus some doc updates.
I was confused by the text saying that read_events "iterated", since it
actually returns an iterator (that's what a generator does) that the
caller must then iterate.  So I tidied up the language.  I'm not sure
what the sentence "Events provided in a previous call to read_events()
will not be yielded again." is trying to convey, so I didn't try to fix that.

Also fixed a couple more news items.
2014-01-04 23:52:50 -05:00
Andrew Kuchling 98a0d063a1 Closes #12828: add docstring text noting this is an internal-only module 2013-11-12 10:25:15 -05:00
Andrew Kuchling c6a140f330 Merge from 3.3 2013-11-12 10:26:15 -05:00
Benjamin Peterson 84c1205043 merge 3.3 (#19127) 2013-09-29 11:15:49 -04:00
Benjamin Peterson 72a98541f0 remove duplicate method (closes #19127) 2013-09-29 11:15:31 -04:00
Nick Coghlan 4cc2afa0ec Close #18990: remove root attribute from XMLPullParser
- this was an internal implementation detail for iterparse
- this has been changed to use a new private method instead
- XMLPullParser.close docs are now more explicit about not
  returning a root element and instead direct users towards
  read_events
- also added missing docstrings and clarified some details
  related to exactly *when* events are consumed from the
  internal queue

(Initial patch by Stefan Behnel)
2013-09-28 23:50:35 +10:00
Eli Bendersky b586934f0e Issue #17741: Rename IncrementalParser and its methods.
The new names are hopefully more descriptive and consistent. If you feel you
don't agree with this change, *please* read issue 17741 first - there's a lot of
discussion in there.
2013-08-30 05:51:20 -07:00
Eli Bendersky 6206a7e4b0 Remove the obsolete XMLParser._start/_start_list duality.
XMLParser configures expat to report attributes in a list (ordered_attributes),
so only _start_list is needed. Rename it to _start and kill _start.
2013-08-25 18:58:18 -07:00
Antoine Pitrou 0acbcb5bbe Issue #17741: use composition, rather than inheritance, for xml.etree.iterparse's result class.
Patch by Stefan Behnel.
2013-08-23 23:04:30 +02:00
Ezio Melotti e0c69161bc #18741: merge with 3.3. 2013-08-17 16:13:22 +03:00
Ezio Melotti b5bc353b88 #18741: fix more typos. Patch by Févry Thibault. 2013-08-17 16:11:40 +03:00
Eli Bendersky b9b6ce6f2c Merge fix for Issue #17011 from 3.3 2013-08-03 17:48:41 -07:00
Eli Bendersky 2acc525a97 Issue #17011: Fix caching of xpath path when namespaces are present.
Thanks to Stefan Behnel for the report and proposed solution & test.
2013-08-03 17:47:47 -07:00
Christian Heimes 6597aa16b6 Issue #18347: ElementTree's html serializer now preserves the case of closing tags. 2013-07-05 01:40:52 +02:00
Christian Heimes 54ad7e39df Issue #18347: ElementTree's html serializer now preserves the case of closing tags. 2013-07-05 01:39:49 +02:00
Brett Cannon cd171c8e92 Issue #18200: Back out usage of ModuleNotFoundError (8d28d44f3a9a) 2013-07-04 17:43:24 -04:00
Brett Cannon 0a140668fa Issue #18200: Update the stdlib (except tests) to use
ModuleNotFoundError.
2013-06-13 20:57:26 -04:00
Eli Bendersky a369923cab Get rid of ugly code duplication for ElementTree.parse when the accelerator
is imported. Instead, ElementTree.parse can look for a special internal method
defined by the accelerator.
2013-05-19 18:47:23 -07:00
Eli Bendersky 8687245e27 normalize whitespace 2013-05-19 09:27:13 -07:00
Eli Bendersky e6a951b83e Cleanup even more dead code 2013-05-19 09:25:52 -07:00
Eli Bendersky c4e98a6a9b Cleanup more old ET library leftovers 2013-05-19 09:24:43 -07:00
Eli Bendersky 46955b2d30 Issue #17988: remove unused alias for Element and rename the used one
Renaming to _Element_Py for clarity and moving it to a more logical location.
_ElementInterface OTOH is unused and is therefore removed.

Close #17988
2013-05-19 09:20:50 -07:00
Eli Bendersky 3a4fbd8241 _elementtree.XMLParser._setevents should support any sequence, not just tuples
Also clean up some code around this
2013-05-19 09:01:49 -07:00
Serhiy Storchaka 3068aed92b Issue #17606: Fixed support of encoded byte strings in the XMLGenerator
characters() and ignorableWhitespace() methods.  Original patch by Sebastian
Ortiz Vasquez.
2013-05-12 17:31:59 +03:00
Serhiy Storchaka 3eab6b363a Issue #17606: Fixed support of encoded byte strings in the XMLGenerator
characters() and ignorableWhitespace() methods.  Original patch by Sebastian
Ortiz Vasquez.
2013-05-12 17:31:16 +03:00
Georg Brandl 2665f21866 merge with 3.3 2013-05-12 12:08:05 +02:00
Georg Brandl 64949fa20e merge with 3.2 2013-05-12 11:52:22 +02:00
Georg Brandl c502df4e3e Issue #17915: Fix interoperability of xml.sax with file objects returned by
codecs.open().
2013-05-12 11:41:12 +02:00
Eli Bendersky c9f5ca232a Remove superfluous try/except 2013-04-20 09:11:37 -07:00
Eli Bendersky bf05df2396 Make license notices more consistent and remove old changelog.
Also remove unused macro.
2013-04-20 05:44:01 -07:00
Antoine Pitrou 5b235d0923 Issue #17741: Add ElementTree.IncrementalParser, an event-driven parser for non-blocking applications. 2013-04-18 19:37:06 +02:00
Victor Stinner 765531d2d0 Issue #17516: use comment syntax for comments, instead of multiline string 2013-03-26 01:11:54 +01:00
Eli Bendersky 72cdb5c39e Issue #11367: fix documentation of some find* methods in ElementTree 2013-03-12 06:04:33 -07:00
Eli Bendersky 7343cb0790 Issue #11367: fix documentation of some find* methods in ElementTree 2013-03-12 06:01:22 -07:00
Eli Bendersky 84fae785ce Issue #16954: Add docstrings for ElementTree
Based on patch by David Lam
2013-03-09 07:12:48 -08:00
Giampaolo Rodola' 2f50aaf2ff modernize some modules' code by using with statement around open() 2013-02-12 02:04:27 +01:00
Serhiy Storchaka 02c2076bd5 Issue #1470548: XMLGenerator now works with binary output streams. 2013-02-10 14:34:53 +02:00
Serhiy Storchaka 9fef188c9e Issue #1470548: XMLGenerator now works with binary output streams. 2013-02-10 14:31:07 +02:00
Serhiy Storchaka 88efc52d74 Issue #1470548: XMLGenerator now works with binary output streams. 2013-02-10 14:29:52 +02:00
Eli Bendersky c4d5e08e3f Issue #9708: Fix support for iterparse(parser=...) argument per documentation.
When _elementtree is imported, iterparse is redefined as a class and the parser
argument was ommitted. Fix this, and add a docstring to the class.
2013-01-24 07:15:46 -08:00
Eli Bendersky aaa9780fe1 Issue #9708: Fix support for iterparse(parser=...) argument per documentation.
When _elementtree is imported, iterparse is redefined as a class and the parser
argument was ommitted. Fix this, and add a docstring to the class.
2013-01-24 07:15:19 -08:00
Eli Bendersky 5c6198b3fd Issue #12323: Strengthen error checking of the position XPath selectors 2013-01-24 06:29:26 -08:00
Ezio Melotti 605a95ae44 #11379: merge with 3.3. 2013-01-22 22:50:06 +02:00
Ezio Melotti 564e4d8dc9 #11379: merge with 3.2. 2013-01-22 22:49:46 +02:00
Ezio Melotti da4b5b82a3 #11379: rephrase minidom documentation to use the term "minimal" instead of "lightweight". Patch by Éric Araujo. 2013-01-22 22:47:57 +02:00
Serhiy Storchaka 9e189f0a28 Cleanup the docs ElementTree a bit. 2013-01-13 22:24:27 +02:00
Serhiy Storchaka f1b045f417 Describe the default_namespace parameter of ElemetTree.write. 2013-01-13 22:04:43 +02:00
Serhiy Storchaka 03530b980e Describe the default_namespace parameter of ElemetTree.write. 2013-01-13 21:58:04 +02:00
Eli Bendersky e9af827fb1 Cleanup the docs ElementTree a bit and describe the default_namespace parameter. In the code, replace the old outdated Doxygen-ish comment above ElementTree.write by a proper docstring. 2013-01-13 06:27:51 -08:00
Eli Bendersky a9a2ef5550 Close #14377: Add a new parameter to ElementTree.write and some module-level
serialization functions - short_empty_elements. It controls how elements
without contents are emitted.

Patch by Serhiy Storchaka. Feature initially proposed by Ariel Poliak.
2013-01-13 06:04:43 -08:00
Andrew Svetlov f7a17b48d7 Replace IOError with OSError (#16715) 2012-12-25 16:47:37 +02:00
Andrew Svetlov a191959849 Issue #16714: use 'raise' exceptions, don't 'throw'.
Patch by Serhiy Storchaka.
2012-12-18 21:27:16 +02:00
Andrew Svetlov 5b89840d9c Issue #16714: use 'raise' exceptions, don't 'throw'.
Patch by Serhiy Storchaka.
2012-12-18 21:26:36 +02:00
Andrew Svetlov 737fb89dd1 Issue #16714: use 'raise' exceptions, don't 'throw'.
Patch by Serhiy Storchaka.
2012-12-18 21:14:22 +02:00
Antoine Pitrou 997adb5819 Issue #16089: Allow ElementTree.TreeBuilder to work again with a non-Element element_factory (fixes a regression in SimpleTAL). 2012-10-04 19:54:53 +02:00
Antoine Pitrou ee329318db Issue #16089: Allow ElementTree.TreeBuilder to work again with a non-Element element_factory (fixes a regression in SimpleTAL). 2012-10-04 19:53:29 +02:00
Philip Jenvey fd0d3e5d25 more yield from
patch by Serhiy Storchaka
2012-10-01 15:34:31 -07:00
Ezio Melotti ab9b661fdd #15970: merge with 3.2. 2012-09-19 08:25:01 +03:00
Ezio Melotti c90111f9ab #15970: xml.etree.ElementTree now serializes correctly the empty HTML elements "meta" and "param". 2012-09-19 08:19:12 +03:00
Eli Bendersky f90fc68db4 fix whitespace woes 2012-07-17 15:09:56 +03:00
Eli Bendersky 43cc5f29a8 Optimize tostringlist by taking the stream class outside the function. It's now 2x faster on short calls. Related to #1767933 2012-07-17 15:09:12 +03:00
Eli Bendersky 426e248feb Preserve the invariant tostring(elem) == b''.join(tostringlist(elem)) and add a test to make sure it keeps working 2012-07-17 05:45:11 +03:00
Eli Bendersky 00f402bfcb Close #1767933: Badly formed XML using etree and utf-16. Patch by Serhiy Storchaka, with some minor fixes by me 2012-07-15 06:02:22 +03:00
Eli Bendersky 8a80502d2c Issue #15296: Fix minidom.toxml/toprettyxml for non-unicode encodings. Patch by Serhiy Storchaka, with some minor style adjustments by me. 2012-07-13 09:52:39 +03:00
Florent Xicluna a1c974a66d Minor refactoring in xml.etree.ElementTree doctype parser. 2012-07-07 13:16:44 +02:00
Eli Bendersky 27cbb19ae5 Removed _SimpleElementPath and its flaky test. The test monkey-patches the module, which causes other failures and fails itself depending on the order tests are run. 2012-06-15 09:03:19 +03:00
Eli Bendersky 64d11e60f2 Replace the iter/itertext methods of Element in _elementtree with true C implementations, instead of the bootstrapped Python code. In addition to being cleaner (removing the last remains of the bootstrapping code in _elementtree), this gives a 10x performance boost for iter() on large documents.
Also reorganized the tests a bit to be more robust.
2012-06-15 07:42:50 +03:00
Eli Bendersky 737b173355 Issue 14814: Add namespaces keyword arg to find(*) methods in _elementtree.
Add attrib keyword to Element and SubElement in _elementtree.
Patch developed with Ezio Melotti.
2012-05-29 06:02:56 +03:00
Eli Bendersky 396e8fcf36 Issue #13782: streamline argument type-checking in ET.Element
append, extend and insert now consistently type-check their argument in both
the C and Python implementations, and raise TypeError for non-Element
argument.

Added tests
2012-03-23 14:24:20 +02:00
Florent Xicluna 8cf4b51fa4 xml.dom.minidom: add more __slots__ to limit resource usage. 2012-03-05 12:37:02 +01:00
Florent Xicluna 6c75301eb6 xml.dom: fix typo, drop unused imports. 2012-03-05 12:35:15 +01:00
Florent Xicluna fb06746852 Flatten nested try ... finally, try ... except. 2012-03-05 11:42:49 +01:00
Florent Xicluna 75b5e7ee15 Issue #14007: accept incomplete TreeBuilder objects (missing start/end/data/close) for the Python implementation as well. Add disabled tests for the doctype() method. 2012-03-05 10:42:19 +01:00
Martin v. Löwis 67245a6ed4 Issue #14168: Check for presence of _attrs before accessing it. 2012-03-05 07:01:49 +01:00
Eli Bendersky 092af1fc5c Issue #14128: Exposing Element as an actual type from _elementtree, rather than a factory function.
This makes the C implementation more aligned with the Python implementation.
Also added some tests to ensure that Element is now a type and that it can
be subclassed.
2012-03-04 07:14:03 +02:00
Martin v. Löwis 7b77188e89 Create _attr/_attrNS lazily. 2012-02-19 20:55:05 +01:00
Martin v. Löwis 14aa280de2 Use __slots__ throughout instead of __dict__, to reduce the memory usage. 2012-02-19 20:25:12 +01:00
Florent Xicluna 1639505c38 fix the _namespace_map cleanup for cElementTree tests. 2012-02-16 23:28:35 +01:00
Florent Xicluna a72a98f24a Issue #13988: cElementTree is deprecated and the _elementtree accelerator is automatically used whenever available. 2012-02-13 11:03:30 +01:00
Florent Xicluna f4bdf4e478 Issue #13988: move the python bootstrap code to cElementTree.py, and remove obsolete code for Python 2.4 and 2.5. 2012-02-11 11:28:16 +01:00
Florent Xicluna 313b2ad1a8 Fix imports in xml.dom. 2011-12-10 21:14:53 +01:00
Ezio Melotti def4728fd6 #4147: merge with 3.2. 2011-11-18 17:36:07 +02:00
Ezio Melotti 8008f2aba0 #4147: minidom's toprettyxml no longer adds whitespace around a text node when it is the only child of an element. Initial patch by Dan Kenigsberg. 2011-11-18 17:34:26 +02:00
Florent Xicluna 91d5193b3a Closes #2892: preserve iterparse events in case of SyntaxError. 2011-11-01 23:31:09 +01:00
Florent Xicluna f24e7e6c41 Merge 3.2: issue #2892 2011-11-01 23:33:14 +01:00
R David Murray 1d30db459d merge #4147: minidom's toprettyxml no longer adds whitespace to text nodes. 2011-10-01 16:22:35 -04:00
R David Murray 791744b070 #4147: minidom's toprettyxml no longer adds whitespace to text nodes.
Patch by Dan Kenigsberg.
2011-10-01 16:19:51 -04:00
Victor Stinner 3663abab59 (merge 3.2) Issue #12451: xml.dom.pulldom: parse() now opens files in binary
mode instead of the text mode (using the locale encoding) to avoid encoding
issues.
2011-07-04 01:27:37 +02:00
Victor Stinner bbdc08ea6e Issue #12451: xml.dom.pulldom: parse() now opens files in binary mode instead
of the text mode (using the locale encoding) to avoid encoding issues.
2011-07-04 01:25:55 +02:00
Victor Stinner 3909da7fca (merge 3.2) Issue #12451: The XInclude default loader of xml.etree now decodes
files from UTF-8 instead of the locale encoding if the encoding is not
specified. It now also opens XML files for the parser in binary mode instead of
the text mode to avoid encoding issues.
2011-06-30 18:11:18 +02:00
Victor Stinner eaf399e335 Issue #12451: The XInclude default loader of xml.etree now decodes files from
UTF-8 instead of the locale encoding if the encoding is not specified. It now
also opens XML files for the parser in binary mode instead of the text mode to
avoid encoding issues.
2011-06-30 18:10:14 +02:00
Benjamin Peterson 8c6f88efa2 remove __version__s dependent on subversion keyword expansion (closes #12221) 2011-05-31 20:52:17 -05:00
Martin v. Löwis 867754e3e3 merge 11164 2011-05-09 08:10:38 +02:00
Martin v. Löwis 2f48d892d4 Stop trying to use _xmlplus in the xml module. Closes #11164.
Patch by Arfrever Frehtes Taifersar Arahesis.
2011-05-09 08:05:43 +02:00
Ezio Melotti 3b3499ba69 #11565: Merge with 3.1. 2011-03-16 11:35:38 +02:00
Ezio Melotti 13925008dc #11565: Fix several typos. Patch by Piotr Kasprzyk. 2011-03-16 11:05:33 +02:00
Ezio Melotti 4969f709cc #11515: Merge with 3.1. 2011-03-15 05:59:46 +02:00
Ezio Melotti 42da663e6f #11515: fix several typos. Patch by Piotr Kasprzyk. 2011-03-15 05:18:48 +02:00
Georg Brandl 90b20675bd #10777: fix iteration over dict keys while mutating the dict. 2010-12-28 10:38:33 +00:00
Georg Brandl c95c91880a Guard against rogue tuples. 2010-12-09 18:26:02 +00:00