Skip to content

Releases: skuzzle/restrict-imports-enforcer-rule

2.0.0

02 Dec 08:53
Compare
Choose a tag to compare

Maven Central JavaDoc

This is a new major release. Upgrading the version might break your build if you don't adjust your configuration
according to the changes mentioned below. Please carefully read the changes section when you are upgrading from 1.x.y.

Changes

(Note: Review carefully, as those might break your existing build when updating from version 1.x.y)

  • #28 Test code is always analyzed unless <includeTestCode> option is configured false.
  • #49 Simplify and formalize "pattern specificity".
  • #53 Package patterns now implicitly match static imports.
  • Declaration variant no longer supported: <restrictImports implementation="de.skuzzle.enforcer.restrictimports.RestrictImports"> (deprecated since 0.12.0).
  • Declaration variant no longer supported: <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> (deprecated since 1.4.0).

Features

  • #50 Introduce -Drestrictimports.skip and -Drestrictimports.failBuild command line options.
  • Added <parallel> (-Drestrictimports.parallel) option to run the whole analysis in parallel (Experimental feature, feedback welcome).
  • Improve formatting of the analysis result.

Bug fixes

  • #52 Whitespaces in plugin configuration and source files are handled more gracefully.

Maven Central coordinates for this release:

<dependency>
    <groupId>de.skuzzle.enforcer</groupId>
    <artifactId>restrict-imports-enforcer-rule</artifactId>
    <version>2.0.0</version>
</dependency>

1.4.0

24 Oct 08:44
Compare
Choose a tag to compare

Maven Central JavaDoc

Features

  • Allow simple declaration as rule via <RestrictImports> instead of requiring fully qualified class name.
  • Build and test against enforcer-api:3.0.0 (coming from 3.0.0-M1)

Deprecations

  • Deprecated full qualified declaration as <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports">
    in favor of just <RestrictImports>. Using the deprecated declaration will print a warning during the build. The
    deprecated declaration format will be removed with the next major release, that is 2.x.x

Otherwise Noteworthy

  • #38 Removed Guava dependency altogether.
  • Removed the changelog from the main README. Notable changes for each release are now attached directly to each GitHub
    release. Existing release notes up to version 1.3.0 can still be found in CHANGELOG_LEGACY.md file.

Maven Central coordinates for this release:

<dependency>
    <groupId>de.skuzzle.enforcer</groupId>
    <artifactId>restrict-imports-enforcer-rule</artifactId>
    <version>1.4.0</version>
</dependency>

1.3.0

29 Aug 09:23
Compare
Choose a tag to compare
  • 47: Allow to exclude source roots

Maven Central coordinates for this release:

<dependency>
    <groupId>de.skuzzle.enforcer</groupId>
    <artifactId>restrict-imports-enforcer-rule</artifactId>
    <version>1.3.0</version>
</dependency>

1.2.0

03 Jun 09:40
Compare
Choose a tag to compare
  • 44: Bump guava to 30.1.1-jre
  • 43: Allow to run on test code only

1.1.0

21 Feb 06:25
Compare
Choose a tag to compare
  • 42: Add some more configuration consistency checks
  • Update section about Versioning and Compatibility

1.0.1

26 Jun 15:47
Compare
Choose a tag to compare

Changelog

  • #39: Handle double semicolon after import statement
  • #37: Fix version incompatibility
  • Display analysis duration

1.0.0

30 May 09:20
Compare
Choose a tag to compare

Changelog

  • #35: Recognize multiple import statements on same line in groovy sources
  • Remove commentLineBufferSize

0.18.0

14 May 12:00
Compare
Choose a tag to compare

Changelog

  • Fix possible file resource leak while iterating source files
  • Remove sourceFileCharset
  • Soft-Remove commentLineBufferSize
  • #34: Recognize multiple import statements on same line in java sources
  • #33: Possibility to forbid wildcard imports
  • #31: Results show whether a match occurred in a test file
  • #30: Separate import parsing and banned import analysis

0.17.0

14 May 12:00
Compare
Choose a tag to compare

Changelog

  • #29: SPI for SourceLineParser implementations
  • #27: Introduce failBuild and skip options
  • Fix mysterious case where "* would be recognized as the beginning of a block comment
  • Introduce changelog to readme
  • Add contribution guide lines

0.16.0

14 May 11:59
Compare
Choose a tag to compare

Changelog

  • #26: Deprecate commentLineBufferSize parameter and replaced with dynamically growing buffer
  • #25: Add additional configuration sanity checks
  • #23: Soft-Remove sourceFileCharset parameter and always use ${project.build.sourceEncoding} now