From c592ba0099f5e689e5cbcd5d610df578633c6ef1 Mon Sep 17 00:00:00 2001 From: Hasan Oezdemir Date: Tue, 6 Nov 2018 11:58:04 +0100 Subject: [PATCH 1/2] redis-rate-limiter: update version to 1.2.0 to provide new options --- types/redis-rate-limiter/index.d.ts | 7 +++++-- types/redis-rate-limiter/redis-rate-limiter-tests.ts | 4 +++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/types/redis-rate-limiter/index.d.ts b/types/redis-rate-limiter/index.d.ts index 6e36f60f3e..45495ad874 100644 --- a/types/redis-rate-limiter/index.d.ts +++ b/types/redis-rate-limiter/index.d.ts @@ -1,6 +1,7 @@ -// Type definitions for redis-rate-limiter 1.0.3 +// Type definitions for redis-rate-limiter 1.2.0 // Project: https://github.com/TabDigital/redis-rate-limiter // Definitions by: Seth Westphal +// Hasan Oezdemir // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -20,6 +21,8 @@ declare namespace RedisRateLimiter { window?: number; limit?: number; rate?: string; + deleteImmediatelyIfRaceCondition?: boolean; + onPossibleRaceCondition?: (key: string) => void; } export interface Response { @@ -31,4 +34,4 @@ declare namespace RedisRateLimiter { } } -export = RedisRateLimiter; \ No newline at end of file +export = RedisRateLimiter; diff --git a/types/redis-rate-limiter/redis-rate-limiter-tests.ts b/types/redis-rate-limiter/redis-rate-limiter-tests.ts index a121d28477..98cb34a4e0 100644 --- a/types/redis-rate-limiter/redis-rate-limiter-tests.ts +++ b/types/redis-rate-limiter/redis-rate-limiter-tests.ts @@ -30,7 +30,9 @@ limit(request, function(err, rate) { var middleware = rateLimiter.middleware({ redis: redisClient, key: 'ip', - rate: '100/minute' + rate: '100/minute', + deleteImmediatelyIfRaceCondition: true, + onPossibleRaceCondition: key => console.log(`A race condition has been detected for <${key}>!`) }); var app = express(); From 9fa6e5174ccd21fafc9a1117ad23e9adcce4de86 Mon Sep 17 00:00:00 2001 From: Hasan Oezdemir Date: Wed, 21 Nov 2018 00:22:16 +0100 Subject: [PATCH 2/2] remove path version and remove the line dtheader: false from the tslint.json file --- types/redis-rate-limiter/index.d.ts | 2 +- types/redis-rate-limiter/tslint.json | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/types/redis-rate-limiter/index.d.ts b/types/redis-rate-limiter/index.d.ts index 45495ad874..ec277ae82a 100644 --- a/types/redis-rate-limiter/index.d.ts +++ b/types/redis-rate-limiter/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for redis-rate-limiter 1.2.0 +// Type definitions for redis-rate-limiter 1.2 // Project: https://github.com/TabDigital/redis-rate-limiter // Definitions by: Seth Westphal // Hasan Oezdemir diff --git a/types/redis-rate-limiter/tslint.json b/types/redis-rate-limiter/tslint.json index a41bf5d19a..a0357daa61 100644 --- a/types/redis-rate-limiter/tslint.json +++ b/types/redis-rate-limiter/tslint.json @@ -7,7 +7,6 @@ "ban-types": false, "callable-types": false, "comment-format": false, - "dt-header": false, "eofline": false, "export-just-namespace": false, "import-spacing": false,