path-to-regexp
9.0.0 · 22 Oct 2026MIT310.6M / weekRepositoryHomepagenpmAtom feed
Upgrading path-to-regexp From 0.1.12 to 9.0.0
59 releases in betweennotes for 21
Reading releases, release notes and advisories…
Counted from 21 of 59 release notes. Advisories are counted from the advisory database, in full.
Before you upgrade
Tick each one off as you go- breaking7.0.0
- breaking7.0.0
- breaking7.0.0
- breaking7.0.0
Security
Fixes 1 advisory affecting 0.1.12
- path-to-regexp vulnerable to Regular Expression Denial of Service via multiple route parametershigh · GHSA-37ch-88jc-xwx2
- 8.4.0
- 8.4.0
- 8.0.0
Edit: The post is out - blakeembrey.com/posts/2024-09-web-redos/
- 7.1.0
Adds a
strictoption to detect potential ReDOS issues
Release by release
- fixed
Avoid duplicate trailing delimiter matches
- fixed
Fix stringify of param names with control characters
- fixed
Fix stringify lookahead across empty text tokens
- fixed
8.4.1 – 8.4.22 releases, no release note
- security
- security
- new
Add custom error class (#398) 2a7f2a4
- new
Allow plain objects for
TokenData(#391) 687a9bb
- new
8.2.0nothing new or fixed in the note
- new
Adds
pathToRegexpmethod back for generating a regex - new
Adds
stringifymethod for convertingTokenDatainto a path string
- new
- security
Edit: The post is out - blakeembrey.com/posts/2024-09-web-redos/
- new
Adds key names to wildcards using
*namesyntax, aligns with:behavior but using an asterisk instead
- security
- new
Support array inputs for
matchandpathToRegexp3fdd88f
- new
50 other lines we could not sort, mostly version bumps
- 9.0.0
Refactor matching to be non-greedy
- 9.0.0
Build project as ESM
- 9.0.0
Remove
TokenDataclass andKeystype - 9.0.0
Reject an empty-string param in compile
- 9.0.0
Reject wildcard array that compiles to an empty path
- 9.0.0
Quote param names followed by astral ID_Continue text
- 8.4.0
Restricts wildcard backtracking when using more than 1 in a path (#421)
- 8.4.0
Dedupes regex prefixes (#422)
- 8.4.0
Rejects large optional route combinations (#424)
- 8.3.0
Escape text should escape backslash (#390) a4a8552