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

Upgrade dependencies to latest versions #55

Merged
merged 13 commits into from
May 12, 2017
Merged

Conversation

randycoulman
Copy link
Contributor

@randycoulman randycoulman commented May 10, 2017

  • Remove immutability-helper (no longer needed)
  • Upgrade npm-run-all to 4.0.2
  • Upgrade babel-polyfill to 6.23.0
  • Upgrade enzyme to 2.8.2 (adds React 15.5.x support)
  • Upgrade history to 4.6.1
  • Upgrade react-redux to 5.0.4 (adds React 15.5.x support)
  • Upgrade redux-devtools-extension to 2.13.2
  • Upgrade react-css-themr to 2.0.0 (does not yet adapt to React 15.5.x deprecation warnings)
  • Upgrade to React 15.5.4: This required replacing react-addons-test-utils with react-test-renderer and react-addons-css-transition-group with react-transition-group.
  • Upgrade react-apollo to 1.2.0
  • Remove direct dependency on apollo-client because it is now exported from react-apollo (as is graphql-tag). We now do import { ApolloClient } from ‘react-apollo’ instead of import ApolloClient from ‘apollo-client’.
  • Upgrade normalize.css to 7.0.0 (or remove it entirely - do we use it anywhere?)
  • (Deferred to Upgrade to react-toolbox 2.0 beta stream #56) Upgrade react-toolbox to the 2.0 beta stream. 2.0 does not yet adjust for the React 15.5.x deprecation warnings, but those changes will not happen on the 1.x stream (most likely). However, 2.0 eliminates the use of Sass internally, so we need to figure out how to do our theming in light of that.
  • Test upgrades against the Phoenix demo app.

Notes:
With the React 15.5 upgrade, we currently get two kinds of warnings:

  • When running tests and in the browser console: Warning: Accessing PropTypes via the main React package is deprecated. Use the prop-types package from npm instead.. This warning is coming from (at least) react-css-themr; it has not yet been updated for React 15.5.x.

  • When installing packages, we get some peer dependency issues with react-toolbox. There are PRs on the 2.0 beta track that address these issues, but not all of them have been merged yet. To be fair, we were seeing these even with React 15.4.2.

Closes #46

@randycoulman randycoulman requested review from lexun and seanculver May 10, 2017 21:51
@randycoulman
Copy link
Contributor Author

@lexun @bmatto I'd love your input on the normalize.css and react-toolbox upgrade notes in the PR description.

@lexun
Copy link
Contributor

lexun commented May 11, 2017

Since react-toolbox 2 is still beta and hasn't fixed the warnings, I'd be fine saving that upgrade for a later PR. I do really dislike warnings in my console though, and so wouldn't be opposed to leaving this open while we sort things out. Up to you.

If you want to keep it open, the phoenix demo app might be a good place to test out the react-toolbox 2 changes. And maybe there is a way we can help with those deprecation warnings in themr and wherever else they're coming from?

@lexun
Copy link
Contributor

lexun commented May 11, 2017

For reference, the normalize.css dependency was left over from before we set up react-toolbox: 5c83e23#diff-a1ae10ba834806ea2252e4e950d1b527L5

Randy Coulman added 11 commits May 11, 2017 09:04
We don’t use it, so we don’t need it.
There is a breaking API change, but it doesn’t affect us.
This requires replacing react-addons-test-utils with
react-test-renderer and react-addons-css-transition-group with
react-transition-group.

We currently get two warnings:
* When running tests and in the browser console: `Warning: Accessing
PropTypes via the main React package is deprecated. Use the prop-types
package from npm instead.`.  This warning is coming from (at least) the
ApolloProvider; we’ll be upgrading that shortly.
* When installing packages, we get some peer dependency issues with
react-toolbox.  We’ll look at resolving those shortly as well.
Remove direct dependency on apollo-client because it is now exported
from react-apollo (as is graphql-tag).

We now do `import { ApolloClient } from ‘react-apollo’` instead of
`import ApolloClient from ‘apollo-client’`.
We don’t use it and it is no longer needed.
Randy Coulman and others added 2 commits May 11, 2017 12:26
Apollo’s redux actions don’t conform to the flux-standard-action spec,
but zeal-redux-utils’ `createReducer` throws an error if any
non-FSA-compliant actions are dispatched.

zeal-redux-utils 0.3.1 now allows a whitelist function to be passed
which will bypass the FSA check on whitelisted actions.

We add a local `createReducer` function that supplies an appropriate
whitelist function for Apollo actions and the use that everywhere.

NOTE: This new function makes use of Ramda, so we now include that in
this project.
@randycoulman randycoulman merged commit 4f714cd into master May 12, 2017
@randycoulman randycoulman deleted the chores/upgrades branch May 12, 2017 17:04
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.

3 participants