@rsbuild/core 0.2.2 → 0.2.3

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.
@@ -84,7 +84,7 @@ async function init({
84
84
  }
85
85
  }
86
86
  function runCli() {
87
- import_commander.program.name("rsbuild").usage("<command> [options]").version("0.2.2");
87
+ import_commander.program.name("rsbuild").usage("<command> [options]").version("0.2.3");
88
88
  import_commander.program.command("dev").option("--open", "open the page in browser on startup").option(
89
89
  "--port <port>",
90
90
  "specify a port number for Rsbuild Server to listen"
@@ -34,7 +34,7 @@ function prepareCli() {
34
34
  if (!npm_execpath || npm_execpath.includes("npx-cli.js")) {
35
35
  console.log();
36
36
  }
37
- import_rslog.logger.greet(` ${`Rsbuild v${"0.2.2"}`}
37
+ import_rslog.logger.greet(` ${`Rsbuild v${"0.2.3"}`}
38
38
  `);
39
39
  }
40
40
  // Annotate the CommonJS export names for ESM import in node:
package/dist/loadEnv.js CHANGED
@@ -39,6 +39,7 @@ const getEnvFiles = () => {
39
39
  const { NODE_ENV } = process.env;
40
40
  return [".env", ".env.local", `.env.${NODE_ENV}`, `.env.${NODE_ENV}.local`];
41
41
  };
42
+ let lastParsed;
42
43
  async function loadEnv({
43
44
  cwd = process.cwd(),
44
45
  prefixes = ["PUBLIC_"]
@@ -50,6 +51,13 @@ async function loadEnv({
50
51
  envPaths.forEach((envPath) => {
51
52
  Object.assign(parsed, parse(import_fs.default.readFileSync(envPath)));
52
53
  });
54
+ if (lastParsed) {
55
+ Object.keys(lastParsed).forEach((key) => {
56
+ if (process.env[key] === lastParsed[key]) {
57
+ delete process.env[key];
58
+ }
59
+ });
60
+ }
53
61
  expand({ parsed });
54
62
  const publicVars = {};
55
63
  Object.keys(process.env).forEach((key) => {
@@ -58,6 +66,7 @@ async function loadEnv({
58
66
  publicVars[`process.env.${key}`] = JSON.stringify(val);
59
67
  }
60
68
  });
69
+ lastParsed = parsed;
61
70
  return {
62
71
  parsed,
63
72
  publicVars
@@ -59,7 +59,7 @@ function createContextByConfig(options, bundlerType, config = {}) {
59
59
  const context = {
60
60
  entry: config.source?.entry || getDefaultEntry(rootPath),
61
61
  targets: config.output?.targets || [],
62
- version: "0.2.2",
62
+ version: "0.2.3",
63
63
  rootPath,
64
64
  distPath,
65
65
  cachePath,
@@ -8,7 +8,12 @@ type Options = {
8
8
  dev: RsbuildDevMiddlewareOptions['dev'];
9
9
  devMiddleware?: CustomDevMiddleware;
10
10
  };
11
- export default class DevMiddleware {
11
+ /**
12
+ * Setup compiler-related logic:
13
+ * 1. setup webpack-dev-middleware
14
+ * 2. establish webSocket connect
15
+ */
16
+ export declare class CompilerDevMiddleware {
12
17
  middleware?: DevMiddlewareAPI;
13
18
  private devOptions;
14
19
  private devMiddleware?;
@@ -26,12 +26,12 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var compiler_dev_middleware_exports = {};
30
- __export(compiler_dev_middleware_exports, {
31
- default: () => DevMiddleware
29
+ var compilerDevMiddleware_exports = {};
30
+ __export(compilerDevMiddleware_exports, {
31
+ CompilerDevMiddleware: () => CompilerDevMiddleware
32
32
  });
33
- module.exports = __toCommonJS(compiler_dev_middleware_exports);
34
- var import_socketServer = __toESM(require("./socketServer"));
33
+ module.exports = __toCommonJS(compilerDevMiddleware_exports);
34
+ var import_socketServer = require("./socketServer");
35
35
  const noop = () => {
36
36
  };
37
37
  function getHMRClientPath(client) {
@@ -42,11 +42,11 @@ function getHMRClientPath(client) {
42
42
  const clientEntry = `${require.resolve("@rsbuild/core/client/hmr")}?${host}${path}${port}${protocol}`;
43
43
  return clientEntry;
44
44
  }
45
- class DevMiddleware {
45
+ class CompilerDevMiddleware {
46
46
  constructor({ dev, devMiddleware, publicPaths }) {
47
47
  this.devOptions = dev;
48
48
  this.publicPaths = publicPaths;
49
- this.socketServer = new import_socketServer.default(dev);
49
+ this.socketServer = new import_socketServer.SocketServer(dev);
50
50
  this.devMiddleware = devMiddleware;
51
51
  }
52
52
  init() {
@@ -89,7 +89,7 @@ class DevMiddleware {
89
89
  writeToDisk: devOptions.writeToDisk
90
90
  });
91
91
  const warp = async (req, res, next) => {
92
- const url = req.url;
92
+ const { url } = req;
93
93
  const assetPrefix = url && publicPaths.find((prefix) => url.startsWith(prefix));
94
94
  if (assetPrefix && assetPrefix !== "/") {
95
95
  req.url = url.slice(assetPrefix.length - 1);
@@ -105,3 +105,7 @@ class DevMiddleware {
105
105
  return warp;
106
106
  }
107
107
  }
108
+ // Annotate the CommonJS export names for ESM import in node:
109
+ 0 && (module.exports = {
110
+ CompilerDevMiddleware
111
+ });
@@ -36,7 +36,7 @@ var import_shared = require("@rsbuild/shared");
36
36
  var import_connect = __toESM(require("@rsbuild/shared/connect"));
37
37
  var import_restart = require("./restart");
38
38
  var import_httpServer = require("./httpServer");
39
- var import_devMiddlewares = require("./devMiddlewares");
39
+ var import_getDevMiddlewares = require("./getDevMiddlewares");
40
40
  var import_middlewares = require("./middlewares");
41
41
  async function getServerAPIs(options, createDevMiddleware, {
42
42
  compiler: customCompiler,
@@ -76,7 +76,7 @@ async function getServerAPIs(options, createDevMiddleware, {
76
76
  routes: params.routes || defaultRoutes
77
77
  });
78
78
  },
79
- getMiddlewares: async (overrides = {}) => await (0, import_devMiddlewares.getMiddlewares)({
79
+ getMiddlewares: async (overrides = {}) => await (0, import_getDevMiddlewares.getMiddlewares)({
80
80
  pwd: options.context.rootPath,
81
81
  devMiddleware,
82
82
  dev: {
@@ -1,4 +1,4 @@
1
- import { RequestHandler, RsbuildDevMiddlewareOptions, UpgradeEvent } from '@rsbuild/shared';
1
+ import type { UpgradeEvent, RequestHandler, RsbuildDevMiddlewareOptions } from '@rsbuild/shared';
2
2
  export declare const getMiddlewares: (options: RsbuildDevMiddlewareOptions) => Promise<{
3
3
  close: () => Promise<void>;
4
4
  onUpgrade: UpgradeEvent;
@@ -26,13 +26,13 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var devMiddlewares_exports = {};
30
- __export(devMiddlewares_exports, {
29
+ var getDevMiddlewares_exports = {};
30
+ __export(getDevMiddlewares_exports, {
31
31
  getMiddlewares: () => getMiddlewares
32
32
  });
33
- module.exports = __toCommonJS(devMiddlewares_exports);
33
+ module.exports = __toCommonJS(getDevMiddlewares_exports);
34
34
  var import_url = __toESM(require("url"));
35
- var import_compiler_dev_middleware = __toESM(require("./compiler-dev-middleware"));
35
+ var import_compilerDevMiddleware = require("./compilerDevMiddleware");
36
36
  var import_middlewares = require("./middlewares");
37
37
  var import_path = require("path");
38
38
  const applySetupMiddlewares = (dev, devMiddleware) => {
@@ -132,7 +132,7 @@ const applyDefaultMiddlewares = async ({
132
132
  };
133
133
  const getMiddlewares = async (options) => {
134
134
  const middlewares = [];
135
- const devMiddleware = new import_compiler_dev_middleware.default({
135
+ const devMiddleware = new import_compilerDevMiddleware.CompilerDevMiddleware({
136
136
  dev: options.dev,
137
137
  publicPaths: options.output.publicPaths,
138
138
  devMiddleware: options.devMiddleware
@@ -32,15 +32,12 @@ __export(httpServer_exports, {
32
32
  });
33
33
  module.exports = __toCommonJS(httpServer_exports);
34
34
  const createHttpServer = async (options) => {
35
- let app;
36
35
  if (options.https) {
37
- const { createServer } = await Promise.resolve().then(() => __toESM(require("https")));
38
- app = createServer(options.https, options.middlewares);
39
- } else {
40
- const { createServer } = await Promise.resolve().then(() => __toESM(require("http")));
41
- app = createServer(options.middlewares);
36
+ const { createServer: createServer2 } = await Promise.resolve().then(() => __toESM(require("https")));
37
+ return createServer2(options.https, options.middlewares);
42
38
  }
43
- return app;
39
+ const { createServer } = await Promise.resolve().then(() => __toESM(require("http")));
40
+ return createServer(options.middlewares);
44
41
  };
45
42
  // Annotate the CommonJS export names for ESM import in node:
46
43
  0 && (module.exports = {
@@ -2,9 +2,9 @@
2
2
  /// <reference types="node" />
3
3
  import type { IncomingMessage } from 'http';
4
4
  import type { Socket } from 'net';
5
- import ws from '../../../compiled/ws';
5
+ import ws from '../../compiled/ws';
6
6
  import { type Stats, type RsbuildDevMiddlewareOptions } from '@rsbuild/shared';
7
- export default class SocketServer {
7
+ export declare class SocketServer {
8
8
  private wsServer;
9
9
  private readonly sockets;
10
10
  private readonly options;
@@ -28,10 +28,10 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
29
  var socketServer_exports = {};
30
30
  __export(socketServer_exports, {
31
- default: () => SocketServer
31
+ SocketServer: () => SocketServer
32
32
  });
33
33
  module.exports = __toCommonJS(socketServer_exports);
34
- var import_ws = __toESM(require("../../../compiled/ws"));
34
+ var import_ws = __toESM(require("../../compiled/ws"));
35
35
  var import_shared = require("@rsbuild/shared");
36
36
  class SocketServer {
37
37
  constructor(options) {
@@ -146,11 +146,11 @@ class SocketServer {
146
146
  this.sockWrite("hash", stats.hash);
147
147
  if (stats.errors && stats.errors.length > 0) {
148
148
  return this.sockWrite("errors", stats.errors);
149
- } else if (stats.warnings && stats.warnings.length > 0) {
149
+ }
150
+ if (stats.warnings && stats.warnings.length > 0) {
150
151
  return this.sockWrite("warnings", stats.warnings);
151
- } else {
152
- return this.sockWrite("ok");
153
152
  }
153
+ return this.sockWrite("ok");
154
154
  }
155
155
  // send message to connecting socket
156
156
  send(connection, message) {
@@ -160,3 +160,7 @@ class SocketServer {
160
160
  connection.send(message);
161
161
  }
162
162
  }
163
+ // Annotate the CommonJS export names for ESM import in node:
164
+ 0 && (module.exports = {
165
+ SocketServer
166
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rsbuild/core",
3
- "version": "0.2.2",
3
+ "version": "0.2.3",
4
4
  "description": "Unleash the power of Rspack with the out-of-the-box build tool.",
5
5
  "homepage": "https://rsbuild.dev",
6
6
  "bugs": {
@@ -56,11 +56,11 @@
56
56
  "types.d.ts"
57
57
  ],
58
58
  "dependencies": {
59
- "@rspack/core": "0.4.2",
59
+ "@rspack/core": "0.4.3",
60
60
  "core-js": "~3.32.2",
61
61
  "html-webpack-plugin": "npm:html-rspack-plugin@5.5.7",
62
62
  "postcss": "8.4.31",
63
- "@rsbuild/shared": "0.2.2"
63
+ "@rsbuild/shared": "0.2.3"
64
64
  },
65
65
  "devDependencies": {
66
66
  "@types/node": "16.x",