From eed235340349828b3bd908b596c53a654332a8c8 Mon Sep 17 00:00:00 2001 From: Lorenzo Sciandra Date: Sun, 11 Nov 2018 19:39:55 +0000 Subject: [PATCH 1/5] base notes --- core-meetings/2019-11-oss-meeting.md | 33 ++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 core-meetings/2019-11-oss-meeting.md diff --git a/core-meetings/2019-11-oss-meeting.md b/core-meetings/2019-11-oss-meeting.md new file mode 100644 index 00000000..8eb48e8a --- /dev/null +++ b/core-meetings/2019-11-oss-meeting.md @@ -0,0 +1,33 @@ +# Open Source Maintenance: November 2018 Core Meeting + +As stewards of React Native engineers worldwide, we've contemplated ways to improve alignment and visibility of the framework's direction, where community members and Facebook alike joined to discuss issues and propose responses. + +The community team is made up of volunteers who help maintain React Native, contribute to education materials, and improve the React Native developer's environment. + +## The core discussion + +This time, many members from both the community and the FB team met to talk about the Open Source repository and its maintenance. + +The first part of the conversation was about two aspects of the current release (0.57.x): + +- how the React sync commits land in master, and have impacted the releases +- how to tackle the patch releases and cherry picks request, given that over time this is more complex and prone to merge conflicts (because of the speed at which master branch moves) + +During the discussion, the FB team also clarified a couple of points from their latest blogpost about [Open Source Roadmap](http://facebook.github.io/react-native/blog/2018/11/01/oss-roadmap), here reported for transparency sake: + +- the internal FB team is _not_ migrating to React Native Open Source, they are simply changing _how_ they consume the React Native APIs. Which means that, internally, instead of writing `const View = require('View')` they will be writing `const {View} = require('react-native')` + +- the FB team is not foreseeing taking management or ownership of the release cycle, commending the community for how they have handled it so far + +The second and last part of the meeting was dedicated to the upcoming version 0.58 - it was clarified that the JSI that has landed on master should not directly affect developers consuming React Native, and an issue to facilitate the discussion about it will be open on this repo (but no blogpost should be expected). + +### Actions that will be taken + +1. in patch level new releases, there won't be important dependencies upgrades (unless strictly necessary) +2. for cherry pick requests, in case of complexities emerging during the release process, the author of the request will be asked to create a PR towards the branch +3. the FB team will attempt to be more empathetic when landing commits like React syncs to prevent issues +4. another maintenance meeting will happen before end of the year, and among other things we'll discuss about merging the two GitHub orgs React Community and React Native Community and we'll create a shared guideline for how to maintain repos in them + +--- + +This time's topic was Open Source Maintenance, but we are planning to cover much more. You can check both the issues and the PRs of this repository to see what conversations are ongoing, and we hope you will join us in making React Native even better! From d9fbaa41e500583c449a1950ccdf2403359cc900 Mon Sep 17 00:00:00 2001 From: Lorenzo Sciandra Date: Tue, 13 Nov 2018 14:35:23 +0000 Subject: [PATCH 2/5] feedback --- core-meetings/2019-11-oss-meeting.md | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/core-meetings/2019-11-oss-meeting.md b/core-meetings/2019-11-oss-meeting.md index 8eb48e8a..7321065c 100644 --- a/core-meetings/2019-11-oss-meeting.md +++ b/core-meetings/2019-11-oss-meeting.md @@ -17,16 +17,20 @@ During the discussion, the FB team also clarified a couple of points from their - the internal FB team is _not_ migrating to React Native Open Source, they are simply changing _how_ they consume the React Native APIs. Which means that, internally, instead of writing `const View = require('View')` they will be writing `const {View} = require('react-native')` -- the FB team is not foreseeing taking management or ownership of the release cycle, commending the community for how they have handled it so far +- the FB team is not foreseeing taking management or ownership of the release cycle; this was motivated by a few reasons, such as: + - Wanting to generate more community participation. + - The community probably know more about this than FB: given that the releases is how the community consumes RN, they should have the power to decide the release cycle. -The second and last part of the meeting was dedicated to the upcoming version 0.58 - it was clarified that the JSI that has landed on master should not directly affect developers consuming React Native, and an issue to facilitate the discussion about it will be open on this repo (but no blogpost should be expected). +The second and last part of the meeting was dedicated to the upcoming version 0.58 - it was clarified that the JSI that has landed on master should not directly affect developers consuming React Native, and an issue to facilitate the discussion about it will be open on this repo (but no blog post should be expected). ### Actions that will be taken 1. in patch level new releases, there won't be important dependencies upgrades (unless strictly necessary) -2. for cherry pick requests, in case of complexities emerging during the release process, the author of the request will be asked to create a PR towards the branch -3. the FB team will attempt to be more empathetic when landing commits like React syncs to prevent issues -4. another maintenance meeting will happen before end of the year, and among other things we'll discuss about merging the two GitHub orgs React Community and React Native Community and we'll create a shared guideline for how to maintain repos in them +2. a few tools to automate (at least partially) the release cycle will be tested and added to the process to reduce the workload on the maintainers +3. the [Releases.md](https://github.com/facebook/react-native/blob/master/Releases.md) file will be updated to reflect the current set of steps necessary for a release +4. for cherry pick requests, in case of complexities emerging during the release process, the author of the request will be asked to create a PR towards the branch +5. the FB team will attempt to be more empathetic when landing commits like React syncs to prevent issues +6. another maintenance meeting will happen before end of the year, and among other things we'll discuss about merging the two GitHub organizations React Community and React Native Community and we'll create a shared guideline for how to maintain repos in them --- From a8fad2709fa0439078762e61086a66a80b243116 Mon Sep 17 00:00:00 2001 From: Lorenzo Sciandra Date: Fri, 16 Nov 2018 11:39:46 +0000 Subject: [PATCH 3/5] more feedback, and adding link to issue --- core-meetings/2019-11-oss-meeting.md | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/core-meetings/2019-11-oss-meeting.md b/core-meetings/2019-11-oss-meeting.md index 7321065c..b9610ac2 100644 --- a/core-meetings/2019-11-oss-meeting.md +++ b/core-meetings/2019-11-oss-meeting.md @@ -15,9 +15,11 @@ The first part of the conversation was about two aspects of the current release During the discussion, the FB team also clarified a couple of points from their latest blogpost about [Open Source Roadmap](http://facebook.github.io/react-native/blog/2018/11/01/oss-roadmap), here reported for transparency sake: -- the internal FB team is _not_ migrating to React Native Open Source, they are simply changing _how_ they consume the React Native APIs. Which means that, internally, instead of writing `const View = require('View')` they will be writing `const {View} = require('react-native')` +- the internal FB team is _not_ switching React Native's source of truth to be GitHub first: they are simply changing _how_ they consume the React Native APIs internally. Which means that, internally, instead of writing `const View = require('View')` they will be writing `const {View} = require('react-native')` -- the FB team is not foreseeing taking management or ownership of the release cycle; this was motivated by a few reasons, such as: + The GitHub repository will continue serving as a mirror of the commits that land in the internal react-native-github directory in Facebook's monorepo, and pulling in changes from open source will still require importing a PR to the monorepo rather than merging directly to master on GitHub. + +- the FB team is not foreseeing taking management or ownership of the release cycle\*; this was motivated by a few reasons, such as: - Wanting to generate more community participation. - The community probably know more about this than FB: given that the releases is how the community consumes RN, they should have the power to decide the release cycle. @@ -25,13 +27,15 @@ The second and last part of the meeting was dedicated to the upcoming version 0. ### Actions that will be taken -1. in patch level new releases, there won't be important dependencies upgrades (unless strictly necessary) -2. a few tools to automate (at least partially) the release cycle will be tested and added to the process to reduce the workload on the maintainers -3. the [Releases.md](https://github.com/facebook/react-native/blob/master/Releases.md) file will be updated to reflect the current set of steps necessary for a release -4. for cherry pick requests, in case of complexities emerging during the release process, the author of the request will be asked to create a PR towards the branch -5. the FB team will attempt to be more empathetic when landing commits like React syncs to prevent issues -6. another maintenance meeting will happen before end of the year, and among other things we'll discuss about merging the two GitHub organizations React Community and React Native Community and we'll create a shared guideline for how to maintain repos in them +1. In patch level releases, from now on, there won't be important dependencies upgrades (unless strictly necessary) +2. A few tools to automate (at least partially) the release cycle will be tested and added to the process to reduce the workload on the maintainers +3. The [Releases.md](https://github.com/facebook/react-native/blob/master/Releases.md) file will be updated to reflect the current set of steps necessary for a release +4. For cherry pick requests, in case of complexities emerging during the release process, the author of the request will be asked to create a PR towards the branch +5. The FB team will attempt to be more empathetic when landing commits like React syncs to prevent issues +6. Another maintenance meeting will happen before end of the year, and among other things we'll discuss about merging the two GitHub organizations React Community and React Native Community and we'll create a shared guideline for how to maintain repos in them --- This time's topic was Open Source Maintenance, but we are planning to cover much more. You can check both the issues and the PRs of this repository to see what conversations are ongoing, and we hope you will join us in making React Native even better! + +\* this conversation sparked more discussion on the larger topic of maintainability & sustainability of the RN project - that is still ongoing. You can see the key points and join the conversation in this [dedicated discussion](https://github.com/react-native-community/discussions-and-proposals/issues/58). From 2d513af8eb8e331197dbb6d026f343c40c6667a9 Mon Sep 17 00:00:00 2001 From: Lorenzo Sciandra Date: Tue, 20 Nov 2018 12:10:26 +0000 Subject: [PATCH 4/5] more feedback and clarifications --- core-meetings/2019-11-oss-meeting.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/core-meetings/2019-11-oss-meeting.md b/core-meetings/2019-11-oss-meeting.md index b9610ac2..f508a801 100644 --- a/core-meetings/2019-11-oss-meeting.md +++ b/core-meetings/2019-11-oss-meeting.md @@ -25,14 +25,16 @@ During the discussion, the FB team also clarified a couple of points from their The second and last part of the meeting was dedicated to the upcoming version 0.58 - it was clarified that the JSI that has landed on master should not directly affect developers consuming React Native, and an issue to facilitate the discussion about it will be open on this repo (but no blog post should be expected). +During the meeting, the subject of having a single organization to host the React Native components & libraries maintained by the community was briefly touched (given that currently there are two main ones,React Community and React Native Community) - but there wasn't time left so this will be discussed in a future meeting. + ### Actions that will be taken 1. In patch level releases, from now on, there won't be important dependencies upgrades (unless strictly necessary) -2. A few tools to automate (at least partially) the release cycle will be tested and added to the process to reduce the workload on the maintainers +2. A few tools to automate (at least partially) the release cycle will be tested and added to the process to reduce the workload on the maintainers (you can contribute to this conversation [here](https://github.com/react-native-community/discussions-and-proposals/issues/53)) 3. The [Releases.md](https://github.com/facebook/react-native/blob/master/Releases.md) file will be updated to reflect the current set of steps necessary for a release 4. For cherry pick requests, in case of complexities emerging during the release process, the author of the request will be asked to create a PR towards the branch 5. The FB team will attempt to be more empathetic when landing commits like React syncs to prevent issues -6. Another maintenance meeting will happen before end of the year, and among other things we'll discuss about merging the two GitHub organizations React Community and React Native Community and we'll create a shared guideline for how to maintain repos in them +6. Another maintenance meeting will happen before end of the year, and among other things we'll discuss about a shared guideline for how to maintain repos owned by the community in order to help each other --- From b1c039a6435de4dc47445e1b90f759f48633edf9 Mon Sep 17 00:00:00 2001 From: Lorenzo Sciandra Date: Thu, 22 Nov 2018 09:39:05 +0000 Subject: [PATCH 5/5] nickpick from Mike --- core-meetings/2019-11-oss-meeting.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core-meetings/2019-11-oss-meeting.md b/core-meetings/2019-11-oss-meeting.md index f508a801..b45e76cc 100644 --- a/core-meetings/2019-11-oss-meeting.md +++ b/core-meetings/2019-11-oss-meeting.md @@ -25,7 +25,7 @@ During the discussion, the FB team also clarified a couple of points from their The second and last part of the meeting was dedicated to the upcoming version 0.58 - it was clarified that the JSI that has landed on master should not directly affect developers consuming React Native, and an issue to facilitate the discussion about it will be open on this repo (but no blog post should be expected). -During the meeting, the subject of having a single organization to host the React Native components & libraries maintained by the community was briefly touched (given that currently there are two main ones,React Community and React Native Community) - but there wasn't time left so this will be discussed in a future meeting. +During the meeting, the subject of having a single organization to host the React Native components & libraries maintained by the community was briefly touched (given that currently there are two main ones, React Community and React Native Community) - but there wasn't time left so this will be discussed in a future meeting. ### Actions that will be taken