.
This commit is contained in:
327
qwen/nodejs/node_modules/express-rate-limit/changelog.md
generated
vendored
Normal file
327
qwen/nodejs/node_modules/express-rate-limit/changelog.md
generated
vendored
Normal file
@@ -0,0 +1,327 @@
|
||||
# Changelog
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
and this project adheres to
|
||||
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [6.11.2](https://github.com/express-rate-limit/express-rate-limit/releases/tag/v6.11.2)
|
||||
|
||||
Fixed:
|
||||
|
||||
- Restored `IncrementResponse ` TypeScript type (See
|
||||
[#397](https://github.com/express-rate-limit/express-rate-limit/pull/397))
|
||||
|
||||
## [6.11.1](https://github.com/express-rate-limit/express-rate-limit/releases/tag/v6.11.1)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Check for prefixed keys when validating that the stores have single counted
|
||||
keys (See
|
||||
[#395](https://github.com/express-rate-limit/express-rate-limit/issues/395)).
|
||||
|
||||
## [6.11.0](https://github.com/express-rate-limit/express-rate-limit/releases/tag/v6.11.0)
|
||||
|
||||
### Added
|
||||
|
||||
- Support for retrieving the current hit count and reset time for a given key
|
||||
from a store (See
|
||||
[#390](https://github.com/express-rate-limit/express-rate-limit/issues/389)).
|
||||
|
||||
## [6.10.0](https://github.com/express-rate-limit/express-rate-limit/releases/tag/v6.10.0)
|
||||
|
||||
### Added
|
||||
|
||||
- Support for combined `RateLimit` header from the
|
||||
[RateLimit header fields for HTTP standardization draft](https://github.com/ietf-wg-httpapi/ratelimit-headers)
|
||||
adopted by the IETF. Enable by setting `standardHeaders: 'draft-7'`
|
||||
- New `standardHeaders: 'draft-6'` option, treated equivalent to
|
||||
`standardHeaders: true` from previous releases. (`true` and `false` are still
|
||||
supported.)
|
||||
- New `RateLimit-Policy` header added when `standardHeaders` is set to
|
||||
`'draft-6'`, `'draft-7'`, or `true`
|
||||
- Warning when using deprecated `draft_polli_ratelimit_headers` option
|
||||
- Warning when using deprecated `onLimitReached` option
|
||||
- Warning when `totalHits` value returned from Store is invalid
|
||||
|
||||
## [6.9.0](https://github.com/express-rate-limit/express-rate-limit/releases/tag/v6.9.0)
|
||||
|
||||
### Added
|
||||
|
||||
- New validaion check for double-counted requests
|
||||
- Added help link to each ValidationError, directing users to the appropriate
|
||||
wiki page for more info
|
||||
|
||||
### Changed
|
||||
|
||||
- Miscaleanous documenation improvements
|
||||
|
||||
## [6.8.1](https://github.com/express-rate-limit/express-rate-limit/releases/tag/v6.8.0) & [6.7.2](https://github.com/express-rate-limit/express-rate-limit/releases/tag/v6.8.0)
|
||||
|
||||
### Changed
|
||||
|
||||
- Revert 6.7.1 change that bumped typescript from 5.x to 4.x and
|
||||
dts-bundle-generator from 8.x to 7.x (See
|
||||
[#360](https://github.com/express-rate-limit/express-rate-limit/issues/360))
|
||||
|
||||
## [6.8.0](https://github.com/express-rate-limit/express-rate-limit/releases/tag/v6.8.0)
|
||||
|
||||
### Added
|
||||
|
||||
- Added a set of validation checks that will log an error if failed. See
|
||||
https://github.com/express-rate-limit/express-rate-limit/wiki/Error-Codes for
|
||||
a list of potential errors. Can be disabled by setting `validate: false` in
|
||||
the configuration. Automatically disables after the first request. (See
|
||||
[#358](https://github.com/express-rate-limit/express-rate-limit/issues/358))
|
||||
|
||||
## [6.7.1](https://github.com/express-rate-limit/express-rate-limit/releases/tag/v6.7.1)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed compatibility with TypeScript's TypeScript new `node16` module
|
||||
resolution strategy (See
|
||||
[#355](https://github.com/express-rate-limit/express-rate-limit/issues/355))
|
||||
|
||||
### Changed
|
||||
|
||||
- Bumped development dependencies
|
||||
- This initially include bumping typescript from 4.x to 5.x and
|
||||
dts-bundle-generator from 7.x to 8.x
|
||||
- Added `node` 20 to list of versions the CI jobs run on.
|
||||
|
||||
No functional changes.
|
||||
|
||||
## [6.7.0](https://github.com/express-rate-limit/express-rate-limit/releases/tag/v6.7.0)
|
||||
|
||||
### Changed
|
||||
|
||||
- Updated links to point to the new `express-rate-limit` organization on GitHub.
|
||||
- Added advertisement to `readme.md` for project sponsor
|
||||
[Zuplo](https://zuplo.link/express-rate-limit).
|
||||
- Updated to `typescript` version 5 and bumped other dependencies.
|
||||
- Dropped `node` 12, and added `node` 19 to the list of versions the CI jobs run
|
||||
on.
|
||||
|
||||
No functional changes.
|
||||
|
||||
## [6.6.0](https://github.com/nfriedly/express-rate-limit/releases/tag/v6.6.0)
|
||||
|
||||
### Added
|
||||
|
||||
- Added `shutdown` method to the Store interface and the MemoryStore.
|
||||
|
||||
## [6.5.2](https://github.com/nfriedly/express-rate-limit/releases/tag/v6.5.2)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed an issue with missing types in ESM monorepos.
|
||||
|
||||
## [6.5.1](https://github.com/nfriedly/express-rate-limit/releases/tag/v6.5.1)
|
||||
|
||||
### Added
|
||||
|
||||
- The message option can now be a (sync/asynx) function that returns a value
|
||||
(#311)
|
||||
|
||||
### Changed
|
||||
|
||||
- Updated all dependencies
|
||||
|
||||
Note: 6.5.0 was not released due to CI automation issues.
|
||||
|
||||
## [6.4.0](https://github.com/nfriedly/express-rate-limit/releases/tag/v6.3.0)
|
||||
|
||||
### Added
|
||||
|
||||
- Adds Express 5 (`5.0.0-beta.1`) as a supported peer dependency (#304)
|
||||
|
||||
### Changed
|
||||
|
||||
- Tests are now run on Node 12, 14, 16 and 18 on CI (#305)
|
||||
- Updated all development dependencies (#306)
|
||||
|
||||
## [6.3.0](https://github.com/nfriedly/express-rate-limit/releases/tag/v6.3.0)
|
||||
|
||||
### Changed
|
||||
|
||||
- Changes the build target to es2019 so that ESBuild outputs code that can run
|
||||
with Node 12.
|
||||
- Changes the minimum required Node version to 12.9.0.
|
||||
|
||||
## [6.2.1](https://github.com/nfriedly/express-rate-limit/releases/tag/v6.2.1)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Use the default value for an option when `undefined` is passed to the rate
|
||||
limiter.
|
||||
|
||||
## [6.2.0](https://github.com/nfriedly/express-rate-limit/releases/tag/v6.2.0)
|
||||
|
||||
### Added
|
||||
|
||||
- Export the `MemoryStore`, so it can now be imported as a named import
|
||||
(`import { MemoryStore } from 'express-rate-limit'`).
|
||||
|
||||
### Fixed
|
||||
|
||||
- Deprecate the `onLimitReached` option (this was supposed to be deprecated in
|
||||
v6.0.0 itself); developers should use a custom handler function that checks if
|
||||
the rate limit has been exceeded instead.
|
||||
|
||||
## [6.1.0](https://github.com/nfriedly/express-rate-limit/releases/tag/v6.1.0)
|
||||
|
||||
### Added
|
||||
|
||||
- Added a named export `rateLimit` in case the default import does not work.
|
||||
|
||||
### Fixed
|
||||
|
||||
- Added a named export `default`, so Typescript CommonJS developers can
|
||||
default-import the library (`import rateLimit from 'express-rate-limit'`).
|
||||
|
||||
## [6.0.5](https://github.com/nfriedly/express-rate-limit/releases/tag/v6.0.5)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Use named imports for ExpressJS types so users do not need to enable the
|
||||
`esModuleInterop` flag in their Typescript compiler configuration.
|
||||
|
||||
## [6.0.4](https://github.com/nfriedly/express-rate-limit/releases/tag/v6.0.4)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Upload the built package as a `.tgz` to GitHub releases.
|
||||
|
||||
### Changed
|
||||
|
||||
- Add ` main` and `module` fields to `package.json`. This helps tools such as
|
||||
ESLint that do not yet support the `exports` field.
|
||||
- Bumped the minimum node.js version in `package-lock.json` to match
|
||||
`package.json`
|
||||
|
||||
## [6.0.3](https://github.com/nfriedly/express-rate-limit/releases/tag/v6.0.3)
|
||||
|
||||
### Changed
|
||||
|
||||
- Bumped minimum Node version from 12.9 to 14.5 in `package.json` because the
|
||||
transpiled output uses the nullish coalescing operator (`??`), which
|
||||
[isn't supported in node.js prior to 14.x](https://node.green/#ES2020-features--nullish-coalescing-operator-----).
|
||||
|
||||
## [6.0.2](https://github.com/nfriedly/express-rate-limit/releases/v6.0.2)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Ensure CommonJS projects can import the module.
|
||||
|
||||
### Added
|
||||
|
||||
- Add additional tests that test:
|
||||
- importing the library in `js-cjs`, `js-esm`, `ts-cjs`, `ts-esm`
|
||||
environments.
|
||||
- usage of the library with external stores (`redis`, `mongo`, `memcached`,
|
||||
`precise`).
|
||||
|
||||
### Changed
|
||||
|
||||
- Use [`esbuild`](https://esbuild.github.io/) to generate ESM and CJS output.
|
||||
This reduces the size of the built package from 138 kb to 13kb and build time
|
||||
to 4 ms! :rocket:
|
||||
- Use [`dts-bundle-generator`](https://github.com/timocov/dts-bundle-generator)
|
||||
to generate a single Typescript declaration file.
|
||||
|
||||
## [6.0.1](https://github.com/nfriedly/express-rate-limit/releases/v6.0.1)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Ensure CommonJS projects can import the module.
|
||||
|
||||
## [6.0.0](https://github.com/nfriedly/express-rate-limit/releases/v6.0.0)
|
||||
|
||||
### Added
|
||||
|
||||
- `express` 4.x as a peer dependency.
|
||||
- Better Typescript support (the library was rewritten in Typescript).
|
||||
- Export the package as both ESM and CJS.
|
||||
- Publish the built package (`.tgz` file) on GitHub releases as well as the npm
|
||||
registry.
|
||||
- Issue and PR templates.
|
||||
- A contributing guide.
|
||||
|
||||
### Changed
|
||||
|
||||
- Rename the `draft_polli_ratelimit_headers` option to `standardHeaders`.
|
||||
- Rename the `headers` option to `legacyHeaders`.
|
||||
- `Retry-After` header is now sent if either `legacyHeaders` or
|
||||
`standardHeaders` is set.
|
||||
- Allow `keyGenerator` to be an async function/return a promise.
|
||||
- Change the way custom stores are defined.
|
||||
- Add the `init` method for stores to set themselves up using options passed
|
||||
to the middleware.
|
||||
- Rename the `incr` method to `increment`.
|
||||
- Allow the `increment`, `decrement`, `resetKey` and `resetAll` methods to
|
||||
return a promise.
|
||||
- Old stores will automatically be promisified and used.
|
||||
- The package can now only be used with NodeJS version 12.9.0 or greater.
|
||||
- The `onLimitReached` configuration option is now deprecated. Replace it with a
|
||||
custom `handler` that checks the number of hits.
|
||||
|
||||
### Removed
|
||||
|
||||
- Remove the deprecated `limiter.resetIp` method (use the `limiter.resetKey`
|
||||
method instead).
|
||||
- Remove the deprecated options `delayMs`, `delayAfter` (the delay functionality
|
||||
was moved to the
|
||||
[`express-slow-down`](https://github.com/nfriedly/express-slow-down) package)
|
||||
and `global` (use a key generator that returns a constant value).
|
||||
|
||||
## [5.x](https://github.com/nfriedly/express-rate-limit/releases/tag/v5.5.1)
|
||||
|
||||
### Added
|
||||
|
||||
- The middleware ~throws~ logs an error if `request.ip` is undefined.
|
||||
|
||||
### Removed
|
||||
|
||||
- Removes typescript typings. (See
|
||||
[#138](https://github.com/nfriedly/express-rate-limit/issues/138))
|
||||
|
||||
## [4.x](https://github.com/nfriedly/express-rate-limit/releases/tag/v4.0.4)
|
||||
|
||||
### Changed
|
||||
|
||||
- The library no longer modifies the passed-in options object, it instead makes
|
||||
a clone of it.
|
||||
|
||||
## [3.x](https://github.com/nfriedly/express-rate-limit/releases/tag/v3.5.2)
|
||||
|
||||
### Added
|
||||
|
||||
- Simplifies the default `handler` function so that it no longer changes the
|
||||
response format. The default handler also uses
|
||||
[response.send](https://expressjs.com/en/4x/api.html#response.send).
|
||||
|
||||
### Changes
|
||||
|
||||
- `onLimitReached` now only triggers once for a client and window. However, the
|
||||
`handle` method is called for every blocked request.
|
||||
|
||||
### Removed
|
||||
|
||||
- The `delayAfter` and `delayMs` options; they were moved to the
|
||||
[express-slow-down](https://npmjs.org/package/express-slow-down) package.
|
||||
|
||||
## [2.x](https://github.com/nfriedly/express-rate-limit/releases/tag/v2.14.2)
|
||||
|
||||
### Added
|
||||
|
||||
- A `limiter.resetKey()` method to reset the hit counter for a particular client
|
||||
|
||||
### Changes
|
||||
|
||||
- The rate limiter now uses a less precise but less resource intensive method of
|
||||
tracking hits from a client.
|
||||
|
||||
### Removed
|
||||
|
||||
- The `global` option.
|
||||
Reference in New Issue
Block a user