status-mobile/nix/deps/nodejs-patched
Siddarth Kumar 761a7df06f
upgrade react-native to 0.72.5 (#17241)
This commit does many things :
- Upgrade `react-native ` to `0.72.5`
- Upgrade `react-native-reanimated` to  `3.5.4`
- Upgrade `react-native-navigation` to `7.37.0`
- `ndkVersion` has been bumped to `25.2.9519653`
- `cmakeVersion` has been bumped to `3.22.1`
- `kotlinVersion` has been bumped to `1.7.22`
- `AGP` has been bumped to `7.4.2`
- `Gradle` has been upgraded to `8.0.1`
- Android `CompileSDK` and `TargetSDK` have been bumped to 33
- `@react-native-async-storage/async-storage` has been upgraded to `1.19.3`
- `@walletconnect/client` has been nuked
- some of the old `react-native-reanimated` code has been nuked
- `react-native-keychain` fork has been replaced with `8.1.2`

- On Android we are currently relying on `Hermes` Engine.
- On iOS we are currently relying on `JSC`
- We are not enabling new architecture for now (I have plans for that in the future) ref: https://github.com/status-im/status-mobile/issues/18138

IOS only PR : https://github.com/status-im/status-mobile/pull/16721
Android only PR : https://github.com/status-im/status-mobile/pull/17062

- `make run-metro` now has a target of `android` which was `clojure` earlier, this will increase the time it takes to start metro terminal but this is needed otherwise you will get a nasty error while developing for android locally.
2023-12-11 21:22:23 +05:30
..
README.md Gradle: drop unavailable JCenter Bintray from config 2022-05-05 11:50:50 +02:00
default.nix upgrade react-native to 0.72.5 (#17241) 2023-12-11 21:22:23 +05:30

README.md

Description

This Nix derivation takes the result of the nix/deps/nodejs/default.nix derivation and adjusts it for use with Gradle.

Details

Modules provided by yarn2nix are normally fine, but we use react-native-* packages which have their own gradle.build files that reference external Maven repositories:

repositories {
    google()
    maven { url "https://www.jitpack.io" }
}

And these need to be patched and replaced with mavenLocal() to make sure Gradle doesn't try to fetch dependencies from remote repos.

This derivation symlinks most of the modules found in the yarn2nix result and copies the ones that require patching of gradle.build files in patchGradlePhase.

It also applies other fixes like making BuildId static in patchBuildIdPhase and fixing a Hermes bug in patchHermesPhase.