Skip to content

Latest commit

 

History

History
610 lines (339 loc) · 18.6 KB

File metadata and controls

610 lines (339 loc) · 18.6 KB

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

v0.9.1

compare changes

🚀 Enhancements

  • Add compareRoutes() util (#191)

🔥 Performance

  • 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)

🩹 Fixes

  • compiler: Resolve method-agnostic fallback like runtime (#190)
  • Unify same-node route selection across interpreter and compiled matchers (f09ca03)

📖 Documentation

  • Clarify multi route matching order (236612e)

🏡 Chore

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.9.0

compare changes

🚀 Enhancements

  • Add route pattern overlap utilities (#183)
  • Add regExpToRoute() to convert PCRE regex back to route pattern (#188)

🩹 Fixes

  • 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)

🏡 Chore

🤖 CI

❤️ Contributors

v0.8.1

compare changes

🚀 Enhancements

  • Support hyphens in route parameter names (8dfaa48)

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.8.0

compare changes

🚀 Enhancements

  • ⚠️ Url pattern compatibility (#178)

🔥 Performance

  • Compiler - check params.length > 0 instead of using a Set to deduplicate static nodes - prevent deopts from accessing s out of bound for some cases in compiler output - use .concat instead of spread syntax for faster params array cloning and disable the lint rule that prefer spread (3575022)
  • Avoid +1 a lot of time by changing startIdx to 1 (285aa05)

🩹 Fixes

  • HasIf should only be set to true if an if clause was appended before (208262c)

🏡 Chore

⚠️ Breaking Changes

  • ⚠️ Url pattern compatibility (#178)

❤️ Contributors

v0.7.12

compare changes

🚀 Enhancements

  • add: Allow escaping : and * using backslash (#175)

🏡 Chore

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.7.11

compare changes

🩹 Fixes

  • Handle root wildcard routes (#173)

🏡 Chore

❤️ Contributors

v0.7.10

compare changes

🔥 Performance

  • compiler: Eval data once in iot mode (#172)

🏡 Chore

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.7.9

compare changes

📦 Build

🏡 Chore

  • Update dev dependencies (05a81ff)

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.7.8

compare changes

🔥 Performance

  • Prefer String.charCodeAt (#170)

🩹 Fixes

  • Match correct regex param (#169)

💅 Refactors

  • Simplify compiler logic (9b7adcb)

📖 Documentation

🏡 Chore

  • Update eps (20d740d)
  • Remove note about experimental compiler (bce9b9f)

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.7.7

compare changes

🩹 Fixes

  • addRoute: Always normalize path and method (844776f)

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.7.6

compare changes

🚀 Enhancements

  • types: Add InferRouteParams for param extraction (#168)

🔥 Performance

  • compiler: Short circuit when no routes exist (ef3c444)

💅 Refactors

  • compiler: Simplify logic (082f20f)

🏡 Chore

❤️ Contributors

v0.7.5

compare changes

🚀 Enhancements

  • compiler: Support custom data serialize option (c633ed1)

🏡 Chore

  • Apply automated updates (e459e5b)

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.7.4

compare changes

🩹 Fixes

  • compiler: Add missing return statement for matchAll (0e02b36)

🏡 Chore

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.7.3

compare changes

🚀 Enhancements

  • compiler: Support matchAll mode (#165)

🔥 Performance

  • compiler: Avoid array slicing (#164)

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.7.2

compare changes

🩹 Fixes

  • 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)

🏡 Chore

  • Rename _utils.ts to object.ts (0f72045)

✅ Tests

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.7.1

compare changes

🔥 Performance

  • compiler: Treeshake empty conditions (#162)

🏡 Chore

❤️ Contributors

v0.7.0

compare changes

🚀 Enhancements

  • Experimental compiler (#155)
  • compiler: Complete functionality to match findRoute (#158)
  • compiler: compileRouterToString (#159)
  • compileRouterToString: Support serializing custom code with { toJSON } (064ae0d)

🔥 Performance

🩹 Fixes

  • compiler: Avoid duplicate static checks (db9fcf2)
  • Preserve empty segments (#160)

💅 Refactors

  • compiler: Only warn for not supported regexp (012d8b9)

📦 Build

🏡 Chore

✅ Tests

  • Add test:compiler for 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)

❤️ Contributors

v0.6.3

compare changes

📦 Build

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.6.2

compare changes

🚀 Enhancements

  • routeToRegExp util (#153)

📦 Build

  • Export MatchedRoute type (#152)

🏡 Chore

❤️ Contributors

v0.6.1

compare changes

💅 Refactors

  • Explicit extensions and types (2043cca)

📦 Build

🏡 Chore

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.6.0

compare changes

🩹 Fixes

  • findAll: Last named segment is required (#128)
  • removeRoute: Remove named wildcard routes (#137)

💅 Refactors

📦 Build

🏡 Chore

⚠️ Breaking Changes

❤️ Contributors

v0.5.1

compare changes

💅 Refactors

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.5.0

compare changes

🔥 Performance

  • Avoid Object.create(null) (2b7ac09)

🩹 Fixes

  • ⚠️ Last named segment should be required (#123)

🏡 Chore

⚠️ Breaking Changes

  • ⚠️ Last named segment should be required (#123)

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.4.0

compare changes

🚀 Enhancements

  • ⚠️ Support multiple entries with same route (#118)

🏡 Chore

⚠️ Breaking Changes

  • ⚠️ Support multiple entries with same route (#118)

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.3.0

compare changes

🚀 Enhancements

  • ⚠️ findAllRoutes (#117)

🩹 Fixes

  • matcher: Match param in last segment (#110)

💅 Refactors

  • ⚠️ Unify apis with method, path order (#114)
  • matcher: Improve readability (af7af4d)
  • Makes params matching opt-out always (35aaf15)

🏡 Chore

✅ Tests

  • Update matcher tests (c81d596)
  • Add benchmark tests (#116)

⚠️ Breaking Changes

  • ⚠️ findAllRoutes (#117)
  • ⚠️ Unify apis with method, path order (#114)

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.2.0

compare changes

🩹 Fixes

  • matcher: Match param in last segment (#110)

💅 Refactors

  • ⚠️ Unify apis with (method, path) order (#114)
  • matcher: Improve readability (af7af4d)

🏡 Chore

✅ Tests

⚠️ Breaking Changes

  • ⚠️ Unify apis with method, path order (#114)

❤️ Contributors

  • Pooya Parsa (@pi0)

v0.1.0

Radix3 migrated to rou3 (see #108)