react-cognito-auth
react-cognito-auth copied to clipboard
Bump redux from 3.7.2 to 4.1.0
Bumps redux from 3.7.2 to 4.1.0.
Release notes
Sourced from redux's releases.
v4.1.0
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
orfunction
:expect(() => store.dispatch(() => {})).toThrow( /the actual type was: 'function'/ )
expect(() => store.dispatch(new Date())).toThrow( /the actual type was: 'date'/ )
Dependency Updates
We've updated the list of runtime dependencies for Redux:
- We inlined the
symbol-observable
polyfill. This shrinks bundle size by a few bytes,- We've removed the legacy
loose-envify
dependency, which was only ever needed by Browserify users. If you still happen to be using Browserify, please review your build settings and see if you need to make any updates.- We now explicitly depend on
@babel/runtime
to extract some additional helpers out of our bundle. It's likely that your app already is pulling in those helpers anyway, so that removes some potential duplication.Typing Tweaks
We've merged fixes for a couple edge cases in the 4.x TS typings related to state types.
Changes
- Remove symbol-observable and loose-envify deps (#4058 -
@markerikson
)- Port error extraction setup from master (#4057 -
@markerikson
)- Port build dependencies from master into 4.x (#4056 -
@markerikson
)- Rewrite Redux core error messages (#4055 -
@markerikson
)- feat: mangle error codes to error indexes (#3920 -
@andrewmcgivery
)
... (truncated)
Commits
97a7798
4.1.032f368a
4.1.0-alpha.09445d3a
Ignore Docusaurus output9a1d065
Merge pull request #4058 from reduxjs/feature/4x-remove-legacy-depsd29cbfa
Include ESM .mjs file in size comparisonsfb5abcc
Formatting0d7d94d
Inline the symbol-observable polyfillb882d9a
Remove symbol-observable and loose-envify depsf3680b5
Merge pull request #4057 from reduxjs/feature/4x-error-messages3ce88dd
Formatting- Additional commits viewable in compare view
Maintainer changes
This version was pushed to npm by acemarke, a new releaser for redux since your current version.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
-
@dependabot rebase
will rebase this PR -
@dependabot recreate
will recreate this PR, overwriting any edits that have been made to it -
@dependabot merge
will merge this PR after your CI passes on it -
@dependabot squash and merge
will squash and merge this PR after your CI passes on it -
@dependabot cancel merge
will cancel a previously requested merge and block automerging -
@dependabot reopen
will reopen this PR if it is closed -
@dependabot close
will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually -
@dependabot ignore this major version
will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this minor version
will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this dependency
will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) -
@dependabot use these labels
will set the current labels as the default for future PRs for this repo and language -
@dependabot use these reviewers
will set the current reviewers as the default for future PRs for this repo and language -
@dependabot use these assignees
will set the current assignees as the default for future PRs for this repo and language -
@dependabot use this milestone
will set the current milestone as the default for future PRs for this repo and language -
@dependabot badge me
will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot dashboard:
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Automerge options (never/patch/minor, and dev/runtime dependencies)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)