rasengan 1.2.0-beta.5 → 1.2.0-beta.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  ## Unreleased
2
2
 
3
+ ## 1.2.0-beta.8 (2026-01-03)
4
+
5
+ ## 1.2.0-beta.7 (2026-01-03)
6
+
7
+ ## 1.2.0-beta.6 (2026-01-03)
8
+
3
9
  ## 1.2.0-beta.5 (2026-01-03)
4
10
 
5
11
  ## 1.2.0-beta.4 (2026-01-02)
@@ -1,7 +1,7 @@
1
1
  import path, { resolve } from 'path';
2
2
  import fs from 'fs';
3
3
  import { loadModuleSSR } from '../config/utils/load-modules.js';
4
- import { resolveBuildOptions } from '../../server.js';
4
+ import { detectRuntime, resolveBuildOptions } from '../../server.js';
5
5
  import { renderIndexHTML } from '../../server/build/rendering.js';
6
6
  import { createVirtualModule } from '../../server/virtual/index.js';
7
7
  import { pathToFileURL } from 'url';
@@ -238,8 +238,13 @@ export function rasengan({ adapter = { name: Adapters.DEFAULT, prepare: async ()
238
238
  enableIndexFallback,
239
239
  });
240
240
  }
241
- // Prepare the app for deployment
242
- await prepareToDeploy(adapter);
241
+ // Detect runtime environment
242
+ const runtime = detectRuntime();
243
+ console.log(`Detected runtime: ${runtime}`);
244
+ if (runtime !== 'local' && runtime !== 'unknown') {
245
+ // Prepare the app for deployment
246
+ await prepareToDeploy(adapter);
247
+ }
243
248
  }
244
249
  },
245
250
  apply: 'build',
@@ -12,7 +12,7 @@ export default function MetadataProvider({ children, }) {
12
12
  (async () => {
13
13
  const loadersData = routes.map((route) => route.loaderData ?? route.data // Normally the route.data is deprecated, we need to consider route.loaderData, but in some cases, route.loaderData is undefined and I don't know why, that's why we are using route.data instead
14
14
  );
15
- handleInjectMetadata(loadersData);
15
+ handleInjectMetadata(loadersData.filter(Boolean)); // Sometimes, loadersData contains `undefined` values, the filter(Boolean) is there to remove all falsy values
16
16
  })();
17
17
  }, [location]);
18
18
  /**
@@ -0,0 +1,13 @@
1
+ export function detectRuntime() {
2
+ if (process.env.VERCEL === '1') {
3
+ return 'vercel';
4
+ }
5
+ if (process.env.NETLIFY === 'true') {
6
+ return 'netlify';
7
+ }
8
+ if (process.env.NODE_ENV === 'development' ||
9
+ process.env.NODE_ENV === 'test') {
10
+ return 'local';
11
+ }
12
+ return 'unknown';
13
+ }
package/lib/esm/server.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import { createRequestHandler } from './server/node/index.js';
2
2
  import { resolveBuildOptions } from './server/build/index.js';
3
+ import { detectRuntime } from './server/runtime/detect-runtime.js';
3
4
  import compression from 'compression';
4
5
  import express from 'express';
5
6
  export * from './server/build/manifest.js';
6
- export { createRequestHandler, resolveBuildOptions, express, compression };
7
+ export { createRequestHandler, resolveBuildOptions, express, compression, detectRuntime, };
@@ -1 +1 @@
1
- {"root":["../src/client.ts","../src/index.ts","../src/plugin.ts","../src/server.ts","../src/cli/index.ts","../src/core/index.ts","../src/core/types.ts","../src/core/config/index.ts","../src/core/config/type.ts","../src/core/config/utils/define-config.ts","../src/core/config/utils/load-modules.ts","../src/core/config/utils/path.ts","../src/core/config/vite/defaults.ts","../src/core/dynamic/index.tsx","../src/core/middlewares/index.ts","../src/core/middlewares/logger.ts","../src/core/plugins/index.ts","../src/core/utils/log.ts","../src/entries/client/render.tsx","../src/entries/server/entry.server.tsx","../src/entries/server/index.tsx","../src/routing/index.ts","../src/routing/interfaces.tsx","../src/routing/types.ts","../src/routing/components/fallback.tsx","../src/routing/components/index.tsx","../src/routing/components/template.tsx","../src/routing/providers/metadata.tsx","../src/routing/utils/define-router.tsx","../src/routing/utils/define-routes-group.tsx","../src/routing/utils/define-static-paths.tsx","../src/routing/utils/flat-routes.tsx","../src/routing/utils/generate-metadata.tsx","../src/routing/utils/generate-routes.tsx","../src/routing/utils/index.tsx","../src/scripts/build-command.js","../src/scripts/generate-package-json.js","../src/scripts/utils/check-os.js","../src/scripts/utils/copy.js","../src/server/build/index.ts","../src/server/build/manifest.tsx","../src/server/build/rendering.tsx","../src/server/dev/handlers.tsx","../src/server/dev/server.ts","../src/server/dev/utils.ts","../src/server/node/index.tsx","../src/server/node/rendering.ts","../src/server/node/stream.ts","../src/server/node/utils.ts","../src/server/runtime/mode.ts","../src/server/runtime/utils.ts","../src/server/virtual/index.ts","../types/client.d.ts"],"version":"5.9.2"}
1
+ {"root":["../src/client.ts","../src/index.ts","../src/plugin.ts","../src/server.ts","../src/cli/index.ts","../src/core/index.ts","../src/core/types.ts","../src/core/config/index.ts","../src/core/config/type.ts","../src/core/config/utils/define-config.ts","../src/core/config/utils/load-modules.ts","../src/core/config/utils/path.ts","../src/core/config/vite/defaults.ts","../src/core/dynamic/index.tsx","../src/core/middlewares/index.ts","../src/core/middlewares/logger.ts","../src/core/plugins/index.ts","../src/core/utils/log.ts","../src/entries/client/render.tsx","../src/entries/server/entry.server.tsx","../src/entries/server/index.tsx","../src/routing/index.ts","../src/routing/interfaces.tsx","../src/routing/types.ts","../src/routing/components/fallback.tsx","../src/routing/components/index.tsx","../src/routing/components/template.tsx","../src/routing/providers/metadata.tsx","../src/routing/utils/define-router.tsx","../src/routing/utils/define-routes-group.tsx","../src/routing/utils/define-static-paths.tsx","../src/routing/utils/flat-routes.tsx","../src/routing/utils/generate-metadata.tsx","../src/routing/utils/generate-routes.tsx","../src/routing/utils/index.tsx","../src/scripts/build-command.js","../src/scripts/generate-package-json.js","../src/scripts/utils/check-os.js","../src/scripts/utils/copy.js","../src/server/build/index.ts","../src/server/build/manifest.tsx","../src/server/build/rendering.tsx","../src/server/dev/handlers.tsx","../src/server/dev/server.ts","../src/server/dev/utils.ts","../src/server/node/index.tsx","../src/server/node/rendering.ts","../src/server/node/stream.ts","../src/server/node/utils.ts","../src/server/runtime/detect-runtime.ts","../src/server/runtime/mode.ts","../src/server/runtime/utils.ts","../src/server/virtual/index.ts","../types/client.d.ts"],"version":"5.9.2"}
@@ -1 +1 @@
1
- {"root":["../src/client.ts","../src/index.ts","../src/plugin.ts","../src/server.ts","../src/cli/index.ts","../src/core/index.ts","../src/core/types.ts","../src/core/config/index.ts","../src/core/config/type.ts","../src/core/config/utils/define-config.ts","../src/core/config/utils/load-modules.ts","../src/core/config/utils/path.ts","../src/core/config/vite/defaults.ts","../src/core/dynamic/index.tsx","../src/core/middlewares/index.ts","../src/core/middlewares/logger.ts","../src/core/plugins/index.ts","../src/core/utils/log.ts","../src/entries/client/render.tsx","../src/entries/server/entry.server.tsx","../src/entries/server/index.tsx","../src/routing/index.ts","../src/routing/interfaces.tsx","../src/routing/types.ts","../src/routing/components/fallback.tsx","../src/routing/components/index.tsx","../src/routing/components/template.tsx","../src/routing/providers/metadata.tsx","../src/routing/utils/define-router.tsx","../src/routing/utils/define-routes-group.tsx","../src/routing/utils/define-static-paths.tsx","../src/routing/utils/flat-routes.tsx","../src/routing/utils/generate-metadata.tsx","../src/routing/utils/generate-routes.tsx","../src/routing/utils/index.tsx","../src/scripts/build-command.js","../src/scripts/generate-package-json.js","../src/scripts/utils/check-os.js","../src/scripts/utils/copy.js","../src/server/build/index.ts","../src/server/build/manifest.tsx","../src/server/build/rendering.tsx","../src/server/dev/handlers.tsx","../src/server/dev/server.ts","../src/server/dev/utils.ts","../src/server/node/index.tsx","../src/server/node/rendering.ts","../src/server/node/stream.ts","../src/server/node/utils.ts","../src/server/runtime/mode.ts","../src/server/runtime/utils.ts","../src/server/virtual/index.ts","../types/client.d.ts"],"version":"5.9.2"}
1
+ {"root":["../src/client.ts","../src/index.ts","../src/plugin.ts","../src/server.ts","../src/cli/index.ts","../src/core/index.ts","../src/core/types.ts","../src/core/config/index.ts","../src/core/config/type.ts","../src/core/config/utils/define-config.ts","../src/core/config/utils/load-modules.ts","../src/core/config/utils/path.ts","../src/core/config/vite/defaults.ts","../src/core/dynamic/index.tsx","../src/core/middlewares/index.ts","../src/core/middlewares/logger.ts","../src/core/plugins/index.ts","../src/core/utils/log.ts","../src/entries/client/render.tsx","../src/entries/server/entry.server.tsx","../src/entries/server/index.tsx","../src/routing/index.ts","../src/routing/interfaces.tsx","../src/routing/types.ts","../src/routing/components/fallback.tsx","../src/routing/components/index.tsx","../src/routing/components/template.tsx","../src/routing/providers/metadata.tsx","../src/routing/utils/define-router.tsx","../src/routing/utils/define-routes-group.tsx","../src/routing/utils/define-static-paths.tsx","../src/routing/utils/flat-routes.tsx","../src/routing/utils/generate-metadata.tsx","../src/routing/utils/generate-routes.tsx","../src/routing/utils/index.tsx","../src/scripts/build-command.js","../src/scripts/generate-package-json.js","../src/scripts/utils/check-os.js","../src/scripts/utils/copy.js","../src/server/build/index.ts","../src/server/build/manifest.tsx","../src/server/build/rendering.tsx","../src/server/dev/handlers.tsx","../src/server/dev/server.ts","../src/server/dev/utils.ts","../src/server/node/index.tsx","../src/server/node/rendering.ts","../src/server/node/stream.ts","../src/server/node/utils.ts","../src/server/runtime/detect-runtime.ts","../src/server/runtime/mode.ts","../src/server/runtime/utils.ts","../src/server/virtual/index.ts","../types/client.d.ts"],"version":"5.9.2"}
@@ -0,0 +1,2 @@
1
+ export type RuntimeEnvironment = 'vercel' | 'netlify' | 'local' | 'unknown';
2
+ export declare function detectRuntime(): RuntimeEnvironment;
@@ -1,6 +1,7 @@
1
1
  import { createRequestHandler } from './server/node/index.js';
2
2
  import { resolveBuildOptions } from './server/build/index.js';
3
+ import { detectRuntime } from './server/runtime/detect-runtime.js';
3
4
  import compression from 'compression';
4
5
  import express from 'express';
5
6
  export * from './server/build/manifest.js';
6
- export { createRequestHandler, resolveBuildOptions, express, compression };
7
+ export { createRequestHandler, resolveBuildOptions, express, compression, detectRuntime, };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "rasengan",
3
3
  "private": false,
4
- "version": "1.2.0-beta.5",
4
+ "version": "1.2.0-beta.8",
5
5
  "description": "The modern React Framework",
6
6
  "type": "module",
7
7
  "main": "lib/esm/index.js",
package/vite.config.ts CHANGED
@@ -43,11 +43,11 @@ export default defineConfig(async ({ mode }): Promise<UserConfig> => {
43
43
  return {
44
44
  ...baseConfig,
45
45
  plugins: [
46
- react(
47
- rcMode && {
48
- babel: rcBabelConfig,
49
- }
50
- ),
46
+ rcMode
47
+ ? react({
48
+ babel: rcBabelConfig,
49
+ })
50
+ : react(),
51
51
  ...plugins,
52
52
  ...(config.vite?.plugins || []),
53
53
  ],