This describes the process by which versions of Pyro are officially released to the public.
Releases are versioned according to the version_prefix
constant in pyro/init.py.
Pyro releases follow semantic versioning with the following caveats:
- Behavior of documented APIs will remain stable across minor releases, except for bug fixes and features marked EXPERIMENTAL or DEPRECATED.
- Serialization formats will remain stable across patch releases, but may change across minor releases (e.g. if you save a model in 1.0.0, it will be safe to load it in 1.0.1, but not in 1.1.0).
- Undocumented APIs, features marked EXPERIMENTAL or DEPRECATED, and anything in
pyro.contrib
may change at any time (though we aim for stability). - All deprecated features throw a
FutureWarning
and specify possible work-arounds. Features marked as deprecated will not be maintained, and are likely to be removed in a future release. - If you want more stability for a particular feature, contribute a unit test.
Pyro is released at irregular cadence, typically about 4 times per year.
Releases are managed by:
Releases and release notes are published to github. Documentation for is published to readthedocs. Release builds are published to pypi.