github timbray/quamina v2.0.1

8 days ago

Release v2.0.1

Release Date: 2026-02-06

👩‍🎨 Improve

⚠️ BREAKING

📖 Commits

  • [c94c707] Merge branch 'main' into cache-traverse-nfa-start-state
  • [12c9d3c] Cache startState in nfaBuffers to reduce allocations
  • [9e8dd63] Merge branch 'main' into minor-release-prep
  • [eb5a957] build(deps): bump github/codeql-action from 4.32.1 to 4.32.2
  • [8c0a563] kaizen: prepare for 2.0.1
  • [371b5aa] build(deps): bump github/codeql-action from 4.32.0 to 4.32.1
  • [af952bb] Add comment explaining buffer reuse.
  • [6834538] Merge branch 'flatten-epsilon-targets' of https://github.com/sayrer/quamina into flatten-epsilon-targets
  • [d30a3fe] Eliminate allocations.
  • [2a4a95a] Merge branch 'main' into flatten-epsilon-targets
  • [e524cca] Flatten epsilon targets
  • [54f629a] kaizen: cleanup post-#482 (#482)
  • [8e319aa] kaizen: Merge pull request #482 from sayrer/pr/optimize-epsilon-closure (#482)
  • [36c1d51] Merge branch 'pr/optimize-epsilon-closure' of https://github.com/sayrer/quamina into pr/optimize-epsilon-closure
  • [b831773] forField is no longer a public API choice
  • [f06ee70] Merge branch 'main' into pr/optimize-epsilon-closure
  • [223908e] Merge branch 'pr/optimize-epsilon-closure' of https://github.com/sayrer/quamina into pr/optimize-epsilon-closure
  • [4afd88b] Handle synthetic entry states.
  • [bf3290a] Add some tests for epsilon closures.
  • [213360f] Adjust epsilonClosure.
  • [db66150] Rename precomputeEpsilonClosure to epsilonClosure.
  • [fc35cb4] Remove redundant 'compute' prefixes.
  • [1615df3] Use the name computeClosureForNfa.
  • [b82a6bf] Move new functions to epsi_closure.go, delete old ones.
  • [68ab383] Consolidate precomputeEpsilonClosures into NFA creation functions
  • [0347d00] Merge branch 'pr/optimize-epsilon-closure' of https://github.com/sayrer/quamina into pr/optimize-epsilon-closure
  • [8880e9b] Remove test path.
  • [71cd49a] kaizen: more memory-efficient SkinnyRuneTree
  • [2b32722] kaizen: more memory-efficient SkinnyRuneTree
  • [cc81a11] kaizen: more memory-efficient SkinnyRuneTree
  • [d9687e1] Merge branch 'main' into pr/optimize-epsilon-closure
  • [4bdcd84] Merge branch 'main' into pr/batch-arraypos-allocation
  • [2252458] Merge branch 'main' into pr/optimize-epsilon-closure
  • [6450d21] Merge origin/main into pr/optimize-epsilon-closure
  • [612e44f] Merge branch 'main' into dependabot/github_actions/github/codeql-action-4.32.0
  • [cb44e97] This test is no longer needed.
  • [10e45a0] Fix shellstyle benchmark to check return values and remove non-matching event
  • [9576e08] Changes made:**
  • [aa17200] Preallocate in transmap.all() because the size is known.
  • [34fc88d] Fix lint.
  • [e14ee66] Lazily initialize nfaBuffers fields where possible.
  • [ba758fe] build(deps): bump github/codeql-action from 4.31.11 to 4.32.0
  • [4cf827d] Use batch allocation for ArrayTrail slices
  • [c8e8bbe] Improve the comments a little.
  • [397b7b1] Add a bench just for transmap.
  • [590e84d] Add error checking to the new benchmark.
  • [897e194] Add a pool to coreMatcher.
  • [1577a4f] Merge main.
  • [0d98f29] Merge branch 'main' into dependabot/github_actions/github/codeql-action-4.31.11
  • [7b8bd5e] Merge branch 'main' into dependabot/github_actions/actions/checkout-6.0.2
  • [cdbe478] build(deps): bump github/codeql-action from 4.31.10 to 4.31.11
  • [187db0d] Merge branch 'main' into dependabot/github_actions/actions/checkout-6.0.2
  • [7d9d522] Merge main.
  • [fbf6088] Rename dfaTransitions to transitionsBuf for clarity
  • [f05309f] Refactor benchmark to use loops for all pattern categories
  • [0446076] Add comprehensive shellstyle benchmark with CJK and emoji
  • [6991dcd] Pool DFA transitions buffer in nfaBuffers to reduce allocations
  • [f5774b5] Pool result buffer in nfaBuffers to reduce allocations
  • [e5658c7] Pool transmap buffer in nfaBuffers to reduce allocations
  • [1b5db07] build(deps): bump actions/checkout from 6.0.1 to 6.0.2
  • [a47b374] kaizen: new b.Loop() flavored benchmark (#471)

Don't miss a new quamina release

NewReleases is sending notifications on new releases.