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, react-dom, , , , connected-react-router, react-redux, react-router, react-router-dom, react-scripts, redux, redux-thunk #50

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

xdenias
Copy link
Owner

@xdenias xdenias commented Sep 20, 2024

snyk-top-banner

Snyk has created this PR to upgrade multiple dependencies.

👯‍♂ The following dependencies are linked and will therefore be updated together.

ℹ️ 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.

Name Versions Released on

react
from 17.0.1 to 17.0.2 | 1 version ahead of your current version | 3 years ago
on 2021-03-22
react-dom
from 17.0.1 to 17.0.2 | 1 version ahead of your current version | 3 years ago
on 2021-03-22
@testing-library/jest-dom
from 5.11.6 to 5.17.0 | 17 versions ahead of your current version | a year ago
on 2023-07-18
@testing-library/react
from 11.2.2 to 11.2.7 | 5 versions ahead of your current version | 3 years ago
on 2021-05-14
@testing-library/user-event
from 12.6.0 to 12.8.3 | 12 versions ahead of your current version | 4 years ago
on 2021-03-09
connected-react-router
from 6.8.0 to 6.9.3 | 4 versions ahead of your current version | 2 years ago
on 2022-07-11
react-redux
from 7.2.2 to 7.2.9 | 7 versions ahead of your current version | 2 years ago
on 2022-09-23
react-router
from 5.2.0 to 5.3.4 | 5 versions ahead of your current version | 2 years ago
on 2022-10-02
react-router-dom
from 5.2.0 to 5.3.4 | 6 versions ahead of your current version | 2 years ago
on 2022-10-02
react-scripts
from 4.0.1 to 4.0.3 | 2 versions ahead of your current version | 4 years ago
on 2021-02-22
redux
from 4.0.5 to 4.2.1 | 7 versions ahead of your current version | 2 years ago
on 2023-01-28
redux-thunk
from 2.3.0 to 2.4.2 | 3 versions ahead of your current version | 2 years ago
on 2022-11-04

Issues fixed by the recommended upgrade:

Issue Score Exploit Maturity
high severity Prototype Pollution
SNYK-JS-ASYNC-2441827
176 Proof of Concept
high severity Asymmetric Resource Consumption (Amplification)
SNYK-JS-BODYPARSER-7926860
176 No Known Exploit
high severity Improper Input Validation
SNYK-JS-FOLLOWREDIRECTS-6141137
176 Proof of Concept
high severity Improper Input Validation
SNYK-JS-URLPARSE-2407770
176 Proof of Concept
high severity Remote Memory Exposure
SNYK-JS-DNSPACKET-1293563
176 No Known Exploit
high severity Prototype Pollution
SNYK-JS-IMMER-1019369
176 Proof of Concept
high severity Server-side Request Forgery (SSRF)
SNYK-JS-IP-6240864
176 Proof of Concept
medium severity Information Exposure
SNYK-JS-EVENTSOURCE-2823375
176 Proof of Concept
medium severity Open Redirect
SNYK-JS-EXPRESS-6474509
176 No Known Exploit
medium severity Cross-site Scripting
SNYK-JS-EXPRESS-7926867
176 No Known Exploit
medium severity Information Exposure
SNYK-JS-FOLLOWREDIRECTS-2332181
176 Proof of Concept
medium severity Information Exposure
SNYK-JS-FOLLOWREDIRECTS-6444610
176 Proof of Concept
medium severity Command Injection
SNYK-JS-REACTDEVUTILS-1083268
176 Proof of Concept
low severity Cross-site Scripting
SNYK-JS-SEND-7926862
176 No Known Exploit
low severity Cross-site Scripting
SNYK-JS-SERVESTATIC-7926865
176 No Known Exploit
critical severity Incomplete List of Disallowed Inputs
SNYK-JS-BABELTRAVERSE-5962462
176 Proof of Concept
medium severity Improper Input Validation
SNYK-JS-URLPARSE-1078283
176 No Known Exploit
medium severity Open Redirect
SNYK-JS-URLPARSE-1533425
176 Proof of Concept
medium severity Access Restriction Bypass
SNYK-JS-URLPARSE-2401205
176 Proof of Concept
medium severity Authorization Bypass
SNYK-JS-URLPARSE-2407759
176 Proof of Concept
medium severity Authorization Bypass Through User-Controlled Key
SNYK-JS-URLPARSE-2412697
176 Proof of Concept
low severity Information Exposure
SNYK-JS-FOLLOWREDIRECTS-2396346
176 No Known Exploit
low severity Prototype Pollution
SNYK-JS-MINIMIST-2429795
176 Proof of Concept
Release notes
Package name: react from react GitHub release notes
Package name: react-dom from react-dom GitHub release notes
Package name: @testing-library/jest-dom from @testing-library/jest-dom GitHub release notes
Package name: @testing-library/react from @testing-library/react GitHub release notes
Package name: @testing-library/user-event from @testing-library/user-event GitHub release notes
Package name: connected-react-router from connected-react-router GitHub release notes
Package name: react-redux
  • 7.2.9 - 2022-09-23

    This patch release updates the rarely-used areStatesEqual option for connect to now pass through ownProps for additional use in determining which pieces of state to compare if desired.

    The new signature is:

    {
      areStatesEqual?: (
        nextState: State,
        prevState: State,
        nextOwnProps: TOwnProps,
        prevOwnProps: TOwnProps
      ) => boolean
    }

    What's Changed

    Full Changelog: v7.2.8...v7.2.9

  • 7.2.8 - 2022-04-01

    This release fixes a bug in the 7.x branch that caused <Provider> to unsubscribe and stop updating completely when used inside of React 18's <StrictMode>. The new "strict effects" behavior double-mounts components, and the subscription needed to be set up inside of a useLayoutEffect instead of a useMemo. This was previously fixed as part of v8 development, and we've backported it.

    Note: If you are now using React 18, we strongly recommend using the React-Redux v8 beta instead of v7.x!. v8 has been rewritten internally to work correctly with React 18's Concurrent Rendering capabilities. React-Redux v7 will run and generally work okay with existing code, but may have rendering issues if you start using Concurrent Rendering capabilities in your code.

    Now that React 18 is out, we plan to finalize React-Redux v8 and release it live within the next couple weeks. Per an update yesterday in the "v8 roadmap" thread, React-Redux v8 will be updated in the next couple days to ensure support for React 16.8+ as part of the next beta release. We would really appreciate final feedback on using React-Redux v8 beta with React 18 before we publish the final version.

    Full Changelog: v7.2.7...v7.2.8

  • 7.2.7 - 2022-03-31

    This release updates React-Redux v7's peer dependencies to accept React 18 as a valid version, only to avoid installation errors caused by NPM's "install all the peer deps and error if they don't match" behavior.

    Note: If you are now using React 18, we strongly recommend using the React-Redux v8 beta instead of v7.x!. v8 has been rewritten internally to work correctly with React 18's Concurrent Rendering capabilities. React-Redux v7 will run and generally work okay with existing code, but may have rendering issues if you start using Concurrent Rendering capabilities in your code.

    Now that React 18 is out, we plan to finalize React-Redux v8 and release it live within the next couple weeks. We would really appreciate final feedback on using React-Redux v8 beta with React 18 before we publish the final version.

  • 7.2.6 - 2021-10-25
  • 7.2.5 - 2021-09-04
  • 7.2.4 - 2021-04-24
  • 7.2.3 - 2021-03-23
  • 7.2.2 - 2020-10-26
from react-redux GitHub release notes
Package name: react-router
  • 5.3.4 - 2022-10-02
  • 5.3.3 - 2022-05-18
  • 5.3.2 - 2022-05-17
  • 5.3.1 - 2022-04-17
  • 5.2.1 - 2021-08-27
  • 5.2.0 - 2020-05-11
from react-router GitHub release notes
Package name: react-router-dom
  • 5.3.4 - 2022-10-02
  • 5.3.3 - 2022-05-18
  • 5.3.2 - 2022-05-17
  • 5.3.1 - 2022-04-17
  • 5.3.0 - 2021-09-03
  • 5.2.1 - 2021-08-27
  • 5.2.0 - 2020-05-11
from react-router-dom GitHub release notes
Package name: react-scripts
  • 4.0.3 - 2021-02-22
  • 4.0.2 - 2021-02-03
  • 4.0.1 - 2020-11-23
from react-scripts GitHub release notes
Package name: redux
  • 4.2.1 - 2023-01-28

    This bugfix release removes the isMinified internal check to fix a compat issue with Expo. That check has added in early 2016, soon after Redux 3.0 was released, at a time when it was still less common to use bundlers with proper production build settings. Today that check is irrelevant, so we've removed it.

    What's Changed

    Full Changelog: v4.2.0...v4.2.1

  • 4.2.0 - 2022-04-18

    This release marks the original createStore API as @ deprecated to encourage users to migrate to Redux Toolkit, and adds a new legacy_createStore API as an alias without the deprecation warning.

    Goal

    Redux Toolkit (the @ reduxjs/toolkit package) is the right way for Redux users to write Redux code today:

    https://redux.js.org/introduction/why-rtk-is-redux-today

    Unfortunately, many tutorials are still showing legacy "hand-written" Redux patterns, which result in a much worse experience for users. New learners going through a bootcamp or an outdated Udemy course just follow the examples they're being shown, don't know that RTK is the better and recommended approach, and don't even think to look at our docs.

    Given that, the goal is to provide them with a visual indicator in their editor, like createStore . When users hover over the createStore import or function call, the doc tooltip recommends using configureStore from RTK instead, and points them to that docs page. We hope that new learners will see the strikethrough, read the tooltip, read the docs page, learn about RTK, and begin using it.

    To be extremely clear:

    WE ARE NOT GOING TO ACTUALLY REMOVE THE createStore API, AND ALL YOUR EXISTING CODE WILL STILL CONTINUE TO WORK AS-IS!

    We are just marking createStore as "deprecated":

    "the discouragement of use of some feature or practice, typically because it has been superseded or is no longer considered efficient or safe, without completely removing it or prohibiting its use"

    For additional details, see the extensive discussion in #4325 .

    Rationale

    • RTK provides a vastly improved Redux usage experience, with APIs that simplify standard usage patterns and eliminate common bugs like accidental mutations
    • We've had suggestions to merge all of RTK into the redux core package, or fully deprecate the entire redux package and rename it to @ reduxjs/core. Unfortunately, those bring up too many complexities:
      • We already had a package rename from redux-starter-kit to @ reduxjs/toolkit, and all of our docs and tutorials have pointed to it for the last three years. I don't want to put users through another whiplash package transition for no real benefit
      • Merging or rearranging our packages would effectively require merging all of the Redux repos into a single monorepo. That would require hundreds of hours of effort from us maintainers, including needing to somehow merge all of our docs sites together. We don't have the time to do that.
    • I don't want to add runtime warnings that would be really annoying

    So, this is the minimum possible approach we can take to reach out to users who otherwise would never know that they are following outdated patterns, while avoiding breaking running user code or having to completely rewrite our package and repo structure.

    Results

    When a user imports createStore in their editor, they will see a visual strikethrough. Hovering over it will show a doc tooltip that encourages them to use configureStore from RTK, and points to an explanatory docs page:

    image

    Again, no broken code, and no runtime warnings.

    If users do not want to see that strikethrough, they have three options:

    • Follow our suggestion to switch over to Redux Toolkit and configureStore
    • Do nothing. It's just a visual strikethrough, and it doesn't affect how your code behaves. Ignore it.
    • Switch to using the legacy_createStore API that is now exported, which is the exact same function but with no @ deprecation tag. The simplest option is to do an aliased import rename:

    image

    What's Changed

    • Mark createStore as deprecated, and add legacy_createStore alias by @ markerikson in #4336

    Full Changelog: v4.1.2...v4.2.0

  • 4.2.0-alpha.0 - 2021-10-30

    4.2.0-alpha.0

  • 4.1.2 - 2021-10-28

    This release fixes a small specific TS types issue where state types that had a nested unknown field inside would cause compilation failures when used as the preloadedState argument.

    What's Changed

    Full Changelog: v4.1.1...v4.1.2

  • 4.1.1 - 2021-08-03

    Just a small fix for Safari users in development mode.

    Changes

    • Move miniKindOf out of if scope to fix ES5 compatibility issue (#4090 by @ embeddedt)
  • 4.1.0 - 2021-04-24

    This release shrinks our bundle size via error message extraction, updates several error messages for clarity, and optimizes our list of runtime dependencies.

    Overall, version 4.1 shrinks from 2.6K min+gz to 1.6K min+gz thanks to these changes.

    Be sure to check out the Redux Toolkit 1.6 alpha containing our new "RTK Query" data fetching APIs! It also includes Redux 4.1 as a dependency.

    Changelog

    Error Message Extraction and Improvements

    We now extract all of our error messages from production builds in order to save on bundle size, using a technique inspired from React's error code extraction. The error messages will still show as normal in development, but in production they will reference a specific numeric error code and provide a link to a Redux docs page that has the full error message.

    An example of this is: https://redux.js.org/errors?code=5 , which shows the "can't subscribe while reducers are executing" error.

    The error code extraction saves about 800 bytes out of a production build.

    Thanks to @ andrewmcgivery for doing all the hard work on implementing the error extraction!

    We've also updated many of our error messages to provide additional details at runtime about what happened, especially runtime type checks such as "actions must be plain objects". They now provide a more specific type for the unexpected value, such as indicating promise or function:

Snyk has created this PR to upgrade:
  - react from 17.0.1 to 17.0.2.
    See this package in npm: https://www.npmjs.com/package/react
  - react-dom from 17.0.1 to 17.0.2.
    See this package in npm: https://www.npmjs.com/package/react-dom
  - @testing-library/jest-dom from 5.11.6 to 5.17.0.
    See this package in npm: https://www.npmjs.com/package/@testing-library/jest-dom
  - @testing-library/react from 11.2.2 to 11.2.7.
    See this package in npm: https://www.npmjs.com/package/@testing-library/react
  - @testing-library/user-event from 12.6.0 to 12.8.3.
    See this package in npm: https://www.npmjs.com/package/@testing-library/user-event
  - connected-react-router from 6.8.0 to 6.9.3.
    See this package in npm: https://www.npmjs.com/package/connected-react-router
  - react-redux from 7.2.2 to 7.2.9.
    See this package in npm: https://www.npmjs.com/package/react-redux
  - react-router from 5.2.0 to 5.3.4.
    See this package in npm: https://www.npmjs.com/package/react-router
  - react-router-dom from 5.2.0 to 5.3.4.
    See this package in npm: https://www.npmjs.com/package/react-router-dom
  - react-scripts from 4.0.1 to 4.0.3.
    See this package in npm: https://www.npmjs.com/package/react-scripts
  - redux from 4.0.5 to 4.2.1.
    See this package in npm: https://www.npmjs.com/package/redux
  - redux-thunk from 2.3.0 to 2.4.2.
    See this package in npm: https://www.npmjs.com/package/redux-thunk

See this project in Snyk:
https://app.snyk.io/org/deniavsa/project/25e739d5-afd6-4005-a2e7-9e18f89b9847?utm_source=github&utm_medium=referral&page=upgrade-pr
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants