Skip to content
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

pip install breaks with setuptools 69.0.0 #952

Closed
lockefox opened this issue Nov 21, 2023 · 3 comments · Fixed by #953
Closed

pip install breaks with setuptools 69.0.0 #952

lockefox opened this issue Nov 21, 2023 · 3 comments · Fixed by #953

Comments

@lockefox
Copy link

lockefox commented Nov 21, 2023

Setuptools released 69.0.0 on Nov 20th and it causes issues with installing b2 cli via pip

https://setuptools.pypa.io/en/stable/history.html#deprecations-and-removals

Added strict enforcement for project.dynamic in pyproject.toml. This removes the transitional ability of users configuring certain parameters via setup.py without making the necessary changes to pyproject.toml (as mandated by PEP 612). (#4066)

Repeated errors like the following with using pip (23.2.1) to install on python 3.11:

 _handle_missing_dynamic(dist, project_table)
      /private/var/folders/8m/5bvn5p5j4dl7vg2s8sb45fyw0000gq/T/pip-build-env-4qqm2d5_/overlay/lib/python3.11/site-packages/setuptools/config/_apply_pyprojecttoml.py:75: _MissingDynamic: `optional-dependencies` defined outside of `pyproject.toml` is ignored.
      !!

              ********************************************************************************
              The following seems to be defined outside of `pyproject.toml`:

              `optional-dependencies = {'full': ['pydantic>=2.0.1'], 'doc': ['sadisplay', 'sphinx<8,>=7.2', 'sphinx-argparse', 'sphinx-autobuild', 'sphinx-rtd-theme~=1.3', 'sphinxcontrib-plantuml'], 'license': ['pip-licenses==3.5.5; python_version < "3.8"', 'pip-licenses~=4.3.2; python_version >= "3.8"', 'pipdeptree<3,>=2.9', 'prettytable~=3.7']}`

              According to the spec (see the link below), however, setuptools CANNOT
              consider this value unless `optional-dependencies` is listed as `dynamic`.

              https://packaging.python.org/en/latest/specifications/declaring-project-metadata/

              To prevent this problem, you can list `optional-dependencies` under `dynamic` or alternatively
              remove the `[project]` table from your file and rely entirely on other means of
              configuration.
              ********************************************************************************

      !!

Issues originally found on MacOS Ventura, M1, Python 3.11

@law
Copy link

law commented Nov 21, 2023

It's also doing the same thing for me on setuptools 64.0.3, python 3.10.13, and pip 23.0.1 on OpenBSD 7.3. This is trying to install b2-3.13.0

Full output on my end - https://gist.github.com/law/e45a6805d1573ee20b9b56db42230a20

Further poking around shows that:
pip3.10 install b2==3.12.0
fails with similar errors, but
pip3.10 install b2==3.11.0
succeeds.

@fisher-
Copy link

fisher- commented Nov 21, 2023

Specifying the version also helped in my case, thanks @law!
pip3.10 install b2==3.11.0

@jsuchan-reef
Copy link
Collaborator

we're looking into it, thanks for the report

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants