Releases: ryanfowler/match
Releases · ryanfowler/match
Release list
v0.3.3
What's Changed
- Support case-insensitive matching for indexed static hosts by @ryanfowler in #49
Full Changelog: v0.3.2...v0.3.3
v0.3.2
What's Changed
- Remove redundant MatchInto params reset by @ryanfowler in #47
- perf: add skipPathSegment for index-only segment advance by @ryanfowler in #48
Full Changelog: v0.3.1...v0.3.2
v0.3.1
What's Changed
- Add exact static route map for faster literal matching by @ryanfowler in #36
- Split plain params from affixed params in the router trie by @ryanfowler in #37
- Add a compressed radix fast path for simple routes by @ryanfowler in #38
- Split node implementations into focused files by @ryanfowler in #39
- Deduplicate insert finalization in node insertion path by @ryanfowler in #40
- Refactor route capture storage to compact metadata slices by @ryanfowler in #41
- Refactor route and DNS parsing onto a shared scanner by @ryanfowler in #42
- Share the conflict-index bucket helper between match and dns by @ryanfowler in #43
- Name the routing tuning constants by @ryanfowler in #44
- Optimize router matching and insertion hot paths by @ryanfowler in #45
- Remove eager param growth from simple dynamic matching by @ryanfowler in #46
Full Changelog: v0.3.0...v0.3.1
v0.3.0
What's Changed
- Add DNS hostname matching sub-package by @ryanfowler in #31
- Move DNS docs below the primary router sections by @ryanfowler in #32
- Harden DNS matching and expand edge-case coverage by @ryanfowler in #33
- Make Params mutating and pointer-based for faster matching by @ryanfowler in #34
- Speed up DNS matcher lookups and insert conflicts by @ryanfowler in #35
Full Changelog: v0.2.0...v0.3.0
v0.2.0
What's Changed
- Improve package docs by @ryanfowler in #26
- Optimize route matching and insertion by @ryanfowler in #27
- Optimize single-capture match path by @ryanfowler in #28
- Add a DESIGN.md file by @ryanfowler in #29
- Add Router cloning and benchmark coverage by @ryanfowler in #30
Full Changelog: v0.1.2...v0.2.0
v0.1.2
What's Changed
- Fix MatchPrefix from leaking empty route on absolute paths by @ryanfowler in #21
- Reduce routeEntry memory retention during insertion by @ryanfowler in #22
- Optimize dynamic route insert conflict checks by @ryanfowler in #23
- Optimize match and match prefix hot paths by @ryanfowler in #24
- Optimize route parsing and absolute-root matching by @ryanfowler in #25
Full Changelog: v0.1.1...v0.1.2
v0.1.1
What's Changed
- Refine README router description wording by @ryanfowler in #15
- Store trie routes as stable pointers by @ryanfowler in #16
- Fix catch-all conflict detection for overlapping dynamic routes by @ryanfowler in #17
- Fix false-positive route conflicts for disjoint ambiguous segments by @ryanfowler in #18
- Reject unescaped braces inside parameter names by @ryanfowler in #19
- Precompute capture metadata for route matching by @ryanfowler in #20
Full Changelog: v0.1.0...v0.1.1
v0.1.0
What's Changed
- Replace route-list matcher with a Go radix tree port of matchit by @ryanfowler in #1
- Add PR CI checks for formatting, tests, and staticcheck by @ryanfowler in #2
- Add performant Params merge support by @ryanfowler in #3
- Use strings.IndexByte in nextPathSegment by @ryanfowler in #4
- Remove duplicate literal prefix helper by @ryanfowler in #5
- Remove dead code from findParamEnd by @ryanfowler in #6
- Optimize dynamic segment matching and brace unescaping by @ryanfowler in #7
- Optimize Match path scanning and preserve root catch-all fallback by @ryanfowler in #8
- Fix param edge reuse for divergent route names by @ryanfowler in #9
- Improve router documentation for accuracy and usability by @ryanfowler in #10
- Preserve MatchInto buffers on misses and reuse parsed route patterns by @ryanfowler in #11
- Harden Go module tests for routing and Params edge cases by @ryanfowler in #12
- Add prefix matching to the router by @ryanfowler in #13
- Add pkg.go.dev docs badge to the README by @ryanfowler in #14
New Contributors
- @ryanfowler made their first contribution in #1
Full Changelog: https://github.com/ryanfowler/match/commits/v0.1.0