Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Excavator: Upgrades Baseline to the latest version #459

Conversation

svc-excavator-bot
Copy link
Collaborator

excavator is a bot for automating changes across repositories.

Changes produced by the roomba/latest-baseline-oss check.

Release Notes

3.15.0

Type Description Link
Improvement StrictUnusedVariable checks for unused lambda parameters palantir/gradle-baseline#1355

3.15.1

Type Description Link
Fix Correctly handle converting lambda parameters from unused (_param) to used (param`), fixing a regression from 5.18.0. palantir/gradle-baseline#1358

3.16.0

Type Description Link
Improvement Rewrite single parameter lambdas that only invoke an zero param instance method to a method reference palantir/gradle-baseline#1359

3.17.0

Type Description Link
Feature Forbid implicit toString of Gradle Providers. palantir/gradle-baseline#1322

3.18.0

Type Description Link
Improvement checkUnusedDependencies works with JDK14 palantir/gradle-baseline#1367

3.19.0

Type Description Link
Improvement Convert multi param lambdas and local method invokations to method references palantir/gradle-baseline#1365
Improvement Upgarde error-prone to 2.4.0 to support latest jdks palantir/gradle-baseline#1370
Improvement Upgrade gradle-errorprone palantir/gradle-baseline#1371

3.20.0

Type Description Link
Improvement The baseline-error-prone plugin no longer applies SUGGESTION checks by default. palantir/gradle-baseline#1380

3.21.0

Type Description Link
Improvement Add an explicit dependency on org.ow2.asm:asm to ensure consumers can use JDK14 source compat palantir/gradle-baseline#1374

3.22.0

Type Description Link
Improvement Add error-prone check that forbids extending java.lang.Error (reports ERROR). Provides a fix to replace extends Error with extends RuntimeException for clearer contract to the consumers. palantir/gradle-baseline#1379

3.23.0

Type Description Link
Improvement The PreferCollectionConstructors error-prone check is now enabled by default. palantir/gradle-baseline#1386

3.24.0

Type Description Link
Improvement Running ./gradlew --write-locks should be faster now, as it doesn't update your baseline-class-uniqueness.lock file implicitly anymore. To update this, you need to run ./gradlew checkClassUniqueness --write-locks. palantir/gradle-baseline#1389
Improvement Add errorprone check to avoid accidentally undoing immutables Style meta-annotations. palantir/gradle-baseline#1396

3.25.0

Type Description Link
Improvement Upgrade checkstyle to 8.33 palantir/gradle-baseline#1404

3.25.1

Type Description Link
Fix Fix checkstyle config to conform to breaks made between 8.13 and 8.33 palantir/gradle-baseline#1409

3.26.0

Type Description Link
Improvement StrictUnusedVariable handles Java 14 records palantir/gradle-baseline#1412

3.27.0

Type Description Link
Improvement When using Eclipse's built-in formatter, method declarations are now wrapped on parameters, not on modifiers and return type. palantir/gradle-baseline#1416

3.28.0

Type Description Link
Improvement Adds the proper configuration files upon IntelliJ import of a gradle project for checkstyle and copyright.

This generates the following additional files:
- .idea/copyright/profiles_settings.xml
- an xml file under .idea/copyright/ per copyright file under .baseline/copyright
- .idea/checkstyle-idea.xml (and adds Checkstyle-IDEA to the external dependencies) if baseline-checkstyle is applied
- Either .idea/codeStyleSettings.xml or a .idea/codeStyles/ folder with the contents being copied from .baseline/idea
- If .baseline/idea/codeStyles is present, it will copy its contents, otherwise, it will fall back to .baseline/idea/intellij-java-palantir-style.xml as currently
- The fallback is using a legacy IntelliJ format and requires closing and reopening the project to be taken into account
palantir/gradle-baseline#1411

3.29.0

Type Description Link
Improvement The Slf4jLogsafeArgs ErrorProne rule now allows object arrays be passed as vararg argument to logging methods. palantir/gradle-baseline#1394
Improvement Adds OptionalOrElseGetValue error prone rule which recommends using Optional.orElse(value) over Optional.orElseGet(() -> value). palantir/gradle-baseline#1401

3.30.0

Type Description Link
Improvement Check unused dependencies task can be up to date palantir/gradle-baseline#1426

3.31.0

Type Description Link
Improvement check junit dependencies task can be skipped palantir/gradle-baseline#1427

3.32.0

Type Description Link
Improvement Disable UnnecessaryParentheses on Java 14 source to avoid false positives palantir/gradle-baseline#1413

3.32.1

Type Description Link
Fix Avoid rewriting lambdas into ambiguous references palantir/gradle-baseline#1432

3.33.0

Type Description Link
Improvement Disable FallThrough on Java 14 source to avoid false positives palantir/gradle-baseline#1442

3.34.0

Type Description Link
Feature Add TooManyArguments errorprone rule which prevents interfaces from having more than 10 arguments palantir/gradle-baseline#1447

3.35.0

Type Description Link
Improvement Implement PreferStaticLoggers error-prone check palantir/gradle-baseline#1446
Improvement Fix typo in TooManyArguments check palantir/gradle-baseline#1449
Fix When checkClassUniqueness fails, it will show the difference between the actual and expected lock file. palantir/gradle-baseline#1452

3.36.0

Type Description Link
Improvement Make TODO checkstyle rule case insensitive to catch lowercase TODO comments palantir/gradle-baseline#1456
Feature add LogsafeArgName errorprone rule which allows users to specify a list of argument names that must always be tagged as unsafe. palantir/gradle-baseline#1459

3.36.1

Type Description Link
Fix The LogsafeArgName now ignores arg names that are not literals. palantir/gradle-baseline#1465

3.36.2

Type Description Link
Fix baseline-exact-dependencies ensures compileCopy configuration it creates is not resolvable, so it can't be resolved accidentally. palantir/gradle-baseline#1469

3.37.0

Type Description Link
Improvement Error-prone DnsLookup check to prevent unintentional resolution palantir/gradle-baseline#1472

3.37.1

Type Description Link
Fix Fix com.palantir.baseline-exact-dependencies to work with GCV 1.26.0+. palantir/gradle-baseline#1487

3.38.0

Type Description Link
Improvement ImplicitPublicBuilderConstructor error prone rule palantir/gradle-baseline#1492

3.39.0

Type Description Link
Improvement checkstyle 8.33 -> 8.36.1, which enables support for new language features like records. palantir/gradle-baseline#1496

3.39.1

Type Description Link
Fix Fix InvocationHandlerDelegation false positive palantir/gradle-baseline#1499

3.40.0

Type Description Link
Improvement Add an Errorprone rule to check that all fields in Immutables builders have been initialized palantir/gradle-baseline#1504

3.40.1

Type Description Link
Fix Fix ImmutablesBuilderMissingInitialization in java15 palantir/gradle-baseline#1507

3.41.0

Type Description Link
Improvement error-prone UnnecessarilyQualified palantir/gradle-baseline#1510

3.42.0

Type Description Link
Improvement Disable intellij's missing slf4j placeholders inspection by default. palantir/gradle-baseline#1513

3.43.0

Type Description Link
Improvement Error-prone's BoxedPrimitiveEquality and ReferenceEquality checks will now fail the build, as we consider them errors not just warnings. palantir/gradle-baseline#1514

3.43.1

Type Description Link
Fix Fix null pointer exception when checking immutables builders that are returned from abstract methods palantir/gradle-baseline#1519

3.44.0

Type Description Link
Improvement Implement DeprecatedGuavaObjects error-prone migration palantir/gradle-baseline#1521
Improvement Implement error-prone ObjectsHashCodeUnnecessaryVarargs migration palantir/gradle-baseline#1522

3.45.0

Type Description Link
Improvement Automatically fix occurrences of ObjectsHashCodePrimitive palantir/gradle-baseline#1523

3.45.1

Type Description Link
Fix Always set target version for Scala compiler to JVM 8. palantir/gradle-baseline#1524

3.45.2

Type Description Link
Fix Use old version-string scheme for Scala compiler target (jvm-1.8 instead of jvm-8). palantir/gradle-baseline#1528

3.45.3

Type Description Link
Fix Fix baseline-idea inspection configuration palantir/gradle-baseline#1530

3.46.0

Type Description Link
Improvement Idea highlights calls to incubating conjure endpoints palantir/gradle-baseline#1529

3.47.0

Type Description Link
Feature Adds a JavaTimeSystemDefaultTimeZone error-prone check to prevent uses of the system default time zone. palantir/gradle-baseline#1531

3.48.0

Automated release, no documented user facing changes

3.49.0

Type Description Link
Improvement Update spotless to 5.7.0 palantir/gradle-baseline#1534

3.50.0

Type Description Link
Improvement Disable --release flag when --add-exports is used palantir/gradle-baseline#1542

3.51.0

Type Description Link
Improvement checkstyle 8.36 -> 8.37, to benefit from some bugfixes to do with new java language features (e.g. records) palantir/gradle-baseline#1546

3.52.0

Type Description Link
Feature Add the apply plugin: 'com.palantir.baseline-enable-preview-flag' to your subprojects block to enable the usage of unreleased java features (e.g. records, switch expressions, var keyword etc).

Note, this plugin is a no-op on any project where you have a low sourceCompatibility.
palantir/gradle-baseline#1549

3.52.1

Type Description Link
Fix Fix regression in ./gradlew idea introduced in baseline 3.51.0 palantir/gradle-baseline#1551

3.53.0

Type Description Link
Improvement Add IncubatingMethod errorprone check, which prevents usage of conjure incubating APIs unless explicitly annotated. palantir/gradle-baseline#1554

3.53.1

Type Description Link
Fix Improve the DangerousJsonTypeInfoUsage check palantir/gradle-baseline#1557

3.54.0

Type Description Link
Improvement The baseline-class-unqiueness plugin is now applied by default. palantir/gradle-baseline#1553

3.55.0

Type Description Link
Feature com.palantir.baseline-format now understands how to format build.gradle files. This is opt-in by default, so you need to run ./gradlew format -Pcom.palantir.baseline-format.gradle-files=true to try it, or add this property to your gradle.properties if you want to lock it in. palantir/gradle-baseline#1561

3.56.0

Re-release after 3.55.0 failed to publish

3.57.0

Type Description Link
Improvement Add error-prone CompileTimeConstantViolatesLiskovSubstitution check to require consistent application of the @CompileTimeConstant annotation. palantir/gradle-baseline#1559

3.57.1

Type Description Link
Fix JavaCompile tasks should now get more build cache hits irrespective of the location of your repo on disk, as baseline-errorprone no longer injects an absolute path into errorproneOptions.excludedPaths. palantir/gradle-baseline#1568

3.58.0

Type Description Link
Fix Exclude generated sources from error-prone palantir/gradle-baseline#1571
Feature baseline-reproducibility validates that sourceCompatibility is set explicitly palantir/gradle-baseline#1574

3.58.1

Type Description Link
Fix Print more test logging output to avoid builds with long running tests getting terminated by circle ("context deadline exceeded"). palantir/gradle-baseline#1576

3.58.2

Type Description Link
Fix baseline-reproducibility no longer requires people to set sourceCompatibility if the publishing plugin is applied but nothing is published. (NOTE this requires Gradle 6.7+) palantir/gradle-baseline#1577

3.59.0

Automated release, no documented user facing changes

3.59.1

Type Description Link
Fix Eclipse formatting rules now match the spotless format for line wrapped asserts. palantir/gradle-baseline#1582

3.60.0

Type Description Link
Improvement checkExplicitSourceCompatabilityTask ignores projects without java source palantir/gradle-baseline#1584

3.61.0

Type Description Link
Improvement The checkImplicitDependencies suggestion message now includes the implementation configuration name. palantir/gradle-baseline#1591

3.62.0

Type Description Link
Improvement Implement error-prone ClassInitializationDeadlock check palantir/gradle-baseline#1598

3.63.0

Type Description Link
Feature Baseline now provides a com.palantir.baseline-encoding plugin to force UTF-8 in compilation tasks. palantir/gradle-baseline#1600

3.63.1

Type Description Link
Fix Disable WhitespaceAround Checkstyle rule when palantir-java-format is applied. palantir/gradle-baseline#1603

3.63.2

Type Description Link
Fix Let StrictUnusedVariable ignore record fields palantir/gradle-baseline#1602

3.63.3

Type Description Link
Fix Baseline correctly preserves the DOCTYPE when generating checkstyle.xml. palantir/gradle-baseline#1606

3.64.0

Automated release, no documented user facing changes

3.65.0

Type Description Link
Improvement Automatically fix the new ZoneIdOfZ check palantir/gradle-baseline#1621

3.66.0

Automated release, no documented user facing changes

3.67.0

Type Description Link
Improvement Disable inner import on classes that cause ErrorProne to fail palantir/gradle-baseline#1617
Fix Fix error message to reflect correct static constant palantir/gradle-baseline#1630

3.68.0

Type Description Link
Feature Add consistent logging errorprone rule palantir/gradle-baseline#1644

3.68.1

Type Description Link
Fix Fix false positive ClassInitializationDeadlock on .class access palantir/gradle-baseline#1654

3.69.0

Type Description Link
Improvement Improve the StrictUnusedVariable failure message palantir/gradle-baseline#1656

3.70.0

Type Description Link
Improvement Internal ImmutablesStyle annotations are now excluded from Intellij auto-imports and completion. palantir/gradle-baseline#1668

3.71.0

Type Description Link
Improvement A new error-prone rule PreferImmutableStreamExCollections converts the StreamEx toMap() -> toImmutableMap(), toImmutableList() and toImmutableSet() palantir/gradle-baseline#1670

3.72.0

Type Description Link
Improvement A new suggested error-prone rule AutoCloseableMustBeClosed annotates methods and constructors that return an AutoCloseable type as @MustBeClosed to allow for MustBeClosedChecker to perform analysis that resources are appropriately closed.

See https://errorprone.info/bugpattern/MustBeClosedChecker
palantir/gradle-baseline#1673

3.73.0

Type Description Link
Improvement Disable AutoCloseableMustBeClosed by default

Projects can choose to manually opt-in by enabling the AutoCloseableMustBeClosed check as part of their baseline configuration and running ./gradlew compileJava compileTestJava -PerrorProneApply=AutoCloseableMustBeClosed && ./gradlew format to apply the automated fixes.
palantir/gradle-baseline#1677

3.73.1

Type Description Link
Fix PreferImmutableStreamExCollections is disabled by default palantir/gradle-baseline#1681

3.74.0

Type Description Link
Improvement AutoCloseableMustBeClosed doesn't match method overrides palantir/gradle-baseline#1685

3.75.0

Type Description Link
Improvement Baseline applies the -parameters javac option for method parameter metadata palantir/gradle-baseline#1690

3.75.1

Type Description Link
Fix Fix IncubatingMethod check

The check was non-functional; the test did not catch this since it was using the wrong @Test annotation. Fixed both issues.
palantir/gradle-baseline#1698

3.76.0

Automated release, no documented user facing changes

3.77.0

Type Description Link
Improvement DangerousIdentityKey identifies key types which do not override equals or hashCode thus rely on reference comparison. palantir/gradle-baseline#1731

3.78.0

Type Description Link
Improvement DangerousIdentityKey validates additional hash-based collections palantir/gradle-baseline#1735

3.79.0

Type Description Link
Feature Add ConsistentInterfaceImplementation errorprone rule palantir/gradle-baseline#1712

3.80.0

Type Description Link
Improvement Upgrade gradle-errorprone-plugin to 2.0.1 palantir/gradle-baseline#1742

3.81.0

Type Description Link
Feature Adds the baseline-immutables plugin to enable incremental compilation for Immutables. palantir/gradle-baseline#1750

3.81.1

Type Description Link
Fix Build compiler args for com.palantir.baseline-immutables plugin lazily to avoid afterEvaluate ordering issues. palantir/gradle-baseline#1752

3.82.0

Automated release, no documented user facing changes

3.83.0

Type Description Link
Improvement Error prone check to ensure that Gradle CommandLineArgumentProviders are not written as lambdas, which causes them not to be cached. palantir/gradle-baseline#1757

3.84.0

Automated release, no documented user facing changes

3.85.0

Type Description Link
Improvement Replace our BracesRequired check+fix with upstream MissingBraces added in v2.7.0 palantir/gradle-baseline#1766

3.86.0

Type Description Link
Improvement Allow other plugins to register tasks to produce junit reports palantir/gradle-baseline#1764

3.87.0

Type Description Link
Improvement Feature/avoid hashmapint palantir/gradle-baseline#1773

3.88.0

Automated release, no documented user facing changes

3.88.1

Type Description Link
Fix Correctly expose junit-reports plugin palantir/gradle-baseline#1778

3.89.0

Type Description Link
Improvement Update ImmutablesStyleCollision check to require meta-annotations with source retention. palantir/gradle-baseline#1727

3.90.0

Automated release, no documented user facing changes

3.91.0

Type Description Link
Improvement Ban the var keyword via error-prone VarUsage palantir/gradle-baseline#1788

3.92.0

Type Description Link
Fix Fix VarUsage false positives in lambdas palantir/gradle-baseline#1789

3.93.0

Type Description Link
Improvement Implement ProxyNonConstantType palantir/gradle-baseline#1799

3.94.0

Type Description Link
Improvement Introduce BadAssert to ban assert statements in favor of better alternatives. palantir/gradle-baseline#1810

3.95.0

Type Description Link
Improvement Increase default test heap from 512m to 2g unless otherwise specified palantir/gradle-baseline#1813

3.96.0

Type Description Link
Improvement Upgrade ProxyNonConstantType to WARNING (from suggestion) palantir/gradle-baseline#1816

3.97.0

Type Description Link
Improvement Enable ConsistentOverrides by default palantir/gradle-baseline#1820

3.98.0

Type Description Link
Improvement ProxyNonConstantType documents describe suppression cases and steps palantir/gradle-baseline#1827

3.99.0-rc1

Type Description Link
Improvement Add Gradle 7 support palantir/gradle-baseline#1824

4.0.0

Type Description Link
Break Add Gradle 7 support. Increase minimum required Gradle version to 6.7. palantir/gradle-baseline#1824

4.1.0

Type Description Link
Fix Replace deprecated Report.enabled property palantir/gradle-baseline#1839

4.2.0

Type Description Link
Improvement Support the new SafeLogger API palantir/gradle-baseline#1834
Improvement Fix the formatting of baseline-class-uniqueness.lock files when more than one configuration is listed. A newline was missing. This may require running ./gradlew checkClassUniqueness --write-locks to update the files. palantir/gradle-baseline#1838

4.3.0

Type Description Link
Fix Allow PreferSafeLogger to migrate logger uses which include level-checks palantir/gradle-baseline#1842

4.4.0

Type Description Link
Fix Fix NPE from StrictUnusedVarible check for unused lambda parameters in static initializers. palantir/gradle-baseline#1843

4.5.0

Type Description Link
Improvement Implement automatic fixes for ImmutablesStyle palantir/gradle-baseline#1846

4.6.0

Type Description Link
Improvement Suppress existing ProxyNonConstantType failures to ease rollout palantir/gradle-baseline#1850

4.7.0

Type Description Link
Fix Fix PreferSafeLogger edge case that produced suggested fixes that didn't compile without human interaction. palantir/gradle-baseline#1851

4.8.0

Automated release, no documented user facing changes

4.9.0

Type Description Link
Improvement Add a StrictUnusedVariable exception for SafeLogger matching the existing exception for slf4j. Update CatchBlockLogException to be SafeLogger aware as well. palantir/gradle-baseline#1853

4.10.0

Type Description Link
Improvement Recommend the Witchcraft logging plugin when the sls-packaging distribution plugin is detected palantir/gradle-baseline#1863

4.11.0

Type Description Link
Improvement PreferSafeLogger produces suggestions which compile with >10 args palantir/gradle-baseline#1866

4.12.0

Automated release, no documented user facing changes

4.13.0

Type Description Link
Improvement witchcraft-logging functionality has been migrated to https://github.com/palantir/witchcraft-java-logging#gradle-plugin palantir/gradle-baseline#1870

4.14.0

Automated release, no documented user facing changes

4.15.0

Type Description Link
Improvement Automatically fix upstream LoopOverCharArray palantir/gradle-baseline#1873

4.16.0

Type Description Link
Improvement JavaDoc uses UTF-8 encoding by default palantir/gradle-baseline#1879

4.17.0

Type Description Link
Improvement Enforce PreferSafeLogger at WARNING level matching Slf4jLogsafeArgs and PreferSafeLoggingPreconditions. This doesn't apply to gradle plugins. palantir/gradle-baseline#1876

4.18.0

No documented user facing changes

4.19.0

Type Description Link
Fix Re-add null check for exclude rule palantir/gradle-baseline#1883

4.20.0

Type Description Link
Fix Fix missing setProperty error when using Gradle 6 palantir/gradle-baseline#1884

4.21.0

Type Description Link
Improvement error-prone LoggerInterpolationConsumesThrowable: Flag as an ERROR when logging statements fail to produce a stack trace due to excessive slf4j-style interpolation placeholders. palantir/gradle-baseline#1886

4.22.0

Type Description Link
Improvement Java compilation warnings and errors are no longer limited to the first 100 palantir/gradle-baseline#1890

4.23.0

Type Description Link
Improvement allow trailing comma in annotation arrays palantir/gradle-baseline#1904

4.24.0

Type Description Link
Improvement Increase the speed of the checkClassUniqueness task, especially in large repos, by adding caching of jar information.

Fix class names listed in the baseline-class-uniqueness.lock when the class or package name contains the substring class. In rare cases, this may require running ./gradlew checkClassUniqueness --write-locks to update the files.
palantir/gradle-baseline#1837

4.25.0

Type Description Link
Feature Scalastyle is not maintained anymore and config we had wasn't that useful anyway. palantir/gradle-baseline#1912

To enable or disable this check, please contact the maintainers of Excavator.

@changelog-app
Copy link

changelog-app bot commented Sep 15, 2021

Generate changelog in changelog/@unreleased

Type

  • Feature
  • Improvement
  • Fix
  • Break
  • Deprecation
  • Manual task
  • Migration

Description

Excavator: Upgrades Baseline to the latest version

excavator is a bot for automating changes across repositories.

Changes produced by the roomba/latest-baseline-oss check.

Release Notes

3.15.0

Type Description Link
Improvement StrictUnusedVariable checks for unused lambda parameters palantir/gradle-baseline#1355

3.15.1

Type Description Link
Fix Correctly handle converting lambda parameters from unused (_param) to used (param`), fixing a regression from 5.18.0. palantir/gradle-baseline#1358

3.16.0

Type Description Link
Improvement Rewrite single parameter lambdas that only invoke an zero param instance method to a method reference palantir/gradle-baseline#1359

3.17.0

Type Description Link
Feature Forbid implicit toString of Gradle Providers. palantir/gradle-baseline#1322

3.18.0

Type Description Link
Improvement checkUnusedDependencies works with JDK14 palantir/gradle-baseline#1367

3.19.0

Type Description Link
Improvement Convert multi param lambdas and local method invokations to method references palantir/gradle-baseline#1365
Improvement Upgarde error-prone to 2.4.0 to support latest jdks palantir/gradle-baseline#1370
Improvement Upgrade gradle-errorprone palantir/gradle-baseline#1371

3.20.0

Type Description Link
Improvement The baseline-error-prone plugin no longer applies SUGGESTION checks by default. palantir/gradle-baseline#1380

3.21.0

Type Description Link
Improvement Add an explicit dependency on org.ow2.asm:asm to ensure consumers can use JDK14 source compat palantir/gradle-baseline#1374

3.22.0

Type Description Link
Improvement Add error-prone check that forbids extending java.lang.Error (reports ERROR). Provides a fix to replace extends Error with extends RuntimeException for clearer contract to the consumers. palantir/gradle-baseline#1379

3.23.0

Type Description Link
Improvement The PreferCollectionConstructors error-prone check is now enabled by default. palantir/gradle-baseline#1386

3.24.0

Type Description Link
Improvement Running ./gradlew --write-locks should be faster now, as it doesn't update your baseline-class-uniqueness.lock file implicitly anymore. To update this, you need to run ./gradlew checkClassUniqueness --write-locks. palantir/gradle-baseline#1389
Improvement Add errorprone check to avoid accidentally undoing immutables Style meta-annotations. palantir/gradle-baseline#1396

3.25.0

Type Description Link
Improvement Upgrade checkstyle to 8.33 palantir/gradle-baseline#1404

3.25.1

Type Description Link
Fix Fix checkstyle config to conform to breaks made between 8.13 and 8.33 palantir/gradle-baseline#1409

3.26.0

Type Description Link
Improvement StrictUnusedVariable handles Java 14 records palantir/gradle-baseline#1412

3.27.0

Type Description Link
Improvement When using Eclipse's built-in formatter, method declarations are now wrapped on parameters, not on modifiers and return type. palantir/gradle-baseline#1416

3.28.0

Type Description Link
Improvement Adds the proper configuration files upon IntelliJ import of a gradle project for checkstyle and copyright.

This generates the following additional files:
- .idea/copyright/profiles_settings.xml
- an xml file under .idea/copyright/ per copyright file under .baseline/copyright
- .idea/checkstyle-idea.xml (and adds Checkstyle-IDEA to the external dependencies) if baseline-checkstyle is applied
- Either .idea/codeStyleSettings.xml or a .idea/codeStyles/ folder with the contents being copied from .baseline/idea
- If .baseline/idea/codeStyles is present, it will copy its contents, otherwise, it will fall back to .baseline/idea/intellij-java-palantir-style.xml as currently
- The fallback is using a legacy IntelliJ format and requires closing and reopening the project to be taken into account
palantir/gradle-baseline#1411

3.29.0

Type Description Link
Improvement The Slf4jLogsafeArgs ErrorProne rule now allows object arrays be passed as vararg argument to logging methods. palantir/gradle-baseline#1394
Improvement Adds OptionalOrElseGetValue error prone rule which recommends using Optional.orElse(value) over Optional.orElseGet(() -> value). palantir/gradle-baseline#1401

3.30.0

Type Description Link
Improvement Check unused dependencies task can be up to date palantir/gradle-baseline#1426

3.31.0

Type Description Link
Improvement check junit dependencies task can be skipped palantir/gradle-baseline#1427

3.32.0

Type Description Link
Improvement Disable UnnecessaryParentheses on Java 14 source to avoid false positives palantir/gradle-baseline#1413

3.32.1

Type Description Link
Fix Avoid rewriting lambdas into ambiguous references palantir/gradle-baseline#1432

3.33.0

Type Description Link
Improvement Disable FallThrough on Java 14 source to avoid false positives palantir/gradle-baseline#1442

3.34.0

Type Description Link
Feature Add TooManyArguments errorprone rule which prevents interfaces from having more than 10 arguments palantir/gradle-baseline#1447

3.35.0

Type Description Link
Improvement Implement PreferStaticLoggers error-prone check palantir/gradle-baseline#1446
Improvement Fix typo in TooManyArguments check palantir/gradle-baseline#1449
Fix When checkClassUniqueness fails, it will show the difference between the actual and expected lock file. palantir/gradle-baseline#1452

3.36.0

Type Description Link
Improvement Make TODO checkstyle rule case insensitive to catch lowercase TODO comments palantir/gradle-baseline#1456
Feature add LogsafeArgName errorprone rule which allows users to specify a list of argument names that must always be tagged as unsafe. palantir/gradle-baseline#1459

3.36.1

Type Description Link
Fix The LogsafeArgName now ignores arg names that are not literals. palantir/gradle-baseline#1465

3.36.2

Type Description Link
Fix baseline-exact-dependencies ensures compileCopy configuration it creates is not resolvable, so it can't be resolved accidentally. palantir/gradle-baseline#1469

3.37.0

Type Description Link
Improvement Error-prone DnsLookup check to prevent unintentional resolution palantir/gradle-baseline#1472

3.37.1

Type Description Link
Fix Fix com.palantir.baseline-exact-dependencies to work with GCV 1.26.0+. palantir/gradle-baseline#1487

3.38.0

Type Description Link
Improvement ImplicitPublicBuilderConstructor error prone rule palantir/gradle-baseline#1492

3.39.0

Type Description Link
Improvement checkstyle 8.33 -> 8.36.1, which enables support for new language features like records. palantir/gradle-baseline#1496

3.39.1

Type Description Link
Fix Fix InvocationHandlerDelegation false positive palantir/gradle-baseline#1499

3.40.0

Type Description Link
Improvement Add an Errorprone rule to check that all fields in Immutables builders have been initialized palantir/gradle-baseline#1504

3.40.1

Type Description Link
Fix Fix ImmutablesBuilderMissingInitialization in java15 palantir/gradle-baseline#1507

3.41.0

Type Description Link
Improvement error-prone UnnecessarilyQualified palantir/gradle-baseline#1510

3.42.0

Type Description Link
Improvement Disable intellij's missing slf4j placeholders inspection by default. palantir/gradle-baseline#1513

3.43.0

Type Description Link
Improvement Error-prone's BoxedPrimitiveEquality and ReferenceEquality checks will now fail the build, as we consider them errors not just warnings. palantir/gradle-baseline#1514

3.43.1

Type Description Link
Fix Fix null pointer exception when checking immutables builders that are returned from abstract methods palantir/gradle-baseline#1519

3.44.0

Type Description Link
Improvement Implement DeprecatedGuavaObjects error-prone migration palantir/gradle-baseline#1521
Improvement Implement error-prone ObjectsHashCodeUnnecessaryVarargs migration palantir/gradle-baseline#1522

3.45.0

Type Description Link
Improvement Automatically fix occurrences of ObjectsHashCodePrimitive palantir/gradle-baseline#1523

3.45.1

Type Description Link
Fix Always set target version for Scala compiler to JVM 8. palantir/gradle-baseline#1524

3.45.2

Type Description Link
Fix Use old version-string scheme for Scala compiler target (jvm-1.8 instead of jvm-8). palantir/gradle-baseline#1528

3.45.3

Type Description Link
Fix Fix baseline-idea inspection configuration palantir/gradle-baseline#1530

3.46.0

Type Description Link
Improvement Idea highlights calls to incubating conjure endpoints palantir/gradle-baseline#1529

3.47.0

Type Description Link
Feature Adds a JavaTimeSystemDefaultTimeZone error-prone check to prevent uses of the system default time zone. palantir/gradle-baseline#1531

3.48.0

Automated release, no documented user facing changes

3.49.0

Type Description Link
Improvement Update spotless to 5.7.0 palantir/gradle-baseline#1534

3.50.0

Type Description Link
Improvement Disable --release flag when --add-exports is used palantir/gradle-baseline#1542

3.51.0

Type Description Link
Improvement checkstyle 8.36 -> 8.37, to benefit from some bugfixes to do with new java language features (e.g. records) palantir/gradle-baseline#1546

3.52.0

Type Description Link
Feature Add the apply plugin: 'com.palantir.baseline-enable-preview-flag' to your subprojects block to enable the usage of unreleased java features (e.g. records, switch expressions, var keyword etc).

Note, this plugin is a no-op on any project where you have a low sourceCompatibility.
palantir/gradle-baseline#1549

3.52.1

Type Description Link
Fix Fix regression in ./gradlew idea introduced in baseline 3.51.0 palantir/gradle-baseline#1551

3.53.0

Type Description Link
Improvement Add IncubatingMethod errorprone check, which prevents usage of conjure incubating APIs unless explicitly annotated. palantir/gradle-baseline#1554

3.53.1

Type Description Link
Fix Improve the DangerousJsonTypeInfoUsage check palantir/gradle-baseline#1557

3.54.0

Type Description Link
Improvement The baseline-class-unqiueness plugin is now applied by default. palantir/gradle-baseline#1553

3.55.0

Type Description Link
Feature com.palantir.baseline-format now understands how to format build.gradle files. This is opt-in by default, so you need to run ./gradlew format -Pcom.palantir.baseline-format.gradle-files=true to try it, or add this property to your gradle.properties if you want to lock it in. palantir/gradle-baseline#1561

3.56.0

Re-release after 3.55.0 failed to publish

3.57.0

Type Description Link
Improvement Add error-prone CompileTimeConstantViolatesLiskovSubstitution check to require consistent application of the @CompileTimeConstant annotation. palantir/gradle-baseline#1559

3.57.1

Type Description Link
Fix JavaCompile tasks should now get more build cache hits irrespective of the location of your repo on disk, as baseline-errorprone no longer injects an absolute path into errorproneOptions.excludedPaths. palantir/gradle-baseline#1568

3.58.0

Type Description Link
Fix Exclude generated sources from error-prone palantir/gradle-baseline#1571
Feature baseline-reproducibility validates that sourceCompatibility is set explicitly palantir/gradle-baseline#1574

3.58.1

Type Description Link
Fix Print more test logging output to avoid builds with long running tests getting terminated by circle ("context deadline exceeded"). palantir/gradle-baseline#1576

3.58.2

Type Description Link
Fix baseline-reproducibility no longer requires people to set sourceCompatibility if the publishing plugin is applied but nothing is published. (NOTE this requires Gradle 6.7+) palantir/gradle-baseline#1577

3.59.0

Automated release, no documented user facing changes

3.59.1

Type Description Link
Fix Eclipse formatting rules now match the spotless format for line wrapped asserts. palantir/gradle-baseline#1582

3.60.0

Type Description Link
Improvement checkExplicitSourceCompatabilityTask ignores projects without java source palantir/gradle-baseline#1584

3.61.0

Type Description Link
Improvement The checkImplicitDependencies suggestion message now includes the implementation configuration name. palantir/gradle-baseline#1591

3.62.0

Type Description Link
Improvement Implement error-prone ClassInitializationDeadlock check palantir/gradle-baseline#1598

3.63.0

Type Description Link
Feature Baseline now provides a com.palantir.baseline-encoding plugin to force UTF-8 in compilation tasks. palantir/gradle-baseline#1600

3.63.1

Type Description Link
Fix Disable WhitespaceAround Checkstyle rule when palantir-java-format is applied. palantir/gradle-baseline#1603

3.63.2

Type Description Link
Fix Let StrictUnusedVariable ignore record fields palantir/gradle-baseline#1602

3.63.3

Type Description Link
Fix Baseline correctly preserves the DOCTYPE when generating checkstyle.xml. palantir/gradle-baseline#1606

3.64.0

Automated release, no documented user facing changes

3.65.0

Type Description Link
Improvement Automatically fix the new ZoneIdOfZ check palantir/gradle-baseline#1621

3.66.0

Automated release, no documented user facing changes

3.67.0

Type Description Link
Improvement Disable inner import on classes that cause ErrorProne to fail palantir/gradle-baseline#1617
Fix Fix error message to reflect correct static constant palantir/gradle-baseline#1630

3.68.0

Type Description Link
Feature Add consistent logging errorprone rule palantir/gradle-baseline#1644

3.68.1

Type Description Link
Fix Fix false positive ClassInitializationDeadlock on .class access palantir/gradle-baseline#1654

3.69.0

Type Description Link
Improvement Improve the StrictUnusedVariable failure message palantir/gradle-baseline#1656

3.70.0

Type Description Link
Improvement Internal ImmutablesStyle annotations are now excluded from Intellij auto-imports and completion. palantir/gradle-baseline#1668

3.71.0

Type Description Link
Improvement A new error-prone rule PreferImmutableStreamExCollections converts the StreamEx toMap() -> toImmutableMap(), toImmutableList() and toImmutableSet() palantir/gradle-baseline#1670

3.72.0

Type Description Link
Improvement A new suggested error-prone rule AutoCloseableMustBeClosed annotates methods and constructors that return an AutoCloseable type as @MustBeClosed to allow for MustBeClosedChecker to perform analysis that resources are appropriately closed.

See https://errorprone.info/bugpattern/MustBeClosedChecker
palantir/gradle-baseline#1673

3.73.0

Type Description Link
Improvement Disable AutoCloseableMustBeClosed by default

Projects can choose to manually opt-in by enabling the AutoCloseableMustBeClosed check as part of their baseline configuration and running ./gradlew compileJava compileTestJava -PerrorProneApply=AutoCloseableMustBeClosed && ./gradlew format to apply the automated fixes.
palantir/gradle-baseline#1677

3.73.1

Type Description Link
Fix PreferImmutableStreamExCollections is disabled by default palantir/gradle-baseline#1681

3.74.0

Type Description Link
Improvement AutoCloseableMustBeClosed doesn't match method overrides palantir/gradle-baseline#1685

3.75.0

Type Description Link
Improvement Baseline applies the -parameters javac option for method parameter metadata palantir/gradle-baseline#1690

3.75.1

Type Description Link
Fix Fix IncubatingMethod check

The check was non-functional; the test did not catch this since it was using the wrong @Test annotation. Fixed both issues.
palantir/gradle-baseline#1698

3.76.0

Automated release, no documented user facing changes

3.77.0

Type Description Link
Improvement DangerousIdentityKey identifies key types which do not override equals or hashCode thus rely on reference comparison. palantir/gradle-baseline#1731

3.78.0

Type Description Link
Improvement DangerousIdentityKey validates additional hash-based collections palantir/gradle-baseline#1735

3.79.0

Type Description Link
Feature Add ConsistentInterfaceImplementation errorprone rule palantir/gradle-baseline#1712

3.80.0

Type Description Link
Improvement Upgrade gradle-errorprone-plugin to 2.0.1 palantir/gradle-baseline#1742

3.81.0

Type Description Link
Feature Adds the baseline-immutables plugin to enable incremental compilation for Immutables. palantir/gradle-baseline#1750

3.81.1

Type Description Link
Fix Build compiler args for com.palantir.baseline-immutables plugin lazily to avoid afterEvaluate ordering issues. palantir/gradle-baseline#1752

3.82.0

Automated release, no documented user facing changes

3.83.0

Type Description Link
Improvement Error prone check to ensure that Gradle CommandLineArgumentProviders are not written as lambdas, which causes them not to be cached. palantir/gradle-baseline#1757

3.84.0

Automated release, no documented user facing changes

3.85.0

Type Description Link
Improvement Replace our BracesRequired check+fix with upstream MissingBraces added in v2.7.0 palantir/gradle-baseline#1766

3.86.0

Type Description Link
Improvement Allow other plugins to register tasks to produce junit reports palantir/gradle-baseline#1764

3.87.0

Type Description Link
Improvement Feature/avoid hashmapint palantir/gradle-baseline#1773

3.88.0

Automated release, no documented user facing changes

3.88.1

Type Description Link
Fix Correctly expose junit-reports plugin palantir/gradle-baseline#1778

3.89.0

Type Description Link
Improvement Update ImmutablesStyleCollision check to require meta-annotations with source retention. palantir/gradle-baseline#1727

3.90.0

Automated release, no documented user facing changes

3.91.0

Type Description Link
Improvement Ban the var keyword via error-prone VarUsage palantir/gradle-baseline#1788

3.92.0

Type Description Link
Fix Fix VarUsage false positives in lambdas palantir/gradle-baseline#1789

3.93.0

Type Description Link
Improvement Implement ProxyNonConstantType palantir/gradle-baseline#1799

3.94.0

Type Description Link
Improvement Introduce BadAssert to ban assert statements in favor of better alternatives. palantir/gradle-baseline#1810

3.95.0

Type Description Link
Improvement Increase default test heap from 512m to 2g unless otherwise specified palantir/gradle-baseline#1813

3.96.0

Type Description Link
Improvement Upgrade ProxyNonConstantType to WARNING (from suggestion) palantir/gradle-baseline#1816

3.97.0

Type Description Link
Improvement Enable ConsistentOverrides by default palantir/gradle-baseline#1820

3.98.0

Type Description Link
Improvement ProxyNonConstantType documents describe suppression cases and steps palantir/gradle-baseline#1827

3.99.0-rc1

Type Description Link
Improvement Add Gradle 7 support palantir/gradle-baseline#1824

4.0.0

Type Description Link
Break Add Gradle 7 support. Increase minimum required Gradle version to 6.7. palantir/gradle-baseline#1824

4.1.0

Type Description Link
Fix Replace deprecated Report.enabled property palantir/gradle-baseline#1839

4.2.0

Type Description Link
Improvement Support the new SafeLogger API palantir/gradle-baseline#1834
Improvement Fix the formatting of baseline-class-uniqueness.lock files when more than one configuration is listed. A newline was missing. This may require running ./gradlew checkClassUniqueness --write-locks to update the files. palantir/gradle-baseline#1838

4.3.0

Type Description Link
Fix Allow PreferSafeLogger to migrate logger uses which include level-checks palantir/gradle-baseline#1842

4.4.0

Type Description Link
Fix Fix NPE from StrictUnusedVarible check for unused lambda parameters in static initializers. palantir/gradle-baseline#1843

4.5.0

Type Description Link
Improvement Implement automatic fixes for ImmutablesStyle palantir/gradle-baseline#1846

4.6.0

Type Description Link
Improvement Suppress existing ProxyNonConstantType failures to ease rollout palantir/gradle-baseline#1850

4.7.0

Type Description Link
Fix Fix PreferSafeLogger edge case that produced suggested fixes that didn't compile without human interaction. palantir/gradle-baseline#1851

4.8.0

Automated release, no documented user facing changes

4.9.0

Type Description Link
Improvement Add a StrictUnusedVariable exception for SafeLogger matching the existing exception for slf4j. Update CatchBlockLogException to be SafeLogger aware as well. palantir/gradle-baseline#1853

4.10.0

Type Description Link
Improvement Recommend the Witchcraft logging plugin when the sls-packaging distribution plugin is detected palantir/gradle-baseline#1863

4.11.0

Type Description Link
Improvement PreferSafeLogger produces suggestions which compile with >10 args palantir/gradle-baseline#1866

4.12.0

Automated release, no documented user facing changes

4.13.0

Type Description Link
Improvement witchcraft-logging functionality has been migrated to https://github.com/palantir/witchcraft-java-logging#gradle-plugin palantir/gradle-baseline#1870

4.14.0

Automated release, no documented user facing changes

4.15.0

Type Description Link
Improvement Automatically fix upstream LoopOverCharArray palantir/gradle-baseline#1873

4.16.0

Type Description Link
Improvement JavaDoc uses UTF-8 encoding by default palantir/gradle-baseline#1879

4.17.0

Type Description Link
Improvement Enforce PreferSafeLogger at WARNING level matching Slf4jLogsafeArgs and PreferSafeLoggingPreconditions. This doesn't apply to gradle plugins. palantir/gradle-baseline#1876

4.18.0

No documented user facing changes

4.19.0

Type Description Link
Fix Re-add null check for exclude rule palantir/gradle-baseline#1883

4.20.0

Type Description Link
Fix Fix missing setProperty error when using Gradle 6 palantir/gradle-baseline#1884

4.21.0

Type Description Link
Improvement error-prone LoggerInterpolationConsumesThrowable: Flag as an ERROR when logging statements fail to produce a stack trace due to excessive slf4j-style interpolation placeholders. palantir/gradle-baseline#1886

4.22.0

Type Description Link
Improvement Java compilation warnings and errors are no longer limited to the first 100 palantir/gradle-baseline#1890

4.23.0

Type Description Link
Improvement allow trailing comma in annotation arrays palantir/gradle-baseline#1904

4.24.0

Type Description Link
Improvement Increase the speed of the checkClassUniqueness task, especially in large repos, by adding caching of jar information.

Fix class names listed in the baseline-class-uniqueness.lock when the class or package name contains the substring class. In rare cases, this may require running ./gradlew checkClassUniqueness --write-locks to update the files.
palantir/gradle-baseline#1837

4.25.0

Type Description Link
Feature Scalastyle is not maintained anymore and config we had wasn't that useful anyway. palantir/gradle-baseline#1912

To enable or disable this check, please contact the maintainers of Excavator.

Check the box to generate changelog(s)

  • Generate changelog entry

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant