Add documentation on command deprecation process

Since we haven't removed deprecated commands before, add some
documentation to the devref on the process for this type of change.

Change-Id: Iff6f5df372bec524757b84747c7a95bbf6412c35
This commit is contained in:
Matt Riedemann 2015-05-23 19:22:04 -07:00
parent 23f13437dd
commit 3502c8aee2

View File

@ -48,6 +48,37 @@ See `Consistent Testing Interface`_ for more details.
.. _Consistent Testing Interface: http://git.openstack.org/cgit/openstack/governance/tree/reference/project-testing-interface.rst
Deprecating commands
====================
There are times when commands need to be deprecated due to rename or removal.
The process for command deprecation is:
1. Push up a change for review which deprecates the command(s).
- The change should print a deprecation warning to stderr each time a
deprecated command is used.
- That warning message should include a rough timeline for when the command
will be removed and what should be used instead, if anything.
- The commit message on the change should include a DocImpact tag so it
gets in the release notes.
- The deprecation cycle is typically the first client release *after* the
next *full* Nova server release so that there is at least six months of
deprecation.
2. Once the change is approved, have a member of the `nova-release`_ team
release a new version of python-novaclient.
.. _nova-release: https://review.openstack.org/#/admin/groups/147,members
3. Example: `<https://review.openstack.org/#/c/185141/>`_
This change was made while the Nova 2015.2 Liberty release was in
development. The current version of python-novaclient at the time was
2.25.0. Once the change was merged, python-novaclient 2.26.0 was released.
Since there was less than six months before 2015.2 would be released, the
deprecation cycle ran through the 2016.1 Nova server release.
Indices and tables
==================