@o3r/create 10.1.0-prerelease.26 → 10.1.0-prerelease.28
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 +1 -0
- package/index.js +24 -2
- package/package.json +6 -6
package/README.md
CHANGED
|
@@ -34,3 +34,4 @@ The generator accepts all the configurations from Angular `ng new` command, find
|
|
|
34
34
|
On top of them, the following options can be provided to the initializer:
|
|
35
35
|
|
|
36
36
|
- `--yarn-version` : specify the version of yarn to use (default: `latest`)
|
|
37
|
+
- `--exact-o3r-version` : use a pinned version for [otter packages](https://github.com/AmadeusITGroup/otter/blob/main/docs/README.md).
|
package/index.js
CHANGED
|
@@ -88,6 +88,7 @@ if (packageManagerEnv && ['npm', 'yarn'].includes(packageManagerEnv)) {
|
|
|
88
88
|
defaultPackageManager = packageManagerEnv;
|
|
89
89
|
}
|
|
90
90
|
const packageManager = argv['package-manager'] || defaultPackageManager;
|
|
91
|
+
const exactO3rVersion = !!argv['exact-o3r-version'];
|
|
91
92
|
if (argv._.length === 0) {
|
|
92
93
|
// eslint-disable-next-line no-console
|
|
93
94
|
console.error('The project name is mandatory');
|
|
@@ -149,6 +150,22 @@ const prepareWorkspace = (relativeDirectory = '.', projectPackageManager = 'npm'
|
|
|
149
150
|
mandatoryDependencies.forEach((dep) => {
|
|
150
151
|
packageJson.devDependencies[dep] = dependencies?.[dep] || devDependencies?.[dep] || 'latest';
|
|
151
152
|
});
|
|
153
|
+
if (exactO3rVersion) {
|
|
154
|
+
const o3rPackages = ['@o3r/core', '@o3r/schematics', '@o3r/workspace'];
|
|
155
|
+
const resolutions = {};
|
|
156
|
+
o3rPackages.forEach((pkg) => {
|
|
157
|
+
if (packageJson.devDependencies?.[pkg]) {
|
|
158
|
+
packageJson.devDependencies[pkg] = version;
|
|
159
|
+
}
|
|
160
|
+
resolutions[pkg] = version;
|
|
161
|
+
});
|
|
162
|
+
if (projectPackageManager === 'yarn') {
|
|
163
|
+
packageJson.resolutions = resolutions;
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
packageJson.overrides = resolutions;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
152
169
|
(0, node_fs_1.writeFileSync)(packageJsonPath, JSON.stringify(packageJson, null, 2));
|
|
153
170
|
if (projectPackageManager === 'yarn') {
|
|
154
171
|
exitProcessIfErrorInSpawnSync(2, (0, node_child_process_1.spawnSync)(runner, ['set', 'version', argv['yarn-version'] || 'stable'], {
|
|
@@ -166,9 +183,14 @@ const addOtterFramework = (relativeDirectory = '.', projectPackageManager = 'npm
|
|
|
166
183
|
const runner = process.platform === 'win32' ? `${projectPackageManager}.cmd` : projectPackageManager;
|
|
167
184
|
const options = schematicsCliOptions
|
|
168
185
|
.flat();
|
|
169
|
-
exitProcessIfErrorInSpawnSync(3, (0, node_child_process_1.spawnSync)(runner, ['exec', 'ng', 'add', `@o3r/core
|
|
186
|
+
exitProcessIfErrorInSpawnSync(3, (0, node_child_process_1.spawnSync)(runner, ['exec', 'ng', 'add', `@o3r/core@${exactO3rVersion ? '' : '~'}${version}`, ...(projectPackageManager === 'npm' ? ['--'] : []), ...options], {
|
|
170
187
|
stdio: 'inherit',
|
|
171
|
-
cwd
|
|
188
|
+
cwd,
|
|
189
|
+
env: exactO3rVersion && projectPackageManager === 'npm' ? {
|
|
190
|
+
...process.env,
|
|
191
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention, camelcase
|
|
192
|
+
NPM_CONFIG_SAVE_EXACT: 'true'
|
|
193
|
+
} : undefined
|
|
172
194
|
}));
|
|
173
195
|
};
|
|
174
196
|
const projectFolder = argv._[0]?.replaceAll(' ', '-').toLowerCase() || '.';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@o3r/create",
|
|
3
|
-
"version": "10.1.0-prerelease.
|
|
3
|
+
"version": "10.1.0-prerelease.28",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -34,11 +34,11 @@
|
|
|
34
34
|
"@nx/eslint-plugin": "~18.0.2",
|
|
35
35
|
"@nx/jest": "~18.0.2",
|
|
36
36
|
"@nx/js": "~18.0.2",
|
|
37
|
-
"@o3r/build-helpers": "^10.1.0-prerelease.
|
|
38
|
-
"@o3r/eslint-config-otter": "^10.1.0-prerelease.
|
|
39
|
-
"@o3r/eslint-plugin": "^10.1.0-prerelease.
|
|
40
|
-
"@o3r/schematics": "^10.1.0-prerelease.
|
|
41
|
-
"@o3r/test-helpers": "^10.1.0-prerelease.
|
|
37
|
+
"@o3r/build-helpers": "^10.1.0-prerelease.28",
|
|
38
|
+
"@o3r/eslint-config-otter": "^10.1.0-prerelease.28",
|
|
39
|
+
"@o3r/eslint-plugin": "^10.1.0-prerelease.28",
|
|
40
|
+
"@o3r/schematics": "^10.1.0-prerelease.28",
|
|
41
|
+
"@o3r/test-helpers": "^10.1.0-prerelease.28",
|
|
42
42
|
"@stylistic/eslint-plugin-ts": "^1.5.4",
|
|
43
43
|
"@types/jest": "~29.5.2",
|
|
44
44
|
"@types/minimist": "^1.2.2",
|