On Tue, Feb 9, 2016 at 2:26 PM, Zbigniew Jędrzejewski-Szmek <zbyszek@xxxxxxxxx> wrote: > > As an alternative proposal, what about using an automatic dependency > generator and having dependent packages require specific modules from > the standard library. Those modules could then be moved between > system-python-libs and python-libs, and things would just work™. I > think that a separate system-python binary also wouldn't be needed. > > The scheme with automatic dependency generation could be implemented > gradually, by introducing the automatic provides and dependencies > generators, without removing current manual provides. Then when the > generated dependencies seem to be right, removing manual dependencies. > > Automatic dependency generation would benefit the whole ecosystem of > Python packages in Fedora. > > Zbyszek This is a much better idea. In fact, I've seen this at work in Mageia, which is what drove me to do work on the one newly contributed to RPM. I previously solicited feedback from the Python SIG about it[0], which led to my current PR sitting upstream[1]. I'm not entirely sure what would be required to extend it to read and generate module Provides for *all* modules installed by Python itself (it currently does not do module Provides/Requires generation when it detects being run on the python package, and I'm not entirely sure yet how it would behave if I remove that check, though it would be interesting to see). Part of the problem would also be that Python packages typically don't declare the system modules they require in metadata, so we would likely need to start reading import statements, and that sounds like a really bad idea (if for nothing else, performance reasons, but I can think of a few other reasons why it shouldn't do that). If there was a way to cleanly indicate what system-installed modules you used, that would make things much simpler. [0]: https://lists.fedoraproject.org/archives/list/python-devel@xxxxxxxxxxxxxxxxxxxxxxx/thread/SQBSAS4T25HK5YJBNBSFDD7KDQWDELL6/ [1]: https://github.com/rpm-software-management/rpm/pull/50 -- 真実はいつも一つ!/ Always, there's only one truth! -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx http://lists.fedoraproject.org/admin/lists/devel@xxxxxxxxxxxxxxxxxxxxxxx