From 5ee707480bc1f9657dc70e04ff1f527fab9dd32e Mon Sep 17 00:00:00 2001 From: Rolando Santamaria Maso Date: Sun, 19 Jun 2022 15:46:55 +0200 Subject: [PATCH 1/3] checking keys length before calling cache.del(keys) --- index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.js b/index.js index c44cb9a..5febdb3 100644 --- a/index.js +++ b/index.js @@ -89,7 +89,7 @@ const middleware = (opts) => async (req, res, next) => { return acc }, []) // delete keys on all cache tiers - patterns.forEach(pattern => opts.stores.forEach(store => getKeys(store, pattern).then(keys => mcache.del(keys)))) + patterns.forEach(pattern => opts.stores.forEach(store => getKeys(store, pattern).then(keys => keys.length > 0 ? mcache.del(keys) : null))) } else if (payload.headers[X_CACHE_TIMEOUT] || payload.headers[CACHE_CONTROL]) { // extract cache ttl let ttl = 0 From 2f979a5c213560f950312d7649e7771197dc0e75 Mon Sep 17 00:00:00 2001 From: Rolando Santamaria Maso Date: Sun, 19 Jun 2022 15:47:11 +0200 Subject: [PATCH 2/3] updating dependencies --- package.json | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 15212ad..4ee592e 100644 --- a/package.json +++ b/package.json @@ -28,17 +28,18 @@ }, "homepage": "https://github.com/jkyberneees/http-cache-middleware#readme", "devDependencies": { - "chai": "^4.3.4", - "got": "^11.8.2", - "mocha": "^8.4.0", + "cache-manager-ioredis": "^2.1.0", + "chai": "^4.3.6", + "got": "^11.8.5", + "mocha": "^10.0.0", "nyc": "^15.1.0", - "restana": "^4.9.1" + "restana": "^4.9.6" }, "dependencies": { - "@tusbar/cache-control": "^0.5.0", - "cache-manager": "^3.4.4", + "@tusbar/cache-control": "^0.6.1", + "cache-manager": "^4.0.1", "matcher": "^4.0.0", - "middleware-if-unless": "^1.2.5", + "middleware-if-unless": "^1.3.0", "ms": "^2.1.3", "on-http-end": "^1.0.2" } From bd0e808db86e6bad2e4350dcbcbbf9ec03a4fcd9 Mon Sep 17 00:00:00 2001 From: Rolando Santamaria Maso Date: Sun, 19 Jun 2022 15:48:23 +0200 Subject: [PATCH 3/3] adding automated testing --- .github/workflows/tests.yaml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 .github/workflows/tests.yaml diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml new file mode 100644 index 0000000..f0a5433 --- /dev/null +++ b/.github/workflows/tests.yaml @@ -0,0 +1,21 @@ +name: tests +on: [push, pull_request] + +jobs: + testing: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - name: Setup Environment (Using NodeJS 16.x) + uses: actions/setup-node@v1 + with: + node-version: 16.x + + - name: Install dependencies + run: npm install + + - name: Linting + run: npx standard + + - name: Run tests + run: npm run test \ No newline at end of file