Skip to content

Latest commit

Β 

History

History
412 lines (199 loc) Β· 18.8 KB

CHANGELOG.md

File metadata and controls

412 lines (199 loc) Β· 18.8 KB

2.4.1 (2025-01-13)

2.4.0 (2025-01-12)

Features

2.3.0 (2025-01-12)

Features

2.2.0 (2025-01-12)

Features

2.1.0 (2025-01-12)

Features

  • added inspection functions (c8baf33)

2.0.0 (2025-01-12)

  • Merge pull request #8 from Demali-876/breaking-change/transitions_removal (d0a485b)

BREAKING CHANGES

  • removal of transitions from compiled regex type

1.26.1 (2025-01-12)

1.26.0 (2025-01-12)

Features

1.25.0 (2025-01-12)

Features

  • add NFA formatter for better debug output (5c4984b)

1.24.1 (2025-01-03)

Bug Fixes

  • compiler: Concatenation Bug Prelim fix (9965280)

1.24.0 (2024-12-09)

Features

  • regex: improve matching behavior and public types (a111a0b)

BREAKING CHANGES

  • regex: match positions and greedy behavior now work differently

1.23.1 (2024-12-05)

1.23.0 (2024-12-03)

Performance Improvements

  • matcher: TBR Search implementation (353d579)

1.22.1 (2024-11-28)

1.22.0 (2024-11-28)

Features

  • compiler: sort transition table (365dc1a)
  • matcher: greedy matching by default (ba34bd8)

1.21.0 (2024-11-23)

Performance Improvements

  • Extensions: Removal of redundancies (6a0d2ad)

1.20.5 (2024-11-17)

1.20.4 (2024-11-17)

1.20.3 (2024-11-17)

Bug Fixes

1.20.2 (2024-11-17)

Bug Fixes

1.20.1 (2024-11-17)

Bug Fixes

  • Matcher: Handle range case transitions (fbd5ea7)

1.20.0 (2024-11-17)

Features

  • Extensions: compareChars() and isInRange() additions (3dda9ac)

1.19.5 (2024-11-16)

1.19.4 (2024-11-16)

1.19.3 (2024-11-16)

1.19.2 (2024-11-16)

1.19.1 (2024-11-16)

Bug Fixes

1.19.0 (2024-11-16)

Performance Improvements

1.18.0 (2024-11-16)

Features

  • Regex API: DefaulT debug behaviour (2c1796a)

1.17.0 (2024-11-15)

Features

  • test API: testfindall() function (33b4e06)

1.16.0 (2024-11-15)

Features

  • test API: testsearch() function (4b9c4e5)

1.15.0 (2024-11-15)

Features

  • Regex API: findIter and enableDebug api function (bc78f20)
  • Regex API: findIter() api function (60e067c)

1.14.0 (2024-11-15)

Features

  • Regex API: findAll() api function (18c8991)
  • Regex API: seacrh api function (6a1042b)

1.13.0 (2024-11-15)

Features

  • Matcher: findall function implementented (c789fc7)
  • Matcher: findIter function implementented (3f7b09b)
  • Regex API: Compilation debugging (92ccda0)

1.12.0 (2024-11-15)

Features

  • Matcher: search function implementented (76887ab)

1.11.0 (2024-11-15)

Performance Improvements

  • Types: Assertion Node improvements (a7d9233)

1.10.0 (2024-11-14)

Performance Improvements

  • complier: assertion improvements (eb97d9a)

1.9.0 (2024-11-13)

Performance Improvements

  • complier: assertion collection and group indexing (dffd422)

1.8.0 (2024-11-13)

Features

  • Types: assertion collection (4ca1984)

1.7.0 (2024-11-12)

Features

  • Extension: new help function + refractor (6e162e5)

1.6.0 (2024-11-12)

Performance Improvements

  • complier: state compression for alternation (b628934)

1.5.0 (2024-11-12)

Features

  • matcher: Introduction of debug mode (768fa3f)

1.4.0 (2024-11-12)

Features

  • lexer: improve validation and error handling (883a409)

1.3.0 (2024-11-06)

Features

  • Extensions: substring text function. (9b8a8f0)
  • lib: Regex class (b754e3d)

Performance Improvements

  • Compiler: improved handling of edge cases. (d43281b)

1.2.0 (2024-11-05)

Features

  • Compiler: Complete reversion to Thompson Construction (43368c8)

1.1.0 (2024-11-04)

Bug Fixes

  • types: concatenation removed as a token type. (a13655a)

Features

  • Extensions: introduction of getMaxState() function (dbf21d5)

1.0.4 (2024-11-04)

Bug Fixes

  • Compiler: Revertion to thompson's construction (df7e1f2)

1.0.3 (2024-11-04)

Bug Fixes

  • lexer: Nested Group and quantifier support (22764dc)
  • parser: Nested Group and quantifier support (e5c41fb)

1.0.2 (2024-11-04)

Bug Fixes

  • parser: General improvements (7337fca)

1.0.1 (2024-11-04)

Bug Fixes

  • lexer: Token stream fix (53f76cc)

1.0.0 (2024-11-03)

  • refactor!: restructure repository and update compiler version (786d76b)

BREAKING CHANGES

  • The repository structure and file names have changed. Additionally, the compiler has been reverted to an older version.

0.3.0 (2024-11-03)

Features

  • calculation of complement range given meta char (0a1b793)

0.2.0 (2024-11-03)

Features

  • support for nested groups and quantifiers (f4200ae)

0.1.0 (2024-10-29)

Bug Fixes

  • setup semantic release workflow (823d429)
  • setup semantic release workflow (a7addf2)
  • setup semantic release workflow (8dffe34)

Features

  • add semantic release configuration (9cbf0ab)
  • engine: change log automation (bf83e73)
  • parser: add nested quantifier support (f8055a6)

[0.0.0] Unreleased - 10-03-2024

πŸš€ New Features

  • Flattened AST Structure
    • #420f70a Date: 10-07-2024 | New: Introduced a new, flattened AST structure to simplify regex expression handling. This includes using lists for concatenations and alternations, reducing the depth of nested expressions.
  • Single Group Token
    • #420f70a Date: 10-07-2024 | New: Introduced a unified #Group token that now encapsulates the group modifier and sub-expression, streamlining group handling in both the lexer and the parser.
  • Capture Index Tracking
    • #223b153 Implemented capture group index tracking for pre-matching optimization.

πŸ› Bug Fixes

  • Token Position Implementation

    • #10a8c13 Date: 09-17-2024 | Fix: Token position now accounts for instances and tokens that span ranges.
  • Lazy Greedy Possessive Quantifiers (Lexer)

    • #6279c34 Date: 10-03-2024 | Fix: Lexer correctly identifies lazy, possessive, and greedy quantifiers, correctly applying ranges to characters, character classes, and groups.
  • Lazy Greedy Possessive Quantifiers (Parser and Compiler)

    • #bdc0aab Date: 10-03-2024 | Fixes (Multiple):
      • Parser Fixes:
        • Modified to handle the new QuantifierType structure, which includes min, max, and mode.
        • Ensured that the quantifier modes parsed are those already set by the lexer.
      • Compiler Fixes:
        • Refactored to directly use the new QuantifierType structure (min, max, mode) in all quantifier cases.
        • Improved handling of infinite upper bounds (max = null) and optional repetitions in bounded ranges.

πŸ”„ Changes

  • Reduced Token Count in Lexer
    • #420f70a **Date: 10-07-2024 | Improved:**Reduced the number of tokens in the lexer by eliminating #GroupStart and #GroupEnd in favor of a single #Group token, simplifying group handling during the parsing process.
  • Unified Group Token
    • #420f70a Date: 10-07-2024 | Improved : Removed the standalone GroupModifierType token, integrating it into the #Group token type.
  • NextToken() Improvements
    • #420f70a Date: 10-07-2024 | Improved: Removed redundant cases.
  • Complete Parser and Compiler Redesign
    • Optimized NFA generation using Thompson's Construction Algorithm.
      • Complete Parser rework using new ast structure.
      • Introduction of Parser Errors. Parser now produces an AST or an Error.

❌ Removed

  • #6279c34 Date: 10-03-2024 | Removed: Removed #QuantifierRange token. All ranges are now handled by the #Quantifier token.
  • #223b153 Eliminated Redundant Tokens