Repack v5 with Webpack Breaks in Release Mode, but RSPack Works — Debug Mode Fine for both
Describe the bug
I am porting my project from RN 0.72.5 to 0.79.5. With 0.72.5, I used RePack v4 and it worked perfectly. After upgrading and using v5.1.3, webpack works only in debug mode, in release mode it crashes on startup
RSpack actually works fine in both debug and release mode but I'm not comfortable with the app startup time which is way more higher than it was when I used webpack in v4 and RN v0.72.5
This is my webpack config
import path from "node:path";
import * as Repack from "@callstack/repack";
import {ReanimatedPlugin} from '@callstack/repack-plugin-reanimated';
import TerserPlugin from "terser-webpack-plugin";
const dirname = Repack.getDirname(import.meta.url);
/**
* More documentation, installation, usage, motivation and differences with Metr@o is available at:
* https://github.com/callstack/repack/blob/main/README.md
*
* The API documentation for the functions and plugins used in this file is available at:
* https://re-pack.netlify.app/
*/
/**
* Webpack configuration.
* You can also export a static object or a function returning a Promise.
*
* @param env Environment options passed from either Webpack CLI or React Native CLI
* when running with `react-native start/bundle`.
*/
export default (env) => {
const {
mode = "development",
context = dirname,
entry = "./index.js",
platform = process.env.PLATFORM,
// platform,
minimize = mode === "production",
devServer = undefined,
bundleFilename = undefined,
sourceMapFilename = undefined,
assetsPath = undefined,
} = env;
if (!platform) {
throw new Error("Missing platform");
}
/**
* Using Module Federation might require disabling hmr.
* Uncomment below to set `devServer.hmr` to `false`.
*
* Keep in mind that `devServer` object is not available
* when running `webpack-bundle` command. Be sure
* to check its value to avoid accessing undefined value,
* otherwise an error might occur.
*/
// if (devServer) {
// devServer.hmr = false;
// }
/**
* Depending on your Babel configuration you might want to keep it.
* If you don't use `env` in your Babel config, you can remove it.
*
* Keep in mind that if you remove it you should set `BABEL_ENV` or `NODE_ENV`
* to `development` or `production`. Otherwise your production code might be compiled with
* in development mode by Babel.
*/
process.env.BABEL_ENV = mode;
return {
mode,
/**
* This should be always `false`, since the Source Map configuration is done
* by `SourceMapDevToolPlugin`.
*/
devtool: false,
context,
entry,
resolve: {
/**
* `getResolveOptions` returns additional resolution configuration for React Native.
* If it's removed, you won't be able to use `<file>.<platform>.<ext>` (eg: `file.ios.js`)
* convention and some 3rd-party libraries that specify `react-native` field
* in their `package.json` might not work correctly.
*/
...Repack.getResolveOptions({ enablePackageExports: true }),
/**
* Uncomment this to ensure all `react-native*` imports will resolve to the same React Native
* dependency. You might need it when using workspaces/monorepos or unconventional project
* structure. For simple/typical project you won't need it.
*/
alias: {
"@react-native-community/clipboard": path.resolve(
dirname,
"node_modules/@react-native-clipboard/clipboard"
),
"react-native-paper": path.resolve(
dirname,
"./mock/react-native-paper.js"
),
},
},
/**
* Configures optimization of the built bundle.
*/
optimization: {
/** Enables minification based on values passed from React Native CLI or from fallback. */
minimize,
/** Configure minimizer to process the bundle. */
minimizer: [
new TerserPlugin({
test: /\.(js)?bundle(\?.*)?$/i,
/**
* Prevents emitting text file with comments, licenses etc.
* If you want to gather in-file licenses, feel free to remove this line or configure it
* differently.
*/
extractComments: false,
terserOptions: {
format: {
comments: false,
},
},
}),
],
chunkIds: "named",
},
module: {
/**
* This rule will process all React Native related dependencies with Babel.
* If you have a 3rd-party dependency that you need to transpile, you can add it to the
* `include` list.
*
* You can also enable persistent caching with `cacheDirectory` - please refer to:
* https://github.com/babel/babel-loader#options
*/
rules: [
{
test: /\.svg$/,
use: [
{
loader: "@svgr/webpack",
options: {
native: true,
dimensions: false,
},
},
],
},
{
test: /\.[cm]?[jt]sx?$/,
use: "babel-loader",
type: "javascript/auto",
},
/**
* This loader handles all static assets (images, video, audio and others), so that you can
* use (reference) them inside your application.
*
* If you wan to handle specific asset type manually, filter out the extension
* from `ASSET_EXTENSIONS`, for example:
*
* Repack.ASSET_EXTENSIONS.filter((ext) => ext !== 'svg')
*
*/
{
test: Repack.getAssetExtensionsRegExp(
Repack.ASSET_EXTENSIONS.filter((ext) => ext !== "svg")
// Repack.ASSET_EXTENSIONS
),
use: {
loader: "@callstack/repack/assets-loader",
options: {
platform,
devServerEnabled: Boolean(devServer),
/**
* Defines which assets are scalable - which assets can have
* scale suffixes: `@1x`, `@2x` and so on.
* By default all images are scalable.
*/
scalableAssetExtensions: Repack.SCALABLE_ASSETS,
},
},
},
],
},
plugins: [
/**
* Configure other required and additional plugins to make the bundle
* work in React Native and provide good development experience with
* sensible defaults.
*
* `Repack.RepackPlugin` provides some degree of customization, but if you
* need more control, you can replace `Repack.RepackPlugin` with plugins
* from `Repack.plugins`.
*/
new Repack.RepackPlugin(),
new ReanimatedPlugin(),
// new Repack.plugins.HermesBytecodePlugin({
// enabled: mode === 'production',
// test: /\.bundle$/,
// exclude: /index.bundle$/,
// }),
new Repack.plugins.ModuleFederationPluginV2({
name: "HostApp",
filename: "HostApp.container.js.bundle",
dts: false,
shared: {
react: {
singleton: true,
eager: true,
requiredVersion: "19.0.0",
},
"react-native": {
singleton: true,
eager: true,
requiredVersion: "0.79.2",
},
"@hookform/resolvers": {
singleton: true,
eager: true,
requiredVersion: "^4.1.3",
},
"@react-native-async-storage/async-storage": {
singleton: true,
eager: true,
requiredVersion: "^2.1.2",
},
"@react-native-community/checkbox": {
singleton: true,
eager: true,
requiredVersion: "^0.5.16",
},
"@react-native-community/cli-platform-android": {
singleton: true,
eager: true,
requiredVersion: "18.0.0",
},
"@react-navigation/native": {
singleton: true,
eager: true,
requiredVersion: "^7.0.15",
},
"@react-navigation/native-stack": {
singleton: true,
eager: true,
requiredVersion: "^7.2.1",
},
"@reduxjs/toolkit": {
singleton: true,
eager: true,
requiredVersion: "^2.6.1",
},
"@shopify/flash-list": {
singleton: true,
eager: true,
requiredVersion: "^1.7.5",
},
"@shopify/restyle": {
singleton: true,
eager: true,
requiredVersion: "^2.4.4",
},
axios: {
singleton: true,
eager: true,
requiredVersion: "^1.7.7",
},
"node-forge": {
singleton: true,
eager: true,
requiredVersion: "^1.3.1",
},
"react-hook-form": {
singleton: true,
eager: true,
requiredVersion: "^7.54.2",
},
"react-native-appsflyer": {
singleton: true,
eager: true,
requiredVersion: "^6.15.3",
},
"react-native-click-outside": {
singleton: true,
eager: true,
requiredVersion: "^0.1.1",
},
"react-native-config": {
singleton: true,
eager: true,
requiredVersion: "^1.5.5",
},
"react-native-contacts": {
singleton: true,
eager: true,
requiredVersion: "^8.0.4",
},
"react-native-fast-image": {
singleton: true,
eager: true,
requiredVersion: "^8.6.3",
},
"react-native-fast-shadow": {
singleton: true,
eager: true,
requiredVersion: "^0.1.1",
},
"react-native-gesture-handler": {
singleton: true,
eager: true,
requiredVersion: "^2.24.0",
},
"react-native-google-places-autocomplete": {
singleton: true,
eager: true,
requiredVersion: "^2.5.7",
},
"react-native-keyboard-aware-scroll-view": {
singleton: true,
eager: true,
requiredVersion: "^0.9.5",
},
"react-native-linear-gradient": {
singleton: true,
eager: true,
requiredVersion: "^2.8.3",
},
"react-native-modal": {
singleton: true,
eager: true,
requiredVersion: "^14.0.0-rc.1",
},
"react-native-outside-press": {
singleton: true,
eager: true,
requiredVersion: "^1.2.2",
},
"react-native-permissions": {
singleton: true,
eager: true,
requiredVersion: "5.4.0",
},
"react-native-raw-bottom-sheet": {
singleton: true,
eager: true,
requiredVersion: "^3.0.0",
},
"react-native-reanimated": {
singleton: true,
eager: true,
requiredVersion: "^3.17.1",
},
"react-native-safe-area-context": {
singleton: true,
eager: true,
requiredVersion: "^5.3.0",
},
"react-native-screens": {
singleton: true,
eager: true,
requiredVersion: "^4.9.2",
},
"react-native-share": {
singleton: true,
eager: true,
requiredVersion: "^12.0.9",
},
"react-native-size-matters": {
singleton: true,
eager: true,
requiredVersion: "^0.4.2",
},
"react-native-svg": {
singleton: true,
eager: true,
requiredVersion: "^15.11.2",
},
"react-redux": {
singleton: true,
eager: true,
requiredVersion: "^9.2.0",
},
"redux-persist": {
singleton: true,
eager: true,
requiredVersion: "^6.0.0",
},
zod: {
singleton: true,
eager: true,
requiredVersion: "^3.24.2",
},
// ✅ Local shared modules
"./src/component/molecule": {
singleton: true,
eager: true,
requiredVersion: "0",
},
"./src/component/atom": {
singleton: true,
eager: true,
requiredVersion: "0",
},
"./src/constants/icon": {
singleton: true,
eager: true,
requiredVersion: "0",
},
"./src/component/atom/Icons/Icon": {
singleton: true,
eager: true,
requiredVersion: "0",
},
"./src/api/nodeApi": {
singleton: true,
eager: true,
requiredVersion: "0",
},
"./src/api/cmsApi": {
singleton: true,
eager: true,
requiredVersion: "0",
},
},
}),
],
};
};
My RsPack config
import path from "node:path";
import { fileURLToPath } from "node:url";
import * as Repack from "@callstack/repack";
import { ReanimatedPlugin } from "@callstack/repack-plugin-reanimated";
import rspack from "@rspack/core";
import TerserPlugin from "terser-webpack-plugin";
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
// import 'dotenv/config';
/**
* Rspack configuration enhanced with Re.Pack defaults for React Native.
*
* Learn about Rspack configuration: https://rspack.dev/config/
* Learn about Re.Pack configuration: https://re-pack.dev/docs/guides/configuration
*/
export default (env) => {
const {
mode,
platform = process.env.PLATFORM,
devServer = undefined,
minimize = mode === "production",
} = env;
return {
mode,
context: __dirname,
entry: "./index.js",
experiments: {
incremental: mode === "development",
},
resolve: {
...Repack.getResolveOptions(),
// extensions: ['.tsx', '.ts', '.js', '.jsx', '.json'],
// symlinks: false, // Fix alias resolution issues
alias: {
"@molecule": path.resolve(__dirname, "src/component/molecule"),
"@atom": path.resolve(__dirname, "src/component/atom"),
"@organisms": path.resolve(__dirname, "src/component/organisms"),
"@zod": path.resolve(__dirname, "src/utils/zod"),
"@": path.resolve(__dirname, "src"),
immer: path.resolve(__dirname, "node_modules/immer"),
"@hookform/resolvers": path.resolve(
__dirname,
"node_modules/@hookform/resolvers"
),
// zod: path.resolve(dirname, 'node_modules/zod/lib'),
zod: path.resolve(__dirname, "node_modules/zod"),
entities: path.resolve(__dirname, "node_modules/entities"),
domelementtype: path.resolve(__dirname, "node_modules/domelementtype"),
"dom-serializer": path.resolve(
__dirname,
"node_modules/dom-serializer"
),
domhandler: path.resolve(__dirname, "node_modules/domhandler"),
"nth-check": path.resolve(__dirname, "node_modules/nth-check"),
domutils: path.resolve(__dirname, "node_modules/domutils"),
"css-select": path.resolve(__dirname, "node_modules/css-select"),
// 'freerasp-react-native': path.resolve(__dirname, 'node_modules/freerasp-react-native/lib/module/index.js'),
"react-hook-form": path.resolve(
__dirname,
"node_modules/react-hook-form/dist/index.cjs.js"
),
"react-native-paper": path.resolve(
__dirname,
"./mock/react-native-paper.js"
),
// '@react-native-community/clipboard': require.resolve(
// '@react-native-clipboard/clipboard',
// ),
"@react-native-community/clipboard": path.resolve(
__dirname,
"node_modules/@react-native-clipboard/clipboard"
),
"@react-native-community/progress-view": path.resolve(
__dirname,
"node_modules/@react-native-community/progress-view"
),
"@react-native-community/progress-bar-android": path.resolve(
__dirname,
"node_modules/@react-native-community/progress-bar-android"
),
"@networkinternational/ni-card-management-sdk": path.resolve(
__dirname,
"node_modules/@networkinternational/ni-card-management-sdk/lib/commonjs/index.js"
),
"react-native-document-scanner-plugin": path.resolve(
__dirname,
"node_modules/react-native-document-scanner-plugin"
),
"react-native-compressor": path.resolve(
__dirname,
"node_modules/react-native-compressor/lib/commonjs/index.js"
),
"react-native-document-picker": path.resolve(
__dirname,
"node_modules/react-native-document-picker"
),
},
},
// optimization: {
// /** Enables minification based on values passed from React Native Community CLI or from fallback. */
// minimize,
// minimizer: [
// new TerserPlugin({
// test: /\.(js)?bundle(\?.*)?$/i,
// extractComments: false,
// terserOptions: {
// format: {
// comments: false,
// },
// },
// }),
// ],
// /** Configure minimizer to process the bundle. */
// chunkIds: "named",
// },
module: {
rules: [
...Repack.getJsTransformRules(),
// ...Repack.getAssetTransformRules(),
{
test: /\.[jt]sx?$/,
include: [
// /node_modules(.*[/\\])+react-native-inappbrowser-reborn/,
/node_modules(.*[/\\])+rn-qr-generator/,
/node_modules(.*[/\\])+@react-native-community\/progress-view/,
/node_modules(.*[/\\])+@react-native-community\/progress-bar-android/,
/node_modules(.*[/\\])+react-native-keyboard-aware-scroll-view/,
/node_modules(.*[/\\])+react-native-appsflyer/,
/node_modules(.*[/\\])+@react-native-community\/progress-view/,
/node_modules(.*[/\\])+@react-native-masked-view/,
/node_modules(.*[/\\])+redux/,
/node_modules(.*[/\\])+react-native-document-scanner-plugin/,
/node_modules(.*[/\\])+react-native-compressor/,
/node_modules(.*[/\\])+react-native-document-picker/,
/node_modules(.*[/\\])+react-redux/,
/node_modules(.*[/\\])+@reduxjs(.*[/\\])+toolkit/,
/node_modules(.*[/\\])+@reduxjs/,
/node_modules(.*[/\\])+(axios|redux-toolkit)\//,
/node_modules(.*[/\\])+@reduxjs(.*[/\\])+toolkit/,
/node_modules(.*[/\\])+@networkinternational\/ni-card-management-sdk/,
],
type: "javascript/auto",
use: {
loader: "@callstack/repack/flow-loader",
options: { all: true },
},
},
{
test: /\.svg$/,
use: [
{
loader: "@svgr/webpack",
options: {
native: true,
// You might want to uncomment the following line.
// More info: https://react-svgr.com/docs/options/#dimensions
dimensions: false,
},
},
],
},
{
test: Repack.getAssetExtensionsRegExp(
Repack.ASSET_EXTENSIONS.filter((ext) => ext !== "svg")
),
use: {
loader: "@callstack/repack/assets-loader",
options: {
platform,
devServerEnabled: true,
/**
* Defines which assets are scalable - which assets can have
* scale suffixes: `@1x`, `@2x` and so on.
* By default all images are scalable.
*/
scalableAssetExtensions: Repack.SCALABLE_ASSETS,
},
},
},
// {
// test: /\.ts$/,
// use: {
// loader: '@callstack/repack-plugin-reanimated/loader',
// options: {
// babelPlugins: [
// [
// '@babel/plugin-syntax-typescript',
// { isTSX: false, allowNamespaces: true },
// ],
// ],
// },
// },
// },
],
},
plugins: [
new Repack.RepackPlugin(),
new ReanimatedPlugin(),
new Repack.plugins.ModuleFederationPluginV2({
name: "HostApp",
filename: "HostApp.container.js.bundle",
// remotes: {
// MiniApp: `MiniApp@http://localhost:9099/${platform}/mf-manifest.json`,
// },
dts: false,
shared: {
react: {
singleton: true,
eager: true,
requiredVersion: "19.0.0",
},
"react-native": {
singleton: true,
eager: true,
requiredVersion: "0.79.2",
},
"@hookform/resolvers": {
singleton: true,
eager: true,
requiredVersion: "^4.1.3",
},
"@react-native-async-storage/async-storage": {
singleton: true,
eager: true,
requiredVersion: "^2.1.2",
},
"@react-native-community/checkbox": {
singleton: true,
eager: true,
requiredVersion: "^0.5.16",
},
"@react-native-community/cli-platform-android": {
singleton: true,
eager: true,
requiredVersion: "18.0.0",
},
"@react-navigation/native": {
singleton: true,
eager: true,
requiredVersion: "^7.0.15",
},
"@react-navigation/native-stack": {
singleton: true,
eager: true,
requiredVersion: "^7.2.1",
},
"@reduxjs/toolkit": {
singleton: true,
eager: true,
requiredVersion: "^2.6.1",
},
"@shopify/flash-list": {
singleton: true,
eager: true,
requiredVersion: "^1.7.5",
},
"@shopify/restyle": {
singleton: true,
eager: true,
requiredVersion: "^2.4.4",
},
axios: {
singleton: true,
eager: true,
requiredVersion: "^1.7.7",
},
"node-forge": {
singleton: true,
eager: true,
requiredVersion: "^1.3.1",
},
"react-hook-form": {
singleton: true,
eager: true,
requiredVersion: "^7.54.2",
},
"react-native-appsflyer": {
singleton: true,
eager: true,
requiredVersion: "^6.15.3",
},
"react-native-click-outside": {
singleton: true,
eager: true,
requiredVersion: "^0.1.1",
},
"react-native-config": {
singleton: true,
eager: true,
requiredVersion: "^1.5.5",
},
"react-native-contacts": {
singleton: true,
eager: true,
requiredVersion: "^8.0.4",
},
"react-native-fast-image": {
singleton: true,
eager: true,
requiredVersion: "^8.6.3",
},
"react-native-fast-shadow": {
singleton: true,
eager: true,
requiredVersion: "^0.1.1",
},
"react-native-gesture-handler": {
singleton: true,
eager: true,
requiredVersion: "^2.24.0",
},
"react-native-google-places-autocomplete": {
singleton: true,
eager: true,
requiredVersion: "^2.5.7",
},
"react-native-keyboard-aware-scroll-view": {
singleton: true,
eager: true,
requiredVersion: "^0.9.5",
},
"react-native-linear-gradient": {
singleton: true,
eager: true,
requiredVersion: "^2.8.3",
},
"react-native-modal": {
singleton: true,
eager: true,
requiredVersion: "^14.0.0-rc.1",
},
"react-native-outside-press": {
singleton: true,
eager: true,
requiredVersion: "^1.2.2",
},
"react-native-permissions": {
singleton: true,
eager: true,
requiredVersion: "5.4.0",
},
"react-native-raw-bottom-sheet": {
singleton: true,
eager: true,
requiredVersion: "^3.0.0",
},
"react-native-reanimated": {
singleton: true,
eager: true,
requiredVersion: "^3.17.1",
},
"react-native-safe-area-context": {
singleton: true,
eager: true,
requiredVersion: "^5.3.0",
},
"react-native-screens": {
singleton: true,
eager: true,
requiredVersion: "^4.9.2",
},
"react-native-share": {
singleton: true,
eager: true,
requiredVersion: "^12.0.9",
},
"react-native-size-matters": {
singleton: true,
eager: true,
requiredVersion: "^0.4.2",
},
"react-native-svg": {
singleton: true,
eager: true,
requiredVersion: "^15.11.2",
},
"react-redux": {
singleton: true,
eager: true,
requiredVersion: "^9.2.0",
},
"redux-persist": {
singleton: true,
eager: true,
requiredVersion: "^6.0.0",
},
zod: {
singleton: true,
eager: true,
requiredVersion: "^3.24.2",
},
// ✅ Local shared modules
"./src/component/molecule": {
singleton: true,
eager: true,
requiredVersion: "1",
},
"./src/component/atom": {
singleton: true,
eager: true,
requiredVersion: "1",
},
"./src/constants/icon": {
singleton: true,
eager: true,
requiredVersion: "1",
},
"./src/component/atom/Icons/Icon": {
singleton: true,
eager: true,
requiredVersion: "1",
},
"./src/api/nodeApi": {
singleton: true,
eager: true,
requiredVersion: "1",
},
"./src/api/cmsApi": {
singleton: true,
eager: true,
requiredVersion: "1",
},
},
}),
// silence missing @react-native-masked-view optionally required by @react-navigation/elements
// new rspack.IgnorePlugin({
// resourceRegExp: /^@react-native-masked-view/,
// }),
new rspack.DefinePlugin({
__WITH_PRELOAD__:
process.env.WITH_PRELOAD === "true" ||
process.env.WITH_PRELOAD === "1",
}),
new rspack.DefinePlugin({
"process.env.__USE_REPACK__": JSON.stringify(
process.env.__USE_REPACK__ || ""
),
}),
],
};
};
Hermes Crash Log – July 9, 2025
❗ Fatal Exception Summary
2025-07-09 04:15:29.586 6180-6253 AndroidRuntime mtnft.consumer.uat E FATAL EXCEPTION: mqt_v_native
Process: mtnft.consumer.uat, PID: 6180
com.facebook.react.common.JavascriptException: TypeError: undefined is not a function
This error is located at:
at AppContainer (address at index.android.bundle:1:7389732), js engine: hermes, stack:
getOwner@1:3333236
jsxDEVImpl@1:3334774
anonymous@1:3335700
AppContainer@1:7389911
renderWithHooks@1:734418
updateFunctionComponent@1:746948
beginWork@1:754756
performUnitOfWork@1:775619
workLoopSync@1:774649
renderRootSync@1:774481
performWorkOnRoot@1:771961
performWorkOnRootViaSchedulerTask@1:724588
at com.facebook.react.modules.core.ExceptionsManagerModule.reportException(Unknown Source:76)
at com.facebook.jni.NativeRunnable.run(Native Method)
at android.os.Handler.handleCallback(Handler.java:958)
at android.os.Handler.dispatchMessage(Handler.java:99)
at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(Unknown Source:5)
at android.os.Looper.loopOnce(Looper.java:205)
at android.os.Looper.loop(Looper.java:294)
at com.facebook.react.bridge.queue.MessageQueueThreadImpl$Companion.startNewBackgroundThread$lambda$1(Unknown Source:38)
at com.facebook.react.bridge.queue.MessageQueueThreadImpl$Companion.a(Unknown Source:0)
at VM.run(Unknown Source:2)
at java.lang.Thread.run(Thread.java:1012)
Follow up Question
-
Is there anything wrong with my webpack config that makes it crash only in release mode?
-
Is there anyway I can improve my RsPack config to make it more optimized as regards bundle size (I've used the TerserPlugin)
-
Any optimization suggestion is appreciated Thanks
System Info
System:
OS: macOS 15.3.2
CPU: (8) arm64 Apple M2
Memory: 134.97 MB / 16.00 GB
Shell:
version: "5.9"
path: /bin/zsh
Binaries:
Node:
version: 22.15.0
path: ~/.nvm/versions/node/v22.15.0/bin/node
Yarn:
version: 1.22.22
path: ~/.nvm/versions/node/v22.15.0/bin/yarn
npm:
version: 10.9.2
path: ~/.nvm/versions/node/v22.15.0/bin/npm
Watchman:
version: 2025.05.26.00
path: /opt/homebrew/bin/watchman
Managers:
CocoaPods:
version: 1.16.2
path: /Users/ifeoluwachukwu/.rbenv/shims/pod
SDKs:
iOS SDK:
Platforms:
- DriverKit 24.2
- iOS 18.2
- macOS 15.2
- tvOS 18.2
- visionOS 2.2
- watchOS 11.2
Android SDK: Not Found
IDEs:
Android Studio: 2023.2 AI-232.10300.40.2321.11668458
Xcode:
version: 16.2/16C5032a
path: /usr/bin/xcodebuild
Languages:
Java:
version: 17.0.11
path: /Users/ifeoluwachukwu/.jenv/shims/javac
Ruby:
version: 2.7.6
path: /Users/ifeoluwachukwu/.rbenv/shims/ruby
npmPackages:
"@react-native-community/cli":
installed: 18.0.0
wanted: 18.0.0
react:
installed: 19.0.0
wanted: 19.0.0
react-native:
installed: 0.79.5
wanted: 0.79.5
react-native-macos: Not Found
npmGlobalPackages:
"*react-native*": Not Found
Android:
hermesEnabled: true
newArchEnabled: true
iOS:
hermesEnabled: true
newArchEnabled: true
info React Native v0.80.1 is now available (your project is running on v0.79.5).
info Changelog: https://github.com/facebook/react-native/releases/tag/v0.80.1
info Diff: https://react-native-community.github.io/upgrade-helper/?from=0.79.5&to=0.80.1
info For more info, check out "https://reactnative.dev/docs/upgrading?os=macos".
Re.Pack Version
5.1.3
Reproduction
Repack v5.1.3
Steps to reproduce
Upgraded my project from v4 to v5
- Everything worked fine in debug mode using RsPack or Webpack
- When I try to create a release build with webpack, it fails.
Adding a repo to reproduce this https://github.com/vlack-coder/webpack_test
I'm experiencing the same issue.
hey @vlack-coder,
I'm not able to see the reproduction, could you please make it public?
I face the same issue.
I face the same issue.
could you provide a minimal repro?
I face the same issue.
could you provide a minimal repro?
I don't have a specific repo to point to, but I think it originates from https://github.com/facebook/react/issues/32030 Do you have any solution for this issue?
I don't have a specific repo to point to, but I think it originates from facebook/react#32030 Do you have any solution for this issue?
This feels like a different issue altogether - in target production environment you wouldn't want to mix dev & prod modes anyways. This is also entirely on the side of React to fix this, nothing to be done on the Re.Pack side I'm afraid
i face the same issue, any help?