On 10/29/26 7:46 AM, Michael J Gruber wrote:
Hi there,
while it's fall in some parts of the northern hemisphere and autumn in
others, some thoughts on leaf packages, especially in language
ecosystems.

Those thoughts are triggered by upstream changes in a python package
that I maintain. I spent quite some time keeping it building in
Fedora, and now trying things to follow the upstream changes according
to our packaging principles, but I'm finally wondering:

What for?

In this case, and probably similar others, the upstream package is
just a `pip install foo` away. This is what many users probably do
anyway, because they use something like venv or pipx for dependency
pinning so that their app keeps running with the same module
independent of distro changes., and reproducibly. It guarantees that
you use the module as intended by upstream and can file bug reports
there.

How would dependencies get resolved? At run time? It seems like this would be a nightmare for packages with a large number of python dependencies.

Also, not every package version is equal. How would "my thing only works with this one specific package version because of X?" That is controllable now, somewhat, by pinning a version in a spec file.

Finally, Fedora asserts some control over releases. PyPi has had supply chain issues, as recently as a few days ago. I worry about public perception if Fedora tells everyone to use a 3rd party source for python packages. Not that Fedora isn't vulnerable to such a thing, it just seems to hit other places first.

rob


So, what purpose does my python package serve? The install footprint
might be leaner, well. Who cares nowadays?

If you're thinking about moving towards a containerised workflow,
possibly switching to an image mode Fedora at some point, a good first
step is to identify what you need in your base system (OS), and what
is rather something "on top" that should live an independent life,
independent of your base install (be it rpm/rpm-ostree/bootc), both
technically and in terms of update cycles. Those things can live in a
container, a flatpak, a venv etc.

This is not a change proposal. It's just something I observed while
pondering what to spend time on, some seasonal food for thought. New
leaves are great to see in spring, but probably not the most
worthwhile to spend time on in Fedora packaging, unless they serve a
purpose that is achieved best as an rpm install. Same goes for
existing leaves that go dry or outgrow their existing habitat,
reaching for their own ecosystem.

Cheers
Michael

FYI: If you're wondering - python-PyMuPDF is the package I mentioned
above, but it's just one example.

--
_______________________________________________
devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/[email protected]
Do not reply to spam, report it: 
https://forge.fedoraproject.org/infra/tickets/issues/new

Reply via email to