MCPcopy Index your code
hub / github.com/changesets/changesets / versionPackage

Function versionPackage

packages/apply-release-plan/src/version-package.ts:19–120  ·  view source on GitHub ↗
(
  release: ComprehensiveRelease & {
    changelog: string | null;
    packageJson: PackageJSON;
    dir: string;
  },
  versionsToUpdate: Array<{
    name: string;
    version: string;
    oldVersion: string;
    type: VersionType;
    dir: string;
  }>,
  {
    cwd,
    updateInternalDependencies,
    onlyUpdatePeerDependentsWhenOutOfRange,
    bumpVersionsWithWorkspaceProtocolOnly,
    snapshot,
  }: {
    cwd: string;
    updateInternalDependencies: "patch" | "minor";
    onlyUpdatePeerDependentsWhenOutOfRange: boolean;
    bumpVersionsWithWorkspaceProtocolOnly?: boolean;
    snapshot?: string | boolean | undefined;
  }
)

Source from the content-addressed store, hash-verified

17] as const;
18
19export default function versionPackage(
20 release: ComprehensiveRelease & {
21 changelog: string | null;
22 packageJson: PackageJSON;
23 dir: string;
24 },
25 versionsToUpdate: Array<{
26 name: string;
27 version: string;
28 oldVersion: string;
29 type: VersionType;
30 dir: string;
31 }>,
32 {
33 cwd,
34 updateInternalDependencies,
35 onlyUpdatePeerDependentsWhenOutOfRange,
36 bumpVersionsWithWorkspaceProtocolOnly,
37 snapshot,
38 }: {
39 cwd: string;
40 updateInternalDependencies: "patch" | "minor";
41 onlyUpdatePeerDependentsWhenOutOfRange: boolean;
42 bumpVersionsWithWorkspaceProtocolOnly?: boolean;
43 snapshot?: string | boolean | undefined;
44 }
45) {
46 let { newVersion, packageJson } = release;
47
48 packageJson.version = newVersion;
49
50 for (let depType of DEPENDENCY_TYPES) {
51 let deps = packageJson[depType];
52 if (deps) {
53 for (let { name, version, oldVersion, type, dir } of versionsToUpdate) {
54 let depCurrentVersion = deps[name];
55 if (
56 !depCurrentVersion ||
57 depCurrentVersion.startsWith("file:") ||
58 depCurrentVersion.startsWith("link:") ||
59 !shouldUpdateDependencyBasedOnConfig(
60 cwd,
61 { version, oldVersion, type, dir },
62 {
63 depVersionRange: depCurrentVersion,
64 depType,
65 },
66 {
67 minReleaseType: updateInternalDependencies,
68 onlyUpdatePeerDependentsWhenOutOfRange,
69 }
70 )
71 ) {
72 continue;
73 }
74 const usesWorkspaceRange = depCurrentVersion.startsWith("workspace:");
75
76 if (

Callers 1

applyReleasePlanFunction · 0.85

Calls 2

getVersionRangeTypeFunction · 0.85

Tested by

no test coverage detected