Updates
This commit is contained in:
Vendored
+14
-2
@@ -1,9 +1,10 @@
|
|||||||
import { Command } from "commander";
|
import { Command } from "commander";
|
||||||
import { log } from "../../utils/log";
|
import { log } from "../../utils/log";
|
||||||
import grabDirNames from "../../utils/grab-dir-names";
|
import grabDirNames from "../../utils/grab-dir-names";
|
||||||
import { rmSync } from "fs";
|
import { rmSync, writeFileSync } from "fs";
|
||||||
import bunextInit from "../../functions/bunext-init";
|
import bunextInit from "../../functions/bunext-init";
|
||||||
const { HYDRATION_DST_DIR, BUNX_CWD_PAGES_REWRITE_DIR } = grabDirNames();
|
import pagesSSRBundler from "../../functions/bundler/pages-ssr-bundler";
|
||||||
|
const { HYDRATION_DST_DIR, BUNX_CWD_PAGES_REWRITE_DIR, BUNDLER_CTX_MAP_JSON, SSR_BUNDLER_CTX_MAP_JSON, BUNX_CWD_MODULE_CACHE_DIR, } = grabDirNames();
|
||||||
export default function () {
|
export default function () {
|
||||||
return new Command("build")
|
return new Command("build")
|
||||||
.description("Build Project")
|
.description("Build Project")
|
||||||
@@ -11,10 +12,21 @@ export default function () {
|
|||||||
try {
|
try {
|
||||||
rmSync(HYDRATION_DST_DIR, { recursive: true });
|
rmSync(HYDRATION_DST_DIR, { recursive: true });
|
||||||
rmSync(BUNX_CWD_PAGES_REWRITE_DIR, { recursive: true });
|
rmSync(BUNX_CWD_PAGES_REWRITE_DIR, { recursive: true });
|
||||||
|
rmSync(BUNX_CWD_MODULE_CACHE_DIR, {
|
||||||
|
recursive: true,
|
||||||
|
force: true,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
catch (error) { }
|
catch (error) { }
|
||||||
global.BUNEXT_SKIPPED_BROWSER_MODULES = new Set();
|
global.BUNEXT_SKIPPED_BROWSER_MODULES = new Set();
|
||||||
await bunextInit({ build_only: true });
|
await bunextInit({ build_only: true });
|
||||||
|
// await pagesSSRBundler();
|
||||||
|
if (global.BUNEXT_BUNDLER_CTX_MAP) {
|
||||||
|
writeFileSync(BUNDLER_CTX_MAP_JSON, JSON.stringify(global.BUNEXT_BUNDLER_CTX_MAP), "utf-8");
|
||||||
|
}
|
||||||
|
if (global.BUNEXT_SSR_BUNDLER_CTX_MAP) {
|
||||||
|
writeFileSync(SSR_BUNDLER_CTX_MAP_JSON, JSON.stringify(global.BUNEXT_SSR_BUNDLER_CTX_MAP), "utf-8");
|
||||||
|
}
|
||||||
log.success("Modules Built Successfully!");
|
log.success("Modules Built Successfully!");
|
||||||
process.exit();
|
process.exit();
|
||||||
});
|
});
|
||||||
|
|||||||
Vendored
+7
-1
@@ -2,7 +2,8 @@ import { Command } from "commander";
|
|||||||
import path from "path";
|
import path from "path";
|
||||||
import grabDirNames from "../../utils/grab-dir-names";
|
import grabDirNames from "../../utils/grab-dir-names";
|
||||||
import writeErrorFile from "../../functions/write-error-file";
|
import writeErrorFile from "../../functions/write-error-file";
|
||||||
import { existsSync } from "fs";
|
import { existsSync, rmSync } from "fs";
|
||||||
|
const { BUNDLER_CTX_MAP_JSON, SSR_BUNDLER_CTX_MAP_JSON } = grabDirNames();
|
||||||
let retries = 0;
|
let retries = 0;
|
||||||
let timeout;
|
let timeout;
|
||||||
const MAX_RETRIES = 5;
|
const MAX_RETRIES = 5;
|
||||||
@@ -10,6 +11,11 @@ export default function () {
|
|||||||
return new Command("dev")
|
return new Command("dev")
|
||||||
.description("Run development server")
|
.description("Run development server")
|
||||||
.action(async () => {
|
.action(async () => {
|
||||||
|
try {
|
||||||
|
rmSync(SSR_BUNDLER_CTX_MAP_JSON, { recursive: true });
|
||||||
|
rmSync(BUNDLER_CTX_MAP_JSON, { recursive: true });
|
||||||
|
}
|
||||||
|
catch (error) { }
|
||||||
await dev();
|
await dev();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
Vendored
+19
@@ -1,6 +1,25 @@
|
|||||||
|
import { readFileSync } from "fs";
|
||||||
import bunextInit from "../../functions/bunext-init";
|
import bunextInit from "../../functions/bunext-init";
|
||||||
import startServer from "../../functions/server/start-server";
|
import startServer from "../../functions/server/start-server";
|
||||||
|
import grabDirNames from "../../utils/grab-dir-names";
|
||||||
import { log } from "../../utils/log";
|
import { log } from "../../utils/log";
|
||||||
|
const { BUNDLER_CTX_MAP_JSON, SSR_BUNDLER_CTX_MAP_JSON } = grabDirNames();
|
||||||
log.info("Starting production server ...");
|
log.info("Starting production server ...");
|
||||||
|
try {
|
||||||
|
const bundler_ctx_json = JSON.parse(readFileSync(BUNDLER_CTX_MAP_JSON, "utf-8"));
|
||||||
|
if (bundler_ctx_json) {
|
||||||
|
global.BUNEXT_BUNDLER_CTX_MAP = bundler_ctx_json;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (error) {
|
||||||
|
// log.error(`Couldn't set global bundler CTX map: ${error.message}`);
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
const ssr_bundler_ctx_json = JSON.parse(readFileSync(SSR_BUNDLER_CTX_MAP_JSON, "utf-8"));
|
||||||
|
if (ssr_bundler_ctx_json) {
|
||||||
|
global.BUNEXT_SSR_BUNDLER_CTX_MAP = ssr_bundler_ctx_json;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (error) { }
|
||||||
await bunextInit();
|
await bunextInit();
|
||||||
await startServer();
|
await startServer();
|
||||||
|
|||||||
@@ -5,11 +5,11 @@ import buildOnstartErrorHandler from "../build-on-start-error-handler";
|
|||||||
import _ from "lodash";
|
import _ from "lodash";
|
||||||
import pagesSSRBundler from "../pages-ssr-bundler";
|
import pagesSSRBundler from "../pages-ssr-bundler";
|
||||||
import grabDirNames from "../../../utils/grab-dir-names";
|
import grabDirNames from "../../../utils/grab-dir-names";
|
||||||
import { cpSync, existsSync, mkdirSync, rmSync } from "fs";
|
import { cpSync, existsSync, mkdirSync, rmSync, writeFileSync } from "fs";
|
||||||
import fullRebuild from "../../server/full-rebuild";
|
import fullRebuild from "../../server/full-rebuild";
|
||||||
import path from "path";
|
import path from "path";
|
||||||
import cleanupLogsDirs from "../../cleanup-logs-dir";
|
import cleanupLogsDirs from "../../cleanup-logs-dir";
|
||||||
const { BUNX_BUNDLER_ERROR_EXIT_FILE, BUNX_ERROR_LOGS_DIR } = grabDirNames();
|
const { BUNX_BUNDLER_ERROR_EXIT_FILE, BUNX_ERROR_LOGS_DIR, BUNDLER_CTX_MAP_JSON, SSR_BUNDLER_CTX_MAP_JSON, } = grabDirNames();
|
||||||
let build_start = 0;
|
let build_start = 0;
|
||||||
const MAX_BUILD_STARTS = 2;
|
const MAX_BUILD_STARTS = 2;
|
||||||
export default function esbuildCTXArtifactTracker({ entryToPage, post_build_fn, build_only, }) {
|
export default function esbuildCTXArtifactTracker({ entryToPage, post_build_fn, build_only, }) {
|
||||||
|
|||||||
Vendored
+11
-7
@@ -11,9 +11,14 @@ import watcherEsbuildCTX from "./server/watcher-esbuild-ctx";
|
|||||||
const dirNames = grabDirNames();
|
const dirNames = grabDirNames();
|
||||||
const { PAGES_DIR } = dirNames;
|
const { PAGES_DIR } = dirNames;
|
||||||
export default async function bunextInit(params) {
|
export default async function bunextInit(params) {
|
||||||
|
const are_modules_aready_built = global.BUNEXT_BUNDLER_CTX_MAP && global.BUNEXT_SSR_BUNDLER_CTX_MAP;
|
||||||
global.BUNEXT_HMR_CONTROLLERS = [];
|
global.BUNEXT_HMR_CONTROLLERS = [];
|
||||||
|
if (!global.BUNEXT_BUNDLER_CTX_MAP) {
|
||||||
global.BUNEXT_BUNDLER_CTX_MAP = {};
|
global.BUNEXT_BUNDLER_CTX_MAP = {};
|
||||||
|
}
|
||||||
|
if (!global.BUNEXT_SSR_BUNDLER_CTX_MAP) {
|
||||||
global.BUNEXT_SSR_BUNDLER_CTX_MAP = {};
|
global.BUNEXT_SSR_BUNDLER_CTX_MAP = {};
|
||||||
|
}
|
||||||
// global.BUNEXT_API_ROUTES_BUNDLER_CTX_MAP = {};
|
// global.BUNEXT_API_ROUTES_BUNDLER_CTX_MAP = {};
|
||||||
global.BUNEXT_BUNDLER_REBUILDS = 0;
|
global.BUNEXT_BUNDLER_REBUILDS = 0;
|
||||||
global.BUNEXT_REBUILD_RETRIES = 0;
|
global.BUNEXT_REBUILD_RETRIES = 0;
|
||||||
@@ -35,7 +40,7 @@ export default async function bunextInit(params) {
|
|||||||
const is_dev = isDevelopment();
|
const is_dev = isDevelopment();
|
||||||
if (params?.build_only) {
|
if (params?.build_only) {
|
||||||
log.build(`Building Modules ...`);
|
log.build(`Building Modules ...`);
|
||||||
await allPagesESBuildContextBundler();
|
await allPagesESBuildContextBundler({ build_only: params.build_only });
|
||||||
}
|
}
|
||||||
else if (is_dev) {
|
else if (is_dev) {
|
||||||
log.build(`Building Modules ...`);
|
log.build(`Building Modules ...`);
|
||||||
@@ -46,15 +51,14 @@ export default async function bunextInit(params) {
|
|||||||
});
|
});
|
||||||
watcherEsbuildCTX();
|
watcherEsbuildCTX();
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
if (are_modules_aready_built) {
|
||||||
|
log.success(`All modules already built.`);
|
||||||
|
}
|
||||||
else {
|
else {
|
||||||
log.build(`Building Modules ...`);
|
log.build(`Building Modules ...`);
|
||||||
await allPagesESBuildContextBundler({ start: true });
|
await allPagesESBuildContextBundler({ start: true });
|
||||||
|
}
|
||||||
cron();
|
cron();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// process.on("exit", (code) => {
|
|
||||||
// Bun.spawn([process.execPath, ...process.argv.slice(1)], {
|
|
||||||
// stdio: ["inherit", "inherit", "inherit"],
|
|
||||||
// env: process.env,
|
|
||||||
// });
|
|
||||||
// });
|
|
||||||
|
|||||||
Vendored
-4
@@ -10,10 +10,6 @@ export default async function () {
|
|||||||
recursive: true,
|
recursive: true,
|
||||||
force: true,
|
force: true,
|
||||||
});
|
});
|
||||||
rmSync(dirNames.BUNX_CWD_MODULE_CACHE_DIR, {
|
|
||||||
recursive: true,
|
|
||||||
force: true,
|
|
||||||
});
|
|
||||||
if (dirNames.ROOT_DIR.startsWith(dirNames.BUNX_ROOT_DIR) &&
|
if (dirNames.ROOT_DIR.startsWith(dirNames.BUNX_ROOT_DIR) &&
|
||||||
!dirNames.ROOT_DIR.includes(`${dirNames.BUNX_ROOT_DIR}/test/`)) {
|
!dirNames.ROOT_DIR.includes(`${dirNames.BUNX_ROOT_DIR}/test/`)) {
|
||||||
log.error(`Can't Run From this Directory => ${dirNames.ROOT_DIR}`);
|
log.error(`Can't Run From this Directory => ${dirNames.ROOT_DIR}`);
|
||||||
|
|||||||
Vendored
+2
@@ -26,5 +26,7 @@ export type DirNames = {
|
|||||||
BUNX_BUNDLER_ERROR_EXIT_FILE: string;
|
BUNX_BUNDLER_ERROR_EXIT_FILE: string;
|
||||||
BUNX_ERROR_LOGS_DIR: string;
|
BUNX_ERROR_LOGS_DIR: string;
|
||||||
BUNX_LOGS_DIR: string;
|
BUNX_LOGS_DIR: string;
|
||||||
|
BUNDLER_CTX_MAP_JSON: string;
|
||||||
|
SSR_BUNDLER_CTX_MAP_JSON: string;
|
||||||
};
|
};
|
||||||
export default function grabDirNames(): DirNames;
|
export default function grabDirNames(): DirNames;
|
||||||
|
|||||||
Vendored
+4
@@ -29,6 +29,8 @@ export default function grabDirNames() {
|
|||||||
const BUNX_ROOT_500_PRESET_COMPONENT = path.join(BUNX_ROOT_PRESETS_DIR, `${BUNX_ROOT_500_FILE_NAME}.tsx`);
|
const BUNX_ROOT_500_PRESET_COMPONENT = path.join(BUNX_ROOT_PRESETS_DIR, `${BUNX_ROOT_500_FILE_NAME}.tsx`);
|
||||||
const BUNX_ROOT_404_FILE_NAME = `not-found`;
|
const BUNX_ROOT_404_FILE_NAME = `not-found`;
|
||||||
const BUNX_ROOT_404_PRESET_COMPONENT = path.join(BUNX_ROOT_PRESETS_DIR, `${BUNX_ROOT_404_FILE_NAME}.tsx`);
|
const BUNX_ROOT_404_PRESET_COMPONENT = path.join(BUNX_ROOT_PRESETS_DIR, `${BUNX_ROOT_404_FILE_NAME}.tsx`);
|
||||||
|
const BUNDLER_CTX_MAP_JSON = path.join(BUNX_CWD_DIR, "bundler-ctx-map.json");
|
||||||
|
const SSR_BUNDLER_CTX_MAP_JSON = path.join(BUNX_CWD_DIR, "ssr-bundler-ctx-map.json");
|
||||||
return {
|
return {
|
||||||
ROOT_DIR,
|
ROOT_DIR,
|
||||||
SRC_DIR,
|
SRC_DIR,
|
||||||
@@ -57,6 +59,8 @@ export default function grabDirNames() {
|
|||||||
BUNX_BUNDLER_ERROR_EXIT_FILE,
|
BUNX_BUNDLER_ERROR_EXIT_FILE,
|
||||||
BUNX_ERROR_LOGS_DIR,
|
BUNX_ERROR_LOGS_DIR,
|
||||||
BUNX_LOGS_DIR,
|
BUNX_LOGS_DIR,
|
||||||
|
BUNDLER_CTX_MAP_JSON,
|
||||||
|
SSR_BUNDLER_CTX_MAP_JSON,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
// const NODE_MODULES_DIR = path.resolve(
|
// const NODE_MODULES_DIR = path.resolve(
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@moduletrace/bunext",
|
"name": "@moduletrace/bunext",
|
||||||
"version": "1.1.7",
|
"version": "1.1.8",
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
"module": "index.ts",
|
"module": "index.ts",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
|||||||
@@ -1,10 +1,17 @@
|
|||||||
import { Command } from "commander";
|
import { Command } from "commander";
|
||||||
import { log } from "../../utils/log";
|
import { log } from "../../utils/log";
|
||||||
import grabDirNames from "../../utils/grab-dir-names";
|
import grabDirNames from "../../utils/grab-dir-names";
|
||||||
import { rmSync } from "fs";
|
import { rmSync, writeFileSync } from "fs";
|
||||||
import bunextInit from "../../functions/bunext-init";
|
import bunextInit from "../../functions/bunext-init";
|
||||||
|
import pagesSSRBundler from "../../functions/bundler/pages-ssr-bundler";
|
||||||
|
|
||||||
const { HYDRATION_DST_DIR, BUNX_CWD_PAGES_REWRITE_DIR } = grabDirNames();
|
const {
|
||||||
|
HYDRATION_DST_DIR,
|
||||||
|
BUNX_CWD_PAGES_REWRITE_DIR,
|
||||||
|
BUNDLER_CTX_MAP_JSON,
|
||||||
|
SSR_BUNDLER_CTX_MAP_JSON,
|
||||||
|
BUNX_CWD_MODULE_CACHE_DIR,
|
||||||
|
} = grabDirNames();
|
||||||
|
|
||||||
export default function () {
|
export default function () {
|
||||||
return new Command("build")
|
return new Command("build")
|
||||||
@@ -13,11 +20,32 @@ export default function () {
|
|||||||
try {
|
try {
|
||||||
rmSync(HYDRATION_DST_DIR, { recursive: true });
|
rmSync(HYDRATION_DST_DIR, { recursive: true });
|
||||||
rmSync(BUNX_CWD_PAGES_REWRITE_DIR, { recursive: true });
|
rmSync(BUNX_CWD_PAGES_REWRITE_DIR, { recursive: true });
|
||||||
|
rmSync(BUNX_CWD_MODULE_CACHE_DIR, {
|
||||||
|
recursive: true,
|
||||||
|
force: true,
|
||||||
|
});
|
||||||
} catch (error) {}
|
} catch (error) {}
|
||||||
|
|
||||||
global.BUNEXT_SKIPPED_BROWSER_MODULES = new Set<string>();
|
global.BUNEXT_SKIPPED_BROWSER_MODULES = new Set<string>();
|
||||||
|
|
||||||
await bunextInit({ build_only: true });
|
await bunextInit({ build_only: true });
|
||||||
|
// await pagesSSRBundler();
|
||||||
|
|
||||||
|
if (global.BUNEXT_BUNDLER_CTX_MAP) {
|
||||||
|
writeFileSync(
|
||||||
|
BUNDLER_CTX_MAP_JSON,
|
||||||
|
JSON.stringify(global.BUNEXT_BUNDLER_CTX_MAP),
|
||||||
|
"utf-8",
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (global.BUNEXT_SSR_BUNDLER_CTX_MAP) {
|
||||||
|
writeFileSync(
|
||||||
|
SSR_BUNDLER_CTX_MAP_JSON,
|
||||||
|
JSON.stringify(global.BUNEXT_SSR_BUNDLER_CTX_MAP),
|
||||||
|
"utf-8",
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
log.success("Modules Built Successfully!");
|
log.success("Modules Built Successfully!");
|
||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,9 @@ import path from "path";
|
|||||||
import type { BunSpawnOptions } from "../../types";
|
import type { BunSpawnOptions } from "../../types";
|
||||||
import grabDirNames from "../../utils/grab-dir-names";
|
import grabDirNames from "../../utils/grab-dir-names";
|
||||||
import writeErrorFile from "../../functions/write-error-file";
|
import writeErrorFile from "../../functions/write-error-file";
|
||||||
import { existsSync } from "fs";
|
import { existsSync, rmSync } from "fs";
|
||||||
|
|
||||||
|
const { BUNDLER_CTX_MAP_JSON, SSR_BUNDLER_CTX_MAP_JSON } = grabDirNames();
|
||||||
|
|
||||||
let retries = 0;
|
let retries = 0;
|
||||||
let timeout: any;
|
let timeout: any;
|
||||||
@@ -13,6 +15,11 @@ export default function () {
|
|||||||
return new Command("dev")
|
return new Command("dev")
|
||||||
.description("Run development server")
|
.description("Run development server")
|
||||||
.action(async () => {
|
.action(async () => {
|
||||||
|
try {
|
||||||
|
rmSync(SSR_BUNDLER_CTX_MAP_JSON, { recursive: true });
|
||||||
|
rmSync(BUNDLER_CTX_MAP_JSON, { recursive: true });
|
||||||
|
} catch (error) {}
|
||||||
|
|
||||||
await dev();
|
await dev();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +1,36 @@
|
|||||||
|
import { readFileSync } from "fs";
|
||||||
import bunextInit from "../../functions/bunext-init";
|
import bunextInit from "../../functions/bunext-init";
|
||||||
import startServer from "../../functions/server/start-server";
|
import startServer from "../../functions/server/start-server";
|
||||||
|
import grabDirNames from "../../utils/grab-dir-names";
|
||||||
import { log } from "../../utils/log";
|
import { log } from "../../utils/log";
|
||||||
|
import type { BundlerCTXMap } from "../../types";
|
||||||
|
|
||||||
|
const { BUNDLER_CTX_MAP_JSON, SSR_BUNDLER_CTX_MAP_JSON } = grabDirNames();
|
||||||
|
|
||||||
log.info("Starting production server ...");
|
log.info("Starting production server ...");
|
||||||
|
|
||||||
|
try {
|
||||||
|
const bundler_ctx_json = JSON.parse(
|
||||||
|
readFileSync(BUNDLER_CTX_MAP_JSON, "utf-8"),
|
||||||
|
) as { [k: string]: BundlerCTXMap } | undefined;
|
||||||
|
|
||||||
|
if (bundler_ctx_json) {
|
||||||
|
global.BUNEXT_BUNDLER_CTX_MAP = bundler_ctx_json;
|
||||||
|
}
|
||||||
|
} catch (error: any) {
|
||||||
|
// log.error(`Couldn't set global bundler CTX map: ${error.message}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
const ssr_bundler_ctx_json = JSON.parse(
|
||||||
|
readFileSync(SSR_BUNDLER_CTX_MAP_JSON, "utf-8"),
|
||||||
|
) as { [k: string]: BundlerCTXMap } | undefined;
|
||||||
|
|
||||||
|
if (ssr_bundler_ctx_json) {
|
||||||
|
global.BUNEXT_SSR_BUNDLER_CTX_MAP = ssr_bundler_ctx_json;
|
||||||
|
}
|
||||||
|
} catch (error) {}
|
||||||
|
|
||||||
await bunextInit();
|
await bunextInit();
|
||||||
|
|
||||||
await startServer();
|
await startServer();
|
||||||
|
|||||||
@@ -6,12 +6,17 @@ import buildOnstartErrorHandler from "../build-on-start-error-handler";
|
|||||||
import _ from "lodash";
|
import _ from "lodash";
|
||||||
import pagesSSRBundler from "../pages-ssr-bundler";
|
import pagesSSRBundler from "../pages-ssr-bundler";
|
||||||
import grabDirNames from "../../../utils/grab-dir-names";
|
import grabDirNames from "../../../utils/grab-dir-names";
|
||||||
import { cpSync, existsSync, mkdirSync, rmSync } from "fs";
|
import { cpSync, existsSync, mkdirSync, rmSync, writeFileSync } from "fs";
|
||||||
import fullRebuild from "../../server/full-rebuild";
|
import fullRebuild from "../../server/full-rebuild";
|
||||||
import path from "path";
|
import path from "path";
|
||||||
import cleanupLogsDirs from "../../cleanup-logs-dir";
|
import cleanupLogsDirs from "../../cleanup-logs-dir";
|
||||||
|
|
||||||
const { BUNX_BUNDLER_ERROR_EXIT_FILE, BUNX_ERROR_LOGS_DIR } = grabDirNames();
|
const {
|
||||||
|
BUNX_BUNDLER_ERROR_EXIT_FILE,
|
||||||
|
BUNX_ERROR_LOGS_DIR,
|
||||||
|
BUNDLER_CTX_MAP_JSON,
|
||||||
|
SSR_BUNDLER_CTX_MAP_JSON,
|
||||||
|
} = grabDirNames();
|
||||||
|
|
||||||
let build_start = 0;
|
let build_start = 0;
|
||||||
const MAX_BUILD_STARTS = 2;
|
const MAX_BUILD_STARTS = 2;
|
||||||
|
|||||||
@@ -63,9 +63,16 @@ type Params = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export default async function bunextInit(params?: Params) {
|
export default async function bunextInit(params?: Params) {
|
||||||
|
const are_modules_aready_built =
|
||||||
|
global.BUNEXT_BUNDLER_CTX_MAP && global.BUNEXT_SSR_BUNDLER_CTX_MAP;
|
||||||
|
|
||||||
global.BUNEXT_HMR_CONTROLLERS = [];
|
global.BUNEXT_HMR_CONTROLLERS = [];
|
||||||
|
if (!global.BUNEXT_BUNDLER_CTX_MAP) {
|
||||||
global.BUNEXT_BUNDLER_CTX_MAP = {};
|
global.BUNEXT_BUNDLER_CTX_MAP = {};
|
||||||
|
}
|
||||||
|
if (!global.BUNEXT_SSR_BUNDLER_CTX_MAP) {
|
||||||
global.BUNEXT_SSR_BUNDLER_CTX_MAP = {};
|
global.BUNEXT_SSR_BUNDLER_CTX_MAP = {};
|
||||||
|
}
|
||||||
// global.BUNEXT_API_ROUTES_BUNDLER_CTX_MAP = {};
|
// global.BUNEXT_API_ROUTES_BUNDLER_CTX_MAP = {};
|
||||||
global.BUNEXT_BUNDLER_REBUILDS = 0;
|
global.BUNEXT_BUNDLER_REBUILDS = 0;
|
||||||
global.BUNEXT_REBUILD_RETRIES = 0;
|
global.BUNEXT_REBUILD_RETRIES = 0;
|
||||||
@@ -94,7 +101,7 @@ export default async function bunextInit(params?: Params) {
|
|||||||
|
|
||||||
if (params?.build_only) {
|
if (params?.build_only) {
|
||||||
log.build(`Building Modules ...`);
|
log.build(`Building Modules ...`);
|
||||||
await allPagesESBuildContextBundler();
|
await allPagesESBuildContextBundler({ build_only: params.build_only });
|
||||||
} else if (is_dev) {
|
} else if (is_dev) {
|
||||||
log.build(`Building Modules ...`);
|
log.build(`Building Modules ...`);
|
||||||
await allPagesESBuildContextBundler({
|
await allPagesESBuildContextBundler({
|
||||||
@@ -103,16 +110,14 @@ export default async function bunextInit(params?: Params) {
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
watcherEsbuildCTX();
|
watcherEsbuildCTX();
|
||||||
|
} else {
|
||||||
|
if (are_modules_aready_built) {
|
||||||
|
log.success(`All modules already built.`);
|
||||||
} else {
|
} else {
|
||||||
log.build(`Building Modules ...`);
|
log.build(`Building Modules ...`);
|
||||||
await allPagesESBuildContextBundler({ start: true });
|
await allPagesESBuildContextBundler({ start: true });
|
||||||
|
}
|
||||||
|
|
||||||
cron();
|
cron();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// process.on("exit", (code) => {
|
|
||||||
// Bun.spawn([process.execPath, ...process.argv.slice(1)], {
|
|
||||||
// stdio: ["inherit", "inherit", "inherit"],
|
|
||||||
// env: process.env,
|
|
||||||
// });
|
|
||||||
// });
|
|
||||||
|
|||||||
@@ -14,11 +14,6 @@ export default async function () {
|
|||||||
force: true,
|
force: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
rmSync(dirNames.BUNX_CWD_MODULE_CACHE_DIR, {
|
|
||||||
recursive: true,
|
|
||||||
force: true,
|
|
||||||
});
|
|
||||||
|
|
||||||
if (
|
if (
|
||||||
dirNames.ROOT_DIR.startsWith(dirNames.BUNX_ROOT_DIR) &&
|
dirNames.ROOT_DIR.startsWith(dirNames.BUNX_ROOT_DIR) &&
|
||||||
!dirNames.ROOT_DIR.includes(`${dirNames.BUNX_ROOT_DIR}/test/`)
|
!dirNames.ROOT_DIR.includes(`${dirNames.BUNX_ROOT_DIR}/test/`)
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ export type DirNames = {
|
|||||||
BUNX_BUNDLER_ERROR_EXIT_FILE: string;
|
BUNX_BUNDLER_ERROR_EXIT_FILE: string;
|
||||||
BUNX_ERROR_LOGS_DIR: string;
|
BUNX_ERROR_LOGS_DIR: string;
|
||||||
BUNX_LOGS_DIR: string;
|
BUNX_LOGS_DIR: string;
|
||||||
|
BUNDLER_CTX_MAP_JSON: string;
|
||||||
|
SSR_BUNDLER_CTX_MAP_JSON: string;
|
||||||
};
|
};
|
||||||
|
|
||||||
export default function grabDirNames(): DirNames {
|
export default function grabDirNames(): DirNames {
|
||||||
@@ -84,6 +86,15 @@ export default function grabDirNames(): DirNames {
|
|||||||
`${BUNX_ROOT_404_FILE_NAME}.tsx`,
|
`${BUNX_ROOT_404_FILE_NAME}.tsx`,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
const BUNDLER_CTX_MAP_JSON = path.join(
|
||||||
|
BUNX_CWD_DIR,
|
||||||
|
"bundler-ctx-map.json",
|
||||||
|
);
|
||||||
|
const SSR_BUNDLER_CTX_MAP_JSON = path.join(
|
||||||
|
BUNX_CWD_DIR,
|
||||||
|
"ssr-bundler-ctx-map.json",
|
||||||
|
);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
ROOT_DIR,
|
ROOT_DIR,
|
||||||
SRC_DIR,
|
SRC_DIR,
|
||||||
@@ -112,6 +123,8 @@ export default function grabDirNames(): DirNames {
|
|||||||
BUNX_BUNDLER_ERROR_EXIT_FILE,
|
BUNX_BUNDLER_ERROR_EXIT_FILE,
|
||||||
BUNX_ERROR_LOGS_DIR,
|
BUNX_ERROR_LOGS_DIR,
|
||||||
BUNX_LOGS_DIR,
|
BUNX_LOGS_DIR,
|
||||||
|
BUNDLER_CTX_MAP_JSON,
|
||||||
|
SSR_BUNDLER_CTX_MAP_JSON,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user