-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
version conflict in setuptools-rust when compiling cryptography #6671
Comments
Please provide full instructions to reproduce -- we do not depend on
setuptools_scm at all.
…On Wed, Dec 1, 2021 at 4:27 AM Thomas Seeling ***@***.***> wrote:
Linux s390x (zLinux on IBM Mainframe)
Redhat 7.9
Python 3.6.12
rustc 1.52.1 (Red Hat 1.52.1-2.el7_9)
cryptography 36.0.0
cffi 1.15.0
setuptools 59.4.0
pip 21.3.1
wheel 0.37.0
ERROR: Some build dependencies for setuptools-rust>=0.11.4 from
https://files.pythonhosted.org/packages/22/fa/ac431f0571bd84d8da5b55d9c9a00d510ae8682324405eabd96a752d090c/setuptools-rust-1.0.0.tar.gz#sha256=eb6e6d41f01e63d042288e5c609684adf93426c10ea745ec324263f3fcbf27e9
conflict with the backend dependencies: setuptools_scm==6.0.1 is
incompatible with setuptools_scm>=6.3.2.
The installer then tries to fall back and finally succeeds for
cryptography 3.3.2.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#6671>, or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAAGBD6AEP7CHMEVH5SPJ3UOXTAFANCNFSM5JD6YV6A>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
--
All that is necessary for evil to succeed is for good people to do nothing.
|
|
The final goal is building synapse, a matrix server. The relevant part of my build script is this:
|
upgrading the base tools already reports this:
|
You're going to need to figure out where in your dependency chain that a setuptools_scm pin is occurring. The failure is because Since this is purely a setup requirement you could also build a cryptography wheel separately and then install that wheel in the env you need it in. |
I think this is actually a problem with cyclic build dependencies between I don't know how to bootstrap a pip build environment to include these build dependencies, the best I could find at the moment is to have
|
@ddormer I can also reproduce this on my machine. tomli depends on flit-core and flit-core depends on tomli and this appears to defeat the setuptools build backend. I see that this is somewhat documented by flit (https://github.com/pypa/flit/blob/353f920b7a1a95c28ba1234d275324c351d6f4a3/doc/bootstrap.rst) so I'm not sure what the right path is here. It may be that users that want to build purely from source and use no wheels will have to handle this themselves. It's plausible that this is the same error as the original reporter, but I'd like confirmation of that. |
My environment contains tomli and flit, so I'm lost at what I could do to have a successfull compile.
I already try to build cryptography by itself and not during the synapse compile. |
Well. This is a headscratcher. I'm not even sure who to file a bug against about this, for all I know this is working as intended. I think your best bet is probably to just use the wheel package of |
I tried to build flit_core per the instructions on bootstrapping there but I have to admit I'm not an expert at python packaging. I still have no idea where this ==6.0.1 comes from and I don't really have a clue how to inject one local file into my build process. |
Depending on tomli produces circular dependencies when attempting to install from sdists only: pyca/cryptography#6671
I've submitted PyO3/setuptools-rust#200 to setuptools-rust to drop their dependency on tomli to avoid this whole mess. |
Depending on tomli produces circular dependencies when attempting to install from sdists only: pyca/cryptography#6671
Depending on tomli produces circular dependencies when attempting to install from sdists only: pyca/cryptography#6671
Can you confirm that this works with the latest setuptools-rust release? |
This appears to have fixed the same issue for homebrew. On the presumption that that carries over, I'm going to close. If you still experience the issue please levae a comment and we'll reopen. |
Doesn't work for me, still falls back to cryptography-3.3.2.
|
Are any new steps required to reproduce this? Following your original instructions I was able to successfully install cryptography 36. |
Same script to compile, removed explicit flit and toml install.
Complains all the way down until it reaches 3.3.2 which it then compiles. |
Updated to node.js 16.13.1, npm 8.2.0. Still the same error. Is there some cleanup I can do to make sure I really do a fresh start from all previous problems? |
FWIW, here's what I get:
|
Your usage of LDFLAGS looks strange, but be it. I notice you use
|
The LDFLAGS statically links OpenSSL on my (macOS) system. It's very
unlikely to be relevant to whatever's going on here.
…On Thu, Dec 9, 2021 at 8:41 AM Thomas Seeling ***@***.***> wrote:
Your usage of LDFLAGS looks strange, but be it. I notice you use pip
install and it still doesn't work for me on s390x with your command line.
Collecting setuptools-rust>=0.11.4
Using cached setuptools-rust-1.1.2.tar.gz (285 kB)
Installing build dependencies: started
Installing build dependencies: still running...
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
ERROR: Some build dependencies for setuptools-rust>=0.11.4 from https://files.pythonhosted.org/packages/67/08/e1aa2c582c62ac76e4d60f8e454bd3bba933781a06a88b4e38797445822a/setuptools-rust-1.1.2.tar.gz#sha256=a0adb9b503c0ffc4e8fe80b7c617898cefa78049983aaaea7f747e153a3e65d1 conflict with the backend dependencies: setuptools_scm==6.0.1 is incompatible with setuptools_scm>=6.3.2.
Installing build dependencies ... error
WARNING: Discarding https://files.pythonhosted.org/packages/60/06/d9109aba62c0b42466195e5b9b30dded26621a675b73998218070d8cc637/cryptography-36.0.0.tar.gz#sha256=52f769ecb4ef39865719aedc67b4b7eae167bafa48dbc2a26dd36fa56460507f (from https://pypi.org/simple/cryptography/) (requires-python:>=3.6). Command errored out with exit status 1: /homes/DPAORNET/seelinth-admin/cryptography/bin/python /homes/DPAORNET/seelinth-admin/cryptography/lib64/python3.6/site-packages/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-3tvez9ox/overlay --no-warn-script-location --no-binary :all: --only-binary :none: -i https://pypi.org/simple -- 'setuptools>=40.6.0' wheel 'cffi>=1.12; platform_python_implementation != '"'"'PyPy'"'"'' 'setuptools-rust>=0.11.4' Check the logs for full command output.
ERROR: Could not find a version that satisfies the requirement cryptography==36.0.0 (from versions: 0.1, 0.2, 0.2.1, 0.2.2, 0.3, 0.4, 0.5, 0.5.1, 0.5.2, 0.5.3, 0.5.4, 0.6, 0.6.1, 0.7, 0.7.1, 0.7.2, 0.8, 0.8.1, 0.8.2, 0.9, 0.9.1, 0.9.2, 0.9.3, 1.0, 1.0.1, 1.0.2, 1.1, 1.1.1, 1.1.2, 1.2, 1.2.1, 1.2.2, 1.2.3, 1.3, 1.3.1, 1.3.2, 1.3.3, 1.3.4, 1.4, 1.5, 1.5.1, 1.5.2, 1.5.3, 1.6, 1.7, 1.7.1, 1.7.2, 1.8, 1.8.1, 1.8.2, 1.9, 2.0, 2.0.1, 2.0.2, 2.0.3, 2.1, 2.1.1, 2.1.2, 2.1.3, 2.1.4, 2.2, 2.2.1, 2.2.2, 2.3, 2.3.1, 2.4, 2.4.1, 2.4.2, 2.5, 2.6, 2.6.1, 2.7, 2.8, 2.9, 2.9.1, 2.9.2, 3.0, 3.1, 3.1.1, 3.2, 3.2.1, 3.3, 3.3.1, 3.3.2, 3.4, 3.4.1, 3.4.2, 3.4.3, 3.4.4, 3.4.5, 3.4.6, 3.4.7, 3.4.8, 35.0.0, 36.0.0)
ERROR: No matching distribution found for cryptography==36.0.0
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
<#6671 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAAGBDNCV6QHNFT2BHPHDDUQCWX5ANCNFSM5JD6YV6A>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
--
All that is necessary for evil to succeed is for good people to do nothing.
|
How can I locate the package and file where this ==6.0.1 pinning takes place? The error message is very detailed but it's missing who tries to enforce this. |
@alex The setuptools-rust change fixed my cryptography build issues but while trying to reproduce @tseeling's issue, I noticed that there's still technically a dependency problem between @tseeling Perhaps you could add the pip argument: |
The blog posts https://iscinumpy.dev/post/bound-version-constraints/ sheds some light on the general issue with version pins. Poetry strongly recommends upper version pins. |
Now trying to compile on x86_64 with CentOS 8. Same issue.
|
I've just attempted to reproduce this again with: Are folks still experiencing this issue? |
No answer, since I couldn't reproduce I'm going to close. Please leave a comment if this is still an issue. |
Linux s390x (zLinux on IBM Mainframe)
Redhat 7.9
Python 3.6.12
rustc 1.52.1 (Red Hat 1.52.1-2.el7_9)
cryptography 36.0.0
cffi 1.15.0
setuptools 59.4.0
pip 21.3.1
wheel 0.37.0
ERROR: Some build dependencies for setuptools-rust>=0.11.4 from https://files.pythonhosted.org/packages/22/fa/ac431f0571bd84d8da5b55d9c9a00d510ae8682324405eabd96a752d090c/setuptools-rust-1.0.0.tar.gz#sha256=eb6e6d41f01e63d042288e5c609684adf93426c10ea745ec324263f3fcbf27e9 conflict with the backend dependencies: setuptools_scm==6.0.1 is incompatible with setuptools_scm>=6.3.2.
The installer then tries to fall back and finally succeeds for cryptography 3.3.2.
The text was updated successfully, but these errors were encountered: