New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Python: redo setuptools bootstrapping #22210
Conversation
@FRidh, thanks for your PR! By analyzing the history of the files in this pull request, we identified @domenkozar, @edolstra, @chaoflow and @FRidh to be potential reviewers. |
2adc910
to
5130639
Compare
fb5320f
to
03605ac
Compare
We need to backport 0f864fb84bd4113044df034c10223dd7224f1eac, see #24011. |
@FRidh: is this still WIP? (I'm collecting some mass-rebuild stuff.) |
yep, still WIP. |
3c56ee2
to
5471fac
Compare
for consistency since we do so for all Python packages.
Somehow pip complaints it can't find the setuptools dependencies, but they're really there and they're working.
One of the packages I am attempting to install has a dependency on |
Which package is it that has a dependency on setuptools > 30? Our current version is 30.2.0. The main issue is whether we want these wheels to be the main versions of our packages. We could instead choose to use these wheels to only bootstrap, and then replace each of these packages with a Nix-built one. That way we can also (more easily) apply certain fixes to the |
The package is https://github.com/ppwwyyxx/tensorpack
I started creating a nix expression when I noticed the reliance on a newer setuptools.
… On May 14, 2017, at 4:57 AM, Frederik Rietdijk ***@***.***> wrote:
Which package is it that has a dependency on setuptools > 30? Our current version is 30.2.0.
This doesn't need much work to get it in a workable state.
The main issue is whether we want these wheels to be the main versions of our packages. We could instead choose to use these wheels to only bootstrap, and then replace each of these packages with a Nix-built one. That way we can also (more easily) apply certain fixes to the wheel package regarding determinism.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.
|
Looking at the setup.py I don't see any reason at all why that minimum
version is required. I would patch out that line.
…On May 17, 2017 5:56 PM, "Brandon Ogle" ***@***.***> wrote:
The package is https://github.com/ppwwyyxx/tensorpack
I started creating a nix expression when I noticed the reliance on a newer
setuptools.
> On May 14, 2017, at 4:57 AM, Frederik Rietdijk ***@***.***>
wrote:
>
> Which package is it that has a dependency on setuptools > 30? Our
current version is 30.2.0.
> This doesn't need much work to get it in a workable state.
>
> The main issue is whether we want these wheels to be the main versions
of our packages. We could instead choose to use these wheels to only
bootstrap, and then replace each of these packages with a Nix-built one.
That way we can also (more easily) apply certain fixes to the wheel package
regarding determinism.
>
> —
> You are receiving this because you commented.
> Reply to this email directly, view it on GitHub, or mute the thread.
>
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#22210 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/ACB876fJt8eruZxHkTK2Kx44DpiAZN3kks5r6xi4gaJpZM4LwCqU>
.
|
Not going any further with this for the time being. I'm quite sure that setuptools is going to vendor its dependencies again because of the trouble this change is causing. |
Yep, setuptools 36 vendors again. Closing. |
Motivation for this change
As I mentioned in #22139 setuptools will no longer vendor its dependencies.
This PR reimplements part of the bootstrapping. All dependencies of setuptools as well as setuptools itself are installed from wheels.
Things done
(nix.useSandbox on NixOS,
or option
build-use-sandbox
innix.conf
on non-NixOS)
nix-shell -p nox --run "nox-review wip"
./result/bin/
)