* [gentoo-dev] Packages pulling in python-3*, also they dont require it @ 2010-03-18 19:20 Thomas Sachau 2010-03-18 19:24 ` Fabian Groffen ` (3 more replies) 0 siblings, 4 replies; 56+ messages in thread From: Thomas Sachau @ 2010-03-18 19:20 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 946 bytes --] Hi, i would like to see a discussion and, if needed, a decision on the following topic: Currently, some packages just depend on "dev-lang/python". Arfrever claims it to be right, but this dependency does pull in python-3*, even if the package does not require it (or does not even work with it). Since the real dep is either "=dev-lang/python-2*" or "|| ( dev-lang/python:3.1 dev-lang/python:2.7 dev-lang/python-2.6 dev-lang/python:2.5 )", it means in both cases, that my install of python-2.6* should meet the requirement, so the package should not pull in the unneeded and not used python-3*. There are 2 ways to fix this issue: -fix the dependency string for those packages (including the lines in distutils.eclass) or (since Arfrever claims current portage behaviour is wrong) -change portage behaviour to be satisfied with a python slot and to not require other slots. -- Thomas Sachau Gentoo Linux Developer [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 316 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 19:20 [gentoo-dev] Packages pulling in python-3*, also they dont require it Thomas Sachau @ 2010-03-18 19:24 ` Fabian Groffen 2010-03-18 20:27 ` Ben de Groot 2010-03-18 19:28 ` Ciaran McCreesh ` (2 subsequent siblings) 3 siblings, 1 reply; 56+ messages in thread From: Fabian Groffen @ 2010-03-18 19:24 UTC (permalink / raw To: gentoo-dev On 18-03-2010 20:20:02 +0100, Thomas Sachau wrote: > There are 2 ways to fix this issue: > > -fix the dependency string for those packages (including the lines in distutils.eclass) > > or (since Arfrever claims current portage behaviour is wrong) > -change portage behaviour to be satisfied with a python slot and to not require other slots. Since the last option will take time in any case, I guess the first option is the best to achieve the desired goal: make sure Python 3 stays as far away as possible from any system that doesn't need it. -- Fabian Groffen Gentoo on a different level ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 19:24 ` Fabian Groffen @ 2010-03-18 20:27 ` Ben de Groot 2010-03-18 20:53 ` Doktor Notor 2010-03-19 5:35 ` [gentoo-dev] " Alec Warner 0 siblings, 2 replies; 56+ messages in thread From: Ben de Groot @ 2010-03-18 20:27 UTC (permalink / raw To: gentoo-dev On 18 March 2010 20:24, Fabian Groffen <grobian@gentoo.org> wrote: > On 18-03-2010 20:20:02 +0100, Thomas Sachau wrote: >> There are 2 ways to fix this issue: >> >> -fix the dependency string for those packages (including the lines in distutils.eclass) >> >> or (since Arfrever claims current portage behaviour is wrong) >> -change portage behaviour to be satisfied with a python slot and to not require other slots. > > Since the last option will take time in any case, I guess the first > option is the best to achieve the desired goal: make sure Python 3 stays > as far away as possible from any system that doesn't need it. And the best way to do that is to package.mask it. Cheers, -- Ben de Groot Gentoo Linux Qt project lead developer ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 20:27 ` Ben de Groot @ 2010-03-18 20:53 ` Doktor Notor 2010-03-18 22:09 ` Sebastian Pipping 2010-03-18 22:17 ` Ben de Groot 2010-03-19 5:35 ` [gentoo-dev] " Alec Warner 1 sibling, 2 replies; 56+ messages in thread From: Doktor Notor @ 2010-03-18 20:53 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 983 bytes --] On Thu, 18 Mar 2010 21:27:50 +0100 Ben de Groot <yngwin@gentoo.org> wrote: > > Since the last option will take time in any case, I guess the first > > option is the best to achieve the desired goal: make sure Python 3 > > stays as far away as possible from any system that doesn't need it. > > And the best way to do that is to package.mask it. Mask in the CVS tree?! Hmmm, there are tons of broken junk long dead upstream in the tree that doesn't even compile - guess what - not masked and noone's caring. Why on earth would you mask a working package with extremely active maintainer in CVS - just because you don't have a use for it? So why don't you mask it for yourself if you don't have any use for it? The time spent on this ML debate would IMHO be better spent on fixing the dependencies in the tree for stuff that doesn't work w/ python-2 and yet has unversioned or >= deps in ebuilds and such. [1] Cheers, DN. [1] http://tinyurl.com/yhlmcq8 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 20:53 ` Doktor Notor @ 2010-03-18 22:09 ` Sebastian Pipping 2010-03-18 22:17 ` Ben de Groot 1 sibling, 0 replies; 56+ messages in thread From: Sebastian Pipping @ 2010-03-18 22:09 UTC (permalink / raw To: gentoo-dev On 03/18/10 21:53, Doktor Notor wrote: > Why on earth would you mask a working > package with extremely active maintainer in CVS Upstream stability is unequel Gentoo stability. Sebastian ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 20:53 ` Doktor Notor 2010-03-18 22:09 ` Sebastian Pipping @ 2010-03-18 22:17 ` Ben de Groot 2010-03-19 8:12 ` Ciaran McCreesh 1 sibling, 1 reply; 56+ messages in thread From: Ben de Groot @ 2010-03-18 22:17 UTC (permalink / raw To: gentoo-dev On 18 March 2010 21:53, Doktor Notor <notordoktor@gmail.com> wrote: > On Thu, 18 Mar 2010 21:27:50 +0100 > Ben de Groot <yngwin@gentoo.org> wrote: > >> > Since the last option will take time in any case, I guess the first >> > option is the best to achieve the desired goal: make sure Python 3 >> > stays as far away as possible from any system that doesn't need it. >> >> And the best way to do that is to package.mask it. > > Mask in the CVS tree?! Hmmm, there are tons of broken junk long dead > upstream in the tree that doesn't even compile - guess what - not > masked and noone's caring. If that is the case, that is bad practice and should be remedied, not used as an excuse to commit more crimes. > Why on earth would you mask a working > package with extremely active maintainer in CVS Because it is extremely useless to the great majority of users. Cheers, -- Ben de Groot Gentoo Linux Qt project lead developer ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 22:17 ` Ben de Groot @ 2010-03-19 8:12 ` Ciaran McCreesh 2010-03-19 8:54 ` Dale 0 siblings, 1 reply; 56+ messages in thread From: Ciaran McCreesh @ 2010-03-19 8:12 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 241 bytes --] On Thu, 18 Mar 2010 23:17:17 +0100 Ben de Groot <yngwin@gentoo.org> wrote: > Because it is extremely useless to the great majority of users. Most packages in the tree are useless to the great majority of users. -- Ciaran McCreesh [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 8:12 ` Ciaran McCreesh @ 2010-03-19 8:54 ` Dale 2010-03-19 8:57 ` Ciaran McCreesh 0 siblings, 1 reply; 56+ messages in thread From: Dale @ 2010-03-19 8:54 UTC (permalink / raw To: gentoo-dev Ciaran McCreesh wrote: > On Thu, 18 Mar 2010 23:17:17 +0100 > Ben de Groot<yngwin@gentoo.org> wrote: > >> Because it is extremely useless to the great majority of users. >> > Most packages in the tree are useless to the great majority of users. > > Which is why most users don't install everything. I have about 1000 packages installed here. The packages installed are either something I use or a dependency of something I use. What exactly is this being installed for again? If nothing depends on it, there is no need to have it. Dale :-) :-) ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 8:54 ` Dale @ 2010-03-19 8:57 ` Ciaran McCreesh 2010-03-19 9:23 ` Dale 2010-03-19 15:13 ` [gentoo-dev] " Nikos Chantziaras 0 siblings, 2 replies; 56+ messages in thread From: Ciaran McCreesh @ 2010-03-19 8:57 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 842 bytes --] On Fri, 19 Mar 2010 03:54:28 -0500 Dale <rdalek1967@gmail.com> wrote: > Ciaran McCreesh wrote: > > On Thu, 18 Mar 2010 23:17:17 +0100 > > Ben de Groot<yngwin@gentoo.org> wrote: > > > >> Because it is extremely useless to the great majority of users. > >> > > Most packages in the tree are useless to the great majority of > > users. > > Which is why most users don't install everything. I have about 1000 > packages installed here. The packages installed are either something > I use or a dependency of something I use. What exactly is this being > installed for again? If nothing depends on it, there is no need to > have it. It's being installed because it's a dependency of something you use. Replace Python with any other library and we wouldn't be having this discussion. -- Ciaran McCreesh [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 8:57 ` Ciaran McCreesh @ 2010-03-19 9:23 ` Dale 2010-03-19 9:30 ` Ciaran McCreesh ` (2 more replies) 2010-03-19 15:13 ` [gentoo-dev] " Nikos Chantziaras 1 sibling, 3 replies; 56+ messages in thread From: Dale @ 2010-03-19 9:23 UTC (permalink / raw To: gentoo-dev Ciaran McCreesh wrote: > On Fri, 19 Mar 2010 03:54:28 -0500 > Dale<rdalek1967@gmail.com> wrote: > >> Ciaran McCreesh wrote: >> >>> On Thu, 18 Mar 2010 23:17:17 +0100 >>> Ben de Groot<yngwin@gentoo.org> wrote: >>> >>> >>>> Because it is extremely useless to the great majority of users. >>>> >>>> >>> Most packages in the tree are useless to the great majority of >>> users. >>> >> Which is why most users don't install everything. I have about 1000 >> packages installed here. The packages installed are either something >> I use or a dependency of something I use. What exactly is this being >> installed for again? If nothing depends on it, there is no need to >> have it. >> > It's being installed because it's a dependency of something you use. > > Replace Python with any other library and we wouldn't be having this > discussion. > > OK. Right now, as you type this, what package depends on python-3 and won't work with python-2? Anything at all? If it is nothing, then why install it? Since python-3 is not what the system is using, it's not getting used even if it is installed. So as I mentioned in another reply, portage is installing something and it is just sitting there doing nothing. What is the point in that? Dale :-) :-) ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 9:23 ` Dale @ 2010-03-19 9:30 ` Ciaran McCreesh 2010-03-19 10:13 ` Dale 2010-03-19 9:35 ` [gentoo-dev] " Arfrever Frehtes Taifersar Arahesis 2010-03-19 9:40 ` Brian Harring 2 siblings, 1 reply; 56+ messages in thread From: Ciaran McCreesh @ 2010-03-19 9:30 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 762 bytes --] On Fri, 19 Mar 2010 04:23:31 -0500 Dale <rdalek1967@gmail.com> wrote: > > It's being installed because it's a dependency of something you use. > > > > Replace Python with any other library and we wouldn't be having this > > discussion. > > OK. Right now, as you type this, what package depends on python-3 > and won't work with python-2? Anything at all? If it is nothing, > then why install it? And that's where you're making the mistake: you're treating Python as being different from every other package. In every other case, you want things to be using the newest version of a slotted package where possible. Why aren't you complaining that you were forced to install gcc 4.3 and 4.1 when 3.4 worked just fine? -- Ciaran McCreesh [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 9:30 ` Ciaran McCreesh @ 2010-03-19 10:13 ` Dale 2010-03-19 10:34 ` Arfrever Frehtes Taifersar Arahesis ` (2 more replies) 0 siblings, 3 replies; 56+ messages in thread From: Dale @ 2010-03-19 10:13 UTC (permalink / raw To: gentoo-dev Ciaran McCreesh wrote: > On Fri, 19 Mar 2010 04:23:31 -0500 > Dale<rdalek1967@gmail.com> wrote: > >>> It's being installed because it's a dependency of something you use. >>> >>> Replace Python with any other library and we wouldn't be having this >>> discussion. >>> >> OK. Right now, as you type this, what package depends on python-3 >> and won't work with python-2? Anything at all? If it is nothing, >> then why install it? >> > And that's where you're making the mistake: you're treating Python as > being different from every other package. > > In every other case, you want things to be using the newest version of a > slotted package where possible. Why aren't you complaining that you were > forced to install gcc 4.3 and 4.1 when 3.4 worked just fine? > > Because, when I installed gcc 4.3, I could then unmerge the old gcc. That's why I didn't complain about that. With python, we still have to have the current version plus the new version which is not being used at all. Am I not correct in that? If the new python is installed, what exactly is going to use it? I used the new gcc. It worked fine. I unmerged the old one with no wasted space and one less package installed. This doesn't appear to be the case with python-3 tho. It's going to be installed and just sit there like a rock. Dale :-) :-) ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 10:13 ` Dale @ 2010-03-19 10:34 ` Arfrever Frehtes Taifersar Arahesis 2010-03-19 14:54 ` Dale 2010-03-20 0:51 ` [gentoo-dev] " Duncan 2010-03-20 12:47 ` Peter Hjalmarsson 2 siblings, 1 reply; 56+ messages in thread From: Arfrever Frehtes Taifersar Arahesis @ 2010-03-19 10:34 UTC (permalink / raw To: Gentoo Development [-- Attachment #1: Type: Text/Plain, Size: 1833 bytes --] 2010-03-19 11:13:48 Dale napisał(a): > Ciaran McCreesh wrote: > > On Fri, 19 Mar 2010 04:23:31 -0500 > > Dale<rdalek1967@gmail.com> wrote: > > > >>> It's being installed because it's a dependency of something you use. > >>> > >>> Replace Python with any other library and we wouldn't be having this > >>> discussion. > >>> > >> OK. Right now, as you type this, what package depends on python-3 > >> and won't work with python-2? Anything at all? If it is nothing, > >> then why install it? > >> > > And that's where you're making the mistake: you're treating Python as > > being different from every other package. > > > > In every other case, you want things to be using the newest version of a > > slotted package where possible. Why aren't you complaining that you were > > forced to install gcc 4.3 and 4.1 when 3.4 worked just fine? > > > > > Because, when I installed gcc 4.3, I could then unmerge the old gcc. > That's why I didn't complain about that. With python, we still have to > have the current version plus the new version which is not being used at > all. > > Am I not correct in that? If the new python is installed, what exactly > is going to use it? I used the new gcc. It worked fine. I unmerged > the old one with no wasted space and one less package installed. This > doesn't appear to be the case with python-3 tho. It's going to be > installed and just sit there like a rock. Python 3 is used during installation of packages, which support Python 2 and Python 3 and support installation for multiple Python ABIs. You can directly execute scripts with "-3.1" suffix (e.g. "bpython-3.1" or "coverage-3.1") to use Python 3.1 even when Python 2.* is set as main active version of Python. -- Arfrever Frehtes Taifersar Arahesis [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 10:34 ` Arfrever Frehtes Taifersar Arahesis @ 2010-03-19 14:54 ` Dale 0 siblings, 0 replies; 56+ messages in thread From: Dale @ 2010-03-19 14:54 UTC (permalink / raw To: gentoo-dev Arfrever Frehtes Taifersar Arahesis wrote: > 2010-03-19 11:13:48 Dale napisał(a): > >> Ciaran McCreesh wrote: >> >>> On Fri, 19 Mar 2010 04:23:31 -0500 >>> Dale<rdalek1967@gmail.com> wrote: >>> >>> >>>>> It's being installed because it's a dependency of something you use. >>>>> >>>>> Replace Python with any other library and we wouldn't be having this >>>>> discussion. >>>>> >>>>> >>>> OK. Right now, as you type this, what package depends on python-3 >>>> and won't work with python-2? Anything at all? If it is nothing, >>>> then why install it? >>>> >>>> >>> And that's where you're making the mistake: you're treating Python as >>> being different from every other package. >>> >>> In every other case, you want things to be using the newest version of a >>> slotted package where possible. Why aren't you complaining that you were >>> forced to install gcc 4.3 and 4.1 when 3.4 worked just fine? >>> >>> >>> >> Because, when I installed gcc 4.3, I could then unmerge the old gcc. >> That's why I didn't complain about that. With python, we still have to >> have the current version plus the new version which is not being used at >> all. >> >> Am I not correct in that? If the new python is installed, what exactly >> is going to use it? I used the new gcc. It worked fine. I unmerged >> the old one with no wasted space and one less package installed. This >> doesn't appear to be the case with python-3 tho. It's going to be >> installed and just sit there like a rock. >> > Python 3 is used during installation of packages, which support Python 2 and > Python 3 and support installation for multiple Python ABIs. You can directly > execute scripts with "-3.1" suffix (e.g. "bpython-3.1" or "coverage-3.1") > to use Python 3.1 even when Python 2.* is set as main active version of Python. > > But again, if it will work with python2 then you don't need python3. So you still don't need it installed just as has been said many times. Dale :-) :-) ^ permalink raw reply [flat|nested] 56+ messages in thread
* [gentoo-dev] Re: Packages pulling in python-3*, also they dont require it 2010-03-19 10:13 ` Dale 2010-03-19 10:34 ` Arfrever Frehtes Taifersar Arahesis @ 2010-03-20 0:51 ` Duncan 2010-03-20 9:56 ` Jean-Marc Hengen 2010-03-20 14:11 ` Arfrever Frehtes Taifersar Arahesis 2010-03-20 12:47 ` Peter Hjalmarsson 2 siblings, 2 replies; 56+ messages in thread From: Duncan @ 2010-03-20 0:51 UTC (permalink / raw To: gentoo-dev Dale posted on Fri, 19 Mar 2010 05:13:48 -0500 as excerpted: > Ciaran McCreesh wrote: >> On Fri, 19 Mar 2010 04:23:31 -0500 >> Dale<rdalek1967@gmail.com> wrote: >> >>>> It's being installed because it's a dependency of something you use. >>>> >>>> Replace Python with any other library and we wouldn't be having this >>>> discussion. >>>> >>> OK. Right now, as you type this, what package depends on python-3 and >>> won't work with python-2? Anything at all? If it is nothing, then >>> why install it? >>> >> And that's where you're making the mistake: you're treating Python as >> being different from every other package. >> >> In every other case, you want things to be using the newest version of >> a slotted package where possible. Why aren't you complaining that you >> were forced to install gcc 4.3 and 4.1 when 3.4 worked just fine? >> >> > Because, when I installed gcc 4.3, I could then unmerge the old gcc. > That's why I didn't complain about that. With python, we still have to > have the current version plus the new version which is not being used at > all. I had to pick somewhere to reply, and this seemed as good a place as any, as it does give me a jumping off point... It seems to me Ciaran is correct in one point, at least: python-3.x /is/ different than most such major updates (but then again, each such major update tends to have its unique points). That's why this huge discussion. It also seems to me that, due to the resolver and dependency specifier technology on the one side, the practicalities of running one's system with least complication (thus, most people /not/ wanting the normal update as soon as available/stable, in this /special/ case) on another, political correctness (the problem with just masking it in base and being done with it) on a third, and the number of packages to update to specific dependencies much like portage's, should that be chosen, on the fourth, we're pretty much surrounded with unpleasant alternatives that /are/ going to be something of an issue for /some/, no matter which is chosen. Again, thus the huge discussion. So what can be done besides continuing to spin wheels as we are? What's the least painful, yet still practical, alternative, all factors considered? Here's one that I'll admit isn't perfect, but none are. Yet this one seems the best way forward to me, given the alternatives. First, let's step back a moment and remember a defining characteristic of Gentoo, that we give the users both freedom and responsibility for their own systems, and have never made excuses for that fact. Second, let's remember that we /do/ have the news feature now, so at least there's a way to communicate a warning about such things. After that, it's generally up to the user, as, ultimately, it seems likely to be here. But we /can/ warn them using a news item, first, and given that, we /should/. So let's just recognize that it's not a perfect situation, create a news item saying that python-3 will soon (give a date) be unmasked, and suggest that users not needing it may wish to package.mask it themselves, with a link to documentation with specific instructions and a bit more detail on why they might wish to mask it and under what circumstances they might not. I'd suggest an unmasking date 30 days after the release of the news item. Yes, that's not going to get everyone before it happens, but the news item will be there after that for those what want to read it, and if people aren't doing that --ask or --pretend before they go doing their updates, especially if they're going a month or more between updates, well... Worst-case they get a py3k sitting there basically unused, and a few extra builds for some period, until such time as py3k is considered stable and popular enough to be the system default. This to me seems the best of painful choices. Down side, it's forcing every user to fiddle with their masks or decide not to. Three up sides: (1) At least with the news item they get some warning and can put the mask in place ahead of time. (2) We're simply relying on one of the best features of Gentoo, the one giving the user both the freedom and responsibility to manage his own system. (3) It gives us a way to actually move forward, /now/, using our current tools, without continuing the debate /forever/. Can anyone shoot holes in this any worse than the other proposals? Let's give our users the warning they need, and treat them like the adults Gentoo has always claimed to respect them as. What they do with it after that is up to them. -- Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Re: Packages pulling in python-3*, also they dont require it 2010-03-20 0:51 ` [gentoo-dev] " Duncan @ 2010-03-20 9:56 ` Jean-Marc Hengen 2010-03-20 12:53 ` Zac Medico 2010-03-20 14:11 ` Arfrever Frehtes Taifersar Arahesis 1 sibling, 1 reply; 56+ messages in thread From: Jean-Marc Hengen @ 2010-03-20 9:56 UTC (permalink / raw To: gentoo-dev Duncan wrote: > ... ++ - I can only add the saying "With freedom comes great responsibility.". Maybe the python herd could maintain a little status page which covers informations like: - Estimated python 3 compatibility in respect to the packages in the main tree. - Recommendations if installing makes sense or not (e.g. package X gains feature Y with python 3). - Recommendations if setting python 3 as system engine makes already sense or not. This way gentoo can give its users the tools needed to make a good decision if python 3 makes sense on his system. For me as a user I need more time to study if an action makes sense than implementing said action (e.g. locally masking python 3 - It would not be the first time masking a package). If one isn't into python, it gets even more complicated. J_M ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Re: Packages pulling in python-3*, also they dont require it 2010-03-20 9:56 ` Jean-Marc Hengen @ 2010-03-20 12:53 ` Zac Medico 0 siblings, 0 replies; 56+ messages in thread From: Zac Medico @ 2010-03-20 12:53 UTC (permalink / raw To: gentoo-dev On 03/20/2010 02:56 AM, Jean-Marc Hengen wrote: > Duncan wrote: >> ... > > ++ - I can only add the saying "With freedom comes great responsibility.". > > Maybe the python herd could maintain a little status page which covers > informations like: > - Estimated python 3 compatibility in respect to the packages in the > main tree. That would be easy enough to generate from dependencies. Surely there are some dependencies that need to be updated, but that shouldn't be much work. For example, I've already updated the cracklib and libxml2 deps to indicate lack of python3 support. > - Recommendations if installing makes sense or not (e.g. package X gains > feature Y with python 3). > - Recommendations if setting python 3 as system engine makes already > sense or not. > This way gentoo can give its users the tools needed to make a good > decision if python 3 makes sense on his system. For me as a user I need > more time to study if an action makes sense than implementing said > action (e.g. locally masking python 3 - It would not be the first time > masking a package). If one isn't into python, it gets even more complicated. I would advise people to go ahead and install it as long as they can spare a little disk space and cpu time. Anybody who is tight on those resources should feel free to mask it (and the dependency resolver will certainly notify you if this is not feasible in your case). Honestly, I don't see a need for lots of data analysis here, but maybe some people just like that kind of thing. -- Thanks, Zac ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Re: Packages pulling in python-3*, also they dont require it 2010-03-20 0:51 ` [gentoo-dev] " Duncan 2010-03-20 9:56 ` Jean-Marc Hengen @ 2010-03-20 14:11 ` Arfrever Frehtes Taifersar Arahesis 2010-03-22 21:12 ` Jacob Godserv 1 sibling, 1 reply; 56+ messages in thread From: Arfrever Frehtes Taifersar Arahesis @ 2010-03-20 14:11 UTC (permalink / raw To: Gentoo Development [-- Attachment #1: Type: Text/Plain, Size: 622 bytes --] 2010-03-20 01:51:44 Duncan napisał(a): > So let's just recognize that it's not a perfect situation, create a news > item saying that python-3 will soon (give a date) be unmasked, and suggest > that users not needing it may wish to package.mask it themselves, with a > link to documentation with specific instructions and a bit more detail on > why they might wish to mask it and under what circumstances they might not. > > I'd suggest an unmasking date 30 days after the release of the news item. Python 3 is not masked. The discussion is about stabilization. -- Arfrever Frehtes Taifersar Arahesis [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Re: Packages pulling in python-3*, also they dont require it 2010-03-20 14:11 ` Arfrever Frehtes Taifersar Arahesis @ 2010-03-22 21:12 ` Jacob Godserv 2010-03-23 15:37 ` Arfrever Frehtes Taifersar Arahesis 0 siblings, 1 reply; 56+ messages in thread From: Jacob Godserv @ 2010-03-22 21:12 UTC (permalink / raw To: gentoo-dev On Sat, Mar 20, 2010 at 10:11, Arfrever Frehtes Taifersar Arahesis <Arfrever@gentoo.org> wrote: > 2010-03-20 01:51:44 Duncan napisał(a): >> So let's just recognize that it's not a perfect situation, create a news >> item saying that python-3 will soon (give a date) be unmasked, and suggest >> that users not needing it may wish to package.mask it themselves, with a >> link to documentation with specific instructions and a bit more detail on >> why they might wish to mask it and under what circumstances they might not. >> >> I'd suggest an unmasking date 30 days after the release of the news item. > > Python 3 is not masked. The discussion is about stabilization. Duncan's comments still apply, though, right? What's against writing a news item about stabilizing Python? -- Jacob "For then there will be great distress, unequaled from the beginning of the world until now — and never to be equaled again. If those days had not been cut short, no one would survive, but for the sake of the elect those days will be shortened." Are you ready? ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Re: Packages pulling in python-3*, also they dont require it 2010-03-22 21:12 ` Jacob Godserv @ 2010-03-23 15:37 ` Arfrever Frehtes Taifersar Arahesis 2010-03-23 16:15 ` Duncan 0 siblings, 1 reply; 56+ messages in thread From: Arfrever Frehtes Taifersar Arahesis @ 2010-03-23 15:37 UTC (permalink / raw To: Gentoo Development [-- Attachment #1: Type: Text/Plain, Size: 1042 bytes --] 2010-03-22 22:12:54 Jacob Godserv napisał(a): > On Sat, Mar 20, 2010 at 10:11, Arfrever Frehtes Taifersar Arahesis > <Arfrever@gentoo.org> wrote: > > 2010-03-20 01:51:44 Duncan napisał(a): > >> So let's just recognize that it's not a perfect situation, create a news > >> item saying that python-3 will soon (give a date) be unmasked, and suggest > >> that users not needing it may wish to package.mask it themselves, with a > >> link to documentation with specific instructions and a bit more detail on > >> why they might wish to mask it and under what circumstances they might not. > >> > >> I'd suggest an unmasking date 30 days after the release of the news item. > > > > Python 3 is not masked. The discussion is about stabilization. > > Duncan's comments still apply, though, right? What's against writing a > news item about stabilizing Python? There is already a thread about news item: http://archives.gentoo.org/gentoo-dev/msg_814e67764c17f88bde94f22e9a392e4f.xml -- Arfrever Frehtes Taifersar Arahesis [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* [gentoo-dev] Re: Packages pulling in python-3*, also they dont require it 2010-03-23 15:37 ` Arfrever Frehtes Taifersar Arahesis @ 2010-03-23 16:15 ` Duncan 0 siblings, 0 replies; 56+ messages in thread From: Duncan @ 2010-03-23 16:15 UTC (permalink / raw To: gentoo-dev Arfrever Frehtes Taifersar Arahesis posted on Tue, 23 Mar 2010 16:37:34 +0100 as excerpted: > 2010-03-22 22:12:54 Jacob Godserv napisał(a): >> On Sat, Mar 20, 2010 at 10:11, Arfrever Frehtes Taifersar Arahesis >> <Arfrever@gentoo.org> wrote: >> > 2010-03-20 01:51:44 Duncan napisał(a): >> >> So let's just recognize that it's not a perfect situation, create a >> >> news item saying that python-3 will soon (give a date) be unmasked, >> >> and suggest that users not needing it may wish to package.mask it >> >> themselves, with a link to documentation with specific instructions >> >> and a bit more detail on why they might wish to mask it and under >> >> what circumstances they might not. >> >> >> >> I'd suggest an unmasking date 30 days after the release of the news >> >> item. >> > >> > Python 3 is not masked. The discussion is about stabilization. >> >> Duncan's comments still apply, though, right? What's against writing a >> news item about stabilizing Python? > > There is already a thread about news item: > http://archives.gentoo.org/gentoo-dev/ msg_814e67764c17f88bde94f22e9a392e4f.xml (link wrapped) But that doesn't mention that users may wish to package.mask it, to avoid having it on their systems at all. That's what /I/ was suggesting in /this/ thread, that a news item (presumably that one) should mention the package.mask option. That really does seem to be about the best compromise, given the situation as described so well in this thread. -- Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman ^ permalink raw reply [flat|nested] 56+ messages in thread
* [gentoo-dev] Re: Packages pulling in python-3*, also they dont require it 2010-03-19 10:13 ` Dale 2010-03-19 10:34 ` Arfrever Frehtes Taifersar Arahesis 2010-03-20 0:51 ` [gentoo-dev] " Duncan @ 2010-03-20 12:47 ` Peter Hjalmarsson 2 siblings, 0 replies; 56+ messages in thread From: Peter Hjalmarsson @ 2010-03-20 12:47 UTC (permalink / raw To: gentoo-dev fre 2010-03-19 klockan 05:13 -0500 skrev Dale: > Because, when I installed gcc 4.3, I could then unmerge the old gcc. > That's why I didn't complain about that. With python, we still have to > have the current version plus the new version which is not being used at > all. > That was if you did not use qemu that did *not* compile or run with a gcc never then gcc-3 for a couple of years... Also search for "gcc-porting" in b.g.o and guess what: there are many packages that fits this description for gcc, qemu was just a special case since for it it actually took YEARS before upstream released a version that worked with gcc-4, most other packages is often easier to patch (since it is mostly compile-time brokenness related to headers or other "small" fixes) and our awesome toolchain guys helps fixing it up before it hits ~arch. ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 9:23 ` Dale 2010-03-19 9:30 ` Ciaran McCreesh @ 2010-03-19 9:35 ` Arfrever Frehtes Taifersar Arahesis 2010-03-19 9:39 ` Petteri Räty 2010-03-19 9:40 ` Brian Harring 2 siblings, 1 reply; 56+ messages in thread From: Arfrever Frehtes Taifersar Arahesis @ 2010-03-19 9:35 UTC (permalink / raw To: Gentoo Development [-- Attachment #1: Type: Text/Plain, Size: 1687 bytes --] 2010-03-19 10:23:31 Dale napisał(a): > Ciaran McCreesh wrote: > > On Fri, 19 Mar 2010 03:54:28 -0500 > > Dale<rdalek1967@gmail.com> wrote: > > > >> Ciaran McCreesh wrote: > >> > >>> On Thu, 18 Mar 2010 23:17:17 +0100 > >>> Ben de Groot<yngwin@gentoo.org> wrote: > >>> > >>> > >>>> Because it is extremely useless to the great majority of users. > >>>> > >>>> > >>> Most packages in the tree are useless to the great majority of > >>> users. > >>> > >> Which is why most users don't install everything. I have about 1000 > >> packages installed here. The packages installed are either something > >> I use or a dependency of something I use. What exactly is this being > >> installed for again? If nothing depends on it, there is no need to > >> have it. > >> > > It's being installed because it's a dependency of something you use. > > > > Replace Python with any other library and we wouldn't be having this > > discussion. > > > > > > OK. Right now, as you type this, what package depends on python-3 and > won't work with python-2? Anything at all? If it is nothing, then why > install it? > > Since python-3 is not what the system is using, it's not getting used > even if it is installed. So as I mentioned in another reply, portage is > installing something and it is just sitting there doing nothing. What > is the point in that? I can add "python2" USE flag (enabled by default) to some versions of dev-lang/python. With USE="-python2", Python 2 will not be required and Python 3 will be set as main active version of Python. -- Arfrever Frehtes Taifersar Arahesis [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 9:35 ` [gentoo-dev] " Arfrever Frehtes Taifersar Arahesis @ 2010-03-19 9:39 ` Petteri Räty 2010-03-19 9:55 ` Arfrever Frehtes Taifersar Arahesis 0 siblings, 1 reply; 56+ messages in thread From: Petteri Räty @ 2010-03-19 9:39 UTC (permalink / raw To: gentoo-dev On 19.3.2010 11.35, Arfrever Frehtes Taifersar Arahesis wrote: > > I can add "python2" USE flag (enabled by default) to some versions of > dev-lang/python. With USE="-python2", Python 2 will not be required and > Python 3 will be set as main active version of Python. > You should move to the same scheme that ruby uses. Then users can just disable the python_version_3 or whatever USE_EXPAND scheme is used. Regards, Petteri ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 9:39 ` Petteri Räty @ 2010-03-19 9:55 ` Arfrever Frehtes Taifersar Arahesis 2010-03-19 9:56 ` Brian Harring 0 siblings, 1 reply; 56+ messages in thread From: Arfrever Frehtes Taifersar Arahesis @ 2010-03-19 9:55 UTC (permalink / raw To: Gentoo Development [-- Attachment #1: Type: Text/Plain, Size: 681 bytes --] 2010-03-19 10:39:07 Petteri Räty napisał(a): > On 19.3.2010 11.35, Arfrever Frehtes Taifersar Arahesis wrote: > > > > > I can add "python2" USE flag (enabled by default) to some versions of > > dev-lang/python. With USE="-python2", Python 2 will not be required and > > Python 3 will be set as main active version of Python. > > > > You should move to the same scheme that ruby uses. Then users can just > disable the python_version_3 or whatever USE_EXPAND scheme is used. We are waiting on ABI dependencies (and extended support for multiple ABIs in package manager), which will provide some needed functionality. -- Arfrever Frehtes Taifersar Arahesis [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 9:55 ` Arfrever Frehtes Taifersar Arahesis @ 2010-03-19 9:56 ` Brian Harring 2010-03-19 10:01 ` Ciaran McCreesh 0 siblings, 1 reply; 56+ messages in thread From: Brian Harring @ 2010-03-19 9:56 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1330 bytes --] On Fri, Mar 19, 2010 at 10:55:03AM +0100, Arfrever Frehtes Taifersar Arahesis wrote: > 2010-03-19 10:39:07 Petteri Räty napisał(a): > > On 19.3.2010 11.35, Arfrever Frehtes Taifersar Arahesis wrote: > > > > > > > > I can add "python2" USE flag (enabled by default) to some versions of > > > dev-lang/python. With USE="-python2", Python 2 will not be required and > > > Python 3 will be set as main active version of Python. > > > > > > > You should move to the same scheme that ruby uses. Then users can just > > disable the python_version_3 or whatever USE_EXPAND scheme is used. > > We are waiting on ABI dependencies (and extended support for multiple ABIs in > package manager), which will provide some needed functionality. You can do it now w/out waiting on ABI dependencies- I'm not saying the dependencies would be pretty, but it's doable to get abi level depdencies per slotting via expanding out the use combinations. Note that's a step beyond what's in place now- converting over to the ruby abuse of USE_EXPAND hands over better control to users now w/ the same dep gurantees. So... yeah, it's not reliant on EAPI. An EAPI extension *would* make it easier, but it's not required to do it (especially since the deps are already autogenerated to a decent degree). ~harring [-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 9:56 ` Brian Harring @ 2010-03-19 10:01 ` Ciaran McCreesh 2010-03-19 10:27 ` Brian Harring 0 siblings, 1 reply; 56+ messages in thread From: Ciaran McCreesh @ 2010-03-19 10:01 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1021 bytes --] On Fri, 19 Mar 2010 02:56:08 -0700 Brian Harring <ferringb@gmail.com> wrote: > > We are waiting on ABI dependencies (and extended support for > > multiple ABIs in package manager), which will provide some needed > > functionality. > > You can do it now w/out waiting on ABI dependencies- I'm not saying > the dependencies would be pretty, but it's doable to get abi level > depdencies per slotting via expanding out the use combinations. > > Note that's a step beyond what's in place now- converting over to the > ruby abuse of USE_EXPAND hands over better control to users now w/ > the same dep gurantees. > > So... yeah, it's not reliant on EAPI. An EAPI extension *would* make > it easier, but it's not required to do it (especially since the deps > are already autogenerated to a decent degree). How would do it and deal with existing packages not having the required things in IUSE without (+)/(-) use deps? I don't see a way of doing it legally without those. -- Ciaran McCreesh [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 10:01 ` Ciaran McCreesh @ 2010-03-19 10:27 ` Brian Harring 0 siblings, 0 replies; 56+ messages in thread From: Brian Harring @ 2010-03-19 10:27 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 3364 bytes --] On Fri, Mar 19, 2010 at 10:01:05AM +0000, Ciaran McCreesh wrote: > On Fri, 19 Mar 2010 02:56:08 -0700 > Brian Harring <ferringb@gmail.com> wrote: > > > We are waiting on ABI dependencies (and extended support for > > > multiple ABIs in package manager), which will provide some needed > > > functionality. > > > > You can do it now w/out waiting on ABI dependencies- I'm not saying > > the dependencies would be pretty, but it's doable to get abi level > > depdencies per slotting via expanding out the use combinations. > > > > Note that's a step beyond what's in place now- converting over to the > > ruby abuse of USE_EXPAND hands over better control to users now w/ > > the same dep gurantees. > > > > So... yeah, it's not reliant on EAPI. An EAPI extension *would* make > > it easier, but it's not required to do it (especially since the deps > > are already autogenerated to a decent degree). > > How would do it and deal with existing packages not having the required > things in IUSE without (+)/(-) use deps? I don't see a way of doing it > legally without those. Roughly, PYTHON_DEPS="pkg1 pkg2 pkg3" SUPPORTED_PYTHONS="2.6 2.7 3.1" inherit insanely-unfriendly-trickery w/in said eclass, it does a few things 1) IUSE addition of the USE_EXPAND targets for the supported abis 2) take the enabled USE_EXPAND'd flags intersected against SUPPORTED_PYTHON, then set deps/rdeps to """ python_2.6? ( pkg1[python_2.6] pkg2[python_2.6] pkg3[python2.6] ) python_2.7? ( pkg1[python_2.7] pkg2[python_2.7] pkg3[python2.7] ) python_3.1? ( pkg1[python_3.1] pkg2[python_3.1] pkg3[python3.1] ) """ Yes, that is horrible (ciaran you knew it was going to be). Few flaws with it also- 1) edge case when the user turns off all use flags needs addressing- worst case, python eclass forces whatever we consider the 'default' (aka 2.6) 2) python_2.6 isn't actually a valid use flag- it would have to be python_2-6 or python_26 since periods aren't allowed (arfie pointed this out) 3) this can be ugly for users if the PM doesn't treat use flags as tristate- specifically 'explicitly-set', 'explicitly-unset', 'indeterminant'. If the ocnfiguration forces an explicit and it conflicts w/ the use dep, ok, configuration needs to be changed. If the use flag is indeterminant, then the PM needs to flip the flag on it's own in that case- I know pkgcore should do this, I don't think portage/paludis do (please correct me if wrong). Thing to note, the deps *would* be accurate- further at the vdb level they'd actually be usable. A dev-lang/python in the vdb is basically unusable since implicitly the pkg that has the dep is built against whatever slottings of python were available at the time- so if you take a pkg from now, a year down the line when py3.2 is stabled as far as the PM can tell that pkg *still* would work if <=py3.1 were removed (this obviously is not true). Note also that what I laid out above is as far as I know, going a couple of steps beyond what the ruby eclass does (same for what the python eclass does). I'm not necessarily advocating the approach above, but for the raw dev-lang/python dependency we *really* should be using use_expand there- it'll hand folk a fair amount of control as to what abi's get installed into. ~harring [-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 9:23 ` Dale 2010-03-19 9:30 ` Ciaran McCreesh 2010-03-19 9:35 ` [gentoo-dev] " Arfrever Frehtes Taifersar Arahesis @ 2010-03-19 9:40 ` Brian Harring 2 siblings, 0 replies; 56+ messages in thread From: Brian Harring @ 2010-03-19 9:40 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1798 bytes --] On Fri, Mar 19, 2010 at 04:23:31AM -0500, Dale wrote: > OK. Right now, as you type this, what package depends on python-3 and > won't work with python-2? Anything at all? If it is nothing, then why > install it? To some degree it's the users choice which python version they choose to settle on- a simple server system doing file sharing could actually be py3k via portage/pkgcore both supporting py3k (including their dependencies). As for py3k only pkgs, I'd bet 3to2 is py3k only... it's worth noting that some new libs are targeting py3k only also (I don't agree with that, but it's upstreams choice). > Since python-3 is not what the system is using, it's not getting used > even if it is installed. So as I mentioned in another reply, portage is > installing something and it is just sitting there doing nothing. What > is the point in that? Mask the freaking package already. The time people have extended in bitching about this *literally* exceeds the time to type mkdir -p /etc/portage && \ echo '>=dev-lang/python-3' >> /etc/portage/package.mask If you consider masking it to be that horrible (or want to keep expending time), fine- then please do what Betelgeuse has suggested in IRC and raid from the ruby eclass the USE_EXPAND'd ruby_targets trickery and integrate that into the python eclass [1]. Via that (and a lot of ebuild cleanup) users could explicitly specify the python versions they want targeted and it would properly be represented in the depgraph. ~harring [1] Note that python.eclass already has something *roughly* similar to this, but 1) it's not USE based, 2) no one aparently knows about it, 3) from what I've seen most ebuilds haven't really been converted to handle this properly (yet). [-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* [gentoo-dev] Re: Packages pulling in python-3*, also they dont require it 2010-03-19 8:57 ` Ciaran McCreesh 2010-03-19 9:23 ` Dale @ 2010-03-19 15:13 ` Nikos Chantziaras 2010-03-19 18:26 ` Alec Warner 1 sibling, 1 reply; 56+ messages in thread From: Nikos Chantziaras @ 2010-03-19 15:13 UTC (permalink / raw To: gentoo-dev On 03/19/2010 10:57 AM, Ciaran McCreesh wrote: > On Fri, 19 Mar 2010 03:54:28 -0500 > Dale<rdalek1967@gmail.com> wrote: >> Ciaran McCreesh wrote: >>> On Thu, 18 Mar 2010 23:17:17 +0100 >>> Ben de Groot<yngwin@gentoo.org> wrote: >>> >>>> Because it is extremely useless to the great majority of users. >>>> >>> Most packages in the tree are useless to the great majority of >>> users. >> >> Which is why most users don't install everything. I have about 1000 >> packages installed here. The packages installed are either something >> I use or a dependency of something I use. What exactly is this being >> installed for again? If nothing depends on it, there is no need to >> have it. > > It's being installed because it's a dependency of something you use. > > Replace Python with any other library and we wouldn't be having this > discussion. It's weird that we have this discussion, that's true. Why don't you guys simply do what you did before when Qt3 was still in the tree? Qt3 applications depended on x11-libs/qt:3, Qt4 ones on x11-libs/qt:4 (before the Qt4 ebuild split). It seems very obvious and straightforward that the same applies here. And if a package offers both Python 2 and Python 3 compatibility, it should depend on whatever the upstream of that package considers best. Also, we had a "qt" and "qt4" USE flag before. Why not "python" and "python3" flags? That's an additional way ebuilds can choose deps. You guys always make easy decisions so complicated. :P ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Re: Packages pulling in python-3*, also they dont require it 2010-03-19 15:13 ` [gentoo-dev] " Nikos Chantziaras @ 2010-03-19 18:26 ` Alec Warner 2010-03-20 12:42 ` Nikos Chantziaras 0 siblings, 1 reply; 56+ messages in thread From: Alec Warner @ 2010-03-19 18:26 UTC (permalink / raw To: gentoo-dev On Fri, Mar 19, 2010 at 8:13 AM, Nikos Chantziaras <realnc@arcor.de> wrote: > On 03/19/2010 10:57 AM, Ciaran McCreesh wrote: >> >> On Fri, 19 Mar 2010 03:54:28 -0500 >> Dale<rdalek1967@gmail.com> wrote: >>> >>> Ciaran McCreesh wrote: >>>> >>>> On Thu, 18 Mar 2010 23:17:17 +0100 >>>> Ben de Groot<yngwin@gentoo.org> wrote: >>>> >>>>> Because it is extremely useless to the great majority of users. >>>>> >>>> Most packages in the tree are useless to the great majority of >>>> users. >>> >>> Which is why most users don't install everything. I have about 1000 >>> packages installed here. The packages installed are either something >>> I use or a dependency of something I use. What exactly is this being >>> installed for again? If nothing depends on it, there is no need to >>> have it. >> >> It's being installed because it's a dependency of something you use. >> >> Replace Python with any other library and we wouldn't be having this >> discussion. > > It's weird that we have this discussion, that's true. Why don't you guys > simply do what you did before when Qt3 was still in the tree? Qt3 > applications depended on x11-libs/qt:3, Qt4 ones on x11-libs/qt:4 (before > the Qt4 ebuild split). Using your example, some applications would have had to exist that could use either Qt3 or Qt4, so a greedy SLOT matcher would pull in Qt4 (and to be equal to the python case, portage would have to build two copies of all the binaries, one linked against qt3 and one linked against qt4, because python.eclass does something similar, but I digress.) > > It seems very obvious and straightforward that the same applies here. And if > a package offers both Python 2 and Python 3 compatibility, it should depend > on whatever the upstream of that package considers best. When choosing dependencies you want to maximize flexibility (because users like it for some reason). So we chose 'dev-lang/python' because typically any ole' version of python will work. If we hardcoded everything upstream 'recommended' (many upstreams don't make such recommendations either, which puts us in an interesting situation) it means when our users want to do something upstream does not 'recommend' they have to do a bunch of work like have a custom overlay just so they can changed a DEPEND string that should not have been so specific in the first place. Amusingly this very thing happened to me at work; a bunch of scripts depend on python but their dependencies are 'python2.4' and Ubuntu Lucid has no python2.4 (it ships with 2.6). Now I get to rewrite all the dependencies in all the debs to depend on 'python < 3' instead of 'python2.4.' Most of this work would have been unnecessary had the dependencies just been a bit more flexible. > > Also, we had a "qt" and "qt4" USE flag before. Why not "python" and > "python3" flags? That's an additional way ebuilds can choose deps. > > You guys always make easy decisions so complicated. :P Masking a package is not complicated. > > > I just want to give props to Arfrever for getting Python3 into the tree so quickly. Thanks for all your work on this. -A ^ permalink raw reply [flat|nested] 56+ messages in thread
* [gentoo-dev] Re: Packages pulling in python-3*, also they dont require it 2010-03-19 18:26 ` Alec Warner @ 2010-03-20 12:42 ` Nikos Chantziaras 0 siblings, 0 replies; 56+ messages in thread From: Nikos Chantziaras @ 2010-03-20 12:42 UTC (permalink / raw To: gentoo-dev On 03/19/2010 08:26 PM, Alec Warner wrote: > On Fri, Mar 19, 2010 at 8:13 AM, Nikos Chantziaras<realnc@arcor.de> wrote: >> You guys always make easy decisions so complicated. :P > > Masking a package is not complicated. Yes, that's why all the heated debates about Python 3 exist, because it's all so simple. It *is* simple, but you don't want it to be. ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 20:27 ` Ben de Groot 2010-03-18 20:53 ` Doktor Notor @ 2010-03-19 5:35 ` Alec Warner 2010-03-19 7:15 ` Dale 1 sibling, 1 reply; 56+ messages in thread From: Alec Warner @ 2010-03-19 5:35 UTC (permalink / raw To: gentoo-dev On Thu, Mar 18, 2010 at 1:27 PM, Ben de Groot <yngwin@gentoo.org> wrote: > On 18 March 2010 20:24, Fabian Groffen <grobian@gentoo.org> wrote: >> On 18-03-2010 20:20:02 +0100, Thomas Sachau wrote: >>> There are 2 ways to fix this issue: >>> >>> -fix the dependency string for those packages (including the lines in distutils.eclass) >>> >>> or (since Arfrever claims current portage behaviour is wrong) >>> -change portage behaviour to be satisfied with a python slot and to not require other slots. >> >> Since the last option will take time in any case, I guess the first >> option is the best to achieve the desired goal: make sure Python 3 stays >> as far away as possible from any system that doesn't need it. > > And the best way to do that is to package.mask it. The maintainer has chosen not to mask it in gentoo-x86, which means users are empowered to mask it locally and everyone who is complaining about getting python3 installed on their system should mask it locally. This is how users work around other defaults in the tree they don't agree with (USE flags, KEYWORDS, etc.) I don't get why this is a big deal at all or why people are unable to solve this themselves. > > Cheers, > -- > Ben de Groot > Gentoo Linux Qt project lead developer > > ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 5:35 ` [gentoo-dev] " Alec Warner @ 2010-03-19 7:15 ` Dale 2010-03-19 7:58 ` Zac Medico 0 siblings, 1 reply; 56+ messages in thread From: Dale @ 2010-03-19 7:15 UTC (permalink / raw To: gentoo-dev Alec Warner wrote: > On Thu, Mar 18, 2010 at 1:27 PM, Ben de Groot<yngwin@gentoo.org> wrote: > >> On 18 March 2010 20:24, Fabian Groffen<grobian@gentoo.org> wrote: >> >>> On 18-03-2010 20:20:02 +0100, Thomas Sachau wrote: >>> >>>> There are 2 ways to fix this issue: >>>> >>>> -fix the dependency string for those packages (including the lines in distutils.eclass) >>>> >>>> or (since Arfrever claims current portage behaviour is wrong) >>>> -change portage behaviour to be satisfied with a python slot and to not require other slots. >>>> >>> Since the last option will take time in any case, I guess the first >>> option is the best to achieve the desired goal: make sure Python 3 stays >>> as far away as possible from any system that doesn't need it. >>> >> And the best way to do that is to package.mask it. >> > The maintainer has chosen not to mask it in gentoo-x86, which means > users are empowered to mask it locally and everyone who is complaining > about getting python3 installed on their system should mask it > locally. This is how users work around other defaults in the tree > they don't agree with (USE flags, KEYWORDS, etc.) I don't get why > this is a big deal at all or why people are unable to solve this > themselves. > > >> Cheers, >> -- >> Ben de Groot >> Gentoo Linux Qt project lead developer >> >> >> I think this is because people that use Gentoo do so because it doesn't install things they don't need. Why install a package that is used by no other package? It's pointless. I would also add, if it gets installed and is used by no other package, --depclean should remove it. Putting it in package.mask locally is sort of silly in my opinion. There will come a day, maybe way off in the future, that something will need it. Then you have to edit the file again so portage can install it. This just seems to be adding either more work or unneeded packages. This is a users $0.02 worth. Dale :-) :-) ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 7:15 ` Dale @ 2010-03-19 7:58 ` Zac Medico 2010-03-19 8:52 ` Dale 0 siblings, 1 reply; 56+ messages in thread From: Zac Medico @ 2010-03-19 7:58 UTC (permalink / raw To: gentoo-dev On 03/19/2010 12:15 AM, Dale wrote: > I think this is because people that use Gentoo do so because it doesn't > install things they don't need. Why install a package that is used by > no other package? It's pointless. > > I would also add, if it gets installed and is used by no other package, > --depclean should remove it. Putting it in package.mask locally is sort > of silly in my opinion. There will come a day, maybe way off in the > future, that something will need it. Then you have to edit the file > again so portage can install it. I guess what you want is an emerge --avoid-new-slots-whenever-possible option. You might also want it to check for cases in which pulling in a new slot will allow you to remove an older slot (that will require some additional work). Having options like those would be really super, but I don't think using package.mask to do it will be so awful. -- Thanks, Zac ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 7:58 ` Zac Medico @ 2010-03-19 8:52 ` Dale 2010-03-19 9:09 ` Zac Medico 2010-03-19 22:28 ` Alistair Bush 0 siblings, 2 replies; 56+ messages in thread From: Dale @ 2010-03-19 8:52 UTC (permalink / raw To: gentoo-dev Zac Medico wrote: > On 03/19/2010 12:15 AM, Dale wrote: > >> I think this is because people that use Gentoo do so because it doesn't >> install things they don't need. Why install a package that is used by >> no other package? It's pointless. >> >> I would also add, if it gets installed and is used by no other package, >> --depclean should remove it. Putting it in package.mask locally is sort >> of silly in my opinion. There will come a day, maybe way off in the >> future, that something will need it. Then you have to edit the file >> again so portage can install it. >> > I guess what you want is an emerge > --avoid-new-slots-whenever-possible option. You might also want it > to check for cases in which pulling in a new slot will allow you to > remove an older slot (that will require some additional work). > > Having options like those would be really super, but I don't think > using package.mask to do it will be so awful. > I think what most people want is for portage not to pull in a package that nothing uses. I'm not a dev nor a programmer but I have yet to see any good reason for installing something that is not being used. It's not being tested to see if it is stable. It would have to be used before that would happen. Basically, it is just one more package to update and taking up hard drive space. It's not doing anything else. As for slots, if something needs it, portage would pull in the new slot. That's what portage does. It just seems in this case it is pulling in a new slot that nothing uses. Dale :-) :-) ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 8:52 ` Dale @ 2010-03-19 9:09 ` Zac Medico 2010-03-19 22:28 ` Alistair Bush 1 sibling, 0 replies; 56+ messages in thread From: Zac Medico @ 2010-03-19 9:09 UTC (permalink / raw To: gentoo-dev On 03/19/2010 01:52 AM, Dale wrote: > I think what most people want is for portage not to pull in a package > that nothing uses. I'm not a dev nor a programmer but I have yet to see > any good reason for installing something that is not being used. It's > not being tested to see if it is stable. It would have to be used > before that would happen. Basically, it is just one more package to > update and taking up hard drive space. It's not doing anything else. It won't be pulled in unless something else is pulled in that "can use python3". > As for slots, if something needs it, portage would pull in the new > slot. That's what portage does. It just seems in this case it is > pulling in a new slot that nothing uses. The problem is, most people will have have something pulled in via dependencies that "can use python3", even though python-2.x will suffice. For cases like this, some users may want to use package.mask in order to prevent python3 from being installed. -- Thanks, Zac ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 8:52 ` Dale 2010-03-19 9:09 ` Zac Medico @ 2010-03-19 22:28 ` Alistair Bush 2010-03-19 15:02 ` Dale 1 sibling, 1 reply; 56+ messages in thread From: Alistair Bush @ 2010-03-19 22:28 UTC (permalink / raw To: gentoo-dev > Zac Medico wrote: > > I think what most people want is for portage not to pull in a package > that nothing uses. I'm not a dev nor a programmer but I have yet to see > any good reason for installing something that is not being used. It's > not being tested to see if it is stable. It would have to be used > before that would happen. Basically, it is just one more package to > update and taking up hard drive space. It's not doing anything else. > > As for slots, if something needs it, portage would pull in the new > slot. That's what portage does. It just seems in this case it is > pulling in a new slot that nothing uses. Have you considered that they might possibly be hundreds of packages that you have installed providing functionality that you never use, but are only there as a fixed dependencies of something that you do. Hell lets take it even further than that, i'm sure there are thousands of lines of code in most packages that you will never hit, so why dont we start "masking" them as well. I don't recall ever using grep --version, please remove (mask) that code from grep. We will obviously need someway to unmask those code masks so lets create a couple of files for portage. Hows.... code.mask and code.unmask with a format of.... package path/to/file line1 line2 line3 line4 Or maybe we could just let users who don't want to install python-3 mask it _locally_. Once they need it portage is more than capable of telling them that. > > Dale > > :-) :-) ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 22:28 ` Alistair Bush @ 2010-03-19 15:02 ` Dale 2010-03-19 15:21 ` Doktor Notor 0 siblings, 1 reply; 56+ messages in thread From: Dale @ 2010-03-19 15:02 UTC (permalink / raw To: gentoo-dev Alistair Bush wrote: >> Zac Medico wrote: >> >> I think what most people want is for portage not to pull in a package >> that nothing uses. I'm not a dev nor a programmer but I have yet to see >> any good reason for installing something that is not being used. It's >> not being tested to see if it is stable. It would have to be used >> before that would happen. Basically, it is just one more package to >> update and taking up hard drive space. It's not doing anything else. >> >> As for slots, if something needs it, portage would pull in the new >> slot. That's what portage does. It just seems in this case it is >> pulling in a new slot that nothing uses. >> > Have you considered that they might possibly be hundreds of packages that you > have installed providing functionality that you never use, but are only there > as a fixed dependencies of something that you do. > > Hell lets take it even further than that, i'm sure there are thousands of > lines of code in most packages that you will never hit, so why dont we start > "masking" them as well. > > I don't recall ever using grep --version, please remove (mask) that code from > grep. We will obviously need someway to unmask those code masks so lets > create a couple of files for portage. Hows.... > > code.mask and code.unmask with a format of.... > > package path/to/file line1 line2 line3 line4 > > > > Or maybe we could just let users who don't want to install python-3 mask it > _locally_. Once they need it portage is more than capable of telling them > that. > > >> Dale >> >> :-) :-) Because in my opinion, portage is the first thing in line to keep a system sane. Installing packages that are not needed means that portage fails on that. So in your example, portage fails to do its due diligence and it falls to the users to do it for portage. Yep, sounds like a good idea. If a package has something that I don't need, I can generally disable that with the USE flags. That is why I picked Gentoo as my distro. I can disable/remove things that I don't need. If Gentoo is going to start putting a lot of unneeded stuff on my system, I may as well go back to Mandriva and off the RPM cliff. I left Mandrake to get rid of unneeded packages. Now Gentoo is doing the same just not nearly as bad. This would be like a small bump in the huge hill that Mandriva has. Dale :-) :-) ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-19 15:02 ` Dale @ 2010-03-19 15:21 ` Doktor Notor 0 siblings, 0 replies; 56+ messages in thread From: Doktor Notor @ 2010-03-19 15:21 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1699 bytes --] On Fri, 19 Mar 2010 10:02:44 -0500 Dale <rdalek1967@gmail.com> wrote: > Because in my opinion, portage is the first thing in line to keep a > system sane. Installing packages that are not needed means that > portage fails on that. So in your example, portage fails to do its > due diligence and it falls to the users to do it for portage. Yep, > sounds like a good idea. > No, portage does what the dependencies are telling it to do. I.e., if you have unversioned dev-lang/python in DEPEND, or >=dev-lang/python-2.4 or whatever similar then it installs >dev-lang/python:3 - why? Because the ebuilds tell portage that it will work like that. Another example: you have an ebuild that only works w/ gtk+-1* - you don't go to the ML asking for masking gtk+-2* but instead go and fix the dependencies to properly reflect that. So, now you can go and fix the dependencies treewide, or you can simply mask it *locally* if you don't want it. You'd still need to mask it if you install something that *really* works with both 2.x and 3.1 slots if you don't want python-3. It's like with any other slotted stuff in the tree, but for a reason unknown to me it's a huge issue all of a sudden because wheeee, t3h noes, it's python. And on that note - noone cares why people has lots of dev-libs/boost slots installed and why's the darned thing slotted on every minor version. So while talking about wrong dependencies, maybe the boost maintainer could explain why do we need it slotted like this: SLOT="$(get_version_component_range 1-2)" - simply because I'm tired of depcleaning it all the time as nothing requires multiple slots of this thing here. Cheers, DN [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 19:20 [gentoo-dev] Packages pulling in python-3*, also they dont require it Thomas Sachau 2010-03-18 19:24 ` Fabian Groffen @ 2010-03-18 19:28 ` Ciaran McCreesh 2010-03-18 19:43 ` Thomas Sachau 2010-03-18 19:33 ` Arfrever Frehtes Taifersar Arahesis 2010-03-20 12:51 ` [gentoo-dev] " Peter Hjalmarsson 3 siblings, 1 reply; 56+ messages in thread From: Ciaran McCreesh @ 2010-03-18 19:28 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 472 bytes --] On Thu, 18 Mar 2010 20:20:02 +0100 Thomas Sachau <tommy@gentoo.org> wrote: > -change portage behaviour to be satisfied with a python slot and to > not require other slots. But then you'll never get new slots for the majority of dependencies where you do usually want the newest version. If Portage were to take existing slots, most users would still be using Python 2.4 to satisfy dependencies, and would never have had 2.5+ installed... -- Ciaran McCreesh [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 19:28 ` Ciaran McCreesh @ 2010-03-18 19:43 ` Thomas Sachau 2010-03-18 20:02 ` Petteri Räty 0 siblings, 1 reply; 56+ messages in thread From: Thomas Sachau @ 2010-03-18 19:43 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1082 bytes --] On 03/18/2010 08:28 PM, Ciaran McCreesh wrote: > On Thu, 18 Mar 2010 20:20:02 +0100 > Thomas Sachau <tommy@gentoo.org> wrote: >> -change portage behaviour to be satisfied with a python slot and to >> not require other slots. > > But then you'll never get new slots for the majority of dependencies > where you do usually want the newest version. If Portage were to take > existing slots, most users would still be using Python 2.4 to > satisfy dependencies, and would never have had 2.5+ installed... > I know this part, this option was just the result of Arfrever telling me that just "dev-lang/python" is the right dependency and the PM being wrong, when pulling in something unneeded. python-3* might be a special case, since it is incompactible with 2* versions and wont be set as the default python during install. But this results in it being useless and not needed, until either a package or a user does require it explicitly. So my vote goes for changing the dependency strings for affected packages. -- Thomas Sachau Gentoo Linux Developer [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 316 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 19:43 ` Thomas Sachau @ 2010-03-18 20:02 ` Petteri Räty 2010-03-18 20:10 ` Ciaran McCreesh 2010-03-18 20:21 ` Thomas Sachau 0 siblings, 2 replies; 56+ messages in thread From: Petteri Räty @ 2010-03-18 20:02 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 722 bytes --] On 03/18/2010 09:43 PM, Thomas Sachau wrote: > > So my vote goes for changing the dependency strings for affected packages. > Here's some thoughts on the matter: - dev-lang/python is correct if the package works with all python versions in tree - in general we want new slots of packages like gcc being pulled in Here's how we could change Portage behavior for pulling new slots that are not strictly required: - for packages in the world file install as soon as available - for dependencies install the new slot if everything works with the new slot This would mean that Portage would stay with 2.6 as long as you have something that doesn't work with 3.x installed. Regards, Petteri [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 900 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 20:02 ` Petteri Räty @ 2010-03-18 20:10 ` Ciaran McCreesh 2010-03-18 20:57 ` Petteri Räty 2010-03-18 20:21 ` Thomas Sachau 1 sibling, 1 reply; 56+ messages in thread From: Ciaran McCreesh @ 2010-03-18 20:10 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 718 bytes --] On Thu, 18 Mar 2010 22:02:38 +0200 Petteri Räty <betelgeuse@gentoo.org> wrote: > Here's how we could change Portage behavior for pulling new slots that > are not strictly required: > > - for packages in the world file install as soon as available > > - for dependencies install the new slot if everything works with the > new slot > > This would mean that Portage would stay with 2.6 as long as you have > something that doesn't work with 3.x installed. Why would you want the majority of your packages that can use a newer, shinier version of a library to continue using the old version? Do you really want to stick with Qt3 until every single app you have supports Qt4? -- Ciaran McCreesh [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 20:10 ` Ciaran McCreesh @ 2010-03-18 20:57 ` Petteri Räty 0 siblings, 0 replies; 56+ messages in thread From: Petteri Räty @ 2010-03-18 20:57 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1330 bytes --] On 03/18/2010 10:10 PM, Ciaran McCreesh wrote: > On Thu, 18 Mar 2010 22:02:38 +0200 > Petteri Räty <betelgeuse@gentoo.org> wrote: >> Here's how we could change Portage behavior for pulling new slots that >> are not strictly required: >> >> - for packages in the world file install as soon as available >> >> - for dependencies install the new slot if everything works with the >> new slot >> >> This would mean that Portage would stay with 2.6 as long as you have >> something that doesn't work with 3.x installed. > > Why would you want the majority of your packages that can use a newer, > shinier version of a library to continue using the old version? Do you > really want to stick with Qt3 until every single app you have supports > Qt4? > PM can make it configurable. It's a trade off between having as few packages as possible installed and upgrading as soon as possible. In general I want to keep my installed stuff to minimum. I don't have a need for new stuff that I don't know exists. If I know packages can make use of it to give me something new and shiny I can always manually request the new slot to be installed. Most likely before everything is ported over there is something written to require the new version explicitly so it's sooner than you are saying. Regards, Petteri [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 900 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 20:02 ` Petteri Räty 2010-03-18 20:10 ` Ciaran McCreesh @ 2010-03-18 20:21 ` Thomas Sachau 2010-03-18 21:00 ` Petteri Räty 1 sibling, 1 reply; 56+ messages in thread From: Thomas Sachau @ 2010-03-18 20:21 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1380 bytes --] On 03/18/2010 09:02 PM, Petteri Räty wrote: > On 03/18/2010 09:43 PM, Thomas Sachau wrote: >> >> So my vote goes for changing the dependency strings for affected packages. >> > > Here's some thoughts on the matter: > > - dev-lang/python is correct if the package works with all python > versions in tree > > - in general we want new slots of packages like gcc being pulled in > > Here's how we could change Portage behavior for pulling new slots that > are not strictly required: > > - for packages in the world file install as soon as available > > - for dependencies install the new slot if everything works with the new > slot > > This would mean that Portage would stay with 2.6 as long as you have > something that doesn't work with 3.x installed. > > Regards, > Petteri > How do you detect this? Also, what about a new slot for python-2? E.g. 2.7? And do you want to add a special rule to portage just for the special case of python instead of the ebuilds/eclasses having the issue? There is currently the additional issue with distutils.eclass, which does directly add "dev-lang/python" to the dependencies, if there is nothing additional defined. So even e.g. dev-libs/protobuf does pull in python-3*, also there is no indication, that it will even work with that version. -- Thomas Sachau Gentoo Linux Developer [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 316 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 20:21 ` Thomas Sachau @ 2010-03-18 21:00 ` Petteri Räty 2010-03-18 21:06 ` Ciaran McCreesh 2010-03-18 21:45 ` Thomas Sachau 0 siblings, 2 replies; 56+ messages in thread From: Petteri Räty @ 2010-03-18 21:00 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1365 bytes --] On 03/18/2010 10:21 PM, Thomas Sachau wrote: > On 03/18/2010 09:02 PM, Petteri Räty wrote: >> On 03/18/2010 09:43 PM, Thomas Sachau wrote: >>> >>> So my vote goes for changing the dependency strings for affected packages. >>> >> >> Here's some thoughts on the matter: >> >> - dev-lang/python is correct if the package works with all python >> versions in tree >> >> - in general we want new slots of packages like gcc being pulled in >> >> Here's how we could change Portage behavior for pulling new slots that >> are not strictly required: >> >> - for packages in the world file install as soon as available >> >> - for dependencies install the new slot if everything works with the new >> slot >> >> This would mean that Portage would stay with 2.6 as long as you have >> something that doesn't work with 3.x installed. >> >> Regards, >> Petteri >> > > How do you detect this? By looking at the dependency graph? > Also, what about a new slot for python-2? E.g. 2.7? Handled by the same rules. > And do you want to add a special rule to portage just for the special case of python instead of the > ebuilds/eclasses having the issue? > What issue is there with ebuilds/eclasses? Both should reflect the deps as well as can be done with current EAPIs. If they don't, they need to be fixed. Regards, Petteri [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 900 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 21:00 ` Petteri Räty @ 2010-03-18 21:06 ` Ciaran McCreesh 2010-03-18 21:45 ` Thomas Sachau 1 sibling, 0 replies; 56+ messages in thread From: Ciaran McCreesh @ 2010-03-18 21:06 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1183 bytes --] On Thu, 18 Mar 2010 23:00:56 +0200 Petteri Räty <betelgeuse@gentoo.org> wrote: > >> Here's how we could change Portage behavior for pulling new slots > >> that are not strictly required: > >> > >> - for packages in the world file install as soon as available > >> > >> - for dependencies install the new slot if everything works with > >> the new slot > >> > >> This would mean that Portage would stay with 2.6 as long as you > >> have something that doesn't work with 3.x installed. > > > > How do you detect this? > > By looking at the dependency graph? But you can't tell whether everything will work with the new slot until you've generated a full set of decisions, and you can't generate a full set of decisions until you decide whether you want to install the newer slot. The problem with expecting the resolver to be clever is that the same kind of clever in different places leads to horrible screwups... Every time the resolver has to make some kind of decision that isn't utterly explicit it's going to do the wrong thing in an annoying minority of cases. Much better to just have ebuilds say exactly what they mean. -- Ciaran McCreesh [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 21:00 ` Petteri Räty 2010-03-18 21:06 ` Ciaran McCreesh @ 2010-03-18 21:45 ` Thomas Sachau 1 sibling, 0 replies; 56+ messages in thread From: Thomas Sachau @ 2010-03-18 21:45 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 813 bytes --] On 03/18/2010 10:00 PM, Petteri Räty wrote: >> And do you want to add a special rule to portage just for the special case of python instead of the >> ebuilds/eclasses having the issue? >> > > What issue is there with ebuilds/eclasses? Both should reflect the deps > as well as can be done with current EAPIs. If they don't, they need to > be fixed. > > Regards, > Petteri > I know about distutils.eclass: If an ebuild does just inherit it and does not define anything special, it will add "dev-lang/python" to the dependency tree, which will pull in python-3*, also noone knows, if it is requested, supported or will even work there (e.g. dev-util/protobuf does pull in python-3*, also i dont see any marks, that it does support python-3*). -- Thomas Sachau Gentoo Linux Developer [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 316 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 19:20 [gentoo-dev] Packages pulling in python-3*, also they dont require it Thomas Sachau 2010-03-18 19:24 ` Fabian Groffen 2010-03-18 19:28 ` Ciaran McCreesh @ 2010-03-18 19:33 ` Arfrever Frehtes Taifersar Arahesis 2010-03-18 19:47 ` Thomas Sachau 2010-03-20 12:51 ` [gentoo-dev] " Peter Hjalmarsson 3 siblings, 1 reply; 56+ messages in thread From: Arfrever Frehtes Taifersar Arahesis @ 2010-03-18 19:33 UTC (permalink / raw To: Gentoo Development [-- Attachment #1: Type: Text/Plain, Size: 410 bytes --] 2010-03-18 20:20:02 Thomas Sachau napisał(a): > Currently, some packages just depend on "dev-lang/python". Arfrever claims it to be right It's correct only for packages (e.g. dev-python/setuptools), which support all versions of Python (including Python 3). > Arfrever claims current portage behaviour is wrong I claim that Portage behavior is correct. -- Arfrever Frehtes Taifersar Arahesis [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 19:33 ` Arfrever Frehtes Taifersar Arahesis @ 2010-03-18 19:47 ` Thomas Sachau 2010-03-18 19:55 ` Arfrever Frehtes Taifersar Arahesis 0 siblings, 1 reply; 56+ messages in thread From: Thomas Sachau @ 2010-03-18 19:47 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 813 bytes --] On 03/18/2010 08:33 PM, Arfrever Frehtes Taifersar Arahesis wrote: > 2010-03-18 20:20:02 Thomas Sachau napisał(a): >> Currently, some packages just depend on "dev-lang/python". Arfrever claims it to be right > > It's correct only for packages (e.g. dev-python/setuptools), which support all > versions of Python (including Python 3). Can you tell us any benefit for the normal user, when you require him to install python-3* and to install the python related packages additionally for python-3*, while the system python is still 2.6* and wont change in the near future? > >> Arfrever claims current portage behaviour is wrong > > I claim that Portage behavior is correct. > So you want everyone to install python-3*? See above question. -- Thomas Sachau Gentoo Linux Developer [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 316 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 19:47 ` Thomas Sachau @ 2010-03-18 19:55 ` Arfrever Frehtes Taifersar Arahesis 2010-03-18 20:13 ` Thomas Sachau 0 siblings, 1 reply; 56+ messages in thread From: Arfrever Frehtes Taifersar Arahesis @ 2010-03-18 19:55 UTC (permalink / raw To: Gentoo Development [-- Attachment #1: Type: Text/Plain, Size: 616 bytes --] 2010-03-18 20:47:35 Thomas Sachau napisał(a): > On 03/18/2010 08:33 PM, Arfrever Frehtes Taifersar Arahesis wrote: > > 2010-03-18 20:20:02 Thomas Sachau napisał(a): > >> Currently, some packages just depend on "dev-lang/python". Arfrever claims it to be right > > > > It's correct only for packages (e.g. dev-python/setuptools), which support all > > versions of Python (including Python 3). > > Can you tell us any benefit for the normal user, when you require him to install python-3* I don't require it. It's only a side effect of correct dependencies. -- Arfrever Frehtes Taifersar Arahesis [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 19:55 ` Arfrever Frehtes Taifersar Arahesis @ 2010-03-18 20:13 ` Thomas Sachau 2010-03-18 21:40 ` Brian Harring 0 siblings, 1 reply; 56+ messages in thread From: Thomas Sachau @ 2010-03-18 20:13 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1086 bytes --] On 03/18/2010 08:55 PM, Arfrever Frehtes Taifersar Arahesis wrote: > 2010-03-18 20:47:35 Thomas Sachau napisał(a): >> On 03/18/2010 08:33 PM, Arfrever Frehtes Taifersar Arahesis wrote: >>> 2010-03-18 20:20:02 Thomas Sachau napisał(a): >>>> Currently, some packages just depend on "dev-lang/python". Arfrever claims it to be right >>> >>> It's correct only for packages (e.g. dev-python/setuptools), which support all >>> versions of Python (including Python 3). >> >> Can you tell us any benefit for the normal user, when you require him to install python-3* > > I don't require it. It's only a side effect of correct dependencies. > Wrong. Correct dependencies only require the set of packages they need, they dont pull in packages nor versions, which are not used or needed. Since you claim portage behaviour being right and you dont want to change "dev-lang/python" dependency, you want to force all users to install python-3*, also it is not needed nor used nor is there any benefit from it being installed. -- Thomas Sachau Gentoo Linux Developer [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 316 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Packages pulling in python-3*, also they dont require it 2010-03-18 20:13 ` Thomas Sachau @ 2010-03-18 21:40 ` Brian Harring 0 siblings, 0 replies; 56+ messages in thread From: Brian Harring @ 2010-03-18 21:40 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1876 bytes --] On Thu, Mar 18, 2010 at 09:13:01PM +0100, Thomas Sachau wrote: > On 03/18/2010 08:55 PM, Arfrever Frehtes Taifersar Arahesis wrote: > > 2010-03-18 20:47:35 Thomas Sachau napisał(a): > >> On 03/18/2010 08:33 PM, Arfrever Frehtes Taifersar Arahesis wrote: > >>> 2010-03-18 20:20:02 Thomas Sachau napisał(a): > >>>> Currently, some packages just depend on "dev-lang/python". Arfrever claims it to be right > >>> > >>> It's correct only for packages (e.g. dev-python/setuptools), which support all > >>> versions of Python (including Python 3). > >> > >> Can you tell us any benefit for the normal user, when you require him to install python-3* > > > > I don't require it. It's only a side effect of correct dependencies. > > > > Wrong. Correct dependencies only require the set of packages they need, they dont pull in packages > nor versions, which are not used or needed. > Since you claim portage behaviour being right and you dont want to change "dev-lang/python" > dependency, you want to force all users to install python-3*, also it is not needed nor used nor is > there any benefit from it being installed. dev-lang/python, if the pkg supports py2k/py3k (specifically py2.{4,5,6,7}, py3.{0,1,2}), *is* the correct dependency. End of story, no arguement is possible on that. Note I said 'correct', not 'desired'. It's the PM's choice how it chooses to fullfill that constraint. Now, even if py3k is basically unusable (for anything reliant on a framework, at this point in time it is unusable), that *still* doesn't matter- the dependency is *correct*. If you want to influence how the PM chooses what to use, that's masking or changing the algo it uses- not screwing up perfectly correct dependencies. Considering that the algo varies across all 3 managers, masking is the only tool that exists atm. ~harring [-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
* [gentoo-dev] Re: Packages pulling in python-3*, also they dont require it 2010-03-18 19:20 [gentoo-dev] Packages pulling in python-3*, also they dont require it Thomas Sachau ` (2 preceding siblings ...) 2010-03-18 19:33 ` Arfrever Frehtes Taifersar Arahesis @ 2010-03-20 12:51 ` Peter Hjalmarsson 2010-03-20 14:07 ` Arfrever Frehtes Taifersar Arahesis 3 siblings, 1 reply; 56+ messages in thread From: Peter Hjalmarsson @ 2010-03-20 12:51 UTC (permalink / raw To: gentoo-dev I have a question related to this: If I have package X which supports python2 and python 3, and I install it without python3 installed it will only install python2-files (i.e. /usr/lib/python2.x/*), right? What happens if I later install packages Y that is only python3, and relies on the python3 parts of package X? Can this happen and how will the PM handle that (reemerge package X installing the python3 parts or fail to compile package Y due to missing python module)? ^ permalink raw reply [flat|nested] 56+ messages in thread
* Re: [gentoo-dev] Re: Packages pulling in python-3*, also they dont require it 2010-03-20 12:51 ` [gentoo-dev] " Peter Hjalmarsson @ 2010-03-20 14:07 ` Arfrever Frehtes Taifersar Arahesis 0 siblings, 0 replies; 56+ messages in thread From: Arfrever Frehtes Taifersar Arahesis @ 2010-03-20 14:07 UTC (permalink / raw To: Gentoo Development [-- Attachment #1: Type: Text/Plain, Size: 689 bytes --] 2010-03-20 13:51:37 Peter Hjalmarsson napisał(a): > I have a question related to this: > > If I have package X which supports python2 and python 3, and I install > it without python3 installed it will only install python2-files > (i.e. /usr/lib/python2.x/*), right? > What happens if I later install packages Y that is only python3, and > relies on the python3 parts of package X? Can this happen and how will > the PM handle that (reemerge package X installing the python3 parts or > fail to compile package Y due to missing python module)? As the news item says, you should run python-updater after installation of Python 3.1. -- Arfrever Frehtes Taifersar Arahesis [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 56+ messages in thread
end of thread, other threads:[~2010-03-23 16:16 UTC | newest] Thread overview: 56+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2010-03-18 19:20 [gentoo-dev] Packages pulling in python-3*, also they dont require it Thomas Sachau 2010-03-18 19:24 ` Fabian Groffen 2010-03-18 20:27 ` Ben de Groot 2010-03-18 20:53 ` Doktor Notor 2010-03-18 22:09 ` Sebastian Pipping 2010-03-18 22:17 ` Ben de Groot 2010-03-19 8:12 ` Ciaran McCreesh 2010-03-19 8:54 ` Dale 2010-03-19 8:57 ` Ciaran McCreesh 2010-03-19 9:23 ` Dale 2010-03-19 9:30 ` Ciaran McCreesh 2010-03-19 10:13 ` Dale 2010-03-19 10:34 ` Arfrever Frehtes Taifersar Arahesis 2010-03-19 14:54 ` Dale 2010-03-20 0:51 ` [gentoo-dev] " Duncan 2010-03-20 9:56 ` Jean-Marc Hengen 2010-03-20 12:53 ` Zac Medico 2010-03-20 14:11 ` Arfrever Frehtes Taifersar Arahesis 2010-03-22 21:12 ` Jacob Godserv 2010-03-23 15:37 ` Arfrever Frehtes Taifersar Arahesis 2010-03-23 16:15 ` Duncan 2010-03-20 12:47 ` Peter Hjalmarsson 2010-03-19 9:35 ` [gentoo-dev] " Arfrever Frehtes Taifersar Arahesis 2010-03-19 9:39 ` Petteri Räty 2010-03-19 9:55 ` Arfrever Frehtes Taifersar Arahesis 2010-03-19 9:56 ` Brian Harring 2010-03-19 10:01 ` Ciaran McCreesh 2010-03-19 10:27 ` Brian Harring 2010-03-19 9:40 ` Brian Harring 2010-03-19 15:13 ` [gentoo-dev] " Nikos Chantziaras 2010-03-19 18:26 ` Alec Warner 2010-03-20 12:42 ` Nikos Chantziaras 2010-03-19 5:35 ` [gentoo-dev] " Alec Warner 2010-03-19 7:15 ` Dale 2010-03-19 7:58 ` Zac Medico 2010-03-19 8:52 ` Dale 2010-03-19 9:09 ` Zac Medico 2010-03-19 22:28 ` Alistair Bush 2010-03-19 15:02 ` Dale 2010-03-19 15:21 ` Doktor Notor 2010-03-18 19:28 ` Ciaran McCreesh 2010-03-18 19:43 ` Thomas Sachau 2010-03-18 20:02 ` Petteri Räty 2010-03-18 20:10 ` Ciaran McCreesh 2010-03-18 20:57 ` Petteri Räty 2010-03-18 20:21 ` Thomas Sachau 2010-03-18 21:00 ` Petteri Räty 2010-03-18 21:06 ` Ciaran McCreesh 2010-03-18 21:45 ` Thomas Sachau 2010-03-18 19:33 ` Arfrever Frehtes Taifersar Arahesis 2010-03-18 19:47 ` Thomas Sachau 2010-03-18 19:55 ` Arfrever Frehtes Taifersar Arahesis 2010-03-18 20:13 ` Thomas Sachau 2010-03-18 21:40 ` Brian Harring 2010-03-20 12:51 ` [gentoo-dev] " Peter Hjalmarsson 2010-03-20 14:07 ` Arfrever Frehtes Taifersar Arahesis
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox