Skip to content

Commit 87dbbe4

Browse files
authored
chore(deps): bump ioredis to 5.11.1 via override (dedupe bullmq's pin) (#197)
Lands the ioredis 5.10.1 -> 5.11.1 bump (#192) that was deferred from #190/#196. bullmq 5.78.0 exact-pins ioredis@5.10.1, so bumping the top-level dep alone left bullmq on its own nested 5.10.1 copy — two ioredis instances with structurally incompatible RedisOptions types (tsc failed on new Redis(options)). Adds an `ioredis: 5.11.1` override in apps/api that collapses bullmq's nested copy onto the top-level version. A clean `bun install --frozen-lockfile` (the CI condition) now resolves a single ioredis@5.11.1; 5.10.1 -> 5.11.1 is a semver patch. Drop the override once bullmq advances its own ioredis pin. Verification (infra up): single ioredis copy after frozen install, api check (tsc + lint + lint:meta + knip) clean, full api suite 1188 pass / 0 fail including the Redis/BullMQ/valkey integration tests.
1 parent 4476cf2 commit 87dbbe4

2 files changed

Lines changed: 10 additions & 11 deletions

File tree

apps/api/bun.lock

Lines changed: 5 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

apps/api/package.json

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@
7272
"elysia-rate-limit": "4.6.2",
7373
"fs-extra": "11.3.5",
7474
"handlebars": "4.7.9",
75-
"ioredis": "5.10.1",
75+
"ioredis": "5.11.1",
7676
"nodemailer": "9.0.1",
7777
"openai": "6.42.0",
7878
"otpauth": "9.5.1",
@@ -127,10 +127,12 @@
127127
"//overrides": {
128128
"_": "Why these transitive deps are pinned. Keep each entry in sync with the matching `overrides` key — enforced by the package-override-parity lint-meta rule.",
129129
"@typescript-eslint/utils": "Single @typescript-eslint/utils resolution across the workspace so the shared @boring-stack-pkg ESLint plugins all load the same utils version. The UI and docs apps mirror this exact pin; a mismatch makes the custom plugins resolve divergent utils copies and fail to load.",
130-
"form-data": "Pin patched form-data (GHSA-hmw2-7cc7-3qxx CRLF injection via unescaped multipart field names); 4.0.5 is vulnerable, 4.0.6 patches it. Pulled in transitively via @sendgrid/mail -> @sendgrid/client -> axios. Excluded from the install quarantine while <7 days old."
130+
"form-data": "Pin patched form-data (GHSA-hmw2-7cc7-3qxx CRLF injection via unescaped multipart field names); 4.0.5 is vulnerable, 4.0.6 patches it. Pulled in transitively via @sendgrid/mail -> @sendgrid/client -> axios. Excluded from the install quarantine while <7 days old.",
131+
"ioredis": "Force a single ioredis resolution across the tree. bullmq 5.78.0 exact-pins ioredis@5.10.1, so bumping the top-level dep to 5.11.1 otherwise leaves bullmq on its own nested 5.10.1 copy — two ioredis instances whose RedisOptions types are structurally incompatible (tsc fails on new Redis(options) calls). This override collapses bullmq's nested copy onto 5.11.1 too; 5.10.1 -> 5.11.1 is a semver patch and the Redis/BullMQ integration tests verify runtime compatibility. Drop this once bullmq advances its own ioredis pin."
131132
},
132133
"overrides": {
133134
"@typescript-eslint/utils": "8.61.0",
134-
"form-data": "4.0.6"
135+
"form-data": "4.0.6",
136+
"ioredis": "5.11.1"
135137
}
136138
}

0 commit comments

Comments
 (0)