@teambit/snapping 0.0.21 → 0.0.24

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.
@@ -10,16 +10,16 @@ export declare class SnapCmd implements Command {
10
10
  private: boolean;
11
11
  migration: boolean;
12
12
  constructor(docsDomain: string, snapping: SnappingMain);
13
- report([id]: string[], { message, all, force, verbose, ignoreIssues, build, skipTests, skipAutoSnap, disableSnapPipeline, forceDeploy, }: {
13
+ report([id]: string[], { message, all, force, ignoreIssues, build, skipTests, skipAutoSnap, disableSnapPipeline, forceDeploy, unmodified, }: {
14
14
  message?: string;
15
15
  all?: boolean;
16
16
  force?: boolean;
17
- verbose?: boolean;
18
17
  ignoreIssues?: string;
19
18
  build?: boolean;
20
19
  skipTests?: boolean;
21
20
  skipAutoSnap?: boolean;
22
21
  disableSnapPipeline?: boolean;
23
22
  forceDeploy?: boolean;
23
+ unmodified?: boolean;
24
24
  }): Promise<string>;
25
25
  }
package/dist/snap-cmd.js CHANGED
@@ -79,9 +79,9 @@ class SnapCmd {
79
79
  (0, _defineProperty2().default)(this, "name", 'snap [id]');
80
80
  (0, _defineProperty2().default)(this, "description", void 0);
81
81
  (0, _defineProperty2().default)(this, "alias", '');
82
- (0, _defineProperty2().default)(this, "options", [['m', 'message <message>', 'log message describing the user changes'], ['a', 'all', 'snap all new and modified components'], ['f', 'force', 'force-snap even if tests are failing and even when component has not changed'], ['v', 'verbose', 'show specs output on failure'], ['', 'build', 'Harmony only. run the pipeline build and complete the tag'], ['', 'skip-tests', 'skip running component tests during snap process'], ['', 'skip-auto-snap', 'skip auto snapping dependents'], ['', 'disable-snap-pipeline', 'skip the snap pipeline'], ['', 'force-deploy', 'Harmony only. run the deploy pipeline although the build failed'], ['i', 'ignore-issues [issues]', `ignore component issues (shown in "bit status" as "issues found"), issues to ignore:
82
+ (0, _defineProperty2().default)(this, "options", [['m', 'message <message>', 'log message describing the user changes'], ['', 'unmodified', 'include unmodified components (by default, only new and modified components are snapped)'], ['', 'build', 'Harmony only. run the pipeline build and complete the tag'], ['', 'skip-tests', 'skip running component tests during snap process'], ['', 'skip-auto-snap', 'skip auto snapping dependents'], ['', 'disable-snap-pipeline', 'skip the snap pipeline'], ['', 'force-deploy', 'Harmony only. run the deploy pipeline although the build failed'], ['i', 'ignore-issues [issues]', `ignore component issues (shown in "bit status" as "issues found"), issues to ignore:
83
83
  [${Object.keys(_componentIssues().IssuesClasses).join(', ')}]
84
- to ignore multiple issues, separate them by a comma and wrap with quotes. to ignore all issues, specify "*".`]]);
84
+ to ignore multiple issues, separate them by a comma and wrap with quotes. to ignore all issues, specify "*".`], ['a', 'all', 'DEPRECATED (not needed anymore, it is the default now). snap all new and modified components'], ['f', 'force', 'DEPRECATED (use "--skip-tests" or "--unmodified" instead). force-snap even if tests are failing and even when component has not changed']]);
85
85
  (0, _defineProperty2().default)(this, "loader", true);
86
86
  (0, _defineProperty2().default)(this, "private", true);
87
87
  (0, _defineProperty2().default)(this, "migration", true);
@@ -94,41 +94,42 @@ ${(0, _constants().WILDCARD_HELP)('snap')}`;
94
94
  message = '',
95
95
  all = false,
96
96
  force = false,
97
- verbose = false,
98
97
  ignoreIssues,
99
98
  build,
100
99
  skipTests = false,
101
100
  skipAutoSnap = false,
102
101
  disableSnapPipeline = false,
103
- forceDeploy = false
102
+ forceDeploy = false,
103
+ unmodified = false
104
104
  }) {
105
105
  build = (0, _featureToggle().isFeatureEnabled)(_featureToggle().BUILD_ON_CI) ? Boolean(build) : true;
106
+ const disableTagAndSnapPipelines = disableSnapPipeline;
106
107
 
107
- if (!id && !all) {
108
- throw new (_bitError().BitError)('missing [id]. to snap all components, please use --all flag');
108
+ if (disableTagAndSnapPipelines && forceDeploy) {
109
+ throw new (_bitError().BitError)('you can use either force-deploy or disable-snap-pipeline, but not both');
109
110
  }
110
111
 
111
- if (id && all) {
112
- throw new (_bitError().BitError)('you can use either a specific component [id] to snap a particular component or --all flag to snap them all');
112
+ if (all) {
113
+ // eslint-disable-next-line no-console
114
+ console.warn(_chalk().default.yellow(`--all is deprecated, please omit it. "bit snap" by default will snap all new and modified components`));
113
115
  }
114
116
 
115
- const disableTagAndSnapPipelines = disableSnapPipeline;
116
-
117
- if (disableTagAndSnapPipelines && forceDeploy) {
118
- throw new (_bitError().BitError)('you can use either force-deploy or disable-snap-pipeline, but not both');
117
+ if (force) {
118
+ // eslint-disable-next-line no-console
119
+ console.warn(_chalk().default.yellow(`--force is deprecated, use either --skip-tests or --unmodified depending on the use case`));
120
+ if (id) unmodified = true;
119
121
  }
120
122
 
121
123
  const results = await this.snapping.snap({
122
124
  id,
123
125
  message,
124
- force,
125
- verbose,
126
126
  ignoreIssues,
127
127
  build,
128
128
  skipTests,
129
129
  skipAutoSnap,
130
130
  disableTagAndSnapPipelines,
131
- forceDeploy
131
+ forceDeploy,
132
+ unmodified
132
133
  });
133
134
  if (!results) return _chalk().default.yellow(_constants().NOTHING_TO_SNAP_MSG);
134
135
  const {
@@ -1 +1 @@
1
- {"version":3,"sources":["snap-cmd.ts"],"names":["SnapCmd","constructor","docsDomain","snapping","Object","keys","IssuesClasses","join","description","report","id","message","all","force","verbose","ignoreIssues","build","skipTests","skipAutoSnap","disableSnapPipeline","forceDeploy","BUILD_ON_CI","Boolean","BitError","disableTagAndSnapPipelines","results","snap","chalk","yellow","NOTHING_TO_SNAP_MSG","snappedComponents","autoSnappedResults","warnings","newComponents","laneName","changedComponents","filter","component","searchWithoutVersion","addedComponents","autoTaggedCount","length","warningsOutput","tagExplanation","outputComponents","comps","map","componentOutput","toString","autoTag","result","triggeredBy","searchWithoutScopeAndVersion","autoTagComp","a","AUTO_SNAPPED_MSG","outputIfExists","label","explanation","components","underline","laneStr","green"],"mappings":"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","sourcesContent":["import chalk from 'chalk';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { isFeatureEnabled, BUILD_ON_CI } from '@teambit/legacy/dist/api/consumer/lib/feature-toggle';\nimport { WILDCARD_HELP, NOTHING_TO_SNAP_MSG, AUTO_SNAPPED_MSG } from '@teambit/legacy/dist/constants';\nimport { BitError } from '@teambit/bit-error';\nimport { SnapResults } from '@teambit/legacy/dist/api/consumer/lib/snap';\nimport { SnappingMain } from './snapping.main.runtime';\n\nexport class SnapCmd implements Command {\n name = 'snap [id]';\n description: string;\n alias = '';\n options = [\n ['m', 'message <message>', 'log message describing the user changes'],\n ['a', 'all', 'snap all new and modified components'],\n ['f', 'force', 'force-snap even if tests are failing and even when component has not changed'],\n ['v', 'verbose', 'show specs output on failure'],\n ['', 'build', 'Harmony only. run the pipeline build and complete the tag'],\n ['', 'skip-tests', 'skip running component tests during snap process'],\n ['', 'skip-auto-snap', 'skip auto snapping dependents'],\n ['', 'disable-snap-pipeline', 'skip the snap pipeline'],\n ['', 'force-deploy', 'Harmony only. run the deploy pipeline although the build failed'],\n [\n 'i',\n 'ignore-issues [issues]',\n `ignore component issues (shown in \"bit status\" as \"issues found\"), issues to ignore:\n[${Object.keys(IssuesClasses).join(', ')}]\nto ignore multiple issues, separate them by a comma and wrap with quotes. to ignore all issues, specify \"*\".`,\n ],\n ] as CommandOptions;\n loader = true;\n private = true;\n migration = true;\n\n constructor(docsDomain: string, private snapping: SnappingMain) {\n this.description = `record component changes.\nhttps://${docsDomain}/components/snaps\n${WILDCARD_HELP('snap')}`;\n }\n\n async report(\n [id]: string[],\n {\n message = '',\n all = false,\n force = false,\n verbose = false,\n ignoreIssues,\n build,\n skipTests = false,\n skipAutoSnap = false,\n disableSnapPipeline = false,\n forceDeploy = false,\n }: {\n message?: string;\n all?: boolean;\n force?: boolean;\n verbose?: boolean;\n ignoreIssues?: string;\n build?: boolean;\n skipTests?: boolean;\n skipAutoSnap?: boolean;\n disableSnapPipeline?: boolean;\n forceDeploy?: boolean;\n }\n ) {\n build = isFeatureEnabled(BUILD_ON_CI) ? Boolean(build) : true;\n if (!id && !all) {\n throw new BitError('missing [id]. to snap all components, please use --all flag');\n }\n if (id && all) {\n throw new BitError(\n 'you can use either a specific component [id] to snap a particular component or --all flag to snap them all'\n );\n }\n const disableTagAndSnapPipelines = disableSnapPipeline;\n if (disableTagAndSnapPipelines && forceDeploy) {\n throw new BitError('you can use either force-deploy or disable-snap-pipeline, but not both');\n }\n\n const results = await this.snapping.snap({\n id,\n message,\n force,\n verbose,\n ignoreIssues,\n build,\n skipTests,\n skipAutoSnap,\n disableTagAndSnapPipelines,\n forceDeploy,\n });\n\n if (!results) return chalk.yellow(NOTHING_TO_SNAP_MSG);\n const { snappedComponents, autoSnappedResults, warnings, newComponents, laneName }: SnapResults = results;\n const changedComponents = snappedComponents.filter(\n (component) => !newComponents.searchWithoutVersion(component.id)\n );\n const addedComponents = snappedComponents.filter((component) => newComponents.searchWithoutVersion(component.id));\n const autoTaggedCount = autoSnappedResults ? autoSnappedResults.length : 0;\n\n const warningsOutput = warnings && warnings.length ? `${chalk.yellow(warnings.join('\\n'))}\\n\\n` : '';\n const tagExplanation = `\\n(use \"bit export\" to push these components to a remote\")\n(use \"bit untag\" to unstage versions)\\n`;\n\n const outputComponents = (comps) => {\n return comps\n .map((component) => {\n let componentOutput = ` > ${component.id.toString()}`;\n const autoTag = autoSnappedResults.filter((result) =>\n result.triggeredBy.searchWithoutScopeAndVersion(component.id)\n );\n if (autoTag.length) {\n const autoTagComp = autoTag.map((a) => a.component.id.toString());\n componentOutput += `\\n ${AUTO_SNAPPED_MSG}: ${autoTagComp.join(', ')}`;\n }\n return componentOutput;\n })\n .join('\\n');\n };\n\n const outputIfExists = (label, explanation, components) => {\n if (!components.length) return '';\n return `\\n${chalk.underline(label)}\\n(${explanation})\\n${outputComponents(components)}\\n`;\n };\n const laneStr = laneName ? ` on \"${laneName}\" lane` : '';\n\n return (\n warningsOutput +\n chalk.green(`${snappedComponents.length + autoTaggedCount} component(s) snapped${laneStr}`) +\n tagExplanation +\n outputIfExists('new components', 'first version for components', addedComponents) +\n outputIfExists('changed components', 'components that got a version bump', changedComponents)\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["snap-cmd.ts"],"names":["SnapCmd","constructor","docsDomain","snapping","Object","keys","IssuesClasses","join","description","report","id","message","all","force","ignoreIssues","build","skipTests","skipAutoSnap","disableSnapPipeline","forceDeploy","unmodified","BUILD_ON_CI","Boolean","disableTagAndSnapPipelines","BitError","console","warn","chalk","yellow","results","snap","NOTHING_TO_SNAP_MSG","snappedComponents","autoSnappedResults","warnings","newComponents","laneName","changedComponents","filter","component","searchWithoutVersion","addedComponents","autoTaggedCount","length","warningsOutput","tagExplanation","outputComponents","comps","map","componentOutput","toString","autoTag","result","triggeredBy","searchWithoutScopeAndVersion","autoTagComp","a","AUTO_SNAPPED_MSG","outputIfExists","label","explanation","components","underline","laneStr","green"],"mappings":"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","sourcesContent":["import chalk from 'chalk';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { isFeatureEnabled, BUILD_ON_CI } from '@teambit/legacy/dist/api/consumer/lib/feature-toggle';\nimport { WILDCARD_HELP, NOTHING_TO_SNAP_MSG, AUTO_SNAPPED_MSG } from '@teambit/legacy/dist/constants';\nimport { BitError } from '@teambit/bit-error';\nimport { SnapResults } from '@teambit/legacy/dist/api/consumer/lib/snap';\nimport { SnappingMain } from './snapping.main.runtime';\n\nexport class SnapCmd implements Command {\n name = 'snap [id]';\n description: string;\n alias = '';\n options = [\n ['m', 'message <message>', 'log message describing the user changes'],\n ['', 'unmodified', 'include unmodified components (by default, only new and modified components are snapped)'],\n ['', 'build', 'Harmony only. run the pipeline build and complete the tag'],\n ['', 'skip-tests', 'skip running component tests during snap process'],\n ['', 'skip-auto-snap', 'skip auto snapping dependents'],\n ['', 'disable-snap-pipeline', 'skip the snap pipeline'],\n ['', 'force-deploy', 'Harmony only. run the deploy pipeline although the build failed'],\n [\n 'i',\n 'ignore-issues [issues]',\n `ignore component issues (shown in \"bit status\" as \"issues found\"), issues to ignore:\n[${Object.keys(IssuesClasses).join(', ')}]\nto ignore multiple issues, separate them by a comma and wrap with quotes. to ignore all issues, specify \"*\".`,\n ],\n ['a', 'all', 'DEPRECATED (not needed anymore, it is the default now). snap all new and modified components'],\n [\n 'f',\n 'force',\n 'DEPRECATED (use \"--skip-tests\" or \"--unmodified\" instead). force-snap even if tests are failing and even when component has not changed',\n ],\n ] as CommandOptions;\n loader = true;\n private = true;\n migration = true;\n\n constructor(docsDomain: string, private snapping: SnappingMain) {\n this.description = `record component changes.\nhttps://${docsDomain}/components/snaps\n${WILDCARD_HELP('snap')}`;\n }\n\n async report(\n [id]: string[],\n {\n message = '',\n all = false,\n force = false,\n ignoreIssues,\n build,\n skipTests = false,\n skipAutoSnap = false,\n disableSnapPipeline = false,\n forceDeploy = false,\n unmodified = false,\n }: {\n message?: string;\n all?: boolean;\n force?: boolean;\n ignoreIssues?: string;\n build?: boolean;\n skipTests?: boolean;\n skipAutoSnap?: boolean;\n disableSnapPipeline?: boolean;\n forceDeploy?: boolean;\n unmodified?: boolean;\n }\n ) {\n build = isFeatureEnabled(BUILD_ON_CI) ? Boolean(build) : true;\n const disableTagAndSnapPipelines = disableSnapPipeline;\n if (disableTagAndSnapPipelines && forceDeploy) {\n throw new BitError('you can use either force-deploy or disable-snap-pipeline, but not both');\n }\n if (all) {\n // eslint-disable-next-line no-console\n console.warn(\n chalk.yellow(\n `--all is deprecated, please omit it. \"bit snap\" by default will snap all new and modified components`\n )\n );\n }\n if (force) {\n // eslint-disable-next-line no-console\n console.warn(\n chalk.yellow(`--force is deprecated, use either --skip-tests or --unmodified depending on the use case`)\n );\n if (id) unmodified = true;\n }\n\n const results = await this.snapping.snap({\n id,\n message,\n ignoreIssues,\n build,\n skipTests,\n skipAutoSnap,\n disableTagAndSnapPipelines,\n forceDeploy,\n unmodified,\n });\n\n if (!results) return chalk.yellow(NOTHING_TO_SNAP_MSG);\n const { snappedComponents, autoSnappedResults, warnings, newComponents, laneName }: SnapResults = results;\n const changedComponents = snappedComponents.filter(\n (component) => !newComponents.searchWithoutVersion(component.id)\n );\n const addedComponents = snappedComponents.filter((component) => newComponents.searchWithoutVersion(component.id));\n const autoTaggedCount = autoSnappedResults ? autoSnappedResults.length : 0;\n\n const warningsOutput = warnings && warnings.length ? `${chalk.yellow(warnings.join('\\n'))}\\n\\n` : '';\n const tagExplanation = `\\n(use \"bit export\" to push these components to a remote\")\n(use \"bit untag\" to unstage versions)\\n`;\n\n const outputComponents = (comps) => {\n return comps\n .map((component) => {\n let componentOutput = ` > ${component.id.toString()}`;\n const autoTag = autoSnappedResults.filter((result) =>\n result.triggeredBy.searchWithoutScopeAndVersion(component.id)\n );\n if (autoTag.length) {\n const autoTagComp = autoTag.map((a) => a.component.id.toString());\n componentOutput += `\\n ${AUTO_SNAPPED_MSG}: ${autoTagComp.join(', ')}`;\n }\n return componentOutput;\n })\n .join('\\n');\n };\n\n const outputIfExists = (label, explanation, components) => {\n if (!components.length) return '';\n return `\\n${chalk.underline(label)}\\n(${explanation})\\n${outputComponents(components)}\\n`;\n };\n const laneStr = laneName ? ` on \"${laneName}\" lane` : '';\n\n return (\n warningsOutput +\n chalk.green(`${snappedComponents.length + autoTaggedCount} component(s) snapped${laneStr}`) +\n tagExplanation +\n outputIfExists('new components', 'first version for components', addedComponents) +\n outputIfExists('changed components', 'components that got a version bump', changedComponents)\n );\n }\n}\n"]}
@@ -19,11 +19,11 @@ export declare class SnappingMain {
19
19
  * with a valid semver to that version.
20
20
  * tag can be done only on main, not on a lane.
21
21
  */
22
- tag({ ids, message, ver, all, editor, snapped, patch, minor, major, preRelease, force, verbose, ignoreIssues, ignoreNewestVersion, skipTests, skipAutoTag, scope, build, soft, persist, forceDeploy, incrementBy, disableTagAndSnapPipelines, }: {
22
+ tag({ ids, message, version, editor, snapped, patch, minor, major, preRelease, ignoreIssues, ignoreNewestVersion, skipTests, skipAutoTag, build, unmodified, soft, persist, forceDeploy, incrementBy, disableTagAndSnapPipelines, }: {
23
23
  ids?: string[];
24
24
  all?: boolean | string;
25
- snapped?: boolean | string;
26
- ver?: string;
25
+ snapped?: boolean;
26
+ version?: string;
27
27
  patch?: boolean;
28
28
  minor?: boolean;
29
29
  major?: boolean;
@@ -37,19 +37,18 @@ export declare class SnappingMain {
37
37
  */
38
38
  snap({ id, // @todo: rename to "patterns"
39
39
  legacyBitIds, // @todo: change to ComponentID[]. pass only if have the ids already parsed.
40
- resolveUnmerged, message, force, verbose, ignoreIssues, skipTests, skipAutoSnap, build, disableTagAndSnapPipelines, forceDeploy, }: {
40
+ resolveUnmerged, message, ignoreIssues, skipTests, skipAutoSnap, build, disableTagAndSnapPipelines, forceDeploy, unmodified, }: {
41
41
  id?: string;
42
42
  legacyBitIds?: BitIds;
43
43
  resolveUnmerged?: boolean;
44
44
  message?: string;
45
- force?: boolean;
46
- verbose?: boolean;
47
45
  ignoreIssues?: string;
48
46
  build: boolean;
49
47
  skipTests?: boolean;
50
48
  skipAutoSnap?: boolean;
51
49
  disableTagAndSnapPipelines?: boolean;
52
50
  forceDeploy?: boolean;
51
+ unmodified?: boolean;
53
52
  }): Promise<SnapResults | null>;
54
53
  private loadComponentsForTag;
55
54
  private throwForComponentIssues;
@@ -41,16 +41,6 @@ function _cli() {
41
41
  return data;
42
42
  }
43
43
 
44
- function _utils() {
45
- const data = require("@teambit/legacy/dist/utils");
46
-
47
- _utils = function () {
48
- return data;
49
- };
50
-
51
- return data;
52
- }
53
-
54
44
  function _featureToggle() {
55
45
  const data = require("@teambit/legacy/dist/api/consumer/lib/feature-toggle");
56
46
 
@@ -372,22 +362,19 @@ class SnappingMain {
372
362
  async tag({
373
363
  ids = [],
374
364
  message = '',
375
- ver,
376
- all = false,
365
+ version,
377
366
  editor = '',
378
367
  snapped = false,
379
368
  patch,
380
369
  minor,
381
370
  major,
382
371
  preRelease,
383
- force = false,
384
- verbose = false,
385
372
  ignoreIssues,
386
373
  ignoreNewestVersion = false,
387
374
  skipTests = false,
388
375
  skipAutoTag = false,
389
- scope,
390
376
  build,
377
+ unmodified = false,
391
378
  soft = false,
392
379
  persist = false,
393
380
  forceDeploy = false,
@@ -397,29 +384,10 @@ class SnappingMain {
397
384
  build = (0, _featureToggle().isFeatureEnabled)(_featureToggle().BUILD_ON_CI) ? Boolean(build) : true;
398
385
  if (soft) build = false;
399
386
 
400
- function getVersion() {
401
- if (scope && (0, _utils().isString)(scope)) return scope;
402
- if (all && (0, _utils().isString)(all)) return all;
403
- if (snapped && (0, _utils().isString)(snapped)) return snapped;
404
- return ver;
405
- }
406
-
407
- if (!ids.length && !all && !snapped && !scope && !persist) {
408
- throw new (_bitError().BitError)('missing [id]. to tag all components, please use --all flag');
409
- }
410
-
411
- if (ids.length && all) {
412
- throw new (_bitError().BitError)('you can use either a specific component [id] to tag a particular component or --all flag to tag them all');
413
- }
414
-
415
387
  if (disableTagAndSnapPipelines && forceDeploy) {
416
388
  throw new (_bitError().BitError)('you can use either force-deploy or disable-tag-pipeline, but not both');
417
389
  }
418
390
 
419
- if (all && persist) {
420
- throw new (_bitError().BitError)('you can use either --all or --persist, but not both');
421
- }
422
-
423
391
  if (editor && persist) {
424
392
  throw new (_bitError().BitError)('you can use either --editor or --persist, but not both');
425
393
  }
@@ -436,15 +404,12 @@ class SnappingMain {
436
404
 
437
405
  let releaseType = _constants().DEFAULT_BIT_RELEASE_TYPE;
438
406
 
439
- const includeImported = Boolean(scope && all);
440
407
  if (major) releaseType = 'major';else if (minor) releaseType = 'minor';else if (patch) releaseType = 'patch';else if (preRelease) releaseType = 'prerelease';
441
- const exactVersion = getVersion();
442
- all = Boolean(all);
443
- snapped = Boolean(snapped);
408
+ const exactVersion = version;
444
409
  preRelease = typeof preRelease === 'string' ? preRelease : '';
445
410
  if (!this.workspace) throw new (_exceptions().ConsumerNotFound)();
446
411
  const idsHasWildcard = (0, _hasWildcard().default)(ids);
447
- const isAll = Boolean(all || scope || idsHasWildcard);
412
+ const isAll = Boolean(!ids.length || idsHasWildcard);
448
413
  const validExactVersion = (0, _semverHelper().validateVersion)(exactVersion);
449
414
  const consumer = this.workspace.consumer;
450
415
  const componentsList = new (_componentsList().default)(consumer);
@@ -455,7 +420,7 @@ class SnappingMain {
455
420
  const {
456
421
  bitIds,
457
422
  warnings
458
- } = await this.getComponentsToTag(Boolean(scope), exactVersion, includeImported, persist, force, ids, snapped);
423
+ } = await this.getComponentsToTag(unmodified, exactVersion, persist, ids, snapped);
459
424
  if (_ramda().default.isEmpty(bitIds)) return null;
460
425
 
461
426
  const legacyBitIds = _bitId().BitIds.fromArray(bitIds);
@@ -494,11 +459,9 @@ class SnappingMain {
494
459
  exactVersion: validExactVersion,
495
460
  releaseType,
496
461
  preRelease,
497
- force,
498
462
  consumer: this.workspace.consumer,
499
463
  ignoreNewestVersion,
500
464
  skipTests,
501
- verbose,
502
465
  skipAutoTag,
503
466
  soft,
504
467
  build,
@@ -541,14 +504,13 @@ class SnappingMain {
541
504
  // @todo: change to ComponentID[]. pass only if have the ids already parsed.
542
505
  resolveUnmerged = false,
543
506
  message = '',
544
- force = false,
545
- verbose = false,
546
507
  ignoreIssues,
547
508
  skipTests = false,
548
509
  skipAutoSnap = false,
549
510
  build,
550
511
  disableTagAndSnapPipelines = false,
551
- forceDeploy = false
512
+ forceDeploy = false,
513
+ unmodified = false
552
514
  }) {
553
515
  if (!this.workspace) throw new (_exceptions().ConsumerNotFound)();
554
516
  if (id && legacyBitIds) throw new Error(`please pass either id or legacyBitIds, not both`);
@@ -578,10 +540,8 @@ class SnappingMain {
578
540
  ignoreNewestVersion: false,
579
541
  scope: this.workspace.scope.legacyScope,
580
542
  message,
581
- force,
582
543
  consumer: this.workspace.consumer,
583
544
  skipTests,
584
- verbose,
585
545
  skipAutoTag: skipAutoSnap,
586
546
  persist: true,
587
547
  soft: false,
@@ -609,7 +569,7 @@ class SnappingMain {
609
569
  if (id && !idHasWildcard) {
610
570
  const bitId = consumer.getParsedId(id);
611
571
 
612
- if (!force) {
572
+ if (!unmodified) {
613
573
  const componentStatus = await consumer.getComponentStatusById(bitId); // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!
614
574
 
615
575
  if (componentStatus.modified === false) return null;
@@ -618,10 +578,10 @@ class SnappingMain {
618
578
  return new (_bitId().BitIds)(bitId);
619
579
  }
620
580
 
621
- const tagPendingComponents = await componentsList.listTagPendingComponents(); // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!
622
-
581
+ const tagPendingComponents = unmodified ? await componentsList.listPotentialTagAllWorkspace() : await componentsList.listTagPendingComponents();
623
582
  if (_ramda().default.isEmpty(tagPendingComponents)) return null;
624
- return idHasWildcard ? _componentsList().default.filterComponentsByWildcard(tagPendingComponents, id) : tagPendingComponents;
583
+ const bitIds = idHasWildcard ? _componentsList().default.filterComponentsByWildcard(tagPendingComponents, id) : tagPendingComponents;
584
+ return _bitId().BitIds.fromArray(bitIds);
625
585
  }
626
586
  }
627
587
 
@@ -739,7 +699,7 @@ class SnappingMain {
739
699
  });
740
700
  }
741
701
 
742
- async getComponentsToTag(isAllScope, exactVersion, includeImported, persist, force, ids, snapped) {
702
+ async getComponentsToTag(includeUnmodified, exactVersion, persist, ids, snapped) {
743
703
  const warnings = [];
744
704
  const componentsList = new (_componentsList().default)(this.workspace.consumer);
745
705
 
@@ -751,7 +711,7 @@ class SnappingMain {
751
711
  };
752
712
  }
753
713
 
754
- const tagPendingComponents = isAllScope ? await componentsList.listTagPendingOfAllScope(includeImported) : await componentsList.listTagPendingComponents();
714
+ const tagPendingComponents = includeUnmodified ? await componentsList.listPotentialTagAllWorkspace() : await componentsList.listTagPendingComponents();
755
715
  const snappedComponents = await componentsList.listSnappedComponentsOnMain();
756
716
  const snappedComponentsIds = snappedComponents.map(c => c.toBitId());
757
717
 
@@ -768,7 +728,7 @@ class SnappingMain {
768
728
 
769
729
  const bitId = this.workspace.consumer.getParsedId(idWithoutVer);
770
730
 
771
- if (!force) {
731
+ if (!includeUnmodified) {
772
732
  const componentStatus = await this.workspace.consumer.getComponentStatusById(bitId);
773
733
  if (componentStatus.modified === false) return null;
774
734
  }
@@ -790,7 +750,7 @@ class SnappingMain {
790
750
 
791
751
  tagPendingComponents.push(...snappedComponentsIds);
792
752
 
793
- if (isAllScope && exactVersion) {
753
+ if (includeUnmodified && exactVersion) {
794
754
  const tagPendingComponentsLatest = await this.workspace.scope.legacyScope.latestVersions(tagPendingComponents, false);
795
755
  tagPendingComponentsLatest.forEach(componentId => {
796
756
  if (componentId.version && _semver().default.valid(componentId.version) && _semver().default.gt(componentId.version, exactVersion)) {
@@ -1 +1 @@
1
- {"version":3,"sources":["snapping.main.runtime.ts"],"names":["HooksManagerInstance","HooksManager","getInstance","SnappingMain","constructor","workspace","logger","issues","insights","tag","ids","message","ver","all","editor","snapped","patch","minor","major","preRelease","force","verbose","ignoreIssues","ignoreNewestVersion","skipTests","skipAutoTag","scope","build","soft","persist","forceDeploy","incrementBy","disableTagAndSnapPipelines","BUILD_ON_CI","Boolean","getVersion","length","BitError","releaseFlags","filter","x","releaseType","DEFAULT_BIT_RELEASE_TYPE","includeImported","exactVersion","ConsumerNotFound","idsHasWildcard","isAll","validExactVersion","consumer","componentsList","ComponentsList","loader","start","newComponents","listNewComponents","bitIds","warnings","getComponentsToTag","R","isEmpty","legacyBitIds","BitIds","fromArray","isLegacy","debug","toString","Analytics","addBreadCrumb","hashData","componentFsCache","deleteAllDependenciesDataCache","components","loadComponentsForTag","throwForLegacyDependenciesInsideHarmony","throwForComponentIssues","areComponentsMissingFromScope","some","c","componentFromModel","id","hasScope","ComponentsPendingImport","taggedComponents","autoTaggedResults","publishedPackages","consumerComponents","legacyScope","resolveUnmerged","tagResults","isSoftTag","postHook","POST_TAG_ALL_HOOK","POST_TAG_HOOK","triggerHook","setExtraData","concat","onDestroy","snap","skipAutoSnap","Error","LanesIsDisabled","getIdsToSnap","isSnap","snapResults","snappedComponents","autoSnappedResults","currentLane","getCurrentLaneId","laneName","isDefault","name","idHasWildcard","bitId","getParsedId","componentStatus","getComponentStatusById","modified","tagPendingComponents","listTagPendingComponents","filterComponentsByWildcard","loadComponents","toVersionLatest","shouldReloadComponents","componentsWithRelativePaths","componentsWithFilesNotDir","componentsWithCustomModuleResolution","forEach","component","componentMap","rootDir","hasRelativePaths","getIssue","IssuesClasses","RelativeComponentsAuthored","hasCustomModuleResolutions","MissingCustomModuleResolutionLinks","trackDir","changeRootDirAndUpdateFilesAccordingly","push","toStringWithoutVersion","FailedLoadForTag","sort","clearCache","reloadedComponents","legacyComponents","delete","issuesToIgnoreFromFlag","split","map","issue","trim","issuesToIgnoreFromConfig","getIssuesToIgnoreGlobally","issuesToIgnore","getManyByLegacy","includes","CircularDependencies","addInsightsAsComponentIssues","removeIgnoredIssuesFromComponents","componentsWithBlockingIssues","shouldBlockTagging","ComponentsHaveIssues","throwForComponent","dependenciesIds","getAllDependenciesIds","Promise","depId","hasVersion","modelComp","getModelComponentIfExist","version","loadVersion","objects","concurrency","isAllScope","softTaggedComponents","listSoftTaggedComponents","listTagPendingOfAllScope","listSnappedComponentsOnMain","snappedComponentsIds","toBitId","idWithoutVer","allIds","changeVersion","flat","tagPendingComponentsLatest","latestVersions","componentId","semver","valid","gt","undefined","provider","cli","community","loggerMain","createLogger","SnappingAspect","snapping","snapCmd","SnapCmd","getBaseDomain","tagCmd","TagCmd","register","WorkspaceAspect","CLIAspect","CommunityAspect","LoggerAspect","IssuesAspect","InsightsAspect","MainRuntime","addRuntime"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAGA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;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","sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { isString } from '@teambit/legacy/dist/utils';\nimport { isFeatureEnabled, BUILD_ON_CI } from '@teambit/legacy/dist/api/consumer/lib/feature-toggle';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport CommunityAspect, { CommunityMain } from '@teambit/community';\nimport WorkspaceAspect, { Workspace } from '@teambit/workspace';\nimport R from 'ramda';\nimport semver, { ReleaseType } from 'semver';\nimport { compact } from 'lodash';\nimport { Analytics } from '@teambit/legacy/dist/analytics/analytics';\nimport { BitId, BitIds } from '@teambit/legacy/dist/bit-id';\nimport { POST_TAG_ALL_HOOK, POST_TAG_HOOK, DEFAULT_BIT_RELEASE_TYPE } from '@teambit/legacy/dist/constants';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport ComponentsList from '@teambit/legacy/dist/consumer/component/components-list';\nimport HooksManager from '@teambit/legacy/dist/hooks';\nimport { TagResults, BasicTagParams } from '@teambit/legacy/dist/api/consumer/lib/tag';\nimport hasWildcard from '@teambit/legacy/dist/utils/string/has-wildcard';\nimport { validateVersion } from '@teambit/legacy/dist/utils/semver-helper';\nimport { ConsumerNotFound } from '@teambit/legacy/dist/consumer/exceptions';\nimport loader from '@teambit/legacy/dist/cli/loader';\nimport tagModelComponent from '@teambit/legacy/dist/scope/component-ops/tag-model-component';\nimport { LanesIsDisabled } from '@teambit/legacy/dist/consumer/lanes/exceptions/lanes-is-disabled';\nimport { SnapResults } from '@teambit/legacy/dist/api/consumer/lib/snap';\nimport ComponentsPendingImport from '@teambit/legacy/dist/consumer/component-ops/exceptions/components-pending-import';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { BitError } from '@teambit/bit-error';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component/consumer-component';\nimport ComponentMap from '@teambit/legacy/dist/consumer/bit-map/component-map';\nimport pMap from 'p-map';\nimport { InsightsAspect, InsightsMain } from '@teambit/insights';\nimport { concurrentComponentsLimit } from '@teambit/legacy/dist/utils/concurrency';\nimport { FailedLoadForTag } from '@teambit/legacy/dist/consumer/component/exceptions/failed-load-for-tag';\nimport IssuesAspect, { IssuesMain } from '@teambit/issues';\nimport { SnapCmd } from './snap-cmd';\nimport { SnappingAspect } from './snapping.aspect';\nimport { TagCmd } from './tag-cmd';\nimport { ComponentsHaveIssues } from './components-have-issues';\n\nconst HooksManagerInstance = HooksManager.getInstance();\n\nexport class SnappingMain {\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private issues: IssuesMain,\n private insights: InsightsMain\n ) {}\n\n /**\n * tag the given component ids or all modified/new components if \"all\" param is set.\n * tag is a similar operation as a snap, which saves the changes into the local scope, but it also creates an alias\n * with a valid semver to that version.\n * tag can be done only on main, not on a lane.\n */\n // eslint-disable-next-line complexity\n async tag({\n ids = [],\n message = '',\n ver,\n all = false,\n editor = '',\n snapped = false,\n patch,\n minor,\n major,\n preRelease,\n force = false,\n verbose = false,\n ignoreIssues,\n ignoreNewestVersion = false,\n skipTests = false,\n skipAutoTag = false,\n scope,\n build,\n soft = false,\n persist = false,\n forceDeploy = false,\n incrementBy = 1,\n disableTagAndSnapPipelines = false,\n }: {\n ids?: string[];\n all?: boolean | string;\n snapped?: boolean | string;\n ver?: string;\n patch?: boolean;\n minor?: boolean;\n major?: boolean;\n ignoreIssues?: string;\n scope?: string | boolean;\n incrementBy?: number;\n } & Partial<BasicTagParams>): Promise<TagResults | null> {\n build = isFeatureEnabled(BUILD_ON_CI) ? Boolean(build) : true;\n if (soft) build = false;\n function getVersion(): string | undefined {\n if (scope && isString(scope)) return scope;\n if (all && isString(all)) return all;\n if (snapped && isString(snapped)) return snapped;\n return ver;\n }\n\n if (!ids.length && !all && !snapped && !scope && !persist) {\n throw new BitError('missing [id]. to tag all components, please use --all flag');\n }\n if (ids.length && all) {\n throw new BitError(\n 'you can use either a specific component [id] to tag a particular component or --all flag to tag them all'\n );\n }\n if (disableTagAndSnapPipelines && forceDeploy) {\n throw new BitError('you can use either force-deploy or disable-tag-pipeline, but not both');\n }\n if (all && persist) {\n throw new BitError('you can use either --all or --persist, but not both');\n }\n if (editor && persist) {\n throw new BitError('you can use either --editor or --persist, but not both');\n }\n if (editor && message) {\n throw new BitError('you can use either --editor or --message, but not both');\n }\n\n const releaseFlags = [patch, minor, major, preRelease].filter((x) => x);\n if (releaseFlags.length > 1) {\n throw new BitError('you can use only one of the following - patch, minor, major, pre-release');\n }\n\n let releaseType: ReleaseType = DEFAULT_BIT_RELEASE_TYPE;\n const includeImported = Boolean(scope && all);\n\n if (major) releaseType = 'major';\n else if (minor) releaseType = 'minor';\n else if (patch) releaseType = 'patch';\n else if (preRelease) releaseType = 'prerelease';\n\n const exactVersion = getVersion();\n all = Boolean(all);\n snapped = Boolean(snapped);\n preRelease = typeof preRelease === 'string' ? preRelease : '';\n\n if (!this.workspace) throw new ConsumerNotFound();\n const idsHasWildcard = hasWildcard(ids);\n const isAll = Boolean(all || scope || idsHasWildcard);\n const validExactVersion = validateVersion(exactVersion);\n const consumer = this.workspace.consumer;\n const componentsList = new ComponentsList(consumer);\n loader.start('determine components to tag...');\n const newComponents = await componentsList.listNewComponents();\n const { bitIds, warnings } = await this.getComponentsToTag(\n Boolean(scope),\n exactVersion,\n includeImported,\n persist,\n force,\n ids,\n snapped\n );\n if (R.isEmpty(bitIds)) return null;\n\n const legacyBitIds = BitIds.fromArray(bitIds);\n\n if (this.workspace.isLegacy) {\n persist = true;\n }\n this.logger.debug(`tagging the following components: ${legacyBitIds.toString()}`);\n Analytics.addBreadCrumb('tag', `tagging the following components: ${Analytics.hashData(legacyBitIds)}`);\n if (!soft) {\n await this.workspace.consumer.componentFsCache.deleteAllDependenciesDataCache();\n }\n const components = await this.loadComponentsForTag(legacyBitIds);\n await this.throwForLegacyDependenciesInsideHarmony(components);\n await this.throwForComponentIssues(components, ignoreIssues);\n const areComponentsMissingFromScope = components.some((c) => !c.componentFromModel && c.id.hasScope());\n if (areComponentsMissingFromScope) {\n throw new ComponentsPendingImport();\n }\n\n const { taggedComponents, autoTaggedResults, publishedPackages } = await tagModelComponent({\n consumerComponents: components,\n ids: legacyBitIds,\n scope: this.workspace.scope.legacyScope,\n message,\n editor,\n exactVersion: validExactVersion,\n releaseType,\n preRelease,\n force,\n consumer: this.workspace.consumer,\n ignoreNewestVersion,\n skipTests,\n verbose,\n skipAutoTag,\n soft,\n build,\n persist,\n resolveUnmerged: false,\n disableTagAndSnapPipelines,\n forceDeploy,\n incrementBy,\n });\n\n const tagResults = { taggedComponents, autoTaggedResults, isSoftTag: soft, publishedPackages };\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n tagResults.warnings = warnings;\n\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n tagResults.newComponents = newComponents;\n const postHook = isAll ? POST_TAG_ALL_HOOK : POST_TAG_HOOK;\n HooksManagerInstance?.triggerHook(postHook, tagResults);\n Analytics.setExtraData(\n 'num_components',\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n R.concat(tagResults.taggedComponents, tagResults.autoTaggedResults, tagResults.newComponents).length\n );\n await consumer.onDestroy();\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n return tagResults;\n }\n\n /**\n * save the local changes of a component(s) into the scope. snap can be done on main or on a lane.\n * once a component is snapped on a lane, it becomes part of it.\n */\n async snap({\n id, // @todo: rename to \"patterns\"\n legacyBitIds, // @todo: change to ComponentID[]. pass only if have the ids already parsed.\n resolveUnmerged = false,\n message = '',\n force = false,\n verbose = false,\n ignoreIssues,\n skipTests = false,\n skipAutoSnap = false,\n build,\n disableTagAndSnapPipelines = false,\n forceDeploy = false,\n }: {\n id?: string;\n legacyBitIds?: BitIds;\n resolveUnmerged?: boolean;\n message?: string;\n force?: boolean;\n verbose?: boolean;\n ignoreIssues?: string;\n build: boolean;\n skipTests?: boolean;\n skipAutoSnap?: boolean;\n disableTagAndSnapPipelines?: boolean;\n forceDeploy?: boolean;\n }): Promise<SnapResults | null> {\n if (!this.workspace) throw new ConsumerNotFound();\n if (id && legacyBitIds) throw new Error(`please pass either id or legacyBitIds, not both`);\n const consumer: Consumer = this.workspace.consumer;\n if (consumer.isLegacy) throw new LanesIsDisabled();\n const componentsList = new ComponentsList(consumer);\n const newComponents = (await componentsList.listNewComponents()) as BitIds;\n const ids = legacyBitIds || (await getIdsToSnap());\n if (!ids) return null;\n this.logger.debug(`snapping the following components: ${ids.toString()}`);\n await this.workspace.consumer.componentFsCache.deleteAllDependenciesDataCache();\n const components = await this.loadComponentsForTag(ids);\n await this.throwForLegacyDependenciesInsideHarmony(components);\n await this.throwForComponentIssues(components, ignoreIssues);\n const areComponentsMissingFromScope = components.some((c) => !c.componentFromModel && c.id.hasScope());\n if (areComponentsMissingFromScope) {\n throw new ComponentsPendingImport();\n }\n\n const { taggedComponents, autoTaggedResults } = await tagModelComponent({\n consumerComponents: components,\n ids,\n ignoreNewestVersion: false,\n scope: this.workspace.scope.legacyScope,\n message,\n force,\n consumer: this.workspace.consumer,\n skipTests,\n verbose,\n skipAutoTag: skipAutoSnap,\n persist: true,\n soft: false,\n build,\n resolveUnmerged,\n isSnap: true,\n disableTagAndSnapPipelines,\n forceDeploy,\n });\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const snapResults: SnapResults = { snappedComponents: taggedComponents, autoSnappedResults: autoTaggedResults };\n\n snapResults.newComponents = newComponents;\n const currentLane = consumer.getCurrentLaneId();\n snapResults.laneName = currentLane.isDefault() ? null : currentLane.name;\n await consumer.onDestroy();\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n return snapResults;\n\n async function getIdsToSnap(): Promise<BitIds> {\n const idHasWildcard = id && hasWildcard(id);\n if (id && !idHasWildcard) {\n const bitId = consumer.getParsedId(id);\n if (!force) {\n const componentStatus = await consumer.getComponentStatusById(bitId);\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n if (componentStatus.modified === false) return null;\n }\n return new BitIds(bitId);\n }\n const tagPendingComponents = await componentsList.listTagPendingComponents();\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n if (R.isEmpty(tagPendingComponents)) return null;\n return idHasWildcard ? ComponentsList.filterComponentsByWildcard(tagPendingComponents, id) : tagPendingComponents;\n }\n }\n\n private async loadComponentsForTag(ids: BitIds): Promise<ConsumerComponent[]> {\n const { components } = await this.workspace.consumer.loadComponents(ids.toVersionLatest());\n if (this.workspace.isLegacy) {\n return components;\n }\n let shouldReloadComponents = false;\n const componentsWithRelativePaths: string[] = [];\n const componentsWithFilesNotDir: string[] = [];\n const componentsWithCustomModuleResolution: string[] = [];\n components.forEach((component) => {\n const componentMap = component.componentMap as ComponentMap;\n if (componentMap.rootDir) return;\n const hasRelativePaths = component.issues?.getIssue(IssuesClasses.RelativeComponentsAuthored);\n const hasCustomModuleResolutions = component.issues?.getIssue(IssuesClasses.MissingCustomModuleResolutionLinks);\n // leaving this because it can be helpful for users upgrade from legacy\n if (componentMap.trackDir && !hasRelativePaths) {\n componentMap.changeRootDirAndUpdateFilesAccordingly(componentMap.trackDir);\n shouldReloadComponents = true;\n return;\n }\n if (hasRelativePaths) {\n componentsWithRelativePaths.push(component.id.toStringWithoutVersion());\n }\n if (!componentMap.trackDir) {\n componentsWithFilesNotDir.push(component.id.toStringWithoutVersion());\n }\n if (hasCustomModuleResolutions) {\n componentsWithCustomModuleResolution.push(component.id.toStringWithoutVersion());\n }\n });\n if (componentsWithRelativePaths.length || componentsWithFilesNotDir.length) {\n throw new FailedLoadForTag(\n componentsWithRelativePaths.sort(),\n componentsWithFilesNotDir.sort(),\n componentsWithCustomModuleResolution.sort()\n );\n }\n if (!shouldReloadComponents) return components;\n this.workspace.clearCache();\n const { components: reloadedComponents } = await this.workspace.consumer.loadComponents(ids);\n return reloadedComponents;\n }\n\n private async throwForComponentIssues(legacyComponents: ConsumerComponent[], ignoreIssues?: string) {\n legacyComponents.forEach((component) => {\n if (this.workspace.isLegacy && component.issues) {\n component.issues.delete(IssuesClasses.RelativeComponentsAuthored);\n }\n });\n if (ignoreIssues === '*') {\n // ignore all issues\n return;\n }\n const issuesToIgnoreFromFlag = ignoreIssues?.split(',').map((issue) => issue.trim()) || [];\n const issuesToIgnoreFromConfig = this.issues.getIssuesToIgnoreGlobally();\n const issuesToIgnore = [...issuesToIgnoreFromFlag, ...issuesToIgnoreFromConfig];\n if (!this.workspace.isLegacy) {\n const components = await this.workspace.getManyByLegacy(legacyComponents);\n if (!issuesToIgnore.includes(IssuesClasses.CircularDependencies.name)) {\n await this.insights.addInsightsAsComponentIssues(components);\n }\n this.issues.removeIgnoredIssuesFromComponents(components);\n }\n\n const componentsWithBlockingIssues = legacyComponents.filter((component) => component.issues?.shouldBlockTagging());\n if (!R.isEmpty(componentsWithBlockingIssues)) {\n throw new ComponentsHaveIssues(componentsWithBlockingIssues);\n }\n }\n\n private async throwForLegacyDependenciesInsideHarmony(components: ConsumerComponent[]) {\n if (this.workspace.isLegacy) {\n return;\n }\n const throwForComponent = async (component: ConsumerComponent) => {\n const dependenciesIds = component.getAllDependenciesIds();\n const legacyScope = this.workspace.scope.legacyScope;\n await Promise.all(\n dependenciesIds.map(async (depId) => {\n if (!depId.hasVersion()) return;\n const modelComp = await legacyScope.getModelComponentIfExist(depId);\n if (!modelComp) return;\n const version = await modelComp.loadVersion(depId.version as string, legacyScope.objects);\n if (version.isLegacy) {\n throw new Error(\n `unable tagging \"${component.id.toString()}\", its dependency \"${depId.toString()}\" is legacy`\n );\n }\n })\n );\n };\n await pMap(components, (component) => throwForComponent(component), { concurrency: concurrentComponentsLimit() });\n }\n\n private async getComponentsToTag(\n isAllScope: boolean,\n exactVersion: string | undefined,\n includeImported: boolean,\n persist: boolean,\n force: boolean,\n ids: string[],\n snapped: boolean\n ): Promise<{ bitIds: BitId[]; warnings: string[] }> {\n const warnings: string[] = [];\n const componentsList = new ComponentsList(this.workspace.consumer);\n if (persist) {\n const softTaggedComponents = componentsList.listSoftTaggedComponents();\n return { bitIds: softTaggedComponents, warnings: [] };\n }\n\n const tagPendingComponents = isAllScope\n ? await componentsList.listTagPendingOfAllScope(includeImported)\n : await componentsList.listTagPendingComponents();\n\n const snappedComponents = await componentsList.listSnappedComponentsOnMain();\n const snappedComponentsIds = snappedComponents.map((c) => c.toBitId());\n\n if (ids.length) {\n const bitIds = await Promise.all(\n ids.map(async (id) => {\n const [idWithoutVer, version] = id.split('@');\n const idHasWildcard = hasWildcard(id);\n if (idHasWildcard) {\n const allIds = ComponentsList.filterComponentsByWildcard(tagPendingComponents, idWithoutVer);\n return allIds.map((bitId) => bitId.changeVersion(version));\n }\n const bitId = this.workspace.consumer.getParsedId(idWithoutVer);\n if (!force) {\n const componentStatus = await this.workspace.consumer.getComponentStatusById(bitId);\n if (componentStatus.modified === false) return null;\n }\n return bitId.changeVersion(version);\n })\n );\n\n return { bitIds: compact(bitIds.flat()), warnings };\n }\n\n if (snapped) {\n return { bitIds: snappedComponentsIds, warnings };\n }\n\n tagPendingComponents.push(...snappedComponentsIds);\n\n if (isAllScope && exactVersion) {\n const tagPendingComponentsLatest = await this.workspace.scope.legacyScope.latestVersions(\n tagPendingComponents,\n false\n );\n tagPendingComponentsLatest.forEach((componentId) => {\n if (componentId.version && semver.valid(componentId.version) && semver.gt(componentId.version, exactVersion)) {\n warnings.push(`warning: ${componentId.toString()} has a version greater than ${exactVersion}`);\n }\n });\n }\n\n return { bitIds: tagPendingComponents.map((id) => id.changeVersion(undefined)), warnings };\n }\n\n static slots = [];\n static dependencies = [WorkspaceAspect, CLIAspect, CommunityAspect, LoggerAspect, IssuesAspect, InsightsAspect];\n static runtime = MainRuntime;\n static async provider([workspace, cli, community, loggerMain, issues, insights]: [\n Workspace,\n CLIMain,\n CommunityMain,\n LoggerMain,\n IssuesMain,\n InsightsMain\n ]) {\n const logger = loggerMain.createLogger(SnappingAspect.id);\n const snapping = new SnappingMain(workspace, logger, issues, insights);\n const snapCmd = new SnapCmd(community.getBaseDomain(), snapping);\n const tagCmd = new TagCmd(community.getBaseDomain(), snapping);\n cli.register(tagCmd, snapCmd);\n return snapping;\n }\n}\n\nSnappingAspect.addRuntime(SnappingMain);\n\nexport default SnappingMain;\n"]}
1
+ {"version":3,"sources":["snapping.main.runtime.ts"],"names":["HooksManagerInstance","HooksManager","getInstance","SnappingMain","constructor","workspace","logger","issues","insights","tag","ids","message","version","editor","snapped","patch","minor","major","preRelease","ignoreIssues","ignoreNewestVersion","skipTests","skipAutoTag","build","unmodified","soft","persist","forceDeploy","incrementBy","disableTagAndSnapPipelines","BUILD_ON_CI","Boolean","BitError","releaseFlags","filter","x","length","releaseType","DEFAULT_BIT_RELEASE_TYPE","exactVersion","ConsumerNotFound","idsHasWildcard","isAll","validExactVersion","consumer","componentsList","ComponentsList","loader","start","newComponents","listNewComponents","bitIds","warnings","getComponentsToTag","R","isEmpty","legacyBitIds","BitIds","fromArray","isLegacy","debug","toString","Analytics","addBreadCrumb","hashData","componentFsCache","deleteAllDependenciesDataCache","components","loadComponentsForTag","throwForLegacyDependenciesInsideHarmony","throwForComponentIssues","areComponentsMissingFromScope","some","c","componentFromModel","id","hasScope","ComponentsPendingImport","taggedComponents","autoTaggedResults","publishedPackages","consumerComponents","scope","legacyScope","resolveUnmerged","tagResults","isSoftTag","postHook","POST_TAG_ALL_HOOK","POST_TAG_HOOK","triggerHook","setExtraData","concat","onDestroy","snap","skipAutoSnap","Error","LanesIsDisabled","getIdsToSnap","isSnap","snapResults","snappedComponents","autoSnappedResults","currentLane","getCurrentLaneId","laneName","isDefault","name","idHasWildcard","bitId","getParsedId","componentStatus","getComponentStatusById","modified","tagPendingComponents","listPotentialTagAllWorkspace","listTagPendingComponents","filterComponentsByWildcard","loadComponents","toVersionLatest","shouldReloadComponents","componentsWithRelativePaths","componentsWithFilesNotDir","componentsWithCustomModuleResolution","forEach","component","componentMap","rootDir","hasRelativePaths","getIssue","IssuesClasses","RelativeComponentsAuthored","hasCustomModuleResolutions","MissingCustomModuleResolutionLinks","trackDir","changeRootDirAndUpdateFilesAccordingly","push","toStringWithoutVersion","FailedLoadForTag","sort","clearCache","reloadedComponents","legacyComponents","delete","issuesToIgnoreFromFlag","split","map","issue","trim","issuesToIgnoreFromConfig","getIssuesToIgnoreGlobally","issuesToIgnore","getManyByLegacy","includes","CircularDependencies","addInsightsAsComponentIssues","removeIgnoredIssuesFromComponents","componentsWithBlockingIssues","shouldBlockTagging","ComponentsHaveIssues","throwForComponent","dependenciesIds","getAllDependenciesIds","Promise","all","depId","hasVersion","modelComp","getModelComponentIfExist","loadVersion","objects","concurrency","includeUnmodified","softTaggedComponents","listSoftTaggedComponents","listSnappedComponentsOnMain","snappedComponentsIds","toBitId","idWithoutVer","allIds","changeVersion","flat","tagPendingComponentsLatest","latestVersions","componentId","semver","valid","gt","undefined","provider","cli","community","loggerMain","createLogger","SnappingAspect","snapping","snapCmd","SnapCmd","getBaseDomain","tagCmd","TagCmd","register","WorkspaceAspect","CLIAspect","CommunityAspect","LoggerAspect","IssuesAspect","InsightsAspect","MainRuntime","addRuntime"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAGA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;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","sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { isFeatureEnabled, BUILD_ON_CI } from '@teambit/legacy/dist/api/consumer/lib/feature-toggle';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport CommunityAspect, { CommunityMain } from '@teambit/community';\nimport WorkspaceAspect, { Workspace } from '@teambit/workspace';\nimport R from 'ramda';\nimport semver, { ReleaseType } from 'semver';\nimport { compact } from 'lodash';\nimport { Analytics } from '@teambit/legacy/dist/analytics/analytics';\nimport { BitId, BitIds } from '@teambit/legacy/dist/bit-id';\nimport { POST_TAG_ALL_HOOK, POST_TAG_HOOK, DEFAULT_BIT_RELEASE_TYPE } from '@teambit/legacy/dist/constants';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport ComponentsList from '@teambit/legacy/dist/consumer/component/components-list';\nimport HooksManager from '@teambit/legacy/dist/hooks';\nimport { TagResults, BasicTagParams } from '@teambit/legacy/dist/api/consumer/lib/tag';\nimport hasWildcard from '@teambit/legacy/dist/utils/string/has-wildcard';\nimport { validateVersion } from '@teambit/legacy/dist/utils/semver-helper';\nimport { ConsumerNotFound } from '@teambit/legacy/dist/consumer/exceptions';\nimport loader from '@teambit/legacy/dist/cli/loader';\nimport tagModelComponent from '@teambit/legacy/dist/scope/component-ops/tag-model-component';\nimport { LanesIsDisabled } from '@teambit/legacy/dist/consumer/lanes/exceptions/lanes-is-disabled';\nimport { SnapResults } from '@teambit/legacy/dist/api/consumer/lib/snap';\nimport ComponentsPendingImport from '@teambit/legacy/dist/consumer/component-ops/exceptions/components-pending-import';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { BitError } from '@teambit/bit-error';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component/consumer-component';\nimport ComponentMap from '@teambit/legacy/dist/consumer/bit-map/component-map';\nimport pMap from 'p-map';\nimport { InsightsAspect, InsightsMain } from '@teambit/insights';\nimport { concurrentComponentsLimit } from '@teambit/legacy/dist/utils/concurrency';\nimport { FailedLoadForTag } from '@teambit/legacy/dist/consumer/component/exceptions/failed-load-for-tag';\nimport IssuesAspect, { IssuesMain } from '@teambit/issues';\nimport { SnapCmd } from './snap-cmd';\nimport { SnappingAspect } from './snapping.aspect';\nimport { TagCmd } from './tag-cmd';\nimport { ComponentsHaveIssues } from './components-have-issues';\n\nconst HooksManagerInstance = HooksManager.getInstance();\n\nexport class SnappingMain {\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private issues: IssuesMain,\n private insights: InsightsMain\n ) {}\n\n /**\n * tag the given component ids or all modified/new components if \"all\" param is set.\n * tag is a similar operation as a snap, which saves the changes into the local scope, but it also creates an alias\n * with a valid semver to that version.\n * tag can be done only on main, not on a lane.\n */\n // eslint-disable-next-line complexity\n async tag({\n ids = [],\n message = '',\n version,\n editor = '',\n snapped = false,\n patch,\n minor,\n major,\n preRelease,\n ignoreIssues,\n ignoreNewestVersion = false,\n skipTests = false,\n skipAutoTag = false,\n build,\n unmodified = false,\n soft = false,\n persist = false,\n forceDeploy = false,\n incrementBy = 1,\n disableTagAndSnapPipelines = false,\n }: {\n ids?: string[];\n all?: boolean | string;\n snapped?: boolean;\n version?: string;\n patch?: boolean;\n minor?: boolean;\n major?: boolean;\n ignoreIssues?: string;\n scope?: string | boolean;\n incrementBy?: number;\n } & Partial<BasicTagParams>): Promise<TagResults | null> {\n build = isFeatureEnabled(BUILD_ON_CI) ? Boolean(build) : true;\n if (soft) build = false;\n if (disableTagAndSnapPipelines && forceDeploy) {\n throw new BitError('you can use either force-deploy or disable-tag-pipeline, but not both');\n }\n if (editor && persist) {\n throw new BitError('you can use either --editor or --persist, but not both');\n }\n if (editor && message) {\n throw new BitError('you can use either --editor or --message, but not both');\n }\n\n const releaseFlags = [patch, minor, major, preRelease].filter((x) => x);\n if (releaseFlags.length > 1) {\n throw new BitError('you can use only one of the following - patch, minor, major, pre-release');\n }\n\n let releaseType: ReleaseType = DEFAULT_BIT_RELEASE_TYPE;\n\n if (major) releaseType = 'major';\n else if (minor) releaseType = 'minor';\n else if (patch) releaseType = 'patch';\n else if (preRelease) releaseType = 'prerelease';\n\n const exactVersion = version;\n preRelease = typeof preRelease === 'string' ? preRelease : '';\n\n if (!this.workspace) throw new ConsumerNotFound();\n const idsHasWildcard = hasWildcard(ids);\n const isAll = Boolean(!ids.length || idsHasWildcard);\n const validExactVersion = validateVersion(exactVersion);\n const consumer = this.workspace.consumer;\n const componentsList = new ComponentsList(consumer);\n loader.start('determine components to tag...');\n const newComponents = await componentsList.listNewComponents();\n const { bitIds, warnings } = await this.getComponentsToTag(unmodified, exactVersion, persist, ids, snapped);\n if (R.isEmpty(bitIds)) return null;\n\n const legacyBitIds = BitIds.fromArray(bitIds);\n\n if (this.workspace.isLegacy) {\n persist = true;\n }\n this.logger.debug(`tagging the following components: ${legacyBitIds.toString()}`);\n Analytics.addBreadCrumb('tag', `tagging the following components: ${Analytics.hashData(legacyBitIds)}`);\n if (!soft) {\n await this.workspace.consumer.componentFsCache.deleteAllDependenciesDataCache();\n }\n const components = await this.loadComponentsForTag(legacyBitIds);\n await this.throwForLegacyDependenciesInsideHarmony(components);\n await this.throwForComponentIssues(components, ignoreIssues);\n const areComponentsMissingFromScope = components.some((c) => !c.componentFromModel && c.id.hasScope());\n if (areComponentsMissingFromScope) {\n throw new ComponentsPendingImport();\n }\n\n const { taggedComponents, autoTaggedResults, publishedPackages } = await tagModelComponent({\n consumerComponents: components,\n ids: legacyBitIds,\n scope: this.workspace.scope.legacyScope,\n message,\n editor,\n exactVersion: validExactVersion,\n releaseType,\n preRelease,\n consumer: this.workspace.consumer,\n ignoreNewestVersion,\n skipTests,\n skipAutoTag,\n soft,\n build,\n persist,\n resolveUnmerged: false,\n disableTagAndSnapPipelines,\n forceDeploy,\n incrementBy,\n });\n\n const tagResults = { taggedComponents, autoTaggedResults, isSoftTag: soft, publishedPackages };\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n tagResults.warnings = warnings;\n\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n tagResults.newComponents = newComponents;\n const postHook = isAll ? POST_TAG_ALL_HOOK : POST_TAG_HOOK;\n HooksManagerInstance?.triggerHook(postHook, tagResults);\n Analytics.setExtraData(\n 'num_components',\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n R.concat(tagResults.taggedComponents, tagResults.autoTaggedResults, tagResults.newComponents).length\n );\n await consumer.onDestroy();\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n return tagResults;\n }\n\n /**\n * save the local changes of a component(s) into the scope. snap can be done on main or on a lane.\n * once a component is snapped on a lane, it becomes part of it.\n */\n async snap({\n id, // @todo: rename to \"patterns\"\n legacyBitIds, // @todo: change to ComponentID[]. pass only if have the ids already parsed.\n resolveUnmerged = false,\n message = '',\n ignoreIssues,\n skipTests = false,\n skipAutoSnap = false,\n build,\n disableTagAndSnapPipelines = false,\n forceDeploy = false,\n unmodified = false,\n }: {\n id?: string;\n legacyBitIds?: BitIds;\n resolveUnmerged?: boolean;\n message?: string;\n ignoreIssues?: string;\n build: boolean;\n skipTests?: boolean;\n skipAutoSnap?: boolean;\n disableTagAndSnapPipelines?: boolean;\n forceDeploy?: boolean;\n unmodified?: boolean;\n }): Promise<SnapResults | null> {\n if (!this.workspace) throw new ConsumerNotFound();\n if (id && legacyBitIds) throw new Error(`please pass either id or legacyBitIds, not both`);\n const consumer: Consumer = this.workspace.consumer;\n if (consumer.isLegacy) throw new LanesIsDisabled();\n const componentsList = new ComponentsList(consumer);\n const newComponents = (await componentsList.listNewComponents()) as BitIds;\n const ids = legacyBitIds || (await getIdsToSnap());\n if (!ids) return null;\n this.logger.debug(`snapping the following components: ${ids.toString()}`);\n await this.workspace.consumer.componentFsCache.deleteAllDependenciesDataCache();\n const components = await this.loadComponentsForTag(ids);\n await this.throwForLegacyDependenciesInsideHarmony(components);\n await this.throwForComponentIssues(components, ignoreIssues);\n const areComponentsMissingFromScope = components.some((c) => !c.componentFromModel && c.id.hasScope());\n if (areComponentsMissingFromScope) {\n throw new ComponentsPendingImport();\n }\n\n const { taggedComponents, autoTaggedResults } = await tagModelComponent({\n consumerComponents: components,\n ids,\n ignoreNewestVersion: false,\n scope: this.workspace.scope.legacyScope,\n message,\n consumer: this.workspace.consumer,\n skipTests,\n skipAutoTag: skipAutoSnap,\n persist: true,\n soft: false,\n build,\n resolveUnmerged,\n isSnap: true,\n disableTagAndSnapPipelines,\n forceDeploy,\n });\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const snapResults: SnapResults = { snappedComponents: taggedComponents, autoSnappedResults: autoTaggedResults };\n\n snapResults.newComponents = newComponents;\n const currentLane = consumer.getCurrentLaneId();\n snapResults.laneName = currentLane.isDefault() ? null : currentLane.name;\n await consumer.onDestroy();\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n return snapResults;\n\n async function getIdsToSnap(): Promise<BitIds | null> {\n const idHasWildcard = id && hasWildcard(id);\n if (id && !idHasWildcard) {\n const bitId = consumer.getParsedId(id);\n if (!unmodified) {\n const componentStatus = await consumer.getComponentStatusById(bitId);\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n if (componentStatus.modified === false) return null;\n }\n return new BitIds(bitId);\n }\n const tagPendingComponents = unmodified\n ? await componentsList.listPotentialTagAllWorkspace()\n : await componentsList.listTagPendingComponents();\n if (R.isEmpty(tagPendingComponents)) return null;\n const bitIds = idHasWildcard\n ? ComponentsList.filterComponentsByWildcard(tagPendingComponents, id)\n : tagPendingComponents;\n return BitIds.fromArray(bitIds);\n }\n }\n\n private async loadComponentsForTag(ids: BitIds): Promise<ConsumerComponent[]> {\n const { components } = await this.workspace.consumer.loadComponents(ids.toVersionLatest());\n if (this.workspace.isLegacy) {\n return components;\n }\n let shouldReloadComponents = false;\n const componentsWithRelativePaths: string[] = [];\n const componentsWithFilesNotDir: string[] = [];\n const componentsWithCustomModuleResolution: string[] = [];\n components.forEach((component) => {\n const componentMap = component.componentMap as ComponentMap;\n if (componentMap.rootDir) return;\n const hasRelativePaths = component.issues?.getIssue(IssuesClasses.RelativeComponentsAuthored);\n const hasCustomModuleResolutions = component.issues?.getIssue(IssuesClasses.MissingCustomModuleResolutionLinks);\n // leaving this because it can be helpful for users upgrade from legacy\n if (componentMap.trackDir && !hasRelativePaths) {\n componentMap.changeRootDirAndUpdateFilesAccordingly(componentMap.trackDir);\n shouldReloadComponents = true;\n return;\n }\n if (hasRelativePaths) {\n componentsWithRelativePaths.push(component.id.toStringWithoutVersion());\n }\n if (!componentMap.trackDir) {\n componentsWithFilesNotDir.push(component.id.toStringWithoutVersion());\n }\n if (hasCustomModuleResolutions) {\n componentsWithCustomModuleResolution.push(component.id.toStringWithoutVersion());\n }\n });\n if (componentsWithRelativePaths.length || componentsWithFilesNotDir.length) {\n throw new FailedLoadForTag(\n componentsWithRelativePaths.sort(),\n componentsWithFilesNotDir.sort(),\n componentsWithCustomModuleResolution.sort()\n );\n }\n if (!shouldReloadComponents) return components;\n this.workspace.clearCache();\n const { components: reloadedComponents } = await this.workspace.consumer.loadComponents(ids);\n return reloadedComponents;\n }\n\n private async throwForComponentIssues(legacyComponents: ConsumerComponent[], ignoreIssues?: string) {\n legacyComponents.forEach((component) => {\n if (this.workspace.isLegacy && component.issues) {\n component.issues.delete(IssuesClasses.RelativeComponentsAuthored);\n }\n });\n if (ignoreIssues === '*') {\n // ignore all issues\n return;\n }\n const issuesToIgnoreFromFlag = ignoreIssues?.split(',').map((issue) => issue.trim()) || [];\n const issuesToIgnoreFromConfig = this.issues.getIssuesToIgnoreGlobally();\n const issuesToIgnore = [...issuesToIgnoreFromFlag, ...issuesToIgnoreFromConfig];\n if (!this.workspace.isLegacy) {\n const components = await this.workspace.getManyByLegacy(legacyComponents);\n if (!issuesToIgnore.includes(IssuesClasses.CircularDependencies.name)) {\n await this.insights.addInsightsAsComponentIssues(components);\n }\n this.issues.removeIgnoredIssuesFromComponents(components);\n }\n\n const componentsWithBlockingIssues = legacyComponents.filter((component) => component.issues?.shouldBlockTagging());\n if (!R.isEmpty(componentsWithBlockingIssues)) {\n throw new ComponentsHaveIssues(componentsWithBlockingIssues);\n }\n }\n\n private async throwForLegacyDependenciesInsideHarmony(components: ConsumerComponent[]) {\n if (this.workspace.isLegacy) {\n return;\n }\n const throwForComponent = async (component: ConsumerComponent) => {\n const dependenciesIds = component.getAllDependenciesIds();\n const legacyScope = this.workspace.scope.legacyScope;\n await Promise.all(\n dependenciesIds.map(async (depId) => {\n if (!depId.hasVersion()) return;\n const modelComp = await legacyScope.getModelComponentIfExist(depId);\n if (!modelComp) return;\n const version = await modelComp.loadVersion(depId.version as string, legacyScope.objects);\n if (version.isLegacy) {\n throw new Error(\n `unable tagging \"${component.id.toString()}\", its dependency \"${depId.toString()}\" is legacy`\n );\n }\n })\n );\n };\n await pMap(components, (component) => throwForComponent(component), { concurrency: concurrentComponentsLimit() });\n }\n\n private async getComponentsToTag(\n includeUnmodified: boolean,\n exactVersion: string | undefined,\n persist: boolean,\n ids: string[],\n snapped: boolean\n ): Promise<{ bitIds: BitId[]; warnings: string[] }> {\n const warnings: string[] = [];\n const componentsList = new ComponentsList(this.workspace.consumer);\n if (persist) {\n const softTaggedComponents = componentsList.listSoftTaggedComponents();\n return { bitIds: softTaggedComponents, warnings: [] };\n }\n\n const tagPendingComponents = includeUnmodified\n ? await componentsList.listPotentialTagAllWorkspace()\n : await componentsList.listTagPendingComponents();\n\n const snappedComponents = await componentsList.listSnappedComponentsOnMain();\n const snappedComponentsIds = snappedComponents.map((c) => c.toBitId());\n\n if (ids.length) {\n const bitIds = await Promise.all(\n ids.map(async (id) => {\n const [idWithoutVer, version] = id.split('@');\n const idHasWildcard = hasWildcard(id);\n if (idHasWildcard) {\n const allIds = ComponentsList.filterComponentsByWildcard(tagPendingComponents, idWithoutVer);\n return allIds.map((bitId) => bitId.changeVersion(version));\n }\n const bitId = this.workspace.consumer.getParsedId(idWithoutVer);\n if (!includeUnmodified) {\n const componentStatus = await this.workspace.consumer.getComponentStatusById(bitId);\n if (componentStatus.modified === false) return null;\n }\n return bitId.changeVersion(version);\n })\n );\n\n return { bitIds: compact(bitIds.flat()), warnings };\n }\n\n if (snapped) {\n return { bitIds: snappedComponentsIds, warnings };\n }\n\n tagPendingComponents.push(...snappedComponentsIds);\n\n if (includeUnmodified && exactVersion) {\n const tagPendingComponentsLatest = await this.workspace.scope.legacyScope.latestVersions(\n tagPendingComponents,\n false\n );\n tagPendingComponentsLatest.forEach((componentId) => {\n if (componentId.version && semver.valid(componentId.version) && semver.gt(componentId.version, exactVersion)) {\n warnings.push(`warning: ${componentId.toString()} has a version greater than ${exactVersion}`);\n }\n });\n }\n\n return { bitIds: tagPendingComponents.map((id) => id.changeVersion(undefined)), warnings };\n }\n\n static slots = [];\n static dependencies = [WorkspaceAspect, CLIAspect, CommunityAspect, LoggerAspect, IssuesAspect, InsightsAspect];\n static runtime = MainRuntime;\n static async provider([workspace, cli, community, loggerMain, issues, insights]: [\n Workspace,\n CLIMain,\n CommunityMain,\n LoggerMain,\n IssuesMain,\n InsightsMain\n ]) {\n const logger = loggerMain.createLogger(SnappingAspect.id);\n const snapping = new SnappingMain(workspace, logger, issues, insights);\n const snapCmd = new SnapCmd(community.getBaseDomain(), snapping);\n const tagCmd = new TagCmd(community.getBaseDomain(), snapping);\n cli.register(tagCmd, snapCmd);\n return snapping;\n }\n}\n\nSnappingAspect.addRuntime(SnappingMain);\n\nexport default SnappingMain;\n"]}
package/dist/tag-cmd.d.ts CHANGED
@@ -13,10 +13,11 @@ export declare class TagCmd implements Command {
13
13
  migration: boolean;
14
14
  remoteOp: boolean;
15
15
  constructor(docsDomain: string, snapping: SnappingMain);
16
- report([id]: [string[]], { message, ver, all, editor, snapped, patch, minor, major, preRelease, force, verbose, ignoreUnresolvedDependencies, ignoreIssues, ignoreNewestVersion, skipTests, skipAutoTag, scope, build, soft, persist, disableDeployPipeline, disableTagPipeline, forceDeploy, incrementBy, }: {
16
+ report([id]: [string[]], { message, ver, all, editor, snapped, patch, minor, major, preRelease, force, ignoreUnresolvedDependencies, ignoreIssues, ignoreNewestVersion, skipTests, skipAutoTag, scope, unmodified, build, soft, persist, disableDeployPipeline, disableTagPipeline, forceDeploy, incrementBy, }: {
17
17
  all?: boolean | string;
18
- snapped?: boolean | string;
18
+ snapped?: boolean;
19
19
  ver?: string;
20
+ force?: boolean;
20
21
  patch?: boolean;
21
22
  minor?: boolean;
22
23
  major?: boolean;
package/dist/tag-cmd.js CHANGED
@@ -73,12 +73,13 @@ class TagCmd {
73
73
  (0, _defineProperty2().default)(this, "description", void 0);
74
74
  (0, _defineProperty2().default)(this, "alias", 't');
75
75
  (0, _defineProperty2().default)(this, "loader", true);
76
- (0, _defineProperty2().default)(this, "options", [['m', 'message <message>', 'log message describing the user changes'], ['a', 'all [version]', 'tag all new and modified components'], ['s', 'scope [version]', 'tag all components of the current scope'], ['', 'editor [editor]', 'EXPERIMENTAL. open an editor to edit the tag messages per component, optionally specify the editor-name, default to vim'], ['', 'snapped [version]', 'tag components that their head is a snap (not a tag)'], ['', 'ver <version>', 'tag specified components with the given version'], ['p', 'patch', 'increment the patch version number'], ['', 'minor', 'increment the minor version number'], ['', 'major', 'increment the major version number'], ['', 'pre-release [identifier]', 'EXPERIMENTAL. increment a pre-release version (e.g. 1.0.0-dev.1)'], ['f', 'force', 'force-tag even if tests are failing and even when component has not changed'], ['v', 'verbose', 'show specs output on failure'], ['I', 'ignore-newest-version', 'ignore existing of newer versions (default = false)'], ['', 'skip-tests', 'skip running component tests during tag process'], ['', 'skip-auto-tag', 'skip auto tagging dependents'], ['b', 'build', 'EXPERIMENTAL. not needed for now. run the pipeline build and complete the tag'], ['', 'soft', 'do not persist. only keep note of the changes to be made'], ['', 'persist', 'persist the changes generated by --soft tag'], ['', 'disable-deploy-pipeline', 'DEPRECATED. use --disable-tag-pipeline instead'], ['', 'disable-tag-pipeline', 'skip the tag pipeline to avoid publishing the components'], ['', 'force-deploy', 'run the tag pipeline although the build failed'], ['', 'increment-by <number>', '(default to 1) increment semver flag (patch/minor/major) by. e.g. incrementing patch by 2: 0.0.1 -> 0.0.3.'], ['i', 'ignore-issues [issues]', `ignore component issues (shown in "bit status" as "issues found"), issues to ignore:
76
+ (0, _defineProperty2().default)(this, "options", [['m', 'message <message>', 'log message describing the user changes'], ['', 'unmodified', 'include unmodified components (by default, only new and modified components are tagged)'], ['', 'editor [editor]', 'EXPERIMENTAL. open an editor to edit the tag messages per component, optionally specify the editor-name, default to vim'], ['v', 'ver <version>', 'tag with the given version'], ['p', 'patch', 'increment the patch version number'], ['', 'minor', 'increment the minor version number'], ['', 'major', 'increment the major version number'], ['', 'snapped', 'tag components that their head is a snap (not a tag)'], ['', 'pre-release [identifier]', 'EXPERIMENTAL. increment a pre-release version (e.g. 1.0.0-dev.1)'], ['', 'skip-tests', 'skip running component tests during tag process'], ['', 'skip-auto-tag', 'skip auto tagging dependents'], ['', 'soft', 'do not persist. only keep note of the changes to be made'], ['', 'persist', 'persist the changes generated by --soft tag'], ['', 'disable-tag-pipeline', 'skip the tag pipeline to avoid publishing the components'], ['', 'force-deploy', 'run the tag pipeline although the build failed'], ['', 'increment-by <number>', '(default to 1) increment semver flag (patch/minor/major) by. e.g. incrementing patch by 2: 0.0.1 -> 0.0.3.'], ['i', 'ignore-issues [issues]', `ignore component issues (shown in "bit status" as "issues found"), issues to ignore:
77
77
  [${Object.keys(_componentIssues().IssuesClasses).join(', ')}]
78
- to ignore multiple issues, separate them by a comma and wrap with quotes. to ignore all issues, specify "*".`]]);
78
+ to ignore multiple issues, separate them by a comma and wrap with quotes. to ignore all issues, specify "*".`], ['I', 'ignore-newest-version', 'ignore existing of newer versions (default = false)'], ['b', 'build', 'EXPERIMENTAL. not needed for now. run the pipeline build and complete the tag'], ['a', 'all [version]', 'DEPRECATED (not needed anymore, it is the default now). tag all new and modified components'], ['s', 'scope [version]', 'DEPRECATED (use "--unmodified" instead). tag all components of the current scope'], ['f', 'force', 'DEPRECATED (use "--skip-tests" or "--unmodified" instead). force-tag even if tests are failing and even when component has not changed'], ['', 'disable-deploy-pipeline', 'DEPRECATED. use --disable-tag-pipeline instead']]);
79
79
  (0, _defineProperty2().default)(this, "migration", true);
80
80
  (0, _defineProperty2().default)(this, "remoteOp", true);
81
81
  this.description = `record component changes and lock versions.
82
+ if no ids are provided, it will tag all new and modified components.
82
83
  if component ids are entered, you can specify a version per id using "@" sign, e.g. bit tag foo@1.0.0 bar@minor baz@major
83
84
  https://${docsDomain}/components/tags
84
85
  ${(0, _constants().WILDCARD_HELP)('tag')}`;
@@ -95,13 +96,13 @@ ${(0, _constants().WILDCARD_HELP)('tag')}`;
95
96
  major,
96
97
  preRelease,
97
98
  force = false,
98
- verbose = false,
99
99
  ignoreUnresolvedDependencies,
100
100
  ignoreIssues,
101
101
  ignoreNewestVersion = false,
102
102
  skipTests = false,
103
103
  skipAutoTag = false,
104
104
  scope,
105
+ unmodified = false,
105
106
  build,
106
107
  soft = false,
107
108
  persist = false,
@@ -118,16 +119,43 @@ ${(0, _constants().WILDCARD_HELP)('tag')}`;
118
119
  throw new Error(`--ignore-issues expects issues to be ignored, please run "bit tag -h" for the issues list`);
119
120
  }
120
121
 
122
+ if (disableTagPipeline) {
123
+ // eslint-disable-next-line no-console
124
+ console.warn(_chalk().default.yellow(`--disable-tag-pipeline is deprecated, please use --disable-deploy-pipeline instead`));
125
+ }
126
+
127
+ if (all) {
128
+ // eslint-disable-next-line no-console
129
+ console.warn(_chalk().default.yellow(`--all is deprecated, please omit it. "bit tag" by default will tag all new and modified components. to specify a version, use --ver flag`));
130
+
131
+ if (typeof all === 'string') {
132
+ ver = all;
133
+ }
134
+ }
135
+
136
+ if (scope) {
137
+ // eslint-disable-next-line no-console
138
+ console.warn(_chalk().default.yellow(`--scope is deprecated, use --unmodified instead`));
139
+ unmodified = true;
140
+
141
+ if (typeof scope === 'string') {
142
+ ver = scope;
143
+ }
144
+ }
145
+
146
+ if (force) {
147
+ // eslint-disable-next-line no-console
148
+ console.warn(_chalk().default.yellow(`--force is deprecated, use either --skip-tests or --unmodified depending on the use case`));
149
+ if (id.length) unmodified = true;
150
+ }
151
+
121
152
  const disableTagAndSnapPipelines = disableTagPipeline || disableDeployPipeline;
122
153
  const params = {
123
154
  ids: id,
124
- all,
125
155
  snapped,
126
156
  editor,
127
157
  message,
128
158
  preRelease,
129
- force,
130
- verbose,
131
159
  ignoreIssues,
132
160
  ignoreNewestVersion,
133
161
  skipTests,
@@ -135,11 +163,11 @@ ${(0, _constants().WILDCARD_HELP)('tag')}`;
135
163
  build,
136
164
  soft,
137
165
  persist,
138
- scope,
166
+ unmodified,
139
167
  disableTagAndSnapPipelines,
140
168
  forceDeploy,
141
169
  incrementBy,
142
- ver,
170
+ version: ver,
143
171
  patch,
144
172
  minor,
145
173
  major
@@ -1 +1 @@
1
- {"version":3,"sources":["tag-cmd.ts"],"names":["TagCmd","constructor","docsDomain","snapping","Object","keys","IssuesClasses","join","description","report","id","message","ver","all","editor","snapped","patch","minor","major","preRelease","force","verbose","ignoreUnresolvedDependencies","ignoreIssues","ignoreNewestVersion","skipTests","skipAutoTag","scope","build","soft","persist","disableDeployPipeline","disableTagPipeline","forceDeploy","incrementBy","Error","disableTagAndSnapPipelines","params","ids","results","tag","chalk","yellow","NOTHING_TO_TAG_MSG","taggedComponents","autoTaggedResults","warnings","newComponents","changedComponents","filter","component","searchWithoutVersion","addedComponents","autoTaggedCount","length","warningsOutput","tagExplanationPersist","tagExplanationSoft","tagExplanation","isSoftTag","outputComponents","comps","map","componentOutput","toString","autoTag","result","triggeredBy","searchWithoutScopeAndVersion","autoTagComp","a","AUTO_TAGGED_MSG","publishOutput","publishedPackages","successTitle","green","successCompsStr","successOutput","softTagPrefix","outputIfExists","label","explanation","components","underline","newDesc","changedDesc","softTagClarification","bold"],"mappings":"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","sourcesContent":["import chalk from 'chalk';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport {\n TagResults,\n NOTHING_TO_TAG_MSG,\n AUTO_TAGGED_MSG,\n BasicTagParams,\n} from '@teambit/legacy/dist/api/consumer/lib/tag';\nimport { WILDCARD_HELP } from '@teambit/legacy/dist/constants';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { SnappingMain } from './snapping.main.runtime';\n\nexport class TagCmd implements Command {\n name = 'tag [id...]';\n group = 'development';\n shortDescription = 'record component changes and lock versions';\n description: string;\n alias = 't';\n loader = true;\n options = [\n ['m', 'message <message>', 'log message describing the user changes'],\n ['a', 'all [version]', 'tag all new and modified components'],\n ['s', 'scope [version]', 'tag all components of the current scope'],\n [\n '',\n 'editor [editor]',\n 'EXPERIMENTAL. open an editor to edit the tag messages per component, optionally specify the editor-name, default to vim',\n ],\n ['', 'snapped [version]', 'tag components that their head is a snap (not a tag)'],\n ['', 'ver <version>', 'tag specified components with the given version'],\n ['p', 'patch', 'increment the patch version number'],\n ['', 'minor', 'increment the minor version number'],\n ['', 'major', 'increment the major version number'],\n ['', 'pre-release [identifier]', 'EXPERIMENTAL. increment a pre-release version (e.g. 1.0.0-dev.1)'],\n ['f', 'force', 'force-tag even if tests are failing and even when component has not changed'],\n ['v', 'verbose', 'show specs output on failure'],\n ['I', 'ignore-newest-version', 'ignore existing of newer versions (default = false)'],\n ['', 'skip-tests', 'skip running component tests during tag process'],\n ['', 'skip-auto-tag', 'skip auto tagging dependents'],\n ['b', 'build', 'EXPERIMENTAL. not needed for now. run the pipeline build and complete the tag'],\n ['', 'soft', 'do not persist. only keep note of the changes to be made'],\n ['', 'persist', 'persist the changes generated by --soft tag'],\n ['', 'disable-deploy-pipeline', 'DEPRECATED. use --disable-tag-pipeline instead'],\n ['', 'disable-tag-pipeline', 'skip the tag pipeline to avoid publishing the components'],\n ['', 'force-deploy', 'run the tag pipeline although the build failed'],\n [\n '',\n 'increment-by <number>',\n '(default to 1) increment semver flag (patch/minor/major) by. e.g. incrementing patch by 2: 0.0.1 -> 0.0.3.',\n ],\n [\n 'i',\n 'ignore-issues [issues]',\n `ignore component issues (shown in \"bit status\" as \"issues found\"), issues to ignore:\n[${Object.keys(IssuesClasses).join(', ')}]\nto ignore multiple issues, separate them by a comma and wrap with quotes. to ignore all issues, specify \"*\".`,\n ],\n ] as CommandOptions;\n migration = true;\n remoteOp = true; // In case a compiler / tester is not installed\n\n constructor(docsDomain: string, private snapping: SnappingMain) {\n this.description = `record component changes and lock versions.\nif component ids are entered, you can specify a version per id using \"@\" sign, e.g. bit tag foo@1.0.0 bar@minor baz@major\nhttps://${docsDomain}/components/tags\n${WILDCARD_HELP('tag')}`;\n }\n\n async report(\n [id = []]: [string[]],\n {\n message = '',\n ver,\n all = false,\n editor = '',\n snapped = false,\n patch,\n minor,\n major,\n preRelease,\n force = false,\n verbose = false,\n ignoreUnresolvedDependencies,\n ignoreIssues,\n ignoreNewestVersion = false,\n skipTests = false,\n skipAutoTag = false,\n scope,\n build,\n soft = false,\n persist = false,\n disableDeployPipeline = false,\n disableTagPipeline = false,\n forceDeploy = false,\n incrementBy = 1,\n }: {\n all?: boolean | string;\n snapped?: boolean | string;\n ver?: string;\n patch?: boolean;\n minor?: boolean;\n major?: boolean;\n ignoreUnresolvedDependencies?: boolean;\n ignoreIssues?: string;\n scope?: string | boolean;\n incrementBy?: number;\n disableDeployPipeline?: boolean;\n disableTagPipeline?: boolean;\n } & Partial<BasicTagParams>\n ): Promise<string> {\n if (typeof ignoreUnresolvedDependencies === 'boolean') {\n throw new Error(`--ignore-unresolved-dependencies has been removed, please use --ignore-issues instead`);\n }\n if (ignoreIssues && typeof ignoreIssues === 'boolean') {\n throw new Error(`--ignore-issues expects issues to be ignored, please run \"bit tag -h\" for the issues list`);\n }\n const disableTagAndSnapPipelines = disableTagPipeline || disableDeployPipeline;\n\n const params = {\n ids: id,\n all,\n snapped,\n editor,\n message,\n preRelease,\n force,\n verbose,\n ignoreIssues,\n ignoreNewestVersion,\n skipTests,\n skipAutoTag,\n build,\n soft,\n persist,\n scope,\n disableTagAndSnapPipelines,\n forceDeploy,\n incrementBy,\n ver,\n patch,\n minor,\n major,\n };\n\n const results = await this.snapping.tag(params);\n if (!results) return chalk.yellow(NOTHING_TO_TAG_MSG);\n const { taggedComponents, autoTaggedResults, warnings, newComponents }: TagResults = results;\n const changedComponents = taggedComponents.filter((component) => !newComponents.searchWithoutVersion(component.id));\n const addedComponents = taggedComponents.filter((component) => newComponents.searchWithoutVersion(component.id));\n const autoTaggedCount = autoTaggedResults ? autoTaggedResults.length : 0;\n\n const warningsOutput = warnings && warnings.length ? `${chalk.yellow(warnings.join('\\n'))}\\n\\n` : '';\n const tagExplanationPersist = `\\n(use \"bit export [collection]\" to push these components to a remote\")\n(use \"bit untag\" to unstage versions)\\n`;\n const tagExplanationSoft = `\\n(use \"bit tag --persist\" to persist the changes\")\n(use \"bit untag --soft\" to remove the soft-tags)\\n`;\n\n const tagExplanation = results.isSoftTag ? tagExplanationSoft : tagExplanationPersist;\n\n const outputComponents = (comps) => {\n return comps\n .map((component) => {\n let componentOutput = ` > ${component.id.toString()}`;\n const autoTag = autoTaggedResults.filter((result) =>\n result.triggeredBy.searchWithoutScopeAndVersion(component.id)\n );\n if (autoTag.length) {\n const autoTagComp = autoTag.map((a) => a.component.id.toString());\n componentOutput += `\\n ${AUTO_TAGGED_MSG}:\n ${autoTagComp.join('\\n ')}`;\n }\n return componentOutput;\n })\n .join('\\n');\n };\n\n const publishOutput = () => {\n const { publishedPackages } = results;\n if (!publishedPackages || !publishedPackages.length) return '';\n const successTitle = `\\n\\n${chalk.green(\n `published the following ${publishedPackages.length} component(s) successfully\\n`\n )}`;\n const successCompsStr = publishedPackages.join('\\n');\n const successOutput = successCompsStr ? successTitle + successCompsStr : '';\n return successOutput;\n };\n\n const softTagPrefix = results.isSoftTag ? 'soft-tagged ' : '';\n const outputIfExists = (label, explanation, components) => {\n if (!components.length) return '';\n return `\\n${chalk.underline(softTagPrefix + label)}\\n(${explanation})\\n${outputComponents(components)}\\n`;\n };\n\n const newDesc = results.isSoftTag\n ? 'set to be tagged first version for components'\n : 'first version for components';\n const changedDesc = results.isSoftTag\n ? 'components that set to get a version bump'\n : 'components that got a version bump';\n const softTagClarification = results.isSoftTag\n ? chalk.bold(\n 'keep in mind that this is a soft-tag (changes recorded to be tagged), to persist the changes use --persist flag'\n )\n : '';\n return (\n warningsOutput +\n chalk.green(\n `${taggedComponents.length + autoTaggedCount} component(s) ${results.isSoftTag ? 'soft-' : ''}tagged`\n ) +\n tagExplanation +\n outputIfExists('new components', newDesc, addedComponents) +\n outputIfExists('changed components', changedDesc, changedComponents) +\n publishOutput() +\n softTagClarification\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["tag-cmd.ts"],"names":["TagCmd","constructor","docsDomain","snapping","Object","keys","IssuesClasses","join","description","report","id","message","ver","all","editor","snapped","patch","minor","major","preRelease","force","ignoreUnresolvedDependencies","ignoreIssues","ignoreNewestVersion","skipTests","skipAutoTag","scope","unmodified","build","soft","persist","disableDeployPipeline","disableTagPipeline","forceDeploy","incrementBy","Error","console","warn","chalk","yellow","length","disableTagAndSnapPipelines","params","ids","version","results","tag","NOTHING_TO_TAG_MSG","taggedComponents","autoTaggedResults","warnings","newComponents","changedComponents","filter","component","searchWithoutVersion","addedComponents","autoTaggedCount","warningsOutput","tagExplanationPersist","tagExplanationSoft","tagExplanation","isSoftTag","outputComponents","comps","map","componentOutput","toString","autoTag","result","triggeredBy","searchWithoutScopeAndVersion","autoTagComp","a","AUTO_TAGGED_MSG","publishOutput","publishedPackages","successTitle","green","successCompsStr","successOutput","softTagPrefix","outputIfExists","label","explanation","components","underline","newDesc","changedDesc","softTagClarification","bold"],"mappings":"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","sourcesContent":["import chalk from 'chalk';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport {\n TagResults,\n NOTHING_TO_TAG_MSG,\n AUTO_TAGGED_MSG,\n BasicTagParams,\n} from '@teambit/legacy/dist/api/consumer/lib/tag';\nimport { WILDCARD_HELP } from '@teambit/legacy/dist/constants';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { SnappingMain } from './snapping.main.runtime';\n\nexport class TagCmd implements Command {\n name = 'tag [id...]';\n group = 'development';\n shortDescription = 'record component changes and lock versions';\n description: string;\n alias = 't';\n loader = true;\n options = [\n ['m', 'message <message>', 'log message describing the user changes'],\n ['', 'unmodified', 'include unmodified components (by default, only new and modified components are tagged)'],\n [\n '',\n 'editor [editor]',\n 'EXPERIMENTAL. open an editor to edit the tag messages per component, optionally specify the editor-name, default to vim',\n ],\n ['v', 'ver <version>', 'tag with the given version'],\n ['p', 'patch', 'increment the patch version number'],\n ['', 'minor', 'increment the minor version number'],\n ['', 'major', 'increment the major version number'],\n ['', 'snapped', 'tag components that their head is a snap (not a tag)'],\n ['', 'pre-release [identifier]', 'EXPERIMENTAL. increment a pre-release version (e.g. 1.0.0-dev.1)'],\n ['', 'skip-tests', 'skip running component tests during tag process'],\n ['', 'skip-auto-tag', 'skip auto tagging dependents'],\n ['', 'soft', 'do not persist. only keep note of the changes to be made'],\n ['', 'persist', 'persist the changes generated by --soft tag'],\n ['', 'disable-tag-pipeline', 'skip the tag pipeline to avoid publishing the components'],\n ['', 'force-deploy', 'run the tag pipeline although the build failed'],\n [\n '',\n 'increment-by <number>',\n '(default to 1) increment semver flag (patch/minor/major) by. e.g. incrementing patch by 2: 0.0.1 -> 0.0.3.',\n ],\n [\n 'i',\n 'ignore-issues [issues]',\n `ignore component issues (shown in \"bit status\" as \"issues found\"), issues to ignore:\n[${Object.keys(IssuesClasses).join(', ')}]\nto ignore multiple issues, separate them by a comma and wrap with quotes. to ignore all issues, specify \"*\".`,\n ],\n ['I', 'ignore-newest-version', 'ignore existing of newer versions (default = false)'],\n ['b', 'build', 'EXPERIMENTAL. not needed for now. run the pipeline build and complete the tag'],\n [\n 'a',\n 'all [version]',\n 'DEPRECATED (not needed anymore, it is the default now). tag all new and modified components',\n ],\n ['s', 'scope [version]', 'DEPRECATED (use \"--unmodified\" instead). tag all components of the current scope'],\n [\n 'f',\n 'force',\n 'DEPRECATED (use \"--skip-tests\" or \"--unmodified\" instead). force-tag even if tests are failing and even when component has not changed',\n ],\n ['', 'disable-deploy-pipeline', 'DEPRECATED. use --disable-tag-pipeline instead'],\n ] as CommandOptions;\n migration = true;\n remoteOp = true; // In case a compiler / tester is not installed\n\n constructor(docsDomain: string, private snapping: SnappingMain) {\n this.description = `record component changes and lock versions.\nif no ids are provided, it will tag all new and modified components.\nif component ids are entered, you can specify a version per id using \"@\" sign, e.g. bit tag foo@1.0.0 bar@minor baz@major\nhttps://${docsDomain}/components/tags\n${WILDCARD_HELP('tag')}`;\n }\n\n async report(\n [id = []]: [string[]],\n {\n message = '',\n ver,\n all = false,\n editor = '',\n snapped = false,\n patch,\n minor,\n major,\n preRelease,\n force = false,\n ignoreUnresolvedDependencies,\n ignoreIssues,\n ignoreNewestVersion = false,\n skipTests = false,\n skipAutoTag = false,\n scope,\n unmodified = false,\n build,\n soft = false,\n persist = false,\n disableDeployPipeline = false,\n disableTagPipeline = false,\n forceDeploy = false,\n incrementBy = 1,\n }: {\n all?: boolean | string;\n snapped?: boolean;\n ver?: string;\n force?: boolean;\n patch?: boolean;\n minor?: boolean;\n major?: boolean;\n ignoreUnresolvedDependencies?: boolean;\n ignoreIssues?: string;\n scope?: string | boolean;\n incrementBy?: number;\n disableDeployPipeline?: boolean;\n disableTagPipeline?: boolean;\n } & Partial<BasicTagParams>\n ): Promise<string> {\n if (typeof ignoreUnresolvedDependencies === 'boolean') {\n throw new Error(`--ignore-unresolved-dependencies has been removed, please use --ignore-issues instead`);\n }\n if (ignoreIssues && typeof ignoreIssues === 'boolean') {\n throw new Error(`--ignore-issues expects issues to be ignored, please run \"bit tag -h\" for the issues list`);\n }\n if (disableTagPipeline) {\n // eslint-disable-next-line no-console\n console.warn(chalk.yellow(`--disable-tag-pipeline is deprecated, please use --disable-deploy-pipeline instead`));\n }\n if (all) {\n // eslint-disable-next-line no-console\n console.warn(\n chalk.yellow(\n `--all is deprecated, please omit it. \"bit tag\" by default will tag all new and modified components. to specify a version, use --ver flag`\n )\n );\n if (typeof all === 'string') {\n ver = all;\n }\n }\n if (scope) {\n // eslint-disable-next-line no-console\n console.warn(chalk.yellow(`--scope is deprecated, use --unmodified instead`));\n unmodified = true;\n if (typeof scope === 'string') {\n ver = scope;\n }\n }\n if (force) {\n // eslint-disable-next-line no-console\n console.warn(\n chalk.yellow(`--force is deprecated, use either --skip-tests or --unmodified depending on the use case`)\n );\n if (id.length) unmodified = true;\n }\n\n const disableTagAndSnapPipelines = disableTagPipeline || disableDeployPipeline;\n\n const params = {\n ids: id,\n snapped,\n editor,\n message,\n preRelease,\n ignoreIssues,\n ignoreNewestVersion,\n skipTests,\n skipAutoTag,\n build,\n soft,\n persist,\n unmodified,\n disableTagAndSnapPipelines,\n forceDeploy,\n incrementBy,\n version: ver,\n patch,\n minor,\n major,\n };\n\n const results = await this.snapping.tag(params);\n if (!results) return chalk.yellow(NOTHING_TO_TAG_MSG);\n const { taggedComponents, autoTaggedResults, warnings, newComponents }: TagResults = results;\n const changedComponents = taggedComponents.filter((component) => !newComponents.searchWithoutVersion(component.id));\n const addedComponents = taggedComponents.filter((component) => newComponents.searchWithoutVersion(component.id));\n const autoTaggedCount = autoTaggedResults ? autoTaggedResults.length : 0;\n\n const warningsOutput = warnings && warnings.length ? `${chalk.yellow(warnings.join('\\n'))}\\n\\n` : '';\n const tagExplanationPersist = `\\n(use \"bit export [collection]\" to push these components to a remote\")\n(use \"bit untag\" to unstage versions)\\n`;\n const tagExplanationSoft = `\\n(use \"bit tag --persist\" to persist the changes\")\n(use \"bit untag --soft\" to remove the soft-tags)\\n`;\n\n const tagExplanation = results.isSoftTag ? tagExplanationSoft : tagExplanationPersist;\n\n const outputComponents = (comps) => {\n return comps\n .map((component) => {\n let componentOutput = ` > ${component.id.toString()}`;\n const autoTag = autoTaggedResults.filter((result) =>\n result.triggeredBy.searchWithoutScopeAndVersion(component.id)\n );\n if (autoTag.length) {\n const autoTagComp = autoTag.map((a) => a.component.id.toString());\n componentOutput += `\\n ${AUTO_TAGGED_MSG}:\n ${autoTagComp.join('\\n ')}`;\n }\n return componentOutput;\n })\n .join('\\n');\n };\n\n const publishOutput = () => {\n const { publishedPackages } = results;\n if (!publishedPackages || !publishedPackages.length) return '';\n const successTitle = `\\n\\n${chalk.green(\n `published the following ${publishedPackages.length} component(s) successfully\\n`\n )}`;\n const successCompsStr = publishedPackages.join('\\n');\n const successOutput = successCompsStr ? successTitle + successCompsStr : '';\n return successOutput;\n };\n\n const softTagPrefix = results.isSoftTag ? 'soft-tagged ' : '';\n const outputIfExists = (label, explanation, components) => {\n if (!components.length) return '';\n return `\\n${chalk.underline(softTagPrefix + label)}\\n(${explanation})\\n${outputComponents(components)}\\n`;\n };\n\n const newDesc = results.isSoftTag\n ? 'set to be tagged first version for components'\n : 'first version for components';\n const changedDesc = results.isSoftTag\n ? 'components that set to get a version bump'\n : 'components that got a version bump';\n const softTagClarification = results.isSoftTag\n ? chalk.bold(\n 'keep in mind that this is a soft-tag (changes recorded to be tagged), to persist the changes use --persist flag'\n )\n : '';\n return (\n warningsOutput +\n chalk.green(\n `${taggedComponents.length + autoTaggedCount} component(s) ${results.isSoftTag ? 'soft-' : ''}tagged`\n ) +\n tagExplanation +\n outputIfExists('new components', newDesc, addedComponents) +\n outputIfExists('changed components', changedDesc, changedComponents) +\n publishOutput() +\n softTagClarification\n );\n }\n}\n"]}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/snapping",
3
- "version": "0.0.21",
3
+ "version": "0.0.24",
4
4
  "homepage": "https://bit.dev/teambit/component/snapping",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.component",
8
8
  "name": "snapping",
9
- "version": "0.0.21"
9
+ "version": "0.0.24"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "2.4.2",
@@ -18,13 +18,13 @@
18
18
  "core-js": "^3.0.0",
19
19
  "@teambit/harmony": "0.3.3",
20
20
  "@teambit/bit-error": "0.0.394",
21
- "@teambit/issues": "0.0.14",
22
- "@teambit/cli": "0.0.470",
21
+ "@teambit/issues": "0.0.17",
22
+ "@teambit/cli": "0.0.472",
23
23
  "@teambit/component-issues": "0.0.50",
24
- "@teambit/community": "0.0.18",
25
- "@teambit/insights": "0.0.706",
26
- "@teambit/logger": "0.0.562",
27
- "@teambit/workspace": "0.0.706"
24
+ "@teambit/community": "0.0.20",
25
+ "@teambit/insights": "0.0.709",
26
+ "@teambit/logger": "0.0.564",
27
+ "@teambit/workspace": "0.0.709"
28
28
  },
29
29
  "devDependencies": {
30
30
  "@types/lodash": "4.14.165",
@@ -37,13 +37,13 @@
37
37
  "@types/react-dom": "^17.0.5",
38
38
  "@types/react": "^17.0.8",
39
39
  "@types/node": "12.20.4",
40
- "@teambit/compiler": "0.0.706",
40
+ "@teambit/compiler": "0.0.709",
41
41
  "@teambit/component.testing.mock-components": "0.0.5",
42
42
  "@teambit/harmony.testing.load-aspect": "0.0.5",
43
43
  "@teambit/workspace.testing.mock-workspace": "0.0.4"
44
44
  },
45
45
  "peerDependencies": {
46
- "@teambit/legacy": "1.0.247",
46
+ "@teambit/legacy": "1.0.251",
47
47
  "react-dom": "^16.8.0 || ^17.0.0",
48
48
  "react": "^16.8.0 || ^17.0.0"
49
49
  },
@@ -71,7 +71,7 @@
71
71
  "react": "-"
72
72
  },
73
73
  "peerDependencies": {
74
- "@teambit/legacy": "1.0.247",
74
+ "@teambit/legacy": "1.0.251",
75
75
  "react-dom": "^16.8.0 || ^17.0.0",
76
76
  "react": "^16.8.0 || ^17.0.0"
77
77
  }