[MacPorts] #71918: Unexpected results with platforms syntax for multiple ranges of OS versions

MacPorts noreply at macports.org
Fri Jan 24 11:53:20 UTC 2025


#71918: Unexpected results with platforms syntax for multiple ranges of OS versions
-------------------------+--------------------
  Reporter:  ryandesign  |      Owner:  (none)
      Type:  defect      |     Status:  new
  Priority:  Normal      |  Milestone:
 Component:  base        |    Version:  2.10.5
Resolution:              |   Keywords:
      Port:              |
-------------------------+--------------------

Comment (by ryandesign):

 That's certainly a way to look at it, and that may constitute working as
 you intended, but it is not intuitive to me that that is how it would
 work.

 [https://guide.macports.org/#reference.keywords As the guide says], and as
 it has always been, `platforms` is:

 > A list of the platforms on which the port is expected to work.

 Therefore I wrote that the port works on darwin versions less than 11 and
 also on darwin 12 and later.

 I suppose the current behavior is explained by the sentence in the guide
 that reads:

 > If any of the comparisons evaluate to false, then the default value of
 `known_fail` is changed to `yes`."

 I admit I had not read this documentation prior to my experiments and
 filing this ticket.

 This appears to go back to the discussion from when this feature was
 implemented in #15712 where it was debated whether we should be specifying
 platforms on which the port does work or those on which it does not work.
 The developer-facing API to this feature purports to offer the former
 whereas the implementation under the hood appears to store this
 information as the latter, with the aforementioned unexpected results.
 When I write `{darwin < 11}` I intend to communicate "this works on Darwin
 less than 11" but it is actually interpreted as "this doesn't work on
 Darwin 11 or later" which was unexpected.

 Given that there appears to be a dedicated syntax (`{darwin != 11.*}`) for
 what I want, maybe the code doesn't need to change, but the documentation
 could be improved.

-- 
Ticket URL: <https://trac.macports.org/ticket/71918#comment:4>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list