+1 on leaving testing of deprecated functionality in place

On Mon, Mar 16, 2020 at 11:50 AM Dan Smith <dsm...@pivotal.io> wrote:

> +1
>
> One point though - we do need to leave some tests that specifically test
> the deprecated method(s), since we still support the deprecated APIs until
> we remove them. Everything else should be converted.
>
> -Dan
>
> On Sun, Mar 15, 2020 at 6:41 PM Jacob Barrett <jbarr...@pivotal.io> wrote:
>
> > Hey Team,
> >
> > When deprecating a symbol, like class or method, please included a
> > reference to the replacement in the java docs. Also please include an
> > example of converting from the old API to the new. I am finding many many
> > places in the source where deprecated code has no hints at all. As many
> of
> > us don’t take the effort to immediately convert old tests over to the new
> > APIs the context is lost when someone finally does get around to it. For
> > public APIs this is extremely important so that users know how to migrate
> > their code with as few roadblocks as possible.
> >
> > Here is an example of something that is much better than most of what I
> am
> > seeing.
> >
> > /**
> >  * @deprecated Replaced with something better and safer.
> >  * Replaced by {@link Bar}.
> >  */
> > @Deprecated
> > class Foo {
> >   /**
> >    * Do something.
> >    *
> >    * @deprecated Replaced with something better.
> >    * Replaced by {@link Bar#doSomethingBetter()}
> >    */
> >   @Deprecated
> >   public void doSomething() {}
> >
> >   /**
> >    * Do something.
> >    *
> >    * @deprecated Implementation is not safe.
> >    * Replaced with {@link Bar#doSomethingBetter()} and {@link
> > Bar#doSomethingElse()}.
> >    * Migration example, replace:
> >    * <pre>{@code
> >    *   Foo foo = new Foo();
> >    *   foo.doSomethingAndSomethingElse();
> >    * }</pre>
> >    * with:
> >    * <pre>{@code
> >    *   Bar bar = Bar();
> >    *   bar.doSomethingBetter();
> >    *   bar.doSomethingElse();
> >    * }</pre>
> >    */
> >   @Deprecated
> >   public void doSomethingAndSomethingElse() {}
> > }
> >
> > class Bar {
> >   public void doSomethingBetter() {}
> >   public void doSomethingElse() {}
> > }
> >
> > -Jake
> >
> >
>


-- 
*Joris Melchior *
CF Engineering
Pivotal Toronto
416 877 5427

“Programs must be written for people to read, and only incidentally for
machines to execute.” – *Hal Abelson*
<https://en.wikipedia.org/wiki/Hal_Abelson>

Reply via email to