react-native-community / releases

React Native releases
https://github.com/facebook/react-native/
1.5k stars 405 forks source link

Upcoming v0.63.3 cherrypicks discussion #203

Closed grabbou closed 3 years ago

grabbou commented 4 years ago

Conversations on this thread are limited to 0.63 releases major issues and backport (cherry-pick) requests from commits that are already on master.

An example of a good such request is a bug fix for a serious issue that has been merged into master but did not make the 0.63.2 cut.

In other words, if you cannot point to a particular commit on master, then your request likely belongs as a new issue in http://github.com/facebook/react-native/issues.

ravirajn22 commented 3 years ago

@diegolmello I don't want to get into argument here, just think for a second if it valid from RN team for taking more than 2 months to fix a regression. I think we have to defend and criticise appropriately.

Instead of asking everyone to custom patch, just a release would have improved DX greatly. Moreover I am not commenting here to point fingers or blame anyone. Having a prompt service would help bringing new developers to react-native and provide confidence to existing ones. My ultimate aim here is not my upgrade process, but overall communities.

diegolmello commented 3 years ago

@ravirajn22 Yep, I see your point and I don't want to argue as well (you can mark us off-topic if needed). I just commented because it's not fair is a hot take.

mikehardy commented 3 years ago

There is an off-topic discussion here about patching RN, I just want to say that I am a huge proponent of patch-package and "do it yourself" (read as: make a patch and move on, don't depend on release cycles) but patching react-native is very difficult because it's packaged as .aar files etc, you have to do a custom build from source basically, it is much more involved.

Although perhaps I am missing how you can patch-package a react-native issue? That would be great to know and perhaps provide real value from this comment.

So there is a reasonable point to be made that faster releases would be great but it's also vital to note it's community-driven and 2020 is just not a great year.

I will now self-mark this comment as off-topic and I apologize for the noise.

Thanks for for your efforts @grabbou and @kelset

kelset commented 3 years ago

Status of branch after cherry picking; final list of commits cherry picked:

  1. https://github.com/facebook/react-native/commit/43c161c30aff2f5306d32c9994fefc9edae08f85 [asked by @brentvatne in the comment below, to add when process gets re-done]
  2. https://github.com/facebook/react-native/commit/45954ac5dccdfe05de7553a0f08c4f0e66e3d62e
  3. https://github.com/facebook/react-native/commit/058eeb43b489f52183f081fb7232be683002a242 [added this to remove conflict for next one]
  4. https://github.com/facebook/react-native/commit/ffc90c7f92e63e1a53ed107833e3deed492ab435
    • ~this had a conflict but I think I resolved it properly [but if something goes wrong this is the likely culprit, it's a non trivial conflict to resolve]~
  5. https://github.com/facebook/react-native/commit/0bcc686c1cc90fd44de7a28e2f56ea20fe2f5123
  6. https://github.com/facebook/react-native/commit/dc2df754267df3909631d81c22b9fcab58dfa241
  7. https://github.com/facebook/react-native/commit/07a597ad185c8c31ac38bdd4d022b0b880d02859
  8. https://github.com/facebook/react-native/commit/86ffb9c41e033f59599e01b7ad016706b5f62fc8
  9. https://github.com/facebook/react-native/commit/d8b70b19b39ead4dd41895d666d116a43c56474e
  10. https://github.com/facebook/react-native/commit/83777cb4fb5dda89c430b7eff9cd1f28d2577831
  11. https://github.com/facebook/react-native/commit/6e08f84719c47985e80123c72686d7a1c89b72ed
    • another conflict here in the podspec, same problem as above of RNTester not being in the packages folder, so I had to regen the podlock again. Also, in this branch Folly is not yet RTC-Folly so had to fix that too.
  12. https://github.com/facebook/react-native/commit/663b5a878be9faafd13b41c222a1bc2ac7bb3a65

We will now do some testing both locally and on CI and see if everything goes well. If that's the case, we will proceed with the release.


UPDATE: looks like between the last time I did a release and now someone downgraded my permissions so I can't push to the 0.63 branch... so yeah currently stuck. Either another maintainer will jump in and repeat what I've just done or my auth will be restored. Will let you know once I have updates.


UPDATE 2: looks like my permissions issue will be fixed, but no ETA for it so it's likely that another maintainer will do the cherry picking stuff.


UPDATE 3: permissions have been fixed, I've redone the cherry picking phase to accomodate for Brent's commit (since it's the oldest) and while doing so I've re done the conflicts resolutions in a way that I'm more confident is correct. I've pushed the commits to the remote branch now so that we can have CI tests and other maintainers can also locally do the E2E testing.


UPDATE 4: note to self, we may have to add this https://github.com/facebook/react-native/commit/001eb7cbd66c7dc1a302ee2a638c1cfc164538f4

brentvatne commented 3 years ago

this may be worth cherry picking as well: https://github.com/facebook/react-native/commit/43c161c30aff2f5306d32c9994fefc9edae08f85

it fixes https://github.com/facebook/react-native/issues/29360

kelset commented 3 years ago

Allright folks, after all that rollercoaster we finally managed to push through and release 0.63.3! (thanks to @alloy for all the support!)

It's been a wild ride, hopefully now we can focus on getting the final touches ready cutting the 0.64 branch - in case something wild happen, please refer to the new issue: https://github.com/react-native-community/releases/issues/212