[ovs-dev] [PATCH] doc: document feature deprecation and removal process
Thadeu Lima de Souza Cascardo
cascardo at redhat.com
Mon Sep 28 18:37:09 UTC 2015
On Mon, Sep 28, 2015 at 11:17:16AM -0700, Ansis Atteka wrote:
> On Tue, Sep 22, 2015 at 4:21 AM, Thadeu Lima de Souza Cascardo
> <cascardo at redhat.com> wrote:
> > On Sat, Sep 19, 2015 at 01:22:39PM -0700, Ansis Atteka wrote:
> >> It seems that we haven't defined clear process on how features should
> >> be removed from OVS. This patch attempts to document this process.
> >>
> >> Singed-off-by: Ansis Atteka <aatteka at nicira.com>
> >> ---
> >> CONTRIBUTING.md | 31 +++++++++++++++++++++++++++++++
> >> 1 file changed, 31 insertions(+)
> >>
> >> diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
> >> index 12cb7dc..12d2a77 100644
> >> --- a/CONTRIBUTING.md
> >> +++ b/CONTRIBUTING.md
> >> @@ -24,6 +24,8 @@ In particular:
> >>
> >> - A patch that adds or removes user-visible features should
> >> also update the appropriate user documentation or manpages.
> >> + Check "Feature Deprecation Guidelines" section in this document
> >> + if you intend to remove user-visible feature.
> >>
> >> Testing is also important:
> >>
> >> @@ -263,6 +265,35 @@ certifies the following:
> >> maintained indefinitely and may be redistributed consistent with
> >> this project or the open source license(s) involved.
> >>
> >> +Feature Deprecation Guidelines
> >> +------------------------------
> >> +
> >> +Open vSwitch is intended to be user friendly. This means that under
> >> +normal circumstances we don't abruptly remove features from OVS that
> >> +some users might still be using. Otherwise, if we would, then we would
> >> +possibly break our user setup when they upgrade and would receive bug
> >> +reports.
> >> +
> >> +Typical process to deprecate a feature in Open vSwitch is to:
> >> +
> >> + (a) Mention deprecation of a feature in the NEWS file. Also, mention
> >> + expected release or absolute time when this feature would be removed
> >> + from OVS altogether. Don't use relative time (e.g. "in 6 months")
> >> + because that is not clearly interpretable.
> >> +
> >> + (b) If Open vSwitch is configured to use deprecated feature it should print
> >> + a warning message to the log files clearly indicating that feature is
> >> + deprecated and that use of it should be avoided.
> >> +
> >> + (c) If this feature is mentioned in man pages, then add "Deprecated" keyword
> >> + to it.
> >> +
> >> +Also, if there is alternative feature to the one that is about to be marked
> >> +as deprecated, then mention it in (a), (b) and (c) as well.
> >> +
> >> +Remember to followup and acctually remove the feature from OVS codebase
> >> +once deprecation grace period has expired!
> >> +
> >> Comments
> >> --------
> >>
> >> --
> >> 2.1.4
> >
> > Should it make it clear that deprecation before removal should be part of a
> > release? Otherwise, users will not notice the deprecation before the feature is
> > removed.
>
> Sorry for late response, I was off last week. If I understand
> correctly, then you wanted this document to state more clearly that
> "feature deprecation" and "feature removal" must be done in different
> releases. I think wording "release after" should help to comprehend
> that. So how about following wording:
>
> "Remember to followup and actually remove the feature from OVS codebase
> in one of the next releases after deprecation grace period has expired."
Well, that's about the feature removal. I mean the deprecation itself must be
part of a release. For example, the feature should only be removed from 3.1, if
the deprecation warning has been part of 3.0.
Cascardo.
More information about the dev
mailing list