Skip to content

Add CircleCI support to 15-stable #8778

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

Merged
merged 17 commits into from
Jan 23, 2017
Merged

Conversation

jackjocross
Copy link
Contributor

This is a second attempt at fixing #8744 after better understanding the problem space.

I cherry-picked commits to package.json to bring it closer to master and then added the circle.yml and scripts/circleci changes needed to run CircleCI.

jackjocross and others added 15 commits January 12, 2017 20:21
…o Yarn (facebook#8309)

* Update ESLint to 3.10.2

Also pull in fbjs for extending properly, per @zpao. This also disables consistent-return, which has about 80 failing cases in React currently. If we'd like to turn this back on, we should do it separately and fix all the call sites properly (rather than just adding 'return undefined;' everywhere, which adds no value.

Fixes to all existing lint errors plus an update for yarn.lock to follow.

* Update yarn.lock after the eslint update.

* Fix all new eslint failures

Unfortunately I had to add three eslint-disable-next-line instances. All have explanations inline.

* Switch Travis to use yarn instead of npm
* Update all Jest packages to 17.x, cache babel-jest transforms

* Remove the caching

Looking at the other builds it doesn't seem to actually be that necessary.  The bottleneck is executors, not build time.

* Remove unnecessary package, fix fiber test runner

* Regenerate yarn lockfile
Nothing really changes.
@@ -66,11 +68,11 @@ var DOMRenderer = ReactFiberReconciler({
return true;
},

commitUpdate(domElement : Instance, oldProps : Props, newProps : Props, children : HostChildren<Instance>) : void {
domElement.innerHTML = '';
recursivelyAppendChildren(domElement, children);
Copy link
Collaborator

Choose a reason for hiding this comment

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

Can you avoid this change?
It's a bit messy because the histories diverged.

I only changed this method here because Flow complained at domElement.textContent = newProps.children; assignment. However in 15-stable this code didn't exist in the first place so we can safely leave the old implementation here.

@gaearon
Copy link
Collaborator

gaearon commented Jan 23, 2017

Looks great. Now that I think of it, I wonder if we should have done this against 15-dev instead since that's the branch that gets merged into 15-stable. Sorry it's so complicated 😞 .

Any chance you could look into what it would take to submit this PR against 15-dev instead? Sorry about this—I’m still finding my way around it as well.

@gaearon gaearon merged commit 688490d into facebook:15-stable Jan 23, 2017
@gaearon
Copy link
Collaborator

gaearon commented Jan 23, 2017

Going to get this in and cherry-pick to 15-dev manually. Thanks again!

gaearon pushed a commit that referenced this pull request Jan 23, 2017
* devDependencies: add core-js and es6-symbol polyfill for tests

* Update Flow and fix issues (#8006)

* Add npm v4.0.0 support (#8082)

* Add support for node v7 (#8135)

* Upgrade ESLint and dependencies, fix new lint errors, switch Travis to Yarn (#8309)

* Update ESLint to 3.10.2

Also pull in fbjs for extending properly, per @zpao. This also disables consistent-return, which has about 80 failing cases in React currently. If we'd like to turn this back on, we should do it separately and fix all the call sites properly (rather than just adding 'return undefined;' everywhere, which adds no value.

Fixes to all existing lint errors plus an update for yarn.lock to follow.

* Update yarn.lock after the eslint update.

* Fix all new eslint failures

Unfortunately I had to add three eslint-disable-next-line instances. All have explanations inline.

* Switch Travis to use yarn instead of npm

* Update all Jest packages to 17.x (#8327)

* Update all Jest packages to 17.x, cache babel-jest transforms

* Remove the caching

Looking at the other builds it doesn't seem to actually be that necessary.  The bottleneck is executors, not build time.

* Remove unnecessary package, fix fiber test runner

* Regenerate yarn lockfile

* Update Flow to 0.37.0 (#8608)

Nothing really changes.

* Update to Jest 18 (#8621)

* mockImpl -> mockImplementation

D4329549

* Fixed linting errors

* circle.yml and circleci scripts

* Update Flow and fix issues (#8006)

* Fixed flow errors

* Updated shrinkwrap

* Removed unnecessary change

* Added jest --runInBand flag

* Removed ReactDOMFiber changes
@gaearon
Copy link
Collaborator

gaearon commented Jan 23, 2017

It worked! That was awesome. Thank you so much, it's a very meaningful contribution. Usually people don't like tasks like this but it's super useful when somebody can help out.

@jackjocross
Copy link
Contributor Author

No problem! Thanks for your help along the way. I'm glad I could help out and learn more about the codebase.

@jackjocross jackjocross deleted the circleci branch January 23, 2017 18:22
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.

4 participants