realm / realm-js

Realm is a mobile database: an alternative to SQLite & key-value stores
https://realm.io
Apache License 2.0
5.76k stars 572 forks source link

Automate updating integration test app on new React Native releases #2611

Open kraenhansen opened 4 years ago

kraenhansen commented 4 years ago

We want to provide the best possible developer experience for React Native developers running the latest version of React Native (and Realm JS). Currently we have to rely on users discovering issues when a new release of React Native releases, but it would be great to get in-front of this curve and fix any issues before any user experience them. As we currently rely on individual developers feeling the urge to upgrade the app, it is often forgotten and we keep running tests against outdated versions of React Native.

Whenever a new release of React Native ships, we should automatically have a PR created upgrading our integration test app to the latest version of React Native, which would run our test-suite and would allow us to easily merge it.

cmelchior commented 4 years ago

I really sympathize with the idea, but is it possible to do it in an automated way? Every time I updated a React Native project I had to use https://github.com/pvinis/rn-diff-purge and compare changes manually because react-native-git-upgrade was a nightmare to use. But it was a while back so maybe things have improved?

kraenhansen commented 4 years ago

I think it's possible, I outlined the steps for a manual upgrade here: https://github.com/realm/realm-js/tree/master/integration-tests#upgrading-the-react-native-environment But even if the automated upgrade fails, it shouldn't be difficult to jump in, make a commit to fix the upgrade.

cmelchior commented 4 years ago

Yes, at the very least we will get a heads-up when things are broken 👌