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

react-transition-group becomes regular dependency of core #1093

Closed
wants to merge 1 commit into from

Conversation

giladgray
Copy link
Contributor

@giladgray giladgray commented May 12, 2017

Fixes broken 1.17.0 release

@zerovox points out that changing a peer dependency like we did in #1063 is basically a breaking change as it requires action from every user.

fortunately, un-breaking the API is pretty easy: we can take react-transition-group on as a regular dependency, rather than a peer dependency. this is legit because it is no longer a react-addon package and does not make awkward use of the React global variable. it also has its own peer dependencies on react.

⚠️ react-transition-group peer dependency on react is ^15.0.0 so it is no longer valid to install [email protected] alongside Blueprint (even though we technically support it). @adidahiya how acceptable is this?

I also removed r-t-g dev dependencies from packages that don't use it (which is most of them--it's only used once in Overlay).

Reviewers should focus on

@adidahiya @cmslewis we should ship a patch release 1.17.1 after this merges to unbreak future installers. i'll be on a plane from 8:30am PST, if one of you could please handle that?

because it is no longer a react dependency, and has its own peer deps on react.
caveat: r-t-g's peer dep is react ^15.0.0, so ^0.14 is no longer valid to install...

remove dev deps from packages that don't use r-t-g
@giladgray giladgray requested a review from adidahiya May 12, 2017 06:29
@giladgray giladgray added the P1 label May 12, 2017
@blueprint-bot
Copy link

react-transition-group becomes regular dependency of core

Preview: documentation | landing | table
Coverage: core | datetime

@cmslewis
Copy link
Contributor

cmslewis commented May 12, 2017

@giladgray lemme handle it for the sake of teaching myself more about the release process. @adidahiya if you wanna lend a hand, I'd appreciate it.

@adidahiya
Copy link
Contributor

adidahiya commented May 12, 2017

Our options look like this (correct me if I'm wrong):

  1. 🔥 Drop React 0.14 (edit: this is the current state of this PR). Should generally be ok but it's a little annoying for some users and it's bad semver. We could tell 0.14 users not to upgrade in the release notes and to reach out in a specific GH support issue if they still rely on this.
  2. 🔥 Leave the v1.17.0 breaking change in place. It requires manual upgrade steps.
  3. Revert the react-transition-group change. This is the only non-breaking solution, it just produces warnings with React 15.5.

I'd actually advocate for (3); we can release 2.0.0-rc.0 with the React 16 compatible changes when it's appropriate (maybe when we think 16 is imminent).

Thoughts?

@bensalilijames
Copy link
Contributor

Oops - apologies, I should've really picked up on this! Thanks for taking care of the fire :)

@adidahiya adidahiya deleted the gg/r-t-g-dep branch May 12, 2017 21:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants