Excavator: Upgrades Baseline to the latest version #621
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
excavator is a bot for automating changes across repositories.
Changes produced by the roomba/latest-baseline check.
Release Notes
0.50.0
[feature] Warn against .parallel() calls on Java streams (#537)
[fix] Correct prioritisation of versions.props to match nebula logic (#533)
0.51.0
./gradlew idea
deletes redundant ipr files (Add AQE adjusting partition count with Union bug fix #550)0.51.1
0.52.0
com.palantir.baseline-exact-dependencies
helps declare necessary and sufficient dependencies ([SPARK-25299] ShuffleLocation/FetchFailed integrations with scheduler #548)0.53.0
0.54.0
com.palantir.baseline-release-compatibility
plugin (Add support for StructType return in Scalar Pandas UDF #582)0.55.0
[break] Enable running of unique class check on multiple configurations (#583)
0.55.1
[fix] checkImplicitDependencies shouldn't count ignored artifacts (#601)
0.55.2
[fix] BaselineReleaseCompatibility up-to-date checking of compile tasks (#605)
0.56.0
[feature] Add an errorprone rule GradleCacheableTaskAction that prevents passing a lambda to Task.doFirst or Task.doLast when implementing gradle plugins (#608)
0.57.0
Iterables.partition(List, int)
withLists.partition(List, int)
(Excavator: Upgrade buildscript dependencies #622)Lists
orCollections2
transfrom
overIterables.transform
(Cherry pick "Propagate SparkExceptions during toPandas with arrow enabled" #623)0.58.0
[improvement] make CheckClassUniquenessTask cacheable (#637)
[fix] Add Javac Settings to uncheck "Use compiler from module target JDK when possible" (#629)
[fix] class uniqueness rule must have a config (#638)
0.59.0
[improvement] Spotless to remove blank lines at start of methods (#641)
0.60.0
0.61.0
0.62.0
0.62.1
[fix] Revert "[improvement] Ensure Optional#orElse argument is not method invocation" (#659)
0.63.0
[improvement] Support auto-applying error-prone suggested fixes (#660)
0.64.0
0.64.1
0.65.0
[improvement] Error-prone check to help prevent logging AuthHeader and BearerToken (#654)
[fix] fix potential NPE when configuring testing (#669)
[fix] Fix refaster compilation to support version recommendations (#667)
0.66.0
[improvement] Ignore DesignForExtension for ParameterizedTest (#673)
0.66.1
1.0.0
1.1.0
1.1.1
-PerrorProneApply
.1.2.0
1.3.0
It's possible to restore caching by adding
com.palantir.baseline.restore-test-cache = true
to yourgradle.properties
.1.4.0
1.5.0
1.6.0
1.6.1
1.7.0
./gradlew format -Pcom.palantir.baseline-format.eclipse
.1.8.0
() -> {}
1.8.1
1.8.2
EnableRuleMigrationSupport
inJUnit5RuleUsage
errorprone-rule1.9.0
checkImplicitDependencies
task will no longer suggest a fix of the current project.1.10.0
execute
oversubmit
when the result is ignored1.10.1
1.11.0
InputStreamSlowMultibyteRead
error prone check at ERROR severity1.12.0
baseline-idea
plugin now generates configuration more closely aligned with Gradle defaults.UnusedMethod
andUnusedVariable
.stream.sorted().findFirst()
intostream.min(Comparator.naturalOrder())
DangerousStringInternUsage
: Disallow String.intern() invocations1.12.1
UnusedMethod
andUnusedVariable
which automaticall remove code with side effects.1.13.0
LogSafePreconditionsConstantMessage
Slf4jLogsafeArgs
in test codeDuration#getNanos
mistakes and bans URL in equals methods1.14.0
OptionalOrElseThrowThrows
to prevent throwing from orElseThrow1.15.0
1.16.0
1.17.0
TypeParameterUnusedInFormals
errorprone check is disabled when compiling on Java 13, to workaround an error-prone bug.1.17.1
1.17.2
1.18.0
dependencies are ignored due to false positives as these dependencies
will not appear as dependencies in the generated byte-code, but are in
fact necessary dependencies to compile a given module.
1.19.0
PreconditionsConstantMessage
on gradle plugins2.0.0
2.1.0
2.1.1
2.2.0
project
) as can interfere with publishing.2.2.1
2.2.2
runtimeClasspath
configuration by default.2.3.0
{}
in safelog exception messages2.4.0
StrictUnusedVariable
check will catch any unused arguments (e.g. AuthHeaders) to public methods. If you need to suppress this, rename your variable to have an underscore prefix (e.g.s/foo/_foo/
) or just run./gradlew classes -PerrorProneApply
to auto-fix2.4.1
module-info.class
when checking class uniqueness2.4.2
src/*/resources
directory anymore.2.4.3
2.5.0
2.6.0
PreferAssertj
to assist migration to AssertJ from legacy test frameworks. It may be necessary to add a dependency onorg.assertj:assertj-core
in modules which do not already depend on AssertJ. If there's a technical reason that AssertJ cannot be used,PreferAssertj
may be explicitly disabled to prevent future upgrades from attempting to re-run the migration.2.7.0
StrictUnusedVariable
now ignores variables prefixed with_
and the suggested fix will rename all unused parameters in public methods instead of removing them@RunWith(Suite.class)
that references JUnit5 classes, as this can cause tests to silently not run!2.8.0
2.8.1
2.9.0
_
prefixbaselineErrorProne { patchChecks += 'PreferAssertj' }
2.9.1
StrictUnusedVariable
correctly converts previously suppressed variablesunused
to_
2.9.2
StrictUnusedVariable
will preserve side effects2.10.0
checkJUnitDependencies
task detects misconfigured JUnit dependencies which could result in some tests silently not running.2.10.1
2.11.0
2.11.1
2.11.2
assertThat
imports2.12.0
UnusedVariable
error prone rule by default2.13.0
@TestTemplate
annotation is now used to detect whether a class is test code.2.14.0
2.15.0
No documented user facing changes
2.16.0
isEqualTo
checks intohasValue
checks2.17.0
2.18.0
2.19.0
2.20.0
UnnecessaryParentheses
by defaultThrowError
to discourage throwing Errors in production codeErrors are often handled poorly by libraries resulting in unexpected
behavior and resource leaks. It's not obvious that 'catch (Exception e)'
does not catch Error.
This check is intended to be advisory - it's fine to
@SuppressWarnings("ThrowError")
in certain cases, but is usually notrecommended unless you are writing a testing library that throws
AssertionError.
Slf4jLevelCheck
to validate that slf4j level checks agree with contained logging.2.20.1
2.21.0
2.22.0
Automated release, no documented user facing changes
2.23.0
Calling address.getHostName may result in a DNS lookup which is a network request,
making the invocation significantly more expensive than expected depending on the
environment.
This check is intended to be advisory - it's fine to
@SuppressWarnings("ReverseDnsLookup") in certain cases, but is usually not
recommended.
2.24.0
verifyZeroInteractions
now gets rewritten toverifyNoMoreInteractions
, which has the same behaviour.com.palantir.safe-logging:preconditions
).2.25.0
com.palantir-java-format
which is also used to determine the version used by IntelliJ.2.26.0
./gradlew formatDiff
to reformat the relevant sections of any uncommitted changed Java files (relies ongit diff -U0 HEAD
under the hood)2.27.0
DangerousParallelStreamUsage
checks forCollection.parallelStream()
andStreamSupport
utility methods with parallel=true.Throwables must be logged without an Arg wrapper as the last parameter, otherwise unsafe data may be leaked from the unsafe message or the unsafe message of a cause.
2.28.0
FinalClass
error prone check, replacing the checkstyle implementation2.28.1
RedundantModifier
interpretation of implicit modifiers2.28.2
2.28.3
The most common issue this fixes is failures on
SafeArg.of("name", null)
assuming that the null literal value parameter may be a throwable.
To enable or disable this check, please contact the maintainers of Excavator.