diff --git a/android/guava-testlib/src/com/google/common/testing/GcFinalization.java b/android/guava-testlib/src/com/google/common/testing/GcFinalization.java index 92394f17670a..015afea54809 100644 --- a/android/guava-testlib/src/com/google/common/testing/GcFinalization.java +++ b/android/guava-testlib/src/com/google/common/testing/GcFinalization.java @@ -20,6 +20,7 @@ import com.google.common.annotations.Beta; import com.google.common.annotations.GwtIncompatible; +import com.google.errorprone.annotations.DoNotMock; import com.google.j2objc.annotations.J2ObjCIncompatible; import java.lang.ref.WeakReference; import java.util.Locale; @@ -241,6 +242,7 @@ protected void finalize() { *
  • enqueuing weak references to unreachable referents in their reference queue * */ + @DoNotMock("Implement with a lambda") public interface FinalizationPredicate { boolean isDone(); } diff --git a/android/guava-testlib/src/com/google/common/testing/TearDownAccepter.java b/android/guava-testlib/src/com/google/common/testing/TearDownAccepter.java index a1d1f00be938..bad1f1997867 100644 --- a/android/guava-testlib/src/com/google/common/testing/TearDownAccepter.java +++ b/android/guava-testlib/src/com/google/common/testing/TearDownAccepter.java @@ -17,6 +17,7 @@ package com.google.common.testing; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; import com.google.common.annotations.GwtCompatible; /** @@ -26,6 +27,7 @@ * @since 10.0 */ @Beta +@DoNotMock("Implement with a lambda") @GwtCompatible public interface TearDownAccepter { /** diff --git a/android/guava/src/com/google/common/base/FinalizableReference.java b/android/guava/src/com/google/common/base/FinalizableReference.java index f7e5cf885115..848e7ee586d2 100644 --- a/android/guava/src/com/google/common/base/FinalizableReference.java +++ b/android/guava/src/com/google/common/base/FinalizableReference.java @@ -15,6 +15,7 @@ package com.google.common.base; import com.google.common.annotations.GwtIncompatible; +import com.google.errorprone.annotations.DoNotMock; /** * Implemented by references that have code to run after garbage collection of their referents. @@ -23,6 +24,7 @@ * @author Bob Lee * @since 2.0 */ +@DoNotMock("Use an instance of one of the Finalizable*Reference classes") @GwtIncompatible public interface FinalizableReference { /** diff --git a/android/guava/src/com/google/common/base/Optional.java b/android/guava/src/com/google/common/base/Optional.java index 32f2656adbc1..611ba54942b0 100644 --- a/android/guava/src/com/google/common/base/Optional.java +++ b/android/guava/src/com/google/common/base/Optional.java @@ -18,6 +18,7 @@ import com.google.common.annotations.Beta; import com.google.common.annotations.GwtCompatible; +import com.google.errorprone.annotations.DoNotMock; import java.io.Serializable; import java.util.Iterator; import java.util.Set; @@ -79,6 +80,7 @@ * @author Kevin Bourrillion * @since 10.0 */ +@DoNotMock("Use Optional.of(value) or Optional.absent()") @GwtCompatible(serializable = true) public abstract class Optional implements Serializable { /** diff --git a/android/guava/src/com/google/common/cache/Cache.java b/android/guava/src/com/google/common/cache/Cache.java index 02922f15437d..69bd752e6f6d 100644 --- a/android/guava/src/com/google/common/cache/Cache.java +++ b/android/guava/src/com/google/common/cache/Cache.java @@ -19,6 +19,7 @@ import com.google.common.util.concurrent.ExecutionError; import com.google.common.util.concurrent.UncheckedExecutionException; import com.google.errorprone.annotations.CompatibleWith; +import com.google.errorprone.annotations.DoNotMock; import java.util.Map; import java.util.concurrent.Callable; import java.util.concurrent.ConcurrentMap; @@ -36,6 +37,7 @@ * @author Charles Fry * @since 10.0 */ +@DoNotMock("Use CacheBuilder.newBuilder().build()") @GwtCompatible public interface Cache { diff --git a/android/guava/src/com/google/common/collect/ClassToInstanceMap.java b/android/guava/src/com/google/common/collect/ClassToInstanceMap.java index 4c26253d86de..8d454c0c6869 100644 --- a/android/guava/src/com/google/common/collect/ClassToInstanceMap.java +++ b/android/guava/src/com/google/common/collect/ClassToInstanceMap.java @@ -18,6 +18,7 @@ import com.google.common.annotations.GwtCompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.util.Map; import org.checkerframework.checker.nullness.compatqual.NullableDecl; @@ -40,6 +41,7 @@ * @author Kevin Bourrillion * @since 2.0 */ +@DoNotMock("Use ImmutableClassToInstanceMap or MutableClassToInstanceMap") @GwtCompatible public interface ClassToInstanceMap extends Map, B> { /** diff --git a/android/guava/src/com/google/common/collect/ImmutableCollection.java b/android/guava/src/com/google/common/collect/ImmutableCollection.java index dfce111eb910..62701677af15 100644 --- a/android/guava/src/com/google/common/collect/ImmutableCollection.java +++ b/android/guava/src/com/google/common/collect/ImmutableCollection.java @@ -22,6 +22,7 @@ import com.google.common.annotations.GwtCompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.io.Serializable; import java.util.AbstractCollection; import java.util.Arrays; @@ -157,6 +158,7 @@ * * @since 2.0 */ +@DoNotMock("Use ImmutableList.of or another implementation") @GwtCompatible(emulated = true) @SuppressWarnings("serial") // we're overriding default serialization // TODO(kevinb): I think we should push everything down to "BaseImmutableCollection" or something, @@ -340,6 +342,7 @@ Object writeReplace() { * * @since 10.0 */ + @DoNotMock public abstract static class Builder { static final int DEFAULT_INITIAL_CAPACITY = 4; diff --git a/android/guava/src/com/google/common/collect/ImmutableMap.java b/android/guava/src/com/google/common/collect/ImmutableMap.java index 1534b270aba7..cb944f28151f 100644 --- a/android/guava/src/com/google/common/collect/ImmutableMap.java +++ b/android/guava/src/com/google/common/collect/ImmutableMap.java @@ -24,6 +24,7 @@ import com.google.common.annotations.Beta; import com.google.common.annotations.GwtCompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import com.google.errorprone.annotations.concurrent.LazyInit; import com.google.j2objc.annotations.RetainedWith; import com.google.j2objc.annotations.WeakOuter; @@ -51,6 +52,7 @@ * @author Kevin Bourrillion * @since 2.0 */ +@DoNotMock("Use ImmutableMap.of or another implementation") @GwtCompatible(serializable = true, emulated = true) @SuppressWarnings("serial") // we're overriding default serialization public abstract class ImmutableMap implements Map, Serializable { @@ -208,6 +210,7 @@ static IllegalArgumentException conflictException( * * @since 2.0 */ + @DoNotMock public static class Builder { @MonotonicNonNullDecl Comparator valueComparator; Object[] alternatingKeysAndValues; diff --git a/android/guava/src/com/google/common/collect/ImmutableMultimap.java b/android/guava/src/com/google/common/collect/ImmutableMultimap.java index 138cb4b788c9..077dfb97c7b1 100644 --- a/android/guava/src/com/google/common/collect/ImmutableMultimap.java +++ b/android/guava/src/com/google/common/collect/ImmutableMultimap.java @@ -23,6 +23,7 @@ import com.google.common.annotations.GwtCompatible; import com.google.common.annotations.GwtIncompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import com.google.j2objc.annotations.Weak; import com.google.j2objc.annotations.WeakOuter; import java.io.Serializable; @@ -136,6 +137,7 @@ public static Builder builder() { * * @since 2.0 */ + @DoNotMock public static class Builder { Map> builderMap; @MonotonicNonNullDecl Comparator keyComparator; diff --git a/android/guava/src/com/google/common/collect/ImmutableRangeMap.java b/android/guava/src/com/google/common/collect/ImmutableRangeMap.java index b6fb87598660..aa0495c6df2b 100644 --- a/android/guava/src/com/google/common/collect/ImmutableRangeMap.java +++ b/android/guava/src/com/google/common/collect/ImmutableRangeMap.java @@ -23,6 +23,7 @@ import com.google.common.collect.SortedLists.KeyAbsentBehavior; import com.google.common.collect.SortedLists.KeyPresentBehavior; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.io.Serializable; import java.util.Collections; import java.util.List; @@ -82,6 +83,7 @@ public static , V> Builder builder() { * * @since 14.0 */ + @DoNotMock public static final class Builder, V> { private final List, V>> entries; diff --git a/android/guava/src/com/google/common/collect/ImmutableTable.java b/android/guava/src/com/google/common/collect/ImmutableTable.java index 0e32ad8e2a07..7b7daab1a33a 100644 --- a/android/guava/src/com/google/common/collect/ImmutableTable.java +++ b/android/guava/src/com/google/common/collect/ImmutableTable.java @@ -21,6 +21,7 @@ import com.google.common.annotations.GwtCompatible; import com.google.common.base.MoreObjects; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.io.Serializable; import java.util.Comparator; import java.util.Iterator; @@ -131,6 +132,7 @@ static Cell cellOf(R rowKey, C columnKey, V value) { * * @since 11.0 */ + @DoNotMock public static final class Builder { private final List> cells = Lists.newArrayList(); @MonotonicNonNullDecl private Comparator rowComparator; diff --git a/android/guava/src/com/google/common/collect/Interner.java b/android/guava/src/com/google/common/collect/Interner.java index 0a06bfc1c37f..10d395d5024b 100644 --- a/android/guava/src/com/google/common/collect/Interner.java +++ b/android/guava/src/com/google/common/collect/Interner.java @@ -19,6 +19,7 @@ import com.google.common.annotations.Beta; import com.google.common.annotations.GwtIncompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; /** * Provides equivalent behavior to {@link String#intern} for other immutable types. Common @@ -28,6 +29,7 @@ * @since 3.0 */ @Beta +@DoNotMock("Use Interners.new*Interner") @GwtIncompatible public interface Interner { /** diff --git a/android/guava/src/com/google/common/collect/MapDifference.java b/android/guava/src/com/google/common/collect/MapDifference.java index eda9cc9a7dc8..9933770cb4e4 100644 --- a/android/guava/src/com/google/common/collect/MapDifference.java +++ b/android/guava/src/com/google/common/collect/MapDifference.java @@ -17,6 +17,7 @@ package com.google.common.collect; import com.google.common.annotations.GwtCompatible; +import com.google.errorprone.annotations.DoNotMock; import java.util.Map; import org.checkerframework.checker.nullness.compatqual.NullableDecl; @@ -26,6 +27,7 @@ * @author Kevin Bourrillion * @since 2.0 */ +@DoNotMock("Use Maps.difference") @GwtCompatible public interface MapDifference { /** @@ -84,6 +86,7 @@ public interface MapDifference { * * @since 2.0 */ + @DoNotMock("Use Maps.difference") interface ValueDifference { /** Returns the value from the left map (possibly null). */ V leftValue(); diff --git a/android/guava/src/com/google/common/collect/Multimap.java b/android/guava/src/com/google/common/collect/Multimap.java index c91922abdd15..cdfa0f6906dd 100644 --- a/android/guava/src/com/google/common/collect/Multimap.java +++ b/android/guava/src/com/google/common/collect/Multimap.java @@ -19,6 +19,7 @@ import com.google.common.annotations.GwtCompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; import com.google.errorprone.annotations.CompatibleWith; +import com.google.errorprone.annotations.DoNotMock; import java.util.Collection; import java.util.List; import java.util.Map; @@ -155,6 +156,7 @@ * @author Jared Levy * @since 2.0 */ +@DoNotMock("Use ImmutableMultimap, HashMultimap, or another implementation") @GwtCompatible public interface Multimap { // Query Operations diff --git a/android/guava/src/com/google/common/collect/PeekingIterator.java b/android/guava/src/com/google/common/collect/PeekingIterator.java index bcb84a054c7e..5a6c60b2bec4 100644 --- a/android/guava/src/com/google/common/collect/PeekingIterator.java +++ b/android/guava/src/com/google/common/collect/PeekingIterator.java @@ -18,6 +18,7 @@ import com.google.common.annotations.GwtCompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.util.Iterator; import java.util.NoSuchElementException; @@ -31,6 +32,7 @@ * @author Mick Killianey * @since 2.0 */ +@DoNotMock("Use Iterators.peekingIterator") @GwtCompatible public interface PeekingIterator extends Iterator { /** diff --git a/android/guava/src/com/google/common/collect/RangeMap.java b/android/guava/src/com/google/common/collect/RangeMap.java index d1e5c31076be..e6c902e9c9b4 100644 --- a/android/guava/src/com/google/common/collect/RangeMap.java +++ b/android/guava/src/com/google/common/collect/RangeMap.java @@ -18,6 +18,7 @@ import com.google.common.annotations.Beta; import com.google.common.annotations.GwtIncompatible; +import com.google.errorprone.annotations.DoNotMock; import java.util.Collection; import java.util.Map; import java.util.Map.Entry; @@ -35,6 +36,7 @@ * @since 14.0 */ @Beta +@DoNotMock("Use ImmutableRangeMap or TreeRangeMap") @GwtIncompatible public interface RangeMap { /** diff --git a/android/guava/src/com/google/common/collect/RangeSet.java b/android/guava/src/com/google/common/collect/RangeSet.java index 19076a9ade83..06c149cc1b59 100644 --- a/android/guava/src/com/google/common/collect/RangeSet.java +++ b/android/guava/src/com/google/common/collect/RangeSet.java @@ -16,6 +16,7 @@ import com.google.common.annotations.Beta; import com.google.common.annotations.GwtIncompatible; +import com.google.errorprone.annotations.DoNotMock; import java.util.NoSuchElementException; import java.util.Set; import org.checkerframework.checker.nullness.compatqual.NullableDecl; @@ -49,6 +50,7 @@ * @since 14.0 */ @Beta +@DoNotMock("Use ImmutableRangeSet or TreeRangeSet") @GwtIncompatible public interface RangeSet { diff --git a/android/guava/src/com/google/common/collect/Table.java b/android/guava/src/com/google/common/collect/Table.java index 3da7c46e6112..69c00e36f236 100644 --- a/android/guava/src/com/google/common/collect/Table.java +++ b/android/guava/src/com/google/common/collect/Table.java @@ -20,6 +20,7 @@ import com.google.common.base.Objects; import com.google.errorprone.annotations.CanIgnoreReturnValue; import com.google.errorprone.annotations.CompatibleWith; +import com.google.errorprone.annotations.DoNotMock; import java.util.Collection; import java.util.Map; import java.util.Set; @@ -52,6 +53,7 @@ * @param the type of the mapped values * @since 7.0 */ +@DoNotMock("Use ImmutableTable, HashBasedTable, or another implementation") @GwtCompatible public interface Table { // TODO(jlevy): Consider adding methods similar to ConcurrentMap methods. diff --git a/android/guava/src/com/google/common/escape/Escaper.java b/android/guava/src/com/google/common/escape/Escaper.java index 97abc7539d39..0d32a09a1e18 100644 --- a/android/guava/src/com/google/common/escape/Escaper.java +++ b/android/guava/src/com/google/common/escape/Escaper.java @@ -16,6 +16,7 @@ import com.google.common.annotations.GwtCompatible; import com.google.common.base.Function; +import com.google.errorprone.annotations.DoNotMock; /** * An object that converts literal text into a format safe for inclusion in a particular context @@ -53,6 +54,7 @@ * @author David Beaumont * @since 15.0 */ +@DoNotMock("Use Escapers.nullEscaper() or another methods from the *Escapers classes") @GwtCompatible public abstract class Escaper { // TODO(dbeaumont): evaluate custom implementations, considering package private constructor. diff --git a/android/guava/src/com/google/common/graph/Graph.java b/android/guava/src/com/google/common/graph/Graph.java index c5abc8ec1c0b..6979cbc48ff7 100644 --- a/android/guava/src/com/google/common/graph/Graph.java +++ b/android/guava/src/com/google/common/graph/Graph.java @@ -17,6 +17,7 @@ package com.google.common.graph; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; import java.util.Collection; import java.util.Set; import org.checkerframework.checker.nullness.compatqual.NullableDecl; @@ -101,6 +102,7 @@ * @since 20.0 */ @Beta +@DoNotMock("Use GraphBuilder to create a real instance") public interface Graph extends BaseGraph { // // Graph-level accessors diff --git a/android/guava/src/com/google/common/graph/GraphBuilder.java b/android/guava/src/com/google/common/graph/GraphBuilder.java index dca26807daf4..5b15e5ca021b 100644 --- a/android/guava/src/com/google/common/graph/GraphBuilder.java +++ b/android/guava/src/com/google/common/graph/GraphBuilder.java @@ -22,6 +22,7 @@ import com.google.common.annotations.Beta; import com.google.common.base.Optional; +import com.google.errorprone.annotations.DoNotMock; /** * A builder for constructing instances of {@link MutableGraph} or {@link ImmutableGraph} with @@ -62,6 +63,7 @@ * @since 20.0 */ @Beta +@DoNotMock public final class GraphBuilder extends AbstractGraphBuilder { /** Creates a new instance with the specified edge directionality. */ diff --git a/android/guava/src/com/google/common/graph/Network.java b/android/guava/src/com/google/common/graph/Network.java index c92fe70ae4d8..a7c90865b1c6 100644 --- a/android/guava/src/com/google/common/graph/Network.java +++ b/android/guava/src/com/google/common/graph/Network.java @@ -17,6 +17,7 @@ package com.google.common.graph; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; import java.util.Set; import org.checkerframework.checker.nullness.compatqual.NullableDecl; @@ -101,6 +102,7 @@ * @since 20.0 */ @Beta +@DoNotMock("Use NetworkBuilder to create a real instance") public interface Network extends SuccessorsFunction, PredecessorsFunction { // // Network-level accessors diff --git a/android/guava/src/com/google/common/graph/PredecessorsFunction.java b/android/guava/src/com/google/common/graph/PredecessorsFunction.java index b8f7ea5ebaa2..f9ca48ae77b9 100644 --- a/android/guava/src/com/google/common/graph/PredecessorsFunction.java +++ b/android/guava/src/com/google/common/graph/PredecessorsFunction.java @@ -17,6 +17,7 @@ package com.google.common.graph; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; /** * A functional interface for { /** diff --git a/android/guava/src/com/google/common/graph/SuccessorsFunction.java b/android/guava/src/com/google/common/graph/SuccessorsFunction.java index ed60a5d93007..f74f437c2937 100644 --- a/android/guava/src/com/google/common/graph/SuccessorsFunction.java +++ b/android/guava/src/com/google/common/graph/SuccessorsFunction.java @@ -17,6 +17,7 @@ package com.google.common.graph; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; /** * A functional interface for { /** diff --git a/android/guava/src/com/google/common/hash/Funnel.java b/android/guava/src/com/google/common/hash/Funnel.java index 077ef7ac0123..2c6a7b9820f5 100644 --- a/android/guava/src/com/google/common/hash/Funnel.java +++ b/android/guava/src/com/google/common/hash/Funnel.java @@ -15,6 +15,7 @@ package com.google.common.hash; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; import java.io.Serializable; /** @@ -41,6 +42,7 @@ * @since 11.0 */ @Beta +@DoNotMock("Implement with a lambda") public interface Funnel extends Serializable { /** diff --git a/android/guava/src/com/google/common/hash/HashFunction.java b/android/guava/src/com/google/common/hash/HashFunction.java index 78842595f692..f08d95b47b8c 100644 --- a/android/guava/src/com/google/common/hash/HashFunction.java +++ b/android/guava/src/com/google/common/hash/HashFunction.java @@ -16,6 +16,7 @@ import com.google.common.annotations.Beta; import com.google.common.primitives.Ints; +import com.google.errorprone.annotations.DoNotMock; import com.google.errorprone.annotations.Immutable; import java.nio.ByteBuffer; import java.nio.charset.Charset; @@ -116,6 +117,7 @@ * @since 11.0 */ @Beta +@DoNotMock("Use a real instance from Hashing") @Immutable public interface HashFunction { /** diff --git a/android/guava/src/com/google/common/io/ByteProcessor.java b/android/guava/src/com/google/common/io/ByteProcessor.java index 23f0e3ef810c..115c73571555 100644 --- a/android/guava/src/com/google/common/io/ByteProcessor.java +++ b/android/guava/src/com/google/common/io/ByteProcessor.java @@ -17,6 +17,7 @@ import com.google.common.annotations.Beta; import com.google.common.annotations.GwtIncompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.io.IOException; /** @@ -29,6 +30,7 @@ * @since 1.0 */ @Beta +@DoNotMock("Implement it normally") @GwtIncompatible public interface ByteProcessor { /** diff --git a/android/guava/src/com/google/common/reflect/TypeToInstanceMap.java b/android/guava/src/com/google/common/reflect/TypeToInstanceMap.java index 7dc0ffd742d4..80396bc7893f 100644 --- a/android/guava/src/com/google/common/reflect/TypeToInstanceMap.java +++ b/android/guava/src/com/google/common/reflect/TypeToInstanceMap.java @@ -16,6 +16,7 @@ import com.google.common.annotations.Beta; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.util.Map; import org.checkerframework.checker.nullness.compatqual.NullableDecl; @@ -39,6 +40,7 @@ * @since 13.0 */ @Beta +@DoNotMock("Use ImmutableTypeToInstanceMap or MutableTypeToInstanceMap") public interface TypeToInstanceMap extends Map, B> { /** diff --git a/android/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java b/android/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java index e684d71caa65..469eb6757a09 100644 --- a/android/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java +++ b/android/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java @@ -15,6 +15,7 @@ package com.google.common.util.concurrent; import com.google.common.annotations.GwtIncompatible; +import com.google.errorprone.annotations.DoNotMock; import java.util.Collection; import java.util.List; import java.util.concurrent.Callable; @@ -31,6 +32,9 @@ * @author Chris Povirk * @since 10.0 */ +@DoNotMock( + "Use TestingExecutors.sameThreadScheduledExecutor, or wrap a real Executor from " + + "java.util.concurrent.Executors with MoreExecutors.listeningDecorator") @GwtIncompatible public interface ListeningExecutorService extends ExecutorService { /** diff --git a/android/guava/src/com/google/common/util/concurrent/Service.java b/android/guava/src/com/google/common/util/concurrent/Service.java index 40dbd56f6662..9cfb617b306a 100644 --- a/android/guava/src/com/google/common/util/concurrent/Service.java +++ b/android/guava/src/com/google/common/util/concurrent/Service.java @@ -15,6 +15,7 @@ package com.google.common.util.concurrent; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; import com.google.common.annotations.GwtIncompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; import java.util.concurrent.Executor; @@ -52,6 +53,7 @@ * @since 9.0 (in 1.0 as {@code com.google.common.base.Service}) */ @Beta +@DoNotMock("Create an AbstractIdleService") @GwtIncompatible public interface Service { /** diff --git a/android/guava/src/com/google/common/util/concurrent/TimeLimiter.java b/android/guava/src/com/google/common/util/concurrent/TimeLimiter.java index 1c0d9c7c29d7..b841517bc3ff 100644 --- a/android/guava/src/com/google/common/util/concurrent/TimeLimiter.java +++ b/android/guava/src/com/google/common/util/concurrent/TimeLimiter.java @@ -17,6 +17,7 @@ import com.google.common.annotations.Beta; import com.google.common.annotations.GwtIncompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; @@ -30,6 +31,7 @@ * @since 1.0 */ @Beta +@DoNotMock("Use FakeTimeLimiter") @GwtIncompatible @SuppressWarnings("GoodTime") // should have java.time.Duration overloads public interface TimeLimiter { diff --git a/android/pom.xml b/android/pom.xml index 19e7e7920e85..f77abe63434c 100644 --- a/android/pom.xml +++ b/android/pom.xml @@ -256,7 +256,7 @@ com.google.errorprone error_prone_annotations - 2.3.3 + 2.3.4 com.google.j2objc diff --git a/guava-testlib/src/com/google/common/testing/GcFinalization.java b/guava-testlib/src/com/google/common/testing/GcFinalization.java index 92394f17670a..015afea54809 100644 --- a/guava-testlib/src/com/google/common/testing/GcFinalization.java +++ b/guava-testlib/src/com/google/common/testing/GcFinalization.java @@ -20,6 +20,7 @@ import com.google.common.annotations.Beta; import com.google.common.annotations.GwtIncompatible; +import com.google.errorprone.annotations.DoNotMock; import com.google.j2objc.annotations.J2ObjCIncompatible; import java.lang.ref.WeakReference; import java.util.Locale; @@ -241,6 +242,7 @@ protected void finalize() { *
  • enqueuing weak references to unreachable referents in their reference queue * */ + @DoNotMock("Implement with a lambda") public interface FinalizationPredicate { boolean isDone(); } diff --git a/guava-testlib/src/com/google/common/testing/TearDownAccepter.java b/guava-testlib/src/com/google/common/testing/TearDownAccepter.java index a1d1f00be938..bad1f1997867 100644 --- a/guava-testlib/src/com/google/common/testing/TearDownAccepter.java +++ b/guava-testlib/src/com/google/common/testing/TearDownAccepter.java @@ -17,6 +17,7 @@ package com.google.common.testing; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; import com.google.common.annotations.GwtCompatible; /** @@ -26,6 +27,7 @@ * @since 10.0 */ @Beta +@DoNotMock("Implement with a lambda") @GwtCompatible public interface TearDownAccepter { /** diff --git a/guava/src/com/google/common/base/FinalizableReference.java b/guava/src/com/google/common/base/FinalizableReference.java index f7e5cf885115..848e7ee586d2 100644 --- a/guava/src/com/google/common/base/FinalizableReference.java +++ b/guava/src/com/google/common/base/FinalizableReference.java @@ -15,6 +15,7 @@ package com.google.common.base; import com.google.common.annotations.GwtIncompatible; +import com.google.errorprone.annotations.DoNotMock; /** * Implemented by references that have code to run after garbage collection of their referents. @@ -23,6 +24,7 @@ * @author Bob Lee * @since 2.0 */ +@DoNotMock("Use an instance of one of the Finalizable*Reference classes") @GwtIncompatible public interface FinalizableReference { /** diff --git a/guava/src/com/google/common/base/Optional.java b/guava/src/com/google/common/base/Optional.java index 64d49d8dc6e4..51966f602139 100644 --- a/guava/src/com/google/common/base/Optional.java +++ b/guava/src/com/google/common/base/Optional.java @@ -15,6 +15,7 @@ package com.google.common.base; import static com.google.common.base.Preconditions.checkNotNull; +import com.google.errorprone.annotations.DoNotMock; import com.google.common.annotations.Beta; import com.google.common.annotations.GwtCompatible; @@ -79,6 +80,7 @@ * @author Kevin Bourrillion * @since 10.0 */ +@DoNotMock("Use Optional.of(value) or Optional.absent()") @GwtCompatible(serializable = true) public abstract class Optional implements Serializable { /** diff --git a/guava/src/com/google/common/cache/Cache.java b/guava/src/com/google/common/cache/Cache.java index af662a9d58b2..4bcb30846bb8 100644 --- a/guava/src/com/google/common/cache/Cache.java +++ b/guava/src/com/google/common/cache/Cache.java @@ -19,6 +19,7 @@ import com.google.common.util.concurrent.ExecutionError; import com.google.common.util.concurrent.UncheckedExecutionException; import com.google.errorprone.annotations.CompatibleWith; +import com.google.errorprone.annotations.DoNotMock; import java.util.Map; import java.util.concurrent.Callable; import java.util.concurrent.ConcurrentMap; @@ -36,6 +37,7 @@ * @author Charles Fry * @since 10.0 */ +@DoNotMock("Use CacheBuilder.newBuilder().build()") @GwtCompatible public interface Cache { diff --git a/guava/src/com/google/common/collect/ClassToInstanceMap.java b/guava/src/com/google/common/collect/ClassToInstanceMap.java index 1b6a5ddef11a..a173556b150c 100644 --- a/guava/src/com/google/common/collect/ClassToInstanceMap.java +++ b/guava/src/com/google/common/collect/ClassToInstanceMap.java @@ -18,6 +18,7 @@ import com.google.common.annotations.GwtCompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.util.Map; import org.checkerframework.checker.nullness.qual.Nullable; @@ -40,6 +41,7 @@ * @author Kevin Bourrillion * @since 2.0 */ +@DoNotMock("Use ImmutableClassToInstanceMap or MutableClassToInstanceMap") @GwtCompatible public interface ClassToInstanceMap extends Map, B> { /** diff --git a/guava/src/com/google/common/collect/ImmutableCollection.java b/guava/src/com/google/common/collect/ImmutableCollection.java index 92ba73ee1350..125639a06922 100644 --- a/guava/src/com/google/common/collect/ImmutableCollection.java +++ b/guava/src/com/google/common/collect/ImmutableCollection.java @@ -20,6 +20,7 @@ import com.google.common.annotations.GwtCompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.io.Serializable; import java.util.AbstractCollection; import java.util.Collection; @@ -157,6 +158,7 @@ * * @since 2.0 */ +@DoNotMock("Use ImmutableList.of or another implementation") @GwtCompatible(emulated = true) @SuppressWarnings("serial") // we're overriding default serialization // TODO(kevinb): I think we should push everything down to "BaseImmutableCollection" or something, @@ -372,6 +374,7 @@ Object writeReplace() { * * @since 10.0 */ + @DoNotMock public abstract static class Builder { static final int DEFAULT_INITIAL_CAPACITY = 4; diff --git a/guava/src/com/google/common/collect/ImmutableMap.java b/guava/src/com/google/common/collect/ImmutableMap.java index e75ea933bf46..0b3d72bcf527 100644 --- a/guava/src/com/google/common/collect/ImmutableMap.java +++ b/guava/src/com/google/common/collect/ImmutableMap.java @@ -25,6 +25,7 @@ import com.google.common.annotations.GwtCompatible; import com.google.common.annotations.VisibleForTesting; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import com.google.errorprone.annotations.concurrent.LazyInit; import com.google.j2objc.annotations.RetainedWith; import com.google.j2objc.annotations.WeakOuter; @@ -60,6 +61,7 @@ * @author Kevin Bourrillion * @since 2.0 */ +@DoNotMock("Use ImmutableMap.of or another implementation") @GwtCompatible(serializable = true, emulated = true) @SuppressWarnings("serial") // we're overriding default serialization public abstract class ImmutableMap implements Map, Serializable { @@ -244,6 +246,7 @@ static IllegalArgumentException conflictException( * * @since 2.0 */ + @DoNotMock public static class Builder { @MonotonicNonNull Comparator valueComparator; Entry[] entries; diff --git a/guava/src/com/google/common/collect/ImmutableMultimap.java b/guava/src/com/google/common/collect/ImmutableMultimap.java index 70b791fd24e9..358ef9302bf1 100644 --- a/guava/src/com/google/common/collect/ImmutableMultimap.java +++ b/guava/src/com/google/common/collect/ImmutableMultimap.java @@ -23,6 +23,7 @@ import com.google.common.annotations.GwtCompatible; import com.google.common.annotations.GwtIncompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import com.google.j2objc.annotations.Weak; import com.google.j2objc.annotations.WeakOuter; import java.io.Serializable; @@ -138,6 +139,7 @@ public static Builder builder() { * * @since 2.0 */ + @DoNotMock public static class Builder { Map> builderMap; @MonotonicNonNull Comparator keyComparator; diff --git a/guava/src/com/google/common/collect/ImmutableRangeMap.java b/guava/src/com/google/common/collect/ImmutableRangeMap.java index 983da60c9a0c..f164701ae2e8 100644 --- a/guava/src/com/google/common/collect/ImmutableRangeMap.java +++ b/guava/src/com/google/common/collect/ImmutableRangeMap.java @@ -23,6 +23,7 @@ import com.google.common.collect.SortedLists.KeyAbsentBehavior; import com.google.common.collect.SortedLists.KeyPresentBehavior; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.io.Serializable; import java.util.Collections; import java.util.List; @@ -98,6 +99,7 @@ public static , V> Builder builder() { * * @since 14.0 */ + @DoNotMock public static final class Builder, V> { private final List, V>> entries; diff --git a/guava/src/com/google/common/collect/ImmutableTable.java b/guava/src/com/google/common/collect/ImmutableTable.java index 04acb8b13976..77d375f3dcb6 100644 --- a/guava/src/com/google/common/collect/ImmutableTable.java +++ b/guava/src/com/google/common/collect/ImmutableTable.java @@ -22,6 +22,7 @@ import com.google.common.base.MoreObjects; import com.google.common.collect.Tables.AbstractCell; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.io.Serializable; import java.util.ArrayList; import java.util.Comparator; @@ -263,6 +264,7 @@ static Cell cellOf(R rowKey, C columnKey, V value) { * * @since 11.0 */ + @DoNotMock public static final class Builder { private final List> cells = Lists.newArrayList(); @MonotonicNonNull private Comparator rowComparator; diff --git a/guava/src/com/google/common/collect/Interner.java b/guava/src/com/google/common/collect/Interner.java index 0a06bfc1c37f..10d395d5024b 100644 --- a/guava/src/com/google/common/collect/Interner.java +++ b/guava/src/com/google/common/collect/Interner.java @@ -19,6 +19,7 @@ import com.google.common.annotations.Beta; import com.google.common.annotations.GwtIncompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; /** * Provides equivalent behavior to {@link String#intern} for other immutable types. Common @@ -28,6 +29,7 @@ * @since 3.0 */ @Beta +@DoNotMock("Use Interners.new*Interner") @GwtIncompatible public interface Interner { /** diff --git a/guava/src/com/google/common/collect/MapDifference.java b/guava/src/com/google/common/collect/MapDifference.java index 760473f5e507..066aebf02496 100644 --- a/guava/src/com/google/common/collect/MapDifference.java +++ b/guava/src/com/google/common/collect/MapDifference.java @@ -17,6 +17,7 @@ package com.google.common.collect; import com.google.common.annotations.GwtCompatible; +import com.google.errorprone.annotations.DoNotMock; import java.util.Map; import org.checkerframework.checker.nullness.qual.Nullable; @@ -26,6 +27,7 @@ * @author Kevin Bourrillion * @since 2.0 */ +@DoNotMock("Use Maps.difference") @GwtCompatible public interface MapDifference { /** @@ -84,6 +86,7 @@ public interface MapDifference { * * @since 2.0 */ + @DoNotMock("Use Maps.difference") interface ValueDifference { /** Returns the value from the left map (possibly null). */ V leftValue(); diff --git a/guava/src/com/google/common/collect/Multimap.java b/guava/src/com/google/common/collect/Multimap.java index 13256ba3c6db..ec2b9ef2c544 100644 --- a/guava/src/com/google/common/collect/Multimap.java +++ b/guava/src/com/google/common/collect/Multimap.java @@ -21,6 +21,7 @@ import com.google.common.annotations.GwtCompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; import com.google.errorprone.annotations.CompatibleWith; +import com.google.errorprone.annotations.DoNotMock; import java.util.Collection; import java.util.List; import java.util.Map; @@ -158,6 +159,7 @@ * @author Jared Levy * @since 2.0 */ +@DoNotMock("Use ImmutableMultimap, HashMultimap, or another implementation") @GwtCompatible public interface Multimap { // Query Operations diff --git a/guava/src/com/google/common/collect/PeekingIterator.java b/guava/src/com/google/common/collect/PeekingIterator.java index bcb84a054c7e..5a6c60b2bec4 100644 --- a/guava/src/com/google/common/collect/PeekingIterator.java +++ b/guava/src/com/google/common/collect/PeekingIterator.java @@ -18,6 +18,7 @@ import com.google.common.annotations.GwtCompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.util.Iterator; import java.util.NoSuchElementException; @@ -31,6 +32,7 @@ * @author Mick Killianey * @since 2.0 */ +@DoNotMock("Use Iterators.peekingIterator") @GwtCompatible public interface PeekingIterator extends Iterator { /** diff --git a/guava/src/com/google/common/collect/RangeMap.java b/guava/src/com/google/common/collect/RangeMap.java index e144184981ed..0b319bdb61b9 100644 --- a/guava/src/com/google/common/collect/RangeMap.java +++ b/guava/src/com/google/common/collect/RangeMap.java @@ -18,6 +18,7 @@ import com.google.common.annotations.Beta; import com.google.common.annotations.GwtIncompatible; +import com.google.errorprone.annotations.DoNotMock; import java.util.Collection; import java.util.Map; import java.util.Map.Entry; @@ -36,6 +37,7 @@ * @since 14.0 */ @Beta +@DoNotMock("Use ImmutableRangeMap or TreeRangeMap") @GwtIncompatible public interface RangeMap { /** diff --git a/guava/src/com/google/common/collect/RangeSet.java b/guava/src/com/google/common/collect/RangeSet.java index dce3bd8cee4e..4805108c1b6a 100644 --- a/guava/src/com/google/common/collect/RangeSet.java +++ b/guava/src/com/google/common/collect/RangeSet.java @@ -15,6 +15,7 @@ package com.google.common.collect; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; import com.google.common.annotations.GwtIncompatible; import java.util.NoSuchElementException; import java.util.Set; @@ -49,6 +50,7 @@ * @since 14.0 */ @Beta +@DoNotMock("Use ImmutableRangeSet or TreeRangeSet") @GwtIncompatible public interface RangeSet { // TODO(lowasser): consider adding default implementations of some of these methods diff --git a/guava/src/com/google/common/collect/Table.java b/guava/src/com/google/common/collect/Table.java index 9e29aa991251..8a3248245012 100644 --- a/guava/src/com/google/common/collect/Table.java +++ b/guava/src/com/google/common/collect/Table.java @@ -20,6 +20,7 @@ import com.google.common.base.Objects; import com.google.errorprone.annotations.CanIgnoreReturnValue; import com.google.errorprone.annotations.CompatibleWith; +import com.google.errorprone.annotations.DoNotMock; import java.util.Collection; import java.util.Map; import java.util.Set; @@ -52,6 +53,7 @@ * @param the type of the mapped values * @since 7.0 */ +@DoNotMock("Use ImmutableTable, HashBasedTable, or another implementation") @GwtCompatible public interface Table { // TODO(jlevy): Consider adding methods similar to ConcurrentMap methods. diff --git a/guava/src/com/google/common/escape/Escaper.java b/guava/src/com/google/common/escape/Escaper.java index 97abc7539d39..0d32a09a1e18 100644 --- a/guava/src/com/google/common/escape/Escaper.java +++ b/guava/src/com/google/common/escape/Escaper.java @@ -16,6 +16,7 @@ import com.google.common.annotations.GwtCompatible; import com.google.common.base.Function; +import com.google.errorprone.annotations.DoNotMock; /** * An object that converts literal text into a format safe for inclusion in a particular context @@ -53,6 +54,7 @@ * @author David Beaumont * @since 15.0 */ +@DoNotMock("Use Escapers.nullEscaper() or another methods from the *Escapers classes") @GwtCompatible public abstract class Escaper { // TODO(dbeaumont): evaluate custom implementations, considering package private constructor. diff --git a/guava/src/com/google/common/graph/Graph.java b/guava/src/com/google/common/graph/Graph.java index 0be05761d5bf..1b5142aa6342 100644 --- a/guava/src/com/google/common/graph/Graph.java +++ b/guava/src/com/google/common/graph/Graph.java @@ -17,6 +17,7 @@ package com.google.common.graph; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; import java.util.Collection; import java.util.Set; import org.checkerframework.checker.nullness.qual.Nullable; @@ -101,6 +102,7 @@ * @since 20.0 */ @Beta +@DoNotMock("Use GraphBuilder to create a real instance") public interface Graph extends BaseGraph { // // Graph-level accessors diff --git a/guava/src/com/google/common/graph/GraphBuilder.java b/guava/src/com/google/common/graph/GraphBuilder.java index dca26807daf4..5b15e5ca021b 100644 --- a/guava/src/com/google/common/graph/GraphBuilder.java +++ b/guava/src/com/google/common/graph/GraphBuilder.java @@ -22,6 +22,7 @@ import com.google.common.annotations.Beta; import com.google.common.base.Optional; +import com.google.errorprone.annotations.DoNotMock; /** * A builder for constructing instances of {@link MutableGraph} or {@link ImmutableGraph} with @@ -62,6 +63,7 @@ * @since 20.0 */ @Beta +@DoNotMock public final class GraphBuilder extends AbstractGraphBuilder { /** Creates a new instance with the specified edge directionality. */ diff --git a/guava/src/com/google/common/graph/Network.java b/guava/src/com/google/common/graph/Network.java index 2ef6687660a0..6bb845228001 100644 --- a/guava/src/com/google/common/graph/Network.java +++ b/guava/src/com/google/common/graph/Network.java @@ -17,6 +17,7 @@ package com.google.common.graph; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; import java.util.Optional; import java.util.Set; import org.checkerframework.checker.nullness.qual.Nullable; @@ -102,6 +103,7 @@ * @since 20.0 */ @Beta +@DoNotMock("Use NetworkBuilder to create a real instance") public interface Network extends SuccessorsFunction, PredecessorsFunction { // // Network-level accessors diff --git a/guava/src/com/google/common/graph/PredecessorsFunction.java b/guava/src/com/google/common/graph/PredecessorsFunction.java index b8f7ea5ebaa2..f9ca48ae77b9 100644 --- a/guava/src/com/google/common/graph/PredecessorsFunction.java +++ b/guava/src/com/google/common/graph/PredecessorsFunction.java @@ -17,6 +17,7 @@ package com.google.common.graph; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; /** * A functional interface for { /** diff --git a/guava/src/com/google/common/graph/SuccessorsFunction.java b/guava/src/com/google/common/graph/SuccessorsFunction.java index ed60a5d93007..f74f437c2937 100644 --- a/guava/src/com/google/common/graph/SuccessorsFunction.java +++ b/guava/src/com/google/common/graph/SuccessorsFunction.java @@ -17,6 +17,7 @@ package com.google.common.graph; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; /** * A functional interface for { /** diff --git a/guava/src/com/google/common/hash/Funnel.java b/guava/src/com/google/common/hash/Funnel.java index 077ef7ac0123..2c6a7b9820f5 100644 --- a/guava/src/com/google/common/hash/Funnel.java +++ b/guava/src/com/google/common/hash/Funnel.java @@ -15,6 +15,7 @@ package com.google.common.hash; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; import java.io.Serializable; /** @@ -41,6 +42,7 @@ * @since 11.0 */ @Beta +@DoNotMock("Implement with a lambda") public interface Funnel extends Serializable { /** diff --git a/guava/src/com/google/common/hash/HashFunction.java b/guava/src/com/google/common/hash/HashFunction.java index 78842595f692..f08d95b47b8c 100644 --- a/guava/src/com/google/common/hash/HashFunction.java +++ b/guava/src/com/google/common/hash/HashFunction.java @@ -16,6 +16,7 @@ import com.google.common.annotations.Beta; import com.google.common.primitives.Ints; +import com.google.errorprone.annotations.DoNotMock; import com.google.errorprone.annotations.Immutable; import java.nio.ByteBuffer; import java.nio.charset.Charset; @@ -116,6 +117,7 @@ * @since 11.0 */ @Beta +@DoNotMock("Use a real instance from Hashing") @Immutable public interface HashFunction { /** diff --git a/guava/src/com/google/common/io/ByteProcessor.java b/guava/src/com/google/common/io/ByteProcessor.java index 23f0e3ef810c..115c73571555 100644 --- a/guava/src/com/google/common/io/ByteProcessor.java +++ b/guava/src/com/google/common/io/ByteProcessor.java @@ -17,6 +17,7 @@ import com.google.common.annotations.Beta; import com.google.common.annotations.GwtIncompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.io.IOException; /** @@ -29,6 +30,7 @@ * @since 1.0 */ @Beta +@DoNotMock("Implement it normally") @GwtIncompatible public interface ByteProcessor { /** diff --git a/guava/src/com/google/common/reflect/TypeToInstanceMap.java b/guava/src/com/google/common/reflect/TypeToInstanceMap.java index d4097c61ef65..443b2580cfc5 100644 --- a/guava/src/com/google/common/reflect/TypeToInstanceMap.java +++ b/guava/src/com/google/common/reflect/TypeToInstanceMap.java @@ -16,6 +16,7 @@ import com.google.common.annotations.Beta; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.util.Map; import org.checkerframework.checker.nullness.qual.Nullable; @@ -39,6 +40,7 @@ * @since 13.0 */ @Beta +@DoNotMock("Use ImmutableTypeToInstanceMap or MutableTypeToInstanceMap") public interface TypeToInstanceMap extends Map, B> { /** diff --git a/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java b/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java index e684d71caa65..469eb6757a09 100644 --- a/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java +++ b/guava/src/com/google/common/util/concurrent/ListeningExecutorService.java @@ -15,6 +15,7 @@ package com.google.common.util.concurrent; import com.google.common.annotations.GwtIncompatible; +import com.google.errorprone.annotations.DoNotMock; import java.util.Collection; import java.util.List; import java.util.concurrent.Callable; @@ -31,6 +32,9 @@ * @author Chris Povirk * @since 10.0 */ +@DoNotMock( + "Use TestingExecutors.sameThreadScheduledExecutor, or wrap a real Executor from " + + "java.util.concurrent.Executors with MoreExecutors.listeningDecorator") @GwtIncompatible public interface ListeningExecutorService extends ExecutorService { /** diff --git a/guava/src/com/google/common/util/concurrent/Service.java b/guava/src/com/google/common/util/concurrent/Service.java index b4e7004e9732..b8ec15fc0746 100644 --- a/guava/src/com/google/common/util/concurrent/Service.java +++ b/guava/src/com/google/common/util/concurrent/Service.java @@ -17,6 +17,7 @@ import static com.google.common.util.concurrent.Internal.toNanosSaturated; import com.google.common.annotations.Beta; +import com.google.errorprone.annotations.DoNotMock; import com.google.common.annotations.GwtIncompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; import java.time.Duration; @@ -55,6 +56,7 @@ * @since 9.0 (in 1.0 as {@code com.google.common.base.Service}) */ @Beta +@DoNotMock("Create an AbstractIdleService") @GwtIncompatible public interface Service { /** diff --git a/guava/src/com/google/common/util/concurrent/TimeLimiter.java b/guava/src/com/google/common/util/concurrent/TimeLimiter.java index 696283040a71..600c6cf58f5d 100644 --- a/guava/src/com/google/common/util/concurrent/TimeLimiter.java +++ b/guava/src/com/google/common/util/concurrent/TimeLimiter.java @@ -19,6 +19,7 @@ import com.google.common.annotations.Beta; import com.google.common.annotations.GwtIncompatible; import com.google.errorprone.annotations.CanIgnoreReturnValue; +import com.google.errorprone.annotations.DoNotMock; import java.time.Duration; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; @@ -33,6 +34,7 @@ * @since 1.0 */ @Beta +@DoNotMock("Use FakeTimeLimiter") @GwtIncompatible public interface TimeLimiter { diff --git a/pom.xml b/pom.xml index ae3c715f43b6..28af30c8df3f 100644 --- a/pom.xml +++ b/pom.xml @@ -252,7 +252,7 @@ com.google.errorprone error_prone_annotations - 2.3.3 + 2.3.4 com.google.j2objc