feat(cli/init): pick dependencies versions from our own package.json (#11705)

This commit is contained in:
Piotr Kuczynski 2025-10-03 08:51:06 +02:00 committed by GitHub
parent dbfaad9e7c
commit b9309098bc
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 1321 additions and 19 deletions

View File

@ -226,6 +226,16 @@ export class Gulpfile {
.pipe(gulp.dest("./build/package"));
}
/**
* Move reference to package.json one level up
*/
@Task()
movePackageJsonReferenceLevelUp() {
return gulp.src("./build/package/commands/InitCommand.js")
.pipe(replace(/\.\.\/package.json/g, "package.json"))
.pipe(gulp.dest("./build/package/commands"));
}
/**
* Creates a package that can be published to npm.
*/
@ -243,7 +253,8 @@ export class Gulpfile {
"packageReplaceReferences",
"packagePreparePackageFile",
"packageCopyReadme",
"packageCopyShims"
"packageCopyShims",
"movePackageJsonReferenceLevelUp"
],
];
}

1286
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -113,6 +113,7 @@
},
"devDependencies": {
"@eslint/js": "^9.36.0",
"@google-cloud/spanner": "^7.21.0",
"@sap/hana-client": "^2.26.18",
"@tsconfig/node16": "^16.1.5",
"@types/chai": "^4.3.20",

View File

@ -6,6 +6,8 @@ import { TypeORMError } from "../error"
import { PlatformTools } from "../platform/PlatformTools"
import { CommandUtils } from "./CommandUtils"
import ourPackageJson from "../../package.json"
/**
* Generates a new project with TypeORM.
*/
@ -680,48 +682,53 @@ Steps to run this project:
if (!packageJson.devDependencies) packageJson.devDependencies = {}
packageJson.devDependencies = {
"@types/node": "^22.13.10",
"ts-node": "^10.9.2",
typescript: "^5.8.2",
"@types/node": ourPackageJson.devDependencies["@types/node"],
"ts-node": ourPackageJson.devDependencies["ts-node"],
typescript: ourPackageJson.devDependencies.typescript,
...packageJson.devDependencies,
}
if (!packageJson.dependencies) packageJson.dependencies = {}
packageJson.dependencies = {
...packageJson.dependencies,
"reflect-metadata": "^0.2.2",
typeorm:
require("../package.json").version !== "0.0.0"
? require("../package.json").version // install version from package.json if present
: require("../package.json").installFrom, // else use custom source
"reflect-metadata": ourPackageJson.dependencies["reflect-metadata"],
typeorm: ourPackageJson.version,
}
switch (database) {
case "mysql":
case "mariadb":
packageJson.dependencies["mysql2"] = "^3.14.0"
packageJson.dependencies["mysql2"] =
ourPackageJson.devDependencies.mysql2
break
case "postgres":
case "cockroachdb":
packageJson.dependencies["pg"] = "^8.14.1"
packageJson.dependencies["pg"] =
ourPackageJson.devDependencies.pg
break
case "sqlite":
packageJson.dependencies["sqlite3"] = "^5.1.7"
packageJson.dependencies["sqlite3"] =
ourPackageJson.devDependencies.sqlite3
break
case "better-sqlite3":
packageJson.dependencies["better-sqlite3"] = "^8.7.0"
packageJson.dependencies["better-sqlite3"] =
ourPackageJson.devDependencies["better-sqlite3"]
break
case "oracle":
packageJson.dependencies["oracledb"] = "^6.8.0"
packageJson.dependencies["oracledb"] =
ourPackageJson.devDependencies.oracledb
break
case "mssql":
packageJson.dependencies["mssql"] = "^10.0.4"
packageJson.dependencies["mssql"] =
ourPackageJson.devDependencies.mssql
break
case "mongodb":
packageJson.dependencies["mongodb"] = "^6.15.0"
packageJson.dependencies["mongodb"] =
ourPackageJson.devDependencies.mongodb
break
case "spanner":
packageJson.dependencies["@google-cloud/spanner"] = "^7.19.1 "
packageJson.dependencies["@google-cloud/spanner"] =
ourPackageJson.devDependencies["@google-cloud/spanner"]
break
}

View File

@ -14,6 +14,7 @@
"noUnusedLocals": true,
"outDir": "build/compiled",
"pretty": true,
"resolveJsonModule": true,
"sourceMap": true,
"strictFunctionTypes": false,
"strictPropertyInitialization": false,