Skip to content

chore(deps): bump eslint-plugin-boundaries from 6.0.2 to 7.0.1#587

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/eslint-plugin-boundaries-7.0.1
Open

chore(deps): bump eslint-plugin-boundaries from 6.0.2 to 7.0.1#587
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/eslint-plugin-boundaries-7.0.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 6, 2026

Copy link
Copy Markdown
Contributor

Bumps eslint-plugin-boundaries from 6.0.2 to 7.0.1.

Release notes

Sourced from eslint-plugin-boundaries's releases.

Fix capture in file descriptors

eslint-plugin v7.0.1

Fixed

  • fix: Upgrade @boundaries/elements to v3.0.1. File descriptors now honor a plain capture array without requiring basePattern. Previously, capture on a boundaries/files descriptor without basePattern always resulted in file.captured being null.

elements v3.0.1

Fixed

  • fix(#457): File descriptors now honor a plain capture array without requiring basePattern. Previously, capture on a boundaries/files descriptor without basePattern always resulted in file.captured being null.

Multi-dimensional Classification with File Descriptors

eslint-plugin v7.0.0

Highlights

Version 7 introduces the entity model: every file is now described along three independent dimensions — its element (architectural unit), its file (categorized on its own), and the module each dependency resolves to. This unlocks multi-dimensional classification and much more precise rules.

  • Upgrade with close to zero config changes. Everything new is additive and every v6 pattern keeps working, so you can adopt features one at a time, at your own pace. See the Breaking Changes below and the v6-to-v7 migration guide for the one exception.
  • File descriptors (boundaries/files). Categorize files (tests, styles, …) independently of the element they belong to. A file can carry multiple categories.
  • Multi-type elements. A single element can now match several types at once (opt-in via boundaries/elements-single-type: false).
  • Entity selectors in from / to. Match rules by element, file, and module properties together — e.g. scope a rule to test files, or to a module's origin.
  • Advanced array matching for types and categories. element.types and file.categories now accept query objects (anyOf, allOf, noneOf, equalsTo, atIndex, hasLength) instead of just plain patterns, enabling precise rules like "must have exactly these types" or "must not share a type with the other side" — the latter via the new expand operator, which pulls values from the opposite side of the rule at match time.
  • Precise control of external/core dependencies. Match by module origin and source directly in boundaries/dependencies with to.module.*.
  • Richer error messages. Custom message templates can reference the full entity ({{to.file.categories}}, {{to.module.source}}, …). Default messages now include entity information too — re-record any exact-string snapshot assertions.
  • Clearer vocabulary and rule names. The rules option is now policies (each with an effect), no-unknownno-unknown-dependencies (now file-aware), and no-ignoredno-ignored-dependencies. Old names/options keep working with a deprecation warning.

Breaking Changes:

  • If you use the strict config with eslint-disable comments referencing boundaries/no-ignored or boundaries/no-unknown, those comments stop suppressing violations (now reported under the new rule names) and may themselves trigger "unused eslint-disable directive" errors. Update the comments to the new rule names, or use the new strict-legacy config while you migrate them.
  • Default report messages changed and no-unknown-files now considers file descriptors. If you assert exact report strings in snapshots or CI, re-record them after upgrading.

Added

  • feat: Add entity abstraction layer. New EntityDescription type combines element, file, and module descriptions into a unified representation.
  • feat: Add new selector types: EntitySelector with element, file, and module sub-selectors; FileSelector with path, categories, captured, isIgnored, and isUnknown; ModuleSelector with origin, source, and internalPath.
  • feat: Add file descriptors system. A new files property in DescriptorsConfig allows categorizing files independently from elements. FileDescriptor supports pattern, category, and capture properties. FileDescription provides path, categories, captured, isIgnored, and isUnknown fields.
  • feat: Add module origin system. New ModuleDescription type with origin ("local" | "external" | "core"), source, and internalPath properties. New matcher methods: describeModule(), isModuleMatch(), getModuleSelectorMatching(), getModuleSelectorMatchingDescription().
  • feat: Support entity selectors in rules. The from and to properties of rule selectors now accept objects with element, file and module sub-selectors, allowing to match by element properties (type, types, captured, parent, etc.), file properties (path, categories, captured, etc.) and module properties (origin, source, internalPath). Legacy flat element selectors keep working and are converted internally.
  • feat: Add new data to custom message templates. The from and to template properties now expose element, file and module objects, enabling template variables such as {{from.element.types}}, {{to.file.categories}}, {{to.module.origin}} or {{to.module.source}}. Templates using the previous data ({{from.type}}, {{from.elementPath}}, {{from.internalPath}}, {{from.origin}}, etc.) keep working for backward compatibility.
  • feat: Support the partialMatch option in boundaries/elements descriptors (default: true). Set partialMatch: false to match the pattern against the full file path from the project root instead of a suffix. It is the recommended replacement for the deprecated mode: "full".
  • feat: Array-valued selector properties accept a new array query object with anyOf, allOf, noneOf, equalsTo (ordered, exact length), atIndex ({ index, matches }, negative index supported), and hasLength operators (AND-combined). The atIndex.matches field accepts a single value or an array (OR semantics). Supported by file selector categories and element selector types.
  • feat: anyOf, allOf, and noneOf items in element.types, file.categories, and parent.types / parents[*].types accept { expand: "{{ path }}" } objects in addition to plain micromatch pattern strings. The expand item resolves the Handlebars path against the template data at match time and spreads the resulting string array as individual matchers. This enables dynamic cross-side comparisons such as "to element must not share any type with from element" (noneOf: [{ expand: "{{ from.element.types }}" }]). Mixed static + expand items in the same array are supported. Empty-operand rules apply when the path resolves to null/undefined: empty noneOf always passes; empty anyOf never matches.
  • feat: Add element selector parents property: an array query over the full ancestor chain (parents[0] is the closest parent). parent is unchanged and still matches the closest parent.
  • feat: Add boundaries/legacy-warnings boolean setting (default true). When false, the plugin skips all legacy-pattern detection work — element descriptor deprecated-field checks and rule option deprecated-syntax scans — and suppresses the related deprecation warnings, reducing overhead at lint time.
  • feat: Add the boundaries/no-unknown-dependencies rule, the file-aware successor of boundaries/no-unknown. It reports a dependency when the target is unknown, configurable through the new require option ("any" | "element" | "file" | "all", default "any"), which selects which classification axes the target must be known on to be considered valid. With the default "any" it reports only when the target is unknown on both the element and file axes; "element" reports when the element is unknown, "file" reports when the file is unknown, and "all" reports when either axis is unknown.
  • feat: Add a strict-legacy config (exported as strictLegacy from eslint-plugin-boundaries/config, and available as plugin.configs["strict-legacy"]), identical to strict but enabling the deprecated boundaries/no-ignored and boundaries/no-unknown rule names instead of their boundaries/no-ignored-dependencies and boundaries/no-unknown-dependencies replacements. Use it temporarily if you use the strict config and have eslint-disable comments referencing the old rule names that you are not ready to migrate yet.

Changed

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [eslint-plugin-boundaries](https://github.com/javierbrea/eslint-plugin-boundaries) from 6.0.2 to 7.0.1.
- [Release notes](https://github.com/javierbrea/eslint-plugin-boundaries/releases)
- [Commits](javierbrea/eslint-plugin-boundaries@v6.0.2...v7.0.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-boundaries
  dependency-version: 7.0.1
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Jul 6, 2026
@pkg-pr-new

pkg-pr-new Bot commented Jul 6, 2026

Copy link
Copy Markdown

Open in StackBlitz

npm i https://pkg.pr.new/openworkflowdev/openworkflow/@openworkflow/cli@587
npm i https://pkg.pr.new/openworkflowdev/openworkflow/@openworkflow/dashboard@587
npm i https://pkg.pr.new/openworkflowdev/openworkflow@587

commit: 413463b

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants