@teambit/snapping 1.0.922 → 1.0.924

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.
@@ -225,6 +225,40 @@ describe('Snapping aspect', function () {
225
225
  await (0, _workspaceTesting().destroyWorkspace)(workspaceData);
226
226
  });
227
227
  });
228
+ describe('batchId', () => {
229
+ let workspaceData;
230
+ after(async () => {
231
+ if (workspaceData) await (0, _workspaceTesting().destroyWorkspace)(workspaceData);
232
+ });
233
+ it('should assign the same batchId to all components snapped together', async () => {
234
+ workspaceData = (0, _workspaceTesting().mockWorkspace)();
235
+ const {
236
+ workspacePath
237
+ } = workspaceData;
238
+ await (0, _componentTesting().mockComponents)(workspacePath, {
239
+ numOfComponents: 3
240
+ });
241
+ const harmony = await (0, _harmonyTesting().loadManyAspects)([_snapping().SnappingAspect, _scope().ScopeAspect], workspacePath);
242
+ const snapping = harmony.get(_snapping().SnappingAspect.id);
243
+ const scope = harmony.get(_scope().ScopeAspect.id);
244
+ const results = await snapping.snap({
245
+ build: false,
246
+ message: 'snap multiple'
247
+ });
248
+ (0, _chai().expect)(results).to.not.be.null;
249
+ (0, _chai().expect)(results.snappedComponents).to.have.lengthOf(3);
250
+ const versionObjects = await Promise.all(results.snappedComponents.map(async comp => {
251
+ const snapHash = comp.id.version;
252
+ return await scope.legacyScope.objects.load(_objects().Ref.from(snapHash));
253
+ }));
254
+ const batchIds = versionObjects.map(v => v.batchId);
255
+ // all should be defined
256
+ batchIds.forEach(id => (0, _chai().expect)(id).to.be.a('string').and.not.be.empty);
257
+ // all should be the same UUID
258
+ (0, _chai().expect)(batchIds[0]).to.equal(batchIds[1]);
259
+ (0, _chai().expect)(batchIds[1]).to.equal(batchIds[2]);
260
+ });
261
+ });
228
262
  describe('local-only', () => {
229
263
  let harmony;
230
264
  let workspace;
@@ -1 +1 @@
1
- {"version":3,"names":["_chai","data","require","_fsExtra","_interopRequireDefault","_path","_harmonyTesting","_workspaceTesting","_issues","_scope","_export","_compiler","_objects","_componentTesting","_snapping","_workspace","e","__esModule","default","describe","timeout","workspaceData","snapping","before","mockWorkspace","workspacePath","console","log","mockComponents","fs","writeFile","path","join","compiler","loadAspect","CompilerAspect","compileOnWorkspace","SnappingAspect","it","tag","ids","err","expect","constructor","name","to","equal","skip","setWorkspaceConfig","IssuesAspect","id","ignoreIssues","results","taggedComponents","length","after","destroyWorkspace","snappedId","harmonyBareScope","harmony","loadManyAspects","ExportAspect","get","snap","pattern","build","message","exportMain","export","bareScope","mockBareScope","remoteScopePath","ScopeAspect","scopePath","snappingScope","snapDataPerComp","componentId","remoteScopeName","newDependencies","version","isComponent","type","snapFromScope","snappedIds","snapHash","scope","versionObj","legacyScope","objects","load","Ref","from","devPackages","Object","keys","devPackageDependencies","include","numOfComponents","removeDependencies","dependencies","have","lengthOf","workspace","WorkspaceAspect","comp1Id","idsByPattern","setLocalOnly","list","listLocalOnly","toString","tagResults","taggedNames","map","c","not","unmodified","snappedComponents","autoTaggedResults","component","comp2Id","fail"],"sources":["snapping.spec.ts"],"sourcesContent":["import { expect } from 'chai';\nimport fs from 'fs-extra';\nimport path from 'path';\nimport type { Harmony } from '@teambit/harmony';\nimport { loadAspect, loadManyAspects } from '@teambit/harmony.testing.load-aspect';\nimport type { WorkspaceData } from '@teambit/workspace.testing.mock-workspace';\nimport {\n mockWorkspace,\n mockBareScope,\n destroyWorkspace,\n setWorkspaceConfig,\n} from '@teambit/workspace.testing.mock-workspace';\nimport { IssuesAspect } from '@teambit/issues';\nimport type { ScopeMain } from '@teambit/scope';\nimport { ScopeAspect } from '@teambit/scope';\nimport type { ExportMain } from '@teambit/export';\nimport { ExportAspect } from '@teambit/export';\nimport type { CompilerMain } from '@teambit/compiler';\nimport { CompilerAspect } from '@teambit/compiler';\nimport type { ComponentID } from '@teambit/component-id';\nimport type { Version } from '@teambit/objects';\nimport { Ref } from '@teambit/objects';\nimport { mockComponents } from '@teambit/component.testing.mock-components';\nimport type { SnapDataPerCompRaw, SnappingMain } from './snapping.main.runtime';\nimport { SnappingAspect } from './snapping.aspect';\nimport type { Workspace } from '@teambit/workspace';\nimport { WorkspaceAspect } from '@teambit/workspace';\n\ndescribe('Snapping aspect', function () {\n this.timeout(0);\n\n describe('components with issues', () => {\n let workspaceData: WorkspaceData;\n let snapping: SnappingMain;\n before(async () => {\n workspaceData = mockWorkspace();\n const { workspacePath } = workspaceData;\n // eslint-disable-next-line no-console\n console.log('workspace created at ', workspacePath);\n await mockComponents(workspacePath);\n await fs.writeFile(path.join(workspacePath, 'comp1/index.js'), `const nonExist = require(\"non-exist\");`);\n const compiler: CompilerMain = await loadAspect(CompilerAspect, workspacePath);\n await compiler.compileOnWorkspace();\n snapping = await loadAspect(SnappingAspect, workspacePath);\n });\n it('tag should throw an ComponentsHaveIssues error', async () => {\n try {\n await snapping.tag({ ids: ['comp1'] });\n } catch (err: any) {\n expect(err.constructor.name).to.equal('ComponentsHaveIssues');\n }\n });\n // @todo: this test fails during \"bit build\" for some reason. It passes on \"bit test\";\n it.skip('should not throw an error if the config was set to ignore MissingPackagesDependenciesOnFs error', async () => {\n await setWorkspaceConfig(workspaceData.workspacePath, IssuesAspect.id, {\n ignoreIssues: ['MissingPackagesDependenciesOnFs'],\n });\n snapping = await loadAspect(SnappingAspect, workspaceData.workspacePath);\n const results = await snapping.tag({ ids: ['comp1'] });\n expect(results?.taggedComponents.length).to.equal(1);\n });\n after(async () => {\n await destroyWorkspace(workspaceData);\n });\n });\n describe('snap from scope an existing component with newDependencies prop populated', () => {\n let workspaceData: WorkspaceData;\n let snappedId: ComponentID;\n let harmonyBareScope: Harmony;\n before(async () => {\n workspaceData = mockWorkspace();\n const { workspacePath } = workspaceData;\n await mockComponents(workspacePath);\n const harmony = await loadManyAspects([SnappingAspect, ExportAspect], workspacePath);\n const snapping = harmony.get<SnappingMain>(SnappingAspect.id);\n await snapping.snap({ pattern: 'comp1', build: false, message: 'first snap' });\n const exportMain = harmony.get<ExportMain>(ExportAspect.id);\n await exportMain.export();\n\n const bareScope = mockBareScope(workspaceData.remoteScopePath, 'bare-for-snap');\n harmonyBareScope = await loadManyAspects([SnappingAspect, ScopeAspect], bareScope.scopePath);\n const snappingScope = harmonyBareScope.get<SnappingMain>(SnappingAspect.id);\n const snapDataPerComp: SnapDataPerCompRaw[] = [\n {\n componentId: `${workspaceData.remoteScopeName}/comp1`,\n message: 'snap from scope',\n newDependencies: [\n {\n id: 'lodash',\n version: '4.1.2',\n isComponent: false,\n type: 'dev',\n },\n ],\n },\n ];\n const results = await snappingScope.snapFromScope(snapDataPerComp, {});\n\n snappedId = results.snappedIds[0];\n });\n it('should add the new dev dep', async () => {\n const snapHash = snappedId.version;\n const scope = harmonyBareScope.get<ScopeMain>(ScopeAspect.id);\n const versionObj = (await scope.legacyScope.objects.load(Ref.from(snapHash))) as Version;\n const devPackages = Object.keys(versionObj.devPackageDependencies);\n expect(devPackages).to.include('lodash');\n\n // also, it should not delete other dev-deps that were there before.\n expect(devPackages).to.include('@types/node');\n });\n after(async () => {\n await destroyWorkspace(workspaceData);\n });\n });\n describe('snap from scope - remove existing dependency', () => {\n let workspaceData: WorkspaceData;\n let snappedId: ComponentID;\n let harmonyBareScope: Harmony;\n before(async () => {\n workspaceData = mockWorkspace();\n const { workspacePath } = workspaceData;\n await mockComponents(workspacePath, { numOfComponents: 2 });\n const harmony = await loadManyAspects([SnappingAspect, ExportAspect], workspacePath);\n const snapping = harmony.get<SnappingMain>(SnappingAspect.id);\n await snapping.snap({ build: false, message: 'first snap' });\n const exportMain = harmony.get<ExportMain>(ExportAspect.id);\n await exportMain.export();\n\n const bareScope = mockBareScope(workspaceData.remoteScopePath, 'bare-for-snap');\n harmonyBareScope = await loadManyAspects([SnappingAspect, ScopeAspect], bareScope.scopePath);\n const snappingScope = harmonyBareScope.get<SnappingMain>(SnappingAspect.id);\n const snapDataPerComp: SnapDataPerCompRaw[] = [\n {\n componentId: `${workspaceData.remoteScopeName}/comp1`,\n message: 'snap from scope',\n removeDependencies: [`${workspaceData.remoteScopeName}/comp2`],\n },\n ];\n // console.log('snapDataPerComp', JSON.stringify(snapDataPerComp));\n const results = await snappingScope.snapFromScope(snapDataPerComp, {});\n\n snappedId = results.snappedIds[0];\n });\n it('should remove the specified dependency', async () => {\n const snapHash = snappedId.version;\n const scope = harmonyBareScope.get<ScopeMain>(ScopeAspect.id);\n const versionObj = (await scope.legacyScope.objects.load(Ref.from(snapHash))) as Version;\n expect(versionObj.dependencies.get()).to.have.lengthOf(0);\n });\n after(async () => {\n await destroyWorkspace(workspaceData);\n });\n });\n describe('local-only', () => {\n let harmony: Harmony;\n let workspace: Workspace;\n let workspaceData: WorkspaceData;\n before(async () => {\n workspaceData = mockWorkspace();\n const { workspacePath } = workspaceData;\n await mockComponents(workspacePath, { numOfComponents: 3 });\n harmony = await loadManyAspects([WorkspaceAspect, SnappingAspect], workspacePath);\n workspace = harmony.get<Workspace>(WorkspaceAspect.id);\n const comp1Id = await workspace.idsByPattern('comp1');\n await workspace.setLocalOnly(comp1Id);\n });\n after(async () => {\n await destroyWorkspace(workspaceData);\n });\n it('should be able to list it', async () => {\n const list = workspace.listLocalOnly();\n expect(list).to.have.lengthOf(1);\n expect(list[0].toString()).to.include('comp1');\n });\n it('should be ignored by tag command', async () => {\n const snapping = harmony.get<SnappingMain>(SnappingAspect.id);\n const tagResults = await snapping.tag({});\n expect(tagResults?.taggedComponents).to.have.lengthOf(2);\n const taggedNames = tagResults?.taggedComponents.map((c) => c.name);\n expect(taggedNames).to.not.include('comp1');\n });\n it('should be ignored by snap command', async () => {\n const snapping = harmony.get<SnappingMain>(SnappingAspect.id);\n const tagResults = await snapping.snap({ unmodified: true });\n expect(tagResults?.snappedComponents).to.have.lengthOf(2);\n const taggedNames = tagResults?.snappedComponents.map((c) => c.name);\n expect(taggedNames).to.not.include('comp1');\n });\n it('should be ignored when it is an auto-tag candidate', async () => {\n const snapping = harmony.get<SnappingMain>(SnappingAspect.id);\n await snapping.tag({ unmodified: true });\n const tagResults = await snapping.tag({ ids: ['comp3'], unmodified: true });\n expect(tagResults?.autoTaggedResults).to.have.lengthOf(1); // only comp3 should be auto-tagged\n const taggedNames = tagResults?.autoTaggedResults.map((c) => c.component.name);\n expect(taggedNames).to.not.include('comp1');\n });\n it('should block setting local-only when a component is staged', async () => {\n const snapping = harmony.get<SnappingMain>(SnappingAspect.id);\n await snapping.tag({ unmodified: true });\n const comp2Id = await workspace.idsByPattern('comp2');\n try {\n await workspace.setLocalOnly(comp2Id);\n expect.fail('should have thrown an error');\n } catch (err: any) {\n expect(err.message).to.include('unable to set the following component(s) as local-only');\n }\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_chai","data","require","_fsExtra","_interopRequireDefault","_path","_harmonyTesting","_workspaceTesting","_issues","_scope","_export","_compiler","_objects","_componentTesting","_snapping","_workspace","e","__esModule","default","describe","timeout","workspaceData","snapping","before","mockWorkspace","workspacePath","console","log","mockComponents","fs","writeFile","path","join","compiler","loadAspect","CompilerAspect","compileOnWorkspace","SnappingAspect","it","tag","ids","err","expect","constructor","name","to","equal","skip","setWorkspaceConfig","IssuesAspect","id","ignoreIssues","results","taggedComponents","length","after","destroyWorkspace","snappedId","harmonyBareScope","harmony","loadManyAspects","ExportAspect","get","snap","pattern","build","message","exportMain","export","bareScope","mockBareScope","remoteScopePath","ScopeAspect","scopePath","snappingScope","snapDataPerComp","componentId","remoteScopeName","newDependencies","version","isComponent","type","snapFromScope","snappedIds","snapHash","scope","versionObj","legacyScope","objects","load","Ref","from","devPackages","Object","keys","devPackageDependencies","include","numOfComponents","removeDependencies","dependencies","have","lengthOf","not","be","null","snappedComponents","versionObjects","Promise","all","map","comp","batchIds","v","batchId","forEach","a","and","empty","workspace","WorkspaceAspect","comp1Id","idsByPattern","setLocalOnly","list","listLocalOnly","toString","tagResults","taggedNames","c","unmodified","autoTaggedResults","component","comp2Id","fail"],"sources":["snapping.spec.ts"],"sourcesContent":["import { expect } from 'chai';\nimport fs from 'fs-extra';\nimport path from 'path';\nimport type { Harmony } from '@teambit/harmony';\nimport { loadAspect, loadManyAspects } from '@teambit/harmony.testing.load-aspect';\nimport type { WorkspaceData } from '@teambit/workspace.testing.mock-workspace';\nimport {\n mockWorkspace,\n mockBareScope,\n destroyWorkspace,\n setWorkspaceConfig,\n} from '@teambit/workspace.testing.mock-workspace';\nimport { IssuesAspect } from '@teambit/issues';\nimport type { ScopeMain } from '@teambit/scope';\nimport { ScopeAspect } from '@teambit/scope';\nimport type { ExportMain } from '@teambit/export';\nimport { ExportAspect } from '@teambit/export';\nimport type { CompilerMain } from '@teambit/compiler';\nimport { CompilerAspect } from '@teambit/compiler';\nimport type { ComponentID } from '@teambit/component-id';\nimport type { Version } from '@teambit/objects';\nimport { Ref } from '@teambit/objects';\nimport { mockComponents } from '@teambit/component.testing.mock-components';\nimport type { SnapDataPerCompRaw, SnappingMain } from './snapping.main.runtime';\nimport { SnappingAspect } from './snapping.aspect';\nimport type { Workspace } from '@teambit/workspace';\nimport { WorkspaceAspect } from '@teambit/workspace';\n\ndescribe('Snapping aspect', function () {\n this.timeout(0);\n\n describe('components with issues', () => {\n let workspaceData: WorkspaceData;\n let snapping: SnappingMain;\n before(async () => {\n workspaceData = mockWorkspace();\n const { workspacePath } = workspaceData;\n // eslint-disable-next-line no-console\n console.log('workspace created at ', workspacePath);\n await mockComponents(workspacePath);\n await fs.writeFile(path.join(workspacePath, 'comp1/index.js'), `const nonExist = require(\"non-exist\");`);\n const compiler: CompilerMain = await loadAspect(CompilerAspect, workspacePath);\n await compiler.compileOnWorkspace();\n snapping = await loadAspect(SnappingAspect, workspacePath);\n });\n it('tag should throw an ComponentsHaveIssues error', async () => {\n try {\n await snapping.tag({ ids: ['comp1'] });\n } catch (err: any) {\n expect(err.constructor.name).to.equal('ComponentsHaveIssues');\n }\n });\n // @todo: this test fails during \"bit build\" for some reason. It passes on \"bit test\";\n it.skip('should not throw an error if the config was set to ignore MissingPackagesDependenciesOnFs error', async () => {\n await setWorkspaceConfig(workspaceData.workspacePath, IssuesAspect.id, {\n ignoreIssues: ['MissingPackagesDependenciesOnFs'],\n });\n snapping = await loadAspect(SnappingAspect, workspaceData.workspacePath);\n const results = await snapping.tag({ ids: ['comp1'] });\n expect(results?.taggedComponents.length).to.equal(1);\n });\n after(async () => {\n await destroyWorkspace(workspaceData);\n });\n });\n describe('snap from scope an existing component with newDependencies prop populated', () => {\n let workspaceData: WorkspaceData;\n let snappedId: ComponentID;\n let harmonyBareScope: Harmony;\n before(async () => {\n workspaceData = mockWorkspace();\n const { workspacePath } = workspaceData;\n await mockComponents(workspacePath);\n const harmony = await loadManyAspects([SnappingAspect, ExportAspect], workspacePath);\n const snapping = harmony.get<SnappingMain>(SnappingAspect.id);\n await snapping.snap({ pattern: 'comp1', build: false, message: 'first snap' });\n const exportMain = harmony.get<ExportMain>(ExportAspect.id);\n await exportMain.export();\n\n const bareScope = mockBareScope(workspaceData.remoteScopePath, 'bare-for-snap');\n harmonyBareScope = await loadManyAspects([SnappingAspect, ScopeAspect], bareScope.scopePath);\n const snappingScope = harmonyBareScope.get<SnappingMain>(SnappingAspect.id);\n const snapDataPerComp: SnapDataPerCompRaw[] = [\n {\n componentId: `${workspaceData.remoteScopeName}/comp1`,\n message: 'snap from scope',\n newDependencies: [\n {\n id: 'lodash',\n version: '4.1.2',\n isComponent: false,\n type: 'dev',\n },\n ],\n },\n ];\n const results = await snappingScope.snapFromScope(snapDataPerComp, {});\n\n snappedId = results.snappedIds[0];\n });\n it('should add the new dev dep', async () => {\n const snapHash = snappedId.version;\n const scope = harmonyBareScope.get<ScopeMain>(ScopeAspect.id);\n const versionObj = (await scope.legacyScope.objects.load(Ref.from(snapHash))) as Version;\n const devPackages = Object.keys(versionObj.devPackageDependencies);\n expect(devPackages).to.include('lodash');\n\n // also, it should not delete other dev-deps that were there before.\n expect(devPackages).to.include('@types/node');\n });\n after(async () => {\n await destroyWorkspace(workspaceData);\n });\n });\n describe('snap from scope - remove existing dependency', () => {\n let workspaceData: WorkspaceData;\n let snappedId: ComponentID;\n let harmonyBareScope: Harmony;\n before(async () => {\n workspaceData = mockWorkspace();\n const { workspacePath } = workspaceData;\n await mockComponents(workspacePath, { numOfComponents: 2 });\n const harmony = await loadManyAspects([SnappingAspect, ExportAspect], workspacePath);\n const snapping = harmony.get<SnappingMain>(SnappingAspect.id);\n await snapping.snap({ build: false, message: 'first snap' });\n const exportMain = harmony.get<ExportMain>(ExportAspect.id);\n await exportMain.export();\n\n const bareScope = mockBareScope(workspaceData.remoteScopePath, 'bare-for-snap');\n harmonyBareScope = await loadManyAspects([SnappingAspect, ScopeAspect], bareScope.scopePath);\n const snappingScope = harmonyBareScope.get<SnappingMain>(SnappingAspect.id);\n const snapDataPerComp: SnapDataPerCompRaw[] = [\n {\n componentId: `${workspaceData.remoteScopeName}/comp1`,\n message: 'snap from scope',\n removeDependencies: [`${workspaceData.remoteScopeName}/comp2`],\n },\n ];\n // console.log('snapDataPerComp', JSON.stringify(snapDataPerComp));\n const results = await snappingScope.snapFromScope(snapDataPerComp, {});\n\n snappedId = results.snappedIds[0];\n });\n it('should remove the specified dependency', async () => {\n const snapHash = snappedId.version;\n const scope = harmonyBareScope.get<ScopeMain>(ScopeAspect.id);\n const versionObj = (await scope.legacyScope.objects.load(Ref.from(snapHash))) as Version;\n expect(versionObj.dependencies.get()).to.have.lengthOf(0);\n });\n after(async () => {\n await destroyWorkspace(workspaceData);\n });\n });\n describe('batchId', () => {\n let workspaceData: WorkspaceData | undefined;\n after(async () => {\n if (workspaceData) await destroyWorkspace(workspaceData);\n });\n it('should assign the same batchId to all components snapped together', async () => {\n workspaceData = mockWorkspace();\n const { workspacePath } = workspaceData;\n await mockComponents(workspacePath, { numOfComponents: 3 });\n const harmony = await loadManyAspects([SnappingAspect, ScopeAspect], workspacePath);\n const snapping = harmony.get<SnappingMain>(SnappingAspect.id);\n const scope = harmony.get<ScopeMain>(ScopeAspect.id);\n const results = await snapping.snap({ build: false, message: 'snap multiple' });\n expect(results).to.not.be.null;\n expect(results!.snappedComponents).to.have.lengthOf(3);\n\n const versionObjects = await Promise.all(\n results!.snappedComponents.map(async (comp) => {\n const snapHash = comp.id.version!;\n return (await scope.legacyScope.objects.load(Ref.from(snapHash))) as Version;\n })\n );\n\n const batchIds = versionObjects.map((v) => v.batchId);\n // all should be defined\n batchIds.forEach((id) => expect(id).to.be.a('string').and.not.be.empty);\n // all should be the same UUID\n expect(batchIds[0]).to.equal(batchIds[1]);\n expect(batchIds[1]).to.equal(batchIds[2]);\n });\n });\n describe('local-only', () => {\n let harmony: Harmony;\n let workspace: Workspace;\n let workspaceData: WorkspaceData;\n before(async () => {\n workspaceData = mockWorkspace();\n const { workspacePath } = workspaceData;\n await mockComponents(workspacePath, { numOfComponents: 3 });\n harmony = await loadManyAspects([WorkspaceAspect, SnappingAspect], workspacePath);\n workspace = harmony.get<Workspace>(WorkspaceAspect.id);\n const comp1Id = await workspace.idsByPattern('comp1');\n await workspace.setLocalOnly(comp1Id);\n });\n after(async () => {\n await destroyWorkspace(workspaceData);\n });\n it('should be able to list it', async () => {\n const list = workspace.listLocalOnly();\n expect(list).to.have.lengthOf(1);\n expect(list[0].toString()).to.include('comp1');\n });\n it('should be ignored by tag command', async () => {\n const snapping = harmony.get<SnappingMain>(SnappingAspect.id);\n const tagResults = await snapping.tag({});\n expect(tagResults?.taggedComponents).to.have.lengthOf(2);\n const taggedNames = tagResults?.taggedComponents.map((c) => c.name);\n expect(taggedNames).to.not.include('comp1');\n });\n it('should be ignored by snap command', async () => {\n const snapping = harmony.get<SnappingMain>(SnappingAspect.id);\n const tagResults = await snapping.snap({ unmodified: true });\n expect(tagResults?.snappedComponents).to.have.lengthOf(2);\n const taggedNames = tagResults?.snappedComponents.map((c) => c.name);\n expect(taggedNames).to.not.include('comp1');\n });\n it('should be ignored when it is an auto-tag candidate', async () => {\n const snapping = harmony.get<SnappingMain>(SnappingAspect.id);\n await snapping.tag({ unmodified: true });\n const tagResults = await snapping.tag({ ids: ['comp3'], unmodified: true });\n expect(tagResults?.autoTaggedResults).to.have.lengthOf(1); // only comp3 should be auto-tagged\n const taggedNames = tagResults?.autoTaggedResults.map((c) => c.component.name);\n expect(taggedNames).to.not.include('comp1');\n });\n it('should block setting local-only when a component is staged', async () => {\n const snapping = harmony.get<SnappingMain>(SnappingAspect.id);\n await snapping.tag({ unmodified: true });\n const comp2Id = await workspace.idsByPattern('comp2');\n try {\n await workspace.setLocalOnly(comp2Id);\n expect.fail('should have thrown an error');\n } catch (err: any) {\n expect(err.message).to.include('unable to set the following component(s) as local-only');\n }\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
package/dist/tag-cmd.js CHANGED
@@ -15,6 +15,13 @@ function _chalk() {
15
15
  };
16
16
  return data;
17
17
  }
18
+ function _cli() {
19
+ const data = require("@teambit/cli");
20
+ _cli = function () {
21
+ return data;
22
+ };
23
+ return data;
24
+ }
18
25
  function _legacy() {
19
26
  const data = require("@teambit/legacy.constants");
20
27
  _legacy = function () {
@@ -211,58 +218,50 @@ function tagResultOutput(results) {
211
218
  const addedComponents = taggedComponents.filter(component => newComponents.searchWithoutVersion(component.id));
212
219
  const autoTaggedCount = autoTaggedResults ? autoTaggedResults.length : 0;
213
220
  const totalCount = totalComponentsCount ?? taggedComponents.length + autoTaggedCount;
214
- const warningsOutput = warnings && warnings.length ? `${_chalk().default.yellow(warnings.join('\n'))}\n\n` : '';
215
- const tagExplanationPersist = exportedIds ? '' : `\n(use "bit export" to push these components to a remote")
216
- (use "bit reset" to unstage versions)`;
217
- const tagExplanationSoft = `\n(use "bit tag --persist" to persist the soft-tagged changes as a fully tagged version")
218
- (use "bit reset --soft" to remove the soft-tags)`;
219
- const tagExplanation = results.isSoftTag ? tagExplanationSoft : tagExplanationPersist;
220
221
  const compInBold = id => {
221
222
  const version = id.hasVersion() ? `@${id.version}` : '';
222
223
  return `${_chalk().default.bold(id.toStringWithoutVersion())}${version}`;
223
224
  };
224
- const outputComponents = comps => {
225
- return comps.map(component => {
226
- let componentOutput = ` > ${compInBold(component.id)}`;
227
- const autoTag = autoTaggedResults.filter(result => result.triggeredBy.searchWithoutVersion(component.id));
228
- if (autoTag.length) {
229
- const autoTagComp = autoTag.map(a => compInBold(a.component.id));
230
- componentOutput += `\n ${AUTO_TAGGED_MSG}:
231
- ${autoTagComp.join('\n ')}`;
232
- }
233
- return componentOutput;
234
- }).join('\n');
225
+ const formatComp = component => {
226
+ let output = (0, _cli().formatItem)(compInBold(component.id));
227
+ const autoTag = autoTaggedResults.filter(result => result.triggeredBy.searchWithoutVersion(component.id));
228
+ if (autoTag.length) {
229
+ const autoTagComp = autoTag.map(a => compInBold(a.component.id));
230
+ output += `\n ${AUTO_TAGGED_MSG}:\n ${autoTagComp.join('\n ')}`;
231
+ }
232
+ return output;
235
233
  };
236
- const publishOutput = () => {
234
+ const softTagPrefix = results.isSoftTag ? 'soft-tagged ' : '';
235
+ const newDesc = results.isSoftTag ? 'set to be tagged with first version for components when persisted' : 'first version for components';
236
+ const changedDesc = results.isSoftTag ? 'components that are set to get a version bump when persisted' : 'components that got a version bump';
237
+ const newSection = (0, _cli().formatSection)(softTagPrefix + 'new components', newDesc, addedComponents.map(formatComp));
238
+ const changedSection = (0, _cli().formatSection)(softTagPrefix + 'changed components', changedDesc, changedComponents.map(formatComp));
239
+ const removedSection = outputIdsIfExists('removed components', removedComponents);
240
+ const publishSection = (() => {
237
241
  const {
238
242
  publishedPackages
239
243
  } = results;
240
244
  if (!publishedPackages || !publishedPackages.length) return '';
241
- const successTitle = `\n\n${_chalk().default.green(`published the following ${publishedPackages.length} component(s) successfully\n`)}`;
242
- const successCompsStr = publishedPackages.join('\n');
243
- const successOutput = successCompsStr ? successTitle + successCompsStr : '';
244
- return successOutput;
245
- };
246
- const exportedOutput = () => {
245
+ const items = publishedPackages.map(pkg => (0, _cli().formatItem)(pkg));
246
+ return (0, _cli().formatSection)('published components', '', items);
247
+ })();
248
+ const exportedSection = (() => {
247
249
  if (!exportedIds) return '';
248
- if (!exportedIds.length) return `\n${_chalk().default.yellow('no component has been exported')}\n`;
249
- const title = `\n${_chalk().default.underline('exported components')}\n`;
250
- const ids = exportedIds.map(id => ` > ${compInBold(id)}`).join('\n');
251
- return `${title}${ids}\n`;
252
- };
253
- const softTagPrefix = results.isSoftTag ? 'soft-tagged ' : '';
254
- const outputIfExists = (label, explanation, components) => {
255
- if (!components.length) return '';
256
- return `\n${_chalk().default.underline(softTagPrefix + label)}\n(${explanation})\n${outputComponents(components)}\n`;
257
- };
258
- const newDesc = results.isSoftTag ? 'set to be tagged with first version for components when persisted' : 'first version for components';
259
- const changedDesc = results.isSoftTag ? 'components that are set to get a version bump when persisted' : 'components that got a version bump';
260
- const softTagClarification = results.isSoftTag ? _chalk().default.bold('\nkeep in mind that this is a soft-tag (changes recorded to be tagged), to persist the changes use --persist flag') : '';
261
- return outputIfExists('new components', newDesc, addedComponents) + outputIfExists('changed components', changedDesc, changedComponents) + outputIdsIfExists('removed components', removedComponents) + publishOutput() + exportedOutput() + warningsOutput + _chalk().default.green(`\n${totalCount} component(s) ${results.isSoftTag ? 'soft-' : ''}tagged${exportedIds ? ' and exported' : ''}`) + tagExplanation + softTagClarification;
250
+ if (!exportedIds.length) return `${_cli().warnSymbol} ${_chalk().default.yellow('no component has been exported')}`;
251
+ const items = exportedIds.map(id => (0, _cli().formatItem)(compInBold(id)));
252
+ return (0, _cli().formatSection)('exported components', '', items);
253
+ })();
254
+ const warningsSection = warnings && warnings.length ? warnings.map(w => `${_cli().warnSymbol} ${_chalk().default.yellow(w)}`).join('\n') : '';
255
+ const summaryMsg = `${totalCount} component(s) ${results.isSoftTag ? 'soft-' : ''}tagged${exportedIds ? ' and exported' : ''}`;
256
+ const summary = (0, _cli().formatSuccessSummary)(summaryMsg);
257
+ const tagExplanation = results.isSoftTag ? (0, _cli().formatHint)('(use "bit tag --persist" to persist the soft-tagged changes as a fully tagged version)\n(use "bit reset --soft" to remove the soft-tags)') : exportedIds ? '' : (0, _cli().formatHint)('(use "bit export" to push these components to a remote)\n(use "bit reset" to unstage versions)');
258
+ const softTagClarification = results.isSoftTag ? _chalk().default.bold('keep in mind that this is a soft-tag (changes recorded to be tagged), to persist the changes use --persist flag') : '';
259
+ return (0, _cli().joinSections)([newSection, changedSection, removedSection, publishSection, exportedSection, warningsSection, [summary, tagExplanation, softTagClarification].filter(Boolean).join('\n')]);
262
260
  }
263
261
  function outputIdsIfExists(label, ids) {
264
262
  if (!ids?.length) return '';
265
- return `\n${_chalk().default.underline(label)}\n${ids.map(id => id.toStringWithoutVersion()).join('\n')}\n`;
263
+ const items = ids.map(id => (0, _cli().formatItem)(id.toStringWithoutVersion(), _cli().warnSymbol));
264
+ return (0, _cli().formatSection)(label, '', items);
266
265
  }
267
266
 
268
267
  //# sourceMappingURL=tag-cmd.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_legacy","_componentIssues","_bitError","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","NOTHING_TO_TAG_MSG","exports","AUTO_TAGGED_MSG","RELEASE_TYPES","tagCmdOptions","join","keys","IssuesClasses","TagCmd","constructor","snapping","logger","configStore","name","description","COMPONENT_PATTERN_HELP","cmd","report","patterns","options","message","ver","editor","versionsFile","snapped","unmerged","ignoreIssues","ignoreNewestVersion","skipTests","skipTasks","skipAutoTag","unmodified","soft","persist","disableTagPipeline","ignoreBuildErrors","rebuildDepsGraph","failFast","incrementBy","detachHead","loose","consoleWarning","releaseType","preReleaseId","validateOptions","disableTagAndSnapPipelines","build","getConfigBoolean","CFG_FORCE_LOCAL_BUILD","Boolean","BitError","params","ids","version","results","tag","chalk","yellow","tagResultOutput","patch","minor","major","preRelease","increment","prereleaseId","releaseFlags","filter","x","length","getReleaseType","includes","DEFAULT_BIT_RELEASE_TYPE","getPreReleaseId","undefined","taggedComponents","autoTaggedResults","warnings","newComponents","removedComponents","exportedIds","totalComponentsCount","changedComponents","component","searchWithoutVersion","id","addedComponents","autoTaggedCount","totalCount","warningsOutput","tagExplanationPersist","tagExplanationSoft","tagExplanation","isSoftTag","compInBold","hasVersion","bold","toStringWithoutVersion","outputComponents","comps","map","componentOutput","autoTag","result","triggeredBy","autoTagComp","a","publishOutput","publishedPackages","successTitle","green","successCompsStr","successOutput","exportedOutput","title","underline","softTagPrefix","outputIfExists","label","explanation","components","newDesc","changedDesc","softTagClarification","outputIdsIfExists"],"sources":["tag-cmd.ts"],"sourcesContent":["import chalk from 'chalk';\nimport type { ComponentIdList, ComponentID } from '@teambit/component-id';\nimport type { Command, CommandOptions } from '@teambit/cli';\nimport type { ConsumerComponent } from '@teambit/legacy.consumer-component';\nimport { DEFAULT_BIT_RELEASE_TYPE, COMPONENT_PATTERN_HELP, CFG_FORCE_LOCAL_BUILD } from '@teambit/legacy.constants';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport type { ReleaseType } from 'semver';\nimport { BitError } from '@teambit/bit-error';\nimport type { Logger } from '@teambit/logger';\nimport type { TagResults, SnappingMain } from './snapping.main.runtime';\nimport type { BasicTagParams } from './version-maker';\nimport type { ConfigStoreMain } from '@teambit/config-store';\n\nexport const NOTHING_TO_TAG_MSG = 'nothing to tag';\nexport const AUTO_TAGGED_MSG = 'auto-tagged dependents';\n\nconst RELEASE_TYPES = ['major', 'premajor', 'minor', 'preminor', 'patch', 'prepatch', 'prerelease'];\n\nexport const tagCmdOptions = [\n ['m', 'message <message>', 'a log message describing latest changes'],\n ['u', 'unmodified', 'include unmodified components (by default, only new and modified components are tagged)'],\n [\n '',\n 'editor [editor]',\n 'open an editor to write a tag message for each component. optionally, specify the editor-name (defaults to vim).',\n ],\n ['', 'versions-file <path>', 'path to a file containing component versions. format: \"component-id: version\"'],\n ['v', 'ver <version>', 'tag with the given version'],\n ['l', 'increment <level>', `options are: [${RELEASE_TYPES.join(', ')}], default to patch`],\n ['', 'prerelease-id <id>', 'prerelease identifier (e.g. \"dev\" to get \"1.0.0-dev.1\")'],\n ['p', 'patch', 'syntactic sugar for \"--increment patch\"'],\n ['', 'minor', 'syntactic sugar for \"--increment minor\"'],\n ['', 'major', 'syntactic sugar for \"--increment major\"'],\n ['', 'pre-release [identifier]', 'syntactic sugar for \"--increment prerelease\" and `--prerelease-id <identifier>`'],\n ['', 'snapped', 'tag only components whose head is a snap (not a tag)'],\n ['', 'unmerged', 'complete a merge process by tagging the unmerged components'],\n ['', 'skip-tests', 'skip running component tests during tag process'],\n [\n '',\n 'skip-tasks <string>',\n `skip the given tasks. for multiple tasks, separate by a comma and wrap with quotes.\nspecify the task-name (e.g. \"TypescriptCompiler\") or the task-aspect-id (e.g. teambit.compilation/compiler)`,\n ],\n ['', 'skip-auto-tag', 'skip auto tagging dependents'],\n ['', 'soft', 'do not persist. only keep note of the changes to be made'],\n [\n '',\n 'persist [skip-build]',\n 'persist the changes generated by --soft tag. by default, run the build pipeline, unless \"skip-build\" is provided',\n ],\n ['', 'disable-tag-pipeline', 'skip the tag pipeline to avoid publishing the components'],\n ['', 'ignore-build-errors', 'proceed to tag pipeline even when build pipeline fails'],\n ['', 'rebuild-deps-graph', 'do not reuse the saved dependencies graph, instead build it from scratch'],\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', 'allow tagging even when the component has newer versions e.g. for hotfixes.'],\n [\n '',\n 'fail-fast',\n 'stop pipeline execution on the first failed task (by default a task is skipped only when its dependency failed)',\n ],\n ['b', 'build', 'locally run the build pipeline (i.e. not via rippleCI) and complete the tag'],\n ['', 'loose', 'allow tag --build to succeed even if tasks like tests or lint fail'],\n [\n '',\n 'detach-head',\n 'UNSUPPORTED YET. in case a component is checked out to an older version, tag it without changing the head',\n ],\n] as CommandOptions;\n\nexport type TagParams = {\n snapped?: boolean;\n unmerged?: boolean;\n ver?: string;\n patch?: boolean;\n minor?: boolean;\n major?: boolean;\n increment?: ReleaseType;\n preRelease?: string;\n prereleaseId?: string;\n ignoreUnresolvedDependencies?: boolean;\n ignoreIssues?: string;\n incrementBy?: number;\n failFast?: boolean;\n disableTagPipeline?: boolean;\n loose?: boolean;\n versionsFile?: string;\n} & Partial<BasicTagParams>;\n\nexport class TagCmd implements Command {\n name = 'tag [component-patterns...]';\n group = 'version-control';\n description = 'create immutable component snapshots with semantic version tags';\n extendedDescription = `creates tagged versions using semantic versioning (semver) for component releases. tags are immutable and exportable.\nby default tags all new and modified components. supports version specification per pattern using \"@\" (e.g. foo@1.0.0, bar@minor).\nuse for official releases. for development versions, use 'bit snap' instead.`;\n arguments = [\n {\n name: 'component-patterns...',\n description: `${COMPONENT_PATTERN_HELP}. By default, all new and modified are tagged.`,\n },\n ];\n helpUrl = 'reference/components/snaps#create-a-tag-(release-version)';\n alias = 't';\n loader = true;\n options = tagCmdOptions;\n remoteOp = true; // In case a compiler / tester is not installed\n examples = [{ cmd: 'tag --ver 1.0.0', description: 'tag all components to version 1.0.0' }];\n\n constructor(\n private snapping: SnappingMain,\n private logger: Logger,\n private configStore: ConfigStoreMain\n ) {}\n\n // eslint-disable-next-line complexity\n async report([patterns = []]: [string[]], options: TagParams): Promise<string> {\n const {\n message = '',\n ver,\n editor = '',\n versionsFile,\n snapped = false,\n unmerged = false,\n ignoreIssues,\n ignoreNewestVersion = false,\n skipTests = false,\n skipTasks,\n skipAutoTag = false,\n unmodified = false,\n soft = false,\n persist = false,\n disableTagPipeline = false,\n ignoreBuildErrors = false,\n rebuildDepsGraph,\n failFast = false,\n incrementBy = 1,\n detachHead,\n loose = false,\n } = options;\n\n if (!message && !persist && !editor) {\n this.logger.consoleWarning(\n `--message will be mandatory in the next few releases. make sure to add a message with your tag`\n );\n }\n const { releaseType, preReleaseId } = validateOptions(options);\n\n const disableTagAndSnapPipelines = disableTagPipeline;\n let build = options.build;\n build = this.configStore.getConfigBoolean(CFG_FORCE_LOCAL_BUILD) || Boolean(build);\n if (persist) {\n if (persist === true) build = true;\n else if (persist === 'skip-build') build = false;\n else throw new BitError(`unknown value for --persist, use either --persist or --persist=skip-build`);\n }\n if (!build && !soft) {\n this.logger.consoleWarning(\n `tagging components on \"main\" lane when using remote build is not recommended. To avoid SemVer versions of your component with failing builds, please refer to:\n- Snap changes in a different lane and merge to \"main\" on your remote (learn more on lanes - https://bit.dev/reference/lanes/getting-started-with-lanes)\n- Use \\`bit tag --build\\` to build your components locally.\n- Use \\`snap\\` or \\`build\\` first to validate your build passing, and then version and export safely.\n\nTo undo local tag use the \"bit reset\" command.`\n );\n }\n\n const params = {\n ids: patterns,\n snapped,\n unmerged,\n editor,\n versionsFile,\n message,\n releaseType,\n preReleaseId,\n ignoreIssues,\n ignoreNewestVersion,\n skipTests,\n skipTasks,\n skipAutoTag,\n build,\n soft,\n persist,\n unmodified,\n disableTagAndSnapPipelines,\n ignoreBuildErrors,\n rebuildDepsGraph,\n incrementBy,\n version: ver,\n failFast,\n detachHead,\n loose,\n };\n\n const results = await this.snapping.tag(params);\n if (!results) return chalk.yellow(persist ? 'no soft-tag found' : NOTHING_TO_TAG_MSG);\n return tagResultOutput(results);\n }\n}\n\nexport function validateOptions(options: TagParams) {\n const { patch, minor, major, preRelease, increment, prereleaseId } = options;\n if (prereleaseId && (!increment || increment === 'major' || increment === 'minor' || increment === 'patch')) {\n throw new BitError(\n `--prerelease-id should be entered along with --increment flag, while --increment must be one of the following: [prepatch, prerelease, preminor, premajor]`\n );\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 const getReleaseType = (): ReleaseType => {\n if (increment) {\n if (!RELEASE_TYPES.includes(increment)) {\n throw new BitError(`invalid increment-level \"${increment}\".\nsemver allows the following options only: ${RELEASE_TYPES.join(', ')}`);\n }\n return increment;\n }\n if (major) return 'major';\n if (minor) return 'minor';\n if (patch) return 'patch';\n if (preRelease) return 'prerelease';\n return DEFAULT_BIT_RELEASE_TYPE;\n };\n const getPreReleaseId = (): string | undefined => {\n if (prereleaseId) {\n return prereleaseId;\n }\n if (preRelease && typeof preRelease === 'string') {\n return preRelease;\n }\n return undefined;\n };\n\n return {\n releaseType: getReleaseType(),\n preReleaseId: getPreReleaseId(),\n };\n}\n\nexport function tagResultOutput(results: TagResults): string {\n const {\n taggedComponents,\n autoTaggedResults,\n warnings,\n newComponents,\n removedComponents,\n exportedIds,\n totalComponentsCount,\n }: 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 const totalCount = totalComponentsCount ?? taggedComponents.length + autoTaggedCount;\n\n const warningsOutput = warnings && warnings.length ? `${chalk.yellow(warnings.join('\\n'))}\\n\\n` : '';\n const tagExplanationPersist = exportedIds\n ? ''\n : `\\n(use \"bit export\" to push these components to a remote\")\n(use \"bit reset\" to unstage versions)`;\n const tagExplanationSoft = `\\n(use \"bit tag --persist\" to persist the soft-tagged changes as a fully tagged version\")\n(use \"bit reset --soft\" to remove the soft-tags)`;\n\n const tagExplanation = results.isSoftTag ? tagExplanationSoft : tagExplanationPersist;\n\n const compInBold = (id: ComponentID) => {\n const version = id.hasVersion() ? `@${id.version}` : '';\n return `${chalk.bold(id.toStringWithoutVersion())}${version}`;\n };\n\n const outputComponents = (comps: ConsumerComponent[]) => {\n return comps\n .map((component) => {\n let componentOutput = ` > ${compInBold(component.id)}`;\n const autoTag = autoTaggedResults.filter((result) => result.triggeredBy.searchWithoutVersion(component.id));\n if (autoTag.length) {\n const autoTagComp = autoTag.map((a) => compInBold(a.component.id));\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 exportedOutput = () => {\n if (!exportedIds) return '';\n if (!exportedIds.length) return `\\n${chalk.yellow('no component has been exported')}\\n`;\n const title = `\\n${chalk.underline('exported components')}\\n`;\n const ids = exportedIds.map((id) => ` > ${compInBold(id)}`).join('\\n');\n return `${title}${ids}\\n`;\n };\n\n const softTagPrefix = results.isSoftTag ? 'soft-tagged ' : '';\n const outputIfExists = (label: string, explanation: string, components: ConsumerComponent[]) => {\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 with first version for components when persisted'\n : 'first version for components';\n const changedDesc = results.isSoftTag\n ? 'components that are set to get a version bump when persisted'\n : 'components that got a version bump';\n const softTagClarification = results.isSoftTag\n ? chalk.bold(\n '\\nkeep 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 outputIfExists('new components', newDesc, addedComponents) +\n outputIfExists('changed components', changedDesc, changedComponents) +\n outputIdsIfExists('removed components', removedComponents) +\n publishOutput() +\n exportedOutput() +\n warningsOutput +\n chalk.green(\n `\\n${totalCount} component(s) ${results.isSoftTag ? 'soft-' : ''}tagged${exportedIds ? ' and exported' : ''}`\n ) +\n tagExplanation +\n softTagClarification\n );\n}\n\nexport function outputIdsIfExists(label: string, ids?: ComponentIdList) {\n if (!ids?.length) return '';\n return `\\n${chalk.underline(label)}\\n${ids.map((id) => id.toStringWithoutVersion()).join('\\n')}\\n`;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_cli","_legacy","_componentIssues","_bitError","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","NOTHING_TO_TAG_MSG","exports","AUTO_TAGGED_MSG","RELEASE_TYPES","tagCmdOptions","join","keys","IssuesClasses","TagCmd","constructor","snapping","logger","configStore","name","description","COMPONENT_PATTERN_HELP","cmd","report","patterns","options","message","ver","editor","versionsFile","snapped","unmerged","ignoreIssues","ignoreNewestVersion","skipTests","skipTasks","skipAutoTag","unmodified","soft","persist","disableTagPipeline","ignoreBuildErrors","rebuildDepsGraph","failFast","incrementBy","detachHead","loose","consoleWarning","releaseType","preReleaseId","validateOptions","disableTagAndSnapPipelines","build","getConfigBoolean","CFG_FORCE_LOCAL_BUILD","Boolean","BitError","params","ids","version","results","tag","chalk","yellow","tagResultOutput","patch","minor","major","preRelease","increment","prereleaseId","releaseFlags","filter","x","length","getReleaseType","includes","DEFAULT_BIT_RELEASE_TYPE","getPreReleaseId","undefined","taggedComponents","autoTaggedResults","warnings","newComponents","removedComponents","exportedIds","totalComponentsCount","changedComponents","component","searchWithoutVersion","id","addedComponents","autoTaggedCount","totalCount","compInBold","hasVersion","bold","toStringWithoutVersion","formatComp","output","formatItem","autoTag","result","triggeredBy","autoTagComp","map","a","softTagPrefix","isSoftTag","newDesc","changedDesc","newSection","formatSection","changedSection","removedSection","outputIdsIfExists","publishSection","publishedPackages","items","pkg","exportedSection","warnSymbol","warningsSection","w","summaryMsg","summary","formatSuccessSummary","tagExplanation","formatHint","softTagClarification","joinSections","label"],"sources":["tag-cmd.ts"],"sourcesContent":["import chalk from 'chalk';\nimport type { ComponentIdList, ComponentID } from '@teambit/component-id';\nimport type { Command, CommandOptions } from '@teambit/cli';\nimport { formatItem, formatSection, formatHint, formatSuccessSummary, warnSymbol, joinSections } from '@teambit/cli';\nimport type { ConsumerComponent } from '@teambit/legacy.consumer-component';\nimport { DEFAULT_BIT_RELEASE_TYPE, COMPONENT_PATTERN_HELP, CFG_FORCE_LOCAL_BUILD } from '@teambit/legacy.constants';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport type { ReleaseType } from 'semver';\nimport { BitError } from '@teambit/bit-error';\nimport type { Logger } from '@teambit/logger';\nimport type { TagResults, SnappingMain } from './snapping.main.runtime';\nimport type { BasicTagParams } from './version-maker';\nimport type { ConfigStoreMain } from '@teambit/config-store';\n\nexport const NOTHING_TO_TAG_MSG = 'nothing to tag';\nexport const AUTO_TAGGED_MSG = 'auto-tagged dependents';\n\nconst RELEASE_TYPES = ['major', 'premajor', 'minor', 'preminor', 'patch', 'prepatch', 'prerelease'];\n\nexport const tagCmdOptions = [\n ['m', 'message <message>', 'a log message describing latest changes'],\n ['u', 'unmodified', 'include unmodified components (by default, only new and modified components are tagged)'],\n [\n '',\n 'editor [editor]',\n 'open an editor to write a tag message for each component. optionally, specify the editor-name (defaults to vim).',\n ],\n ['', 'versions-file <path>', 'path to a file containing component versions. format: \"component-id: version\"'],\n ['v', 'ver <version>', 'tag with the given version'],\n ['l', 'increment <level>', `options are: [${RELEASE_TYPES.join(', ')}], default to patch`],\n ['', 'prerelease-id <id>', 'prerelease identifier (e.g. \"dev\" to get \"1.0.0-dev.1\")'],\n ['p', 'patch', 'syntactic sugar for \"--increment patch\"'],\n ['', 'minor', 'syntactic sugar for \"--increment minor\"'],\n ['', 'major', 'syntactic sugar for \"--increment major\"'],\n ['', 'pre-release [identifier]', 'syntactic sugar for \"--increment prerelease\" and `--prerelease-id <identifier>`'],\n ['', 'snapped', 'tag only components whose head is a snap (not a tag)'],\n ['', 'unmerged', 'complete a merge process by tagging the unmerged components'],\n ['', 'skip-tests', 'skip running component tests during tag process'],\n [\n '',\n 'skip-tasks <string>',\n `skip the given tasks. for multiple tasks, separate by a comma and wrap with quotes.\nspecify the task-name (e.g. \"TypescriptCompiler\") or the task-aspect-id (e.g. teambit.compilation/compiler)`,\n ],\n ['', 'skip-auto-tag', 'skip auto tagging dependents'],\n ['', 'soft', 'do not persist. only keep note of the changes to be made'],\n [\n '',\n 'persist [skip-build]',\n 'persist the changes generated by --soft tag. by default, run the build pipeline, unless \"skip-build\" is provided',\n ],\n ['', 'disable-tag-pipeline', 'skip the tag pipeline to avoid publishing the components'],\n ['', 'ignore-build-errors', 'proceed to tag pipeline even when build pipeline fails'],\n ['', 'rebuild-deps-graph', 'do not reuse the saved dependencies graph, instead build it from scratch'],\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', 'allow tagging even when the component has newer versions e.g. for hotfixes.'],\n [\n '',\n 'fail-fast',\n 'stop pipeline execution on the first failed task (by default a task is skipped only when its dependency failed)',\n ],\n ['b', 'build', 'locally run the build pipeline (i.e. not via rippleCI) and complete the tag'],\n ['', 'loose', 'allow tag --build to succeed even if tasks like tests or lint fail'],\n [\n '',\n 'detach-head',\n 'UNSUPPORTED YET. in case a component is checked out to an older version, tag it without changing the head',\n ],\n] as CommandOptions;\n\nexport type TagParams = {\n snapped?: boolean;\n unmerged?: boolean;\n ver?: string;\n patch?: boolean;\n minor?: boolean;\n major?: boolean;\n increment?: ReleaseType;\n preRelease?: string;\n prereleaseId?: string;\n ignoreUnresolvedDependencies?: boolean;\n ignoreIssues?: string;\n incrementBy?: number;\n failFast?: boolean;\n disableTagPipeline?: boolean;\n loose?: boolean;\n versionsFile?: string;\n} & Partial<BasicTagParams>;\n\nexport class TagCmd implements Command {\n name = 'tag [component-patterns...]';\n group = 'version-control';\n description = 'create immutable component snapshots with semantic version tags';\n extendedDescription = `creates tagged versions using semantic versioning (semver) for component releases. tags are immutable and exportable.\nby default tags all new and modified components. supports version specification per pattern using \"@\" (e.g. foo@1.0.0, bar@minor).\nuse for official releases. for development versions, use 'bit snap' instead.`;\n arguments = [\n {\n name: 'component-patterns...',\n description: `${COMPONENT_PATTERN_HELP}. By default, all new and modified are tagged.`,\n },\n ];\n helpUrl = 'reference/components/snaps#create-a-tag-(release-version)';\n alias = 't';\n loader = true;\n options = tagCmdOptions;\n remoteOp = true; // In case a compiler / tester is not installed\n examples = [{ cmd: 'tag --ver 1.0.0', description: 'tag all components to version 1.0.0' }];\n\n constructor(\n private snapping: SnappingMain,\n private logger: Logger,\n private configStore: ConfigStoreMain\n ) {}\n\n // eslint-disable-next-line complexity\n async report([patterns = []]: [string[]], options: TagParams): Promise<string> {\n const {\n message = '',\n ver,\n editor = '',\n versionsFile,\n snapped = false,\n unmerged = false,\n ignoreIssues,\n ignoreNewestVersion = false,\n skipTests = false,\n skipTasks,\n skipAutoTag = false,\n unmodified = false,\n soft = false,\n persist = false,\n disableTagPipeline = false,\n ignoreBuildErrors = false,\n rebuildDepsGraph,\n failFast = false,\n incrementBy = 1,\n detachHead,\n loose = false,\n } = options;\n\n if (!message && !persist && !editor) {\n this.logger.consoleWarning(\n `--message will be mandatory in the next few releases. make sure to add a message with your tag`\n );\n }\n const { releaseType, preReleaseId } = validateOptions(options);\n\n const disableTagAndSnapPipelines = disableTagPipeline;\n let build = options.build;\n build = this.configStore.getConfigBoolean(CFG_FORCE_LOCAL_BUILD) || Boolean(build);\n if (persist) {\n if (persist === true) build = true;\n else if (persist === 'skip-build') build = false;\n else throw new BitError(`unknown value for --persist, use either --persist or --persist=skip-build`);\n }\n if (!build && !soft) {\n this.logger.consoleWarning(\n `tagging components on \"main\" lane when using remote build is not recommended. To avoid SemVer versions of your component with failing builds, please refer to:\n- Snap changes in a different lane and merge to \"main\" on your remote (learn more on lanes - https://bit.dev/reference/lanes/getting-started-with-lanes)\n- Use \\`bit tag --build\\` to build your components locally.\n- Use \\`snap\\` or \\`build\\` first to validate your build passing, and then version and export safely.\n\nTo undo local tag use the \"bit reset\" command.`\n );\n }\n\n const params = {\n ids: patterns,\n snapped,\n unmerged,\n editor,\n versionsFile,\n message,\n releaseType,\n preReleaseId,\n ignoreIssues,\n ignoreNewestVersion,\n skipTests,\n skipTasks,\n skipAutoTag,\n build,\n soft,\n persist,\n unmodified,\n disableTagAndSnapPipelines,\n ignoreBuildErrors,\n rebuildDepsGraph,\n incrementBy,\n version: ver,\n failFast,\n detachHead,\n loose,\n };\n\n const results = await this.snapping.tag(params);\n if (!results) return chalk.yellow(persist ? 'no soft-tag found' : NOTHING_TO_TAG_MSG);\n return tagResultOutput(results);\n }\n}\n\nexport function validateOptions(options: TagParams) {\n const { patch, minor, major, preRelease, increment, prereleaseId } = options;\n if (prereleaseId && (!increment || increment === 'major' || increment === 'minor' || increment === 'patch')) {\n throw new BitError(\n `--prerelease-id should be entered along with --increment flag, while --increment must be one of the following: [prepatch, prerelease, preminor, premajor]`\n );\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 const getReleaseType = (): ReleaseType => {\n if (increment) {\n if (!RELEASE_TYPES.includes(increment)) {\n throw new BitError(`invalid increment-level \"${increment}\".\nsemver allows the following options only: ${RELEASE_TYPES.join(', ')}`);\n }\n return increment;\n }\n if (major) return 'major';\n if (minor) return 'minor';\n if (patch) return 'patch';\n if (preRelease) return 'prerelease';\n return DEFAULT_BIT_RELEASE_TYPE;\n };\n const getPreReleaseId = (): string | undefined => {\n if (prereleaseId) {\n return prereleaseId;\n }\n if (preRelease && typeof preRelease === 'string') {\n return preRelease;\n }\n return undefined;\n };\n\n return {\n releaseType: getReleaseType(),\n preReleaseId: getPreReleaseId(),\n };\n}\n\nexport function tagResultOutput(results: TagResults): string {\n const {\n taggedComponents,\n autoTaggedResults,\n warnings,\n newComponents,\n removedComponents,\n exportedIds,\n totalComponentsCount,\n }: 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 const totalCount = totalComponentsCount ?? taggedComponents.length + autoTaggedCount;\n\n const compInBold = (id: ComponentID) => {\n const version = id.hasVersion() ? `@${id.version}` : '';\n return `${chalk.bold(id.toStringWithoutVersion())}${version}`;\n };\n\n const formatComp = (component: ConsumerComponent): string => {\n let output = formatItem(compInBold(component.id));\n const autoTag = autoTaggedResults.filter((result) => result.triggeredBy.searchWithoutVersion(component.id));\n if (autoTag.length) {\n const autoTagComp = autoTag.map((a) => compInBold(a.component.id));\n output += `\\n ${AUTO_TAGGED_MSG}:\\n ${autoTagComp.join('\\n ')}`;\n }\n return output;\n };\n\n const softTagPrefix = results.isSoftTag ? 'soft-tagged ' : '';\n const newDesc = results.isSoftTag\n ? 'set to be tagged with first version for components when persisted'\n : 'first version for components';\n const changedDesc = results.isSoftTag\n ? 'components that are set to get a version bump when persisted'\n : 'components that got a version bump';\n\n const newSection = formatSection(softTagPrefix + 'new components', newDesc, addedComponents.map(formatComp));\n const changedSection = formatSection(\n softTagPrefix + 'changed components',\n changedDesc,\n changedComponents.map(formatComp)\n );\n const removedSection = outputIdsIfExists('removed components', removedComponents);\n\n const publishSection = (() => {\n const { publishedPackages } = results;\n if (!publishedPackages || !publishedPackages.length) return '';\n const items = publishedPackages.map((pkg) => formatItem(pkg));\n return formatSection('published components', '', items);\n })();\n\n const exportedSection = (() => {\n if (!exportedIds) return '';\n if (!exportedIds.length) return `${warnSymbol} ${chalk.yellow('no component has been exported')}`;\n const items = exportedIds.map((id) => formatItem(compInBold(id)));\n return formatSection('exported components', '', items);\n })();\n\n const warningsSection =\n warnings && warnings.length ? warnings.map((w) => `${warnSymbol} ${chalk.yellow(w)}`).join('\\n') : '';\n\n const summaryMsg = `${totalCount} component(s) ${results.isSoftTag ? 'soft-' : ''}tagged${exportedIds ? ' and exported' : ''}`;\n const summary = formatSuccessSummary(summaryMsg);\n\n const tagExplanation = results.isSoftTag\n ? formatHint(\n '(use \"bit tag --persist\" to persist the soft-tagged changes as a fully tagged version)\\n(use \"bit reset --soft\" to remove the soft-tags)'\n )\n : exportedIds\n ? ''\n : formatHint('(use \"bit export\" to push these components to a remote)\\n(use \"bit reset\" to unstage versions)');\n\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\n return joinSections([\n newSection,\n changedSection,\n removedSection,\n publishSection,\n exportedSection,\n warningsSection,\n [summary, tagExplanation, softTagClarification].filter(Boolean).join('\\n'),\n ]);\n}\n\nexport function outputIdsIfExists(label: string, ids?: ComponentIdList) {\n if (!ids?.length) return '';\n const items = ids.map((id) => formatItem(id.toStringWithoutVersion(), warnSymbol));\n return formatSection(label, '', items);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -61,6 +61,7 @@ export declare class VersionMaker {
61
61
  private dependencyResolver;
62
62
  private allComponentsToTag;
63
63
  private allWorkspaceComps?;
64
+ private batchId;
64
65
  constructor(snapping: SnappingMain, components: Component[], consumerComponents: ConsumerComponent[], ids: ComponentIdList, params: VersionMakerParams);
65
66
  makeVersion(): Promise<{
66
67
  taggedComponents: ConsumerComponent[];
@@ -69,6 +70,7 @@ export declare class VersionMaker {
69
70
  stagedConfig?: StagedConfig;
70
71
  removedComponents?: ComponentIdList;
71
72
  totalComponentsCount?: number;
73
+ batchId: string;
72
74
  }>;
73
75
  private _addDependenciesGraphToComponents;
74
76
  private _findWorkspaceCompByConsumerComp;
@@ -160,6 +160,7 @@ class VersionMaker {
160
160
  _defineProperty(this, "dependencyResolver", void 0);
161
161
  _defineProperty(this, "allComponentsToTag", []);
162
162
  _defineProperty(this, "allWorkspaceComps", void 0);
163
+ _defineProperty(this, "batchId", '');
163
164
  this.workspace = snapping.workspace;
164
165
  this.scope = snapping.scope;
165
166
  this.builder = snapping.builder;
@@ -168,6 +169,7 @@ class VersionMaker {
168
169
  this.legacyScope = this.scope.legacyScope;
169
170
  }
170
171
  async makeVersion() {
172
+ this.batchId = (0, _uuid().v4)();
171
173
  this.allWorkspaceComps = this.workspace ? await this.workspace.list() : undefined;
172
174
  const componentsToTag = this.getUniqCompsToTag();
173
175
  const idsToTag = _componentId().ComponentIdList.fromArray(componentsToTag.map(c => c.id));
@@ -205,7 +207,8 @@ class VersionMaker {
205
207
  autoTaggedResults: autoTagData,
206
208
  publishedPackages: [],
207
209
  stagedConfig,
208
- totalComponentsCount: this.allComponentsToTag.length
210
+ totalComponentsCount: this.allComponentsToTag.length,
211
+ batchId: this.batchId
209
212
  };
210
213
  }
211
214
  const {
@@ -232,7 +235,8 @@ class VersionMaker {
232
235
  setHeadAsParent,
233
236
  detachHead,
234
237
  overrideHead: overrideHead
235
- }
238
+ },
239
+ batchId: this.batchId
236
240
  });
237
241
  if (this.workspace) {
238
242
  const modelComponent = component.modelComponent || (await this.legacyScope.getModelComponent(component.id));
@@ -267,7 +271,8 @@ class VersionMaker {
267
271
  publishedPackages,
268
272
  stagedConfig,
269
273
  removedComponents,
270
- totalComponentsCount: this.allComponentsToTag.length
274
+ totalComponentsCount: this.allComponentsToTag.length,
275
+ batchId: this.batchId
271
276
  };
272
277
  }
273
278
  async _addDependenciesGraphToComponents() {