diff options
| author | Eli Schwartz <eschwartz@archlinux.org> | 2023-06-15 16:27:18 -0400 |
|---|---|---|
| committer | Eli Schwartz <eschwartz93@gmail.com> | 2024-08-30 15:44:13 -0400 |
| commit | 29797f92f818744adcdb354ca798036168608ac7 (patch) | |
| tree | 428c94067d840fecbf6bce43a5f54ca673babb90 /docs/markdown | |
| parent | 1794a1e63c8a890aa924b3594946b23fcefcbc9f (diff) | |
| download | meson-29797f92f818744adcdb354ca798036168608ac7.tar.gz | |
Feature checks: fall back to reporting insufficiently portable features
When projects do not specify a minimum meson version, we used to avoid
giving them the benefit of the Feature checks framework. Instead:
- warn for features that were added after the most recent semver bump,
since they aren't portable to the range of versions people might use
these days
- warn for features that were deprecated before the upcoming semver
bump, i.e. all deprecated features, since they aren't portable to
upcoming semver-compatible versions people might be imminently upgrading
to
Diffstat (limited to 'docs/markdown')
| -rw-r--r-- | docs/markdown/snippets/always_report_deprecations.md | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/docs/markdown/snippets/always_report_deprecations.md b/docs/markdown/snippets/always_report_deprecations.md new file mode 100644 index 000000000..fbf4cdf47 --- /dev/null +++ b/docs/markdown/snippets/always_report_deprecations.md @@ -0,0 +1,29 @@ +## Default to printing deprecations when no minimum version is specified. + +For a long time, the [[project]] function has supported specifying the minimum +`meson_version:` needed by a project. When this is used, deprecated features +from before that version produce warnings, as do features which aren't +available in all supported versions. + +When no minimum version was specified, meson didn't warn you even about +deprecated functionality that might go away in an upcoming semver major release +of meson. + +Now, meson will treat an unspecified minimum version following semver: + +- For new features introduced in the current meson semver major cycle + (currently: all features added since 1.0) a warning is printed. Features that + have been available since the initial 1.0 release are assumed to be widely + available. + +- For features that have been deprecated by any version of meson, a warning is + printed. Since no minimum version was specified, it is assumed that the + project wishes to follow the latest and greatest functionality. + +These warnings will overlap for functionality that was both deprecated and +replaced with an alternative in the current release cycle. The combination +means that projects without a minimum version specified are assumed to want +broad compatibility with the current release cycle (1.x). + +Projects that specify a minimum `meson_version:` will continue to only receive +actionable warnings based on their current minimum version. |
