Serhiy Storchaka
609a2e17ad
Issue #22995 : Default implementation of __reduce__ and __reduce_ex__ now
...
rejects builtin types with not defined __new__.
Added tests for non-pickleable types.
2015-11-12 11:31:51 +02:00
Serhiy Storchaka
d7a4415599
Issue #22995 : Default implementation of __reduce__ and __reduce_ex__ now
...
rejects builtin types with not defined __new__.
Added tests for non-pickleable types.
2015-11-12 11:23:04 +02:00
Martin Panter
982a08f8bb
Issue #25047 : Merge Element Tree encoding from 3.4 into 3.5
2015-09-23 01:43:08 +00:00
Martin Panter
89f76d3f91
Issue #25047 : Respect case writing XML encoding declarations
...
This restores the ability to write encoding names in uppercase like "UTF-8",
which worked in Python 2.
2015-09-23 01:14:35 +00:00
Serhiy Storchaka
4a01cab898
Issue #19176 : Fixed doctype() related bugs in C implementation of ElementTree.
...
A deprecation warning no longer issued by XMLParser subclass with default
doctype() method. Direct call of doctype() now issues a warning. Parser's
doctype() now is not called if target's doctype() is called. Based on patch
by Martin Panter.
2015-06-29 23:08:52 +03:00
Serhiy Storchaka
05744ac6e0
Issue #19176 : Fixed doctype() related bugs in C implementation of ElementTree.
...
A deprecation warning no longer issued by XMLParser subclass with default
doctype() method. Direct call of doctype() now issues a warning. Parser's
doctype() now is not called if target's doctype() is called. Based on patch
by Martin Panter.
2015-06-29 22:35:58 +03:00
Serhiy Storchaka
a2c145c2f3
Issue #24091 : Fixed various crashes in corner cases in C implementation of
...
ElementTree.
2015-05-18 18:33:31 +03:00
Serhiy Storchaka
5bf3120e24
Issue #24091 : Fixed various crashes in corner cases in C implementation of
...
ElementTree.
2015-05-18 18:29:33 +03:00
Serhiy Storchaka
f0eeedf0d8
Issue #22681 : Added support for the koi8_t encoding.
2015-05-12 23:24:19 +03:00
Serhiy Storchaka
ad8a1c3fb2
Issue #22682 : Added support for the kz1048 encoding.
2015-05-12 23:16:55 +03:00
Serhiy Storchaka
bad1257c96
Issue #22777 : Test pickling with all protocols.
2014-12-15 14:03:42 +02:00
Eli Bendersky
8148164353
Issue #19815 : Fix segfault when parsing empty namespace declaration.
...
Based on patches by Christian Heimes and Vajrasky Kok
2013-11-28 06:35:40 -08:00
Eli Bendersky
5dd40e555b
Issue #19815 : Fix segfault when parsing empty namespace declaration.
...
Based on patches by Christian Heimes and Vajrasky Kok
2013-11-28 06:31:58 -08:00
Serhiy Storchaka
be0c3250b1
Issue #19668 : Added support for the cp1125 encoding.
2013-11-23 18:52:23 +02: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
12f18289c0
Merge for Issue #18997 : Issue #18997 : fix ElementTree crash with using pickle and __getstate__.
2013-09-13 06:27:52 -07:00
Eli Bendersky
dd3661e782
Issue #18997 : fix ElementTree crash with using pickle and __getstate__.
...
Based on report and initial patch from Germán M. Bravo
2013-09-13 06:24:25 -07: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
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
Eli Bendersky
4ace240fe5
Clean-up duplicated code in tests
2013-05-25 07:12:14 -07:00
Eli Bendersky
6dc32b34dd
Issue #13612 : handle unknown encodings without a buffer overflow.
...
This affects pyexpat and _elementtree. PyExpat_CAPI now exposes a new
function - DefaultUnknownEncodingHandler.
Based on a patch by Serhiy Storchaka.
2013-05-25 05:25:48 -07:00
Serhiy Storchaka
66d53fa9ad
Issue #16986 : ElementTree now correctly parses a string input not only when
...
an internal XML encoding is UTF-8 or US-ASCII.
2013-05-22 17:07:51 +03:00
Eli Bendersky
08231a9c6a
Issue #17901 : fix TreeBuilder construction for an explicit element_factory=None
...
Based on report and patch by Aaron Oakley.
2013-05-18 15:47:16 -07:00
Eli Bendersky
8be90396f2
Clean-up duplicated code in tests
2013-05-25 07:12:38 -07:00
Eli Bendersky
7b3022f24f
Issue #13612 : handle unknown encodings without a buffer overflow.
...
This affects pyexpat and _elementtree. PyExpat_CAPI now exposes a new
function - DefaultUnknownEncodingHandler.
Based on a patch by Serhiy Storchaka.
2013-05-25 05:27:10 -07:00
Serhiy Storchaka
447b6e3c6e
Issue #16986 : ElementTree now correctly parses a string input not only when
...
an internal XML encoding is UTF-8 or US-ASCII.
2013-05-22 17:21:06 +03:00
Eli Bendersky
e26fa1bdcb
Add some testing to verify which module was imported in ET tests.
...
This is useful when mucking with import_fresh_module to either force or block
importing of the _elementtree accelerator. These tests in place provide an
immediate indication whether the accelerator was actually imported and overrode
the classes it should have.
2013-05-19 17:49:54 -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
Eli Bendersky
20c1cdd64a
Issue #17901 : fix TreeBuilder construction for an explicit element_factory=None
...
Based on report and patch by Aaron Oakley.
2013-05-18 15:47:58 -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
Eli Bendersky
b26545e7b4
Some cosmetic changes
2013-02-26 05:54:04 -08:00
Eli Bendersky
236870439c
Some cosmetic changes
2013-02-26 05:53:23 -08:00
Serhiy Storchaka
91d0ca72de
Issue #15083 : Convert ElementTree doctests to unittests.
2013-02-25 17:21:42 +02:00
Serhiy Storchaka
f8cf59e8aa
Issue #15083 : Convert ElementTree doctests to unittests.
2013-02-25 17:20:59 +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
Eli Bendersky
791c97a6a8
Add some tests for XPath numeric indexing
2013-01-22 06:15:29 -08:00
Eli Bendersky
a80f761a6d
Add some tests for XPath numeric indexing
2013-01-22 06:12:54 -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
Eli Bendersky
25771b3749
Issue #16922 : fixed findtext() to return empty Unicode string instead of empty bytes object when there's no text.
...
Patch by Serhiy Storchaka.
2013-01-13 05:26:07 -08:00
Eli Bendersky
c31f77355c
clean trailing whitespace
2013-01-12 07:44:32 -08:00
Eli Bendersky
ceab1a950b
Issues #15083 and #16992 : port find.* method tests to unittest
2013-01-12 07:42:46 -08:00
Eli Bendersky
e6174ca85e
Issue #16913 : Fix Element.itertext()'s handling of text with XML entities.
...
Patch by Serhiy Storchaka
2013-01-10 06:27:53 -08:00
Eli Bendersky
458c0d5a77
normalize whitespace
2013-01-10 06:07:00 -08:00
Eli Bendersky
698bdb2a6c
Issue #16076 : make _elementtree.Element pickle-able in a way that is compatible
...
with the Python version of the class.
Patch by Daniel Shahaf.
2013-01-10 06:01:06 -08:00
Eli Bendersky
a873690d2c
The get() and iter() are now able to accept keyword arguments.
...
In conformance with the documentation and the Python version.
Patch by Franck Michea.
2013-01-05 06:26:39 -08:00
Eli Bendersky
52280c427a
Skip a test correctly for the C-version. The decorator doesn't really work
...
because it evaluates its condition before pyET is even set by test_main.
Therefore, the check it moved to "runtime".
2012-12-30 06:27:56 -08:00
Eli Bendersky
7ec45f7a36
For Issue #16076 : make sure that pickling of Element objects is tested, and do
...
it properly to avoid problems with test-run-order dependencies.
2012-12-30 06:17:49 -08: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
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
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
6319e0fa20
Make the test more resilient to test-run order ( closes #15075 )
2012-06-16 06:47:44 +03:00
Eli Bendersky
307693a8bb
Skip XincludeTest entirely instead of just ignoring failures, because it may segfault, depending on the order of running tests
2012-06-15 09:40:44 +03: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
175fada429
mark problematic test as expected failure - investigating
2012-06-15 08:37:08 +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
2b6b73e7e1
Issue #14007 : implement doctype() method calling in XMLParser of _elementtree.
...
Includes exposing a doctype handler from expat through pyexpat.
2012-06-01 11:32:34 +03:00
Eli Bendersky
52467b167e
Issue #14007 : make XMLParser a real subclassable type exported from _elementtree. +cleanups
2012-06-01 07:13:08 +03:00
Eli Bendersky
48d358ba86
Issue #14007 : implemented the 'element_factory' feature of TreeBuilder in
...
_elementtree, with a test.
2012-05-30 17:57:50 +03:00
Eli Bendersky
58d548dff1
Issue #14007 : make TreeBuilder an actual type exposed from _elementtree, and subclassable.
2012-05-29 15:45:16 +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
b20df95827
Issue #14849 : setup Element data members to be assignable in subclasses
2012-05-20 06:33:29 +03:00
Eli Bendersky
ebf37a2ffb
Fixes and enhancements to _elementtree:
...
* Fixed refleak problems when GC collection is run (see messages in
issue #14065 )
* Added weakref support to Element objects
2012-04-03 22:02:37 +03:00
Eli Bendersky
0261d754cd
Removing the test of Element that causes ref-leak in GC (issue #14464 ).
...
I will now continue investigating the cause of the ref-leak, but I wanted
to remove the test so that the refcount test in the buildbots could be clean.
The whole change (adding GC to Element) is not reverted because it improved
the situation (GC works for immediate cycles) and didn't cause regressions
(the test is new and was added together with the fix).
2012-04-01 17:40:17 +03:00
Eli Bendersky
a5e822045c
Fix the tests of GC collection in ET.Element according to Benjamin's recommendations
2012-03-31 13:55:38 +03:00
Eli Bendersky
0192ba33b4
Issue #14065 : Added cyclic GC support to ET.Element
2012-03-30 16:38:33 +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
Eli Bendersky
6e33525098
fix trailing whitespace
2012-03-16 15:32:04 +02:00
Eli Bendersky
2b711409c7
Add a test that makes sure TreeBuilder can be passed element_factory in the
...
constructor. Marked as expectedFailure since it currently fails for the C
implementation.
2012-03-16 15:29:50 +02:00
Eli Bendersky
5b77d81314
Issue #14207 : the ParseError exception raised by _elementtree was made
...
consistent to the one raised by the Python module (the 'code' attribute
was added).
In addition, the exception is now documented.
Added a test to check that ParseError has the required attributes, and
threw away the equivalent doctest which is no longer required.
2012-03-16 08:20:05 +02:00
Eli Bendersky
f996e775ea
Closes Issue #14246 : _elementtree parser will now handle io.StringIO
2012-03-16 05:53:30 +02:00
Eli Bendersky
865756a94c
Issue #14178 : Problem deleting slices with steps != +1 in the _elementtree module.
...
Fixed the problem and added some tests. Closes #14178
2012-03-09 13:38:15 +02: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
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
Florent Xicluna
1639505c38
fix the _namespace_map cleanup for cElementTree tests.
2012-02-16 23:28:35 +01:00
Florent Xicluna
e59a306081
The C accelerator was not always imported for cElementTree's tests. (there's still an issue with --huntrleaks switch)
2012-02-16 23:17:31 +01:00
Eli Bendersky
292f9a891d
make TestAccelerator[Not]Imported for ElementTree more robust
2012-02-16 19:55:29 +02:00
Eli Bendersky
da57819efa
in the tests of ElementTree, verify that the C accelerator is imported or not imported as expected
2012-02-16 06:52:39 +02: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
f24e7e6c41
Merge 3.2: issue #2892
2011-11-01 23:33:14 +01:00
Florent Xicluna
91d5193b3a
Closes #2892 : preserve iterparse events in case of SyntaxError.
2011-11-01 23:31:09 +01:00
Antoine Pitrou
6b4883dec0
PEP 3151 / issue #12555 : reworking the OS and IO exception hierarchy.
2011-10-12 02:54:14 +02:00
Marc-André Lemburg
8f36af7a4c
Normalize the encoding names for Latin-1 and UTF-8 to
...
'latin-1' and 'utf-8'.
These are optimized in the Python Unicode implementation
to result in more direct processing, bypassing the codec
registry.
Also see issue11303.
2011-02-25 15:42:01 +00:00
Georg Brandl
90b20675bd
#10777 : fix iteration over dict keys while mutating the dict.
2010-12-28 10:38:33 +00:00
Senthil Kumaran
ec30b3dd8c
Fix Issue10205 - XML QName error when different tags have same QName.
2010-11-09 02:36:59 +00:00
Georg Brandl
1f7fffb308
#2830 : add html.escape() helper and move cgi.escape() uses in the standard library to it. It defaults to quote=True and also escapes single quotes, which makes casual use safer. The cgi.escape() interface is not touched, but emits a (silent) PendingDeprecationWarning.
2010-10-15 15:57:45 +00:00
Antoine Pitrou
b86680e299
Explicitly close some files (from issue #10093 )
2010-10-14 21:15:17 +00:00
Georg Brandl
f99a15c377
#9964 : fix running test_xml_etree under -OO.
2010-10-14 07:32:52 +00:00
Florent Xicluna
ba8a98600e
Fix xml.etree.ElementInclude to include the tail of the current node. Issue #6231
2010-08-08 23:08:41 +00:00
Florent Xicluna
14bd1c3b2e
Fix BytesWarning in test_xml_etree, introduced with r83851.
2010-08-08 22:58:56 +00:00
Florent Xicluna
c17f17294f
Issue #8047 : Fix the xml.etree serializer to return bytes by default.
...
Use ``encoding="unicode"`` to generate a Unicode string.
2010-08-08 19:48:29 +00:00
Victor Stinner
6c6f851eae
Issue #9425 : skip tests if a filename is not encodable
2010-08-07 10:09:35 +00:00