Skip to content

Latest commit

 

History

History
217 lines (166 loc) · 6.12 KB

HISTORY.md

File metadata and controls

217 lines (166 loc) · 6.12 KB

unreleased

  • Remove Object.setPrototypeOf polyfill
  • Use Array.flat instead of array-flatten package
  • Replace methods dependency with standard library

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
  • 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 / 2023-02-24

  • Fix routing requests without method

1.3.7 / 2022-04-28

  • Fix hanging on large stack of sync routes

1.3.6 / 2021-11-15

1.3.5 / 2020-03-24

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

1.3.4 / 2020-01-24

1.3.3 / 2018-07-06

  • Fix JSDoc for Router constructor

1.3.2 / 2017-09-24

1.3.1 / 2017-05-19

1.3.0 / 2017-02-25

  • Add next("router") to exit from router
  • Fix case where router.use skipped requests routes did not
  • Use %o in path debug to tell types apart
  • deps: [email protected]
  • perf: add fast match path for * route

1.2.0 / 2017-02-17

  • Skip routing when req.url is not set
  • deps: [email protected]
    • Allow colors in workers
    • Deprecated DEBUG_FD environment variable set to 3 or higher
    • Fix error when running under React Native
    • Use same color for same namespace
    • deps: [email protected]

1.1.5 / 2017-01-28

1.1.4 / 2016-01-21

  • deps: [email protected]
  • deps: methods@~1.1.2
    • perf: enable strict mode
  • deps: parseurl@~1.3.1
    • perf: enable strict mode

1.1.3 / 2015-08-02

  • Fix infinite loop condition using mergeParams: true
  • Fix inner numeric indices incorrectly altering parent req.params
  • deps: [email protected]
    • perf: enable strict mode
  • deps: [email protected]
    • Fix regression with escaped round brackets and matching groups

1.1.2 / 2015-07-06

  • Fix hiding platform issues with decodeURIComponent
    • Only URIErrors are a 400
  • Fix using * before params in routes
  • Fix using capture groups before params in routes
  • deps: [email protected]
  • perf: enable strict mode
  • perf: remove argument reassignments in routing
  • perf: skip attempting to decode zero length string
  • perf: use plain for loops

1.1.1 / 2015-05-25

1.1.0 / 2015-04-22

  • Use setprototypeof instead of __proto__
  • deps: debug@~2.1.3

1.0.0 / 2015-01-13

  • Fix crash from error within OPTIONS response handler
  • deps: [email protected]
    • Remove redundant code path

1.0.0-beta.3 / 2015-01-11

  • Fix duplicate methods appearing in OPTIONS responses
  • Fix OPTIONS responses to include the HEAD method properly
  • Remove support for leading colon in router.param(name, fn)
  • Use array-flatten for flattening arrays
  • deps: debug@~2.1.1
  • deps: methods@~1.1.1

1.0.0-beta.2 / 2014-11-19

  • Match routes iteratively to prevent stack overflows

1.0.0-beta.1 / 2014-11-16

  • Initial release ported from Express 4.x
    • Altered to work without Express