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

Python 3.6 installation from PyPI broken #165

Closed
zaneb opened this issue Apr 4, 2023 · 4 comments
Closed

Python 3.6 installation from PyPI broken #165

zaneb opened this issue Apr 4, 2023 · 4 comments

Comments

@zaneb
Copy link

zaneb commented Apr 4, 2023

yq can no longer be installed from PyPI without version pinning using Python 3.6, because version 3.2.0 reports that it supports Python >=3.6, but since e507357 it depends on tomlkit >= 0.11.7 which only supports Python >=3.7.

Installation fails with this error:

(py36env) $ pip install yq
Collecting yq
  Downloading https://files.pythonhosted.org/packages/a1/02/df27a89765c3ff839324a5cb8cc7c2e020c917dd030ba9d29bd2d9998ae3/yq-3.2.0-py3-none-any.whl
Collecting tomlkit>=0.11.7 (from yq)
  Could not find a version that satisfies the requirement tomlkit>=0.11.7 (from yq) (from versions: 0.1.0, 0.1.1, 0.2.0, 0.3.0, 0.4.0, 0.4.1, 0.4.2, 0.4.3, 0.4.4, 0.4.5, 0.4.6, 0.5.0, 0.5.1, 0.5.2, 0.5.3, 0.5.4, 0.5.5, 0.5.6, 0.5.7, 0.5.8, 0.5.9, 0.5.10, 0.5.11, 0.6.0, 0.7.0, 0.7.1, 0.7.2, 0.8.0, 0.9.0, 0.9.1, 0.9.2, 0.10.0, 0.10.1, 0.10.2, 0.11.0, 0.11.1, 0.11.2, 0.11.3, 0.11.4, 0.11.5, 0.11.6)
No matching distribution found for tomlkit>=0.11.7 (from yq)

I believe this would have worked if 3.2.0 had reported that it only supported python >=3.7 - pip would have installed the latest version that still supported 3.6 (i.e. 3.1.1). However, now that 3.2.0 has been published, I don't think a 3.2.1 that requires Python 3.7 will help, because 3.2.0 will still be the latest one that reports being installable on 3.6. I don't think it's possible to retrospectively update the python version requirements (please do not unpublish the 3.2.0 release).

The only solution I know of is for a 3.2.1 release that either requires only tomlkit >= 0.11.6 or reverts to the old toml dependency. (This could be followed by a 3.3.0 release that requires tomlkit>=0.11.7 and only supports Python 3.7 if necessary.)

@zaneb
Copy link
Author

zaneb commented Apr 4, 2023

I guess the intention was to drop 3.6 support prior to 3.0.0, judging by f47dde3.

@kislyuk
Copy link
Owner

kislyuk commented Apr 4, 2023

Sorry about that, yes, I forgot to update python_requires.

I have no specific reason to depend on tomlkit 0.11.7 (which is the first version that requires 3.7). I will publish yq-3.2.1 that will relax the dependency version constraint to tomlkit >= 0.11.6 as you recommended.

@zaneb
Copy link
Author

zaneb commented Apr 4, 2023

Great, thank you!

@kislyuk kislyuk closed this as completed in 6a507d7 Apr 5, 2023
@kislyuk
Copy link
Owner

kislyuk commented Apr 5, 2023

v3.2.1 released

runcom added a commit to runcom/osbuild-composer that referenced this issue Apr 5, 2023
Basically use the latest 3.2.1 version because of kislyuk/yq#165

Signed-off-by: Antonio Murdaca <runcom@linux.com>
thozza pushed a commit to osbuild/osbuild-composer that referenced this issue Apr 24, 2023
Basically use the latest 3.2.1 version because of kislyuk/yq#165

Signed-off-by: Antonio Murdaca <runcom@linux.com>
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

No branches or pull requests

2 participants