Skip to content

Releases: javierbrea/eslint-plugin-boundaries

Support Node.js v16

29 May 09:02
a7fc5b0
Compare
Choose a tag to compare

Added

  • chore(deps): Add Node.js v16.x to engines and run tests using it

Changed

  • chore(deps): Update devDependencies
  • chore: Migrate Sonar project

basePattern and baseCapture options

25 Mar 18:47
6f407b2
Compare
Choose a tag to compare

Added

  • feat: Add basePattern and baseCapture options to elements settings (#97)

Changed

  • chore(deps): Update dependencies

Fixed

  • fix: Avoid crash when import path is broken (#96)

Support categories and file elements

02 Feb 06:29
4dfa7d5
Compare
Choose a tag to compare

Added

  • feat: Support multiple levels of categorization and any type of project structure (#75)
  • feat: Support elements as files (#75)
  • feat(settings): Added support for import/resolver setting
  • feat(options): Support micromatch patterns in rules options (#11, #10)
  • feat: Add debug mode
  • test: Add more than 500 tests using different project structure examples, with different categorization levels, elements as folders, as files, etc.
  • test: Add one test for each rules docs example
  • chore: Run tests on Windows OS again (#74)

Changed

  • feat(settings): Deprecated boundaries/types setting. boundaries/elements should be used instead. If it is not present, boundaries/types will be used as fallback
  • feat(rules): Rename allowed-types rule into element-types (now it can be used to allow/disallow). Change the format of rule options
  • feat(rules): Rename no-external rule into external (now it can be used to allow/disallow). Change the format of rule options
  • feat(rules): Change the format of entry-point rule options (now it support allow/disallow format)
  • feat(rules): Rename no-import-ignored rule into no-ignored (the majority of the plugin rules are referred to import statements, so it is not necessary to specify it in the rule name)
  • feat(rules): Rename no-import-not-recognized-types rule into no-unknown
  • feat(rules): Rename prefer-recognized-types rule into no-unknown-files
  • refactor(core): Use eslint-module-utils/resolve to get files and import paths. Use micromatch to match settings and options. Adapt the whole core to this new approach

Fixed

  • fix: Support scoped packages in external rule (#59)

Removed

  • feat(settings): Removed boundaries/alias setting

BREAKING CHANGES

  • Removed boundaries/alias setting. import/resolver has to be used instead
  • Renamed allowed-types rule into element-types (now it can be used to allow/disallow). Changed the format of rule options
  • Changed the format of entry-point rule options (now it support allow/disallow format)
  • Renamed no-external rule into external (now it can be used to allow/disallow). Changed the format of rule options
  • Renamed no-import-ignored rule into no-ignored (the majority of the plugin rules are referred to import statements, so it is not necessary to specify it in the rule name)
  • Renamed no-import-not-recognized-types rule into no-unknown
  • Renamed prefer-recognized-types rule into no-unknown-files

Read the migration guide for further info about how to migrate your v1.x configuration

Support array of patterns in elements setting

30 Jan 11:12
8f477d4
Compare
Choose a tag to compare

Refer to v2.0.0 version changelog for further details

Added

  • feat: debug files and imports info when ESLINT_PLUGIN_BOUNDARIES_DEBUG environment variable exists
  • feat: mode option in elements setting now also accepts full as value. Pattern will try to match the full path in that case.
  • feat: support defining multiple micromatch patterns in an array in the pattern property of elements setting.

Fix external packages recognition

26 Jan 18:59
0775c05
Compare
Choose a tag to compare
Pre-release

Refer to v2.0.0 version changelog for further details

Fixed

  • fix: node_modules packages were being recognized as local

Publish resolver-legacy-alias folder

26 Jan 17:46
aa9c7f1
Compare
Choose a tag to compare
Pre-release
  • Refer to v2.0.0 version changelog for further details

Fixed

  • Publish resolver-legacy-alias folder

v2.0.0 pre-release

26 Jan 17:36
5ac0e33
Compare
Choose a tag to compare
v2.0.0 pre-release Pre-release
Pre-release
  • Refer to v2.0.0 version changelog for further details

Fix no-external rule crash

11 Dec 18:53
857ad38
Compare
Choose a tag to compare

Added

  • chore(deps): Add Node.js 10.x support while it is in maintenance

Changed

  • chore(ci-cd): Migrate build and publish pipelines to github actions
  • chore(deps): Update dependencies

Fixed

  • fix(#65): Fixed error on dependency scanning when dependencyInfo.name is null (thanks to @skurfuerst)

Specifiers option in no-external rule

12 Nov 18:44
acc1f17
Compare
Choose a tag to compare

Added

  • feat(no-external): Allow forbid importing external libraries specifiers
  • chore(ci-cd): Add github workflows for publishing to gpr and check package version
  • chore(engines): Add node v15.x to engines

Fixed

  • fix(no-external): Do not allow importing subfolders of forbidden external libraries

Windows support

18 Oct 10:22
e2d4df1
Compare
Choose a tag to compare

Added

  • chore: Run tests on Windows OS in pipelines

Fixed

  • fix: Plugin was not working properly on Windows

Changed

  • chore(deps): Update dependencies