Skip to content

Commit

Permalink
Add FAQ answer about API stability & backwards compatibility (#9855)
Browse files Browse the repository at this point in the history
* new blank whatsnew

* FAQ answer on API stability

* link from API docs page

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* whatsnew

* Update doc/getting-started-guide/faq.rst

Co-authored-by: Maximilian Roos <5635139+max-sixty@users.noreply.github.com>

* use hyphen in target names

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Maximilian Roos <5635139+max-sixty@users.noreply.github.com>
Co-authored-by: Kai Mühlbauer <kai.muehlbauer@uni-bonn.de>
  • Loading branch information
4 people authored Jan 30, 2025
1 parent 5b3f127 commit 326dbe7
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 2 deletions.
2 changes: 1 addition & 1 deletion doc/api.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ This page provides an auto-generated summary of xarray's API. For more details
and examples, refer to the relevant chapters in the main part of the
documentation.

See also: :ref:`public api`
See also: :ref:`public-api` and :ref:`api-stability`.

Top-level functions
===================
Expand Down
14 changes: 13 additions & 1 deletion doc/getting-started-guide/faq.rst
Original file line number Diff line number Diff line change
Expand Up @@ -416,7 +416,19 @@ would certainly appreciate it. We recommend two citations.
url = {https://doi.org/10.5281/zenodo.59499}
}

.. _public api:
.. _api-stability:

How stable is Xarray's API?
---------------------------

Xarray tries very hard to maintain backwards compatibility in our :ref:`api` between released versions.
Whilst we do occasionally make breaking changes in order to improve the library,
we `signpost changes <https://docs.xarray.dev/en/stable/contributing.html#backwards-compatibility>`_ with ``DeprecationWarnings`` for many releases in advance.
(An exception is bugs - whose behaviour we try to fix as soon as we notice them.)
Our `test-driven development practices <https://docs.xarray.dev/en/stable/contributing.html#test-driven-development-code-writing>`_ helps to ensure any accidental regressions are caught.
This philosophy applies to everything in the `public API <https://docs.xarray.dev/en/stable/getting-started-guide/faq.html#what-parts-of-xarray-are-considered-public-api>`_.

.. _public-api:

What parts of xarray are considered public API?
-----------------------------------------------
Expand Down
2 changes: 2 additions & 0 deletions doc/whats-new.rst
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,8 @@ Documentation
~~~~~~~~~~~~~
- A chapter on :ref:`internals.timecoding` is added to the internal section (:pull:`9618`).
By `Kai Mühlbauer <https://github.com/kmuehlbauer>`_.
- Clarified xarray's policy on API stability in the FAQ. (:issue:`9854`, :pull:`9855`)
By `Tom Nicholas <https://github.com/TomNicholas>`_.

Internal Changes
~~~~~~~~~~~~~~~~
Expand Down

0 comments on commit 326dbe7

Please sign in to comment.