Skip to content

Commit 0a05348

Browse files
committed
More reviews
1 parent 5493e31 commit 0a05348

File tree

1 file changed

+2
-7
lines changed

1 file changed

+2
-7
lines changed

web/pandas/pdeps/0017-backwards-compatibility-and-deprecation-policy.md

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,10 @@ A pandas release number is written in the format of ``MAJOR.MINOR.PATCH``.
3030
This policy applies to the [public API][1]. Anything not part of the [public API][1] or is marked as "Experimental" may be changed or removed at anytime.
3131

3232
- Breaking backwards compatibility should benefit more than it harms users.
33-
- Breaking changes should go through a deprecation cycle before being implemented.
33+
- Breaking changes should go through a deprecation cycle before being implemented if possible.
3434
- Breaking changes should only occur in major releases.
3535
- No deprecations should be introduced in patch releases.
36-
- Deprecated functionality should remain unchanged for at least 6 months before being changed or removed.
36+
- Deprecated functionality should remain unchanged in at least 2 minor releases before being changed or removed.
3737

3838
Some bug fixes may require breaking backwards compatibility. In these cases, a deprecation cycle is not necessary. However, bug fixes which have a large impact on users might be treated as a breaking change. Whether or not a change is a bug fix or an API breaking change is a judgement call.
3939

@@ -44,7 +44,6 @@ Deprecation provides a way to warn developers and give them time to adapt their
4444
A deprecation's warning message should:
4545
- Provide information on what is changing.
4646
- Mention how to achieve similar behavior if an alternative is available.
47-
- Include the version in which the deprecation will be enforced.
4847
- For large-scale deprecations, it is recommended to include a reason for the deprecation, alongside a discussion link to get user feedback.
4948

5049
Additionally, when one introduces a deprecation, they should:
@@ -58,10 +57,6 @@ Additionally, when one introduces a deprecation, they should:
5857
Deprecations should initially use ``DeprecationWarning``, and then be switched to ``FutureWarning`` for broader visibility in the last minor release before the major release they are planned to be removed in.
5958
This implementation detail can be ignored by using the appropriate ``PandasDeprecationWarning`` variable, which will be aliased to the proper warning class based on the pandas version.
6059

61-
Not all deprecations have to use ``DeprecationWarning`` but all deprecations should eventually transition to ``FutureWarning``, i.e. deprecations in the last minor release which are planned to be removed in the major release after will immediately use ``FutureWarning``.
62-
63-
It is recommended to not introduce large-scale deprecations in the last minor release which are planned to be removed in the major release after, since that will immediately be using a loud ``FutureWarning`` with not much time between deprecation and removal. Instead, a ``DeprecationWarning`` should be used, and the removal should be scheduled for a later major release.
64-
6560
### Enforcement of deprecations
6661

6762
When one enforces a deprecation, they should:

0 commit comments

Comments
 (0)