On 10/15/21 16:29, Nico Kadel-Garcia wrote:
I would publish ansible-core as just that, with a "Provides: ansible
%{version{-%{release}" and even "Obsoletes: ansible >= %{version}".
...
The "ansible" package could be a
meta package with "Requires: ansible-core ansible_collections" to
avoid the versioning confusion.
Those two things can't both be done, though, can they? If the
"ansible-core" package provides and obsoletes "ansible", then users
wouldn't be able to install the "ansible" package that requires
ansible_collections.
As a practical matter, I don't see any functional difference between the
proposed change (publishing an ansible-core package, and an ansible
package that contains collections) and your suggested alternative
(publishing an ansible-core package, and an ansible package that
requires collections), unless we disregard the meta package.
Publishing an ansible-core package that provides "ansible" (or more
specifically python3.Xdist(ansible)) wouldn't be compatible with the
updated Python packaging policy, which requires PyPI parity. Anything
that provides python3.Xdist(ansible) needs to provide at least a
complete compatible interface with the package from PyPI, and an
"ansible-core" package wouldn't.