Qt 5.6 LTS vs. 5.7 - should MacPorts provide both and how?

Ryan Schmidt ryandesign at macports.org
Sat Sep 3 08:57:24 PDT 2016


> On Sep 3, 2016, at 10:10 AM, René J.V. Bertin <rjvbertin at gmail.com> wrote:
> 
> On Saturday September 03 2016 08:31:21 Ryan Schmidt wrote:
> 
>> I am inclined to say we don't need to keep 5.6 after upgrading the ports to 5.7.
> 
> Shouldn't that depend at least in part on what Qt have in mind with that so-called LTS version? If the intention is to are freeer to evolve the 5.7+ versions because there is a supported/maintained "legacy" version, then we may have no other choice but to provide 5.6 too.
> 
> The alternative attitude would be to stick to 5.6 as long as it's supported, and heave a big sigh of relief because of the lull in port maintenance. Which wouldn't exclude providing 5.7+ via a -devel port of course.
> 
>> In any case, using a variant to provide it is not an option. A variant shall not change the version field.
> 
> Hmmm, are you sure that's a hard rule that isn't violated by any of the existing ports? I don't really see the reason either; what would be wrong with a +legacy variant? Ports cannot depend on specific versions, so the version provided by their dependents should be irrelevant to them. OTOH, it's easier to provide 2 (or more) different versions via variants because that allows ports to use the simplest depends_* declarations if they don't care about version, while those that do can exclude the undesirable variant(s).

You mustn't change the version in a variant, because MacPorts decides when a port is outdated based on what's in the portindex, and the portindex only includes one entry for each port, and the version recorded in the portindex for a port is the version that would occur with the default variants that were in effect at the time the portindex was generated (which might have occurred on the server, or on the user's system, depending on circumstances).

If there are existing ports that modify the version in a variant, they are wrong and need to be fixed.


> Also, ports exist that introduce different version dependencies (on Clang, GCC, python, ...) via variants. Not exactly the same thing, but IMHO not completely different either.

Not related and not a problem.


>> You mentioned support for older OS. What is the minimum OS version for 5.7, vs 5.6?
> 
> I mentioned that as a possibility I haven't yet had the time to look into this in detail but there's a good chance that later versions will have stricter requirements. With 5.8 already being under active development it seems quite likely that it (or even 5.9) will be released before the 5.6LTS EOL.

Actual data would be required to make a decision. If, for example, 5.7 decided to drop support for everything older than El Capitan, I would call that premature and would use that as a reason not to update to 5.7.




More information about the macports-users mailing list