Thanks for the update @FFY00!
I went through and checked all my previous comments - most are indeed addressed, a couple weren’t yet. For the schema, here is what I noticed:
- There are several items that were removed from the spec for
implementationbut are still present in the example:hexversion,cache_tag,_multiarch. - For the version info:
implementation.version.releaselevel: it doesn’t include adev/develoption, please consider adding that.implementation.version.serial: unclear to me what that means, since it’s not a normal part of the version number. If it needs to be kept, please expand the description.
abi.flags: consider describing what the tags mean (d: debug, t: free-threading), or otherwise linking to the canonical place for it.abi.stable_abi_suffix: please specify that if the stable ABI is supported by the Python install, this field must be present.- This comment applies more broadly. Optional fields are hard to rely on, so for the fields that are optional please turn around the rationale and say that they must be present unless (reason). And limit it to what actually does have a reason to be missing - for example, I don’t see a reason for
suffixesto go missing. And forlibpythonthe description can be turned around (“must be present unlesslibpythonisn’t provided”).
- This comment applies more broadly. Optional fields are hard to rely on, so for the fields that are optional please turn around the rationale and say that they must be present unless (reason). And limit it to what actually does have a reason to be missing - for example, I don’t see a reason for
This wasn’t addressed yet.