@docusaurus/bundler 3.7.0-canary-6308 → 3.7.0-canary-6310

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.
@@ -29,5 +29,8 @@ export declare function getCopyPlugin({ currentBundler, }: {
29
29
  export declare function getProgressBarPlugin({ currentBundler, }: {
30
30
  currentBundler: CurrentBundler;
31
31
  }): Promise<typeof WebpackBar>;
32
+ export declare function registerBundlerTracing({ currentBundler, }: {
33
+ currentBundler: CurrentBundler;
34
+ }): Promise<() => Promise<void>>;
32
35
  export {};
33
36
  //# sourceMappingURL=currentBundler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"currentBundler.d.ts","sourceRoot":"","sources":["../src/currentBundler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,oBAAoB,MAAM,yBAAyB,CAAC;AAC3D,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AAEpD,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAC,cAAc,EAAE,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAGxE,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE;QACN,mBAAmB,EAAE,IAAI,CACvB,gBAAgB,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,EACjD,eAAe,CAChB,CAAC;KACH,CAAC;CACH,CAAC;AAMF,wBAAsB,iBAAiB,CAAC,EACtC,UAAU,GACX,EAAE;IACD,UAAU,EAAE,eAAe,CAAC;CAC7B,GAAG,OAAO,CAAC,cAAc,CAAC,CAW1B;AAED,wBAAgB,yBAAyB,CAAC,EACxC,cAAc,GACf,EAAE;IACD,cAAc,EAAE,cAAc,CAAC;CAChC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAOzB;AAED,wBAAsB,mBAAmB,CAAC,EACxC,cAAc,GACf,EAAE;IACD,cAAc,EAAE,cAAc,CAAC;CAChC,GAAG,OAAO,CAAC,OAAO,oBAAoB,CAAC,CAMvC;AAED,wBAAsB,aAAa,CAAC,EAClC,cAAc,GACf,EAAE;IACD,cAAc,EAAE,cAAc,CAAC;CAChC,GAAG,OAAO,CAAC,OAAO,iBAAiB,CAAC,CAMpC;AAED,wBAAsB,oBAAoB,CAAC,EACzC,cAAc,GACf,EAAE;IACD,cAAc,EAAE,cAAc,CAAC;CAChC,GAAG,OAAO,CAAC,OAAO,UAAU,CAAC,CAkB7B"}
1
+ {"version":3,"file":"currentBundler.d.ts","sourceRoot":"","sources":["../src/currentBundler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,oBAAoB,MAAM,yBAAyB,CAAC;AAC3D,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AAEpD,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAC,cAAc,EAAE,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAGxE,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE;QACN,mBAAmB,EAAE,IAAI,CACvB,gBAAgB,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,EACjD,eAAe,CAChB,CAAC;KACH,CAAC;CACH,CAAC;AAMF,wBAAsB,iBAAiB,CAAC,EACtC,UAAU,GACX,EAAE;IACD,UAAU,EAAE,eAAe,CAAC;CAC7B,GAAG,OAAO,CAAC,cAAc,CAAC,CAW1B;AAED,wBAAgB,yBAAyB,CAAC,EACxC,cAAc,GACf,EAAE;IACD,cAAc,EAAE,cAAc,CAAC;CAChC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAOzB;AAED,wBAAsB,mBAAmB,CAAC,EACxC,cAAc,GACf,EAAE;IACD,cAAc,EAAE,cAAc,CAAC;CAChC,GAAG,OAAO,CAAC,OAAO,oBAAoB,CAAC,CAMvC;AAED,wBAAsB,aAAa,CAAC,EAClC,cAAc,GACf,EAAE;IACD,cAAc,EAAE,cAAc,CAAC;CAChC,GAAG,OAAO,CAAC,OAAO,iBAAiB,CAAC,CAMpC;AAED,wBAAsB,oBAAoB,CAAC,EACzC,cAAc,GACf,EAAE;IACD,cAAc,EAAE,cAAc,CAAC;CAChC,GAAG,OAAO,CAAC,OAAO,UAAU,CAAC,CAkB7B;AAED,wBAAsB,sBAAsB,CAAC,EAC3C,cAAc,GACf,EAAE;IACD,cAAc,EAAE,cAAc,CAAC;CAChC,GAAG,OAAO,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAqC/B"}
@@ -11,6 +11,7 @@ exports.getCurrentBundlerAsRspack = getCurrentBundlerAsRspack;
11
11
  exports.getCSSExtractPlugin = getCSSExtractPlugin;
12
12
  exports.getCopyPlugin = getCopyPlugin;
13
13
  exports.getProgressBarPlugin = getProgressBarPlugin;
14
+ exports.registerBundlerTracing = registerBundlerTracing;
14
15
  const tslib_1 = require("tslib");
15
16
  const webpack_1 = tslib_1.__importDefault(require("webpack"));
16
17
  const webpackbar_1 = tslib_1.__importDefault(require("webpackbar"));
@@ -70,4 +71,32 @@ async function getProgressBarPlugin({ currentBundler, }) {
70
71
  }
71
72
  return webpackbar_1.default;
72
73
  }
74
+ async function registerBundlerTracing({ currentBundler, }) {
75
+ if (currentBundler.name === 'rspack') {
76
+ const Rspack = await (0, importFaster_1.importRspack)();
77
+ // See https://rspack.dev/contribute/development/profiling
78
+ // File can be opened with https://ui.perfetto.dev/
79
+ if (process.env.DOCUSAURUS_RSPACK_TRACE) {
80
+ // We use the env variable as the "filter" attribute
81
+ // See values here: https://rspack.dev/contribute/development/tracing#tracing-filter
82
+ let filter = process.env.DOCUSAURUS_RSPACK_TRACE;
83
+ if (filter === 'true' || filter === '1') {
84
+ // Default value recommended by the Rspack team
85
+ // It's also what the CLI uses for the "overview" preset:
86
+ // https://github.com/web-infra-dev/rspack/blob/v1.3.10/packages/rspack-cli/src/utils/profile.ts
87
+ filter = 'info';
88
+ }
89
+ await Rspack.experiments.globalTrace.register(filter, 'chrome', './rspack-tracing.json');
90
+ console.info(`Rspack tracing registered, filter=${filter}`);
91
+ return async () => {
92
+ await Rspack.experiments.globalTrace.cleanup();
93
+ console.log(`Rspack tracing cleaned up, filter=${filter}`);
94
+ };
95
+ }
96
+ }
97
+ // We don't support Webpack tracing at the moment
98
+ return async () => {
99
+ // noop
100
+ };
101
+ }
73
102
  //# sourceMappingURL=currentBundler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"currentBundler.js","sourceRoot":"","sources":["../src/currentBundler.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAwBH,8CAeC;AAED,8DAWC;AAED,kDAUC;AAED,sCAUC;AAED,oDAsBC;;AAlGD,8DAA8B;AAC9B,oEAAoC;AACpC,8FAA2D;AAC3D,sFAAoD;AACpD,iDAA4C;AAc5C,SAAS,QAAQ,CAAC,UAA2B;IAC3C,OAAO,UAAU,CAAC,MAAM,CAAC,mBAAmB,CAAC,aAAa,CAAC;AAC7D,CAAC;AAEM,KAAK,UAAU,iBAAiB,CAAC,EACtC,UAAU,GAGX;IACC,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACzB,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,CAAC,MAAM,IAAA,2BAAY,GAAE,CAA8B;SAC9D,CAAC;IACJ,CAAC;IACD,OAAO;QACL,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,iBAAO;KAClB,CAAC;AACJ,CAAC;AAED,SAAgB,yBAAyB,CAAC,EACxC,cAAc,GAGf;IACC,IAAI,cAAc,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CACb,gEAAgE,cAAc,CAAC,IAAI,EAAE,CACtF,CAAC;IACJ,CAAC;IACD,OAAO,cAAc,CAAC,QAA6C,CAAC;AACtE,CAAC;AAEM,KAAK,UAAU,mBAAmB,CAAC,EACxC,cAAc,GAGf;IACC,IAAI,cAAc,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACrC,+CAA+C;QAC/C,OAAO,cAAc,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACxD,CAAC;IACD,OAAO,iCAAoB,CAAC;AAC9B,CAAC;AAEM,KAAK,UAAU,aAAa,CAAC,EAClC,cAAc,GAGf;IACC,IAAI,cAAc,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACrC,+CAA+C;QAC/C,OAAO,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAClD,CAAC;IACD,OAAO,6BAAiB,CAAC;AAC3B,CAAC;AAEM,KAAK,UAAU,oBAAoB,CAAC,EACzC,cAAc,GAGf;IACC,IAAI,cAAc,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,yBAAyB,CAAC,EAAC,cAAc,EAAC,CAAC,CAAC;QAC3D,MAAM,0BAA2B,SAAQ,MAAM,CAAC,cAAc;YAC5D,YAAY,EAAC,IAAI,EAAE,KAAK,GAAG,OAAO,EAAkC;gBAClE,uEAAuE;gBACvE,yDAAyD;gBACzD,KAAK,CAAC;oBACJ,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,4BAA4B,KAAK,0CAA0C;oBACrF,aAAa,EAAE,IAAI;iBACpB,CAAC,CAAC;YACL,CAAC;SACF;QACD,OAAO,0BAA0D,CAAC;IACpE,CAAC;IAED,OAAO,oBAAU,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"currentBundler.js","sourceRoot":"","sources":["../src/currentBundler.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -5,7 +5,7 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
  export { printStatsWarnings, formatStatsErrorMessage, compile } from './compiler';
8
- export { getCurrentBundler, getCSSExtractPlugin, getCopyPlugin, getProgressBarPlugin, } from './currentBundler';
8
+ export { getCurrentBundler, getCSSExtractPlugin, getCopyPlugin, getProgressBarPlugin, registerBundlerTracing, } from './currentBundler';
9
9
  export { getMinimizers } from './minification';
10
10
  export { getHtmlMinifier, type HtmlMinifier, type HtmlMinifierType, } from './minifyHtml';
11
11
  export { createJsLoaderFactory } from './loaders/jsLoader';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,kBAAkB,EAAE,uBAAuB,EAAE,OAAO,EAAC,MAAM,YAAY,CAAC;AAEhF,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EACL,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,gBAAgB,GACtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAC,qBAAqB,EAAC,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAC,yBAAyB,EAAC,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,kBAAkB,EAAE,uBAAuB,EAAE,OAAO,EAAC,MAAM,YAAY,CAAC;AAEhF,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EACL,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,gBAAgB,GACtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAC,qBAAqB,EAAC,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAC,yBAAyB,EAAC,MAAM,uBAAuB,CAAC"}
package/lib/index.js CHANGED
@@ -6,7 +6,7 @@
6
6
  * LICENSE file in the root directory of this source tree.
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.createStyleLoadersFactory = exports.createJsLoaderFactory = exports.getHtmlMinifier = exports.getMinimizers = exports.getProgressBarPlugin = exports.getCopyPlugin = exports.getCSSExtractPlugin = exports.getCurrentBundler = exports.compile = exports.formatStatsErrorMessage = exports.printStatsWarnings = void 0;
9
+ exports.createStyleLoadersFactory = exports.createJsLoaderFactory = exports.getHtmlMinifier = exports.getMinimizers = exports.registerBundlerTracing = exports.getProgressBarPlugin = exports.getCopyPlugin = exports.getCSSExtractPlugin = exports.getCurrentBundler = exports.compile = exports.formatStatsErrorMessage = exports.printStatsWarnings = void 0;
10
10
  var compiler_1 = require("./compiler");
11
11
  Object.defineProperty(exports, "printStatsWarnings", { enumerable: true, get: function () { return compiler_1.printStatsWarnings; } });
12
12
  Object.defineProperty(exports, "formatStatsErrorMessage", { enumerable: true, get: function () { return compiler_1.formatStatsErrorMessage; } });
@@ -16,6 +16,7 @@ Object.defineProperty(exports, "getCurrentBundler", { enumerable: true, get: fun
16
16
  Object.defineProperty(exports, "getCSSExtractPlugin", { enumerable: true, get: function () { return currentBundler_1.getCSSExtractPlugin; } });
17
17
  Object.defineProperty(exports, "getCopyPlugin", { enumerable: true, get: function () { return currentBundler_1.getCopyPlugin; } });
18
18
  Object.defineProperty(exports, "getProgressBarPlugin", { enumerable: true, get: function () { return currentBundler_1.getProgressBarPlugin; } });
19
+ Object.defineProperty(exports, "registerBundlerTracing", { enumerable: true, get: function () { return currentBundler_1.registerBundlerTracing; } });
19
20
  var minification_1 = require("./minification");
20
21
  Object.defineProperty(exports, "getMinimizers", { enumerable: true, get: function () { return minification_1.getMinimizers; } });
21
22
  var minifyHtml_1 = require("./minifyHtml");
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,uCAAgF;AAAxE,8GAAA,kBAAkB,OAAA;AAAE,mHAAA,uBAAuB,OAAA;AAAE,mGAAA,OAAO,OAAA;AAE5D,mDAK0B;AAJxB,mHAAA,iBAAiB,OAAA;AACjB,qHAAA,mBAAmB,OAAA;AACnB,+GAAA,aAAa,OAAA;AACb,sHAAA,oBAAoB,OAAA;AAGtB,+CAA6C;AAArC,6GAAA,aAAa,OAAA;AACrB,2CAIsB;AAHpB,6GAAA,eAAe,OAAA;AAIjB,+CAAyD;AAAjD,iHAAA,qBAAqB,OAAA;AAC7B,qDAAgE;AAAxD,wHAAA,yBAAyB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,uCAAgF;AAAxE,8GAAA,kBAAkB,OAAA;AAAE,mHAAA,uBAAuB,OAAA;AAAE,mGAAA,OAAO,OAAA;AAE5D,mDAM0B;AALxB,mHAAA,iBAAiB,OAAA;AACjB,qHAAA,mBAAmB,OAAA;AACnB,+GAAA,aAAa,OAAA;AACb,sHAAA,oBAAoB,OAAA;AACpB,wHAAA,sBAAsB,OAAA;AAGxB,+CAA6C;AAArC,6GAAA,aAAa,OAAA;AACrB,2CAIsB;AAHpB,6GAAA,eAAe,OAAA;AAIjB,+CAAyD;AAAjD,iHAAA,qBAAqB,OAAA;AAC7B,qDAAgE;AAAxD,wHAAA,yBAAyB,OAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@docusaurus/bundler",
3
- "version": "3.7.0-canary-6308",
3
+ "version": "3.7.0-canary-6310",
4
4
  "description": "Docusaurus util package to abstract the current bundler.",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -19,11 +19,11 @@
19
19
  "license": "MIT",
20
20
  "dependencies": {
21
21
  "@babel/core": "^7.25.9",
22
- "@docusaurus/babel": "3.7.0-canary-6308",
23
- "@docusaurus/cssnano-preset": "3.7.0-canary-6308",
24
- "@docusaurus/logger": "3.7.0-canary-6308",
25
- "@docusaurus/types": "3.7.0-canary-6308",
26
- "@docusaurus/utils": "3.7.0-canary-6308",
22
+ "@docusaurus/babel": "3.7.0-canary-6310",
23
+ "@docusaurus/cssnano-preset": "3.7.0-canary-6310",
24
+ "@docusaurus/logger": "3.7.0-canary-6310",
25
+ "@docusaurus/types": "3.7.0-canary-6310",
26
+ "@docusaurus/utils": "3.7.0-canary-6310",
27
27
  "babel-loader": "^9.2.1",
28
28
  "clean-css": "^5.3.2",
29
29
  "copy-webpack-plugin": "^11.0.0",
@@ -57,5 +57,5 @@
57
57
  "engines": {
58
58
  "node": ">=18.0"
59
59
  },
60
- "gitHead": "a2509949af8477ab62cebbf8a53388c84a8e4fd4"
60
+ "gitHead": "f3e4c67c0f1d7f02ff1c16e942bf3b7819f55e02"
61
61
  }
@@ -104,3 +104,46 @@ export async function getProgressBarPlugin({
104
104
 
105
105
  return WebpackBar;
106
106
  }
107
+
108
+ export async function registerBundlerTracing({
109
+ currentBundler,
110
+ }: {
111
+ currentBundler: CurrentBundler;
112
+ }): Promise<() => Promise<void>> {
113
+ if (currentBundler.name === 'rspack') {
114
+ const Rspack = await importRspack();
115
+
116
+ // See https://rspack.dev/contribute/development/profiling
117
+ // File can be opened with https://ui.perfetto.dev/
118
+ if (process.env.DOCUSAURUS_RSPACK_TRACE) {
119
+ // We use the env variable as the "filter" attribute
120
+ // See values here: https://rspack.dev/contribute/development/tracing#tracing-filter
121
+ let filter = process.env.DOCUSAURUS_RSPACK_TRACE;
122
+
123
+ if (filter === 'true' || filter === '1') {
124
+ // Default value recommended by the Rspack team
125
+ // It's also what the CLI uses for the "overview" preset:
126
+ // https://github.com/web-infra-dev/rspack/blob/v1.3.10/packages/rspack-cli/src/utils/profile.ts
127
+ filter = 'info';
128
+ }
129
+
130
+ await Rspack.experiments.globalTrace.register(
131
+ filter,
132
+ 'chrome',
133
+ './rspack-tracing.json',
134
+ );
135
+
136
+ console.info(`Rspack tracing registered, filter=${filter}`);
137
+
138
+ return async () => {
139
+ await Rspack.experiments.globalTrace.cleanup();
140
+ console.log(`Rspack tracing cleaned up, filter=${filter}`);
141
+ };
142
+ }
143
+ }
144
+
145
+ // We don't support Webpack tracing at the moment
146
+ return async () => {
147
+ // noop
148
+ };
149
+ }
package/src/index.ts CHANGED
@@ -12,6 +12,7 @@ export {
12
12
  getCSSExtractPlugin,
13
13
  getCopyPlugin,
14
14
  getProgressBarPlugin,
15
+ registerBundlerTracing,
15
16
  } from './currentBundler';
16
17
 
17
18
  export {getMinimizers} from './minification';