* [gentoo-python] How to migrate to the new scheme of Python scripts?
@ 2013-09-12 8:49 Michał Górny
2013-09-12 17:20 ` Patrick McLean
0 siblings, 1 reply; 4+ messages in thread
From: Michał Górny @ 2013-09-12 8:49 UTC (permalink / raw
To: gentoo-python; +Cc: python
[-- Attachment #1: Type: text/plain, Size: 1772 bytes --]
Hello,
Since the idea hasn't seen negative feedback so far, I think we should
so some early thinking on how to migrate.
Good news is that it doesn't change anything at all for packages
installed already. They will still use dev-python/python-exec:0
at least until they're rebuilt, so there's no risk of immediate
breakage during the upgrade.
However, the upgrade itself seems harder to accomplish. Specifically,
all the simple ways of achieving that would involve changing stable
packages.
It should be noted that what changes is:
1. Wrapped scripts are moved to a new location,
2. Wrappers are replaced by another branch of python-exec.
So, this doesn't apply to the packages which don't install
Python scripts at all. For the remaining ones, external behavior
persists -- EPYTHON is respected, /usr/bin/foo works.
The only things that break is those explicitly relying on wrapping
logic, and I track them in a bug:
https://bugs.gentoo.org/show_bug.cgi?id=484398
So far, I can think of three solutions, starting with the worst:
1. Deploy the new stuff in an overlay (except for python-exec:2 itself),
keep it there for some time asking people to test with eclasses
overriding the main tree. Then ask arch teams to stabilize
python-exec:2. When it hits stable, move the changes to the tree.
2. Make the new features controlled via make.conf variable. Ask users
to test with it enabled, then file a stablereq for arch teams to test
with the switch enabled, plus stabilize the few packages which will
need direct changes. Then remove the switch and make the new behavior
default for all stuff.
3. python-r2, python-single-r2, distutils-r2 :).
Anyone has a better idea?
--
Best regards,
Michał Górny
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 966 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [gentoo-python] How to migrate to the new scheme of Python scripts?
2013-09-12 8:49 [gentoo-python] How to migrate to the new scheme of Python scripts? Michał Górny
@ 2013-09-12 17:20 ` Patrick McLean
2013-09-12 17:49 ` Michał Górny
2013-09-12 19:27 ` Michał Górny
0 siblings, 2 replies; 4+ messages in thread
From: Patrick McLean @ 2013-09-12 17:20 UTC (permalink / raw
To: Michał Górny; +Cc: gentoo-python, python
[-- Attachment #1: Type: text/plain, Size: 1394 bytes --]
On Thu, 12 Sep 2013 10:49:00 +0200
Michał Górny <mgorny@gentoo.org> wrote:
> Hello,
>
> However, the upgrade itself seems harder to accomplish. Specifically,
> all the simple ways of achieving that would involve changing stable
> packages.
>
> So far, I can think of three solutions, starting with the worst:
>
> 1. Deploy the new stuff in an overlay (except for python-exec:2
> itself), keep it there for some time asking people to test with
> eclasses overriding the main tree. Then ask arch teams to stabilize
> python-exec:2. When it hits stable, move the changes to the tree.
>
> 2. Make the new features controlled via make.conf variable. Ask users
> to test with it enabled, then file a stablereq for arch teams to test
> with the switch enabled, plus stabilize the few packages which will
> need direct changes. Then remove the switch and make the new behavior
> default for all stuff.
>
> 3. python-r2, python-single-r2, distutils-r2 :).
>
>
> Anyone has a better idea?
>
You could make sure that python-exec:2 is marked ~arch and in the
eclass check the version installed and switch according to that. For
stable users everything will stay the same, and for ~arch users all new
installs/upgrades will be switched to the new system. This will even
work if we want to mask it for a bit, so developers can test before
letting it into ~arch.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [gentoo-python] How to migrate to the new scheme of Python scripts?
2013-09-12 17:20 ` Patrick McLean
@ 2013-09-12 17:49 ` Michał Górny
2013-09-12 19:27 ` Michał Górny
1 sibling, 0 replies; 4+ messages in thread
From: Michał Górny @ 2013-09-12 17:49 UTC (permalink / raw
To: Patrick McLean; +Cc: gentoo-python, python
[-- Attachment #1: Type: text/plain, Size: 1064 bytes --]
Dnia 2013-09-12, o godz. 10:20:18
Patrick McLean <chutzpah@gentoo.org> napisał(a):
> You could make sure that python-exec:2 is marked ~arch and in the
> eclass check the version installed and switch according to that. For
> stable users everything will stay the same, and for ~arch users all new
> installs/upgrades will be switched to the new system. This will even
> work if we want to mask it for a bit, so developers can test before
> letting it into ~arch.
Well, as I said on IRC, that sounds like a wonderful idea, thanks.
Just that most of it will require EAPI 5 for := dep on python-exec. For
EAPI 4 packages (namely: snakeoil), we can just use python-exec:0 for
now and switch at a later time.
Remaining case is how to handle the packages which rely on specific
kind of wrapping. I guess we can make them explicitly pull in
python-exec:0, plus add some switch to control the used version
or use EAPI=4 for them.
I will try to implement that on yet another branch of my
gx86-working-tree.
--
Best regards,
Michał Górny
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 966 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [gentoo-python] How to migrate to the new scheme of Python scripts?
2013-09-12 17:20 ` Patrick McLean
2013-09-12 17:49 ` Michał Górny
@ 2013-09-12 19:27 ` Michał Górny
1 sibling, 0 replies; 4+ messages in thread
From: Michał Górny @ 2013-09-12 19:27 UTC (permalink / raw
To: Patrick McLean; +Cc: gentoo-python, python
[-- Attachment #1: Type: text/plain, Size: 797 bytes --]
Dnia 2013-09-12, o godz. 10:20:18
Patrick McLean <chutzpah@gentoo.org> napisał(a):
> On Thu, 12 Sep 2013 10:49:00 +0200
> Michał Górny <mgorny@gentoo.org> wrote:
>
> > Anyone has a better idea?
> >
>
> You could make sure that python-exec:2 is marked ~arch and in the
> eclass check the version installed and switch according to that. For
> stable users everything will stay the same, and for ~arch users all new
> installs/upgrades will be switched to the new system. This will even
> work if we want to mask it for a bit, so developers can test before
> letting it into ~arch.
Ok, it's ready for testing on python-script-location-r2 branch.
https://bitbucket.org/mgorny/gx86-working-tree/commits/branch/python-script-location-r2
--
Best regards,
Michał Górny
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 966 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-09-12 19:27 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-09-12 8:49 [gentoo-python] How to migrate to the new scheme of Python scripts? Michał Górny
2013-09-12 17:20 ` Patrick McLean
2013-09-12 17:49 ` Michał Górny
2013-09-12 19:27 ` Michał Górny
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox