arui-scripts 12.5.0 → 13.1.0-feature-yarn2.1
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/CHANGELOG.md +25 -0
- package/README.md +3 -0
- package/build/commands/archive-build/index.js +8 -1
- package/build/commands/docker-build/index.js +8 -1
- package/build/configs/app-configs/get-defaults.js +1 -0
- package/build/configs/app-configs/types.d.ts +1 -0
- package/build/configs/webpack.server.prod.js +4 -1
- package/build/tsconfig-local.tsbuildinfo +6 -6
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,28 @@
|
|
|
1
|
+
# [13.1.0-feature-yarn2.1](https://git.moscow.alfaintra.net/ef/arui-scripts/compare/v13.0.0...v13.1.0-feature-yarn2.1) (2022-08-04)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Features
|
|
5
|
+
|
|
6
|
+
* add yarn 2 support ([5d4bb8c](https://git.moscow.alfaintra.net/ef/arui-scripts/commit/5d4bb8c5e4debb3d0db430c094effbedd9b7bcc3))
|
|
7
|
+
|
|
8
|
+
# [13.0.0](https://git.moscow.alfaintra.net/ef/arui-scripts/compare/v12.5.0...v13.0.0) (2022-07-11)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* **server:** disable minimization of server ([30e211b](https://git.moscow.alfaintra.net/ef/arui-scripts/commit/30e211ba8ae306164c33a262f48444972383e2f7))
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
### Features
|
|
17
|
+
|
|
18
|
+
* **server:** disable source-map support banner by default ([c486695](https://git.moscow.alfaintra.net/ef/arui-scripts/commit/c486695d30b4fd7c96c891b1920a67db8c47d854))
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
### BREAKING CHANGES
|
|
22
|
+
|
|
23
|
+
* **server:** source-map-support banner is no longer added by default
|
|
24
|
+
source-map-support significantly slow down code, especially if you use exceptions. In case you still need it you can use `installServerSourceMaps` option
|
|
25
|
+
|
|
1
26
|
## [12.4.1](https://git.moscow.alfaintra.net/ef/arui-scripts/compare/v12.4.0...v12.4.1) (2022-06-07)
|
|
2
27
|
|
|
3
28
|
|
package/README.md
CHANGED
|
@@ -66,6 +66,7 @@ npm install arui-scripts --save-dev
|
|
|
66
66
|
- `useServerHMR` - использовать ли HotModuleReplacement для сервера. По умолчанию `false`.
|
|
67
67
|
- `clientServerPort` - порт WebpackDevServer и nginx итогового контейнера. По умолчанию `8080`.
|
|
68
68
|
- `serverPort` - порт нодового сервера. Нужен для правильного проксирования запросов от дев сервера и nginx. По умолчанию `3000`.
|
|
69
|
+
- `installServerSourceMaps` - добавлять ли в серверную сборку пакет `source-map-support`. По умолчанию `false`.
|
|
69
70
|
- `additionalBuildPath` - массив путей, которые попадут в архив при использовании команды `archive-build`. По умолчанию `['config']`.
|
|
70
71
|
- `archiveName` - имя архива, который будет создан при использовании команды `archive-build`. По умолчанию `build.tar`.
|
|
71
72
|
- `keepPropTypes` - если `true`, пакеты с prop-types не будут удалены из production билда.
|
|
@@ -296,6 +297,7 @@ docker
|
|
|
296
297
|
|
|
297
298
|
Команда предполагает наличие установленных `node_modules` перед сборкой, в процессе работы же очищает дев зависимости используя `yarn` или `npm`.
|
|
298
299
|
yarn будет использоваться когда в рутовой папке проекта есть `yarn.lock` и `yarn` доступен в системе.
|
|
300
|
+
Если вы используете yarn 2, для выполнения команды очистки используется плагин [workspace-tools](https://github.com/yarnpkg/berry/blob/HEAD/packages/plugin-workspace-tools/README.md), поэтому он должен быть установлен и указан в `.yarnrc.yml` вашего проекта.
|
|
299
301
|
|
|
300
302
|
Итоговый контейнер будет содержать `nginx` и скрипт для запуска `nginx` одновременно с `nodejs` сервером.
|
|
301
303
|
|
|
@@ -322,6 +324,7 @@ archive
|
|
|
322
324
|
|
|
323
325
|
Команда предполагает наличие установленных `node_modules` перед сборкой, в процессе работы же очищает дев зависимости используя `yarn` или `npm`.
|
|
324
326
|
yarn будет использоваться когда в рутовой папке проекта есть `yarn.lock` и `yarn` доступен в системе.
|
|
327
|
+
Если вы используете yarn 2, для выполнения команды очистки используется плагин [workspace-tools](https://github.com/yarnpkg/berry/blob/HEAD/packages/plugin-workspace-tools/README.md), поэтому он должен быть установлен и указан в `.yarnrc.yml` вашего проекта.
|
|
325
328
|
|
|
326
329
|
Итоговый архив будет содержать в себе `.build`, `node_modules`, `package.json` и `config` папки вашего проекта.
|
|
327
330
|
|
|
@@ -51,7 +51,14 @@ const packageJsonPath = path_1.default.join(app_configs_1.default.cwd, packageJs
|
|
|
51
51
|
console.time('Remove build dependencies time');
|
|
52
52
|
// if yarn is available prune dev dependencies with yarn, otherwise use npm
|
|
53
53
|
if (app_configs_1.default.useYarn && shelljs_1.default.which('yarn')) {
|
|
54
|
-
|
|
54
|
+
const yarnVersion = shelljs_1.default.exec('yarn -v', { silent: true });
|
|
55
|
+
const yarnMajorVersion = Number(yarnVersion.split('.')[0]);
|
|
56
|
+
if (yarnMajorVersion > 1) {
|
|
57
|
+
yield exec_1.default('yarn workspaces focus --production --all');
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
yield exec_1.default('yarn install --production --ignore-optional --frozen-lockfile --ignore-scripts --prefer-offline');
|
|
61
|
+
}
|
|
55
62
|
}
|
|
56
63
|
else {
|
|
57
64
|
yield exec_1.default('npm prune --production');
|
|
@@ -74,7 +74,14 @@ const imageFullName = `${dockerRegistry ? `${dockerRegistry}/` : ''}${imageName}
|
|
|
74
74
|
console.time('Remove dev dependencies time');
|
|
75
75
|
// if yarn is available prune dev dependencies with yarn, otherwise use npm
|
|
76
76
|
if (app_configs_1.default.useYarn && shelljs_1.default.which('yarn')) {
|
|
77
|
-
|
|
77
|
+
const yarnVersion = shelljs_1.default.exec('yarn -v', { silent: true });
|
|
78
|
+
const yarnMajorVersion = Number(yarnVersion.split('.')[0]);
|
|
79
|
+
if (yarnMajorVersion > 1) {
|
|
80
|
+
yield exec_1.default('yarn workspaces focus --production --all');
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
yield exec_1.default('yarn install --production --ignore-optional --frozen-lockfile --ignore-scripts --prefer-offline');
|
|
84
|
+
}
|
|
78
85
|
}
|
|
79
86
|
else {
|
|
80
87
|
yield exec_1.default('npm prune --production');
|
|
@@ -52,6 +52,7 @@ function getDefaults() {
|
|
|
52
52
|
useYarn: fs_1.default.existsSync(yarnLockFilePath),
|
|
53
53
|
clientServerPort: 8080,
|
|
54
54
|
serverPort: 3000,
|
|
55
|
+
installServerSourceMaps: false,
|
|
55
56
|
debug: false,
|
|
56
57
|
overridesPath: overridesPath ? [overridesPath] : [],
|
|
57
58
|
statsOutputFilename: 'stats.json',
|
|
@@ -68,6 +68,9 @@ const config = apply_overrides_1.default(['webpack', 'webpackServer', 'webpackPr
|
|
|
68
68
|
// dependencies list from package.json
|
|
69
69
|
modulesFromFile: true,
|
|
70
70
|
})],
|
|
71
|
+
optimization: {
|
|
72
|
+
minimize: false,
|
|
73
|
+
},
|
|
71
74
|
resolve: {
|
|
72
75
|
// This allows you to set a fallback for where Webpack should look for modules.
|
|
73
76
|
// We placed these paths second because we want `node_modules` to "win"
|
|
@@ -182,7 +185,7 @@ const config = apply_overrides_1.default(['webpack', 'webpackServer', 'webpackPr
|
|
|
182
185
|
raw: true,
|
|
183
186
|
entryOnly: false
|
|
184
187
|
}),
|
|
185
|
-
new webpack_1.default.BannerPlugin({
|
|
188
|
+
app_configs_1.default.installServerSourceMaps && new webpack_1.default.BannerPlugin({
|
|
186
189
|
banner: sourceMapSupportBanner,
|
|
187
190
|
raw: true,
|
|
188
191
|
entryOnly: false
|
|
@@ -602,8 +602,8 @@
|
|
|
602
602
|
"affectsGlobalScope": true
|
|
603
603
|
},
|
|
604
604
|
"../src/configs/app-configs/types.ts": {
|
|
605
|
-
"version": "
|
|
606
|
-
"signature": "
|
|
605
|
+
"version": "971c4e83c3d9e6eb875d69f26d47246934e9a9e51e4c295f37679790701b55cc",
|
|
606
|
+
"signature": "f1ce3ab92e7eed2176880c155177e9ada1c198b25cfda72665704103853f3935",
|
|
607
607
|
"affectsGlobalScope": false
|
|
608
608
|
},
|
|
609
609
|
"../src/configs/util/try-resolve.ts": {
|
|
@@ -612,7 +612,7 @@
|
|
|
612
612
|
"affectsGlobalScope": false
|
|
613
613
|
},
|
|
614
614
|
"../src/configs/app-configs/get-defaults.ts": {
|
|
615
|
-
"version": "
|
|
615
|
+
"version": "0085f0e9325291e70ae41a52c4eeb53bd9ddc85d4538fb6345b1167297561d57",
|
|
616
616
|
"signature": "32ce4848d302065a0608781a400430ff0f4fb5757a501c614f3ab8aaad45afd0",
|
|
617
617
|
"affectsGlobalScope": false
|
|
618
618
|
},
|
|
@@ -797,7 +797,7 @@
|
|
|
797
797
|
"affectsGlobalScope": false
|
|
798
798
|
},
|
|
799
799
|
"../src/commands/archive-build/index.ts": {
|
|
800
|
-
"version": "
|
|
800
|
+
"version": "dd67bcf3100cbd10b03627a144dfa3e311d40b9d64c443bcd16e6e378d5045f4",
|
|
801
801
|
"signature": "8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881",
|
|
802
802
|
"affectsGlobalScope": false
|
|
803
803
|
},
|
|
@@ -1217,7 +1217,7 @@
|
|
|
1217
1217
|
"affectsGlobalScope": false
|
|
1218
1218
|
},
|
|
1219
1219
|
"../src/configs/webpack.server.prod.ts": {
|
|
1220
|
-
"version": "
|
|
1220
|
+
"version": "c4d75b87d112706df811479c1275a2e723110b70deacd7acba94300dee97ef07",
|
|
1221
1221
|
"signature": "293c406216d7a14873b09a48b71adadd5546d9060f5be7d148fe129bb57f13d1",
|
|
1222
1222
|
"affectsGlobalScope": false
|
|
1223
1223
|
},
|
|
@@ -1247,7 +1247,7 @@
|
|
|
1247
1247
|
"affectsGlobalScope": false
|
|
1248
1248
|
},
|
|
1249
1249
|
"../src/commands/docker-build/index.ts": {
|
|
1250
|
-
"version": "
|
|
1250
|
+
"version": "3e1518759f88ff6c846f5fd5f3293d4fb65958073f013bcd68a192e2e40bebfc",
|
|
1251
1251
|
"signature": "8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881",
|
|
1252
1252
|
"affectsGlobalScope": false
|
|
1253
1253
|
},
|