#44494: p5.xx-modul -> is macports creating another "RPM" hell? ------------------------------+-------------------------------- Reporter: ora.et.labora@… | Owner: macports-tickets@… Type: request | Status: new Priority: Normal | Milestone: Component: base | Version: 2.3.1 Resolution: | Keywords: Port: | ------------------------------+-------------------------------- Comment (by larryv@…): Replying to [comment:2 ora.et.labora@…]:
I'm getting flooded with various "versions" of mysql, php, python, ruby, gcc et cetera. Why the need for mysql, mysql5, mysql56 and so on?
There’s always a valid argument to be made for allowing ports to depend on specific versions of other ports, for stability. We usually don’t find this necessary, which is why MacPorts doesn’t really support it. We patch ports to work with newer libraries, report bugs upstream, and so on. It’s annoying, but less annoying than versioning. However, some software changes so much between versions and is critical to so much other software that we //have to// keep multiple versions around, or a ton of other stuff would break. Compilers (`gcc*`, `clang*`, `llvm*`), language implementations (`python*`, `perl*`, `ruby*`), and databases (`mysql*`, `postgresql*`) are the usual culprits. Perl is a special case; it’s sufficiently backwards-compatible that we’re considering going back to providing only one Perl.
And if so, why not have "mysql" as base reference, i.e. always refers to the latest version.
In practice, no one’s thought about doing that, and many versioned ports already use `port select` to let users achieve similar functionality. For example, `sudo port select --set python python34` creates several symlinks (such as `$PREFIX/bin/python`) that point to specific files provided by `python34`. Having a “latest” port sounds nice, until it updates on you and breaks everything horribly. (Imagine if we’d had a `python` port when the PSF released Python 3.) If a particular piece of software wouldn’t have this problem, then it shouldn’t have versioned ports to start with. -- Ticket URL: <https://trac.macports.org/ticket/44494#comment:3> MacPorts <http://www.macports.org/> Ports system for OS X