Hacker News new | past | comments | ask | show | jobs | submit login

Or you can just let your distribution's repositories deal with all that for you. On Debian/Ubuntu/etc. Django and mysql-python are both installable via apt. That manages all your dependencies nicely. The versions you get may be a little older than you'd get if you grabbed them from elsewhere, but usually not so much that you'd notice.

I know there's been some bad blood between the Ruby and Debian communities about Debian package maintainers not accepting bleeding-edge versions of Ruby software into the Debian repos; that may have been why Ruby went off and built its own set of package managers.




the ruby world moved away from this for a few reasons.

1. I develop on a mac and deploy on different linux distros. It makes more sense for me to have a single system for managing ruby dependencies than to do it with 3 or 4 different systems that work differently and may not be fully compatible. Plus, with bundler and rubygems I'm not stuck on whatever version the distro decides to support.

2. If I install something like the mysql driver manually or with apt-get, and then a year from now I'm no longer around and some other developer checks out the code ... how do they know which versions of the libraries were used? With bundler all versions of all gems are checked into version control. This is a big win, and they can get a system with exactly the same versions of everything with a simple 'bundle install' after a clean checkout!

Edit: 3. Also, there are likely to be C based python libraries you want to use that aren't maintained by your distro. Now you're in a situation where you are mixing multiple dependency management systems which gets ugly fast.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: