reduxjs/react-redux
### [`v7.1.3`](https://togithub.com/reduxjs/react-redux/releases/v7.1.3)
[Compare Source](https://togithub.com/reduxjs/react-redux/compare/v7.1.2...v7.1.3)
Forgot to remove a `console` statement before I published 7.1.2. Oops!
Lint your source code before publishing, folks.
#### [Changes](https://togithub.com/reactjs/react-redux/compare/v7.1.2...v7.1.3)
- Remove leftover console statement ([@markerikson](https://togithub.com/markerikson) - [`30101bb`](https://togithub.com/reduxjs/react-redux/commit/30101bb))
### [`v7.1.2`](https://togithub.com/reduxjs/react-redux/releases/v7.1.2)
[Compare Source](https://togithub.com/reduxjs/react-redux/compare/v7.1.1...v7.1.2)
This releases fixes a subtle timing bug with `connect` and `useSelector` in React Native environments, and adds the ability to pass through non-Redux-store values as a `store` prop.
##### Fixed Store Subscriptions in React Native
Our current implementation requires cascading updates down through connected components. This is primarily done during React's "commit phase" via the `useLayoutEffect` hook. Unfortunately, [React warns when `useLayoutEffect` is called in SSR environments](https://togithub.com/facebook/react/issues/14927), so we try to feature-detect that and fall back to `useEffect` just to avoid that warning.
Unfortunately, a tweak to the feature detection conditions during the pre-7.1.0 work caused the check to accidentally fail in React Native environments. This meant that `useEffect` was actually being used all the time, and this led to occasional timing bugs such as [#1313](https://togithub.com/reduxjs/react-redux/issues/1313) and [#1437](https://togithub.com/reduxjs/react-redux/issues/1437) . This affected the previous v7.1.x releases.
We've fixed that issue, and added additional test cases to ensure that our code works correctly under React Native.
See [#1444](https://togithub.com/reduxjs/react-redux/issues/1444) for more details on the feature detection and the fix.
##### Passing Through Non-Store Values
`connect` has always accepted passing a Redux store directly to connected components as a prop named `store` (with the exception of v6). As a result, the `store` prop has effectively been treated as a "reserved" prop, in much the same way that `key` and `ref` are "reserved" prop names handled by React.
Some users may be using the word "store" to describe their domain data, and have asked to allow variables that _aren't_ a Redux store through the `store` prop to the component ([#1393](https://togithub.com/reduxjs/react-redux/issues/1393)). We've finally been able to implement that capability.
#### [Changes](https://togithub.com/reactjs/react-redux/compare/v7.1.1...v7.1.2)
- Pass non-Redux-store values through the `store` prop ([@markerikson](https://togithub.com/markerikson) - [#1447](https://togithub.com/reduxjs/react-redux/issues/1447))
- Fix RN batching and effect behavior ([@markerikson](https://togithub.com/markerikson) - [#1444](https://togithub.com/reduxjs/react-redux/issues/1444))
- Remove unused `latestStoreState` field ([@Hypnosphi](https://togithub.com/Hypnosphi) - [#1426](https://togithub.com/reduxjs/react-redux/issues/1426))
- Mark the react renderers as optional peer deps. ([@timdorr](https://togithub.com/timdorr) - [`388d9e4`](https://togithub.com/reduxjs/react-redux/commit/388d9e4))
- Use the same condition for checking if SSR in useSelector.js as in connectAdvanced.js ([@LeoDanielsson](https://togithub.com/LeoDanielsson) - [#1419](https://togithub.com/reduxjs/react-redux/issues/1419))
Renovate configuration
:date: Schedule: "every weekend" (UTC).
:vertical_traffic_light: Automerge: Enabled.
:recycle: Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "rebase!".
:no_bell: Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Renovate Bot. View repository job log here.
This PR contains the following updates:
7.1.1
->7.1.3
Release Notes
reduxjs/react-redux
### [`v7.1.3`](https://togithub.com/reduxjs/react-redux/releases/v7.1.3) [Compare Source](https://togithub.com/reduxjs/react-redux/compare/v7.1.2...v7.1.3) Forgot to remove a `console` statement before I published 7.1.2. Oops! Lint your source code before publishing, folks. #### [Changes](https://togithub.com/reactjs/react-redux/compare/v7.1.2...v7.1.3) - Remove leftover console statement ([@markerikson](https://togithub.com/markerikson) - [`30101bb`](https://togithub.com/reduxjs/react-redux/commit/30101bb)) ### [`v7.1.2`](https://togithub.com/reduxjs/react-redux/releases/v7.1.2) [Compare Source](https://togithub.com/reduxjs/react-redux/compare/v7.1.1...v7.1.2) This releases fixes a subtle timing bug with `connect` and `useSelector` in React Native environments, and adds the ability to pass through non-Redux-store values as a `store` prop. ##### Fixed Store Subscriptions in React Native Our current implementation requires cascading updates down through connected components. This is primarily done during React's "commit phase" via the `useLayoutEffect` hook. Unfortunately, [React warns when `useLayoutEffect` is called in SSR environments](https://togithub.com/facebook/react/issues/14927), so we try to feature-detect that and fall back to `useEffect` just to avoid that warning. Unfortunately, a tweak to the feature detection conditions during the pre-7.1.0 work caused the check to accidentally fail in React Native environments. This meant that `useEffect` was actually being used all the time, and this led to occasional timing bugs such as [#1313](https://togithub.com/reduxjs/react-redux/issues/1313) and [#1437](https://togithub.com/reduxjs/react-redux/issues/1437) . This affected the previous v7.1.x releases. We've fixed that issue, and added additional test cases to ensure that our code works correctly under React Native. See [#1444](https://togithub.com/reduxjs/react-redux/issues/1444) for more details on the feature detection and the fix. ##### Passing Through Non-Store Values `connect` has always accepted passing a Redux store directly to connected components as a prop named `store` (with the exception of v6). As a result, the `store` prop has effectively been treated as a "reserved" prop, in much the same way that `key` and `ref` are "reserved" prop names handled by React. Some users may be using the word "store" to describe their domain data, and have asked to allow variables that _aren't_ a Redux store through the `store` prop to the component ([#1393](https://togithub.com/reduxjs/react-redux/issues/1393)). We've finally been able to implement that capability. #### [Changes](https://togithub.com/reactjs/react-redux/compare/v7.1.1...v7.1.2) - Pass non-Redux-store values through the `store` prop ([@markerikson](https://togithub.com/markerikson) - [#1447](https://togithub.com/reduxjs/react-redux/issues/1447)) - Fix RN batching and effect behavior ([@markerikson](https://togithub.com/markerikson) - [#1444](https://togithub.com/reduxjs/react-redux/issues/1444)) - Remove unused `latestStoreState` field ([@Hypnosphi](https://togithub.com/Hypnosphi) - [#1426](https://togithub.com/reduxjs/react-redux/issues/1426)) - Mark the react renderers as optional peer deps. ([@timdorr](https://togithub.com/timdorr) - [`388d9e4`](https://togithub.com/reduxjs/react-redux/commit/388d9e4)) - Use the same condition for checking if SSR in useSelector.js as in connectAdvanced.js ([@LeoDanielsson](https://togithub.com/LeoDanielsson) - [#1419](https://togithub.com/reduxjs/react-redux/issues/1419))Renovate configuration
:date: Schedule: "every weekend" (UTC).
:vertical_traffic_light: Automerge: Enabled.
:recycle: Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "
rebase!
".:no_bell: Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot. View repository job log here.