Skip to content

Releases: RunDevelopment/regexp-ast-analysis

v0.7.1

13 Sep 17:39
Compare
Choose a tag to compare

Fixed

  • Some bug fixes for UnicodeSet.

v0.7.0...v0.7.1

v0.7.0

05 Sep 14:33
Compare
Choose a tag to compare

Breaking

  • Upgraded dependencies to @eslint-community/regexpp v4.8.0 and refa v0.12.0.
  • is{Potentially,}{Empty,ZeroLength}, isEmptyBackreference, getLengthRange, and isLengthRangeMinZero now require a flags argument.
  • Changed the semantics of matchesAllCharacters.

Added

  • Added support for the v flag.
    • toUnicodeSet is the new toCharSet.
    • hasStrings will return whether a character element contains strings.
  • getConsumedChars will return all characters consumed by an element.
  • Chars.maxChar(flags) will return the maximum character (either 0xFFFF or 0x10FFFF) depending on the given flags.

v0.6.0...v0.7.0

v0.6.0

30 Mar 15:08
Compare
Choose a tag to compare

Breaking

  • Upgraded dependencies to @eslint-community/regexpp v4.5.0 and refa v0.11.0.

Added

  • getClosestAncestor now supports any number of arguments.

v0.5.1...v0.6.0

v0.5.1

18 Apr 11:27
Compare
Choose a tag to compare

Fixed

  • Fixed getLongestPrefix not caching correctly.

v0.5.0...v0.5.1

v0.5.0

18 Apr 10:02
Compare
Choose a tag to compare

Breaking

  • getLengthRange will now throw a RangeError instead of returning undefined for empty arrays.

Added

  • Added isLengthRangeMinZero function that is equivalent to getLengthRange(e).min === 0 but implemented more efficiently.
  • Added onlyInside option for getLongest function.

v0.4.1...v0.5.0

v0.4.1

17 Apr 11:00
Compare
Choose a tag to compare

Improved

  • canReorder can now prove more alternatives to be safe to reorder.
  • canReorder will now create a cache if none is provided.

v0.4.0...v0.4.1

v0.4.0

16 Apr 16:14
Compare
Choose a tag to compare

Breaking

  • Dropped support for NodeJS 10. The library will likely still work on this NodeJS version, but it won't be tested and NodeJS-10-specific bugs will be rejected.

Added

  • Added containsCapturingGroup.
  • Added getLongestPrefix.
  • Added canReorder.

v0.3.0...v0.4.0

v0.3.0

04 Sep 14:19
Compare
Choose a tag to compare

Breaking

  • The FirstLookChar, FirstFullyConsumedChar, and FirstPartiallyConsumedChar interfaces are now immutable.

Added

  • Added transparent caching for all functions taking flags.
  • Added FirstConsumedChars and FirstLookChars namespaces. They contain methods for working with FirstLookChars and FirstConsumedChars.
  • Added FollowOperations.continueOutside to improve analysis inside lookaround assertions.
  • Added FollowEndReason type.
  • followPaths now supports alternatives as the start element.
  • The getFirst{Consumed,}Char* functions now supports alternatives as the after-this element.

Improved

  • The getFirst{Consumed,}Char* functions can now look outside of lookarounds to return better results.
  • Improved how the exact property of FirstConsumedChars is determined. getFirstConsumedChar will now return better results.
  • Improved documentation.
  • Lots of internal refactoring and improvements.

Fixed

  • Fixed that getFirstConsumedChar sometimes returned partially consumed chars with trivially rejecting looks instead of a fully consumed char.

v0.2.4...v0.3.0

v0.2.4

12 Aug 12:49
Compare
Choose a tag to compare

Fixed

  • Fixed getFirst{Consumed,}Char* functions taking exponential time for some word boundary assertions.

v0.2.3...v0.2.4

v0.2.3

15 Jul 13:17
Compare
Choose a tag to compare

Changed

  • Updated refa and regexpp.

v0.2.2...v0.2.3