Release v2.0.2
Release Date: 2026-03-16
๐งน Chore
- [a60e7bb] remove redundant package specifier from benchmark command
- [55c3185] update module path to v2
โ ๏ธ BREAKING
๐ Commits
- [a60e7bb] chore: remove redundant package specifier from benchmark command
- [55c3185] chore: update module path to v2
- [7202b18] build(deps): bump github/codeql-action from 4.32.5 to 4.32.6
- [13e7313] Merge branch 'main' into dependabot/github_actions/actions/dependency-review-action-4.9.0
- [7a67efc] build(deps): bump actions/dependency-review-action from 4.8.3 to 4.9.0
- [3918720] Merge branch 'main' into dependabot/github_actions/github/codeql-action-4.32.5
- [a232cc7] build(deps): bump github/codeql-action from 4.32.4 to 4.32.5
- [18cf198] build(deps): bump benchmark-action/github-action-benchmark
- [c2f9c61] Add inline comments explaining each optimization
- [137fe99] Add multi-star test cases to TestNfa2Dfa
- [ad771da] Reuse rawStates slice across byte loop in n2dNode
- [b04a2f5] Merge intern() maps into single entries map
- [288402d] Use PutUint64 for intern() key encoding
- [dccf1ba] Batch unpack/pack in n2dNode for 5-9x nfa2Dfa speedup
- [844ee46] Optimize intern() to eliminate per-call allocations
- [1e703a1] Merge branch 'main' into dedup_fix
- [8d2db86] Address review comments
- [985ed68] Merge branch 'main' into dependabot/github_actions/actions/setup-go-6.3.0
- [3237000] Merge branch 'main' into bench-cleanup
- [8daadb7] build(deps): bump actions/setup-go from 6.2.0 to 6.3.0
- [b954225] Remove noisy fmt.Printf logging from BenchmarkShellStyleBuildTime
- [4a829a5] Replace map with generation-based tracking in flattenEpsilonTargets
- [8b40a4f] Replace closure set map with generation-based visited tracking
- [deca955] Revert shared lastVisitedGen for dedup; restore separate closureRepGen
- [684a093] Reuse single generation field for both NFA walk and dedup
- [d2563c6] Replace closure dedup generation fields with local map
- [3a0f865] Merge closureRepGeneration into closureGeneration
- [8026e2e] Fix gofmt formatting in comment additions
- [5b36201] Add explanatory comments for table-pointer dedup fields
- [1c616aa] Move table-pointer dedup to post-pass over closure set
- [550f14f] Fix gofmt formatting in small_table.go
- [8f78c5e] Replace tableRep map with generation counter on smallTable
- [db9ad39] Merge branch 'main' into dedup_fix
- [f905ee3] Fix gofmt formatting
- [f9f35b3] Merge benchmark-cleanup into dedup_fix
- [91bd0e4] Deduplicate table pointers in epsilon closure computation
- [d465d04] build(deps): bump actions/dependency-review-action from 4.8.2 to 4.8.3
- [e248cd3] Remove redundant TestPathologicalCorrectness
- [730405b] build(deps): bump github/codeql-action from 4.32.3 to 4.32.4
- [ecfe50f] Assert all collectClosureStats return values in TestTablePointerDedup
- [62e27c1] Replace PoC dedup tests with correctness test and benchmark
- [d6a269d] Add TestEpsilonClosureSizes to measure table-pointer dedup effectiveness
- [ac658fc] Merge branch 'dedup_fix' of https://github.com/sayrer/quamina into dedup_fix
- [eb5e016] Merge branch 'main' into dedup_fix
- [a5470e0] Parameterize readWWords to stop reading early
- [a014dc7] Rename readWWords param to tb to satisfy thelper lint
- [ed38658] Add BenchmarkShellStyleBuildTime using testing.B
- [7b6eb7d] Gate heavy stress tests behind //go:build stress
- [3157c6d] Add heavy-pattern stress tests for NFA state dynamics
- [de116cf] Dedup nextStates in traverseNFA with reusable map
- [336e69c] Add correctness test for pathological epsilon closure patterns
- [4f0873f] Add benchmark for pathological epsilon closure dedup (3.3x faster)
- [43e4ece] Fix gofmt alignment in epsi_closure.go struct literals
- [a1e0cb9] Document table-pointer dedup invariant and defense
- [3b9bba5] Defend table-pointer dedup against fieldTransition divergence
- [b78fa12] Remove table-pointer-dedup rationale doc
- [3c10159] Merge branch 'main' into dedup_fix
- [1a72089] Use make+copy instead of append to nil in toQNumber
- [24626d1] Extract shared encodeQNumber from toQNumber and toQNumberBuf
- [a0a2b1d] Remove redundant [:0] in traverseNFA; push() already resets the buffer
- [b945f44] Merge branch 'main' into cpu_explore
- [c9a8fdc] Redesign transmap: flat dedup set + stacked result buffers
- [6e20fa6] Add documentation for table-pointer dedup in epsilon closure
- [7b16336] build(deps): bump github/codeql-action from 4.32.2 to 4.32.3
- [f073c5e] Cache active set in transmap and use generation counter for table-pointer dedup
- [ba8d89a] Eliminate duplicate NFA states at the source via table-pointer dedup in epsilon closure
- [3d6886a] Replace sort+compact dedup with generation-counter dedup in traverseNFA
- [5b74bd7] Add public API tests for nested transmap buffer isolation
- [78945ec] Refactor transmap to push/pop API for clearer depth management
- [7cb59fa] Add tests for transmap nested call safety and fix depth management
- [0c5ec37] Use buffer for qNumber encoding to eliminate allocations
- [75da186] Use stack-based transmap to eliminate allocations in NFA traversal