Skip to content

Commit 92ee55d

Browse files
author
sveneschlbeck
committed
Added the definition of Deprecation and made Deprecation Process clearer
1 parent 4e36ebd commit 92ee55d

File tree

1 file changed

+29
-18
lines changed

1 file changed

+29
-18
lines changed

doc/devel/contributing.rst

Lines changed: 29 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -288,26 +288,37 @@ API changes
288288
Changes to the public API must follow a standard deprecation procedure to
289289
prevent unexpected breaking of code that uses Matplotlib.
290290

291-
- Deprecations must be announced via a new file in
292-
a new file in :file:`doc/api/next_api_changes/deprecations/` with
293-
naming convention ``99999-ABC.rst`` where ``99999`` is the pull request
294-
number and ``ABC`` are the contributor's initials.
295-
- Deprecations are targeted at the next point-release (i.e. 3.x.0).
296-
- The deprecated API should, to the maximum extent possible, remain fully
297-
functional during the deprecation period. In cases where this is not
298-
possible, the deprecation must never make a given piece of code do something
299-
different than it was before; at least an exception should be raised.
300-
- If possible, usage of an deprecated API should emit a
301-
`.MatplotlibDeprecationWarning`. There are a number of helper tools for this:
302-
303-
- Use ``_api.warn_deprecated()`` for general deprecation warnings.
304-
- Use the decorator ``@_api.deprecated`` to deprecate classes, functions,
291+
- Definition of Deprecation
292+
- Deprecations are Announcements of future changes, stating that the status
293+
quo will be outdated in the future and replaced by a new standard
294+
- Users are advised to change their code in order to guarantee compatibility
295+
with future Matplotlib releases.
296+
- The Deprecation date is marked by the ``since`` argument, specifying from
297+
which release forward the argument is or was deprecated. The Deprecation
298+
date is not to be confused with the ``removal`` argument, specifying from
299+
which release forward the argument will be removed.
300+
301+
- Deprecation Process
302+
- Deprecations must be announced via a new file in a new file in
303+
:file:`doc/api/next_api_changes/deprecations/` with naming convention
304+
``99999-ABC.rst`` where ``99999`` is the pull request number and ``ABC``
305+
are the contributor's initials.
306+
- Deprecations are targeted at the next point-release (i.e. 3.x.0).
307+
- The deprecated API should, to the maximum extent possible, remain fully
308+
functional during the deprecation period. In cases where this is not
309+
possible, the deprecation must never make a given piece of code do something
310+
different than it was before; at least an exception should be raised.
311+
- If possible, usage of a deprecated API should emit a
312+
`.MatplotlibDeprecationWarning`. There are a number of helper tools for this:
313+
314+
- Use ``_api.warn_deprecated()`` for general deprecation warnings.
315+
- Use the decorator ``@_api.deprecated`` to deprecate classes, functions,
305316
methods, or properties.
306-
- To warn on changes of the function signature, use the decorators
307-
``@_api.delete_parameter``, ``@_api.rename_parameter``, and
308-
``@_api.make_keyword_only``.
317+
- To warn on changes of the function signature, use the decorators
318+
``@_api.delete_parameter``, ``@_api.rename_parameter``, and
319+
``@_api.make_keyword_only``.
309320

310-
- Deprecated API may be removed two point-releases after they were deprecated.
321+
- Deprecated API may be removed two point-releases after they were deprecated.
311322

312323

313324
Adding new API

0 commit comments

Comments
 (0)