diff --git a/CHANGELOG.md b/CHANGELOG.md index e8b58e786151..e295bed19075 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -54,7 +54,7 @@ Now, there are two options to set up the SDK: ); ``` -Work in this release was contributed by @jahands. Thank you for your contribution! +Work in this release was contributed by @jahands and @jrandolf. Thank you for your contributions! ## 8.51.0 diff --git a/packages/core/src/utils-hoist/node.ts b/packages/core/src/utils-hoist/node.ts index 3805248bdedd..489a5c2cb57d 100644 --- a/packages/core/src/utils-hoist/node.ts +++ b/packages/core/src/utils-hoist/node.ts @@ -42,14 +42,16 @@ export function dynamicRequire(mod: any, request: string): any { * That is to mimic the behavior of `require.resolve` exactly. * * @param moduleName module name to require + * @param existingModule module to use for requiring * @returns possibly required module */ -export function loadModule(moduleName: string): T | undefined { +// eslint-disable-next-line @typescript-eslint/no-explicit-any +export function loadModule(moduleName: string, existingModule: any = module): T | undefined { let mod: T | undefined; try { // eslint-disable-next-line deprecation/deprecation - mod = dynamicRequire(module, moduleName); + mod = dynamicRequire(existingModule, moduleName); } catch (e) { // no-empty } @@ -57,9 +59,9 @@ export function loadModule(moduleName: string): T | undefined { if (!mod) { try { // eslint-disable-next-line deprecation/deprecation - const { cwd } = dynamicRequire(module, 'process'); + const { cwd } = dynamicRequire(existingModule, 'process'); // eslint-disable-next-line deprecation/deprecation - mod = dynamicRequire(module, `${cwd()}/node_modules/${moduleName}`) as T; + mod = dynamicRequire(existingModule, `${cwd()}/node_modules/${moduleName}`) as T; } catch (e) { // no-empty } diff --git a/packages/nextjs/src/config/webpack.ts b/packages/nextjs/src/config/webpack.ts index d8a29d7d025c..616e5fa08351 100644 --- a/packages/nextjs/src/config/webpack.ts +++ b/packages/nextjs/src/config/webpack.ts @@ -332,7 +332,7 @@ export function constructWebpackConfigFunction( // Symbolication for dev-mode errors is done elsewhere. if (!isDev) { // eslint-disable-next-line @typescript-eslint/no-explicit-any - const { sentryWebpackPlugin } = loadModule<{ sentryWebpackPlugin: any }>('@sentry/webpack-plugin') ?? {}; + const { sentryWebpackPlugin } = loadModule<{ sentryWebpackPlugin: any }>('@sentry/webpack-plugin', module) ?? {}; if (sentryWebpackPlugin) { if (!userSentryOptions.sourcemaps?.disable) { diff --git a/packages/remix/src/utils/instrumentServer.ts b/packages/remix/src/utils/instrumentServer.ts index 1d67403209bc..8a51582eda21 100644 --- a/packages/remix/src/utils/instrumentServer.ts +++ b/packages/remix/src/utils/instrumentServer.ts @@ -448,7 +448,7 @@ const makeWrappedCreateRequestHandler = (options: RemixOptions) => export function instrumentServer(options: RemixOptions): void { const pkg = loadModule<{ createRequestHandler: CreateRequestHandlerFunction; - }>('@remix-run/server-runtime'); + }>('@remix-run/server-runtime', module); if (!pkg) { DEBUG_BUILD && logger.warn('Remix SDK was unable to require `@remix-run/server-runtime` package.');