Agreed. When we deprecate an operator, we should add in the log message
something like "This operator X is deprecate and will be removed in the
next release. Please use operator Y instead."

Lin

On Wed, Feb 27, 2019 at 10:23 PM Junru Shao <junrushao1...@gmail.com> wrote:

> Hi Lin,
>
> I would love to share some immature ideas about deprecating operators. Not
> only adopting semantic versioning, but also should we provide enough
> informative error message for customers to understand how to replace
> deprecated operators with new ones.
>
> Thanks,
> Junru
>
> On Wed, Feb 27, 2019 at 9:30 PM Lin Yuan <apefor...@gmail.com> wrote:
>
> > Sheng,
> >
> > Thanks for your quick response.
> > If that's the case, we will wait till 2.0 release to remove the
> deprecated
> > operators from code.
> >
> > Best,
> > Lin
> >
> > On Wed, Feb 27, 2019 at 9:06 PM Sheng Zha <zhash...@apache.org> wrote:
> >
> > > MXNet follows semantic versioning so we will be able to delete them in
> > the
> > > next major release.
> > >
> > > -sz
> > >
> > > On Wed, Feb 27, 2019 at 8:53 PM Lin Yuan <apefor...@gmail.com> wrote:
> > >
> > > > Dear Community,
> > > >
> > > > In MXNet there are many legacy operators such as this
> > > > <
> > > >
> > >
> >
> http://mxnet.incubator.apache.org/versions/master/api/python/symbol/symbol.html?highlight=convolution_v1#mxnet.symbol.Convolution_v1
> > > > >
> > > > that has been marked DEPRECATE for several releases. However, these
> > > > operators still exist in our code. This caused a few problems:
> > > >
> > > > 1) Make the codebase bloated and reduce readability
> > > > 2) Increase unnecessary maintanence effort
> > > > 3) Bug prone as some people will look up these legacy code as example
> > > > 4) Cause confusion to end users and make documentation page lengthy
> > > >
> > > > I would like to propose the following process (if there is no
> existing
> > > one)
> > > > to remove deprecate operators from our code base.
> > > >
> > > > 1. Documnent the deprecate operators/environment variables in the
> > release
> > > > note as well as man pages.
> > > > 2. Limit the life cycle of deprecate operators/argument to two minor
> > > > release. For example, if one operator is marked deprecate in 1.4
> > release,
> > > > it will be removed in 1.6 release.
> > > > 3. If there is some concern raised from customers during 1.4 and 1.5
> > > > release, we can convert the deprecated operator back to current and
> it
> > > will
> > > > be treated as new operator.
> > > > 4. PRs that remove deprecate operators should contain [Cleanup] in
> > title.
> > > >
> > > > Any comment is appreciated.
> > > >
> > > > Lin
> > > >
> > >
> >
>

Reply via email to