fix: express session type compatibility #190
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Checklist
npm run test
andnpm run benchmark
and the Code of conduct
This PR was motivated by the current need to assert that the Store types are
any
due to the incompatibility of @fastify/session's types with express-session's. e.g.I tried to keep the changes to a minimum, but it was necessary to alter the callbacks types and to change precisely what was in the various Session types.
The callback needed updating because express-session's callbacks all define their errors as
any
and because we can't guarantee that asession
is passed to the callback.The Session types needed updating because the stores are only compatible with express-session's
SessionData
rather than the full set of properties that a fastify session object has.I wasn't able to run the benchmarks locally, this PR only modifies types, so I hope that's okay.