Change the way "provisional" works for Darwin availability. #28105
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Instead of treating it as "not supported" and not generating code at all, generate the code but wrap some of it in MTR_ENABLE_PROVISIONAL and mark the rest with MTR_PROVISIONALLY_AVAILABLE.
The definition of MTR_PROVISIONALLY_AVAILABLE in turn depends on whether MTR_ENABLE_PROVISIONAL is defined. If it's not, those things are marked as NS_UNAVAILABLE and hidden linker visibility, to avoid people depending on them.
This allows compiling the framework with support for the provisional things, while making the default not support them.
darwin-framework-tool is changed to set MTR_ENABLE_PROVISIONAL when YAML tests are enabled, so we can stop excluding tests from there.