Please consider my update of PEP 387 Backwards Compatibility Policy: Add Soft Deprecation.
https://peps.python.org/pep-0387/
=> please review PR: python/peps#3182
The rationale to add soft deprecations:
- Prevent core developers to eaggerly remove soft deprecated code: soft deprecated APIs are not planned for removal
- No warnings, whereas regular "hard" deprecations usually emit DeprecationWarning: soft deprecation is only in the documentation
- We can more freely mark old APIs as soft deprecated to help users to choose between variants of similar APIs (which one is "the good one"?).
At the beginning, I proposed to issue a SoftDeprecationWarning warning at runtime. But warnings are calling for action, whereas a soft deprecation does not call for action: it's perfectly fine to continue using it. I updated my PR to no longer issue warnings.
Note: It was proposed to export the list of deprecated APIs as a JSON file, or a new stdlib_deprecations module: but that's not directly related to PEP 387 change. It will be discussed separately.
Please consider my update of PEP 387 Backwards Compatibility Policy: Add Soft Deprecation.
https://peps.python.org/pep-0387/
=> please review PR: python/peps#3182
Post-HistoryheaderPost-History)The rationale to add soft deprecations:
At the beginning, I proposed to issue a
SoftDeprecationWarningwarning at runtime. But warnings are calling for action, whereas a soft deprecation does not call for action: it's perfectly fine to continue using it. I updated my PR to no longer issue warnings.Note: It was proposed to export the list of deprecated APIs as a JSON file, or a new stdlib_deprecations module: but that's not directly related to PEP 387 change. It will be discussed separately.