[
https://issues.apache.org/jira/browse/CASSANDRA-18912?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17781696#comment-17781696
]
Michael Semb Wever edited comment on CASSANDRA-18912 at 11/1/23 11:09 AM:
--------------------------------------------------------------------------
This isn't personal, e.g. `s/I/this ticket/`
Fair enough, with the addition of the storage_compatibility_mode option we
should have re-evaluated these deprecated annotations (this ticket was
committed after that option was introduced).
But it might also be valid (and more correct) to consider using format
versions, I think this is my preference as we just have no way to know how
future versions will related to formats , e.g.
{code}
/**
* @deprecated it is replaced by {@link #hasImprovedMinMax()} since 'nc'
and to be completetly removed since 'oa'
*/
/** @deprecated See CASSANDRA-18134 */
@Deprecated(since = "nc")
public abstract boolean hasAccurateMinMax();
{code}
was (Author: michaelsembwever):
This isn't personal, e.g. `s/I/this ticket/`
Fair enough, with the addition of the storage_compatibility_mode option we
should have re-evaluated these deprecated annotations (this ticket was
committed after that option was introduced).
But it might also be valid (and more correct) to consider using format
versions, I think this is my preference, e.g.
{code}
/**
* @deprecated it is replaced by {@link #hasImprovedMinMax()} since 'nc'
and to be completetly removed since 'oa'
*/
/** @deprecated See CASSANDRA-18134 */
@Deprecated(since = "nc")
public abstract boolean hasAccurateMinMax();
{code}
> Specify "since" in all Deprecated annotations
> ---------------------------------------------
>
> Key: CASSANDRA-18912
> URL: https://issues.apache.org/jira/browse/CASSANDRA-18912
> Project: Cassandra
> Issue Type: Improvement
> Components: Legacy/Core
> Reporter: Stefan Miklosovic
> Assignee: Maxim Muzafarov
> Priority: Normal
> Labels: pull-request-available
> Fix For: 5.0-alpha2, 5.0, 5.1
>
> Attachments: signature.asc, signature.asc
>
> Time Spent: 0.5h
> Remaining Estimate: 0h
>
> It would be great if we introduced in 5.0 a change in Deprecated annotations
> like this:
> {code}
> @Deprecated(since = "4.0")
> {code}
> or
> {code}
> @Deprecated(since = "3.11")
> {code}
> The reasoning behind this is that as of now, it is pretty cumbersome to
> figure out what can be removed on the next major version. It has to be,
> basically, done manually every time.
> There is also this parameter available:
> {code}
> @Deprecated(forRemoval = true / false)
> {code}
> which indicates whether the annotated element is subject to removal in a
> future version so we do not need to think about this every time if it is
> eligible for deletion in a next major or not.
> We could then have a check which would ensure that we are not releasing a
> next major with some deprecations introduced two majors before.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]