msg171108 - (view) |
Author: Erich Seifert (eseifert) |
Date: 2012-09-24 10:10 |
It seems the recent changes to Modules/pyexpat.c made the boolean 'flag' for UseForeignDTD mandatory although it was optional in previous Python releases. According to the docs the usage is UseForeignDTD([flag]), but calling UseForeignDTD without arguments leads to an error:: >>> from xml.parsers import expat >>> parser = expat.ParserCreate('utf8') >>> parser.UseForeignDTD() Traceback (most recent call last): File "", line 1, in TypeError: UseForeignDTD() takes exactly 1 argument (0 given) This was tested with version bfdf366a779a from hg repository. |
|
|
msg171110 - (view) |
Author: Christian Heimes (christian.heimes) *  |
Date: 2012-09-24 10:36 |
Confirmed! In Ubuntu's Python 2.7.3 and 3.2.3 UseForeignDTD() can be called without an argument. The hg versions of 2.7, 3.2 and 3.3 require one argument. The change smells like a regression for all affected Python versions. Antoine, it looks like you committed the modification. |
|
|
msg171111 - (view) |
Author: Ezio Melotti (ezio.melotti) *  |
Date: 2012-09-24 10:42 |
This seems to be the changeset that introduced the regression b878df1d23b1. |
|
|
msg171112 - (view) |
Author: Christian Heimes (christian.heimes) *  |
Date: 2012-09-24 10:46 |
I've created a patch with a simple test case. |
|
|
msg171113 - (view) |
Author: Antoine Pitrou (pitrou) *  |
Date: 2012-09-24 10:49 |
Ah, that's true. Too bad it wasn't tested for :( |
|
|
msg171115 - (view) |
Author: Christian Heimes (christian.heimes) *  |
Date: 2012-09-24 10:54 |
Don't feel bad. The final hasn't been released yet. :) Here is a slightly different patch for 3.2 and 2.7. |
|
|
msg171118 - (view) |
Author: Roundup Robot (python-dev)  |
Date: 2012-09-24 11:28 |
New changeset 22ddf77e0497 by Christian Heimes in branch '3.2': Issue #16012: Fix a regression in pyexpat. The parser's UseForeignDTD() http://hg.python.org/cpython/rev/22ddf77e0497 New changeset 3e0d632ce910 by Christian Heimes in branch '2.7': Issue #16012: Fix a regression in pyexpat. The parser's UseForeignDTD() http://hg.python.org/cpython/rev/3e0d632ce910 New changeset 0f55ad9b07c8 by Christian Heimes in branch 'default': Issue #16012: Fix a regression in pyexpat. The parser's UseForeignDTD() http://hg.python.org/cpython/rev/0f55ad9b07c8 |
|
|
msg171119 - (view) |
Author: Christian Heimes (christian.heimes) *  |
Date: 2012-09-24 11:32 |
Erich, thank you very much for your bug report. Your report made it right in time for the upcoming 3.3.0 final release. Here you are, Georg. |
|
|
msg171120 - (view) |
Author: Georg Brandl (georg.brandl) *  |
Date: 2012-09-24 11:42 |
Fixed in release clone as b907f99272c5. |
|
|
msg171555 - (view) |
Author: Roundup Robot (python-dev)  |
Date: 2012-09-29 07:27 |
New changeset b907f99272c5 by Georg Brandl in branch 'default': Port #16012 fix: parameter parsing regression in pyexpat parser UseForeignDTD() method. http://hg.python.org/cpython/rev/b907f99272c5 |
|
|