Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump path-to-regexp and router #28

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

dependabot[bot]
Copy link

@dependabot dependabot bot commented on behalf of github Sep 10, 2024

Bumps path-to-regexp to 8.1.0 and updates ancestor dependency router. These dependencies need to be updated together.

Updates path-to-regexp from 0.1.7 to 8.1.0

Release notes

Sourced from path-to-regexp's releases.

Simpler API

Heads up! This is a fairly large change (again) and I need to apologize in advance. If I foresaw what this version would have ended up being I would not have released version 7. A longer blog post and explanation will be incoming this week, but the pivot has been due to work on Express.js v5 and this will the finalized syntax used in Express moving forward.

Added

  • Adds key names to wildcards using *name syntax, aligns with : behavior but using an asterisk instead

Changed

  • Removes group suffixes of ?, +, and * - only optional exists moving forward (use wildcards for +, {*foo} for *)
  • Parameter names follow JS identifier rules and allow unicode characters

Added

  • Parameter names can now be quoted, e.g. :"foo-bar"
  • Match accepts an array of values, so the signature is now string | TokenData | Array<string | TokenData>

Removed

  • Removes loose mode
  • Removes regular expression overrides of parameters

pillarjs/path-to-regexp@v7.1.0...v8.0.0

Strict mode

Added

  • Adds a strict option to detect potential ReDOS issues

Fixed

  • Fixes separator to default to suffix + prefix when not specified
  • Allows separator to be undefined in TokenData
    • This is only relevant if you are building TokenData manually, previously parse filled it in automatically

Comments

  • I highly recommend enabling strict: true and I'm probably releasing a V8 with it enabled by default ASAP as a necessary security mitigation

pillarjs/path-to-regexp@v7.0.0...v7.1.0

Wildcard, unicode, and modifier changes

Hi all! There's a few major breaking changes in this release so read carefully.

Breaking changes:

  • The function returned by compile only accepts strings as values (i.e. no numbers, use String(value) before compiling a path)
    • For repeated values, when encode !== false, it must be an array of strings
  • Parameter names can contain all unicode identifier characters (defined as regex \p{XID_Continue}).
  • Modifiers (?, *, +) must be used after a param explicitly wrapped in {}

... (truncated)

Changelog

Sourced from path-to-regexp's changelog.

Moved to GitHub Releases

3.0.0 / 2019-01-13

  • Always use prefix character as delimiter token, allowing any character to be a delimiter (e.g. /:att1-:att2-:att3-:att4-:att5)
  • Remove partial support, prefer escaping the prefix delimiter explicitly (e.g. \\/(apple-)?icon-:res(\\d+).png)

2.4.0 / 2018-08-26

  • Support start option to disable anchoring from beginning of the string

2.3.0 / 2018-08-20

  • Use delimiter when processing repeated matching groups (e.g. foo/bar has no prefix, but has a delimiter)

2.2.1 / 2018-04-24

  • Allow empty string with end: false to match both relative and absolute paths

2.2.0 / 2018-03-06

  • Pass token as second argument to encode option (e.g. encode(value, token))

2.1.0 / 2017-10-20

  • Handle non-ending paths where the final character is a delimiter
    • E.g. /foo/ before required either /foo/ or /foo// to match in non-ending mode

2.0.0 / 2017-08-23

  • New option! Ability to set endsWith to match paths like /test?query=string up to the query string
  • New option! Set delimiters for specific characters to be treated as parameter prefixes (e.g. /:test)
  • Remove isarray dependency
  • Explicitly handle trailing delimiters instead of trimming them (e.g. /test/ is now treated as /test/ instead of /test when matching)
  • Remove overloaded keys argument that accepted options
  • Remove keys list attached to the RegExp output
  • Remove asterisk functionality (it's a real pain to properly encode)
  • Change tokensToFunction (e.g. compile) to accept an encode function for pretty encoding (e.g. pass your own implementation)

1.7.0 / 2016-11-08

  • Allow a delimiter option to be passed in with tokensToRegExp which will be used for "non-ending" token match situations

1.6.0 / 2016-10-03

  • Populate RegExp.keys when using the tokensToRegExp method (making it consistent with the main export)
  • Allow a delimiter option to be passed in with parse
  • Updated TypeScript definition with Keys and Options updated

1.5.3 / 2016-06-15

... (truncated)

Commits

Updates router from 1.3.3 to 2.0.0

Release notes

Sourced from router's releases.

2.0.0-beta.1

This incorporates all changes after 1.3.3 up to 1.3.5.

  • Internalize private router.process_params method
  • Remove debug dependency
  • deps: [email protected]
  • deps: parseurl@~1.3.3
  • deps: [email protected]
    • Add new ?, *, and + parameter modifiers
    • Matching group expressions are only RegExp syntax. (*) is no longer valid and must be written as (.*), for example.
    • Named matching groups no longer available by position in req.params. /:foo(.*) only captures as req.params.foo and not available as req.params[0].
    • Regular expressions can only be used in a matching group. /\\d+ is no longer valid and must be written as /(\\d+).
    • Special * path segment behavior removed. /foo/*/bar will match a literal * as the middle segment.
  • deps: [email protected]

2.0.0-alpha.1

  • Add basic support for returned, rejected Promises
    • Rejected Promises from middleware functions next(error)
  • Drop support for Node.js below 0.10
  • deps: [email protected]
    • Add DEBUG_HIDE_DATE environment variable
    • Change timer to per-namespace instead of global
    • Change non-TTY date format
    • Remove DEBUG_FD environment variable support
    • Support 256 namespace colors

1.3.8

  • Fix routing requests without method

1.3.7

  • Fix hanging on large stack of sync routes

1.3.6

1.3.5

  • Fix incorrect middleware execution with unanchored RegExps
  • perf: use plain object for internal method map

1.3.4

Changelog

Sourced from router's changelog.

2.0.0 / 2024-09-09

  • Drop support for node <18
  • deps: path-to-regexp@^8.0.0
    • Drop support for partial capture group router.route('/user(s?)/:user/:op') but still have optional non-capture /user{s}/:user/:op
    • :name? becomes {:name}
    • :name* becomes *name.
    • The splat change also changes splat from strings to an array of strings
    • Optional splats become {*name}
    • :name+ becomes *name and thus equivalent to *name so I dropped those tests
    • Strings as regular expressions are fully removed, need to be converted to native regular expressions

2.0.0-beta.2 / 2024-03-20

This incorporates all changes after 1.3.5 up to 1.3.8.

  • Add support for returned, rejected Promises to router.param

2.0.0-beta.1 / 2020-03-29

This incorporates all changes after 1.3.3 up to 1.3.5.

  • Internalize private router.process_params method
  • Remove debug dependency
  • deps: [email protected]
  • deps: parseurl@~1.3.3
  • deps: [email protected]
    • Add new ?, *, and + parameter modifiers.
    • Matching group expressions are only RegExp syntax. (*) is no longer valid and must be written as (.*), for example.
    • Named matching groups no longer available by position in req.params. /:foo(.*) only captures as req.params.foo and not available as req.params[0].
    • Regular expressions can only be used in a matching group. /\\d+ is no longer valid and must be written as /(\\d+).
    • Matching groups are now literal regular expressions. :foo named captures can no longer be included inside a capture group.
    • Special * path segment behavior removed. /foo/*/bar will match a literal * as the middle segment.
  • deps: [email protected]

2.0.0-alpha.1 / 2018-07-27

  • Add basic support for returned, rejected Promises
    • Rejected Promises from middleware functions next(error)
  • Drop support for Node.js below 0.10

... (truncated)

Commits
Maintainer changes

This version was pushed to npm by wesleytodd, a new releaser for router since your current version.


Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Bumps [path-to-regexp](https://github.com/pillarjs/path-to-regexp) to 8.1.0 and updates ancestor dependency [router](https://github.com/pillarjs/router). These dependencies need to be updated together.


Updates `path-to-regexp` from 0.1.7 to 8.1.0
- [Release notes](https://github.com/pillarjs/path-to-regexp/releases)
- [Changelog](https://github.com/pillarjs/path-to-regexp/blob/master/History.md)
- [Commits](pillarjs/path-to-regexp@v0.1.7...v8.1.0)

Updates `router` from 1.3.3 to 2.0.0
- [Release notes](https://github.com/pillarjs/router/releases)
- [Changelog](https://github.com/pillarjs/router/blob/master/HISTORY.md)
- [Commits](https://github.com/pillarjs/router/commits)

---
updated-dependencies:
- dependency-name: path-to-regexp
  dependency-type: indirect
- dependency-name: router
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label Sep 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants