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

Allow different flavors JS and App #5404

Merged
merged 10 commits into from
Nov 24, 2023
Merged

Conversation

tjzel
Copy link
Collaborator

@tjzel tjzel commented Nov 24, 2023

Summary

tl;dr

Test plan

To make DEBUG bundle in RELEASE app

in metro/Server.js add

transformOptions.dev = true;

below

  async build(options) {
    const {
      entryFile,
      graphOptions,
      onProgress,
      resolverOptions,
      serializerOptions,
      transformOptions,
    } = splitBundleOptions(options);

and add RCT_DEV=1 flag to pods in XCode

To make RELEASE bundle in DEBUG app

Manually create release bundle with Metro, put it as e.g. `CUSTOM_BUNDLE.jsbundle` in `ios` and load it from file in AppDelegate.mm like this:

```mm
//#if DEBUG
//  return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index"];
//#else
  return [[NSBundle mainBundle] URLForResource:@"CUSTOM_BUNDLE" withExtension:@"jsbundle"];
//#endif

Common/cpp/NativeModules/NativeReanimatedModule.cpp Outdated Show resolved Hide resolved
Common/cpp/Tools/ReanimatedVersion.cpp Outdated Show resolved Hide resolved
src/reanimated2/shareables.ts Outdated Show resolved Hide resolved
src/reanimated2/shareables.ts Outdated Show resolved Hide resolved
src/reanimated2/shareables.ts Outdated Show resolved Hide resolved
Common/cpp/Tools/ReanimatedVersion.cpp Outdated Show resolved Hide resolved
Common/cpp/Tools/ReanimatedVersion.cpp Outdated Show resolved Hide resolved
Common/cpp/Tools/ReanimatedVersion.cpp Outdated Show resolved Hide resolved
Common/cpp/Tools/ReanimatedVersion.h Outdated Show resolved Hide resolved
Common/cpp/NativeModules/NativeReanimatedModule.cpp Outdated Show resolved Hide resolved
__tests__/checkVersion.test.ts Outdated Show resolved Hide resolved
__tests__/checkVersion.test.ts Outdated Show resolved Hide resolved
src/reanimated2/shareables.ts Outdated Show resolved Hide resolved
src/reanimated2/shareables.ts Outdated Show resolved Hide resolved
@piaskowyk piaskowyk added this pull request to the merge queue Nov 24, 2023
Merged via the queue into main with commit 13c62af Nov 24, 2023
14 checks passed
@piaskowyk piaskowyk deleted the @tjzel/allows-different-flavors branch November 24, 2023 13:56
Latropos pushed a commit that referenced this pull request Nov 24, 2023
<!-- Thanks for submitting a pull request! We appreciate you spending
the time to work on these changes. Please follow the template so that
the reviewers can easily understand what the code changes affect. -->

## Summary

tl;dr

## Test plan

### To make DEBUG bundle in RELEASE app

in `metro/Server.js` add

```js
transformOptions.dev = true;
```

below

```js
  async build(options) {
    const {
      entryFile,
      graphOptions,
      onProgress,
      resolverOptions,
      serializerOptions,
      transformOptions,
    } = splitBundleOptions(options);
```

and add `RCT_DEV=1` flag to pods in XCode

### To make RELEASE bundle in DEBUG app

```
Manually create release bundle with Metro, put it as e.g. `CUSTOM_BUNDLE.jsbundle` in `ios` and load it from file in AppDelegate.mm like this:

```mm
//#if DEBUG
// return [[RCTBundleURLProvider sharedSettings]
jsBundleURLForBundleRoot:@"index"];
//#else
return [[NSBundle mainBundle] URLForResource:@"CUSTOM_BUNDLE"
withExtension:@"jsbundle"];
//#endif
```

```

---------

Co-authored-by: Tomek Zawadzki <tomekzawadzki98@gmail.com>
Latropos pushed a commit that referenced this pull request Dec 12, 2023
<!-- Thanks for submitting a pull request! We appreciate you spending
the time to work on these changes. Please follow the template so that
the reviewers can easily understand what the code changes affect. -->

## Summary

tl;dr

## Test plan

### To make DEBUG bundle in RELEASE app

in `metro/Server.js` add

```js
transformOptions.dev = true;
```

below

```js
  async build(options) {
    const {
      entryFile,
      graphOptions,
      onProgress,
      resolverOptions,
      serializerOptions,
      transformOptions,
    } = splitBundleOptions(options);
```

and add `RCT_DEV=1` flag to pods in XCode

### To make RELEASE bundle in DEBUG app

```
Manually create release bundle with Metro, put it as e.g. `CUSTOM_BUNDLE.jsbundle` in `ios` and load it from file in AppDelegate.mm like this:

```mm
//#if DEBUG
// return [[RCTBundleURLProvider sharedSettings]
jsBundleURLForBundleRoot:@"index"];
//#else
return [[NSBundle mainBundle] URLForResource:@"CUSTOM_BUNDLE"
withExtension:@"jsbundle"];
//#endif
```

```

---------

Co-authored-by: Tomek Zawadzki <tomekzawadzki98@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants