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

(fix) ProgressBar state error #1553

Merged
merged 9 commits into from
Feb 16, 2017

Conversation

mihir0x69
Copy link
Member

@mihir0x69 mihir0x69 commented Feb 3, 2017

"Expected" to fix #1505

Navigating between routes would throw Warning: setState(...): Can only update a mounted or mounting component. It could not be reproduced reliably. After applying several solutions, the current solution "seems" to have solved the problem because after navigating for a gazillion times, I couldn't reproduce the error.

Please test and let me know if it works. Also, if possible, record your activity so that it'll help me track down the real cause.

@mihir0x69 mihir0x69 changed the title (fix) progress state error (fix) ProgressBar state error Feb 3, 2017
@gihrig
Copy link
Contributor

gihrig commented Feb 4, 2017

LGTM! 💯

Clone
Checkout bfix/progress-state-error
yarn
npm run build
npm start

Progress bar works as expected on first visit to Features, also on revisit after language change.

No errors! ✨

Node 7.4.0
npm 4.1.1
yarn 0.19.1
Mac OS 10.11.6
Chrome 55.0.2883.95 (64-bit))

Copy link
Contributor

@gihrig gihrig left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! (Tested as shown in comment)

@smashercosmo
Copy link

@KarandikarMihir Could you please explain your solution? Cause I really don't get it. "bind" just returns bound function. How does it help in this case?

@mihir0x69
Copy link
Member Author

@smashercosmo Yeah. in my case, the only way to get that error was to change the language from the dropdown in <Footer /> and then navigate away to a different route. Changing the language would not only re-render the <App />, it would re-mount it. (Sometimes I saw that <App /> would re-mount sporadically while navigating without changing the language, which made it even harder for me to understand the problem). But I knew that this is where I should be looking.

After googling for a while, I came to know that withProgressBar was trying to use a listener which was registered with an unmounted component to update the state of newly mounted component.

According to MDN-

Function.prototype.bind()

The bind() method creates a new function that, when called, has its this keyword set to the provided value, with a given sequence of arguments preceding any provided when the new function is called.

Return Value

A copy of the given function with the specified this value and initial arguments.

So basically, we'll get a new copy of router.listenBefore every time the component gets re-mounted. So I went for this solution.

BUT
I can't be 100% sure because of the unpredictable behavior of LanguageProvider or whatever that's causing the app to re-mount. What I need is as many people as we can have to test this. If you could, please test and let me know if it works at all. It is working for me.

@smashercosmo
Copy link

@KarandikarMihir O, I see you changed code, so now there is an actual assignment of the bound function) My question was basically about that)

@coveralls
Copy link

coveralls commented Feb 6, 2017

Coverage Status

Coverage increased (+0.003%) to 99.242% when pulling c179552 on KarandikarMihir:bfix/progress-state-error into d898c43 on react-boilerplate:dev.

@gihrig
Copy link
Contributor

gihrig commented Feb 6, 2017

Still LGTM 💯

Progress bar works as expected on first visit to Features, also on revisit to Features and Home after language change.

No errors! ✨

Node 7.5.0
npm 4.1.2
yarn 0.20.0
Mac OS 10.11.6
Chrome 56.0.2924.87 (64-bit)

@smashercosmo
Copy link

smashercosmo commented Feb 6, 2017

By the way, can't we just set this.mounted flag to true in componentDidMount and unset it in componentWillUnmount and then just use it in updateProgress function:

if (this.mounted) {
  this.setState({ progress })
}

I think this will be the simplest solution
@KarandikarMihir what do you think?

@samit4me
Copy link
Contributor

samit4me commented Feb 11, 2017

I've been testing this and it was looking really good, but then after several attempts, I did manage to get the following error (hint: you got to be quick):

Warning: setState(...): Can only update a mounted or mounting component. This usually means you called setState() on an unmounted component. This is a no-op. Please check the code for the Router component.

Testing environment

Windows 10
Chrome 56
node 6.9.1
npm 3.10.8
yarn 0.19.1

Steps taken

  1. git clone https://github.com/KarandikarMihir/react-boilerplate.git
  2. git co bfix/progress-state-error
  3. yarn
  4. npm start
  5. Open http://localhost:3000/ in Chrome
  6. Open devtools
  7. Select Network tab in devtools
  8. Select GPRS in the throttling dropdown.
  9. On the webpage, click the Features button.
  10. Then quickly select "de" from the language dropdown in the footer
  11. 💥 the error

Problem

After initial investigations, it looks like the issue has nothing to do with the withProgressBar() as I've removed it from the boilerplate and could still replicated the issue, so this problem has probably been around for some time.

I believe this issue exists because the <Router /> is a child of <LanguageProvider />. Therefore, when you select a different language it causes the <LanguageProvider /> to re-render, which causes <Router /> to unmount.

Unfortunately, react-router calls setState() inside of <Router />.componentWillMount(), see L102 of Router.js. Usually this doesn't cause any issues but if you change the language in the middle of a route transition, the setState() mentioned above is executed after <Router /> has been unmounted, which gives the error in question.

Possible solution

Not sure if it is possible, but if we could move <LanguageProvider /> to be a child of <Router /> we may have a better chance of resolving this problem. The current challenge is that the messages are passed into <LanguageProvider /> as props are hot reloadable.

My initial thoughts are to move these hot messages into the Redux store, but would love to hear other peoples thoughts on this???

Shall we move this to a new issue, so we can discuss without the confusion of the ProgressBar???

@samit4me
Copy link
Contributor

@KarandikarMihir @gihrig Did we want to merge these changes? LGTM, but maybe we should leave the original issue open and look into resolving it is a separate PR???

@smashercosmo
Copy link

@samit4me Why would you want to merge these changes if they are not fixing the issue?

@samit4me
Copy link
Contributor

The change was already approved, so I thought it might be best to ask those involved!

@gihrig
Copy link
Contributor

gihrig commented Feb 15, 2017

Why would you want to merge these changes if they are not fixing the issue?

Because It improves the issue to the point where it was not observed with the original testing.

I think it makes sense to merge as is (because it improves the issue) with the understanding there remains an issue that will appear on combination of a specific action and a slow connection. An "edge case"?

So, I would merge, but keep #1505 open for a better fix.

@mihir0x69
Copy link
Member Author

mihir0x69 commented Feb 15, 2017

@smashercosmo I tried your way, but no joy :(

@samit4me Thanks for digging in! That was spot on! I removed appWithRouter, followed your steps and saw the error. I knew something was fishy with <LanguageProvider />.

But that being said, this PR provides some value because it improves the code a little bit- if anything, it's harmless. I've observed that the frequency of setState error has decreased after this fix but I don't have a definitive proof. So I say let's merge this in. Basically what @gihrig said.

Sorry for the delay. I've been busy with work. Let's continue discussion in #1505 and hopefully we'll solve the problem by deductive reasoning.

@coveralls
Copy link

coveralls commented Feb 15, 2017

Coverage Status

Coverage increased (+0.003%) to 99.242% when pulling 4d28aab on KarandikarMihir:bfix/progress-state-error into 9cfdf6d on react-boilerplate:dev.

1 similar comment
@coveralls
Copy link

Coverage Status

Coverage increased (+0.003%) to 99.242% when pulling 4d28aab on KarandikarMihir:bfix/progress-state-error into 9cfdf6d on react-boilerplate:dev.

@samit4me
Copy link
Contributor

Awesome, let's get this merged!

@coveralls
Copy link

coveralls commented Feb 16, 2017

Coverage Status

Coverage increased (+0.003%) to 99.242% when pulling 9f62a0b on KarandikarMihir:bfix/progress-state-error into f29a78c on react-boilerplate:dev.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.003%) to 99.242% when pulling e172a0d on KarandikarMihir:bfix/progress-state-error into 3c1bd28 on react-boilerplate:dev.

@coveralls
Copy link

coveralls commented Feb 16, 2017

Coverage Status

Coverage increased (+0.003%) to 99.242% when pulling e172a0d on KarandikarMihir:bfix/progress-state-error into 3c1bd28 on react-boilerplate:dev.

@samit4me samit4me merged commit 4a6a8d9 into react-boilerplate:dev Feb 16, 2017
samit4me pushed a commit to samit4me/react-boilerplate that referenced this pull request Feb 17, 2017
* Bind listener to the current instance of component

* Bring up coverage

* Reassign listener with newly bound listener

* Minor changes
justingreenberg added a commit that referenced this pull request Sep 22, 2017
* Docs Update: sass.md | New webpack version -loader suffix (#1484)

* New webpack version -loader suffix

New webpack version no longer allowed to omit the '-loader' suffix when using loaders.

* Webpack 2 migration module.loaders => module.rules

* Fix Loaders/Rules

* chore(docs): fix link to redux-saga docs

Fix a broken link to redux-saga docs.

* feat(webpack): Support OpenType fonts with .otf file extension (#1471)

* chore(docs): improve testing documentation

* [doc] improve code snippet syntax in unit-testing doc

linted code snippet and removed uneeded import

* [doc] add overview of reducer test in unit testing doc

add the completed reducer test file as overview in unit testing documentation

* [doc] improve component testing doc

linted code snippets, added complete test file as refernce and link to next doc page.

* chore(setup): remove LGTM config files (#1317)

* chore(setup): remove LGTM

* Add collaborating guidelines

* Add @KarandikarMihir

* Remove .react.js extensions (#1469)

* Remove .react.js extensions

* Restore file names in the title comments

* Remove hyphens

* chore(deps): update deps roll-up Jan-21-2017 (#1501)

* fix(tests): Replace sinon restore (#1512)

* Remove sinon.restore()

* Lock down sinon version

* chore(all): move to an organisation on GitHub

* Make webpack build less verbose (#1510)

* removed route names from app/routes (#1509)

* removed route names from app/routes

* removed name prop from internals/templates/routes

* removed name from internals/gens/route/route.hbs and routeWithReducer.hbs

* fix(eslint): Enable rule react/no-array-index-key (#1521)

* enable rule react/no-array-index-key

* fix test of List component

* fix(dependencies.js): clean up console clutter for install scripts (#1532)

Ref #1506

* Fix typo i18n.md (#1541)

* chore(deps): update deps roll-up Jan-28-2017 (#1531)

* chore(deps): update deps roll-up Jan-28-2017

* Update package.json

* Set history@3.2.1

* Using optimised version of the banner (#1560)

Taken from #907

* test(build:clean script): remove test:clean from build:clean - fixes coveralls reporting? (#1563)

* Update docs (README.md, Gotchas.md) (#1534)

* Update README.md

* Update gotchas.md

* Add links to gotchas

* Update docs

* Remove redundant sentence

* Move reinstall steps to gotchas.md

* Update README.md

* Minor corrections

* Add jest cache clean to gotchas.md

* Fix team of devs link (#1566)

* chore(deps): update deps roll-up Feb-04-2017 (#1561)

* Add iOS home screen icon (#1585)

* fix manifest icons (#1568)

* manifest(fix) (#1594)

* Change dev source map style (#1559)

* (fix) ProgressBar state error (#1553)

* Bind listener to the current instance of component

* Bring up coverage

* Reassign listener with newly bound listener

* Minor changes

* Separated dev and prod middlewares (#1556)

* Update FAQ with Styles getting overridden (#1592)

* Improve <List> tests (#1134)

* Fix imported styles (#1599)

* Migrate webpack loaders

* Add comment to CSS loader
This should help clarify and reduce common problems

* Split css rules into two

* Updated docs

* First draft of new styling docs

* Fix Sass heading

* Fix links and wording

* Add LESS and other improvements

* Post test fixes

* Updated headings and added more info section

* fix: Intl polyfill for language generator (#1611)

* fix: Intl polyfill for language generator
* fix: appveyor chrome issue by adding suggested --ignore-checksums

* Fix broken link in documentation. Fixes #1638. (#1643)

* refactor(react-router-scroll): Import only useScroll (#1609)

* chore(package.json): sort ESLint config (#1660)

This PR will sort the ESLint configuration alphabetically in `package.json`.

* Fix iOS home screen icons (#1604)



* Use absolute paths

* AppVeyor install chrome ignoring checksums

* Add Stateless Functions to Container Generator (#1494)

* Add Stateless Functions to Container Generator

* Fix linting test for generators

* Tightened up generator type names

- Also made component and container use similar order and language

* Fix odd node5 issue

* and disable eslint for the var

* Fix missing reference (#1725)

* Moving Contrib documentation to the right place (#1721)

* refactor(react-router): Import only necessary components (#1608)

Instead of importing the entire library, cherry-pick the components we use.
This is [supported and encouraged](https://github.com/ReactTraining/react-router/blob/master/docs/guides/MinimizingBundleSize.md) by react-router.

Reduced the size of the main bundle by 9 KB (709 KB -> 700 KB).

* Fixing links for the contributing.md (#1738)

* a grammatical item (#1740)

* Remove state update in componentWillUpdate (#1769)

* syntatical improvements to progress bar (#1633)

* syntatical improvements to progress bar

* declare propTypes and defaultProps on the class instead of using the static keyword

* Improve the setup to recognize our own repo before clearing it. (#1720)

* Add intelligence to the setup to recognize our own repo, before nuking it. (#760, #1719)

* Cleaning up console messages upon setup

* Adding a prompt for deciding whether to clear the repo or not. Fixed: #760, #1719

* Fixing the scenario where it was not exiting this file after not removing the repository

* Doing minor changes suggested

* Updating quickstart file location (#1712)

* Request utils: handle 204 and 205 HTTP response (#1780)

* feat(core): styled-components v2 update (#1775)

* feat(core): styled-components v2 update

* fix(deps): lock version for styled plugin

* Fix: Use local instance of shelljs (#1782)

* Use local instance of shelljs

* Replace var with const

* Switching deprecated babel-preset-latest to babel-preset-env (#1736)

* adding babel-preset-env package

* replacing deprecated babel-preset-latest with babel-preset-env

to avoid the following npm installation warning:
```
npm WARN deprecated babel-preset-latest@6.24.0:
preset-latest accomplishes the same task as babel-preset-env.
Please install it with 'npm install babel-preset-env --save-dev'.
'{ "presets": ["latest"] }' to '{ "presets": ["env"] }'.
For more info, please check the docs: http://babeljs.io/docs/plugins/preset-env
```

Ref. #1667

* removing deprecated babel-preset-latest package

* Add missing word (#1789)

* Migrating from React.PropTypes to PropTypes (#1787)

* adding prop-types dependency

* migrating from React.PropTypes to PropTypes

* Adding some tests (#1784)

* tests(FeaturePage): testing shouldComponentUpdate function

* tests(HomePage): testing if username prop is missing

* tests(ProgressBar): testing when route is not changing

* tests: removing global-styles.js from coverage collect

* tests(Toggle): adding tests for empty values prop

* tests(store): adding missing tests

* tests(ProgressBar): adding missing tests

* chore(deps): update deps roll-up Jun-01-2017 (#1794)

* chore(deps): update deps roll-up Jun-01-2017

* Add react-test-renderer as dev dependency

* Remove `react-addons-test-utils`

* Use new `react-helmet` API

* Get rid of the warning: 'DeprecationWarning: loaderUtils.parseQuery() received a non-string value which can be problematic, see webpack/loader-utils#56 parseQuery() will be replaced with getOptions() in the next major version of loader-utils.'
Get rid of the warning: 'DeprecationWarning: loaderUtils.parseQuery() received a non-string value which can be problematic, see webpack/loader-utils#56 parseQuery() will be replaced with getOptions() in the next major version of loader-utils.'

* Revert line that wasn't meant to be commited

* docs(maintenance): Create dependency update doc (#1790)

* docs(maintenance): Create dependency update doc

* Update dependency.md

* Update dependency.md

* Update dependency.md

* Update dependency.md

* Add link to #598

* Update the 'tagged template literals' link to point to its new home at styled-components.com (#1824)

* feat(core): React Router v4, React-Loadable, asyncInjectors (#1746)

* Migrate to react router v4.

* Make sure Switch renders after redux state change by passing in redux location, propagate computedMatch to Route, and make not-found matcher non-exact.

* Fix route generator.

* Implicitly pass store into loader from AsyncRoute to simplify custom child route components.

* Fix route prop propagation.

* Regen yarn.lock

* Keep track of route loading in redux state and read in progress bar.

* Replace AsyncRoute with react-loadable

* Add `DefaultLoadingComponentProvider`

* Rename `loader.js` to `Loadable.js`

* Revert 9f44f1b

* small chores

* Add tests

* Update generators

* Exclude component/Loadable from coverage

* Update docs

* Make App a class that extends React.Component to enable hot reloading

* Add a link to RR4 API

* Improve generators

* Fix linting errors

* Update react-loadable

* Update yarn.lock

* Propagate InnerLoadable props to the rendered component, for Route props like match.

* Refactor

* rename withMappedState -> withConnect

* rename name to key

* Use constants

* Make 'daemon' a default mode for `injectReducer`

* Simplify `ejectSaga`

* Improve docs

* clean up

* recommend to use `ConnectedSwitch`

* turn `App` into a function like it was before

* Run CI

* Import `memoryHistory` and `browserHistory` from `react-router-dom` instead of `react-router`

* Remove path from a 'not found' route

* Update deps

* Simplify tests

* Remove modes from `injectReducer`

* Make second argument to be a descriptor in `sagaInjectors`

* Change `constants` to have consistent values

* Remove non-daemon saga descriptors in production in `ejectSaga`

* Save an entire descriptor in the saga registry

* Fix `constants` in templates

* fix(hmr): Replace `preset-hmre` with vanilla webpack HMR (#1871)

* Replace react-hmre with bare webpack hmr

* Explicitly unmount the main component

* Prevent recomputing reducers for `replaceReducer`

* Add a link to Wepack HMR to the docs

* Remove `overlay=true`

* Accept an array of modules to hot reload

* Add Debugging section in Docs + VS Code instructions (#1698)

* Add debugging section in README

* Move WebStorm FAQ to debugging section

* Add VS Code to debugging section

* Update VS Code launch config

* Update VS Code config to work in dev branch

* Add VS Code launch.json config

* Update launch.json to be compatible with master

* Update VS Code launch to be compatible with master

* Remove .vscode launch config

* Add notice on source map issue for VS Code.

* move onSubmitForm test into mapDispatchToProps test (#1644)

* Use camelcase for reducer and saga key to match selector. (#1888)

* chore(deps): remove unusable deps sinon (#1882)

* chore(deps): downgrade `sanitize.css` (#1872)

* chore(templates): turn `App` into a functional component (#1892)

Fixes #1884

* fix(generators): use correct selector names in tests and regular selectors should not be nested (#1873)

* Rename store.js to configureStore.js to Prevent conflict with storeJS… (#1904)

* Rename store.js to configureStore.js to Prevent conflict with storeJS npm package

* Fix store -> configureStore

* Bump webpack to 3.0.0 and update related deps (#1823)

* Bump webpack to 3.0.0 and related deps

* Add ModuleConcatenationPlugin to webpack base config

* Check in mysterious change in yarn.lock

* Install latest html-webpack-plugin and resolve incorrect peer dep issue

* Update webpack to 3.5.4

* Bump webpack to 3.5.5

* Move ModuleConcatenationPlugin from base to prod config, add  --display-optimization-bailout flag

* Serve Dlls via add-asset-html-webpack-plugin (#1849)

* Serve Dlls via add-asset-html-webpack-plugin

* Remove duplicate dll script tags and cheerio dependency

* Remove cheerio refs from docs

* Minor whitespace change

* Remove eslint exception in webpack.dll.babel.js

* chore(deps): Upgrade React to v15.6 (#1832)

* chore(deps): regenerate `yarn.lock` (#1931)

* chore(deps): regenerate `yarn.lock`

* Empty commit to restart netlify

* chore(3.5): Update changelog.md
gretzky pushed a commit that referenced this pull request Dec 28, 2017
* Merge v3.5 release (#1929)

* Docs Update: sass.md | New webpack version -loader suffix (#1484)

* New webpack version -loader suffix

New webpack version no longer allowed to omit the '-loader' suffix when using loaders.

* Webpack 2 migration module.loaders => module.rules

* Fix Loaders/Rules

* chore(docs): fix link to redux-saga docs

Fix a broken link to redux-saga docs.

* feat(webpack): Support OpenType fonts with .otf file extension (#1471)

* chore(docs): improve testing documentation

* [doc] improve code snippet syntax in unit-testing doc

linted code snippet and removed uneeded import

* [doc] add overview of reducer test in unit testing doc

add the completed reducer test file as overview in unit testing documentation

* [doc] improve component testing doc

linted code snippets, added complete test file as refernce and link to next doc page.

* chore(setup): remove LGTM config files (#1317)

* chore(setup): remove LGTM

* Add collaborating guidelines

* Add @KarandikarMihir

* Remove .react.js extensions (#1469)

* Remove .react.js extensions

* Restore file names in the title comments

* Remove hyphens

* chore(deps): update deps roll-up Jan-21-2017 (#1501)

* fix(tests): Replace sinon restore (#1512)

* Remove sinon.restore()

* Lock down sinon version

* chore(all): move to an organisation on GitHub

* Make webpack build less verbose (#1510)

* removed route names from app/routes (#1509)

* removed route names from app/routes

* removed name prop from internals/templates/routes

* removed name from internals/gens/route/route.hbs and routeWithReducer.hbs

* fix(eslint): Enable rule react/no-array-index-key (#1521)

* enable rule react/no-array-index-key

* fix test of List component

* fix(dependencies.js): clean up console clutter for install scripts (#1532)

Ref #1506

* Fix typo i18n.md (#1541)

* chore(deps): update deps roll-up Jan-28-2017 (#1531)

* chore(deps): update deps roll-up Jan-28-2017

* Update package.json

* Set history@3.2.1

* Using optimised version of the banner (#1560)

Taken from #907

* test(build:clean script): remove test:clean from build:clean - fixes coveralls reporting? (#1563)

* Update docs (README.md, Gotchas.md) (#1534)

* Update README.md

* Update gotchas.md

* Add links to gotchas

* Update docs

* Remove redundant sentence

* Move reinstall steps to gotchas.md

* Update README.md

* Minor corrections

* Add jest cache clean to gotchas.md

* Fix team of devs link (#1566)

* chore(deps): update deps roll-up Feb-04-2017 (#1561)

* Add iOS home screen icon (#1585)

* fix manifest icons (#1568)

* manifest(fix) (#1594)

* Change dev source map style (#1559)

* (fix) ProgressBar state error (#1553)

* Bind listener to the current instance of component

* Bring up coverage

* Reassign listener with newly bound listener

* Minor changes

* Separated dev and prod middlewares (#1556)

* Update FAQ with Styles getting overridden (#1592)

* Improve <List> tests (#1134)

* Fix imported styles (#1599)

* Migrate webpack loaders

* Add comment to CSS loader
This should help clarify and reduce common problems

* Split css rules into two

* Updated docs

* First draft of new styling docs

* Fix Sass heading

* Fix links and wording

* Add LESS and other improvements

* Post test fixes

* Updated headings and added more info section

* fix: Intl polyfill for language generator (#1611)

* fix: Intl polyfill for language generator
* fix: appveyor chrome issue by adding suggested --ignore-checksums

* Fix broken link in documentation. Fixes #1638. (#1643)

* refactor(react-router-scroll): Import only useScroll (#1609)

* chore(package.json): sort ESLint config (#1660)

This PR will sort the ESLint configuration alphabetically in `package.json`.

* Fix iOS home screen icons (#1604)



* Use absolute paths

* AppVeyor install chrome ignoring checksums

* Add Stateless Functions to Container Generator (#1494)

* Add Stateless Functions to Container Generator

* Fix linting test for generators

* Tightened up generator type names

- Also made component and container use similar order and language

* Fix odd node5 issue

* and disable eslint for the var

* Fix missing reference (#1725)

* Moving Contrib documentation to the right place (#1721)

* refactor(react-router): Import only necessary components (#1608)

Instead of importing the entire library, cherry-pick the components we use.
This is [supported and encouraged](https://github.com/ReactTraining/react-router/blob/master/docs/guides/MinimizingBundleSize.md) by react-router.

Reduced the size of the main bundle by 9 KB (709 KB -> 700 KB).

* Fixing links for the contributing.md (#1738)

* a grammatical item (#1740)

* Remove state update in componentWillUpdate (#1769)

* syntatical improvements to progress bar (#1633)

* syntatical improvements to progress bar

* declare propTypes and defaultProps on the class instead of using the static keyword

* Improve the setup to recognize our own repo before clearing it. (#1720)

* Add intelligence to the setup to recognize our own repo, before nuking it. (#760, #1719)

* Cleaning up console messages upon setup

* Adding a prompt for deciding whether to clear the repo or not. Fixed: #760, #1719

* Fixing the scenario where it was not exiting this file after not removing the repository

* Doing minor changes suggested

* Updating quickstart file location (#1712)

* Request utils: handle 204 and 205 HTTP response (#1780)

* feat(core): styled-components v2 update (#1775)

* feat(core): styled-components v2 update

* fix(deps): lock version for styled plugin

* Fix: Use local instance of shelljs (#1782)

* Use local instance of shelljs

* Replace var with const

* Switching deprecated babel-preset-latest to babel-preset-env (#1736)

* adding babel-preset-env package

* replacing deprecated babel-preset-latest with babel-preset-env

to avoid the following npm installation warning:
```
npm WARN deprecated babel-preset-latest@6.24.0:
preset-latest accomplishes the same task as babel-preset-env.
Please install it with 'npm install babel-preset-env --save-dev'.
'{ "presets": ["latest"] }' to '{ "presets": ["env"] }'.
For more info, please check the docs: http://babeljs.io/docs/plugins/preset-env
```

Ref. #1667

* removing deprecated babel-preset-latest package

* Add missing word (#1789)

* Migrating from React.PropTypes to PropTypes (#1787)

* adding prop-types dependency

* migrating from React.PropTypes to PropTypes

* Adding some tests (#1784)

* tests(FeaturePage): testing shouldComponentUpdate function

* tests(HomePage): testing if username prop is missing

* tests(ProgressBar): testing when route is not changing

* tests: removing global-styles.js from coverage collect

* tests(Toggle): adding tests for empty values prop

* tests(store): adding missing tests

* tests(ProgressBar): adding missing tests

* chore(deps): update deps roll-up Jun-01-2017 (#1794)

* chore(deps): update deps roll-up Jun-01-2017

* Add react-test-renderer as dev dependency

* Remove `react-addons-test-utils`

* Use new `react-helmet` API

* Get rid of the warning: 'DeprecationWarning: loaderUtils.parseQuery() received a non-string value which can be problematic, see webpack/loader-utils#56 parseQuery() will be replaced with getOptions() in the next major version of loader-utils.'
Get rid of the warning: 'DeprecationWarning: loaderUtils.parseQuery() received a non-string value which can be problematic, see webpack/loader-utils#56 parseQuery() will be replaced with getOptions() in the next major version of loader-utils.'

* Revert line that wasn't meant to be commited

* docs(maintenance): Create dependency update doc (#1790)

* docs(maintenance): Create dependency update doc

* Update dependency.md

* Update dependency.md

* Update dependency.md

* Update dependency.md

* Add link to #598

* Update the 'tagged template literals' link to point to its new home at styled-components.com (#1824)

* feat(core): React Router v4, React-Loadable, asyncInjectors (#1746)

* Migrate to react router v4.

* Make sure Switch renders after redux state change by passing in redux location, propagate computedMatch to Route, and make not-found matcher non-exact.

* Fix route generator.

* Implicitly pass store into loader from AsyncRoute to simplify custom child route components.

* Fix route prop propagation.

* Regen yarn.lock

* Keep track of route loading in redux state and read in progress bar.

* Replace AsyncRoute with react-loadable

* Add `DefaultLoadingComponentProvider`

* Rename `loader.js` to `Loadable.js`

* Revert 9f44f1b

* small chores

* Add tests

* Update generators

* Exclude component/Loadable from coverage

* Update docs

* Make App a class that extends React.Component to enable hot reloading

* Add a link to RR4 API

* Improve generators

* Fix linting errors

* Update react-loadable

* Update yarn.lock

* Propagate InnerLoadable props to the rendered component, for Route props like match.

* Refactor

* rename withMappedState -> withConnect

* rename name to key

* Use constants

* Make 'daemon' a default mode for `injectReducer`

* Simplify `ejectSaga`

* Improve docs

* clean up

* recommend to use `ConnectedSwitch`

* turn `App` into a function like it was before

* Run CI

* Import `memoryHistory` and `browserHistory` from `react-router-dom` instead of `react-router`

* Remove path from a 'not found' route

* Update deps

* Simplify tests

* Remove modes from `injectReducer`

* Make second argument to be a descriptor in `sagaInjectors`

* Change `constants` to have consistent values

* Remove non-daemon saga descriptors in production in `ejectSaga`

* Save an entire descriptor in the saga registry

* Fix `constants` in templates

* fix(hmr): Replace `preset-hmre` with vanilla webpack HMR (#1871)

* Replace react-hmre with bare webpack hmr

* Explicitly unmount the main component

* Prevent recomputing reducers for `replaceReducer`

* Add a link to Wepack HMR to the docs

* Remove `overlay=true`

* Accept an array of modules to hot reload

* Add Debugging section in Docs + VS Code instructions (#1698)

* Add debugging section in README

* Move WebStorm FAQ to debugging section

* Add VS Code to debugging section

* Update VS Code launch config

* Update VS Code config to work in dev branch

* Add VS Code launch.json config

* Update launch.json to be compatible with master

* Update VS Code launch to be compatible with master

* Remove .vscode launch config

* Add notice on source map issue for VS Code.

* move onSubmitForm test into mapDispatchToProps test (#1644)

* Use camelcase for reducer and saga key to match selector. (#1888)

* chore(deps): remove unusable deps sinon (#1882)

* chore(deps): downgrade `sanitize.css` (#1872)

* chore(templates): turn `App` into a functional component (#1892)

Fixes #1884

* fix(generators): use correct selector names in tests and regular selectors should not be nested (#1873)

* Rename store.js to configureStore.js to Prevent conflict with storeJS… (#1904)

* Rename store.js to configureStore.js to Prevent conflict with storeJS npm package

* Fix store -> configureStore

* Bump webpack to 3.0.0 and update related deps (#1823)

* Bump webpack to 3.0.0 and related deps

* Add ModuleConcatenationPlugin to webpack base config

* Check in mysterious change in yarn.lock

* Install latest html-webpack-plugin and resolve incorrect peer dep issue

* Update webpack to 3.5.4

* Bump webpack to 3.5.5

* Move ModuleConcatenationPlugin from base to prod config, add  --display-optimization-bailout flag

* Serve Dlls via add-asset-html-webpack-plugin (#1849)

* Serve Dlls via add-asset-html-webpack-plugin

* Remove duplicate dll script tags and cheerio dependency

* Remove cheerio refs from docs

* Minor whitespace change

* Remove eslint exception in webpack.dll.babel.js

* chore(deps): Upgrade React to v15.6 (#1832)

* chore(deps): regenerate `yarn.lock` (#1931)

* chore(deps): regenerate `yarn.lock`

* Empty commit to restart netlify

* chore(3.5): Update changelog.md

* chore(deps): Bump version to 3.5.0

* fix(internals): Update RBP version string in internal config (#2002)

closes #2001

* Correct babel plugin order

here is related issue comment:
babel/babel#5325 (comment)

* fix incorrect merge
@lock
Copy link

lock bot commented May 29, 2018

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

@lock lock bot locked as resolved and limited conversation to collaborators May 29, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants