Python-3.2-related changes
It is planned that ebuilds of Python 3.2 will automatically set Python 3.2 as main active
version of Python. (Currently ebuilds of Python 3.1 do not automatically set Python 3.1 as main active version of Python.) Final release of Python 3.2 is currently scheduled on 2010-12-11, so you have over 10 months for adjusting of your ebuilds. The following changes should be made in ebuilds of packages supporting only Python 2: - Dependency on Python 2 should be set correctly. You can specify it directly in {,R}DEPEND or use PYTHON_DEPEND. Example: PYTHON_DEPEND="2" inherit python - Miscellaneous actions should be executed with correct version of Python. - In ebuilds of packages supporting installation for multiple versions of Python, please remember to disable installation for all versions of Python 3. (Please do not use python_set_active_version() in ebuilds of these packages.) Example: RESTRICT_PYTHON_ABIS="3.*" - In ebuilds of packages not supporting installation for multiple versions of Python, set active version of Python using python_set_active_version(). (Please avoid passing precisely specified Python ABI to python_set_active_version().) Example: pkg_setup() { python_set_active_version 2 } (If given package currently cannot be installed for multiple versions of Python, but it is theoretically possible (e.g. this package installs .py files into /usr/lib/pythonX.Y/site-packages and does not install any non-versioned libraries into /usr/lib), then please try to adjust ebuilds of this package to allow installation for multiple versions of Python.) It is recommended to have set a version of Python 3 as main active version of Python during testing of these changes to ensure that no required change has been missed. I consider filing bugs for not adjusted packages after some months (e.g in summer). (Please note that these changes are not required before stabilization of Python 3.1, so stabilization of Python 3.1 will not be delayed.) -- Arfrever Frehtes Taifersar Arahesis |
Python-3.2-related changes
2010-02-05 17:40:00 Arfrever Frehtes Taifersar Arahesis napisał(a):
> I consider filing bugs for not adjusted packages after some months (e.g in summer). 1123 packages (440 in dev-python category) from 108 categories specify dev-lang/python or virtual/python in DEPEND or RDEPEND, so actually it might be better to start filing bugs in this month. If there are no objections, then I would like to file 1 bug per category (except dev-python category). -- Arfrever Frehtes Taifersar Arahesis |
Python-3.2-related changes
2010-02-05 17:40:00 Arfrever Frehtes Taifersar Arahesis napisał(a):
> - Dependency on Python 2 should be set correctly. You can specify it directly in > {,R}DEPEND or use PYTHON_DEPEND. > > Example: > PYTHON_DEPEND="2" > > inherit python It might be useful to provide another example: If given package requires e.g. Python >=2.6, but does not support Python 3, then you can set PYTHON_DEPEND="2:2.6". -- Arfrever Frehtes Taifersar Arahesis |
Python-3.2-related changes
On Sat, Feb 06, 2010 at 12:03:11PM +0100, Arfrever Frehtes Taifersar Arahesis wrote:
> 2010-02-05 17:40:00 Arfrever Frehtes Taifersar Arahesis napisał(a): > > - Dependency on Python 2 should be set correctly. You can specify it directly in > > {,R}DEPEND or use PYTHON_DEPEND. > > > > Example: > > PYTHON_DEPEND="2" > > > > inherit python > > It might be useful to provide another example: > If given package requires e.g. Python >=2.6, but does not support Python 3, then you can > set PYTHON_DEPEND="2:2.6". We really need better syntax than that. Particular reason you're jamming py2k and py3k all into one? Breaking it down into PYTHON2K_DEPEND and PYTHON3K_DEPEND would involve lest magic in parsing and would be clear in the reading I'd expect. ~harring |
Python-3.2-related changes
Arfrever Frehtes Taifersar Arahesis <Arfrever@gentoo.org> said:
> 2010-02-05 17:40:00 Arfrever Frehtes Taifersar Arahesis napisał(a): > > I consider filing bugs for not adjusted packages after some months (e.g in summer). > > 1123 packages (440 in dev-python category) from 108 categories specify dev-lang/python > or virtual/python in DEPEND or RDEPEND, so actually it might be better to start filing > bugs in this month. If there are no objections, then I would like to file 1 bug per > category (except dev-python category). Make trackers and make one bug per package. Its way too hard to follow a huge metabug with a bunch of packages listed in it. Also, I think the concerns and suggestions that were brought up about the syntax of this new variable should be addressed first and not ignored. Thanks, -- Mark Loeser email - halcy0n AT gentoo DOT org email - mark AT halcy0n DOT com web - http://www.halcy0n.com |
Python-3.2-related changes
On Saturday 06 February 2010 13:03:11 Arfrever Frehtes Taifersar Arahesis
wrote: > 2010-02-05 17:40:00 Arfrever Frehtes Taifersar Arahesis napisał(a): > > - Dependency on Python 2 should be set correctly. You can specify it > > directly in {,R}DEPEND or use PYTHON_DEPEND. > > > > Example: > > PYTHON_DEPEND="2" > > > > inherit python > > It might be useful to provide another example: > If given package requires e.g. Python >=2.6, but does not support Python 3, > then you can set PYTHON_DEPEND="2:2.6". > Could you please update the python documentation [1] or any other online documentation you may find useful cause I am pretty sure your recommendations in this e-mail will be lost over time. Many thanks [1]: http://www.gentoo.org/proj/en/Python/developersguide.xml -- Markos Chandras (hwoarang) Gentoo Linux Developer Web: http://hwoarang.silverarrow.org |
Python-3.2-related changes
On 02/06/2010 03:03 AM, Arfrever Frehtes Taifersar Arahesis wrote:
> 2010-02-05 17:40:00 Arfrever Frehtes Taifersar Arahesis napisał(a): >> - Dependency on Python 2 should be set correctly. You can specify it directly in >> {,R}DEPEND or use PYTHON_DEPEND. >> >> Example: >> PYTHON_DEPEND="2" >> >> inherit python > > It might be useful to provide another example: > If given package requires e.g. Python >=2.6, but does not support Python 3, then you can > set PYTHON_DEPEND="2:2.6". I noticed that this generates a depedency like "|| ( =dev-lang/python-2.7* =dev-lang/python-2.6* )" which is very similar to the way that QT3VERSIONS works in qt3.eclass. One thing that is sub-optimal about these types of dependencies is that you end up with lots of installed packages that have out-dated dependencies when the next minor version of python is released (python-2.8 in this case). In the case of the python dependencies, it might be more optimal to use a version range like ">=dev-lang/python-2.6 <dev-lang/python-3". -- Thanks, Zac |
Python-3.2-related changes
On Sun, Feb 07, 2010 at 12:17:17PM -0800, Zac Medico wrote:
> I noticed that this generates a depedency like "|| ( > =dev-lang/python-2.7* =dev-lang/python-2.6* )" which is very similar > to the way that QT3VERSIONS works in qt3.eclass. One thing that is > sub-optimal about these types of dependencies is that you end up > with lots of installed packages that have out-dated dependencies > when the next minor version of python is released (python-2.8 in > this case). In the case of the python dependencies, it might be more > optimal to use a version range like ">=dev-lang/python-2.6 > <dev-lang/python-3". Thing is, the first deps are valid- the deps you posted however aren't and cannot be used as you're proposing. Under || ( dev-lang/python:2.7 dev-lang/python:2.6 ) Having python:2.6 or python:2.7 merged satisfies it. Under >=dev-lang/python:2.6 <dev-lang/python:3.0 having "|| ( python:2.6 python:2.7 )" satisfies it, as does "|| ( python:2.4 python:2.5 ) || ( python:3.0 python:3.1 python:3.2 )" Literally, python:2.5 and python:3.1 merged would satisfy it, which is completely contrary to the intent and an unlikely scenario (several of my machines have such a deployment). Ranged versions don't exist in any EAPI's currently although you *can* get away with them in the cases where the target has a single slotting- only in that case will the ranged versions from above work. Python obviously has multiple slottings, thus you cannot rely on it. If you want ranged versions, get them added to an EAPI- but do *not* introduce deps like you proposed into the tree since they're wrong (related, kindly fix the portage deps since I pointed this issue out several months back). ~harring |
Python-3.2-related changes
2010-02-08 01:20:22 Brian Harring napisał(a):
> On Sun, Feb 07, 2010 at 12:17:17PM -0800, Zac Medico wrote: > > I noticed that this generates a depedency like "|| ( > > =dev-lang/python-2.7* =dev-lang/python-2.6* )" which is very similar > > to the way that QT3VERSIONS works in qt3.eclass. One thing that is > > sub-optimal about these types of dependencies is that you end up > > with lots of installed packages that have out-dated dependencies > > when the next minor version of python is released (python-2.8 in > > this case). In the case of the python dependencies, it might be more > > optimal to use a version range like ">=dev-lang/python-2.6 > > <dev-lang/python-3". > > Thing is, the first deps are valid- the deps you posted however > aren't and cannot be used as you're proposing. > > Under || ( dev-lang/python:2.7 dev-lang/python:2.6 ) > Having python:2.6 or python:2.7 merged satisfies it. > > Under >=dev-lang/python:2.6 <dev-lang/python:3.0 > having "|| ( python:2.6 python:2.7 )" satisfies it, as does > "|| ( python:2.4 python:2.5 ) || ( python:3.0 python:3.1 python:3.2 )" > > Literally, python:2.5 and python:3.1 merged would satisfy it, which is > completely contrary to the intent and an unlikely scenario (several of > my machines have such a deployment). I will improve handling of cases when minimal and maximal versions aren't specified. E.g. PYTHON_DEPEND="2" will be translated into dependency on "=dev-lang/python-2*". -- Arfrever Frehtes Taifersar Arahesis |
Python-3.2-related changes
2010-02-07 19:43:24 Markos Chandras napisał(a):
> On Saturday 06 February 2010 13:03:11 Arfrever Frehtes Taifersar Arahesis > wrote: > > 2010-02-05 17:40:00 Arfrever Frehtes Taifersar Arahesis napisał(a): > > > - Dependency on Python 2 should be set correctly. You can specify it > > > directly in {,R}DEPEND or use PYTHON_DEPEND. > > > > > > Example: > > > PYTHON_DEPEND="2" > > > > > > inherit python > > > > It might be useful to provide another example: > > If given package requires e.g. Python >=2.6, but does not support Python 3, > > then you can set PYTHON_DEPEND="2:2.6". > > > Could you please update the python documentation [1] or any other online > documentation you may find useful cause I am pretty sure your recommendations > in this e-mail will be lost over time. Yes. -- Arfrever Frehtes Taifersar Arahesis |
| All times are GMT. The time now is 03:57 PM. |
VBulletin, Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.