Open benjyw opened 11 months ago
There's at least one more place that is semi-equivalent to platforms
: the FaaS target's runtime
value will be converted to a platforms
argument if there's no matching built-in complete_platforms
.
complete_platforms
: https://github.com/pantsbuild/pants/blob/2e5c50511f809aa3c007bb54924277c3b0348f64/build-support/bin/generate_faas_complete_platforms.py#L19-L22(https://github.com/pantsbuild/pants/issues/20515 is potentially related, although not yet confirmed.)
The
platforms
field is a legacy hack: it specifies abbreviated platform strings that elide the full marker environment and compatibility tag information, causing spurious resolve errors. This leads to neverending user issues and support requests.To remedy this we should:
complete_platforms
, and remove handwritten documentation ofplatforms
. (Done in #20008)platforms
and require use ofcomplete_platforms
.--python-shebang
constrains to just one of them.We probably also want to tackle #15234 to remove one unnecessary hoop to specifying complete_platforms, but it's not a blocker.