monorepo-next 9.4.4 → 9.4.6

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "monorepo-next",
3
- "version": "9.4.4",
3
+ "version": "9.4.6",
4
4
  "description": "Detach monorepo packages from normal linking",
5
5
  "bin": {
6
6
  "next": "bin/next.js"
@@ -48,6 +48,7 @@ function isReleaseTypeInRange(version, type, range) {
48
48
  }
49
49
 
50
50
  let shouldVersionBumpSymbol = Symbol('shouldVersionBump');
51
+ let nextConfigSymbol = Symbol('nextConfig');
51
52
 
52
53
  async function init({
53
54
  dag,
@@ -71,6 +72,8 @@ async function init({
71
72
  }
72
73
  }
73
74
 
75
+ let nextConfig = loadPackageConfig(cwd);
76
+
74
77
  let canBumpVersion = !!(version && name);
75
78
  let canPublish = isPackage;
76
79
 
@@ -81,6 +84,9 @@ async function init({
81
84
  releaseType: defaultReleaseType,
82
85
  cwd,
83
86
  name,
87
+ get [nextConfigSymbol]() {
88
+ return nextConfig;
89
+ },
84
90
  [shouldVersionBumpSymbol]() {
85
91
  shouldVersionBump = true;
86
92
  },
@@ -113,7 +119,9 @@ async function firstPass({
113
119
 
114
120
  let releaseTree = await init({ dag, releaseTrees });
115
121
 
116
- releaseTree.releaseType = await module.exports.getReleaseType(name, cwd);
122
+ if (releaseTree[nextConfigSymbol].shouldBumpVersion) {
123
+ releaseTree.releaseType = await module.exports.getReleaseType(name, cwd);
124
+ }
117
125
  }
118
126
  }
119
127
 
@@ -124,6 +132,23 @@ async function secondPass({
124
132
  shouldInheritGreaterReleaseType,
125
133
  shouldExcludeDevChanges,
126
134
  }) {
135
+ function shouldInit({
136
+ dag,
137
+ parent,
138
+ }) {
139
+ let isDevDep = dag.dependencyType === 'devDependencies';
140
+
141
+ if (dag.node.isPackage && shouldInheritGreaterReleaseType && !isDevDep && shouldBumpInRangeDependencies) {
142
+ return true;
143
+ } else if (!isReleaseTypeInRange(parent.oldVersion, parent.releaseType, dag.dependencyRange)) {
144
+ return true;
145
+ } else if (shouldBumpInRangeDependencies) {
146
+ return true;
147
+ }
148
+
149
+ return false;
150
+ }
151
+
127
152
  let visitedNodes = new Set();
128
153
 
129
154
  for (let { dag, changedReleasableFiles } of packagesWithChanges) {
@@ -139,28 +164,20 @@ async function secondPass({
139
164
  return;
140
165
  }
141
166
 
142
- let nextConfig = loadPackageConfig(dag.node.cwd);
143
-
144
- if (!nextConfig.shouldBumpVersion) {
145
- visitedNodes.add(dag.node.packageName);
146
-
147
- return;
148
- }
167
+ let releaseTree = releaseTrees[dag.node.packageName];
168
+ let doesPackageHaveChanges = !!releaseTree;
149
169
 
150
- let doesPackageHaveChanges = !!releaseTrees[dag.node.packageName];
151
170
  if (!doesPackageHaveChanges) {
152
- let isDevDep = dag.dependencyType === 'devDependencies';
153
-
154
- if (dag.node.isPackage && shouldInheritGreaterReleaseType && !isDevDep && shouldBumpInRangeDependencies) {
155
- await init({ dag, releaseTrees });
156
- } else if (!isReleaseTypeInRange(parent.oldVersion, parent.releaseType, dag.dependencyRange)) {
157
- await init({ dag, releaseTrees });
158
- } else if (shouldBumpInRangeDependencies) {
159
- await init({ dag, releaseTrees });
160
- } else {
171
+ if (!shouldInit({
172
+ dag,
173
+ parent,
174
+ })) {
161
175
  return;
162
176
  }
163
177
 
178
+ releaseTree = await init({ dag, releaseTrees });
179
+
180
+ let isDevDep = dag.dependencyType === 'devDependencies';
164
181
  let shouldVersionBump = !(shouldExcludeDevChanges && isDevDep);
165
182
 
166
183
  if (!shouldVersionBump) {
@@ -170,6 +187,10 @@ async function secondPass({
170
187
 
171
188
  visitedNodes.add(dag.node.packageName);
172
189
 
190
+ if (!releaseTree[nextConfigSymbol].shouldBumpVersion) {
191
+ return;
192
+ }
193
+
173
194
  for (let group of dag.node.dependents) {
174
195
  if (group.isCycle) {
175
196
  continue;
@@ -219,7 +240,7 @@ function thirdPass({
219
240
 
220
241
  let shouldVersionBump = !(shouldExcludeDevChanges && isDevDep);
221
242
 
222
- if (shouldVersionBump) {
243
+ if (shouldVersionBump && current[nextConfigSymbol].shouldBumpVersion) {
223
244
  current[shouldVersionBumpSymbol]();
224
245
  }
225
246