On Wed, Oct 20, 2021 at 06:24:21AM +0000, Zbigniew Jędrzejewski-Szmek wrote:
FWIW, I think the upstream renaming of ansible and ansible-core is
something
that we just have to accept. But we have some flexibility in how this is
packaged in Fedora.
...snip...
The Change proposal is not very clear in this regard… Please correct me
if I'm wrong, but my understanding is that there's a giant SRPM which
produces a giant 'ansible' binary package. In addition there's a second
small SRPM which produces the 'ansible-core' binary package.
Right:
https://files.pythonhosted.org/packages/9b/ed/5a6149a7e0314bfb99fd496781f...
(36MB)
https://files.pythonhosted.org/packages/be/1a/f40e97f4c400eec75813bc492f1...
(7MB)
When I'm reading Richard's proposal, I understand it as a
giant SRPM
package + ~95 binary packages. In your answer, you are clearly discussing
~95 SRPM packages with ~95 binary packages.
I agree that ~95 separate *source* packages is not a good approach:
- the obvious reason is the packaging overhead you mention
- but a more subtle reason is that upstream will test those 95 packages
in the versions listed in 'ansible' pypi package, so we want them in
the exact versions specified in the 'ansible' pypi package, and not
in the latest version each of those upstreams may have released.
Right.
But the approach with 1 SRPM and many *binary* packages seems pretty
attractive:
- it will be possible to install specific subset of the collection
as rpm packages. [Nico, does that answer you complaint about installation
size?]
Only if the seperately packaged collections are named differently, which
is another level of confusion I don't think we want.
ie, think if ansible 5.0 ships with ansible-collection-community-mysql
version 2.3.1 and fedora has a seperately packaged
ansible-collection-community-mysql 2.5.0.
Users would get the updated version and not match the tested with
ansible 5.0 version.
To some extent this will match the split of *binary* packages of
texlive.
is very useful when one knows the few specific subpackages that
one needs through the 'tex(foo.sty)' and 'tex(bar.tfm)' virtual
provides.
- it is still possible to have an 'ansible' metapackage that pulls in
those binary packages or some subset.
It would need to pull in all those binary packages of exactly those
versions in order to match upstream, but it couldn't where collections
overlap seperately provided ones of different versions (unless named
differently).
kevin