NaturalIntelligence/path-expression-matcher
Last release:
path-expression-matcher is a JavaScript utility for efficient path tracking and pattern matching while parsing hierarchical data. It lets you define path expressions and then match the current parse path against patterns, including wildcard segments, deep wildcards, attribute conditions, position selectors, and XML/JSON/YAML-or-any-parser style namespaces.
Project status
- The source appears actively maintained, with an upstream push on 2026-07-30 and subsequent tagged updates in 2026 (v1.6.0 on 2026-06-20, v1.6.2 on 2026-07-08).
- Update cadence looks steady for 2026, roughly every 2 months (2026-04-10 to 2026-06-20) and then on the order of weeks (2026-06-20 to 2026-07-08), suggesting ongoing development rather than a freeze.
AI summary generated
Recent updates
v1.6.2
This release is version bump to v1.6.2, but no release notes were provided by the publisher. The code diff shows a new exported read-only view type (MatcherView) plus internal changes to how sibling tracking state is stored and snapshotted in Matcher.
Featuresv1.6.0
v1.6.0 introduces new support for retaining selected ancestor attributes across `Matcher.push()` calls via `{ keep: [...] }`, and adds APIs to query those retained values (`getAnyParentAttr`, `hasAnyParentAttr`). It also optimizes deep-wildcard matching in `ExpressionSet` by indexing deep-wildcard expressions by their terminal tag to reduce matching work.
Featuresv1.5.0
The release notes for v1.5.0 were not provided by the publisher, so there is no documented information about new features, fixes, or breaking changes. Developers should treat this upgrade as potentially impactful and verify behavior and compatibility against the codebase or changelog/release diff before deploying.
v1.4.0
v1.4.0 introduces a new API, ExpressionSet.findMatch(matcher), which returns the first Expression that matches the matcher's current path using the set's existing indexing strategy. The runtime implementation also changes Expression to accept an optional third constructor argument (data) and store it on the instance. Release notes for v1.4.0 were not provided, so the changes below are inferred directly from the code diff.
Featuresv1.3.0
This release introduces a new ExpressionSet API intended to speed up bulk matching by indexing expressions for faster per-tag checks. It also adds Matcher.matchesAny() (and ReadOnlyMatcher.matchesAny()) as a convenience wrapper, and updates the library exports to include ExpressionSet. No release notes were provided, so the changes below may be surprising to existing users.
Featuresv1.2.1
Release v1.2.1 was published on 2026-04-03, but the publisher did not provide release notes. Without documented changes, developers should review the tagged commit diff and changelog in the repository before upgrading to identify any API, configuration, or behavior changes.