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

[2023-11-21] Ansible 9.0.0 release #298

Closed
Tracked by #255
samccann opened this issue Sep 19, 2023 · 13 comments
Closed
Tracked by #255

[2023-11-21] Ansible 9.0.0 release #298

samccann opened this issue Sep 19, 2023 · 13 comments
Assignees

Comments

@samccann
Copy link
Contributor

No description provided.

@felixfontein
Copy link
Contributor

Since there was no report of serious problems with 9.0.0rc1 until last Friday (2023-11-17), no rc2 is needed and 9.0.0 will happen as planned!

@felixfontein felixfontein changed the title [2023-11-21] Ansible 9.0.0 release (if no rc2 needed) [2023-11-21] Ansible 9.0.0 release Nov 19, 2023
@gotmax23 gotmax23 self-assigned this Nov 20, 2023
@jeremycornett
Copy link

Found a problem. Using python 3.9.17 and ran 'pip install ansible -U'.
ERROR: No matching distribution found for ansible-core==2.16.0
The pypi ansible package does not have a requirement for a specific python version. It does require ansible-core~=2.16.0 though. The pypi package for ansible-core 2.16.0 does have a requirement for python version >=3.10. This is why an error is thrown.
I don't know if this is the best practice, but I would think the ansible package should require a specific python version too so it's clear what the overall error is.
My only option at this point is to either lock ansible to an older version by updating hundreds of git repos requirement.txt files, OR I upgrade python in our shared docker container.

@felixfontein
Copy link
Contributor

Actually ansible 9.0.0 should require Python 3.10+ as well. https://pypi.org/project/ansible/9.0.0/ shows

Programming Language
    Python :: 3
   [ Python :: 3 ](https://pypi.org/search/?c=Programming+Language+%3A%3A+Python+%3A%3A+3):: Only
    Python :: 3.10
    Python :: 3.11

The setup.cfg of the source dist says

[metadata]
name = ansible
[...]
classifiers = 
        [...]
        Programming Language :: Python :: 3
        Programming Language :: Python :: 3.10
        Programming Language :: Python :: 3.11
        Programming Language :: Python :: 3 :: Only
version = 9.0.0
[...]

[options]
zip_safe = False
install_requires = 
        ansible-core ~= 2.16.0
requires_python = >=3.10
[...]

@jeremycornett
Copy link

¯_(ツ)_/¯ All I'm saying is that the error is extremely misleading.

@felixfontein
Copy link
Contributor

I just tried starting a Python 3.9 container, installing ansible<9.0.0 (which installs Ansible 8.6.1), and then running pip install ansible -U. The result is that it downloads Ansible 9.0.0 and does not install anything, and does not result in any error. The python:3.9-slim container comes with pip 23.0.1 and Python 3.9.18.

Which version of pip are you using?

@felixfontein
Copy link
Contributor

Hmm, it looks like it should be python_requires and not requires_python in setup.cfg's [options]. Still strange to me that pip in my Python 3.9 container still seems to handle this correctly.

I've created ansible-community/antsibull-build#559 to fix the build tool, then we can create a 9.0.1 hotfix and yank 9.0.0. Thanks @gotmax23 for spotting the wrong directive!

@jeremycornett
Copy link

jeremycornett commented Nov 21, 2023

Apologies for not getting back sooner. Here's the repro steps. My system is running VERY slow ATM, so I haven't tested it thorougly, but this should show what I was referring to.

docker run -it quay.io/centos/centos:stream8 /bin/bash
dnf install python39 -y
python3 --version
pip3 --version
pip3 install ansible==8.6.1
pip3 install ansible -U

@felixfontein
Copy link
Contributor

Thanks for the reproducer! That installs pip 20.2.4, which indeed produces that error. If you upgrade pip with pip3 install --upgrade pip, then pip3 install ansible -U works afterwards (by not failing, and simply not upgrading either).

In any case, the 9.0.1 release should also work fine with older pip... I'm off to bed now, but @gotmax23 will continue with getting 9.0.1 out later.

@gotmax23
Copy link
Contributor

gotmax23 commented Nov 21, 2023

I'm planning to release ansible==9.0.1 with fixed python_requires metadata. We'll yank the ansible==9.0.0 release.

gotmax23 added a commit to gotmax23/ansible-build-data that referenced this issue Nov 21, 2023
@gotmax23
Copy link
Contributor

https://pypi.org/project/ansible/9.0.1/ has been published.

@felixfontein
Copy link
Contributor

9.0.0 has been yanked on 2023-11-21 at 22:29 UTC, before 9.0.1 was released.

@gotmax23
Copy link
Contributor

9.0.0 has been yanked on 2023-11-21 at 22:29 UTC, before 9.0.1 was released.

Yeah, there was a bit of a delay between when 9.0.0 was yanked and 9.0.1 was released. None of our release managers have permissions to yank releases, so we had to ping the Core team to do it, and I wasn't sure for how long they'd be around.

@anweshadas
Copy link
Collaborator

Detailed release announcement
https://forum.ansible.com/t/release-announcement-ansible-community-package-9-0-0/2492

Since the task has been completed so closing the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Status: Done
Development

No branches or pull requests

5 participants