RFR: 8145461 changes to @Deprecated annotation

Stuart Marks stuart.marks at oracle.com
Fri Apr 1 05:56:39 UTC 2016

On 3/30/16 6:03 AM, David M. Lloyd wrote:
> As I said in another forum, I think "condemned" is a bit too obtuse to read,
> linguistically (not to mention humorously ambiguous, as you yourself pointed
> out).  I prefer "plain langauge"; something more like "forRemoval" would be
> better IMO.  Also I agree with Stephen about the usefulness of specifying an
> "until" version, but I understand the counterpoints and this could also just as
> easily be done by a third-party library, especially now that JavaDoc is
> presumably going to be much nicer (and thus hopefully more pluggable).

Yes, we've had our bit of fun with "condemned." I've gotten a fair amount of 
in-person feedback that has been in the form of wrinkled noses and knitted 
eyebrows and comments like "isn't there a better word?" I admit that was my 
first impression as well, but I've gotten used to it. Nonetheless, it's time to 
change it.

There doesn't seem to single word that expresses "we have decided to remove this 
in the future" unambiguously and without excess baggage.

So, a compound word seems necessary. After kicking around "toBeRemoved" or 
"subjectToRemoval" I've come back around to David's suggestion here of 
"forRemoval". It seems a bit odd when considered by itself, but in actual usage 
it reads pretty well:

     @Deprecated(since="9", forRemoval=true)
     public void foo() { ... }

For example, one say "The foo() method has been deprecated for removal."

Here's an updated webrev with the rename, as well as other edits in response to 



More information about the jdk9-dev mailing list