All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
- Add
compareRoutes()util (#191)
- find: Remove avoidable allocations in dynamic lookup path (e023038)
- compiler: Faster static, regex, wildcard and matchAll matching (1c51df2)
- add: Skip escape, group and modifier scans for plain paths (cabbe2d)
- compiler: Segment switch dispatch, hoisted regexes and narrower length checks (4bc0e3c)
- compiler: Resolve method-agnostic fallback like runtime (#190)
- Unify same-node route selection across interpreter and compiled matchers (f09ca03)
- Clarify multi route matching order (236612e)
- Pooya Parsa (@pi0)
- Add route pattern overlap utilities (#183)
- Add regExpToRoute() to convert PCRE regex back to route pattern (#188)
- regexp: Compile trailing optional groups inline for PCRE2 compatibility (#185)
- Align findAllRoutes with findRoute & compiled matchAll (#184, #186)
- Order findAllRoutes same-node siblings by specificity (#187)
- regexp: Keep literal dots inside regex constraints verbatim (baf2c87)
- Update deps (346e491)
- Bump node version (d4461ad)
- Support hyphens in route parameter names (8dfaa48)
- Pooya Parsa (@pi0)
⚠️ Url pattern compatibility (#178)
- Compiler - check
params.length > 0instead of using aSetto deduplicate static nodes - prevent deopts from accessingsout of bound for some cases in compiler output - use.concatinstead of spread syntax for fasterparamsarray cloning and disable the lint rule that prefer spread (3575022) - Avoid +1 a lot of time by changing startIdx to 1 (285aa05)
- HasIf should only be set to true if an if clause was appended before (208262c)
- Apply automated updates (5ae135a)
- Init agents.md (2ec1bd8)
- Ignore agents.md from linter (3b23ad1)
- Update deps and lint (ce88d82)
- Apply automated updates (b0617cb)
⚠️ Url pattern compatibility (#178)
- add: Allow escaping
:and*using backslash (#175)
- Update deps (9d3703c)
- Pooya Parsa (@pi0)
- Handle root wildcard routes (#173)
- Update deps (d299937)
- compiler: Eval data once in iot mode (#172)
- Update deps (ef34343)
- Pooya Parsa (@pi0)
- Reduce dist size (425ee50)
- Update dev dependencies (05a81ff)
- Pooya Parsa (@pi0)
- Prefer
String.charCodeAt(#170)
- Match correct regex param (#169)
- Simplify compiler logic (9b7adcb)
- Add note about inputs (4baeb0e)
- Pooya Parsa (@pi0)
- addRoute: Always normalize path and method (844776f)
- Pooya Parsa (@pi0)
- types: Add
InferRouteParamsfor param extraction (#168)
- compiler: Short circuit when no routes exist (ef3c444)
- compiler: Simplify logic (082f20f)
- Update deps (7571e28)
- compiler: Support custom data
serializeoption (c633ed1)
- Apply automated updates (e459e5b)
- Pooya Parsa (@pi0)
- compiler: Add missing return statement for matchAll (0e02b36)
- Update deps (7880055)
- Pooya Parsa (@pi0)
- compiler: Support
matchAllmode (#165)
- compiler: Avoid array slicing (#164)
- Pooya Parsa (@pi0)
- routeToRegExp: Match wildcard without trailing slashes as well (f0361df)
- routeToRegExp: Keep wildcard as
_(205430d) - routeToRegExp: Support named wildcard (5d0c8f5)
- routeToRegExp: Preserve anonymous counter ids (5682d66)
- Rename
_utils.tstoobject.ts(0f72045)
- Update regexp tests (e848ec7)
- Pooya Parsa (@pi0)
- compiler: Treeshake empty conditions (#162)
- release: V0.7.0 (d714798)
- Pooya Parsa (@pi0)
- Vlad Sirenko (@sirenkovladd)
- Experimental compiler (#155)
- compiler: Complete functionality to match
findRoute(#158) - compiler:
compileRouterToString(#159) - compileRouterToString: Support serializing custom code with
{ toJSON }(064ae0d)
- compiler: Faster split (8b2ea34)
- compiler: Only warn for not supported regexp (012d8b9)
- Use
/compilersubpath (8c8c12e)
- Apply automated updates (3c7526d)
- Add codeowners file (3693344)
- Update deps (ba1eba0)
- Remove duplicate test (e370538)
- Refactor compiler fns (ed4a95d)
- Update jsdocs (65bc888)
- Typo (302ef03)
- Apply automated updates (c22b957)
- Add
test:compilerfor full tests (636795f) - Snapshot compiler result (991e7d8)
- Merge compiler with main tests (e5c7b50)
- Add back compiler snapshot! (e4d6287)
- Make sure all inputs have leading slash (0aa1de3)
- Export
NullProtoObj(4cf5502)
- Pooya Parsa (@pi0)
routeToRegExputil (#153)
- Export
MatchedRoutetype (#152)
- Update obuild (4c39178)
- Move to h3js (f0dc20a)
- Update readme for cdn usage (#151)
- Apply automated updates (1f8fcb7)
- Update deps (df16f13)
- Pooya Parsa (@pi0)
- Wind hi@productdevbook.com
- Huseeiin (@huseeiin)
- Explicit extensions and types (2043cca)
- Use obuild (e209f3b)
- Update readme (6cf82d7)
- Pooya Parsa (@pi0)
- Improve null proto obj (5899c44)
⚠️ Esm-only dist (c7d3025)
⚠️ Esm-only dist (c7d3025)
- Pooya Parsa (@pi0)
- Vlad Sirenko (@sirenkovladd)
- Estéban (@Barbapapazes)
- Reduce bundle overhead (0eed2e8)
- Pooya Parsa (@pi0)
- Avoid
Object.create(null)(2b7ac09)
⚠️ Last named segment should be required (#123)
⚠️ Last named segment should be required (#123)
- Pooya Parsa (@pi0)
⚠️ Support multiple entries with same route (#118)
⚠️ Support multiple entries with same route (#118)
- Pooya Parsa (@pi0)
⚠️ findAllRoutes(#117)
- matcher: Match param in last segment (#110)
⚠️ Unify apis withmethod, pathorder (#114)- matcher: Improve readability (af7af4d)
- Makes params matching opt-out always (35aaf15)
- Fix coverage report (4aad1cb)
- More strict tsconfig (164efa2)
- Add bundle size badge (a540ceb)
- release: V0.2.0 (6bde127)
- Reset changelog for rou3 (b7fe8b7)
- Update bench test (d5574a5)
- Update tests and bench (aa2153f)
- Bench against source (05b9a8b)
- Update bench (70dc811)
- Pooya Parsa (@pi0)
- matcher: Match param in last segment (#110)
- Update matcher tests (c81d596)
⚠️ Unify apis withmethod, pathorder (#114)
- Pooya Parsa (@pi0)
Radix3 migrated to rou3 (see #108)