unison and protocol breakage
Ryan Schmidt
ryandesign at macports.org
Mon Feb 18 15:39:57 PST 2008
On Feb 18, 2008, at 07:48, Kevin Ballard wrote:
> On Feb 18, 2008, at 4:34 AM, Ryan Schmidt wrote:
>
>> On Feb 17, 2008, at 07:36, Kevin Ballard wrote:
>>
>>> No, the solution here is to not do anything. Anybody using 2.13
>>> needs
>>> to upgrade if they want to work with 2.27. We are not in the
>>> business
>>> of providing old port versions, and we *should not* be.
>>
>> Kevin, I think we are in fact in the business of providing old port
>> versions too. Where the newer version of the software is
>> incompatible in some way with the older version of the software,
>> it's reasonable to have two portfiles, if there is still demand for
>> the older version. We already have this for several software
>> packages. Consider php5 and php4; apache2, apache20 and apache; apr
>> and apr0; mysql5, mysql4 and mysql3; postgresql83, postgresql82,
>> postgresql81, postgresql80 and postgresql7; db46, db45, db44, db43,
>> db42, db41 and db3.
>
> That's a bit different - those are specific versions as required by
> other ports (at least, if they aren't then why the hell do we still
> have Portfiles for them?). Unison is not required by other ports, and
> if it were these other ports wouldn't require a specific version.
> Therefore, we shouldn't be providing old ports because we don't have
> to maintain them for dependencies.
[snip]
I wouldn't say it's only about dependencies. For example:
php4 contains some functionality that was dropped or changed in php5,
so some sites that work with php4 do not work with php5 without some
changes. A developer of such a site might reasonably want to install
php4 using MacPorts to continue developing his site.
apache20 exists for the reason explained at length in the Portfile:
to support the use of third-party binary modules compiled for Apache
2.0, which would not work in Apache 2.2 without recompilation.
The several postgresql ports exist, as I understand it, because the
database format is binary-incompatible between releases, requiring
the user to perform a manual migration. It was thought that breaking
a user's database just because they ran "sudo port upgrade outdated"
was rude.
So, in all these cases, we are concerned with the MacPorts user who
wants to continue using the old version of the software, because the
newer version works incompatibly. It doesn't matter if other ports
depend on these older versions.
> Note: It really is fairly trivial to install unison by hand once you
> have OCaml installed. If you have a debian machine that doesn't
> provide unison 2.27, just install it manually! Seriously! It's easier
> than trying to get Unison 2.13 into MacPorts.
I would still agree it's better to install the latest software on the
other machine, rather than get the older software into MacPorts.
More information about the macports-dev
mailing list