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

» Linux Archive

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


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Gentoo > Gentoo Development

 
 
LinkBack Thread Tools
 
Old 03-05-2010, 09:00 AM
Zac Medico
 
Default Python 3.1: Stabilization and news item

On 03/05/2010 01:41 AM, Joshua Saddler wrote:
> If it's stable, then users get it by default, assuming they run the stable tree. They install a recent stage3, build their system, run emerge -uD world. Bam, a useless version of Python is now installed. Nothing on their systems will use it, so it's bloat.

In portage-2.1.7.x (current stable), there is support for
pseudo-version-ranges in dependencies. This allows you use a
dependency like <dev-lang/python-3 in a package that doesn't support
python3, and that will prevent it from getting pulled into the
dependency graph.

If a package that supports python3 gets pulled into the depedency
graph, then either it's the user's responsibility to mask it or else
we could provide the ability to disable python3 support with a USE
flag setting.
--
Thanks,
Zac
 
Old 03-05-2010, 09:14 AM
Joshua Saddler
 
Default Python 3.1: Stabilization and news item

On Fri, 5 Mar 2010 10:56:23 +0100
Dirkjan Ochtman <djc@gentoo.org> wrote:

> > No one has said yet why this is. So . . . direct question, gimme a direct
> > answer: why?
>
> Because in my opinion stable means that the people who package this
> are stating that hey, we did some testing with this, it works with all
> of the other packages you have installed that want to use it.

Aaaand none of my packages that are installed "want" to use it. That's what I'm sayin'. Maybe if I ran ~arch they'd ask for Python 3.x, but I run stable, so *nothing* wants to use it. Every other stable user is in the same situation. You seem to be ignoring us, the stable users, in favor of rushing 3.x out of ~arch, like that makes some kind of perceived problem go away.

> It does
> not mean everyone should have it installed, which is what it appears
> you think it means.

Yet that's the net effect -- everyone *will* have it installed. . . unless folks start getting crafty with pseudo version ranges, as Zac mentioned.
 
Old 03-05-2010, 09:22 AM
Dirkjan Ochtman
 
Default Python 3.1: Stabilization and news item

On Fri, Mar 5, 2010 at 11:14, Joshua Saddler <nightmorph@gentoo.org> wrote:
> Aaaand none of my packages that are installed "want" to use it. That's what I'm sayin'. Maybe if I ran ~arch they'd ask for Python 3.x, but I run stable, so *nothing* wants to use it. Every other stable user is in the same situation. You seem to be ignoring us, the stable users, in favor of rushing 3.x out of ~arch, like that makes some kind of perceived problem go away.

I *am* a stable user, and I do want to install python3 (without having
to override keywords -- because my packager, the gentoo python team,
says it works!). I recognize the cruft problem, but I don't think
keeping things in unstable is the right solution for solving it,
because they should IMO be orthogonal.

> Yet that's the net effect -- everyone *will* have it installed. . . unless folks start getting crafty with pseudo version ranges, as Zac mentioned.

I guess we'll have to do that then.

Cheers,

Dirkjan
 
Old 03-05-2010, 10:09 AM
Maciej Mrozowski
 
Default Python 3.1: Stabilization and news item

On Friday 05 of March 2010 11:22:18 Dirkjan Ochtman wrote:

> I *am* a stable user, and I do want to install python3 (without having
> to override keywords -- because my packager, the gentoo python team,
> says it works!). I recognize the cruft problem, but I don't think
> keeping things in unstable
^^^^^^^^
It's "testing"

Now on more serious note, ideally python could be treated just like any other
non-leaf package (in dependency tree), just like library. In such case it's
completely reasonable to stabilize the newest version of such 'library',
especially when it's slotted and doesn't conflict in any way with the rest.
However, because of being used by package manager, python is leaf application
really and it's going to be immediately pulled for everyone.

It would be nice if portage didn't automatically pull newest available
packages with new SLOTs unless explicitly referenced in dependencies. That
would have certainly caused python 3 stabilization to be a non issue.
(@Zac is this "greedy/non-greedy' behaviour you've talking some time ago?)

Hmm, but that would also prevent automatic KDE 4.x -> 4.y updates..

--
regards
MM
 
Old 03-05-2010, 10:24 AM
Zac Medico
 
Default Python 3.1: Stabilization and news item

On 03/05/2010 03:09 AM, Maciej Mrozowski wrote:
> Now on more serious note, ideally python could be treated just like any other
> non-leaf package (in dependency tree), just like library. In such case it's
> completely reasonable to stabilize the newest version of such 'library',
> especially when it's slotted and doesn't conflict in any way with the rest.
> However, because of being used by package manager, python is leaf application
> really and it's going to be immediately pulled for everyone.

It won't be pulled in by sys-apps/portage dependencies which look
like this:

|| ( dev-lang/python:2.8 dev-lang/python:2.7 dev-lang/python:2.6
>=dev-lang/python-3 )

If you already have python:2.6 installed then it will not pull in a
new slot.

> It would be nice if portage didn't automatically pull newest available
> packages with new SLOTs unless explicitly referenced in dependencies. That
> would have certainly caused python 3 stabilization to be a non issue.
> (@Zac is this "greedy/non-greedy' behaviour you've talking some time ago?)
>
> Hmm, but that would also prevent automatic KDE 4.x -> 4.y updates..

In portage-2.1.7.x (current stable), there is support for
pseudo-version-ranges in dependencies. This allows you use a
dependency like <dev-lang/python-3 in a package that doesn't support
python3, and that will prevent it from getting pulled into the
dependency graph.

If a package that supports python3 gets pulled into the depedency
graph, then either it's the user's responsibility to mask it or else
we could provide the ability to disable python3 support with a USE
flag setting.
--
Thanks,
Zac
 
Old 03-05-2010, 11:37 AM
Ben de Groot
 
Default Python 3.1: Stabilization and news item

On 5 March 2010 12:24, Zac Medico <zmedico@gentoo.org> wrote:
> It won't be pulled in by sys-apps/portage dependencies which look
> like this:
>
> *|| ( dev-lang/python:2.8 dev-lang/python:2.7 dev-lang/python:2.6
>>=dev-lang/python-3 )
>
> If you already have python:2.6 installed then it will not pull in a
> new slot.

That means we would need to fix all packages that depend on
python to use this style of dependency notation. Or do some
eclass magic with NEED_PYTHON for example.

And of course anyone with an unslotted dev-lang/python in their
world file will still pull the useless version.

Another possible solution is to rename the package to a unique
string like dev-lang/python3, tho I agree that is sub-optimal.

Cheers,
--
Ben de Groot
Gentoo Linux developer (qt, media, lxde, desktop-misc)
__________________________________________________ ____
 
Old 03-05-2010, 04:23 PM
Alistair Bush
 
Default Python 3.1: Stabilization and news item

> On 5 March 2010 12:24, Zac Medico <zmedico@gentoo.org> wrote:

> > It won't be pulled in by sys-apps/portage dependencies which look

> > like this:

> >

> > *|| ( dev-lang/python:2.8 dev-lang/python:2.7 dev-lang/python:2.6

> >

> >>=dev-lang/python-3 )

> >>

> > If you already have python:2.6 installed then it will not pull in a

> > new slot.

>

> That means we would need to fix all packages that depend on

> python to use this style of dependency notation. Or do some

> eclass magic with NEED_PYTHON for example.

>

> And of course anyone with an unslotted dev-lang/python in their

> world file will still pull the useless version.



Then they shouldn't have dev-lang/python in their world file then should they. Or should we start putting special magic rules around everywhere. Hell i'm sure I have useless crap in my world file, you don't see be bitching about being forced to upgrade some package I never use. If it is in there then it is my responsibility, not yours.



Guys you should remember that we like to call gentoo a metadistribution [1]. Our users should be taking an active role in the maintenance of the own distro what we should be doing is saying yes we have determined this package to be stable. The news item should tell users they can safely mask python:3 if they wish.



The only concern I have is all the [>]dev-lang/python [R]DEPENDs there are in the tree. They should be fixed to either be slotted or a dependency range. Thank god this will never happen again now that we have slot deps.... right? :|



Alistair.





[1] http://www.gentoo.org/main/en/about.xml

[2] and by this I mean looking to see what packages are going to be installed and whether they really want to install them.
 
Old 03-05-2010, 06:26 PM
Duncan
 
Default Python 3.1: Stabilization and news item

Zac Medico posted on Fri, 05 Mar 2010 03:24:29 -0800 as excerpted:

> On 03/05/2010 03:09 AM, Maciej Mrozowski wrote:
>> Now on more serious note, ideally python could be treated just like any
>> other non-leaf package (in dependency tree), just like library. In such
>> case it's completely reasonable to stabilize the newest version of such
>> 'library', especially when it's slotted and doesn't conflict in any way
>> with the rest. However, because of being used by package manager,
>> python is leaf application really and it's going to be immediately
>> pulled for everyone.
>
> It won't be pulled in by sys-apps/portage dependencies which look like
> this:
>
> || ( dev-lang/python:2.8 dev-lang/python:2.7 dev-lang/python:2.6
>>=dev-lang/python-3 )
>
> If you already have python:2.6 installed then it will not pull in a new
> slot.

Won't emerge -aNuD pull it in anyway, even in a new slot, since portage
says it can use it? I know I use that, so I'm always updated all the way
thru the system, not just at the leaves.

I know it did for me on ~arch, the reason I have it masked.

So, as has already been proposed, why not stable it, while at the same
time masking it, with an appropriate masking message explaining that it is
stable, but we're just preventing the majority of folks from pulling it
in, since they don't need it yet?

That way, those who want/need it can unmask it the usual way, and everyone
can continue as the were... at least until the first package requiring
python-3 only comes along. Realistically, how long is that likely to be?

Otherwise, what about a news item saying it's to be stabilized, and
warning people that don't think they want or need it to put it in
package.mask themselves? That would seem to be about the best compromise
I can see ATM.

--
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
 
Old 03-05-2010, 06:28 PM
Andy Kittner
 
Default Python 3.1: Stabilization and news item

On Sat, Mar 06, 2010 at 06:23:03AM +1300, Alistair Bush wrote:

[...]

Guys you should remember that we like to call gentoo a metadistribution [1].
Our users should be taking an active role in the maintenance of the own distro
[...]


As a user I have to thank you very much for this statement. These are
exactly my thoughts whenever these lengthy discussions about changing
some default setting crop up. The main reason I love gentoo is because
it makes it easy to have everything my way. (Un)masking something is as
simple as adding one line in /etc/portage/package.(un)mask, so I only
marginally care about whether something is stable, testing or even
package masked.

As a side remark to all those who argue themselves to death in the
"cups useflag in default profile" thread: The same applies to disabling
and enabling useflags

Well I guess I should go back into hiding now.

Regards,
Andy
 
Old 03-05-2010, 07:23 PM
Ryan Hill
 
Default Python 3.1: Stabilization and news item

On Fri, 5 Mar 2010 13:37:28 +0100
Ben de Groot <yngwin@gentoo.org> wrote:

> On 5 March 2010 12:24, Zac Medico <zmedico@gentoo.org> wrote:
> > It won't be pulled in by sys-apps/portage dependencies which look
> > like this:
> >
> > *|| ( dev-lang/python:2.8 dev-lang/python:2.7 dev-lang/python:2.6
> >>=dev-lang/python-3 )
> >
> > If you already have python:2.6 installed then it will not pull in a
> > new slot.
>
> That means we would need to fix all packages that depend on
> python to use this style of dependency notation. Or do some
> eclass magic with NEED_PYTHON for example.

Or PYTHON_DEPEND?

http://www.gentoo.org/proj/en/Python/developersguide.xml


--
fonts, by design, by neglect
gcc-porting, for a fact or just for effect
wxwidgets @ gentoo EFFD 380E 047A 4B51 D2BD C64F 8AA8 8346 F9A4 0662
 

Thread Tools




All times are GMT. The time now is 09:40 PM.

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