What happened
effect@4.0.0-beta.98 publishes dist/unstable/http/HttpEffect.d.ts importing and re-exporting appendPreResponseHandlerUnsafe from ./internal/preResponseHandler.ts, but the published dist/unstable/http/internal/preResponseHandler.d.ts contains only export {}.
With strict TypeScript and skipLibCheck: false, importing the v4 HttpApi/HTTP server surface fails with:
node_modules/effect/dist/unstable/http/HttpEffect.d.ts(9,10): error TS2305: Module '"./internal/preResponseHandler.ts"' has no exported member 'appendPreResponseHandlerUnsafe'.
Reproduction
- Install exact
effect@4.0.0-beta.98 and @effect/platform-node@4.0.0-beta.98.
- Set
module/moduleResolution to NodeNext, strict mode on, and skipLibCheck: false.
- Import
HttpApiBuilder from effect/unstable/httpapi or NodeHttpServer from @effect/platform-node.
- Run
tsc --noEmit.
Package/source mismatch
The matching source file, src/unstable/http/internal/preResponseHandler.ts, exports both requestPreResponseHandlers and appendPreResponseHandlerUnsafe. The runtime JS also contains those exports. Only the generated/published declaration is empty.
Expected
The declaration file should expose the same types-only surface as the source/runtime. No runtime behavior change appears necessary.
Temporary downstream patch
We are temporarily restoring declarations for PreResponseHandler, requestPreResponseHandlers, and appendPreResponseHandlerUnsafe with patch-package. We will remove that patch when the published declaration is corrected.
What happened
effect@4.0.0-beta.98publishesdist/unstable/http/HttpEffect.d.tsimporting and re-exportingappendPreResponseHandlerUnsafefrom./internal/preResponseHandler.ts, but the publisheddist/unstable/http/internal/preResponseHandler.d.tscontains onlyexport {}.With strict TypeScript and
skipLibCheck: false, importing the v4 HttpApi/HTTP server surface fails with:Reproduction
effect@4.0.0-beta.98and@effect/platform-node@4.0.0-beta.98.module/moduleResolutiontoNodeNext, strict mode on, andskipLibCheck: false.HttpApiBuilderfromeffect/unstable/httpapiorNodeHttpServerfrom@effect/platform-node.tsc --noEmit.Package/source mismatch
The matching source file,
src/unstable/http/internal/preResponseHandler.ts, exports bothrequestPreResponseHandlersandappendPreResponseHandlerUnsafe. The runtime JS also contains those exports. Only the generated/published declaration is empty.Expected
The declaration file should expose the same types-only surface as the source/runtime. No runtime behavior change appears necessary.
Temporary downstream patch
We are temporarily restoring declarations for
PreResponseHandler,requestPreResponseHandlers, andappendPreResponseHandlerUnsafewithpatch-package. We will remove that patch when the published declaration is corrected.