Python libraries and backwards compat [was Re: What would it take to make Software Collections work in Fedora?]

Adam Williamson awilliam at redhat.com
Wed Mar 6 23:22:32 UTC 2013


On 04/03/13 02:51 PM, Mark McLoughlin wrote:
> On Thu, 2012-12-06 at 07:06 -0800, Adam Williamson wrote:
>> On Thu, 2012-12-06 at 15:30 +0100, Nicolas Mailhot wrote:
>>> IMHO use of software collections is a symptom of a badly run organisation
>>> not devoting enough cycles to maintain the software it uses, and hoping
>>> (as in wishful thinking) no problem will go critical before the product
>>> they built on top of those collections is end-of-lifed
>>>
>>> I completely fail to see how entities with that problem will manage to
>>> maintain the package number explosion creating software collections will
>>> induce.
>>
>> On the one hand, I agree completely - I think the 'share all
>> dependencies dynamically' model that Linux distros have traditionally
>> embraced is the right one, and that we're a strong vector for spreading
>> the gospel when it comes to that model, and it'd be a shame to
>> compromise that.
>>
>> On the other hand, we've been proselytizing the Java heretics for over a
>> decade now, and the Ruby ones for a while, and neither shows any signs
>> of conversion or just plain going away, so we may have to call it an
>> ecumenical matter and deal with their models somehow. Sucky as it may
>> be. I don't know, I'm a bit conflicted.
>
> It's interesting that you call out Java and Ruby folks as being
> heretics. I guess that means all is kosher with Python?

Holy four month old thread revival, Batman!

Why yes it does indeed mean that, since as you know, anyone in Fedora 
will tell you that I am _the_ person to go to for an encyclopaedic 
knowledge of software development, seeing as how I am the QA monkey, 
don't know how to write code, and don't develop any software ;)

(That was a snarky way of saying, no, it doesn't mean that, it just 
means I was not aware of any issues like the one you describe below.)

> OpenStack is getting burned by API instability in some Python packages,
> so I've started a thread on Python's distutils-sig to try and guage the
> level of heresy amongst Python folks :)

> Two things I'm picking up from the thread:
>
>    - A trend towards "semantic versioning" and, implicit in that, an
>      acceptance of API breakages so long as the major number of a library
>      version is incremented
>
>    - Supporting the parallel installation of incompatible versions of
>      libraries isn't seen as an issue because you can "just use virtual
>      environments" ... which amounts to Python Software Collections.
>
> The combination of those two things suggests to me that the Python world
> will start looking a lot less sane to packagers - i.e. library
> maintainers breaking API compatibility more often and assuming we can
> just use SC or similar to have multiple incompatible versions installed.

Well, that sounds pretty bad. You may sign my name to the "Less Of This 
Nonsense" petition with my blessing...
-- 
Adam Williamson
Fedora QA Community Monkey
IRC: adamw | Twitter: AdamW_Fedora | identi.ca: adamwfedora
http://www.happyassassin.net


More information about the devel mailing list