monorepo-next 9.4.2 → 9.4.3

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.2",
3
+ "version": "9.4.3",
4
4
  "description": "Detach monorepo packages from normal linking",
5
5
  "bin": {
6
6
  "next": "bin/next.js"
@@ -11,7 +11,7 @@ const semver = require('semver');
11
11
  const dependencyTypes = require('./dependency-types');
12
12
  const { loadPackageConfig } = require('./config');
13
13
  const debug = require('./debug');
14
- const { createLogger } = require('./log');
14
+ const { createSyncLogger, createAsyncLogger } = require('./log');
15
15
 
16
16
  const defaultReleaseType = 'patch';
17
17
 
@@ -306,18 +306,19 @@ async function buildReleaseGraph({
306
306
  shouldInheritGreaterReleaseType,
307
307
  shouldExcludeDevChanges,
308
308
  }) {
309
- let log = createLogger(_debug);
309
+ let logSync = createSyncLogger(_debug);
310
+ let logAsync = createAsyncLogger(_debug);
310
311
 
311
312
  let releaseTrees = {};
312
313
 
313
- await log(firstPass, {
314
+ await logAsync(firstPass, {
314
315
  releaseTrees,
315
316
  packagesWithChanges,
316
317
  });
317
318
 
318
319
  // only packages with changes have been analyzed
319
320
 
320
- await log(secondPass, {
321
+ await logAsync(secondPass, {
321
322
  releaseTrees,
322
323
  packagesWithChanges,
323
324
  shouldBumpInRangeDependencies,
@@ -327,7 +328,7 @@ async function buildReleaseGraph({
327
328
 
328
329
  // packages without changes, but need to be analyzed because of options
329
330
 
330
- log(thirdPass, {
331
+ logSync(thirdPass, {
331
332
  releaseTrees,
332
333
  packagesWithChanges,
333
334
  shouldInheritGreaterReleaseType,
@@ -336,7 +337,7 @@ async function buildReleaseGraph({
336
337
 
337
338
  // dependents have now inherited release type
338
339
 
339
- log(fourthPass, {
340
+ logSync(fourthPass, {
340
341
  releaseTrees,
341
342
  packagesWithChanges,
342
343
  shouldBumpInRangeDependencies,
package/src/log.js CHANGED
@@ -2,24 +2,56 @@
2
2
 
3
3
  const _debug = require('./debug');
4
4
 
5
- function createLogger(debug = _debug) {
6
- return async function log(callback, ...args) {
7
- let _debug = debug.extend(callback.name);
5
+ function prepare(callback, debug = _debug) {
6
+ let _debug = debug.extend(callback.name);
7
+
8
+ _debug('begin');
9
+
10
+ let before = new Date();
11
+
12
+ return {
13
+ debug: _debug,
14
+ before,
15
+ };
16
+ }
8
17
 
9
- _debug('begin');
18
+ function finish(debug, before) {
19
+ let elapsed = new Date() - before;
20
+
21
+ debug(`end in ${elapsed}ms`);
22
+ }
10
23
 
11
- let before = new Date();
24
+ function createSyncLogger(debug) {
25
+ return function log(callback, ...args) {
26
+ let {
27
+ debug: _debug,
28
+ before,
29
+ } = prepare(callback, debug);
12
30
 
13
31
  try {
14
- return await callback(...args);
32
+ return callback.apply(this, args);
15
33
  } finally {
16
- let elapsed = new Date() - before;
34
+ finish(_debug, before);
35
+ }
36
+ };
37
+ }
17
38
 
18
- _debug(`end in ${elapsed}ms`);
39
+ function createAsyncLogger(debug) {
40
+ return async function log(callback, ...args) {
41
+ let {
42
+ debug: _debug,
43
+ before,
44
+ } = prepare(callback, debug);
45
+
46
+ try {
47
+ return await callback.apply(this, args);
48
+ } finally {
49
+ finish(_debug, before);
19
50
  }
20
51
  };
21
52
  }
22
53
 
23
54
  module.exports = {
24
- createLogger,
55
+ createSyncLogger,
56
+ createAsyncLogger,
25
57
  };
package/src/release.js CHANGED
@@ -18,7 +18,7 @@ const {
18
18
  const semver = require('semver');
19
19
  const { builder } = require('../bin/commands/release');
20
20
  const debug = require('./debug');
21
- const { createLogger } = require('./log');
21
+ const { createAsyncLogger } = require('./log');
22
22
 
23
23
  async function release({
24
24
  cwd = process.cwd(),
@@ -43,7 +43,7 @@ async function release({
43
43
  cached,
44
44
  } = {}) {
45
45
  let _debug = debug.extend(release.name);
46
- let log = createLogger(_debug);
46
+ let logAsync = createAsyncLogger(_debug);
47
47
 
48
48
  let currentBranch = await getCurrentBranch(cwd);
49
49
  if (currentBranch !== defaultBranch) {
@@ -52,9 +52,9 @@ async function release({
52
52
 
53
53
  let workspaceCwd = await getWorkspaceCwd(cwd);
54
54
 
55
- let workspaceMeta = await log(buildDepGraph, { workspaceCwd });
55
+ let workspaceMeta = await logAsync(buildDepGraph, { workspaceCwd });
56
56
 
57
- let packagesWithChanges = await log(buildChangeGraph, {
57
+ let packagesWithChanges = await logAsync(buildChangeGraph, {
58
58
  workspaceMeta,
59
59
  shouldExcludeDevChanges,
60
60
  cached,
@@ -69,7 +69,7 @@ async function release({
69
69
  return;
70
70
  }
71
71
 
72
- let releaseTrees = await log(buildReleaseGraph, {
72
+ let releaseTrees = await logAsync(buildReleaseGraph, {
73
73
  debug: _debug,
74
74
  packagesWithChanges,
75
75
  shouldBumpInRangeDependencies,