fix(deps): update dependency rate-limiter-flexible to v10 - autoclosed#188
Closed
renovate[bot] wants to merge 1 commit intomainfrom
Closed
fix(deps): update dependency rate-limiter-flexible to v10 - autoclosed#188renovate[bot] wants to merge 1 commit intomainfrom
renovate[bot] wants to merge 1 commit intomainfrom
Conversation
1adda8f to
61a9ab9
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
2.3.6→10.0.1Release Notes
animir/node-rate-limiter-flexible (rate-limiter-flexible)
v10.0.1: AI docs fixCompare Source
Full Changelog: animir/node-rate-limiter-flexible@v10.0.0...v10.0.1
v10.0.0: Require points and duration optsCompare Source
What's Changed
[BREAKING CHANGES]
Require
pointsanddurationoptions by @animir in #354No default values are set for
pointsanddurationoptions starting from v10. Negativepointswill not be replaced by default points value4.Validation rules apply.
Error is thrown during limiter creation if points or duration is invalid:
pointsmust be number.Any limiter accepts negative
pointsas valid option starting from v10. If you migrate from older version, be careful: If in your codepointsoption is set to negative value and that works for your project now then you should review the logic in your project. After update to version 10, negativepointsvalue will not be replaced by4by default as it was prior to version 10.When your limiter has negative or zero points
consumemethod call is always rejected since there is always not enough points to consume. You can setpointsto negative and play withrewardandconsumecalls, that could be useful sometimes.durationmust be non-negative number>= 0. Error is thrown during limiter creation ifdurationoption has invalid value.Requiring
pointsanddurationseems logical for security package. We don't want our apps working not as we expect even if there is no security threat. This update removes uncertaincy about negative duration and zero points.[OTHER UPDATES]
Faster memory limiter and block mechanism by @animir in #355
Internal memory storage implementation refactored for Map with timestamps instead of Date objects.
Memory limiter is faster on 10-15% now on high traffic with diverse keys. Tests show performance improvement from
2569948 ops/secto2885688 ops/secon my laptop.Full Changelog: animir/node-rate-limiter-flexible@v9.1.1...v10.0.0
🐚
v9.1.1: Sequelize v7 supportCompare Source
What's Changed
🔔
v9.1.0: Non atomic Redis limiterCompare Source
What's Changed
💬
v9.0.1: Fixes: Queue and DynamoDBCompare Source
What's Changed
{}by @sevauni in #340New Contributors
Full Changelog: animir/node-rate-limiter-flexible@v9.0.0...v9.0.1
📶
v9.0.0: Mongoose 9 supportCompare Source
What's Changed
BREAKING CHANGES
4.0.05.2.0😋
v8.3.0: Timeouts wrapper fixedCompare Source
RLWrapperTimeouts can be imported from defaults:
Use it with or without
insuranceLimiterto handle long requests to a storage.Read more in docs.
Thank you @florian-schunk
💧
v8.2.1: Fix Insurance StrategyCompare Source
This patch reverts v8.2.0 changes. Timeouts Wrapper changed how Insurance Strategy treats rejected promises from working stores.
If you're on the version 8.2.0, please update to v8.2.1.
The impact of 8.2.0 changes is that when main limiter rejected consume or any other method call because there were not enough points on store, insurance limiter consume method was mistakenly called. This logic is incorrect as Insurance Strategy should handle only store errors.
v8.2.0: Timeouts wrapperCompare Source
Added a new RLWrapperTimeouts.
It can be used with or without insuranceLimiter to handle long requests to a storage.
Thanks to @florian-schunk .
✌️
v8.1.0: fix node-redis v4+ client is ready checksCompare Source
node-redispackage client is ready checks. All versions and cluster mode is supported now.Thanks to @Neumann-Nils
v8.0.1: Fix TS definitionsCompare Source
v8.0.0 [BREAKING CHANGES]
RateLimiterQueueErrorimport was changed in TypeScript projects.It should be imported from defaults now.
TS definition for RateLimiterQueueError was moved to types.d.ts.
v8.0.1:
index.d.tsfile was moved outside of lib directory and renamed totypes.d.ts.Thanks @wildfluss and @PaulAnnekov for help.
💿
v8.0.0Compare Source
v7.4.0: Drizzle ORM supportCompare Source
In version
7.2.0RateLimiterDrizzlelimiter was added. Read about it on wikiThanks @Nayanchandrakar !
In version
7.3.0disableIndexesCreation option added toRateLimiterMongo.In version
7.3.1conditional require of drizzle-orm was replaced with dynamic import to avoid issues with linters and tree-shakers.In version
7.3.2drizzle-orm lazy import is hidden behind function call and string concatenation to avoid unnecessary tree-shaking and statistical analysis in different bundlers.In version
7.4.0RateLimiterDrizzleNonAtomic was added. It doesn't guarantee precise events count under race conditions, but much faster than atomic limiter.💫
v7.3.2Compare Source
v7.3.1Compare Source
v7.3.0Compare Source
v7.2.0Compare Source
v7.1.1: Check points before upserting with RedisCompare Source
2.1.Thank you @roggervalf
🌞
v7.1.0: Etcd supportCompare Source
RateLimiterEtcdandRateLimiterEtcdNonAtomicwere added. Read more on Wiki https://github.com/animir/node-rate-limiter-flexible/wiki/Etcd.This is the first time we add atomic and non-atomic limiters for the same storage. Atomic increments are necessary to count sensitive things like incorrect password or PIN tries while non-atomic increments may be better (because they are faster) when exact count doesn't matter, e.g. to protect a service against DDoS attack.
Thank you @Tobias4872
🍇
v7.0.0Compare Source
What's Changed
RateLimiterValkeyGlideto support Valkey Glide @avifenesh in #302 Thank you!X-RateLimit-Resetheader example was fixed. It should beMath.ceil((Date.now() + rateLimiterRes.msBeforeNext) / 1000). Thanks to @Fdavidtr.New Contributors
Full Changelog: animir/node-rate-limiter-flexible@v6.2.1...v7.0.0
🐆
v6.2.1: SQLite: fix Knex connection issueCompare Source
RateLimiterSQLite: This fixes an issue where an unused Knex connection remained open, causing pool connection problems. Additionally, this adds functions to run tests against Knex.Thanks to @muco-rolle
📌
v6.2.0: Multiple SQLite clients supportCompare Source
RateLimiterSQLitesupportssqlite3,better-sqlite3andknexclients now.Set
storeTypeoption to one ofsqlite3,better-sqlite3orknex, defaults tosqlite3if not set.Thank you @muco-rolle
🎁
v6.1.0: SQLite supportCompare Source
RateLimiterSQLiteadded. Thanks to @no-on3 and @muco-rollerate-limiter-flexiblesupports SQLite now! 🐬Check SQLite example.
Just a day after Valkey limiter release we are releasing SQLite support. One new database and one old (but still good) added to the list of the big family. Congrats!
v6.0.0: Valkey support [zap]Compare Source
RateLimiterValkeyadded. Thanks to @gurgundayrate-limiter-flexiblesupports Valkey now! ⚡It can be used with iovalkey package.
[breaking] Node.js support for version 16 was dropped.
v5.0.5: Prisma unref timeout and DynamoDB ttlSet flagCompare Source
ttlSetflag https://github.com/animir/node-rate-limiter-flexible/wiki/Options#ttlset that could be useful in serverless envirnoment to avoid extra requests. Thanks to @ollyfg.🌕
v5.0.4Compare Source
v5.0.3: Redis custom Lua script supportCompare Source
customIncrTtlLuaScriptoption now. You can set custom Lua script as a string. It will be executed instead of built-in Lua script that is called on everyupsert. See this rejected when consume more than maximum points and multiply delay test for example. Thanks to @roggervalf👍
v5.0.2Compare Source
v5.0.1Compare Source
v5.0.0: Prisma supportCompare Source
What's Changed
Add
RateLimiterPrisma. Read about it on Wiki. Prisma supports PostgreSQL, MySQL, SQLite, MongoDB and many other databases. Thank you @animirTest environment and github actions got a number of improvements. Thank you @mroderick
BREAKING CHANGES: we dropped support for
Node.js 14and all previous versions.Full Changelog: animir/node-rate-limiter-flexible@v4.0.1...v5.0.0
v4.0.1: Fix RateLimiterMongo TypeErrorCompare Source
RateLimiterMongo TypeError: Cannot read properties of null (reading 'value')error was fixed. See #251 for reference.Thanks to @o-ali
v4.0.0: DynamoDB supportCompare Source
Thanks to @Daniel-97
rate-limiter-flexiblesupports DynamoDB now!Usage example can be found here.
BREAKING CHANGES: we dropped support for Node.js 12 and previous versions.
🐯
v3.0.6: Fix RateLimiterUnion.consume return typeCompare Source
v3.0.5: Fix memory storage being not accurate with expired keysCompare Source
v3.0.4Compare Source
v3.0.3Compare Source
v3.0.2: PostgreSQL quote table name and support for schema name optionCompare Source
schemaNameto RateLimiterPostgres limiter. Thanks to @paulsc54🍯
v3.0.1Compare Source
v3.0.0: Support of ioredis v4+ and redis v4+Compare Source
I have really great news!
rate-limiter-flexiblesupportsioredisv4+ andredisv4+ now.We have been waiting for this moment for years.
Thanks to @roggervalf. And one big thank you from me personally
Since this is major release, there are
BREAKING CHANGES:
rate-limiter-flexibleworks withioredispackage of any version (tested versions 2, 3, 4 and 5) by default now.redispackage version 4 or later, you should set useRedisPackage flag.redisclient withlegacyMode: true, you should remove it.redisof version 3 or lower, you should stick torate-limiter-flexibleversion 2. Or try the experimental useRedis3AndLowerPackage option.inmemoryprefix are removed. You can use inMemoryBlockOnConsumed andinMemoryBlockDuration instead.
redisoption forRateLimiterRediswas removed. (Most likely you never heard about it, since it was deprecated years ago). You should usestoreClientoption instead.v2.4.2Compare Source
v2.4.1: TS type for the new option rejectIfRedisNotReadyCompare Source
Thank you @dmozgovoi for the quick improvement.
v2.4.0: Redis limiter new optionrejectIfRedisNotReadyCompare Source
In some cases especially with insuranceLimiter set it is important to reject requests quickly based on Redis client status being not
ready. Thanks @dmozgovoiv2.3.12: RateLimiterUnion works with one limiterCompare Source
Thank you @svsool
v2.3.11: Fixes and improvements made since v2.3.4 releaseCompare Source
getTokensRemainingwith RateLimiterPostgres fixed. #125clearExpiredByTimeoutis added to TS types for MySQL and Postgres limiters. #156browserpackage.json settings to allow bundling.6ce34b3Thank you @achingbrainnodejs.util.inspect.customfor Symbol flexibility.2c8bedbThank you @shlavikinmemoryBlockOnConsumedandinmemoryBlockDurationoptions are renamed toinMemoryBlockOnConsumedandinMemoryBlockDuration. Old options are still supported, but deprecated and will be removed in v3 major release. #106v2.3.10Compare Source
v2.3.9Compare Source
v2.3.8Compare Source
v2.3.7Compare Source
Configuration
📅 Schedule: Branch creation - "on the first day of the week" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.