You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
"Basic CRUD application" can't be started with Angular client #5567
Describe the bug
When trying to run npm start in the angular-client folder on Basic CRUD application example, the error is being thrown:
✘ [ERROR] TS2552: Cannot find name 'MapIterator'. Did you mean 'Iterator'? [plugin angular-compiler]
node_modules/engine.io-client/build/esm/globals.node.d.ts:17:19:
17 │ get cookies(): MapIterator<[string, Cookie]>;
This is a TypeScript version mismatch, not anything wrong with the example code itself.
engine.io-client@6.6.7 (published Sep 25) changed cookies() in globals.node.d.ts to return MapIterator<...>. That type only exists in TypeScript's lib from 5.6 onwards. The angular-client example pins typescript: ~5.2.2 (Angular 17), and since socket.io-client depends on engine.io-client: ~6.6.1, a fresh npm install pulls in 6.6.7 and the compiler can't find the type.
Two ways to get it running:
1. Skip type-checking of .d.ts files (quickest). In tsconfig.json:
"compilerOptions": {
"skipLibCheck": true,
...
}
2. Pin engine.io-client to the previous patch in package.json, then reinstall:
"overrides": {
"engine.io-client": "6.6.6"
}
Bumping TypeScript to 5.6+ would also fix it, but Angular 17 doesn't support that version, so you'd need to upgrade Angular as well. Not worth it just to run the example.
It might also be worth fixing on the engine.io side: a patch release that needs TS 5.6 will hit anyone on an older toolchain. IterableIterator<[string, Cookie]> would keep working on older TS versions.
Activity
RagedPanda commentedon Oct 21, 2026
This is a TypeScript version mismatch, not anything wrong with the example code itself.
engine.io-client@6.6.7(published Sep 25) changedcookies()inglobals.node.d.tsto returnMapIterator<...>. That type only exists in TypeScript's lib from 5.6 onwards. The angular-client example pinstypescript: ~5.2.2(Angular 17), and sincesocket.io-clientdepends onengine.io-client: ~6.6.1, a freshnpm installpulls in 6.6.7 and the compiler can't find the type.Two ways to get it running:
1. Skip type-checking of
.d.tsfiles (quickest). Intsconfig.json:2. Pin engine.io-client to the previous patch in
package.json, then reinstall:Bumping TypeScript to 5.6+ would also fix it, but Angular 17 doesn't support that version, so you'd need to upgrade Angular as well. Not worth it just to run the example.
It might also be worth fixing on the engine.io side: a patch release that needs TS 5.6 will hit anyone on an older toolchain.
IterableIterator<[string, Cookie]>would keep working on older TS versions.