Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Snyk] Upgrade react-redux from 8.1.3 to 9.1.0 #1652

Merged
merged 1 commit into from
Mar 29, 2024

Conversation

mo-auto
Copy link
Member

@mo-auto mo-auto commented Mar 27, 2024

This PR was automatically created by Snyk using the credentials of a real user.


Snyk has created this PR to upgrade react-redux from 8.1.3 to 9.1.0.

ℹ️ Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.


Warning: This is a major version upgrade, and may be a breaking change.

  • The recommended version is 10 versions ahead of your current version.
  • The recommended version was released 2 months ago, on 2024-01-12.
Release notes
Package name: react-redux
  • 9.1.0 - 2024-01-12

    This minor release adds a new syntax for pre-typing hooks.

    .withTypes

    Previously, the approach for "pre-typing" hooks with your app settings was a little varied. The result would look something like the below:

    import type { TypedUseSelectorHook } from "react-redux"
    import { useDispatch, useSelector, useStore } from "react-redux"
    import type { AppDispatch, AppStore, RootState } from "./store"

    export const useAppDispatch: () => AppDispatch = useDispatch
    export const useAppSelector: TypedUseSelectorHook<RootState> = useSelector
    export const useAppStore = useStore as () => AppStore

    React Redux v9.1.0 adds a new .withTypes method to each of these hooks, analogous to the .withTypes method found on Redux Toolkit's createAsyncThunk.

    The setup now becomes:

    import { useDispatch, useSelector, useStore } from "react-redux"
    import type { AppDispatch, AppStore, RootState } from "./store"

    export const useAppDispatch = useDispatch.withTypes<AppDispatch>()
    export const useAppSelector = useSelector.withTypes<RootState>()
    export const useAppStore = useStore.withTypes<AppStore>()

    What's Changed

    New Contributors

    Full Changelog: v9.0.4...v9.1.0

  • 9.0.4 - 2023-12-11

    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.

    What's Changed

    • Allow react-native newer than 0.69 as peer dependency by @ R3DST0RM in #2107

    Full Changelog: v9.0.3...v9.0.4

  • 9.0.3 - 2023-12-10

    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".

    What's Changed

    Full Changelog: v9.0.2...v9.0.3

  • 9.0.2 - 2023-12-05

    This bugfix release makes additional tweaks to the React Native artifact filename to help resolve import and bundling issues with RN projects.

    What's Changed

    Full Changelog: v9.0.1...v9.0.2

  • 9.0.1 - 2023-12-04

    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).

    What's Changed

    Full Changelog: v9.0.0...v9.0.1

  • 9.0.0 - 2023-12-04
    Read more
  • 9.0.0-rc.0 - 2023-11-16

    This release candidate improves tree-shaking behavior in v9 to account for changes in bundling setup.

    Note that we hope to release Redux Toolkit 2.0, Redux core 5.0, and React-Redux 9.0 by the start of December! (If we don't hit that, we'll aim for January, after the holidays.)

    See the preview Redux Toolkit 2.0 + Redux core 5.0 Migration Guide for an overview of breaking changes in RTK 2.0 and Redux core.

    to package.json in v9 by @ markerikson in #2079
  • Inline react-is utils to fix tree-shaking in 9.0 by @ markerikson in #2085

Full Changelog: v9.0.0-beta.0...v9.0.0-rc.0

  • 9.0.0-beta.0 - 2023-10-01

    This beta release fixes the imports of use-sync-external-store when used in an ESM environment, and includes the fixes in v8.1.3.

    Redux Toolkit 2.0 release when it is ready.

    What's Changed

    Full Changelog: v9.0.0-alpha.1...v9.0.0-beta.0

  • 9.0.0-alpha.1 - 2023-08-26
    Read more
  • 9.0.0-alpha.0 - 2023-08-23
  • 8.1.3 - 2023-10-01

    This bugfix release fixes an issue with subscriptions being lost when lazy-loaded components are used with React Suspense, and includes stack traces in useSelector usage warnings .

    What's Changed

    Full Changelog: v8.1.2...v8.1.3

  • from react-redux GitHub release notes
    Commit messages
    Package name: react-redux
    • 4ebe6e9 version 9.1.0
    • 94fc5a3 Merge pull request #2114 from aryaemami59/withTypes
    • 349e0f0 Remove unused `TypedUseSelectorHook` imports
    • 78cdeac Merge branch 'master' of https://github.com/reduxjs/react-redux into withTypes
    • 4b63c88 Merge pull request #2115 from aryaemami59/update-dev-deps
    • b3c8498 Update `.eslintrc.json` to remove duplicate config
    • 7cf1383 Add `hooks.withTypes()` to docs
    • 4360ff4 Add JSDocs for `useStore`
    • 8f84eb9 Export `UseDispatch` type and organize exports
    • 0e60aa7 Add JSDocs for `useDispatch`
    • 0f65c2a Add JSDocs for `useSelector`
    • d25511b Lint and format all files
    • 82630d2 Add `lint:fix` command
    • 8ca14d5 Remove extra nested `.eslintrc` files
    • 2f05208 Modernize ESLint configuration
    • 6c2353f Fix lint command
    • dc5dd85 Bump ESLint related dependencies
    • 3aaead5 Rename `.eslintrc` to `.eslintrc.json` as it is deprecated
    • e747c63 Add `hooks.withTypes.test.tsx` to test runtime behavior
    • f3af0b9 Add `hooks.withTypes.test-d.tsx` type test file
    • 1b2b8f1 Remove extra comments
    • b0831d2 Add type tests for `withTypes`
    • df1ad38 Add `IsEqual` type utility for type tests
    • 3dc456d Remove `UseSelector` overload

    Compare


    Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.

    For more information:

    🧐 View latest project report

    🛠 Adjust upgrade PR settings

    🔕 Ignore this dependency or unsubscribe from future upgrade PRs

    @mo-auto mo-auto added comp-admin-ui Component affected by issue or PR kind-dependencies Pull requests that update a dependency file labels Mar 27, 2024
    Copy link

    sonarcloud bot commented Mar 27, 2024

    Quality Gate Passed Quality Gate passed for 'flex_admin_ui'

    Issues
    0 New issues
    0 Accepted issues

    Measures
    0 Security Hotspots
    No data about Coverage
    0.0% Duplication on New Code

    See analysis details on SonarCloud

    @jv18creator jv18creator merged commit 65487d8 into main Mar 29, 2024
    3 checks passed
    @jv18creator jv18creator deleted the snyk-upgrade-755584f75dd71365b548825f833c07e2 branch March 29, 2024 12:26
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    comp-admin-ui Component affected by issue or PR kind-dependencies Pull requests that update a dependency file
    Projects
    None yet
    Development

    Successfully merging this pull request may close these issues.

    3 participants