On Sep 21, 2012, at 08:50, Kuba Ober wrote:

> Here's what I propose:
> 
> - rename wxWidgets to wxWidgets28, adjust all dependent packages appropriately
> - rename wxWidgets-devel to wxWidgets (that's 2.9.x)

When you "rename" a port, what you actually do is "svn copy" the old port to 
the new port name and then make changes to the copy. Then you mark the old port 
as "replaced_by" the new port. You keep things this way until most users have 
had a chance to upgrade. We usually recommend this be a period of no less than 
one year.

https://trac.macports.org/wiki/PortfileRecipes#replaced-by

So you see the problem: You cannot have it both ways: You cannot rename 
wxWidgets to wxWidgets28, and have that "replaced_by" mechanism to help users 
who had wxWidgets installed upgrade to the replacement port, and also rename 
wxWidgets-devel to wxWidgets.

But that might not be important. Most users don't have wxWidgets installed on 
purpose; they care about other ports that just happen to use wxWidgets. As long 
as dependencies are declared correctly in each port it should be fine.


On Sep 21, 2012, at 14:48, Kuba Ober wrote:

> Here's what I want to do, illustrated with this case:
> 
> 1. wxWidgets28 is the renamed current wxWidgets port, and tracks 2.8 
> wxWidgets releases.
> Note that this port won't have "replaces wxWidgets" in it!
> 2. wxWidgets is the renamed current wxWidgets-devel port, and tracks 2.9 
> releases
> This port will be marked "replaces wxWidgets-devel". wxWidgets-devel will 
> come back for 2.10
> or 3.0, and then the wxWidgets port will have to stop replacing 
> wxWidgets-devel, of course.

The directive is "replaced_by", and it goes in the port that's being replaced, 
not in the port that replaces it.


We could take the approach that we take in some other ports, when versions are 
so different that other ports will need to be able to choose among them: always 
use a suffix, and make the ports simultaneously installable by installing to 
different locations.

My understanding is that wxWidgets uses odd numbered releases for development 
series. So 2.9 is a development series that will eventually become a stable 
version. I don't know whether that stable version will be 2.10 or 3.0. But it 
would mean that any hypothetical port that contains wxWidgets version 2.9.x 
should be called either wxWidgets210 or wxWidgets30.

So under this plan, we would rename wxWidgets to wxWidgets28, we would rename 
wxWidgets-devel to wxWidgets210 or wxWidgets30, and we'd update all ports' 
dependencies according to the needs of each individual port. The port names 
wxWidgets and wxWidgets-devel would be retired a year later.


I have no particularly strong feelings about what the ports are named or how 
you want to do it. I've been ignoring wxWidgets for years since 2.8 does not 
work on current OS X. It will be good to get that solved, however we do it.


Note that we also have ports wxWidgets26 and wxWidgets-python. Perhaps they can 
be considered in this overhaul as well.


_______________________________________________
macports-dev mailing list
macports-dev@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo/macports-dev

Reply via email to