This bugfix release includes tweaks to RTKQ options handling, tweaks for perf updates, dependency updates, and updates to our CI tooling.
Also, please check out our ongoing RTK 2.0 alpha releases! They have significant improvements to bundle size, ESM/CJS compatibility, TS typings, and reducer update performance. We're looking for real-world feedback on behavior, performance, and any issues you might run into.
Changelog
RTK Query Options Updates
Passing transformResponse
as part of enhanceEndpoints
can now override the TS type of the original data.
fetchBaseQuery
now properly checks for a global responseHandler
option.
Performance and Internals
RTK Query now uses Immer's original()
to do comparisons inside of copyWithStructuralSharing
, which should significantly speed up performance when applying changes from re-fetched data.
RTKQ's internal subscriptionUpdated
action is now marked as batchable.
We've updated dependencies to Immer 9.0.21, Reselect 4.1.8, and Redux 4.2.1.
CI Updates
We've added a suite of example apps built with different frameworks such as CRA 4, CRA 5, Next, and Vite, as well as examples that check for compatibility in Node with CJS and ESM modes and with various TS module resolution modes.
What's Changed
- Test published artifacts in CI by @markerikson in #3213
- Use Git revision in version and add Node CI examples by @markerikson in #3258
- Add
arethetypeswrong
automated CLI check by @markerikson in #3294 - Add
attw
CLI option to treat problems as non-errors by @markerikson in #3316 - Use original instead of immer draft for perf by @GeorchW in #3270
- enable enhanceEndpoints.transformResponse to override ResultType by @dmitrigrabov in #2953
- Fix global
responseHandler
being used infetchBaseQuery
by @praxxis in #3137 - reset internalState.currentSubscriptions on
resetApiState
by @phryneas in #3333 - Bump deps and mark
subscriptionUpdated
as autobatched by @markerikson in #3364
Full Changelog: v1.9.3...v1.9.4