FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor


 
 
LinkBack Thread Tools
 
Old 05-10-2011, 09:21 PM
Arfrever Frehtes Taifersar Arahesis
 
Default PyXML

PyXML is dead:
http://mail.python.org/pipermail/xml-sig/2004-November/010735.html
http://mail.python.org/pipermail/xml-sig/2006-June/011545.html

PyXML provides _xmlplus module, which replaces xml module (from standard library) at run time,
which might result in various problems.

I'm planning to implement the following solution:
- Python >=2.7.1-r2:2.7 will provide xml.use_pyxml() function. Calling of this function will be
necessary to use replace xml module with _xmlplus module. Python >=2.7.1-r2:2.7 will be added
to the tree in next week and will be temporarily package.masked. Later this change will be
backported to new versions in older slots.
- All packages, which use PyXML, will have to be patched to call xml.use_pyxml(). The following
code should be added before first import of anything from xml module:

import xml
if hasattr(xml, "use_pyxml"):
xml.use_pyxml()

This code works with previous versions of Python, so no changes in dependencies are needed.

--
Arfrever Frehtes Taifersar Arahesis
 
Old 05-11-2011, 10:30 AM
Tomáš Chvátal
 
Default PyXML

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Dne 10.5.2011 23:21, Arfrever Frehtes Taifersar Arahesis napsal(a):
> PyXML is dead:
> http://mail.python.org/pipermail/xml-sig/2004-November/010735.html
> http://mail.python.org/pipermail/xml-sig/2006-June/011545.html
>
> PyXML provides _xmlplus module, which replaces xml module (from standard library) at run time,
> which might result in various problems.
>
> I'm planning to implement the following solution:
> - Python >=2.7.1-r2:2.7 will provide xml.use_pyxml() function. Calling of this function will be
> necessary to use replace xml module with _xmlplus module. Python >=2.7.1-r2:2.7 will be added
> to the tree in next week and will be temporarily package.masked. Later this change will be
> backported to new versions in older slots.
> - All packages, which use PyXML, will have to be patched to call xml.use_pyxml(). The following
> code should be added before first import of anything from xml module:
>
> import xml
> if hasattr(xml, "use_pyxml"):
> xml.use_pyxml()
>
> This code works with previous versions of Python, so no changes in dependencies are needed.
>
Apart from not being developed is PyXML actualy broken so we can't wait
for upstream [1] to migrate their packages?

I see just one open bug for it when I search bugzilla.

[1] http://qa-reports.gentoo.org/output/genrdeps/rindex/dev-python/pyxml
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk3KZToACgkQHB6c3gNBRYeNkwCghH3dd0WwCK DJ7ugyvQ5t+wUB
BIoAmQGPiM2lnsas0xvhogC5vb2BqaD4
=T/Sq
-----END PGP SIGNATURE-----
 
Old 05-11-2011, 05:53 PM
Arfrever Frehtes Taifersar Arahesis
 
Default PyXML

2011-05-11 12:30:18 Tomáš Chvátal napisał(a):
> Dne 10.5.2011 23:21, Arfrever Frehtes Taifersar Arahesis napsal(a):
> > PyXML is dead:
> > http://mail.python.org/pipermail/xml-sig/2004-November/010735.html
> > http://mail.python.org/pipermail/xml-sig/2006-June/011545.html
> >
> > PyXML provides _xmlplus module, which replaces xml module (from standard library) at run time,
> > which might result in various problems.
> >
> > I'm planning to implement the following solution:
> > - Python >=2.7.1-r2:2.7 will provide xml.use_pyxml() function. Calling of this function will be
> > necessary to use replace xml module with _xmlplus module. Python >=2.7.1-r2:2.7 will be added
> > to the tree in next week and will be temporarily package.masked. Later this change will be
> > backported to new versions in older slots.
> > - All packages, which use PyXML, will have to be patched to call xml.use_pyxml(). The following
> > code should be added before first import of anything from xml module:
> >
> > import xml
> > if hasattr(xml, "use_pyxml"):
> > xml.use_pyxml()
> >
> > This code works with previous versions of Python, so no changes in dependencies are needed.
> >
> Apart from not being developed is PyXML actualy broken so we can't wait
> for upstream [1] to migrate their packages?

PyXML provides code from 2004. Since then, there were many fixes in stdlib xml module.

The following commands test code from xml module (which might be _xmlplus) and show problems when
PyXML is installed:
python2.7 -m test.test_minidom
python2.7 -m test.test_pyexpat
python2.7 -m test.test_sax

--
Arfrever Frehtes Taifersar Arahesis
 
Old 05-17-2011, 05:11 PM
Mark Loeser
 
Default PyXML

Arfrever Frehtes Taifersar Arahesis <Arfrever@gentoo.org> said:
> PyXML is dead:
> http://mail.python.org/pipermail/xml-sig/2004-November/010735.html
> http://mail.python.org/pipermail/xml-sig/2006-June/011545.html
>
> PyXML provides _xmlplus module, which replaces xml module (from standard library) at run time,
> which might result in various problems.
>
> I'm planning to implement the following solution:
> - Python >=2.7.1-r2:2.7 will provide xml.use_pyxml() function. Calling of this function will be
> necessary to use replace xml module with _xmlplus module. Python >=2.7.1-r2:2.7 will be added
> to the tree in next week and will be temporarily package.masked. Later this change will be
> backported to new versions in older slots.
> - All packages, which use PyXML, will have to be patched to call xml.use_pyxml(). The following
> code should be added before first import of anything from xml module:
>
> import xml
> if hasattr(xml, "use_pyxml"):
> xml.use_pyxml()

Is this "use_pyxml" upstream? From what you are saying, it is not. In
that case, we have just made patches for every package that will never
be allowed upstream. Why not do something more worthwhile than waste the
time of having to support something that might just become a problem to
maintain in the future?

--
Mark Loeser
email - halcy0n AT gentoo DOT org
email - mark AT halcy0n DOT com
web - http://www.halcy0n.com
 
Old 05-17-2011, 05:32 PM
Markos Chandras
 
Default PyXML

On Tue, May 17, 2011 at 01:11:57PM -0400, Mark Loeser wrote:
> Arfrever Frehtes Taifersar Arahesis <Arfrever@gentoo.org> said:
> > PyXML is dead:
> > http://mail.python.org/pipermail/xml-sig/2004-November/010735.html
> > http://mail.python.org/pipermail/xml-sig/2006-June/011545.html
> >
> > PyXML provides _xmlplus module, which replaces xml module (from standard library) at run time,
> > which might result in various problems.
> >
> > I'm planning to implement the following solution:
> > - Python >=2.7.1-r2:2.7 will provide xml.use_pyxml() function. Calling of this function will be
> > necessary to use replace xml module with _xmlplus module. Python >=2.7.1-r2:2.7 will be added
> > to the tree in next week and will be temporarily package.masked. Later this change will be
> > backported to new versions in older slots.
> > - All packages, which use PyXML, will have to be patched to call xml.use_pyxml(). The following
> > code should be added before first import of anything from xml module:
> >
> > import xml
> > if hasattr(xml, "use_pyxml"):
> > xml.use_pyxml()
>
> Is this "use_pyxml" upstream? From what you are saying, it is not. In
> that case, we have just made patches for every package that will never
> be allowed upstream. Why not do something more worthwhile than waste the
> time of having to support something that might just become a problem to
> maintain in the future?
>
> --
> Mark Loeser
> email - halcy0n AT gentoo DOT org
> email - mark AT halcy0n DOT com
> web - http://www.halcy0n.com

I second that. Why do we need to make all the work fixing packages
instead of letting upstream do their job? I am not so excited to
fix every package I maintain as it is quite possible to introduce
regressions in the process. Furthermore, I don't understand your first
message. You say that you will provide xml.use_pyxml() function on
python-2.7. Is this code official or you are just patching the official
python releases?
Anyway, as I said, I'd rather wait for upstream to fix their packages
instead of me.

Regards,
--
Markos Chandras / Gentoo Linux Developer / Key ID: B4AFF2C2
 
Old 05-17-2011, 06:19 PM
Arfrever Frehtes Taifersar Arahesis
 
Default PyXML

2011-05-17 19:32:23 Markos Chandras napisał(a):
> On Tue, May 17, 2011 at 01:11:57PM -0400, Mark Loeser wrote:
> > Arfrever Frehtes Taifersar Arahesis <Arfrever@gentoo.org> said:
> > > PyXML is dead:
> > > http://mail.python.org/pipermail/xml-sig/2004-November/010735.html
> > > http://mail.python.org/pipermail/xml-sig/2006-June/011545.html
> > >
> > > PyXML provides _xmlplus module, which replaces xml module (from standard library) at run time,
> > > which might result in various problems.
> > >
> > > I'm planning to implement the following solution:
> > > - Python >=2.7.1-r2:2.7 will provide xml.use_pyxml() function. Calling of this function will be
> > > necessary to use replace xml module with _xmlplus module. Python >=2.7.1-r2:2.7 will be added
> > > to the tree in next week and will be temporarily package.masked. Later this change will be
> > > backported to new versions in older slots.
> > > - All packages, which use PyXML, will have to be patched to call xml.use_pyxml(). The following
> > > code should be added before first import of anything from xml module:
> > >
> > > import xml
> > > if hasattr(xml, "use_pyxml"):
> > > xml.use_pyxml()
> >
> > Is this "use_pyxml" upstream? From what you are saying, it is not. In
> > that case, we have just made patches for every package that will never
> > be allowed upstream. Why not do something more worthwhile than waste the
> > time of having to support something that might just become a problem to
> > maintain in the future?
> >
>
> I second that. Why do we need to make all the work fixing packages
> instead of letting upstream do their job? I am not so excited to
> fix every package I maintain as it is quite possible to introduce
> regressions in the process. Furthermore, I don't understand your first
> message. You say that you will provide xml.use_pyxml() function on
> python-2.7. Is this code official or you are just patching the official
> python releases?
> Anyway, as I said, I'd rather wait for upstream to fix their packages
> instead of me.

Some upstreams are dead and some packages using PyXML will never be ported by upstreams to use
something else than PyXML (e.g. lxml).

$ python2.7
Python 2.7.1+ (2.7:572fbd9ca28f+, May 16 2011, 21:40:05)
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import xml, _xmlplus
>>> xml_modules = set(xml.__all__)
>>> _xmlplus_modules = set(_xmlplus.__all__)
>>> xml_modules - _xmlplus_modules
set(['etree'])
>>> _xmlplus_modules - xml_modules
set(['xpath', 'utils', 'schema', 'marshal', 'xslt'])
>>>

--
Arfrever Frehtes Taifersar Arahesis
 
Old 05-17-2011, 06:24 PM
Mark Loeser
 
Default PyXML

Arfrever Frehtes Taifersar Arahesis <Arfrever@gentoo.org> said:
> > I second that. Why do we need to make all the work fixing packages
> > instead of letting upstream do their job? I am not so excited to
> > fix every package I maintain as it is quite possible to introduce
> > regressions in the process. Furthermore, I don't understand your first
> > message. You say that you will provide xml.use_pyxml() function on
> > python-2.7. Is this code official or you are just patching the official
> > python releases?
> > Anyway, as I said, I'd rather wait for upstream to fix their packages
> > instead of me.
>
> Some upstreams are dead and some packages using PyXML will never be ported by upstreams to use
> something else than PyXML (e.g. lxml).

Then those packages should get removed from the tree. Do not start
introducing Gentoo specific hacks to work around the problem.

--
Mark Loeser
email - halcy0n AT gentoo DOT org
email - mark AT halcy0n DOT com
web - http://www.halcy0n.com
 
Old 05-17-2011, 06:29 PM
Arfrever Frehtes Taifersar Arahesis
 
Default PyXML

2011-05-17 19:11:57 Mark Loeser napisał(a):
> Arfrever Frehtes Taifersar Arahesis <Arfrever@gentoo.org> said:
> > PyXML is dead:
> > http://mail.python.org/pipermail/xml-sig/2004-November/010735.html
> > http://mail.python.org/pipermail/xml-sig/2006-June/011545.html
> >
> > PyXML provides _xmlplus module, which replaces xml module (from standard library) at run time,
> > which might result in various problems.
> >
> > I'm planning to implement the following solution:
> > - Python >=2.7.1-r2:2.7 will provide xml.use_pyxml() function. Calling of this function will be
> > necessary to use replace xml module with _xmlplus module. Python >=2.7.1-r2:2.7 will be added
> > to the tree in next week and will be temporarily package.masked. Later this change will be
> > backported to new versions in older slots.
> > - All packages, which use PyXML, will have to be patched to call xml.use_pyxml(). The following
> > code should be added before first import of anything from xml module:
> >
> > import xml
> > if hasattr(xml, "use_pyxml"):
> > xml.use_pyxml()
>
> Is this "use_pyxml" upstream?

Python 2 is dead, so new features will never be added to Python 2 by Python upstream.

Before addition of xml.use_pyxml(), if user had many packages installed, which use xml module,
and 1 package installed, which needs PyXML, then the other packages were suffering from using
old code with more bugs.

--
Arfrever Frehtes Taifersar Arahesis
 
Old 05-17-2011, 06:33 PM
Arfrever Frehtes Taifersar Arahesis
 
Default PyXML

2011-05-17 20:24:16 Mark Loeser napisał(a):
> Arfrever Frehtes Taifersar Arahesis <Arfrever@gentoo.org> said:
> > > I second that. Why do we need to make all the work fixing packages
> > > instead of letting upstream do their job? I am not so excited to
> > > fix every package I maintain as it is quite possible to introduce
> > > regressions in the process. Furthermore, I don't understand your first
> > > message. You say that you will provide xml.use_pyxml() function on
> > > python-2.7. Is this code official or you are just patching the official
> > > python releases?
> > > Anyway, as I said, I'd rather wait for upstream to fix their packages
> > > instead of me.
> >
> > Some upstreams are dead and some packages using PyXML will never be ported by upstreams to use
> > something else than PyXML (e.g. lxml).
>
> Then those packages should get removed from the tree. Do not start
> introducing Gentoo specific hacks to work around the problem.

Majority of packages from http://tinderbox.dev.gentoo.org/misc/rindex/dev-python/pyxml seem to
have active upstreams, which doesn't mean they are actively working on porting these packages
to use something else than PyXML.

--
Arfrever Frehtes Taifersar Arahesis
 
Old 05-17-2011, 06:43 PM
Tomáš Chvátal
 
Default PyXML

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Dne 10.5.2011 23:21, Arfrever Frehtes Taifersar Arahesis napsal(a):
> PyXML is dead:
> http://mail.python.org/pipermail/xml-sig/2004-November/010735.html
> http://mail.python.org/pipermail/xml-sig/2006-June/011545.html
>
> PyXML provides _xmlplus module, which replaces xml module (from standard library) at run time,
> which might result in various problems.
>
> I'm planning to implement the following solution:
> - Python >=2.7.1-r2:2.7 will provide xml.use_pyxml() function. Calling of this function will be
> necessary to use replace xml module with _xmlplus module. Python >=2.7.1-r2:2.7 will be added
> to the tree in next week and will be temporarily package.masked. Later this change will be
> backported to new versions in older slots.
> - All packages, which use PyXML, will have to be patched to call xml.use_pyxml(). The following
> code should be added before first import of anything from xml module:
>
> import xml
> if hasattr(xml, "use_pyxml"):
> xml.use_pyxml()
>
> This code works with previous versions of Python, so no changes in dependencies are needed.
>
As I already asked,
what problem do we have to keep PyXML in main tree to be used with python2.

Your specific hack introduce different behaviour for python2.7.1-r2
where you do not explain the need for it at all.

It is just python2 thing and we can happily use PyXML as it works even
with latest python-2.7.

So where is the problem?

Failing python tests? Then patch PyXML itself to use it properly, but
keep it as is. When app migrate to py3 they will have to loose the PyXML
dependency anyway.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk3SwdEACgkQHB6c3gNBRYenyACeOMsOpUJwgP LBeyAZtcHeVVAH
j7sAn0B8f8/UINM4xVsws9xDsURrnYGj
=H8Jw
-----END PGP SIGNATURE-----
 

Thread Tools




All times are GMT. The time now is 06:47 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org