[Nix-dev] Fwd: Python 3 as default

Herwig Hochleitner hhochleitner at gmail.com
Fri Feb 24 04:59:29 CET 2017


And a copy for the list as well + a one person applause for our
friend, reply-all.

---------- Forwarded message ----------
From: Herwig Hochleitner <hhochleitner at gmail.com>
Date: 2017-02-24 4:54 GMT+01:00
Subject: Re: [Nix-dev] Python 3 as default
To: Freddy Rietdijk <freddyrietdijk at fridh.nl>


First off, for context: I'm very grateful for your work to get our
python stuff over to python3.

I also support python3 providing `/bin/python`, _if_ we ensure that
python2's `/bin/python` takes precedence in all collisions (right
until python2's EOL). I think the PEP's symlinking guideline doesn't
directly apply here, since our transitive dependencies don't collide
(horray!).

I'm against changing pkgs.python to mean python3, though. Let me break down why:

2017-02-22 16:32 GMT+01:00 Freddy Rietdijk <freddyrietdijk at fridh.nl>:
>
>
> If we can't break stuff we might as well not make any changes at all.


I see your point, but I'd like to point out that additive changes are
less cumbersome than breaking changes, and explicit breakage is less
cumbersome than implicit breakage.

> the fact that upstream wants everyone to move away from Python 2

to be fair, upstream has been wanting that for a decade

>
> incompatibilities also exist between minor versions


i think users are customarily expected to keep up with point releases.

> explicitly changing parameters and arguments ... considering how much Python is used throughout Nixpkgs that's just unrealistic.
>
> I'm still open to getting rid of the `python` attribute, ... If this is the route we want to take, then its very unlikely we will be able to switch to 3.5 as the default for 17.03,


I'd be happy to help with the process of mass-renaming, if somebody
provided a list of packages wanting 2 or 3, however I suspect the real
work is in determining those package sets.
So, if a query-replace for `pkgs.python` -> `pkgs.python2` /
`pkgs.python3` within nixpkgs would cause so much trouble, how would a
rename in `all-packages.nix` fare any better? Are we ready to throw
the switch yet?

> or 3.6 for 17.09.


Are there python projects, stuck at 3.5, as well?

kind regards


More information about the nix-dev mailing list