This bugfix release updates the React Native peer dependency to be >= 0.69, to better reflect the need for React 18 compat and (hopefully) resolve issues with the npm package manager throwing peer dep errors on install.
This bugfix release drops the ReactDOM / React Native specific use of render batching, as React 18 now automatically batches, and updates the React types dependencies
Changelog
Batching Dependency Updates
React-Redux has long depended on React's unstable_batchedUpdates API to help batch renders queued by Redux updates. It also re-exported that method as a util named batch.
However, React 18 now auto-batches all queued renders in the same event loop tick, so unstable_batchedUpdates is effectively a no-op.
Using unstable_batchedUpdates has always been a pain point, because it's exported by the renderer package (ReactDOM or React Native), rather than the core react package. Our prior implementation relied on having separate batch.ts and batch.native.ts files in the codebase, and expecting React Native's bundler to find the right transpiled file at app build time. Now that we're pre-bundling artifacts in React-Redux v9, that approach has become a problem.
Given that React 18 already batches by default, there's no further need to continue using unstable_batchedUpdates internally, so we've removed our use of that and simplified the internals.
We still export a batch method, but it's effectively a no-op that just immediately runs the given callback, and we've marked it as @deprecated.
We've also updated the build artifacts and packaging, as there's no longer a need for an alternate-renderers entry point that omits batching, or a separate artifact that imports from "react-native".
This bugfix release updates the package to include a new react-redux.react-native.js bundle that specifically imports React Native, and consolidates all of the 'react' imports into one file to save on bundle size (and enable some tricky React Native import handling).
Add a new future.v7_relativeSplatPath flag to implement a breaking bug fix to relative routing when inside a splat route. (#11087)
This fix was originally added in #10983 and was later reverted in #11078 because it was determined that a large number of existing applications were relying on the buggy behavior (see #11052)
The Bug
The buggy behavior is that without this flag, the default behavior when resolving relative paths is to ignore any splat (*) portion of the current route path.
The Background
This decision was originally made thinking that it would make the concept of nested different sections of your apps in <Routes> easier if relative routing would replace the current splat:
Any paths like /dashboard, /dashboard/team, /dashboard/projects will match the Dashboard route. The dashboard component itself can then render nested <Routes>:
This patch release adjusts the isPlainObject util to allow objects created via Object.create(null), and fixes a type issue which accidentally made the store state type non-nullable.
Bumps the all-dependencies group in /frontend with 10 updates:
1.6.2
1.6.3
0.5.43
0.5.44
9.0.0
9.0.4
6.20.1
6.21.1
5.24.0
5.25.1
5.0.0
5.0.1
7.23.5
7.23.7
7.23.5
7.23.7
8.55.0
8.56.0
2.29.0
2.29.1
Updates
axios
from 1.6.2 to 1.6.3Release notes
Sourced from axios's releases.
Changelog
Sourced from axios's changelog.
Commits
b15b918
chore(release): v1.6.3 (#6151)b76cce0
chore(ci): added branches filter for notify action; (#6084)5e7ad38
fix: Regular Expression Denial of Service (ReDoS) (#6132)8befb86
docs: update alloy link (#6145)d18f40d
docs: add headline sponsorsUpdates
moment-timezone
from 0.5.43 to 0.5.44Release notes
Sourced from moment-timezone's releases.
Changelog
Sourced from moment-timezone's changelog.
Commits
25f19b6
Build moment-timezone 0.5.444734cb2
Bump version to 0.5.44585fabf
Merge pull request #1085 from moment/data/2023dece926a
Add test for valueOf behaviour with invalid moments (#1075)341beac
Ensure valueOf returns NaN for invalid instances (#1082)69d856d
data: Add 2023ddc53e6c
build(deps): bump@babel/traverse
(#1076)dffed7a
perf: Reduce unnecessary getZone() calls in moment.tz()f7d8fc2
docs: Add note about maintenance mode in contributing guide4b1419b
docs: Update contributing guide to reflect the latest data processUpdates
react-redux
from 9.0.0 to 9.0.4Release notes
Sourced from react-redux's releases.
... (truncated)
Commits
8c503ef
Release 9.0.44c7fbd9
Merge pull request #2107 from R3DST0RM/react-native-peer-dependency-fixce76bf0
Build module with updated peerDependency1affb37
Allow react-native newer than 0.69 as peer dependency27d4f3f
Release 9.0.30c31f2d
Restorereact-native
peer dep3da2266
Merge pull request #2105 from reduxjs/feature/9.0-lower-react-typesc550327
Drop@types/react-dom
and lower@types/react
to min needed5bb3c4f
Merge pull request #2104 from reduxjs/feature/9.0-remove-batching6302797
Drop renderer-specific batching behavior and deprecatebatch
Updates
react-router-dom
from 6.20.1 to 6.21.1Release notes
Sourced from react-router-dom's releases.
... (truncated)
Changelog
Sourced from react-router-dom's changelog.
... (truncated)
Commits
08cda17
chore: Update version for release (#11132)e5d73cf
chore: Update version for release (pre) (#11131)ba99ec5
Merge branch 'main' into release-next0f04d11
Fix issues with partial hydration combined with route.lazy (#11121)cc4436c
Update changelogs for useResolvedSplat examplec292bdb
Merge branch 'release-next' into dev69ba50e
chore: Update version for release (#11114)54ec39e
Allow persisted fetchers unmounted during submit to revalidate (#11102)ea0ffee
chore: Update version for release (pre) (#11095)fe3c071
Slight refactor to partial hydration to leverage state.initialized properly (...Updates
react-tooltip
from 5.24.0 to 5.25.1Release notes
Sourced from react-tooltip's releases.
Commits
1450231
docs: remove warning about--rt-transition-closing-delay
44fc0ed
fix: add fallback ifonTransitionEnd
never fires7b83b18
docs: update source comments985e1d4
fix: click events behavior9738899
fix: usefallbackAxisSideDirection
option1f1f8d6
fix:setTimeout()
ResizeObserver
callbackee18133
chore(version): v5.25.01741761
feat: support data-tooltip-class-name on anchor56a7ba1
Merge pull request #1126 from ReactTooltip/fix/docs-css8bffb68
chore: move digital ocean to a bit upper into the readmeUpdates
redux
from 5.0.0 to 5.0.1Release notes
Sourced from redux's releases.
Commits
50b0102
format isPlainObject.ts66f955f
5.0.1ffb02eb
Merge pull request #4644 from reduxjs/publish-cid641945
add me to FUNDING.yml7a2fa78
Add publish CI workflowfa2d899
Merge pull request #4638 from exuanbo/patch-19e8a320
add type test105e389
Merge pull request #4643 from ziayanj/patch-1f259beb
Update why-rtk-is-redux-today.md3cd25e1
Merge pull request #4642 from factiondavid/patch-1Maintainer changes
This version was pushed to npm by phryneas, a new releaser for redux since your current version.
Updates
@babel/core
from 7.23.5 to 7.23.7Release notes
Sourced from
@babel/core
's releases.... (truncated)
Changelog
Sourced from
@babel/core
's changelog.Commits
e428a6d
v7.23.73e79f48
Avoid unpreventableunhandledRejection
events (#16167)d02c1f7
v7.23.6f8a98c7
[babel 8] RemoveCodeGenerator
from@babel/generator
(#16126)Updates
@babel/preset-env
from 7.23.5 to 7.23.7Release notes
Sourced from
@babel/preset-env
's releases.... (truncated)
Changelog
Sourced from
@babel/preset-env
's changelog.Commits
e428a6d
v7.23.7bf9ff15
Update polyfill plugins (#16168)d02c1f7
v7.23.68fa2a91
[babel 8] Removeloose
andspec
options frompreset-env
(#16043)380d186
fix:for of
withiterableIsArray
and shadowing variable (#16011)d93c702
Bump browserslist to 4.22.2 (#16151)afcb5a8
ApplytoPropertyKey
on decorator context name (#16139)Updates
eslint
from 8.55.0 to 8.56.0Release notes
Sourced from eslint's releases.
Changelog
Sourced from eslint's changelog.