[XML-SIG] Finding _xmlplus in Python 2.3a2

Martijn Faassen faassen@vet.uu.nl
Mon, 3 Mar 2003 12:04:15 +0100


Jeremy Kloth wrote:
[snip]
> I guess I'm a little hardened from this.  We develop and test for Python 
> versions 2.1, 2.2 and 2.3 plus with and without PyXML, so it has become 
> second nature to always ask for Python version and PyXML version when bugs 
> are reported.

I do too, but I wish I could just ask for Python version (if I'd coded
against that), or PyXML version (if I'd coded against that). Now a
far more complicated set of rules needs to be applied, and I don't think
this set of rules is documented anywhere outside the code either..
(though perhaps I'm missing something?)

[snip]
> I bring up the bug reporting simply because I don't recall anyone reporting 
> that PyXML broke their Python installation until now.  The cases you mention 
> are abstract, but without concrete details, I cannot reply otherwise.

> I don't mean to sound uncaring, I am simply trying to improve PyXML.

All right, I'm sorry about that. The misunderstanding most recently 
was the one when code used explicit text node constructors in minidom;
misuse of the API. Before that a month or two ago I recall a significant
amount of confusion concerning which sax parser was in use (core or
PyXML's). I don't think actual bugs were involved, though there may have
been behaviorial changes due to bugfixes. (or perhaps new features
were supported?). But it did cost time.

The famous "expat" chaos could be considered part of it. Too many
expat parsers were maintained by too many different packages, and 
expat was included on different platforms with binary distributions of
Python, or not, etc. But that should be resolved by Python 2.3 as I 
understand it will be distributed along with the core everywhere. Anyway,
doesn't strictly have to do with _xmlplus, I *think*. :)

Then I have perpetual issues with users who installed PyXML or did not
install PyXML on a variety of platforms. While some of these problems
would not have been avoided with a repackaging of PyXML, some definitely
would've been far more clearly diagnosed by the users if it were clear
that _xmlplus was coming from PyXML and that the core is taken over
by it. But since this is supposed to be hidden from the users they
aren't aware of it. If it were explicit (oh, it's trying to import from
pyxml but there's nothing there) it'd have been far easier. I recall various
random hacks causing more trouble than they were worth by users to get the
expat parser going, for instance.

That's all I can recall for now; perhaps others have different examples
as well. As you can see it's not so much direct breakage (though that
happened as well) as lost time due to developer confusion and user
confusion.

Regards,

Martijn