Hacker News new | ask | show | jobs
by etal 5749 days ago
This problem is different from the Python issue Zed Shaw wrote about.

In Java, developers will bundle dozens of random .jar files with their application. Other versions of these libraries may exist in a Linux distribution already, but specific Java apps aren't linking to those and carefully documenting how to install all the dependencies (or which ones are optional). Instead, from the distro's point of view, these Java apps are being released with a bunch of binary blobs that may or may not contain bugs that need patching later. Which partly defeats the purpose of package management.

Python programmers don't do this. Distros love Python, which is why so many of their system administration/automation scripts depend on it. This puts some tension between packagers, who use it as a bash/perl replacement, and developers like Zed, who want to treat it like an up-to-date library -- but realize that the Java solution of just bundling the whole thing with the main app is ugly. That tension exists because Python developers haven't run amok the way Java developers have.

1 comments

I'd love to see distros start to introduce (for instance) separate python-sys and python-dev packages. The OS would use python-sys for the admin and automation scripts, but if you wanted to use Python for your own projects, you could use python-dev, which could be a later version. Possibly python-dev could even track upstream more closely. Either way, you'd decouple the system's need for a stable, proven and predictable Python from the user's need for new(er) shiny.
If pip/Distribute eventually works as smoothly as apt-get, I'll be a happy guy.