@tramvai/cli 4.18.4 → 4.19.0

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/README.md CHANGED
@@ -150,7 +150,7 @@ It is possible to get verbose output almost on every cli command where it is usi
150
150
  To do this, you should pass `--verboseWebpack` option to command. Check availability of option with help command.
151
151
 
152
152
  It will pass `{ logging: 'verbose', loggingDebug: true }` to webpack stats config.
153
- Also, it will turn on [infrastructureLogging](https://webpack.js.org/configuration/other-options/#infrastructurelogging) for webpack with options `{ level: 'verbose', debug: /webpack/ }`.
153
+ Also, it will turn on [infrastructureLogging](https://webpack.js.org/configuration/other-options/#infrastructurelogging) for webpack with options `{ level: 'verbose', debug: true }`.
154
154
 
155
155
  #### Source Maps
156
156
 
@@ -1 +1 @@
1
- {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../../../src/library/webpack/common/dev.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;wCAInC,cAAc,cAAc,CAAC,cAAc,MAAM;AAAhF,wBAwBE"}
1
+ {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../../../src/library/webpack/common/dev.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;wCA4BnC,cAAc,cAAc,CAAC,cAAc,MAAM;AAAhF,wBA2BE"}
@@ -1,15 +1,31 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
+ const stream_1 = require("stream");
4
5
  const case_sensitive_paths_webpack_plugin_1 = tslib_1.__importDefault(require("case-sensitive-paths-webpack-plugin"));
5
6
  const stats_1 = require("../constants/stats");
6
7
  const dedupe_1 = require("../blocks/dedupe");
8
+ const warningsFilter_1 = require("../utils/warningsFilter");
9
+ const filters = warningsFilter_1.ignoreWarnings.map(({ message }) => (text) => message.test(text));
10
+ const stderrWithWarningFilters = new stream_1.Writable({
11
+ write(chunk, encoding, callback) {
12
+ const chunkStr = chunk.toString();
13
+ if (filters.some((filter) => filter(chunkStr))) {
14
+ callback();
15
+ return;
16
+ }
17
+ process.stderr.write(chunk, encoding, callback);
18
+ },
19
+ });
20
+ stderrWithWarningFilters.on('error', (error) => console.error('[infrastructureLogging] stream error', error));
7
21
  exports.default = (configManager) => (config) => {
8
22
  config.plugin('case-sensitive-path').use(case_sensitive_paths_webpack_plugin_1.default);
9
23
  config.stats(Object.assign({ preset: 'errors-warnings',
10
24
  // отключает уведомление об успешной компиляции, его уже выводит webpackbar
11
25
  warningsCount: false }, (configManager.verboseWebpack ? stats_1.WEBPACK_DEBUG_STATS_OPTIONS : {})));
12
- config.set('infrastructureLogging', Object.assign({ level: 'warn' }, (configManager.verboseWebpack ? { level: 'verbose' } : {})));
26
+ config.set('infrastructureLogging', Object.assign(Object.assign({ level: 'warn' }, (configManager.verboseWebpack ? { level: 'verbose', debug: true } : {})), (configManager.verboseWebpack || configManager.debug
27
+ ? {}
28
+ : { stream: stderrWithWarningFilters })));
13
29
  config.output.pathinfo(false);
14
30
  config.module.set('unsafeCache', true);
15
31
  if (configManager.dedupe.enabledDev) {
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../src/library/webpack/common/dev.ts"],"names":[],"mappings":";;;AACA,sHAA2E;AAE3E,8CAAiE;AACjE,6CAA0C;AAE1C,kBAAe,CAAC,aAA4C,EAAE,EAAE,CAAC,CAAC,MAAc,EAAE,EAAE;IAClF,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,6CAAwB,CAAC,CAAC;IAEnE,MAAM,CAAC,KAAK,iBACV,MAAM,EAAE,iBAAiB;QACzB,2EAA2E;QAC3E,aAAa,EAAE,KAAK,IACjB,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,mCAA2B,CAAC,CAAC,CAAC,EAAE,CAAC,EACpE,CAAC;IAEH,MAAM,CAAC,GAAG,CAAC,uBAAuB,kBAChC,KAAK,EAAE,MAAM,IACV,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAC7D,CAAC;IAEH,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE9B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAEvC,IAAI,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE;QACnC,MAAM,CAAC,KAAK,CAAC,IAAA,eAAM,EAAC,aAAa,CAAC,CAAC,CAAC;KACrC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../../src/library/webpack/common/dev.ts"],"names":[],"mappings":";;;AAAA,mCAAkC;AAElC,sHAA2E;AAE3E,8CAAiE;AACjE,6CAA0C;AAC1C,4DAAyD;AAEzD,MAAM,OAAO,GAAG,+BAAc,CAAC,GAAG,CAChC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CACd,CAAC,IAAI,EAAE,EAAE,CACP,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CACvB,CAAC;AAEF,MAAM,wBAAwB,GAAG,IAAI,iBAAQ,CAAC;IAC5C,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ;QAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAElC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE;YAC9C,QAAQ,EAAE,CAAC;YACX,OAAO;SACR;QAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAClD,CAAC;CACF,CAAC,CAAC;AAEH,wBAAwB,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAC7C,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAC7D,CAAC;AAEF,kBAAe,CAAC,aAA4C,EAAE,EAAE,CAAC,CAAC,MAAc,EAAE,EAAE;IAClF,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,6CAAwB,CAAC,CAAC;IAEnE,MAAM,CAAC,KAAK,iBACV,MAAM,EAAE,iBAAiB;QACzB,2EAA2E;QAC3E,aAAa,EAAE,KAAK,IACjB,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,mCAA2B,CAAC,CAAC,CAAC,EAAE,CAAC,EACpE,CAAC;IAEH,MAAM,CAAC,GAAG,CAAC,uBAAuB,gCAChC,KAAK,EAAE,MAAM,IACV,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GACvE,CAAC,aAAa,CAAC,cAAc,IAAI,aAAa,CAAC,KAAK;QACrD,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC,EACzC,CAAC;IAEH,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE9B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAEvC,IAAI,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE;QACnC,MAAM,CAAC,KAAK,CAAC,IAAA,eAAM,EAAC,aAAa,CAAC,CAAC,CAAC;KACrC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
@@ -3,6 +3,7 @@ export declare const REQUEST_DYNAMIC: RegExp;
3
3
  export declare const MODULE_NOT_FOUND: RegExp;
4
4
  export declare const FAILED_TO_PARSE_SM: RegExp;
5
5
  export declare const ASSETS_TOO_BIG: RegExp;
6
+ export declare const SKIPPED_NOT_SERIALIZABLE_CACHE: RegExp;
6
7
  export declare const ignoreWarnings: {
7
8
  message: RegExp;
8
9
  }[];
@@ -1 +1 @@
1
- {"version":3,"file":"warningsFilter.d.ts","sourceRoot":"","sources":["../../../../src/library/webpack/utils/warningsFilter.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,kBAAkB,QACgF,CAAC;AAKhH,eAAO,MAAM,eAAe,QAAsE,CAAC;AAGnG,eAAO,MAAM,gBAAgB,QAA4C,CAAC;AAG1E,eAAO,MAAM,kBAAkB,QAA+B,CAAC;AAG/D,eAAO,MAAM,cAAc,QAC8D,CAAC;AAE1F,eAAO,MAAM,cAAc;;GAM1B,CAAC"}
1
+ {"version":3,"file":"warningsFilter.d.ts","sourceRoot":"","sources":["../../../../src/library/webpack/utils/warningsFilter.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,kBAAkB,QACgF,CAAC;AAKhH,eAAO,MAAM,eAAe,QAAsE,CAAC;AAGnG,eAAO,MAAM,gBAAgB,QAA4C,CAAC;AAG1E,eAAO,MAAM,kBAAkB,QAA+B,CAAC;AAG/D,eAAO,MAAM,cAAc,QAC8D,CAAC;AAG1F,eAAO,MAAM,8BAA8B,QAAwC,CAAC;AAEpF,eAAO,MAAM,cAAc;;GAO1B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ignoreWarnings = exports.ASSETS_TOO_BIG = exports.FAILED_TO_PARSE_SM = exports.MODULE_NOT_FOUND = exports.REQUEST_DYNAMIC = exports.REQUIRE_EXPRESSION = void 0;
3
+ exports.ignoreWarnings = exports.SKIPPED_NOT_SERIALIZABLE_CACHE = exports.ASSETS_TOO_BIG = exports.FAILED_TO_PARSE_SM = exports.MODULE_NOT_FOUND = exports.REQUEST_DYNAMIC = exports.REQUIRE_EXPRESSION = void 0;
4
4
  // возникает когда в либе require используется как выражение или сохраняется в переменной
5
5
  // в большинстве случаев ворнинг возникает на код вида:
6
6
  // const nodeRequire = typeof __non_webpack_require__ === 'undefined' ? require : __non_webpack_require__;
@@ -15,11 +15,14 @@ exports.MODULE_NOT_FOUND = /Module not found: Error: Can't resolve /;
15
15
  exports.FAILED_TO_PARSE_SM = /Failed to parse source map/;
16
16
  // Отключает ворнинги для больших чанков
17
17
  exports.ASSETS_TOO_BIG = /(combined asset size exceeds the recommended limit|exceed the recommended size limit)/;
18
+ // Disables warnings for file-system cache, often they occur due to incorrect source-maps in project dependencies
19
+ exports.SKIPPED_NOT_SERIALIZABLE_CACHE = /Skipped not serializable cache item/;
18
20
  exports.ignoreWarnings = [
19
21
  { message: exports.REQUIRE_EXPRESSION },
20
22
  { message: exports.REQUEST_DYNAMIC },
21
23
  { message: exports.MODULE_NOT_FOUND },
22
24
  { message: exports.FAILED_TO_PARSE_SM },
23
25
  { message: exports.ASSETS_TOO_BIG },
26
+ { message: exports.SKIPPED_NOT_SERIALIZABLE_CACHE },
24
27
  ];
25
28
  //# sourceMappingURL=warningsFilter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"warningsFilter.js","sourceRoot":"","sources":["../../../../src/library/webpack/utils/warningsFilter.ts"],"names":[],"mappings":";;;AAAA,yFAAyF;AACzF,uDAAuD;AACvD,0GAA0G;AAC7F,QAAA,kBAAkB,GAC7B,6GAA6G,CAAC;AAEhH,uGAAuG;AACvG,kCAAkC;AAClC,4EAA4E;AAC/D,QAAA,eAAe,GAAG,mEAAmE,CAAC;AAEnG,+IAA+I;AAClI,QAAA,gBAAgB,GAAG,yCAAyC,CAAC;AAE1E,0EAA0E;AAC7D,QAAA,kBAAkB,GAAG,4BAA4B,CAAC;AAE/D,wCAAwC;AAC3B,QAAA,cAAc,GACzB,uFAAuF,CAAC;AAE7E,QAAA,cAAc,GAAG;IAC5B,EAAE,OAAO,EAAE,0BAAkB,EAAE;IAC/B,EAAE,OAAO,EAAE,uBAAe,EAAE;IAC5B,EAAE,OAAO,EAAE,wBAAgB,EAAE;IAC7B,EAAE,OAAO,EAAE,0BAAkB,EAAE;IAC/B,EAAE,OAAO,EAAE,sBAAc,EAAE;CAC5B,CAAC"}
1
+ {"version":3,"file":"warningsFilter.js","sourceRoot":"","sources":["../../../../src/library/webpack/utils/warningsFilter.ts"],"names":[],"mappings":";;;AAAA,yFAAyF;AACzF,uDAAuD;AACvD,0GAA0G;AAC7F,QAAA,kBAAkB,GAC7B,6GAA6G,CAAC;AAEhH,uGAAuG;AACvG,kCAAkC;AAClC,4EAA4E;AAC/D,QAAA,eAAe,GAAG,mEAAmE,CAAC;AAEnG,+IAA+I;AAClI,QAAA,gBAAgB,GAAG,yCAAyC,CAAC;AAE1E,0EAA0E;AAC7D,QAAA,kBAAkB,GAAG,4BAA4B,CAAC;AAE/D,wCAAwC;AAC3B,QAAA,cAAc,GACzB,uFAAuF,CAAC;AAE1F,iHAAiH;AACpG,QAAA,8BAA8B,GAAG,qCAAqC,CAAC;AAEvE,QAAA,cAAc,GAAG;IAC5B,EAAE,OAAO,EAAE,0BAAkB,EAAE;IAC/B,EAAE,OAAO,EAAE,uBAAe,EAAE;IAC5B,EAAE,OAAO,EAAE,wBAAgB,EAAE;IAC7B,EAAE,OAAO,EAAE,0BAAkB,EAAE;IAC/B,EAAE,OAAO,EAAE,sBAAc,EAAE;IAC3B,EAAE,OAAO,EAAE,sCAA8B,EAAE;CAC5C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tramvai/cli",
3
- "version": "4.18.4",
3
+ "version": "4.19.0",
4
4
  "description": "Cli инструмент для сборки и запуска приложений",
5
5
  "files": [
6
6
  "src",
@@ -62,7 +62,7 @@
62
62
  "@sentry/node": "^6.2.5",
63
63
  "@svgr/webpack": "^8.1.0",
64
64
  "@tinkoff/browserslist-config": "0.4.1",
65
- "@tinkoff/dippy": "0.10.6",
65
+ "@tinkoff/dippy": "0.10.7",
66
66
  "@tinkoff/is-modern-lib": "4.0.1",
67
67
  "@tinkoff/logger": "0.10.274",
68
68
  "@tinkoff/minicss-class-generator": "0.4.1",
@@ -72,7 +72,7 @@
72
72
  "@tinkoff/utils": "^2.1.3",
73
73
  "@tinkoff/webpack-dedupe-plugin": "3.0.1",
74
74
  "@tramvai/build": "5.0.3",
75
- "@tramvai/react": "4.18.4",
75
+ "@tramvai/react": "4.19.0",
76
76
  "@tramvai/tools-check-versions": "0.6.2",
77
77
  "@tramvai/tools-migrate": "0.8.2",
78
78
  "ajv": "^8.12.0",
@@ -1,8 +1,33 @@
1
+ import { Writable } from 'stream';
1
2
  import type Config from 'webpack-chain';
2
3
  import CaseSensitivePathsPlugin from 'case-sensitive-paths-webpack-plugin';
3
4
  import type { CliConfigEntry, ConfigManager } from '../../../api';
4
5
  import { WEBPACK_DEBUG_STATS_OPTIONS } from '../constants/stats';
5
6
  import { dedupe } from '../blocks/dedupe';
7
+ import { ignoreWarnings } from '../utils/warningsFilter';
8
+
9
+ const filters = ignoreWarnings.map(
10
+ ({ message }) =>
11
+ (text) =>
12
+ message.test(text)
13
+ );
14
+
15
+ const stderrWithWarningFilters = new Writable({
16
+ write(chunk, encoding, callback) {
17
+ const chunkStr = chunk.toString();
18
+
19
+ if (filters.some((filter) => filter(chunkStr))) {
20
+ callback();
21
+ return;
22
+ }
23
+
24
+ process.stderr.write(chunk, encoding, callback);
25
+ },
26
+ });
27
+
28
+ stderrWithWarningFilters.on('error', (error) =>
29
+ console.error('[infrastructureLogging] stream error', error)
30
+ );
6
31
 
7
32
  export default (configManager: ConfigManager<CliConfigEntry>) => (config: Config) => {
8
33
  config.plugin('case-sensitive-path').use(CaseSensitivePathsPlugin);
@@ -16,7 +41,10 @@ export default (configManager: ConfigManager<CliConfigEntry>) => (config: Config
16
41
 
17
42
  config.set('infrastructureLogging', {
18
43
  level: 'warn',
19
- ...(configManager.verboseWebpack ? { level: 'verbose' } : {}),
44
+ ...(configManager.verboseWebpack ? { level: 'verbose', debug: true } : {}),
45
+ ...(configManager.verboseWebpack || configManager.debug
46
+ ? {}
47
+ : { stream: stderrWithWarningFilters }),
20
48
  });
21
49
 
22
50
  config.output.pathinfo(false);
@@ -19,10 +19,14 @@ export const FAILED_TO_PARSE_SM = /Failed to parse source map/;
19
19
  export const ASSETS_TOO_BIG =
20
20
  /(combined asset size exceeds the recommended limit|exceed the recommended size limit)/;
21
21
 
22
+ // Disables warnings for file-system cache, often they occur due to incorrect source-maps in project dependencies
23
+ export const SKIPPED_NOT_SERIALIZABLE_CACHE = /Skipped not serializable cache item/;
24
+
22
25
  export const ignoreWarnings = [
23
26
  { message: REQUIRE_EXPRESSION },
24
27
  { message: REQUEST_DYNAMIC },
25
28
  { message: MODULE_NOT_FOUND },
26
29
  { message: FAILED_TO_PARSE_SM },
27
30
  { message: ASSETS_TOO_BIG },
31
+ { message: SKIPPED_NOT_SERIALIZABLE_CACHE },
28
32
  ];