Skip to content

Commit 8bf5ce2

Browse files
committed
Fix changed package var naming
1 parent 389df9b commit 8bf5ce2

File tree

1 file changed

+33
-30
lines changed

1 file changed

+33
-30
lines changed

src/release-specification.ts

Lines changed: 33 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -212,30 +212,31 @@ export async function validateReleaseSpecification(
212212
project.workspacePackages[packageName].hasChangesSinceLatestRelease,
213213
);
214214

215-
const missingDependents = changedPackageNames.filter(
215+
const missingChangedPackageNames = changedPackageNames.filter(
216216
(packageName) =>
217217
!hasProperty(unvalidatedReleaseSpecification.packages, packageName) ||
218218
unvalidatedReleaseSpecification.packages[packageName] === null,
219219
);
220220

221-
const packageNamesToReportMissing = missingDependents.filter(
222-
(packageName) => {
223-
const pkg = project.workspacePackages[packageName];
221+
const packageNamesToReportMissing = missingChangedPackageNames.filter(
222+
(missingChangedPackageName) => {
223+
const missingChangedPackage =
224+
project.workspacePackages[missingChangedPackageName];
224225

225226
const isInternalDependency = Object.values(
226227
project.workspacePackages,
227228
).some((workspacePackage) => {
228229
const { dependencies, peerDependencies } =
229230
workspacePackage.validatedManifest;
230231
return (
231-
hasProperty(dependencies, packageName) ||
232-
hasProperty(peerDependencies, packageName)
232+
hasProperty(dependencies, missingChangedPackageName) ||
233+
hasProperty(peerDependencies, missingChangedPackageName)
233234
);
234235
});
235236

236237
const hasInternalDependencyWithBreakingChanges = Object.keys({
237-
...pkg.validatedManifest.dependencies,
238-
...pkg.validatedManifest.peerDependencies,
238+
...missingChangedPackage.validatedManifest.dependencies,
239+
...missingChangedPackage.validatedManifest.peerDependencies,
239240
})
240241
.filter((dependency) => project.workspacePackages[dependency])
241242
.some((dependency) => {
@@ -246,7 +247,7 @@ export async function validateReleaseSpecification(
246247
(internalDependencyVersionSpecifierOrDirective === 'major' ||
247248
(isValidSemver(internalDependencyVersionSpecifierOrDirective) &&
248249
diff(
249-
pkg.validatedManifest.version,
250+
missingChangedPackage.validatedManifest.version,
250251
internalDependencyVersionSpecifierOrDirective,
251252
) === 'major'))
252253
);
@@ -285,14 +286,14 @@ export async function validateReleaseSpecification(
285286
}
286287

287288
Object.entries(unvalidatedReleaseSpecification.packages).forEach(
288-
([packageName, versionSpecifierOrDirective], index) => {
289+
([changedPackageName, versionSpecifierOrDirective], index) => {
289290
const lineNumber = indexOfFirstUsableLine + index + 2;
290-
const pkg = project.workspacePackages[packageName];
291+
const changedPackage = project.workspacePackages[changedPackageName];
291292

292-
if (pkg === undefined) {
293+
if (changedPackage === undefined) {
293294
errors.push({
294295
message: `${JSON.stringify(
295-
packageName,
296+
changedPackageName,
296297
)} is not a package in the project`,
297298
lineNumber,
298299
});
@@ -308,7 +309,7 @@ export async function validateReleaseSpecification(
308309
message: [
309310
`${JSON.stringify(
310311
versionSpecifierOrDirective,
311-
)} is not a valid version specifier for package "${packageName}"`,
312+
)} is not a valid version specifier for package "${changedPackageName}"`,
312313
`(must be "major", "minor", or "patch"; or a version string with major, minor, and patch parts, such as "1.2.3")`,
313314
],
314315
lineNumber,
@@ -317,16 +318,16 @@ export async function validateReleaseSpecification(
317318

318319
if (isValidSemver(versionSpecifierOrDirective)) {
319320
const comparison = new SemVer(versionSpecifierOrDirective).compare(
320-
project.workspacePackages[packageName].validatedManifest.version,
321+
changedPackage.validatedManifest.version,
321322
);
322323

323324
if (comparison === 0) {
324325
errors.push({
325326
message: [
326327
`${JSON.stringify(
327328
versionSpecifierOrDirective,
328-
)} is not a valid version specifier for package "${packageName}"`,
329-
`("${packageName}" is already at version "${versionSpecifierOrDirective}")`,
329+
)} is not a valid version specifier for package "${changedPackageName}"`,
330+
`("${changedPackageName}" is already at version "${versionSpecifierOrDirective}")`,
330331
],
331332
lineNumber,
332333
});
@@ -335,8 +336,8 @@ export async function validateReleaseSpecification(
335336
message: [
336337
`${JSON.stringify(
337338
versionSpecifierOrDirective,
338-
)} is not a valid version specifier for package "${packageName}"`,
339-
`("${packageName}" is at a greater version "${project.workspacePackages[packageName].validatedManifest.version}")`,
339+
)} is not a valid version specifier for package "${changedPackageName}"`,
340+
`("${changedPackageName}" is at a greater version "${project.workspacePackages[changedPackageName].validatedManifest.version}")`,
340341
],
341342
lineNumber,
342343
});
@@ -347,8 +348,10 @@ export async function validateReleaseSpecification(
347348
if (
348349
versionSpecifierOrDirective === 'major' ||
349350
(isValidSemver(versionSpecifierOrDirective) &&
350-
diff(pkg.validatedManifest.version, versionSpecifierOrDirective) ===
351-
'major')
351+
diff(
352+
changedPackage.validatedManifest.version,
353+
versionSpecifierOrDirective,
354+
) === 'major')
352355
) {
353356
const dependentNames = Object.keys(project.workspacePackages).filter(
354357
(possibleDependentName) => {
@@ -357,8 +360,8 @@ export async function validateReleaseSpecification(
357360
const { dependencies, peerDependencies } =
358361
possibleDependent.validatedManifest;
359362
return (
360-
hasProperty(dependencies, packageName) ||
361-
hasProperty(peerDependencies, packageName)
363+
hasProperty(dependencies, changedPackageName) ||
364+
hasProperty(peerDependencies, changedPackageName)
362365
);
363366
},
364367
);
@@ -377,11 +380,11 @@ export async function validateReleaseSpecification(
377380
if (missingDependentNames.length > 0) {
378381
errors.push({
379382
message: [
380-
`The following dependents of package '${packageName}', which is being released with a major version bump, are missing from the release spec.`,
383+
`The following dependents of package '${changedPackageName}', which is being released with a major version bump, are missing from the release spec.`,
381384
missingDependentNames
382385
.map((dependent) => ` - ${dependent}`)
383386
.join('\n'),
384-
` Consider including them in the release spec so that they are compatible with the new '${packageName}' version.`,
387+
` Consider including them in the release spec so that they are compatible with the new '${changedPackageName}' version.`,
385388
` If you are ABSOLUTELY SURE these packages are safe to omit, however, and want to postpone the release of a package, then list it with a directive of "intentionally-skip". For example:`,
386389
YAML.stringify({
387390
packages: missingDependentNames.reduce((object, dependent) => {
@@ -402,14 +405,14 @@ export async function validateReleaseSpecification(
402405

403406
// Check to compel users to release new versions of dependencies alongside their dependents
404407
if (
405-
pkg &&
408+
changedPackage &&
406409
versionSpecifierOrDirective &&
407410
(hasProperty(IncrementableVersionParts, versionSpecifierOrDirective) ||
408411
isValidSemver(versionSpecifierOrDirective))
409412
) {
410413
const missingDependencies = Object.keys({
411-
...pkg.validatedManifest.dependencies,
412-
...pkg.validatedManifest.peerDependencies,
414+
...changedPackage.validatedManifest.dependencies,
415+
...changedPackage.validatedManifest.peerDependencies,
413416
}).filter((dependency) => {
414417
return (
415418
project.workspacePackages[dependency]
@@ -421,11 +424,11 @@ export async function validateReleaseSpecification(
421424
if (missingDependencies.length > 0) {
422425
errors.push({
423426
message: [
424-
`The following packages, which are dependencies or peer dependencies of the package '${packageName}' being released, are missing from the release spec.`,
427+
`The following packages, which are dependencies or peer dependencies of the package '${changedPackageName}' being released, are missing from the release spec.`,
425428
missingDependencies
426429
.map((dependency) => ` - ${dependency}`)
427430
.join('\n'),
428-
` These packages may have changes that '${packageName}' relies upon. Consider including them in the release spec.`,
431+
` These packages may have changes that '${changedPackageName}' relies upon. Consider including them in the release spec.`,
429432
` If you are ABSOLUTELY SURE these packages are safe to omit, however, and want to postpone the release of a package, then list it with a directive of "intentionally-skip". For example:`,
430433
YAML.stringify({
431434
packages: missingDependencies.reduce((object, dependency) => {

0 commit comments

Comments
 (0)