2024-07-13 05:55:17 +00:00
|
|
|
---
|
2024-08-18 14:02:23 +00:00
|
|
|
synopsis: Deprecated language features
|
2024-07-13 05:55:17 +00:00
|
|
|
issues: [fj#437]
|
2024-08-18 14:02:23 +00:00
|
|
|
cls: [1785, 1736, 1735, 1744]
|
2024-07-13 05:55:17 +00:00
|
|
|
category: Breaking Changes
|
|
|
|
credits: [piegames, horrors]
|
|
|
|
---
|
|
|
|
|
2024-08-18 14:02:23 +00:00
|
|
|
A system for deprecation (and then the planned removal) of undesired language features has been put into place.
|
|
|
|
It is controlled via feature flags much like experimental features, except that the deprecations are enabled default,
|
|
|
|
and can be disabled via the flags for backwards compatibility (opt-out with `--extra-deprecated-features` or the Nix configuration file).
|
2024-07-13 05:55:17 +00:00
|
|
|
|
2024-08-18 14:02:23 +00:00
|
|
|
- `url-literals`: **URL literals** have long been obsolete and discouraged of use, and now they are officially deprecated.
|
|
|
|
This means that all URLs must be properly put within quotes like all other strings.
|
|
|
|
- `rec-set-overrides`: **__overrides** is an old arcane syntax which has not been in use for more than a decade.
|
|
|
|
It is soft-deprecated with a warning only, with the plan to turn that into an error in a future release.
|
2024-08-18 15:28:37 +00:00
|
|
|
- `ancient-let`: **The old `let` syntax** (`let { body = …; … }`) is soft-deprecated with a warning as well. Use the regular `let … in` instead.
|