This is an automated email from the ASF dual-hosted git repository.

ctubbsii pushed a commit to branch 2.1
in repository https://gitbox.apache.org/repos/asf/accumulo.git


The following commit(s) were added to refs/heads/2.1 by this push:
     new eec594e3af Fix javadoc since processing (#5841)
eec594e3af is described below

commit eec594e3af4acc71ad7eea9517e6c9e3b771752b
Author: Christopher Tubbs <[email protected]>
AuthorDate: Thu Aug 28 17:43:33 2025 -0400

    Fix javadoc since processing (#5841)
    
    * Fix malformed `@since` tags
    * Backport #5834 to 2.1 branch
    * Add note to post-vote instructions to update javadoc since version
      list for the next branch
    * Change property name so it doesn't look like a maven-javadoc-plugin
      property
    * Add logic to automatically determine the first since version to put in
      the since-label
    * Use the additionalOptions property as an array, to make it easier to
      read the javadoc plugin configuration
---
 .github/ISSUE_TEMPLATE/post_vote_checklist.md         |  2 ++
 .../org/apache/accumulo/core/client/Connector.java    |  2 +-
 .../core/client/admin/CloneConfiguration.java         |  6 ++++--
 .../core/client/admin/ImportConfiguration.java        |  4 ++--
 .../accumulo/core/client/admin/TableOperations.java   |  3 ++-
 .../core/clientImpl/CloneConfigurationImpl.java       |  3 ++-
 .../accumulo/core/crypto/CryptoEnvironmentImpl.java   |  2 +-
 .../main/java/org/apache/accumulo/core/data/Key.java  |  4 ++--
 .../org/apache/accumulo/core/data/KeyBuilder.java     | 14 +++++++-------
 .../accumulo/core/data/constraints/Constraint.java    |  5 ++++-
 .../data/constraints/DefaultKeySizeConstraint.java    |  5 ++++-
 .../core/data/constraints/NoDeleteConstraint.java     |  5 ++++-
 .../core/data/constraints/VisibilityConstraint.java   |  5 ++++-
 .../accumulo/core/file/rfile/bcfile/BCFile.java       |  2 +-
 .../org/apache/accumulo/core/iterators/Combiner.java  |  6 ++++--
 .../apache/accumulo/core/iterators/ServerFilter.java  |  2 +-
 .../core/iterators/ServerSkippingIterator.java        |  2 +-
 .../core/iterators/ServerWrappingIterator.java        |  2 +-
 .../core/iterators/SynchronizedServerFilter.java      |  2 +-
 .../accumulo/core/spi/crypto/CryptoEnvironment.java   |  2 +-
 .../accumulo/core/spi/crypto/CryptoService.java       |  2 +-
 .../core/spi/crypto/CryptoServiceFactory.java         |  2 +-
 .../accumulo/core/spi/crypto/FileDecrypter.java       |  2 +-
 .../accumulo/core/spi/crypto/FileEncrypter.java       |  2 +-
 .../hadoop/mapred/AccumuloFileOutputFormat.java       |  2 +-
 .../accumulo/hadoop/mapred/AccumuloInputFormat.java   |  2 +-
 .../accumulo/hadoop/mapred/AccumuloOutputFormat.java  |  2 +-
 .../hadoop/mapred/AccumuloRowInputFormat.java         |  2 +-
 .../hadoop/mapreduce/AccumuloFileOutputFormat.java    |  2 +-
 .../hadoop/mapreduce/AccumuloInputFormat.java         |  2 +-
 .../hadoop/mapreduce/AccumuloOutputFormat.java        |  2 +-
 .../hadoop/mapreduce/AccumuloRowInputFormat.java      |  2 +-
 .../hadoop/mapreduce/FileOutputFormatBuilder.java     |  6 +++---
 .../accumulo/hadoop/mapreduce/InputFormatBuilder.java |  8 ++++----
 .../hadoop/mapreduce/OutputFormatBuilder.java         |  6 +++---
 .../hadoop/its/mapred/AccumuloRowInputFormatIT.java   |  2 +-
 .../hadoop/its/mapreduce/AccumuloInputFormatIT.java   |  2 +-
 .../its/mapreduce/AccumuloRowInputFormatIT.java       |  2 +-
 .../org/apache/accumulo/cluster/AccumuloCluster.java  |  2 +-
 pom.xml                                               | 19 +++++++++++++++++++
 .../server/rpc/HighlyAvailableServiceWrapper.java     |  2 +-
 .../org/apache/accumulo/tserver/log/DfsLogger.java    |  2 +-
 .../apache/accumulo/test/functional/BulkNewIT.java    |  2 +-
 43 files changed, 97 insertions(+), 58 deletions(-)

diff --git a/.github/ISSUE_TEMPLATE/post_vote_checklist.md 
b/.github/ISSUE_TEMPLATE/post_vote_checklist.md
index 6d2cc92b5b..fa46cdca0e 100644
--- a/.github/ISSUE_TEMPLATE/post_vote_checklist.md
+++ b/.github/ISSUE_TEMPLATE/post_vote_checklist.md
@@ -45,4 +45,6 @@ assignees: ''
   - [ ] Send to [email protected] and [email protected] (use plain 
text mode only; html email will be rejected)
 - GitHub wrap-up
   - [ ] Close this issue
+- Code
+  - [ ] Update the javadoc since versions list in the `pom.xml` file for the 
next development branch
 
diff --git a/core/src/main/java/org/apache/accumulo/core/client/Connector.java 
b/core/src/main/java/org/apache/accumulo/core/client/Connector.java
index 990824daf6..49fdf2590b 100644
--- a/core/src/main/java/org/apache/accumulo/core/client/Connector.java
+++ b/core/src/main/java/org/apache/accumulo/core/client/Connector.java
@@ -252,7 +252,7 @@ public abstract class Connector {
    * AccumuloClient is closed. Also anything derived from the Connector (like 
a Scanner for example)
    * is unlikely to work after the AccumuloClient is closed.
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   public static Connector from(AccumuloClient client)
       throws AccumuloSecurityException, AccumuloException {
diff --git 
a/core/src/main/java/org/apache/accumulo/core/client/admin/CloneConfiguration.java
 
b/core/src/main/java/org/apache/accumulo/core/client/admin/CloneConfiguration.java
index fb50cbbba2..8967c90d42 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/client/admin/CloneConfiguration.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/client/admin/CloneConfiguration.java
@@ -27,7 +27,8 @@ import 
org.apache.accumulo.core.clientImpl.CloneConfigurationImpl;
  * A configuration object that can be used with the table clone command in the
  * {@link TableOperations}.
  *
- * @since 1.10 and 2.1
+ * @since 1.10.0
+ * @since 2.1.0
  */
 public interface CloneConfiguration {
   /**
@@ -63,7 +64,8 @@ public interface CloneConfiguration {
   /**
    * A CloneConfiguration builder
    *
-   * @since 1.10 and 2.1
+   * @since 1.10.0
+   * @since 2.1.0
    */
   interface Builder {
     /**
diff --git 
a/core/src/main/java/org/apache/accumulo/core/client/admin/ImportConfiguration.java
 
b/core/src/main/java/org/apache/accumulo/core/client/admin/ImportConfiguration.java
index 879b6ed1d9..682a0276df 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/client/admin/ImportConfiguration.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/client/admin/ImportConfiguration.java
@@ -26,7 +26,7 @@ import 
org.apache.accumulo.core.clientImpl.ImportConfigurationImpl;
  * A configuration object that can be used with
  * {@link TableOperations#importTable(String, Set, ImportConfiguration)}
  *
- * @since 2.1
+ * @since 2.1.0
  */
 public interface ImportConfiguration {
   ImportConfiguration EMPTY = builder().build();
@@ -47,7 +47,7 @@ public interface ImportConfiguration {
   /**
    * A ImportConfiguration builder
    *
-   * @since 2.1
+   * @since 2.1.0
    */
   interface Builder {
 
diff --git 
a/core/src/main/java/org/apache/accumulo/core/client/admin/TableOperations.java 
b/core/src/main/java/org/apache/accumulo/core/client/admin/TableOperations.java
index 5fc7243a62..c0f85c1e2a 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/client/admin/TableOperations.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/client/admin/TableOperations.java
@@ -448,7 +448,8 @@ public interface TableOperations {
    * @param srcTableName the table to clone
    * @param newTableName the name of the clone
    * @param config the clone command configuration
-   * @since 1.10 and 2.1
+   * @since 1.10.0
+   * @since 2.1.0
    */
   void clone(String srcTableName, String newTableName, CloneConfiguration 
config)
       throws AccumuloException, AccumuloSecurityException, 
TableNotFoundException,
diff --git 
a/core/src/main/java/org/apache/accumulo/core/clientImpl/CloneConfigurationImpl.java
 
b/core/src/main/java/org/apache/accumulo/core/clientImpl/CloneConfigurationImpl.java
index 9549fd6c5d..2639083d9e 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/clientImpl/CloneConfigurationImpl.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/clientImpl/CloneConfigurationImpl.java
@@ -29,7 +29,8 @@ import com.google.common.base.Preconditions;
 /**
  * A {@link CloneConfiguration} implementation which also implements the 
builder thereof
  *
- * @since 1.10 and 2.1
+ * @since 1.10.0
+ * @since 2.1.0
  */
 public class CloneConfigurationImpl implements CloneConfiguration, 
CloneConfiguration.Builder {
 
diff --git 
a/core/src/main/java/org/apache/accumulo/core/crypto/CryptoEnvironmentImpl.java 
b/core/src/main/java/org/apache/accumulo/core/crypto/CryptoEnvironmentImpl.java
index 0ed198a889..9171742153 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/crypto/CryptoEnvironmentImpl.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/crypto/CryptoEnvironmentImpl.java
@@ -27,7 +27,7 @@ import org.apache.accumulo.core.spi.crypto.CryptoEnvironment;
 import edu.umd.cs.findbugs.annotations.Nullable;
 
 /**
- * @since 2.0
+ * @since 2.0.0
  */
 public class CryptoEnvironmentImpl implements CryptoEnvironment {
 
diff --git a/core/src/main/java/org/apache/accumulo/core/data/Key.java 
b/core/src/main/java/org/apache/accumulo/core/data/Key.java
index 7f533157c8..147d412ce8 100644
--- a/core/src/main/java/org/apache/accumulo/core/data/Key.java
+++ b/core/src/main/java/org/apache/accumulo/core/data/Key.java
@@ -54,7 +54,7 @@ public class Key implements WritableComparable<Key>, 
Cloneable {
   /**
    * Create a {@link Key} builder.
    *
-   * @since 2.0
+   * @since 2.0.0
    * @param copyBytes if the bytes of the {@link Key} components should be 
copied
    * @return the builder at the {@link KeyBuilder.RowStep}
    */
@@ -66,7 +66,7 @@ public class Key implements WritableComparable<Key>, 
Cloneable {
    * Create a {@link Key} builder. Using the builder makes it easy to mix 
types, like {@code String}
    * and {@code byte[]}, for different fields. Copy bytes defaults to true.
    *
-   * @since 2.0
+   * @since 2.0.0
    * @return the builder at the {@link KeyBuilder.RowStep}
    * @see #builder(boolean)
    */
diff --git a/core/src/main/java/org/apache/accumulo/core/data/KeyBuilder.java 
b/core/src/main/java/org/apache/accumulo/core/data/KeyBuilder.java
index b9798ab64f..2f4c419077 100644
--- a/core/src/main/java/org/apache/accumulo/core/data/KeyBuilder.java
+++ b/core/src/main/java/org/apache/accumulo/core/data/KeyBuilder.java
@@ -41,7 +41,7 @@ import org.apache.hadoop.io.Text;
  * The builder is mutable and not thread safe.
  *
  * @see org.apache.accumulo.core.data.Key
- * @since 2.0
+ * @since 2.0.0
  */
 public class KeyBuilder {
 
@@ -49,7 +49,7 @@ public class KeyBuilder {
    * Base Builder interface which can be used to set the {@link Key} timestamp 
and delete marker and
    * to build the {@link Key}.
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   public interface Build {
 
@@ -80,7 +80,7 @@ public class KeyBuilder {
   /**
    * Builder step used to set the row part of the {@link Key}.
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   public interface RowStep extends Build {
 
@@ -124,7 +124,7 @@ public class KeyBuilder {
   /**
    * Builder step used to set the columnFamily part of the {@link Key}.
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   public interface ColumnFamilyStep extends ColumnVisibilityStep {
 
@@ -168,7 +168,7 @@ public class KeyBuilder {
   /**
    * Builder step used to set the column qualifier part of the {@link Key}.
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   public interface ColumnQualifierStep extends ColumnVisibilityStep {
 
@@ -213,7 +213,7 @@ public class KeyBuilder {
   /**
    * Builder step used to set the column visibility part of the {@link Key}.
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   public interface ColumnVisibilityStep extends Build {
 
@@ -264,7 +264,7 @@ public class KeyBuilder {
   }
 
   /**
-   * @since 2.0
+   * @since 2.0.0
    */
   static class KeyBuilderImpl
       implements RowStep, ColumnFamilyStep, ColumnQualifierStep, 
ColumnVisibilityStep {
diff --git 
a/core/src/main/java/org/apache/accumulo/core/data/constraints/Constraint.java 
b/core/src/main/java/org/apache/accumulo/core/data/constraints/Constraint.java
index 34e03675cf..9faa4becfb 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/data/constraints/Constraint.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/data/constraints/Constraint.java
@@ -42,7 +42,10 @@ import 
org.apache.accumulo.core.security.AuthorizationContainer;
  * This would not aggregate very well, because the same violation is 
represented with two different
  * strings.
  *
- * @since 2.1.0 Replaces interface in org.apache.accumulo.core.constraints 
package
+ * <p>
+ * This replaces the interface in the org.apache.accumulo.core.constraints 
package since 2.1.0
+ *
+ * @since 2.1.0
  */
 public interface Constraint {
 
diff --git 
a/core/src/main/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraint.java
 
b/core/src/main/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraint.java
index b35ffc3a91..f81ff133b1 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraint.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/data/constraints/DefaultKeySizeConstraint.java
@@ -27,7 +27,10 @@ import org.apache.accumulo.core.data.Mutation;
 /**
  * A constraints that limits the size of keys to 1mb.
  *
- * @since 2.1.0 moved from org.apache.accumulo.core.constraints package
+ * <p>
+ * This was moved from the org.apache.accumulo.core.constraints package since 
2.1.0
+ *
+ * @since 2.1.0
  */
 public class DefaultKeySizeConstraint implements Constraint {
 
diff --git 
a/core/src/main/java/org/apache/accumulo/core/data/constraints/NoDeleteConstraint.java
 
b/core/src/main/java/org/apache/accumulo/core/data/constraints/NoDeleteConstraint.java
index 53b87fd4f2..ed110f468a 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/data/constraints/NoDeleteConstraint.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/data/constraints/NoDeleteConstraint.java
@@ -27,7 +27,10 @@ import org.apache.accumulo.core.data.Mutation;
 /**
  * This constraint ensures mutations do not have deletes.
  *
- * @since 2.1.0 moved from org.apache.accumulo.core.constraints package
+ * <p>
+ * This was moved from the org.apache.accumulo.core.constraints package since 
2.1.0
+ *
+ * @since 2.1.0
  */
 public class NoDeleteConstraint implements Constraint {
 
diff --git 
a/core/src/main/java/org/apache/accumulo/core/data/constraints/VisibilityConstraint.java
 
b/core/src/main/java/org/apache/accumulo/core/data/constraints/VisibilityConstraint.java
index 62531c5fa0..c413600d5b 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/data/constraints/VisibilityConstraint.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/data/constraints/VisibilityConstraint.java
@@ -39,7 +39,10 @@ import org.apache.accumulo.core.util.BadArgumentException;
  * <li>2 = insufficient authorization</li>
  * </ul>
  *
- * @since 2.1.0 moved from org.apache.accumulo.core.constraints package
+ * <p>
+ * This was moved from the org.apache.accumulo.core.constraints package since 
2.1.0
+ *
+ * @since 2.1.0
  */
 public class VisibilityConstraint implements Constraint {
 
diff --git 
a/core/src/main/java/org/apache/accumulo/core/file/rfile/bcfile/BCFile.java 
b/core/src/main/java/org/apache/accumulo/core/file/rfile/bcfile/BCFile.java
index e3e9452766..aca53e495c 100644
--- a/core/src/main/java/org/apache/accumulo/core/file/rfile/bcfile/BCFile.java
+++ b/core/src/main/java/org/apache/accumulo/core/file/rfile/bcfile/BCFile.java
@@ -68,7 +68,7 @@ public final class BCFile {
   /**
    * Simplified encryption interface. Allows more flexible encryption.
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   static final Version API_VERSION_3 = new Version((short) 3, (short) 0);
   /**
diff --git 
a/core/src/main/java/org/apache/accumulo/core/iterators/Combiner.java 
b/core/src/main/java/org/apache/accumulo/core/iterators/Combiner.java
index 965d24a61d..a67bcf0c27 100644
--- a/core/src/main/java/org/apache/accumulo/core/iterators/Combiner.java
+++ b/core/src/main/java/org/apache/accumulo/core/iterators/Combiner.java
@@ -428,11 +428,13 @@ public abstract class Combiner extends WrappingIterator 
implements OptionDescrib
    * logged more than once an hour per Combiner, regardless of how many 
deletes are seen.
    *
    * <p>
-   * This method was added in 1.6.4 and 1.7.1. If you want your code to work 
in earlier versions of
+   * This method was added in 1.6.5 and 1.7.1. If you want your code to work 
in earlier versions of
    * 1.6 and 1.7 then do not call this method. If not set this property 
defaults to false in order
    * to maintain compatibility.
    *
-   * @since 1.6.5 1.7.1 1.8.0
+   * @since 1.6.5
+   * @since 1.7.1
+   * @since 1.8.0
    */
 
   public static void setReduceOnFullCompactionOnly(IteratorSetting is,
diff --git 
a/core/src/main/java/org/apache/accumulo/core/iterators/ServerFilter.java 
b/core/src/main/java/org/apache/accumulo/core/iterators/ServerFilter.java
index d4a56df753..c31396d1f5 100644
--- a/core/src/main/java/org/apache/accumulo/core/iterators/ServerFilter.java
+++ b/core/src/main/java/org/apache/accumulo/core/iterators/ServerFilter.java
@@ -35,7 +35,7 @@ import org.apache.accumulo.core.data.Value;
  * {@link #init(SortedKeyValueIterator, Map, IteratorEnvironment)} method is 
not supported since the
  * source can only be assigned in the constructor.
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public abstract class ServerFilter extends ServerWrappingIterator {
 
diff --git 
a/core/src/main/java/org/apache/accumulo/core/iterators/ServerSkippingIterator.java
 
b/core/src/main/java/org/apache/accumulo/core/iterators/ServerSkippingIterator.java
index 27d6267e7d..e9863c0b8e 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/iterators/ServerSkippingIterator.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/iterators/ServerSkippingIterator.java
@@ -32,7 +32,7 @@ import org.apache.accumulo.core.data.Value;
  * the <code>source</code> iterator is declared final and subclasses directly 
access it, no longer
  * requiring calls to getSource().
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public abstract class ServerSkippingIterator extends ServerWrappingIterator {
 
diff --git 
a/core/src/main/java/org/apache/accumulo/core/iterators/ServerWrappingIterator.java
 
b/core/src/main/java/org/apache/accumulo/core/iterators/ServerWrappingIterator.java
index 55dbc2a12a..fc6f8be498 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/iterators/ServerWrappingIterator.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/iterators/ServerWrappingIterator.java
@@ -36,7 +36,7 @@ import org.apache.accumulo.core.data.Value;
  * source can only be assigned in the constructor. As with the 
WrappingIterator, the
  * {@link #deepCopy(IteratorEnvironment)} method is not supported.
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public abstract class ServerWrappingIterator implements 
SortedKeyValueIterator<Key,Value> {
 
diff --git 
a/core/src/main/java/org/apache/accumulo/core/iterators/SynchronizedServerFilter.java
 
b/core/src/main/java/org/apache/accumulo/core/iterators/SynchronizedServerFilter.java
index 7be9b818e1..0554d332ce 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/iterators/SynchronizedServerFilter.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/iterators/SynchronizedServerFilter.java
@@ -33,7 +33,7 @@ import org.apache.accumulo.core.data.Value;
  * {@link #init(SortedKeyValueIterator, Map, IteratorEnvironment)} method is 
also not supported
  * since the source can only be assigned in the constructor.
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public abstract class SynchronizedServerFilter implements 
SortedKeyValueIterator<Key,Value> {
 
diff --git 
a/core/src/main/java/org/apache/accumulo/core/spi/crypto/CryptoEnvironment.java 
b/core/src/main/java/org/apache/accumulo/core/spi/crypto/CryptoEnvironment.java
index e7f6751616..d449643254 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/spi/crypto/CryptoEnvironment.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/spi/crypto/CryptoEnvironment.java
@@ -25,7 +25,7 @@ import org.apache.accumulo.core.data.TableId;
 /**
  * Useful information provided to the crypto implementation
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public interface CryptoEnvironment {
   /**
diff --git 
a/core/src/main/java/org/apache/accumulo/core/spi/crypto/CryptoService.java 
b/core/src/main/java/org/apache/accumulo/core/spi/crypto/CryptoService.java
index dfdf63013b..bcf8322ae9 100644
--- a/core/src/main/java/org/apache/accumulo/core/spi/crypto/CryptoService.java
+++ b/core/src/main/java/org/apache/accumulo/core/spi/crypto/CryptoService.java
@@ -25,7 +25,7 @@ import java.util.Map;
  * through this interface. Each implementation must implement a {@link 
FileEncrypter} for encryption
  * and a {@link FileDecrypter} for decryption.
  *
- * @since 2.0
+ * @since 2.0.0
  * @see org.apache.accumulo.core.spi
  */
 public interface CryptoService {
diff --git 
a/core/src/main/java/org/apache/accumulo/core/spi/crypto/CryptoServiceFactory.java
 
b/core/src/main/java/org/apache/accumulo/core/spi/crypto/CryptoServiceFactory.java
index d3683326b1..0a94046382 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/spi/crypto/CryptoServiceFactory.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/spi/crypto/CryptoServiceFactory.java
@@ -25,7 +25,7 @@ import org.apache.accumulo.core.classloader.ClassLoaderUtil;
 /**
  * A Factory that returns a CryptoService based on the environment and 
configuration.
  *
- * @since 2.1
+ * @since 2.1.0
  */
 public interface CryptoServiceFactory {
 
diff --git 
a/core/src/main/java/org/apache/accumulo/core/spi/crypto/FileDecrypter.java 
b/core/src/main/java/org/apache/accumulo/core/spi/crypto/FileDecrypter.java
index 50ffe36f28..4883add842 100644
--- a/core/src/main/java/org/apache/accumulo/core/spi/crypto/FileDecrypter.java
+++ b/core/src/main/java/org/apache/accumulo/core/spi/crypto/FileDecrypter.java
@@ -23,7 +23,7 @@ import java.io.InputStream;
 /**
  * Class implementation that will decrypt a file. Make sure implementation is 
thread safe.
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public interface FileDecrypter {
   /**
diff --git 
a/core/src/main/java/org/apache/accumulo/core/spi/crypto/FileEncrypter.java 
b/core/src/main/java/org/apache/accumulo/core/spi/crypto/FileEncrypter.java
index 47e7d8c073..e873531798 100644
--- a/core/src/main/java/org/apache/accumulo/core/spi/crypto/FileEncrypter.java
+++ b/core/src/main/java/org/apache/accumulo/core/spi/crypto/FileEncrypter.java
@@ -23,7 +23,7 @@ import java.io.OutputStream;
 /**
  * Class implementation that will encrypt a file.
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public interface FileEncrypter {
   /**
diff --git 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloFileOutputFormat.java
 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloFileOutputFormat.java
index 77c087df49..3fb622501d 100644
--- 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloFileOutputFormat.java
+++ 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloFileOutputFormat.java
@@ -42,7 +42,7 @@ import org.apache.hadoop.util.Progressable;
 /**
  * @see org.apache.accumulo.hadoop.mapreduce.AccumuloFileOutputFormat
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public class AccumuloFileOutputFormat extends FileOutputFormat<Key,Value> {
   private static final Class<AccumuloFileOutputFormat> CLASS = 
AccumuloFileOutputFormat.class;
diff --git 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloInputFormat.java
 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloInputFormat.java
index c81a5720c6..377363aa95 100644
--- 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloInputFormat.java
+++ 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloInputFormat.java
@@ -38,7 +38,7 @@ import org.slf4j.LoggerFactory;
 /**
  * @see org.apache.accumulo.hadoop.mapreduce.AccumuloInputFormat
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public class AccumuloInputFormat implements InputFormat<Key,Value> {
   private static final Class<AccumuloInputFormat> CLASS = 
AccumuloInputFormat.class;
diff --git 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloOutputFormat.java
 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloOutputFormat.java
index 498a6d1bc1..ea73dcc80d 100644
--- 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloOutputFormat.java
+++ 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloOutputFormat.java
@@ -42,7 +42,7 @@ import org.apache.hadoop.util.Progressable;
 /**
  * @see org.apache.accumulo.hadoop.mapreduce.AccumuloOutputFormat
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public class AccumuloOutputFormat implements OutputFormat<Text,Mutation> {
   private static final Class<AccumuloOutputFormat> CLASS = 
AccumuloOutputFormat.class;
diff --git 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloRowInputFormat.java
 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloRowInputFormat.java
index 20cedf496c..526b75dc10 100644
--- 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloRowInputFormat.java
+++ 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapred/AccumuloRowInputFormat.java
@@ -38,7 +38,7 @@ import org.apache.hadoop.mapred.Reporter;
 /**
  * @see org.apache.accumulo.hadoop.mapreduce.AccumuloRowInputFormat
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public class AccumuloRowInputFormat implements 
InputFormat<Text,PeekingIterator<Entry<Key,Value>>> {
   private static final Class<AccumuloRowInputFormat> CLASS = 
AccumuloRowInputFormat.class;
diff --git 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloFileOutputFormat.java
 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloFileOutputFormat.java
index fe5f4d6b55..bf77b384e6 100644
--- 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloFileOutputFormat.java
+++ 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloFileOutputFormat.java
@@ -55,7 +55,7 @@ import 
org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
  * Hadoop configuration options that affect the behavior of the underlying 
files directly in the
  * Job's configuration may work, but are not directly supported at this time.
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public class AccumuloFileOutputFormat extends FileOutputFormat<Key,Value> {
   private static final Class<AccumuloFileOutputFormat> CLASS = 
AccumuloFileOutputFormat.class;
diff --git 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloInputFormat.java
 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloInputFormat.java
index d97bbb24dc..b03a6cb090 100644
--- 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloInputFormat.java
+++ 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloInputFormat.java
@@ -64,7 +64,7 @@ import org.slf4j.LoggerFactory;
  * For descriptions of all options see
  * {@link 
org.apache.accumulo.hadoop.mapreduce.InputFormatBuilder.InputFormatOptions}
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public class AccumuloInputFormat extends InputFormat<Key,Value> {
   private static final Class<AccumuloInputFormat> CLASS = 
AccumuloInputFormat.class;
diff --git 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloOutputFormat.java
 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloOutputFormat.java
index 7d17454bb0..cf8044898b 100644
--- 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloOutputFormat.java
+++ 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloOutputFormat.java
@@ -53,7 +53,7 @@ import 
org.apache.hadoop.mapreduce.lib.output.NullOutputFormat;
  *     .store(job);
  * </pre>
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public class AccumuloOutputFormat extends OutputFormat<Text,Mutation> {
   private static final Class<AccumuloOutputFormat> CLASS = 
AccumuloOutputFormat.class;
diff --git 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloRowInputFormat.java
 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloRowInputFormat.java
index 651df61acc..b1ba5fd31e 100644
--- 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloRowInputFormat.java
+++ 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/AccumuloRowInputFormat.java
@@ -55,7 +55,7 @@ import org.apache.hadoop.mapreduce.TaskAttemptContext;
  * For descriptions of all options see
  * {@link 
org.apache.accumulo.hadoop.mapreduce.InputFormatBuilder.InputFormatOptions}
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public class AccumuloRowInputFormat extends 
InputFormat<Text,PeekingIterator<Entry<Key,Value>>> {
   private static final Class<AccumuloRowInputFormat> CLASS = 
AccumuloRowInputFormat.class;
diff --git 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/FileOutputFormatBuilder.java
 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/FileOutputFormatBuilder.java
index 72350293e7..973e7c0321 100644
--- 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/FileOutputFormatBuilder.java
+++ 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/FileOutputFormatBuilder.java
@@ -26,13 +26,13 @@ import org.apache.hadoop.fs.Path;
  * Builder for all the information needed for the Map Reduce job. Fluent API 
used by
  * {@link AccumuloFileOutputFormat#configure()}
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public interface FileOutputFormatBuilder {
   /**
    * Required params for builder
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   interface PathParams<T> {
     /**
@@ -44,7 +44,7 @@ public interface FileOutputFormatBuilder {
   /**
    * Options for builder
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   interface OutputOptions<T> {
     /**
diff --git 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/InputFormatBuilder.java
 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/InputFormatBuilder.java
index e00ddd3f22..59768293c3 100644
--- 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/InputFormatBuilder.java
+++ 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/InputFormatBuilder.java
@@ -39,13 +39,13 @@ import org.apache.accumulo.core.security.Authorizations;
  * Builder for all the information needed for the Map Reduce job. Fluent API 
used by
  * {@link AccumuloInputFormat#configure()}
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public interface InputFormatBuilder {
   /**
    * Required params for builder
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   interface ClientParams<T> {
 
@@ -71,7 +71,7 @@ public interface InputFormatBuilder {
   /**
    * Required params for builder
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   interface TableParams<T> {
     /**
@@ -91,7 +91,7 @@ public interface InputFormatBuilder {
   /**
    * Optional values to set using fluent API
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   interface InputFormatOptions<T> extends TableParams<T> {
     /**
diff --git 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/OutputFormatBuilder.java
 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/OutputFormatBuilder.java
index e1d9a2b29b..be604ef33e 100644
--- 
a/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/OutputFormatBuilder.java
+++ 
b/hadoop-mapreduce/src/main/java/org/apache/accumulo/hadoop/mapreduce/OutputFormatBuilder.java
@@ -26,14 +26,14 @@ import org.apache.accumulo.core.client.Accumulo;
  * Builder for all the information needed for the Map Reduce job. Fluent API 
used by
  * {@link AccumuloOutputFormat#configure()}
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public interface OutputFormatBuilder {
 
   /**
    * Required params for client
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   interface ClientParams<T> {
     /**
@@ -58,7 +58,7 @@ public interface OutputFormatBuilder {
   /**
    * Builder options
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   interface OutputOptions<T> {
     /**
diff --git 
a/hadoop-mapreduce/src/test/java/org/apache/accumulo/hadoop/its/mapred/AccumuloRowInputFormatIT.java
 
b/hadoop-mapreduce/src/test/java/org/apache/accumulo/hadoop/its/mapred/AccumuloRowInputFormatIT.java
index 20c7e050d6..13deaf7ff0 100644
--- 
a/hadoop-mapreduce/src/test/java/org/apache/accumulo/hadoop/its/mapred/AccumuloRowInputFormatIT.java
+++ 
b/hadoop-mapreduce/src/test/java/org/apache/accumulo/hadoop/its/mapred/AccumuloRowInputFormatIT.java
@@ -59,7 +59,7 @@ import org.junit.jupiter.api.Test;
 /**
  * Tests the new MR API in the hadoop-mapreduce package.
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public class AccumuloRowInputFormatIT extends AccumuloClusterHarness {
 
diff --git 
a/hadoop-mapreduce/src/test/java/org/apache/accumulo/hadoop/its/mapreduce/AccumuloInputFormatIT.java
 
b/hadoop-mapreduce/src/test/java/org/apache/accumulo/hadoop/its/mapreduce/AccumuloInputFormatIT.java
index b535f12858..689537b1b6 100644
--- 
a/hadoop-mapreduce/src/test/java/org/apache/accumulo/hadoop/its/mapreduce/AccumuloInputFormatIT.java
+++ 
b/hadoop-mapreduce/src/test/java/org/apache/accumulo/hadoop/its/mapreduce/AccumuloInputFormatIT.java
@@ -78,7 +78,7 @@ import com.google.common.collect.Multimap;
 /**
  * Tests the new MR API in the hadoop-mapreduce package.
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public class AccumuloInputFormatIT extends AccumuloClusterHarness {
 
diff --git 
a/hadoop-mapreduce/src/test/java/org/apache/accumulo/hadoop/its/mapreduce/AccumuloRowInputFormatIT.java
 
b/hadoop-mapreduce/src/test/java/org/apache/accumulo/hadoop/its/mapreduce/AccumuloRowInputFormatIT.java
index c1662852ed..6ff047ce9b 100644
--- 
a/hadoop-mapreduce/src/test/java/org/apache/accumulo/hadoop/its/mapreduce/AccumuloRowInputFormatIT.java
+++ 
b/hadoop-mapreduce/src/test/java/org/apache/accumulo/hadoop/its/mapreduce/AccumuloRowInputFormatIT.java
@@ -56,7 +56,7 @@ import org.junit.jupiter.api.Test;
 /**
  * Tests the new MR API in the hadoop-mapreduce package.
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public class AccumuloRowInputFormatIT extends AccumuloClusterHarness {
 
diff --git 
a/minicluster/src/main/java/org/apache/accumulo/cluster/AccumuloCluster.java 
b/minicluster/src/main/java/org/apache/accumulo/cluster/AccumuloCluster.java
index f9f7efbee6..75925235ea 100644
--- a/minicluster/src/main/java/org/apache/accumulo/cluster/AccumuloCluster.java
+++ b/minicluster/src/main/java/org/apache/accumulo/cluster/AccumuloCluster.java
@@ -53,7 +53,7 @@ public interface AccumuloCluster {
 
   /**
    * @return {@link AccumuloClient} that must be closed by user
-   * @since 2.0
+   * @since 2.0.0
    */
   AccumuloClient createAccumuloClient(String user, AuthenticationToken token);
 
diff --git a/pom.xml b/pom.xml
index 37837168a4..083152f6b0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -112,6 +112,7 @@
     <url>https://github.com/apache/accumulo/actions</url>
   </ciManagement>
   <properties>
+    
<accumulo.javadoc.since.versions>2.0.0,2.0.1,2.1.0,2.1.1,2.1.2,2.1.3,2.1.4,2.1.5</accumulo.javadoc.since.versions>
     <!-- used for filtering the java source with the current version -->
     <accumulo.release.version>${project.version}</accumulo.release.version>
     <!-- avoid error shutting down built-in ForkJoinPool.commonPool() during 
exec:java tasks -->
@@ -835,7 +836,12 @@
           <configuration>
             <quiet>true</quiet>
             <additionalJOption>-J-Xmx512m</additionalJOption>
+            <additionalOptions>
+              <additionalOption>--since 
"${accumulo.javadoc.since.versions}"</additionalOption>
+              <additionalOption>--since-label "New API since 
${accumulo.javadoc.since.versions.first}"</additionalOption>
+            </additionalOptions>
             <doclint>all,-missing</doclint>
+            <legacyMode>true</legacyMode>
           </configuration>
         </plugin>
         <plugin>
@@ -1030,6 +1036,19 @@
               <value>org-apache-${project.artifactId}</value>
             </configuration>
           </execution>
+          <execution>
+            <id>find-first-javadoc-since-version</id>
+            <goals>
+              <goal>regex-property</goal>
+            </goals>
+            <configuration>
+              <name>accumulo.javadoc.since.versions.first</name>
+              <regex>,.*</regex>
+              <replacement />
+              <value>${accumulo.javadoc.since.versions}</value>
+              <failIfNoMatch>false</failIfNoMatch>
+            </configuration>
+          </execution>
         </executions>
       </plugin>
       <plugin>
diff --git 
a/server/base/src/main/java/org/apache/accumulo/server/rpc/HighlyAvailableServiceWrapper.java
 
b/server/base/src/main/java/org/apache/accumulo/server/rpc/HighlyAvailableServiceWrapper.java
index e500104478..feec761001 100644
--- 
a/server/base/src/main/java/org/apache/accumulo/server/rpc/HighlyAvailableServiceWrapper.java
+++ 
b/server/base/src/main/java/org/apache/accumulo/server/rpc/HighlyAvailableServiceWrapper.java
@@ -28,7 +28,7 @@ import org.apache.accumulo.server.HighlyAvailableService;
  * when the Accumulo service that this Thrift service is for has not yet 
obtained its ZooKeeper
  * lock.
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public class HighlyAvailableServiceWrapper {
 
diff --git 
a/server/tserver/src/main/java/org/apache/accumulo/tserver/log/DfsLogger.java 
b/server/tserver/src/main/java/org/apache/accumulo/tserver/log/DfsLogger.java
index 7828bda29f..1971535b62 100644
--- 
a/server/tserver/src/main/java/org/apache/accumulo/tserver/log/DfsLogger.java
+++ 
b/server/tserver/src/main/java/org/apache/accumulo/tserver/log/DfsLogger.java
@@ -87,7 +87,7 @@ public class DfsLogger implements Comparable<DfsLogger> {
   /**
    * Simplified encryption technique supported in V4.
    *
-   * @since 2.0
+   * @since 2.0.0
    */
   public static final String LOG_FILE_HEADER_V4 = "--- Log File Header (v4) 
---";
 
diff --git 
a/test/src/main/java/org/apache/accumulo/test/functional/BulkNewIT.java 
b/test/src/main/java/org/apache/accumulo/test/functional/BulkNewIT.java
index 6ae4d025a9..4ce809be4d 100644
--- a/test/src/main/java/org/apache/accumulo/test/functional/BulkNewIT.java
+++ b/test/src/main/java/org/apache/accumulo/test/functional/BulkNewIT.java
@@ -109,7 +109,7 @@ import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
 /**
  * Tests new bulk import technique. For the old technique see {@link BulkOldIT}
  *
- * @since 2.0
+ * @since 2.0.0
  */
 public class BulkNewIT extends SharedMiniClusterBase {
 


Reply via email to