Current status of sub-packages

Astropy has benefited from the addition of widely tested legacy code, as well as new development, resulting in variations in stability across sub-packages. This document summarizes the current status of the Astropy sub-packages, so that users understand where they might expect changes in future, and which sub-packages they can safely use for production code.

The classification is as follows:

Planned
Actively developed, be prepared for possible significant changes.
Reasonably stable, any significant changes/additions will generally include backwards-compatiblity.
Mature. Additions/improvements possible, but no major changes planned.
Pending deprecation. Might be deprecated in a future version.
Deprecated. Might be removed in a future version.

The current planned and existing sub-packages are:

Sub-Package   Comments
astropy.config Configuration received major overhaul in v0.4. Since then on, the package has been stable.
astropy.constants Constants were changed to Quantity objects in v0.2. Since then on, the package has been stable, with occasional additions of new constants.
astropy.convolution New top-level package in v0.3 (was previously part of astropy.nddata). A major consistency improvement between fft/non-fft convolution, which is not fully backward-compatible, was added in 2.0.
astropy.coordinates New in v0.2, major changes in v0.4. Subsequent versions should maintain a stable/backwards-compatible API, following the plan of APE 5. Further major additions/enhancements likely, but with basic framework unchanged.
astropy.cosmology Incremental improvements since v0.1, but mostly stable API. Pure functional interface deprecated in v0.4.
astropy.io.ascii Originally developed as asciitable, and has maintained a stable API.
astropy.io.fits Originally developed as pyfits, and retains an API consistent with the standalone version.
astropy.io.misc The functionality that is currently present is stable, but this sub-package will likely see major additions in future.
astropy.io.votable Originally developed as vo.table, and has a stable API.
astropy.modeling New in v0.3. Major changes in v1.0, significant additions planned. Backwards-compatibility likely to be maintained, but not guaranteed.
astropy.nddata Significantly revised in v1.0 to implement APE 7. Major changes in the API are not anticipated, broader use may reveal flaws that require API changes.
astropy.samp Virtual Observatory service access: SAMP. This was renamed from astropy.vo.samp to astropy.samp in 2.0.
astropy.stats Likely to maintain backwards-compatibility, but functionality continually being expanded, so significant additions likely in the future.
astropy.table Incremental improvements since v0.1, but mostly stable API.
astropy.time Incremental improvements since v0.1, API likely to remain stable for the foreseeable future.
astropy.units New in v0.2. Current functionality stable with intent to maintain backwards compatibility. Significant new functionality, in particular to allow dealing with uncertainties, is likely to be added in future versions.
astropy.utils Contains mostly utilities destined for internal use with other parts of Astropy. Existing functionality generally stable, but regular additions and occasional changes.
astropy.visualization New in v1.0, and in development.
astropy.visualization.wcsaxes New in v1.3. Originally developed as wcsaxes and has maintained a stable API.
astropy.wcs Originally developed as pywcs, and has a stable API for now. However, there are plans to generalize the WCS interface to accommodate non-FITS WCS transformations, and this may lead to small changes in the user interface.