Update build step

This commit is contained in:
2026-07-01 19:18:11 +01:00
parent 61a9d8d612
commit 817beacc7a
20 changed files with 139 additions and 62 deletions
+3 -11
View File
@@ -1,9 +1,8 @@
import { Command } from "commander";
import { log } from "../../utils/log";
import init from "../../functions/init";
import grabDirNames from "../../utils/grab-dir-names";
import { rmSync } from "fs";
import allPagesESBuildContextBundler from "../../functions/bundler/all-pages-esbuild-context-bundler";
import bunextInit from "../../functions/bunext-init";
const { HYDRATION_DST_DIR, BUNX_CWD_PAGES_REWRITE_DIR } = grabDirNames();
@@ -18,16 +17,9 @@ export default function () {
global.SKIPPED_BROWSER_MODULES = new Set<string>();
// await rewritePagesModule();
await init();
await bunextInit({ build_only: true });
log.banner();
log.build("Building Project ...");
// await allPagesBunBundler();
// await allPagesBundler();
await allPagesESBuildContextBundler();
log.success("Modules Built Successfully!");
process.exit();
});
+20 -7
View File
@@ -44,16 +44,29 @@ async function dev() {
},
};
let dev_process = Bun.spawn(spawn_options);
let dev_process;
try {
dev_process = Bun.spawn(spawn_options);
} catch (error) {
console.error(`Failed to start dev process:`, error);
retries++;
timeout = setTimeout(() => {
retries = 0;
}, 10000);
return await dev();
}
retries++;
const exited = await dev_process.exited;
if (exited) {
retries++;
timeout = setTimeout(() => {
retries = 0;
}, 10000);
return await dev();
}
timeout = setTimeout(() => {
retries = 0;
}, 10000);
const exited = await dev_process.exited;
if (exited) {
return await dev();
}
}
+19 -7
View File
@@ -45,17 +45,29 @@ async function start() {
},
};
let dev_process = Bun.spawn(spawn_options);
retries++;
timeout = setTimeout(() => {
retries = 0;
}, 10000);
let dev_process;
try {
dev_process = Bun.spawn(spawn_options);
} catch (error) {
console.error(`Failed to start production process:`, error);
retries++;
timeout = setTimeout(() => {
retries = 0;
}, 10000);
return await start();
}
const exited = await dev_process.exited;
if (exited) {
retries++;
timeout = setTimeout(() => {
retries = 0;
}, 10000);
return await start();
}
timeout = setTimeout(() => {
retries = 0;
}, 10000);
}
@@ -20,6 +20,7 @@ type Params = {
post_build_fn?: (params: {
artifacts: BundlerCTXMap[];
}) => Promise<void> | void;
build_only?: boolean;
};
export default async function allPagesESBuildContextBundler(params?: Params) {
@@ -82,6 +83,7 @@ export default async function allPagesESBuildContextBundler(params?: Params) {
esbuildCTXArtifactTracker({
entryToPage,
post_build_fn: params?.post_build_fn,
build_only: params?.build_only,
}),
],
jsx: "automatic",
@@ -24,11 +24,13 @@ type Params = {
}
>;
post_build_fn?: (params: { artifacts: any[] }) => Promise<void> | void;
build_only?: boolean;
};
export default function esbuildCTXArtifactTracker({
entryToPage,
post_build_fn,
build_only,
}: Params) {
const artifactTracker: Plugin = {
name: "artifact-tracker",
@@ -49,7 +51,7 @@ export default function esbuildCTXArtifactTracker({
}
});
build.onEnd((result) => {
build.onEnd(async (result) => {
if (result.errors.length > 0) {
global.RECOMPILING = false;
global.IS_SERVER_COMPONENT = false;
@@ -112,7 +114,13 @@ export default function esbuildCTXArtifactTracker({
BUNX_BUNDLER_ERROR_EXIT_FILE,
);
if (does_error_file_exist) {
if (build_only) {
try {
await pagesSSRBundler();
} catch (error) {
log.error(`SSR Bundler Error: ${error}`);
}
} else if (does_error_file_exist) {
mkdirSync(BUNX_ERROR_LOGS_DIR, { recursive: true });
cpSync(
BUNX_BUNDLER_ERROR_EXIT_FILE,
@@ -120,7 +128,7 @@ export default function esbuildCTXArtifactTracker({
);
rmSync(BUNX_BUNDLER_ERROR_EXIT_FILE, { force: true });
cleanupLogsDirs();
fullRebuild();
await fullRebuild();
} else {
try {
pagesSSRBundler();
+9 -2
View File
@@ -58,7 +58,11 @@ declare global {
const dirNames = grabDirNames();
const { PAGES_DIR } = dirNames;
export default async function bunextInit() {
type Params = {
build_only?: boolean;
};
export default async function bunextInit(params?: Params) {
global.HMR_CONTROLLERS = [];
global.BUNDLER_CTX_MAP = {};
global.SSR_BUNDLER_CTX_MAP = {};
@@ -88,7 +92,10 @@ export default async function bunextInit() {
const is_dev = isDevelopment();
if (is_dev) {
if (params?.build_only) {
log.build(`Building Modules ...`);
await allPagesESBuildContextBundler();
} else if (is_dev) {
log.build(`Building Modules ...`);
await allPagesESBuildContextBundler({
post_build_fn: () => {
+1 -1
View File
@@ -25,7 +25,7 @@ export default async function fullRebuild(params?: { msg?: string }) {
// await pagesSSRBundler();
allPagesESBuildContextBundler({
await allPagesESBuildContextBundler({
post_build_fn: () => {
serverPostBuildFn();
},
@@ -29,6 +29,7 @@ export default async function watcherEsbuildCTX() {
if (global.BUNDLER_CTX_DISPOSED) {
await fullRebuild({ msg: `Restarting Bundler ...` });
return;
}
if (global.SSR_BUNDLER_CTX_DISPOSED) {