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:

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 The package has been stable except for the occasional additions of new constants. Since v3.0, it includes the ability to use sets of constants from previous versions.
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, stable API last several versions. Originally developed as asciitable, and has maintained a stable API. Originally developed as pyfits, and retains an API consistent with the standalone version. The functionality that is currently present is stable, but this sub-package will likely see major additions in future. 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, mostly stable API with backwards compatibility an explicit goal.
astropy.time Incremental improvements since v0.1, API likely to remain stable for the foreseeable future.
astropy.timeseries New in v3.2, in heavy development.
astropy.units Incremental improvements since v0.4. Functionality mature and unlikely to change. Efforts focused on performance and increased interoperability with Numpy functions.
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.uncertainty New in v3.1, in development.
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.