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

Pull all docs updates from 15-stable into 15.6-dev #9889

Merged
merged 35 commits into from
Jun 7, 2017

Conversation

flarnie
Copy link
Contributor

@flarnie flarnie commented Jun 7, 2017

In order to ensure consistency between the 15-stable and 15.6 branches, we found all the diffs present only in 15-stable and cherry-picked them onto 15.6-dev.

These are 100% documentation updates, which is why we didn't bother cherry-picking them in the first place, but having them on the 15.6-dev branch makes the two branches more consistent and that is better.

  • Nobody will accidentally see outdated docs on the 15.6-dev branch
  • these diffs won't somehow be lost or overwritten when we combine the branches to release 15.6.

Test Plan:
Manually tested the docs, looking at many of the updated pages. Also ran all tests etc.

gabriellett and others added 30 commits June 7, 2017 14:45
…s Warning" doc page (facebook#9419)

* Use the same prop-types link on the warning docs page as the main proptypes doc page

* Link to repo instead
* Clarification of setState() behavior

`setState()` is a frequent source of confusion for people new to React, and I believe part of that is due to minimization of the impact of the asynchronous behavior of `setState()` in the documentation. This revision is an attempt to clarify that behavior. For motivation and justification, see [setState Gate](https://medium.com/javascript-scene/setstate-gate-abc10a9b2d82).

* Update reference-react-component.md

* Signature fix

* Update to address @acdlite concerns

* Add more details
* Update proptypes doc

* Removed note
…k#9401)

* Add tabs to installation page (facebook#9275, facebook#9277)

This adds tabs for create-react-app and existing apps to the installation section of the docs. The tab implementation is a simplified version of React Native's installation page.

Fixes facebook#9275.

* Use classList instead of className

* Use same implementation as in RN
* Updated the Good First Bug section in readme

* Inconsistent use of quotes. Prefered single quotes instead of double quotes

* Updated Good first bug link in how_to_contribute doc.

* Undo JSX attribute quote change

* don't capitalize "beginner friendly issue"

(cherry picked from commit 36c935c)
…#9349)

* Impreove react-component of doc

[facebook#9304](facebook#9304)

* update description

* add missing space

(cherry picked from commit 359f5d2)
Previously two headings were 'Javascript Expressions' - now 'Javascript
Expressions as Props' and 'Javascript Expressions as Children'
(cherry picked from commit 363f6cb)
* Update jsx-in-depth.md

Line 9 isn't changed

* Move selection down

* Fix

(cherry picked from commit ccb38a9)
… a synthetic event handler (facebook#9427)

* Lift state up - Updating the documentation to mention that onClick is a synthetic event handler

* Review comments - Rephrase to handle synthetic events and event handler patterns

* Tweak

(cherry picked from commit 53a3939)
* Update codebase-overview.md

* Some more fixes

(cherry picked from commit d724115)
* adds notes to tutorial on es6 and installation

* fixes tutorial mention of opening button tag

* More writing

* Update
* FIX: Move CRA build info under it's tab page

* Add some links
* Reorganize the "following along" instructions

* Minor tweaks

(cherry picked from commit 1ce562e)
…ook#9431)

* Add accessibility to tabs in installation documentation

* Change color and fix styling

(cherry picked from commit 9526174)
…9458)

* [Docs: Installation] Fix tabs responsive layout

* Move tabs a pixel down

* Remove left margin on first tab

* Remove the long line

* Fix mobile styles

(cherry picked from commit a92128e)
* jsx-in-depth.md add ternary statement for javascript expressions section

* jsx-in-depth.md add explanation to get falsey values for props

* update jsx-in-depth.md

* ensure links work locally, remove section about falsey prop values

* Fix links
…cebook#9472)

This should have been retained in our docs, since PropTypes are only
moved and not deprecated.

Partially handles facebook#9467, and I'll make a separate PR to
https://github.com/reactjs/prop-types to add more docs to the README
there.
(cherry picked from commit 39ca8aa)
* Describe fixtures dir in overview

* Fix folder name

(cherry picked from commit d12c41c)
* adds indirect refs to docs

* Add more info

* Explain clearer

* Rephrase

* Update refs-and-the-dom.md

* Update refs-and-the-dom.md

* Update refs-and-the-dom.md

* Update refs-and-the-dom.md

* Update refs-and-the-dom.md

* Update refs-and-the-dom.md

* Update refs-and-the-dom.md

* Update refs-and-the-dom.md

* Update refs-and-the-dom.md

* Update refs-and-the-dom.md

* Update refs-and-the-dom.md

(cherry picked from commit 14fa8a5)
* Add reference to the Hyperscript libraries

I feel these should be mentioned as they provide terser syntax than using `R.createElement` directly, even with a shorthand.

* Rephrase

(cherry picked from commit a8c223a)
…acebook#9502)

* Fix confusing description for the <script>...</script> usage

* Update jsx-in-depth.md

* Update reference-react-dom-server.md

* Update reference-react-dom.md

* Update reference-react.md

(cherry picked from commit 3d60d4c)
Daniel15 and others added 5 commits June 7, 2017 14:51
* [site] Load libraries from unpkg

* Revert Gemfile changes

(cherry picked from commit cf24d87)
* React.createElement syntax

Added React.createElement syntax.
I think this is required for this tutorial.

* Reword

(cherry picked from commit 9824d52)
* Add guide on integrating with non-react code

* Capitalize guide title

* Make links to other docs relative

* Rephrase 'What it does do'

* Remove experimental syntax

* Capitalize Backbone

* Remove empty lifecycle method in generic jQuery example

* Use shouldComponentUpdate() not componentWillUpdate()

* Prefer single quotes

* Add cleanup to generic jQuery example

* Capitalize React

* Generalize the section on Backbone Views

* Generalize the section on Backbone Models, a little

* Add introduction

* Adjust wording

* Simplify ref callbacks

* Fix typo in generic jQuery example

* Fix typos in Backbone models in React components

* Fix more typos in Backbone models in React components

* Add generic section on integrating with other view libraries

* Stress the benefits of an unchanging React element

* Small changes to introduction

* Add missing semicolon

* Revise generic jQuery wrapper section

Moved the section on using empty elements to prevent conflicts above the
code example and added brief introduction to that example.

* Add usage example for Chosen wrapper

* Prevent Chosen wrapper from updating

* Note that sharing the DOM with plugins is not recommended

* Mention how React is used at Facebook

* Mention React event system in template rendering section

* Remove destructuring from function parameters

* Do not name React components Component

* Elaborate on unmountComponentAtNode()

* Mention preference for unidirectional data flow

* Rename backboneModelAdapter

* Replace rest syntax

* Respond to updated model in connectToBackboneModel

* Rewrite connectToBackboneModel example

* Rework connectToBackboneModel example

* Misc changes

* Misc changes

* Change wording

* Tweak some parts

(cherry picked from commit 1816d06)
@flarnie flarnie added this to the 15.6 milestone Jun 7, 2017
@flarnie flarnie mentioned this pull request Jun 7, 2017
49 tasks
Copy link
Contributor

@bvaughn bvaughn left a comment

Choose a reason for hiding this comment

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

¯_(ツ)_/¯

@flarnie flarnie merged commit a9a8124 into facebook:15.6-dev Jun 7, 2017
@gaearon
Copy link
Collaborator

gaearon commented Jun 7, 2017

Are you sure this was necessary?

I’m worried this can create confusion and potential issues later on when merging 15.6 into 15-stable. Now these are two separate “branches” with the same content stuffed into different commits (one squashed commit on 15.6-dev from this PR versus many separate commits on 15-stable). Since these commits are technically different, git won’t recognize them as “the same” commit, and so merging 15.6-dev into 15-stable will now likely produce conflicts.

I tried this locally and indeed git merge 15.6-dev while I’m on 15-stable creates conflicts:

screen shot 2017-06-08 at 00 05 02

these diffs won't somehow be lost or overwritten when we combine the branches to release 15.6.

I don't think this would happen though. We always release from the stable branch. So I presume that releasing would involve merging 15.6-dev into 15-stable. This would apply 15.6-specific commits to it, but would not touch any changes to docs that already happened on 15-stable.

Git won’t revert anything by itself, only if you tell it to during conflict resolution (which wouldn’t happen because 15.6-dev didn’t touch the same docs). But this only works if we don’t cherry-pick them back (which we did in this PR).

I tried resetting 15.6-dev to the version before this PR was merged, and indeed it can be merged into 15-stable without conflicts:

screen shot 2017-06-08 at 00 07 28

If this makes sense I would probably recommend force-pushing e5b3554 onto 15.6-dev to restore the state before this commit.

Sorry if I’m missing something!

@flarnie
Copy link
Contributor Author

flarnie commented Jun 7, 2017

If this makes sense I would probably recommend force-pushing e5b3554 onto 15.6-dev to restore the state before this commit.

This does make sense - asking how we actually do the release was next on my list, and knowing that we will rebase the 'dev' branch onto the 'stable' one means this should be reverted. I'll do what you suggested, thanks for writing this up.

edit: I assume you mean removing e5b3554 from the 15.6-dev branch and force-pushing? That wasn't exactly how it was worded.

@gaearon
Copy link
Collaborator

gaearon commented Jun 7, 2017

In terms of the order in which branches get merged into each other this page should give a good approximation, although the parts about Release Manager can be ignored since we’ve diverged too much (and it only picks things from master).

@gaearon
Copy link
Collaborator

gaearon commented Jun 7, 2017

I imagine we’ll want to:

  • Merge 15-stable into 15-dev (to bring it to the same level since previous release)
  • Merge 15.6-dev into 15-dev (to add upcoming stuff there)
  • Perhaps cut another RC from 15-dev
  • When ready, merge 15-dev into 15-stable
  • Finally, release from 15-stable

We could also skip 15-dev completely since 15.6-dev kinda plays the same role now, but it's a bit confusing to leave it behind because it still exists.

@flarnie flarnie deleted the rebase15-stable-onto-15.6-again branch May 25, 2018 17:52
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.