@teambit/merging 1.0.310 → 1.0.311

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.
@@ -1,4 +1,4 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <testsuites tests="0" failures="0" errors="0" skipped="0">
3
- <testsuite name="teambit.component/merging@1.0.310" tests="0" failures="0" errors="0" skipped="0"/>
3
+ <testsuite name="teambit.component/merging@1.0.311" tests="0" failures="0" errors="0" skipped="0"/>
4
4
  </testsuites>
@@ -274,7 +274,8 @@
274
274
  "character": 1
275
275
  },
276
276
  "raw": "/**\n * shows only the file-changes section.\n * if all files are \"unchanged\", it returns an empty string\n */",
277
- "comment": "shows only the file-changes section.\nif all files are \"unchanged\", it returns an empty string"
277
+ "comment": "shows only the file-changes section.\nif all files are \"unchanged\", it returns an empty string",
278
+ "tags": []
278
279
  },
279
280
  "signature": "function applyVersionReport(components: ApplyVersionResult[], addName?: boolean, showVersion?: boolean): string",
280
281
  "name": "applyVersionReport",
@@ -1358,7 +1359,8 @@
1358
1359
  "character": 3
1359
1360
  },
1360
1361
  "raw": "/**\n * when user is on main, it merges the remote main components into local.\n * when user is on a lane, it merges the remote lane components into the local lane.\n */",
1361
- "comment": "when user is on main, it merges the remote main components into local.\nwhen user is on a lane, it merges the remote lane components into the local lane."
1362
+ "comment": "when user is on main, it merges the remote main components into local.\nwhen user is on a lane, it merges the remote lane components into the local lane.",
1363
+ "tags": []
1362
1364
  },
1363
1365
  "signature": "(method) MergingMain.mergeComponentsFromRemote(consumer: Consumer, bitIds: ComponentID[], mergeStrategy: MergeStrategy, noSnap: boolean, snapMessage: string, build: boolean, skipDependencyInstallation: boolean): Promise<ApplyVersionResults>",
1364
1366
  "name": "mergeComponentsFromRemote",
@@ -1558,9 +1560,10 @@
1558
1560
  "character": 3
1559
1561
  },
1560
1562
  "raw": "/**\n * merge multiple components according to the \"allComponentsStatus\".\n */",
1561
- "comment": "merge multiple components according to the \"allComponentsStatus\"."
1563
+ "comment": "merge multiple components according to the \"allComponentsStatus\".",
1564
+ "tags": []
1562
1565
  },
1563
- "signature": "(method) MergingMain.mergeSnaps({ mergeStrategy, allComponentsStatus, otherLaneId, currentLane, noSnap, tag, snapMessage, build, skipDependencyInstallation, }: {\n mergeStrategy: MergeStrategy;\n allComponentsStatus: ComponentMergeStatus[];\n otherLaneId: LaneId;\n currentLane?: Lane;\n noSnap: boolean;\n tag?: boolean;\n snapMessage: string;\n build: boolean;\n skipDependencyInstallation?: boolean;\n}): Promise<ApplyVersionResults>",
1566
+ "signature": "(method) MergingMain.mergeSnaps({ mergeStrategy, allComponentsStatus, otherLaneId, currentLane, noSnap, tag, snapMessage, build, skipDependencyInstallation, }: {\n mergeStrategy: MergeStrategy;\n allComponentsStatus: ComponentMergeStatus[];\n otherLaneId: LaneId;\n currentLane?: Lane;\n noSnap?: boolean;\n tag?: boolean;\n snapMessage?: string;\n build?: boolean;\n skipDependencyInstallation?: boolean;\n}): Promise<ApplyVersionResults>",
1564
1567
  "name": "mergeSnaps",
1565
1568
  "params": [
1566
1569
  {
@@ -1681,18 +1684,18 @@
1681
1684
  "line": 225,
1682
1685
  "character": 5
1683
1686
  },
1684
- "signature": "(property) noSnap: boolean",
1687
+ "signature": "(property) noSnap?: boolean | undefined",
1685
1688
  "name": "noSnap",
1686
1689
  "type": {
1687
1690
  "__schema": "KeywordTypeSchema",
1688
1691
  "location": {
1689
1692
  "filePath": "merging.main.runtime.ts",
1690
1693
  "line": 225,
1691
- "character": 13
1694
+ "character": 14
1692
1695
  },
1693
1696
  "name": "boolean"
1694
1697
  },
1695
- "isOptional": false
1698
+ "isOptional": true
1696
1699
  },
1697
1700
  {
1698
1701
  "__schema": "VariableLikeSchema",
@@ -1721,18 +1724,18 @@
1721
1724
  "line": 227,
1722
1725
  "character": 5
1723
1726
  },
1724
- "signature": "(property) snapMessage: string",
1727
+ "signature": "(property) snapMessage?: string | undefined",
1725
1728
  "name": "snapMessage",
1726
1729
  "type": {
1727
1730
  "__schema": "KeywordTypeSchema",
1728
1731
  "location": {
1729
1732
  "filePath": "merging.main.runtime.ts",
1730
1733
  "line": 227,
1731
- "character": 18
1734
+ "character": 19
1732
1735
  },
1733
1736
  "name": "string"
1734
1737
  },
1735
- "isOptional": false
1738
+ "isOptional": true
1736
1739
  },
1737
1740
  {
1738
1741
  "__schema": "VariableLikeSchema",
@@ -1741,18 +1744,18 @@
1741
1744
  "line": 228,
1742
1745
  "character": 5
1743
1746
  },
1744
- "signature": "(property) build: boolean",
1747
+ "signature": "(property) build?: boolean | undefined",
1745
1748
  "name": "build",
1746
1749
  "type": {
1747
1750
  "__schema": "KeywordTypeSchema",
1748
1751
  "location": {
1749
1752
  "filePath": "merging.main.runtime.ts",
1750
1753
  "line": 228,
1751
- "character": 12
1754
+ "character": 13
1752
1755
  },
1753
1756
  "name": "boolean"
1754
1757
  },
1755
- "isOptional": false
1758
+ "isOptional": true
1756
1759
  },
1757
1760
  {
1758
1761
  "__schema": "VariableLikeSchema",
@@ -1880,18 +1883,18 @@
1880
1883
  "line": 225,
1881
1884
  "character": 5
1882
1885
  },
1883
- "signature": "(property) noSnap: boolean",
1886
+ "signature": "(property) noSnap?: boolean | undefined",
1884
1887
  "name": "noSnap",
1885
1888
  "type": {
1886
1889
  "__schema": "KeywordTypeSchema",
1887
1890
  "location": {
1888
1891
  "filePath": "merging.main.runtime.ts",
1889
1892
  "line": 225,
1890
- "character": 13
1893
+ "character": 14
1891
1894
  },
1892
1895
  "name": "boolean"
1893
1896
  },
1894
- "isOptional": false
1897
+ "isOptional": true
1895
1898
  },
1896
1899
  {
1897
1900
  "__schema": "VariableLikeSchema",
@@ -1920,18 +1923,18 @@
1920
1923
  "line": 227,
1921
1924
  "character": 5
1922
1925
  },
1923
- "signature": "(property) snapMessage: string",
1926
+ "signature": "(property) snapMessage?: string | undefined",
1924
1927
  "name": "snapMessage",
1925
1928
  "type": {
1926
1929
  "__schema": "KeywordTypeSchema",
1927
1930
  "location": {
1928
1931
  "filePath": "merging.main.runtime.ts",
1929
1932
  "line": 227,
1930
- "character": 18
1933
+ "character": 19
1931
1934
  },
1932
1935
  "name": "string"
1933
1936
  },
1934
- "isOptional": false
1937
+ "isOptional": true
1935
1938
  },
1936
1939
  {
1937
1940
  "__schema": "VariableLikeSchema",
@@ -1940,18 +1943,18 @@
1940
1943
  "line": 228,
1941
1944
  "character": 5
1942
1945
  },
1943
- "signature": "(property) build: boolean",
1946
+ "signature": "(property) build?: boolean | undefined",
1944
1947
  "name": "build",
1945
1948
  "type": {
1946
1949
  "__schema": "KeywordTypeSchema",
1947
1950
  "location": {
1948
1951
  "filePath": "merging.main.runtime.ts",
1949
1952
  "line": 228,
1950
- "character": 12
1953
+ "character": 13
1951
1954
  },
1952
1955
  "name": "boolean"
1953
1956
  },
1954
- "isOptional": false
1957
+ "isOptional": true
1955
1958
  },
1956
1959
  {
1957
1960
  "__schema": "VariableLikeSchema",
@@ -2118,7 +2121,8 @@
2118
2121
  "character": 3
2119
2122
  },
2120
2123
  "raw": "/**\n * this function gets called from two different commands:\n * 1. \"bit merge <ids...>\", when merging a component from a remote to the local.\n * in this case, the remote and local are on the same lane or both on main.\n * 2. \"bit lane merge\", when merging from one lane to another.\n */",
2121
- "comment": "this function gets called from two different commands:\n1. \"bit merge <ids...>\", when merging a component from a remote to the local.\nin this case, the remote and local are on the same lane or both on main.\n2. \"bit lane merge\", when merging from one lane to another."
2124
+ "comment": "this function gets called from two different commands:\n1. \"bit merge <ids...>\", when merging a component from a remote to the local.\nin this case, the remote and local are on the same lane or both on main.\n2. \"bit lane merge\", when merging from one lane to another.",
2125
+ "tags": []
2122
2126
  },
2123
2127
  "signature": "(method) MergingMain.getMergeStatus(bitIds: ComponentID[], options: MergeStatusProviderOptions, currentLane?: Lane, otherLane?: Lane): Promise<ComponentMergeStatus[]>",
2124
2128
  "name": "getMergeStatus",
@@ -4236,7 +4240,7 @@
4236
4240
  "_legacy": {
4237
4241
  "scope": "teambit.component",
4238
4242
  "name": "merging",
4239
- "version": "1.0.310"
4243
+ "version": "1.0.311"
4240
4244
  },
4241
4245
  "_scope": "teambit.component"
4242
4246
  }
@@ -4536,7 +4540,8 @@
4536
4540
  "character": 1
4537
4541
  },
4538
4542
  "raw": "/**\n * shows only the file-changes section.\n * if all files are \"unchanged\", it returns an empty string\n */",
4539
- "comment": "shows only the file-changes section.\nif all files are \"unchanged\", it returns an empty string"
4543
+ "comment": "shows only the file-changes section.\nif all files are \"unchanged\", it returns an empty string",
4544
+ "tags": []
4540
4545
  },
4541
4546
  "signature": "function applyVersionReport(components: ApplyVersionResult[], addName?: boolean, showVersion?: boolean): string",
4542
4547
  "name": "applyVersionReport",
@@ -6652,7 +6657,8 @@
6652
6657
  "character": 3
6653
6658
  },
6654
6659
  "raw": "/**\n * when user is on main, it merges the remote main components into local.\n * when user is on a lane, it merges the remote lane components into the local lane.\n */",
6655
- "comment": "when user is on main, it merges the remote main components into local.\nwhen user is on a lane, it merges the remote lane components into the local lane."
6660
+ "comment": "when user is on main, it merges the remote main components into local.\nwhen user is on a lane, it merges the remote lane components into the local lane.",
6661
+ "tags": []
6656
6662
  },
6657
6663
  "signature": "(method) MergingMain.mergeComponentsFromRemote(consumer: Consumer, bitIds: ComponentID[], mergeStrategy: MergeStrategy, noSnap: boolean, snapMessage: string, build: boolean, skipDependencyInstallation: boolean): Promise<ApplyVersionResults>",
6658
6664
  "name": "mergeComponentsFromRemote",
@@ -6852,9 +6858,10 @@
6852
6858
  "character": 3
6853
6859
  },
6854
6860
  "raw": "/**\n * merge multiple components according to the \"allComponentsStatus\".\n */",
6855
- "comment": "merge multiple components according to the \"allComponentsStatus\"."
6861
+ "comment": "merge multiple components according to the \"allComponentsStatus\".",
6862
+ "tags": []
6856
6863
  },
6857
- "signature": "(method) MergingMain.mergeSnaps({ mergeStrategy, allComponentsStatus, otherLaneId, currentLane, noSnap, tag, snapMessage, build, skipDependencyInstallation, }: {\n mergeStrategy: MergeStrategy;\n allComponentsStatus: ComponentMergeStatus[];\n otherLaneId: LaneId;\n currentLane?: Lane;\n noSnap: boolean;\n tag?: boolean;\n snapMessage: string;\n build: boolean;\n skipDependencyInstallation?: boolean;\n}): Promise<ApplyVersionResults>",
6864
+ "signature": "(method) MergingMain.mergeSnaps({ mergeStrategy, allComponentsStatus, otherLaneId, currentLane, noSnap, tag, snapMessage, build, skipDependencyInstallation, }: {\n mergeStrategy: MergeStrategy;\n allComponentsStatus: ComponentMergeStatus[];\n otherLaneId: LaneId;\n currentLane?: Lane;\n noSnap?: boolean;\n tag?: boolean;\n snapMessage?: string;\n build?: boolean;\n skipDependencyInstallation?: boolean;\n}): Promise<ApplyVersionResults>",
6858
6865
  "name": "mergeSnaps",
6859
6866
  "params": [
6860
6867
  {
@@ -6975,18 +6982,18 @@
6975
6982
  "line": 225,
6976
6983
  "character": 5
6977
6984
  },
6978
- "signature": "(property) noSnap: boolean",
6985
+ "signature": "(property) noSnap?: boolean | undefined",
6979
6986
  "name": "noSnap",
6980
6987
  "type": {
6981
6988
  "__schema": "KeywordTypeSchema",
6982
6989
  "location": {
6983
6990
  "filePath": "merging.main.runtime.ts",
6984
6991
  "line": 225,
6985
- "character": 13
6992
+ "character": 14
6986
6993
  },
6987
6994
  "name": "boolean"
6988
6995
  },
6989
- "isOptional": false
6996
+ "isOptional": true
6990
6997
  },
6991
6998
  {
6992
6999
  "__schema": "VariableLikeSchema",
@@ -7015,18 +7022,18 @@
7015
7022
  "line": 227,
7016
7023
  "character": 5
7017
7024
  },
7018
- "signature": "(property) snapMessage: string",
7025
+ "signature": "(property) snapMessage?: string | undefined",
7019
7026
  "name": "snapMessage",
7020
7027
  "type": {
7021
7028
  "__schema": "KeywordTypeSchema",
7022
7029
  "location": {
7023
7030
  "filePath": "merging.main.runtime.ts",
7024
7031
  "line": 227,
7025
- "character": 18
7032
+ "character": 19
7026
7033
  },
7027
7034
  "name": "string"
7028
7035
  },
7029
- "isOptional": false
7036
+ "isOptional": true
7030
7037
  },
7031
7038
  {
7032
7039
  "__schema": "VariableLikeSchema",
@@ -7035,18 +7042,18 @@
7035
7042
  "line": 228,
7036
7043
  "character": 5
7037
7044
  },
7038
- "signature": "(property) build: boolean",
7045
+ "signature": "(property) build?: boolean | undefined",
7039
7046
  "name": "build",
7040
7047
  "type": {
7041
7048
  "__schema": "KeywordTypeSchema",
7042
7049
  "location": {
7043
7050
  "filePath": "merging.main.runtime.ts",
7044
7051
  "line": 228,
7045
- "character": 12
7052
+ "character": 13
7046
7053
  },
7047
7054
  "name": "boolean"
7048
7055
  },
7049
- "isOptional": false
7056
+ "isOptional": true
7050
7057
  },
7051
7058
  {
7052
7059
  "__schema": "VariableLikeSchema",
@@ -7174,18 +7181,18 @@
7174
7181
  "line": 225,
7175
7182
  "character": 5
7176
7183
  },
7177
- "signature": "(property) noSnap: boolean",
7184
+ "signature": "(property) noSnap?: boolean | undefined",
7178
7185
  "name": "noSnap",
7179
7186
  "type": {
7180
7187
  "__schema": "KeywordTypeSchema",
7181
7188
  "location": {
7182
7189
  "filePath": "merging.main.runtime.ts",
7183
7190
  "line": 225,
7184
- "character": 13
7191
+ "character": 14
7185
7192
  },
7186
7193
  "name": "boolean"
7187
7194
  },
7188
- "isOptional": false
7195
+ "isOptional": true
7189
7196
  },
7190
7197
  {
7191
7198
  "__schema": "VariableLikeSchema",
@@ -7214,18 +7221,18 @@
7214
7221
  "line": 227,
7215
7222
  "character": 5
7216
7223
  },
7217
- "signature": "(property) snapMessage: string",
7224
+ "signature": "(property) snapMessage?: string | undefined",
7218
7225
  "name": "snapMessage",
7219
7226
  "type": {
7220
7227
  "__schema": "KeywordTypeSchema",
7221
7228
  "location": {
7222
7229
  "filePath": "merging.main.runtime.ts",
7223
7230
  "line": 227,
7224
- "character": 18
7231
+ "character": 19
7225
7232
  },
7226
7233
  "name": "string"
7227
7234
  },
7228
- "isOptional": false
7235
+ "isOptional": true
7229
7236
  },
7230
7237
  {
7231
7238
  "__schema": "VariableLikeSchema",
@@ -7234,18 +7241,18 @@
7234
7241
  "line": 228,
7235
7242
  "character": 5
7236
7243
  },
7237
- "signature": "(property) build: boolean",
7244
+ "signature": "(property) build?: boolean | undefined",
7238
7245
  "name": "build",
7239
7246
  "type": {
7240
7247
  "__schema": "KeywordTypeSchema",
7241
7248
  "location": {
7242
7249
  "filePath": "merging.main.runtime.ts",
7243
7250
  "line": 228,
7244
- "character": 12
7251
+ "character": 13
7245
7252
  },
7246
7253
  "name": "boolean"
7247
7254
  },
7248
- "isOptional": false
7255
+ "isOptional": true
7249
7256
  },
7250
7257
  {
7251
7258
  "__schema": "VariableLikeSchema",
@@ -7412,7 +7419,8 @@
7412
7419
  "character": 3
7413
7420
  },
7414
7421
  "raw": "/**\n * this function gets called from two different commands:\n * 1. \"bit merge <ids...>\", when merging a component from a remote to the local.\n * in this case, the remote and local are on the same lane or both on main.\n * 2. \"bit lane merge\", when merging from one lane to another.\n */",
7415
- "comment": "this function gets called from two different commands:\n1. \"bit merge <ids...>\", when merging a component from a remote to the local.\nin this case, the remote and local are on the same lane or both on main.\n2. \"bit lane merge\", when merging from one lane to another."
7422
+ "comment": "this function gets called from two different commands:\n1. \"bit merge <ids...>\", when merging a component from a remote to the local.\nin this case, the remote and local are on the same lane or both on main.\n2. \"bit lane merge\", when merging from one lane to another.",
7423
+ "tags": []
7416
7424
  },
7417
7425
  "signature": "(method) MergingMain.getMergeStatus(bitIds: ComponentID[], options: MergeStatusProviderOptions, currentLane?: Lane, otherLane?: Lane): Promise<ComponentMergeStatus[]>",
7418
7426
  "name": "getMergeStatus",
@@ -8004,7 +8012,7 @@
8004
8012
  "componentId": {
8005
8013
  "scope": "teambit.component",
8006
8014
  "name": "merging",
8007
- "version": "1.0.310"
8015
+ "version": "1.0.311"
8008
8016
  },
8009
8017
  "taggedModuleExports": []
8010
8018
  }
@@ -108,10 +108,10 @@ export declare class MergingMain {
108
108
  allComponentsStatus: ComponentMergeStatus[];
109
109
  otherLaneId: LaneId;
110
110
  currentLane?: Lane;
111
- noSnap: boolean;
111
+ noSnap?: boolean;
112
112
  tag?: boolean;
113
- snapMessage: string;
114
- build: boolean;
113
+ snapMessage?: string;
114
+ build?: boolean;
115
115
  skipDependencyInstallation?: boolean;
116
116
  }): Promise<ApplyVersionResults>;
117
117
  removeFromWsJsonPolicyIfExists(componentsResults: ApplyVersionWithComps[], currentLane?: Lane, currentLaneIdsBeforeMerge?: ComponentIdList): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_workspace","_componentsList","_interopRequireDefault","_mergeVersion","_snapping","_hasWildcard","_pMapSeries","_componentId","_bitError","_laneId","_chalk","_config","_remove","_utils","_componentWriter","_importer","_logger","_globalConfig","_lodash","_checkout","_deleteComponentFiles","_configMerger","_componentIdToPackageName","_dependencyResolver","_install","_scope","_mergeCmd","_merging","_mergeStatusProvider","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","MergingMain","constructor","workspace","scope","install","snapping","checkout","logger","componentWriter","importer","config","remove","configMerger","depResolver","merge","ids","mergeStrategy","abort","resolve","noSnap","message","build","skipDependencyInstallation","OutsideWorkspaceError","consumer","mergeResults","resolveMerge","abortMerge","bitIds","getComponentsToMerge","mergeComponentsFromRemote","onDestroy","snapMessage","currentLaneId","getCurrentLaneId","currentLaneObject","getCurrentLaneObject","allComponentsStatus","getAllComponentsStatus","failedComponents","c","unchangedMessage","unchangedLegitimately","failureMsgs","map","failedComponent","chalk","bold","id","toString","red","join","BitError","mergeSnaps","otherLaneId","currentLane","tag","legacyScope","componentWithConflict","find","component","hasConflicts","getMergeStrategyInteractive","componentStatus","shouldBeRemoved","componentIdsToRemove","changeVersion","undefined","succeededComponents","currentLaneIdsBeforeMerge","toComponentIds","componentsResults","applyVersionMultiple","allConfigMerge","compact","configMergeResult","workspaceDepsUpdates","workspaceDepsConflicts","workspaceDepsUnchanged","updateWorkspaceJsoncWithDepsIfNeeded","workspaceConfigConflictWriteError","writeWorkspaceJsoncWithConflictsGracefully","generateConfigMergeConflictFileForAll","objects","add","persist","unmergedComponents","write","writeBitMap","removeFromWsJsonPolicyIfExists","compBitIdsToRemove","ComponentIdList","fromArray","deleteComponentsFiles","cleanFromBitMap","componentsHasConfigMergeConflicts","some","leftUnresolvedConflicts","dedupe","updateExisting","import","err","error","consoleFailure","getSnapOrTagResults","idsToTag","results","tagAllLaneComponent","taggedComponents","autoTaggedResults","removedComponents","snappedComponents","autoSnappedResults","snapResolvedComponents","toLaneId","mergeSnapResults","mergeSnapError","bitMapSnapshot","bitMap","takeSnapshot","restoreFromSnapshot","components","applyVersionResult","workspaceConfigUpdateResult","newlyIntroducedIds","hasWithoutVersion","newlyIntroducedComponentIds","legacyCompToWrite","packages","componentIdToPackageName","isRemoved","removeFromRootPolicy","persistConfig","getMergeStatus","options","otherLane","mergeStatusProvider","MergeStatusProvider","getStatus","mapSeries","currentComponent","resolvedUnrelated","modelComponent","getModelComponent","updatedLaneId","isDefault","LaneId","from","name","applyVersion","remoteHead","getRef","version","compsToWrite","manyComponentsWriterOpts","writeConfig","reasonForBitmapChange","writeMany","filesStatus","unmergedComponent","fullName","head","laneId","addToCurrentLane","Error","isPartOfLane","isEqualWithoutVersion","addComponent","handleResolveUnrelated","headOnCurrentLane","unrelated","unrelatedHead","unrelatedLaneId","addEntry","markAllFilesAsUnchanged","files","file","pathNormalizeToLinux","relative","FileStatus","unchanged","MergeOptions","ours","strategy","remoteId","idToLoad","theirs","legacyComponent","loadComponentFromModelImportIfNeeded","getConsumerComponent","updateFileStatus","modifiedStatus","modifiedFiles","applyModifiedVersion","removeFilesIfNeeded","successfullyMergedConfig","getSuccessfullyMergedConfig","mergedConfig","manual","unmergedPaths","f","conflict","filePath","setHead","markVersionAsLocal","values","getIdsForUnmerged","reset","removeComponent","abortedComponents","snap","legacyBitIds","resolvedComponents","localLaneObject","Promise","all","bitId","remoteScopeName","remoteLaneId","remoteLanes","laneIdStr","toStringWithoutVersion","shouldSquash","getComponents","debug","ComponentID","fromObject","snapFromScope","componentId","lane","tagMessage","unmodified","idsStr","componentIds","resolveMultipleComponentIds","entry","getEntry","unresolvedComponents","u","componentsList","ComponentsList","mergePending","listMergePendingComponents","hasWildcard","listComponentsByIdsWithWildcard","getParsedId","provider","cli","loggerMain","compWriter","globalConfig","createLogger","MergingAspect","merging","register","MergeCmd","exports","CLIAspect","WorkspaceAspect","ScopeAspect","SnappingAspect","CheckoutAspect","InstallAspect","LoggerAspect","ComponentWriterAspect","ImporterAspect","ConfigAspect","RemoveAspect","GlobalConfigAspect","ConfigMergerAspect","DependencyResolverAspect","MainRuntime","addRuntime"],"sources":["merging.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { WorkspaceAspect, OutsideWorkspaceError, Workspace } from '@teambit/workspace';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport ComponentsList from '@teambit/legacy/dist/consumer/component/components-list';\nimport {\n MergeStrategy,\n FileStatus,\n getMergeStrategyInteractive,\n MergeOptions,\n} from '@teambit/legacy/dist/consumer/versions-ops/merge-version';\nimport { SnappingAspect, SnappingMain, TagResults } from '@teambit/snapping';\nimport hasWildcard from '@teambit/legacy/dist/utils/string/has-wildcard';\nimport mapSeries from 'p-map-series';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { BitError } from '@teambit/bit-error';\nimport { LaneId } from '@teambit/lane-id';\nimport { AutoTagResult } from '@teambit/legacy/dist/scope/component-ops/auto-tag';\nimport { UnmergedComponent } from '@teambit/legacy/dist/scope/lanes/unmerged-components';\nimport { Lane, ModelComponent } from '@teambit/legacy/dist/scope/models';\nimport { Ref } from '@teambit/legacy/dist/scope/objects';\nimport chalk from 'chalk';\nimport { ConfigAspect, ConfigMain } from '@teambit/config';\nimport { RemoveAspect, RemoveMain } from '@teambit/remove';\nimport { pathNormalizeToLinux } from '@teambit/legacy/dist/utils';\nimport { ComponentWriterAspect, ComponentWriterMain } from '@teambit/component-writer';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component/consumer-component';\nimport { ImporterAspect, ImporterMain } from '@teambit/importer';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { GlobalConfigAspect, GlobalConfigMain } from '@teambit/global-config';\nimport { compact } from 'lodash';\nimport { MergeResultsThreeWay } from '@teambit/legacy/dist/consumer/versions-ops/merge-version/three-way-merge';\nimport {\n ApplyVersionWithComps,\n CheckoutAspect,\n CheckoutMain,\n ComponentStatusBase,\n applyModifiedVersion,\n removeFilesIfNeeded,\n updateFileStatus,\n} from '@teambit/checkout';\nimport deleteComponentsFiles from '@teambit/legacy/dist/consumer/component-ops/delete-component-files';\nimport {\n ConfigMergerAspect,\n ConfigMergerMain,\n ConfigMergeResult,\n WorkspaceConfigUpdateResult,\n} from '@teambit/config-merger';\nimport { SnapsDistance } from '@teambit/legacy/dist/scope/component-ops/snaps-distance';\nimport componentIdToPackageName from '@teambit/legacy/dist/utils/bit/component-id-to-package-name';\nimport { DependencyResolverAspect, DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { InstallMain, InstallAspect } from '@teambit/install';\nimport { ScopeAspect, ScopeMain } from '@teambit/scope';\nimport { MergeCmd } from './merge-cmd';\nimport { MergingAspect } from './merging.aspect';\nimport { MergeStatusProvider, MergeStatusProviderOptions } from './merge-status-provider';\n\ntype ResolveUnrelatedData = {\n strategy: MergeStrategy;\n headOnCurrentLane: Ref;\n unrelatedHead: Ref;\n unrelatedLaneId: LaneId;\n};\n\nexport type ComponentMergeStatus = ComponentStatusBase & {\n mergeResults?: MergeResultsThreeWay | null;\n divergeData?: SnapsDistance;\n resolvedUnrelated?: ResolveUnrelatedData;\n configMergeResult?: ConfigMergeResult;\n};\n\nexport type ComponentMergeStatusBeforeMergeAttempt = ComponentStatusBase & {\n divergeData?: SnapsDistance;\n resolvedUnrelated?: ResolveUnrelatedData;\n mergeProps?: {\n otherLaneHead: Ref;\n currentId: ComponentID;\n modelComponent: ModelComponent;\n };\n};\n\nexport type FailedComponents = { id: ComponentID; unchangedMessage: string; unchangedLegitimately?: boolean };\n\n// fileName is PathLinux. TS doesn't let anything else in the keys other than string and number\nexport type FilesStatus = { [fileName: string]: keyof typeof FileStatus };\n\nexport type MergeSnapResults = {\n snappedComponents: ConsumerComponent[];\n autoSnappedResults: AutoTagResult[];\n removedComponents?: ComponentIdList;\n exportedIds?: ComponentID[];\n} | null;\n\nexport type ApplyVersionResult = { id: ComponentID; filesStatus: FilesStatus };\n\nexport type ApplyVersionResults = {\n components?: ApplyVersionResult[];\n version?: string;\n failedComponents?: FailedComponents[];\n removedComponents?: ComponentID[];\n addedComponents?: ComponentID[]; // relevant when restoreMissingComponents is true (e.g. bit lane merge-abort)\n resolvedComponents?: ConsumerComponent[]; // relevant for bit merge --resolve\n abortedComponents?: ApplyVersionResult[]; // relevant for bit merge --abort\n mergeSnapResults?: MergeSnapResults;\n mergeSnapError?: Error;\n leftUnresolvedConflicts?: boolean;\n verbose?: boolean;\n newFromLane?: string[];\n newFromLaneAdded?: boolean;\n installationError?: Error; // in case the package manager failed, it won't throw, instead, it'll return error here\n compilationError?: Error; // in case the compiler failed, it won't throw, instead, it'll return error here\n workspaceConfigUpdateResult?: WorkspaceConfigUpdateResult;\n};\n\nexport class MergingMain {\n constructor(\n private workspace: Workspace,\n private scope: ScopeMain,\n private install: InstallMain,\n private snapping: SnappingMain,\n private checkout: CheckoutMain,\n private logger: Logger,\n private componentWriter: ComponentWriterMain,\n private importer: ImporterMain,\n private config: ConfigMain,\n private remove: RemoveMain,\n private configMerger: ConfigMergerMain,\n private depResolver: DependencyResolverMain\n ) {}\n\n async merge(\n ids: string[],\n mergeStrategy: MergeStrategy,\n abort: boolean,\n resolve: boolean,\n noSnap: boolean,\n message: string,\n build: boolean,\n skipDependencyInstallation: boolean\n ): Promise<ApplyVersionResults> {\n if (!this.workspace) throw new OutsideWorkspaceError();\n const consumer: Consumer = this.workspace.consumer;\n let mergeResults;\n if (resolve) {\n mergeResults = await this.resolveMerge(ids, message, build);\n } else if (abort) {\n mergeResults = await this.abortMerge(ids);\n } else {\n const bitIds = await this.getComponentsToMerge(consumer, ids);\n mergeResults = await this.mergeComponentsFromRemote(\n consumer,\n bitIds,\n mergeStrategy,\n noSnap,\n message,\n build,\n skipDependencyInstallation\n );\n }\n await consumer.onDestroy('merge');\n return mergeResults;\n }\n\n /**\n * when user is on main, it merges the remote main components into local.\n * when user is on a lane, it merges the remote lane components into the local lane.\n */\n async mergeComponentsFromRemote(\n consumer: Consumer,\n bitIds: ComponentID[],\n mergeStrategy: MergeStrategy,\n noSnap: boolean,\n snapMessage: string,\n build: boolean,\n skipDependencyInstallation: boolean\n ): Promise<ApplyVersionResults> {\n const currentLaneId = consumer.getCurrentLaneId();\n const currentLaneObject = await consumer.getCurrentLaneObject();\n const allComponentsStatus = await this.getAllComponentsStatus(\n bitIds,\n currentLaneId,\n currentLaneObject,\n mergeStrategy\n );\n const failedComponents = allComponentsStatus.filter((c) => c.unchangedMessage && !c.unchangedLegitimately);\n if (failedComponents.length) {\n const failureMsgs = failedComponents\n .map(\n (failedComponent) =>\n `${chalk.bold(failedComponent.id.toString())} - ${chalk.red(failedComponent.unchangedMessage as string)}`\n )\n .join('\\n');\n throw new BitError(`unable to merge due to the following failures:\\n${failureMsgs}`);\n }\n\n return this.mergeSnaps({\n mergeStrategy,\n allComponentsStatus,\n otherLaneId: currentLaneId,\n currentLane: currentLaneObject,\n noSnap,\n snapMessage,\n build,\n skipDependencyInstallation,\n });\n }\n\n /**\n * merge multiple components according to the \"allComponentsStatus\".\n */\n async mergeSnaps({\n mergeStrategy,\n allComponentsStatus,\n otherLaneId,\n currentLane,\n noSnap,\n tag,\n snapMessage,\n build,\n skipDependencyInstallation,\n }: {\n mergeStrategy: MergeStrategy;\n allComponentsStatus: ComponentMergeStatus[];\n otherLaneId: LaneId;\n currentLane?: Lane;\n noSnap: boolean;\n tag?: boolean;\n snapMessage: string;\n build: boolean;\n skipDependencyInstallation?: boolean;\n }): Promise<ApplyVersionResults> {\n const consumer = this.workspace?.consumer;\n const legacyScope = this.scope.legacyScope;\n const componentWithConflict = allComponentsStatus.find(\n (component) => component.mergeResults && component.mergeResults.hasConflicts\n );\n if (componentWithConflict && !mergeStrategy) {\n mergeStrategy = await getMergeStrategyInteractive();\n }\n const failedComponents: FailedComponents[] = allComponentsStatus\n .filter((componentStatus) => componentStatus.unchangedMessage)\n .filter((componentStatus) => !componentStatus.shouldBeRemoved)\n .map((componentStatus) => ({\n id: componentStatus.id,\n unchangedMessage: componentStatus.unchangedMessage as string,\n unchangedLegitimately: componentStatus.unchangedLegitimately,\n }));\n\n const componentIdsToRemove = allComponentsStatus\n .filter((componentStatus) => componentStatus.shouldBeRemoved)\n .map((c) => c.id.changeVersion(undefined));\n\n const succeededComponents = allComponentsStatus.filter((componentStatus) => !componentStatus.unchangedMessage);\n\n const currentLaneIdsBeforeMerge = currentLane?.toComponentIds();\n\n const componentsResults = await this.applyVersionMultiple(\n succeededComponents,\n otherLaneId,\n mergeStrategy,\n currentLane\n );\n\n const allConfigMerge = compact(succeededComponents.map((c) => c.configMergeResult));\n\n const { workspaceDepsUpdates, workspaceDepsConflicts, workspaceDepsUnchanged } = this.workspace\n ? await this.configMerger.updateWorkspaceJsoncWithDepsIfNeeded(allConfigMerge)\n : { workspaceDepsUpdates: undefined, workspaceDepsConflicts: undefined, workspaceDepsUnchanged: undefined };\n\n let workspaceConfigConflictWriteError: Error | undefined;\n if (workspaceDepsConflicts) {\n workspaceConfigConflictWriteError = await this.configMerger.writeWorkspaceJsoncWithConflictsGracefully(\n workspaceDepsConflicts\n );\n }\n if (this.workspace) await this.configMerger.generateConfigMergeConflictFileForAll(allConfigMerge);\n\n if (currentLane) legacyScope.objects.add(currentLane);\n\n await legacyScope.objects.persist(); // persist anyway, if currentLane is null it should save all main heads\n\n await legacyScope.objects.unmergedComponents.write();\n\n if (this.workspace) {\n await consumer.writeBitMap(`merge ${otherLaneId.toString()}`);\n await this.removeFromWsJsonPolicyIfExists(componentsResults, currentLane, currentLaneIdsBeforeMerge);\n }\n\n if (componentIdsToRemove.length && this.workspace) {\n const compBitIdsToRemove = ComponentIdList.fromArray(componentIdsToRemove);\n await deleteComponentsFiles(consumer, compBitIdsToRemove);\n await consumer.cleanFromBitMap(compBitIdsToRemove);\n }\n\n const componentsHasConfigMergeConflicts = allComponentsStatus.some((c) => c.configMergeResult?.hasConflicts());\n const leftUnresolvedConflicts = componentWithConflict && mergeStrategy === 'manual';\n if (!skipDependencyInstallation && !leftUnresolvedConflicts && !componentsHasConfigMergeConflicts) {\n try {\n await this.install.install(undefined, {\n dedupe: true,\n updateExisting: false,\n import: false,\n });\n } catch (err: any) {\n this.logger.error(`failed installing packages`, err);\n this.logger.consoleFailure(\n `failed installing packages, see the log for full stacktrace. error: ${err.message}`\n );\n }\n }\n\n const getSnapOrTagResults = async (): Promise<MergeSnapResults> => {\n // if one of the component has conflict, don't snap-merge. otherwise, some of the components would be snap-merged\n // and some not. besides the fact that it could by mistake tag dependent, it's a confusing state. better not snap.\n if (noSnap || leftUnresolvedConflicts || componentsHasConfigMergeConflicts) {\n return null;\n }\n if (tag) {\n const idsToTag = allComponentsStatus.map((c) => c.id);\n const results = await this.tagAllLaneComponent(idsToTag, snapMessage, build);\n if (!results) return null;\n const { taggedComponents, autoTaggedResults, removedComponents } = results;\n return { snappedComponents: taggedComponents, autoSnappedResults: autoTaggedResults, removedComponents };\n }\n return this.snapResolvedComponents(snapMessage, build, currentLane?.toLaneId());\n };\n let mergeSnapResults: MergeSnapResults = null;\n let mergeSnapError: Error | undefined;\n const bitMapSnapshot = this.workspace ? this.workspace.bitMap.takeSnapshot() : null;\n try {\n mergeSnapResults = await getSnapOrTagResults();\n } catch (err: any) {\n this.logger.error('failed running snap. mergeSnapError:', err);\n mergeSnapError = err;\n if (bitMapSnapshot) this.workspace.bitMap.restoreFromSnapshot(bitMapSnapshot);\n }\n\n return {\n components: componentsResults.map((c) => c.applyVersionResult),\n failedComponents,\n removedComponents: [...componentIdsToRemove, ...(mergeSnapResults?.removedComponents || [])],\n mergeSnapResults,\n mergeSnapError,\n workspaceConfigUpdateResult: {\n workspaceDepsUpdates,\n workspaceDepsConflicts,\n workspaceDepsUnchanged,\n workspaceConfigConflictWriteError,\n },\n leftUnresolvedConflicts,\n };\n }\n\n async removeFromWsJsonPolicyIfExists(\n componentsResults: ApplyVersionWithComps[],\n currentLane?: Lane,\n currentLaneIdsBeforeMerge?: ComponentIdList\n ) {\n const newlyIntroducedIds = currentLane\n ?.toComponentIds()\n .filter((id) => !currentLaneIdsBeforeMerge?.hasWithoutVersion(id));\n const newlyIntroducedComponentIds = ComponentIdList.fromArray(newlyIntroducedIds || []);\n const components = compact(\n componentsResults\n .map((c) => c.legacyCompToWrite)\n .filter((c) => c && newlyIntroducedComponentIds.hasWithoutVersion(c.id))\n );\n const packages = components.map((c) => componentIdToPackageName(c));\n const isRemoved = this.depResolver.removeFromRootPolicy(packages);\n if (isRemoved) await this.depResolver.persistConfig('merge (remove packages)');\n }\n\n /**\n * this function gets called from two different commands:\n * 1. \"bit merge <ids...>\", when merging a component from a remote to the local.\n * in this case, the remote and local are on the same lane or both on main.\n * 2. \"bit lane merge\", when merging from one lane to another.\n */\n async getMergeStatus(\n bitIds: ComponentID[], // the id.version is the version we want to merge to the current component\n options: MergeStatusProviderOptions,\n currentLane?: Lane, // currently checked out lane. if on main, then it's null.\n otherLane?: Lane // the lane we want to merged to our lane. (null if it's \"main\").\n ): Promise<ComponentMergeStatus[]> {\n const mergeStatusProvider = new MergeStatusProvider(\n this.scope,\n this.logger,\n this.importer,\n options,\n this.workspace,\n currentLane,\n otherLane\n );\n return mergeStatusProvider.getStatus(bitIds);\n }\n\n private async applyVersionMultiple(\n succeededComponents: ComponentMergeStatus[],\n otherLaneId: LaneId,\n mergeStrategy: MergeStrategy,\n currentLane?: Lane\n ): Promise<ApplyVersionWithComps[]> {\n const componentsResults = await mapSeries(\n succeededComponents,\n async ({ currentComponent, id, mergeResults, resolvedUnrelated, configMergeResult }) => {\n const modelComponent = await this.scope.legacyScope.getModelComponent(id);\n const updatedLaneId = otherLaneId.isDefault() ? LaneId.from(otherLaneId.name, id.scope as string) : otherLaneId;\n return this.applyVersion({\n currentComponent,\n id,\n mergeResults,\n mergeStrategy,\n remoteHead: modelComponent.getRef(id.version as string) as Ref,\n otherLaneId: updatedLaneId,\n currentLane,\n resolvedUnrelated,\n configMergeResult,\n });\n }\n );\n\n if (this.workspace) {\n const compsToWrite = compact(componentsResults.map((c) => c.legacyCompToWrite));\n const manyComponentsWriterOpts = {\n consumer: this.workspace.consumer,\n components: compsToWrite,\n skipDependencyInstallation: true,\n writeConfig: false, // @todo: should write if config exists before, needs to figure out how to do it.\n reasonForBitmapChange: 'merge',\n };\n await this.componentWriter.writeMany(manyComponentsWriterOpts);\n }\n\n return componentsResults;\n }\n\n private async applyVersion({\n currentComponent,\n id,\n mergeResults,\n mergeStrategy,\n remoteHead,\n otherLaneId,\n currentLane,\n resolvedUnrelated,\n configMergeResult,\n }: {\n currentComponent: ConsumerComponent | null | undefined;\n id: ComponentID;\n mergeResults: MergeResultsThreeWay | null | undefined;\n mergeStrategy: MergeStrategy;\n remoteHead: Ref;\n otherLaneId: LaneId;\n currentLane?: Lane;\n resolvedUnrelated?: ResolveUnrelatedData;\n configMergeResult?: ConfigMergeResult;\n }): Promise<ApplyVersionWithComps> {\n const legacyScope = this.scope.legacyScope;\n let filesStatus = {};\n const unmergedComponent: UnmergedComponent = {\n id: { name: id.fullName, scope: id.scope },\n head: remoteHead,\n laneId: otherLaneId,\n };\n id = currentComponent ? currentComponent.id : id;\n const modelComponent = await legacyScope.getModelComponent(id);\n\n const addToCurrentLane = (head: Ref) => {\n if (!currentLane) throw new Error('currentLane must be defined when adding to the lane');\n if (otherLaneId.isDefault()) {\n const isPartOfLane = currentLane.components.find((c) => c.id.isEqualWithoutVersion(id));\n if (!isPartOfLane) return;\n }\n currentLane.addComponent({ id, head });\n };\n\n const handleResolveUnrelated = (legacyCompToWrite?: ConsumerComponent) => {\n if (!currentComponent) throw new Error('currentComponent must be defined when resolvedUnrelated');\n // because when on a main, we don't allow merging lanes with unrelated. we asks users to switch to the lane\n // first and then merge with --resolve-unrelated\n if (!currentLane) throw new Error('currentLane must be defined when resolvedUnrelated');\n if (!resolvedUnrelated) throw new Error('resolvedUnrelated must be populated');\n addToCurrentLane(resolvedUnrelated.headOnCurrentLane);\n unmergedComponent.unrelated = {\n unrelatedHead: resolvedUnrelated.unrelatedHead,\n headOnCurrentLane: resolvedUnrelated.headOnCurrentLane,\n unrelatedLaneId: resolvedUnrelated.unrelatedLaneId,\n };\n legacyScope.objects.unmergedComponents.addEntry(unmergedComponent);\n return { applyVersionResult: { id, filesStatus }, component: currentComponent, legacyCompToWrite };\n };\n\n const markAllFilesAsUnchanged = () => {\n if (!currentComponent) throw new Error(`applyVersion expect to get currentComponent for ${id.toString()}`);\n currentComponent.files.forEach((file) => {\n filesStatus[pathNormalizeToLinux(file.relative)] = FileStatus.unchanged;\n });\n };\n if (mergeResults && mergeResults.hasConflicts && mergeStrategy === MergeOptions.ours) {\n markAllFilesAsUnchanged();\n legacyScope.objects.unmergedComponents.addEntry(unmergedComponent);\n return { applyVersionResult: { id, filesStatus }, component: currentComponent || undefined };\n }\n if (resolvedUnrelated?.strategy === 'ours') {\n markAllFilesAsUnchanged();\n return handleResolveUnrelated();\n }\n const remoteId = id.changeVersion(remoteHead.toString());\n const idToLoad = !mergeResults || mergeStrategy === MergeOptions.theirs ? remoteId : id;\n const legacyComponent = this.workspace\n ? await this.workspace.consumer.loadComponentFromModelImportIfNeeded(idToLoad)\n : await legacyScope.getConsumerComponent(idToLoad); // when loading from the scope, we import all needed components first, so it should be fine. otherwise, change the code to import it here\n if (mergeResults && mergeStrategy === MergeOptions.theirs) {\n // in this case, we don't want to update .bitmap with the version of the remote. we want to keep the same version\n legacyComponent.version = id.version;\n }\n const files = legacyComponent.files;\n updateFileStatus(files, filesStatus, currentComponent || undefined);\n\n if (mergeResults) {\n // update files according to the merge results\n const { filesStatus: modifiedStatus, modifiedFiles } = applyModifiedVersion(files, mergeResults, mergeStrategy);\n legacyComponent.files = modifiedFiles;\n filesStatus = { ...filesStatus, ...modifiedStatus };\n }\n\n if (this.workspace) await removeFilesIfNeeded(filesStatus, this.workspace.consumer, currentComponent || undefined);\n\n if (configMergeResult) {\n const successfullyMergedConfig = configMergeResult.getSuccessfullyMergedConfig();\n if (successfullyMergedConfig) {\n unmergedComponent.mergedConfig = successfullyMergedConfig;\n // no need to `unmergedComponents.addEntry` here. it'll be added in the next lines inside `if (mergeResults)`.\n // because if `configMergeResult` is set, `mergeResults` must be set as well. both happen on diverge.\n }\n }\n\n // if mergeResults, the head snap is going to be updated on a later phase when snapping with two parents\n // otherwise, update the head of the current lane or main\n if (mergeResults) {\n if (mergeResults.hasConflicts && mergeStrategy === MergeOptions.manual) {\n unmergedComponent.unmergedPaths = mergeResults.modifiedFiles.filter((f) => f.conflict).map((f) => f.filePath);\n }\n legacyScope.objects.unmergedComponents.addEntry(unmergedComponent);\n } else if (currentLane) {\n if (resolvedUnrelated) {\n // must be \"theirs\"\n return handleResolveUnrelated(legacyComponent);\n }\n addToCurrentLane(remoteHead);\n } else {\n // this is main\n modelComponent.setHead(remoteHead);\n // mark it as local, otherwise, when importing this component from a remote, it'll override it.\n modelComponent.markVersionAsLocal(remoteHead.toString());\n legacyScope.objects.add(modelComponent);\n }\n\n return {\n applyVersionResult: { id: idToLoad, filesStatus },\n component: currentComponent || undefined,\n legacyCompToWrite: legacyComponent,\n };\n }\n\n private async abortMerge(values: string[]): Promise<ApplyVersionResults> {\n const consumer = this.workspace.consumer;\n const ids = await this.getIdsForUnmerged(values);\n const results = await this.checkout.checkout({ ids, reset: true });\n ids.forEach((id) => consumer.scope.objects.unmergedComponents.removeComponent(id));\n await consumer.scope.objects.unmergedComponents.write();\n return { abortedComponents: results.components };\n }\n\n private async resolveMerge(values: string[], snapMessage: string, build: boolean): Promise<ApplyVersionResults> {\n const ids = await this.getIdsForUnmerged(values);\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const { snappedComponents } = await this.snapping.snap({\n legacyBitIds: ComponentIdList.fromArray(ids.map((id) => id)),\n build,\n message: snapMessage,\n });\n return { resolvedComponents: snappedComponents };\n }\n\n private async getAllComponentsStatus(\n bitIds: ComponentID[],\n laneId: LaneId,\n localLaneObject: Lane | undefined,\n mergeStrategy: MergeStrategy\n ): Promise<ComponentMergeStatus[]> {\n const ids = await Promise.all(\n bitIds.map(async (bitId) => {\n const remoteScopeName = laneId.isDefault() ? bitId.scope : laneId.scope;\n const remoteLaneId = LaneId.from(laneId.name, remoteScopeName as string);\n const remoteHead = await this.workspace.consumer.scope.objects.remoteLanes.getRef(remoteLaneId, bitId);\n const laneIdStr = remoteLaneId.toString();\n if (!remoteHead) {\n throw new BitError(`unable to find a remote head of \"${bitId.toStringWithoutVersion()}\" in \"${laneIdStr}\"`);\n }\n return bitId.changeVersion(remoteHead.toString());\n })\n );\n\n return this.getMergeStatus(ids, { shouldSquash: false, mergeStrategy }, localLaneObject, localLaneObject);\n }\n\n private async snapResolvedComponents(\n snapMessage: string,\n build: boolean,\n laneId?: LaneId\n ): Promise<MergeSnapResults> {\n const unmergedComponents = this.scope.legacyScope.objects.unmergedComponents.getComponents();\n this.logger.debug(`merge-snaps, snapResolvedComponents, total ${unmergedComponents.length.toString()} components`);\n if (!unmergedComponents.length) return null;\n const ids = ComponentIdList.fromArray(unmergedComponents.map((r) => ComponentID.fromObject(r.id)));\n if (!this.workspace) {\n const results = await this.snapping.snapFromScope(\n ids.map((id) => ({ componentId: id.toString() })),\n {\n message: snapMessage,\n build,\n lane: laneId?.toString(),\n }\n );\n return { ...results, autoSnappedResults: [] };\n }\n return this.snapping.snap({\n legacyBitIds: ids,\n build,\n message: snapMessage,\n });\n }\n\n private async tagAllLaneComponent(\n idsToTag: ComponentID[],\n tagMessage: string,\n build: boolean\n ): Promise<TagResults | null> {\n const ids = idsToTag.map((id) => {\n return id.toStringWithoutVersion();\n });\n this.logger.debug(`merge-snaps, tagResolvedComponents, total ${idsToTag.length.toString()} components`);\n return this.snapping.tag({\n ids,\n build,\n message: tagMessage,\n unmodified: true,\n });\n }\n\n private async getIdsForUnmerged(idsStr?: string[]): Promise<ComponentID[]> {\n if (idsStr && idsStr.length) {\n const componentIds = await this.workspace.resolveMultipleComponentIds(idsStr);\n componentIds.forEach((id) => {\n const entry = this.workspace.consumer.scope.objects.unmergedComponents.getEntry(id);\n if (!entry) {\n throw new BitError(`unable to merge-resolve ${id.toString()}, it is not marked as unresolved`);\n }\n });\n return componentIds;\n }\n const unresolvedComponents = this.workspace.consumer.scope.objects.unmergedComponents.getComponents();\n if (!unresolvedComponents.length) throw new BitError(`all components are resolved already, nothing to do`);\n return unresolvedComponents.map((u) => ComponentID.fromObject(u.id));\n }\n\n private async getComponentsToMerge(consumer: Consumer, ids: string[]): Promise<ComponentID[]> {\n const componentsList = new ComponentsList(consumer);\n if (!ids.length) {\n const mergePending = await componentsList.listMergePendingComponents();\n return mergePending.map((c) => c.id);\n }\n if (hasWildcard(ids)) {\n return componentsList.listComponentsByIdsWithWildcard(ids);\n }\n return ids.map((id) => consumer.getParsedId(id));\n }\n\n static slots = [];\n static dependencies = [\n CLIAspect,\n WorkspaceAspect,\n ScopeAspect,\n SnappingAspect,\n CheckoutAspect,\n InstallAspect,\n LoggerAspect,\n ComponentWriterAspect,\n ImporterAspect,\n ConfigAspect,\n RemoveAspect,\n GlobalConfigAspect,\n ConfigMergerAspect,\n DependencyResolverAspect,\n ];\n static runtime = MainRuntime;\n static async provider([\n cli,\n workspace,\n scope,\n snapping,\n checkout,\n install,\n loggerMain,\n compWriter,\n importer,\n config,\n remove,\n globalConfig,\n configMerger,\n depResolver,\n ]: [\n CLIMain,\n Workspace,\n ScopeMain,\n SnappingMain,\n CheckoutMain,\n InstallMain,\n LoggerMain,\n ComponentWriterMain,\n ImporterMain,\n ConfigMain,\n RemoveMain,\n GlobalConfigMain,\n ConfigMergerMain,\n DependencyResolverMain\n ]) {\n const logger = loggerMain.createLogger(MergingAspect.id);\n const merging = new MergingMain(\n workspace,\n scope,\n install,\n snapping,\n checkout,\n logger,\n compWriter,\n importer,\n config,\n remove,\n configMerger,\n depResolver\n );\n cli.register(new MergeCmd(merging, globalConfig));\n return merging;\n }\n}\n\nMergingAspect.addRuntime(MergingMain);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_cli","data","require","_workspace","_componentsList","_interopRequireDefault","_mergeVersion","_snapping","_hasWildcard","_pMapSeries","_componentId","_bitError","_laneId","_chalk","_config","_remove","_utils","_componentWriter","_importer","_logger","_globalConfig","_lodash","_checkout","_deleteComponentFiles","_configMerger","_componentIdToPackageName","_dependencyResolver","_install","_scope","_mergeCmd","_merging","_mergeStatusProvider","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","MergingMain","constructor","workspace","scope","install","snapping","checkout","logger","componentWriter","importer","config","remove","configMerger","depResolver","merge","ids","mergeStrategy","abort","resolve","noSnap","message","build","skipDependencyInstallation","OutsideWorkspaceError","consumer","mergeResults","resolveMerge","abortMerge","bitIds","getComponentsToMerge","mergeComponentsFromRemote","onDestroy","snapMessage","currentLaneId","getCurrentLaneId","currentLaneObject","getCurrentLaneObject","allComponentsStatus","getAllComponentsStatus","failedComponents","c","unchangedMessage","unchangedLegitimately","failureMsgs","map","failedComponent","chalk","bold","id","toString","red","join","BitError","mergeSnaps","otherLaneId","currentLane","tag","legacyScope","componentWithConflict","find","component","hasConflicts","getMergeStrategyInteractive","componentStatus","shouldBeRemoved","componentIdsToRemove","changeVersion","undefined","succeededComponents","currentLaneIdsBeforeMerge","toComponentIds","componentsResults","applyVersionMultiple","allConfigMerge","compact","configMergeResult","workspaceDepsUpdates","workspaceDepsConflicts","workspaceDepsUnchanged","updateWorkspaceJsoncWithDepsIfNeeded","workspaceConfigConflictWriteError","writeWorkspaceJsoncWithConflictsGracefully","generateConfigMergeConflictFileForAll","objects","add","persist","unmergedComponents","write","writeBitMap","removeFromWsJsonPolicyIfExists","compBitIdsToRemove","ComponentIdList","fromArray","deleteComponentsFiles","cleanFromBitMap","componentsHasConfigMergeConflicts","some","leftUnresolvedConflicts","dedupe","updateExisting","import","err","error","consoleFailure","getSnapOrTagResults","idsToTag","results","tagAllLaneComponent","taggedComponents","autoTaggedResults","removedComponents","snappedComponents","autoSnappedResults","snapResolvedComponents","toLaneId","mergeSnapResults","mergeSnapError","bitMapSnapshot","bitMap","takeSnapshot","restoreFromSnapshot","components","applyVersionResult","workspaceConfigUpdateResult","newlyIntroducedIds","hasWithoutVersion","newlyIntroducedComponentIds","legacyCompToWrite","packages","componentIdToPackageName","isRemoved","removeFromRootPolicy","persistConfig","getMergeStatus","options","otherLane","mergeStatusProvider","MergeStatusProvider","getStatus","mapSeries","currentComponent","resolvedUnrelated","modelComponent","getModelComponent","updatedLaneId","isDefault","LaneId","from","name","applyVersion","remoteHead","getRef","version","compsToWrite","manyComponentsWriterOpts","writeConfig","reasonForBitmapChange","writeMany","filesStatus","unmergedComponent","fullName","head","laneId","addToCurrentLane","Error","isPartOfLane","isEqualWithoutVersion","addComponent","handleResolveUnrelated","headOnCurrentLane","unrelated","unrelatedHead","unrelatedLaneId","addEntry","markAllFilesAsUnchanged","files","file","pathNormalizeToLinux","relative","FileStatus","unchanged","MergeOptions","ours","strategy","remoteId","idToLoad","theirs","legacyComponent","loadComponentFromModelImportIfNeeded","getConsumerComponent","updateFileStatus","modifiedStatus","modifiedFiles","applyModifiedVersion","removeFilesIfNeeded","successfullyMergedConfig","getSuccessfullyMergedConfig","mergedConfig","manual","unmergedPaths","f","conflict","filePath","setHead","markVersionAsLocal","values","getIdsForUnmerged","reset","removeComponent","abortedComponents","snap","legacyBitIds","resolvedComponents","localLaneObject","Promise","all","bitId","remoteScopeName","remoteLaneId","remoteLanes","laneIdStr","toStringWithoutVersion","shouldSquash","getComponents","debug","ComponentID","fromObject","snapFromScope","componentId","lane","tagMessage","unmodified","idsStr","componentIds","resolveMultipleComponentIds","entry","getEntry","unresolvedComponents","u","componentsList","ComponentsList","mergePending","listMergePendingComponents","hasWildcard","listComponentsByIdsWithWildcard","getParsedId","provider","cli","loggerMain","compWriter","globalConfig","createLogger","MergingAspect","merging","register","MergeCmd","exports","CLIAspect","WorkspaceAspect","ScopeAspect","SnappingAspect","CheckoutAspect","InstallAspect","LoggerAspect","ComponentWriterAspect","ImporterAspect","ConfigAspect","RemoveAspect","GlobalConfigAspect","ConfigMergerAspect","DependencyResolverAspect","MainRuntime","addRuntime"],"sources":["merging.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { WorkspaceAspect, OutsideWorkspaceError, Workspace } from '@teambit/workspace';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport ComponentsList from '@teambit/legacy/dist/consumer/component/components-list';\nimport {\n MergeStrategy,\n FileStatus,\n getMergeStrategyInteractive,\n MergeOptions,\n} from '@teambit/legacy/dist/consumer/versions-ops/merge-version';\nimport { SnappingAspect, SnappingMain, TagResults } from '@teambit/snapping';\nimport hasWildcard from '@teambit/legacy/dist/utils/string/has-wildcard';\nimport mapSeries from 'p-map-series';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { BitError } from '@teambit/bit-error';\nimport { LaneId } from '@teambit/lane-id';\nimport { AutoTagResult } from '@teambit/legacy/dist/scope/component-ops/auto-tag';\nimport { UnmergedComponent } from '@teambit/legacy/dist/scope/lanes/unmerged-components';\nimport { Lane, ModelComponent } from '@teambit/legacy/dist/scope/models';\nimport { Ref } from '@teambit/legacy/dist/scope/objects';\nimport chalk from 'chalk';\nimport { ConfigAspect, ConfigMain } from '@teambit/config';\nimport { RemoveAspect, RemoveMain } from '@teambit/remove';\nimport { pathNormalizeToLinux } from '@teambit/legacy/dist/utils';\nimport { ComponentWriterAspect, ComponentWriterMain } from '@teambit/component-writer';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component/consumer-component';\nimport { ImporterAspect, ImporterMain } from '@teambit/importer';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { GlobalConfigAspect, GlobalConfigMain } from '@teambit/global-config';\nimport { compact } from 'lodash';\nimport { MergeResultsThreeWay } from '@teambit/legacy/dist/consumer/versions-ops/merge-version/three-way-merge';\nimport {\n ApplyVersionWithComps,\n CheckoutAspect,\n CheckoutMain,\n ComponentStatusBase,\n applyModifiedVersion,\n removeFilesIfNeeded,\n updateFileStatus,\n} from '@teambit/checkout';\nimport deleteComponentsFiles from '@teambit/legacy/dist/consumer/component-ops/delete-component-files';\nimport {\n ConfigMergerAspect,\n ConfigMergerMain,\n ConfigMergeResult,\n WorkspaceConfigUpdateResult,\n} from '@teambit/config-merger';\nimport { SnapsDistance } from '@teambit/legacy/dist/scope/component-ops/snaps-distance';\nimport componentIdToPackageName from '@teambit/legacy/dist/utils/bit/component-id-to-package-name';\nimport { DependencyResolverAspect, DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { InstallMain, InstallAspect } from '@teambit/install';\nimport { ScopeAspect, ScopeMain } from '@teambit/scope';\nimport { MergeCmd } from './merge-cmd';\nimport { MergingAspect } from './merging.aspect';\nimport { MergeStatusProvider, MergeStatusProviderOptions } from './merge-status-provider';\n\ntype ResolveUnrelatedData = {\n strategy: MergeStrategy;\n headOnCurrentLane: Ref;\n unrelatedHead: Ref;\n unrelatedLaneId: LaneId;\n};\n\nexport type ComponentMergeStatus = ComponentStatusBase & {\n mergeResults?: MergeResultsThreeWay | null;\n divergeData?: SnapsDistance;\n resolvedUnrelated?: ResolveUnrelatedData;\n configMergeResult?: ConfigMergeResult;\n};\n\nexport type ComponentMergeStatusBeforeMergeAttempt = ComponentStatusBase & {\n divergeData?: SnapsDistance;\n resolvedUnrelated?: ResolveUnrelatedData;\n mergeProps?: {\n otherLaneHead: Ref;\n currentId: ComponentID;\n modelComponent: ModelComponent;\n };\n};\n\nexport type FailedComponents = { id: ComponentID; unchangedMessage: string; unchangedLegitimately?: boolean };\n\n// fileName is PathLinux. TS doesn't let anything else in the keys other than string and number\nexport type FilesStatus = { [fileName: string]: keyof typeof FileStatus };\n\nexport type MergeSnapResults = {\n snappedComponents: ConsumerComponent[];\n autoSnappedResults: AutoTagResult[];\n removedComponents?: ComponentIdList;\n exportedIds?: ComponentID[];\n} | null;\n\nexport type ApplyVersionResult = { id: ComponentID; filesStatus: FilesStatus };\n\nexport type ApplyVersionResults = {\n components?: ApplyVersionResult[];\n version?: string;\n failedComponents?: FailedComponents[];\n removedComponents?: ComponentID[];\n addedComponents?: ComponentID[]; // relevant when restoreMissingComponents is true (e.g. bit lane merge-abort)\n resolvedComponents?: ConsumerComponent[]; // relevant for bit merge --resolve\n abortedComponents?: ApplyVersionResult[]; // relevant for bit merge --abort\n mergeSnapResults?: MergeSnapResults;\n mergeSnapError?: Error;\n leftUnresolvedConflicts?: boolean;\n verbose?: boolean;\n newFromLane?: string[];\n newFromLaneAdded?: boolean;\n installationError?: Error; // in case the package manager failed, it won't throw, instead, it'll return error here\n compilationError?: Error; // in case the compiler failed, it won't throw, instead, it'll return error here\n workspaceConfigUpdateResult?: WorkspaceConfigUpdateResult;\n};\n\nexport class MergingMain {\n constructor(\n private workspace: Workspace,\n private scope: ScopeMain,\n private install: InstallMain,\n private snapping: SnappingMain,\n private checkout: CheckoutMain,\n private logger: Logger,\n private componentWriter: ComponentWriterMain,\n private importer: ImporterMain,\n private config: ConfigMain,\n private remove: RemoveMain,\n private configMerger: ConfigMergerMain,\n private depResolver: DependencyResolverMain\n ) {}\n\n async merge(\n ids: string[],\n mergeStrategy: MergeStrategy,\n abort: boolean,\n resolve: boolean,\n noSnap: boolean,\n message: string,\n build: boolean,\n skipDependencyInstallation: boolean\n ): Promise<ApplyVersionResults> {\n if (!this.workspace) throw new OutsideWorkspaceError();\n const consumer: Consumer = this.workspace.consumer;\n let mergeResults;\n if (resolve) {\n mergeResults = await this.resolveMerge(ids, message, build);\n } else if (abort) {\n mergeResults = await this.abortMerge(ids);\n } else {\n const bitIds = await this.getComponentsToMerge(consumer, ids);\n mergeResults = await this.mergeComponentsFromRemote(\n consumer,\n bitIds,\n mergeStrategy,\n noSnap,\n message,\n build,\n skipDependencyInstallation\n );\n }\n await consumer.onDestroy('merge');\n return mergeResults;\n }\n\n /**\n * when user is on main, it merges the remote main components into local.\n * when user is on a lane, it merges the remote lane components into the local lane.\n */\n async mergeComponentsFromRemote(\n consumer: Consumer,\n bitIds: ComponentID[],\n mergeStrategy: MergeStrategy,\n noSnap: boolean,\n snapMessage: string,\n build: boolean,\n skipDependencyInstallation: boolean\n ): Promise<ApplyVersionResults> {\n const currentLaneId = consumer.getCurrentLaneId();\n const currentLaneObject = await consumer.getCurrentLaneObject();\n const allComponentsStatus = await this.getAllComponentsStatus(\n bitIds,\n currentLaneId,\n currentLaneObject,\n mergeStrategy\n );\n const failedComponents = allComponentsStatus.filter((c) => c.unchangedMessage && !c.unchangedLegitimately);\n if (failedComponents.length) {\n const failureMsgs = failedComponents\n .map(\n (failedComponent) =>\n `${chalk.bold(failedComponent.id.toString())} - ${chalk.red(failedComponent.unchangedMessage as string)}`\n )\n .join('\\n');\n throw new BitError(`unable to merge due to the following failures:\\n${failureMsgs}`);\n }\n\n return this.mergeSnaps({\n mergeStrategy,\n allComponentsStatus,\n otherLaneId: currentLaneId,\n currentLane: currentLaneObject,\n noSnap,\n snapMessage,\n build,\n skipDependencyInstallation,\n });\n }\n\n /**\n * merge multiple components according to the \"allComponentsStatus\".\n */\n async mergeSnaps({\n mergeStrategy,\n allComponentsStatus,\n otherLaneId,\n currentLane,\n noSnap,\n tag,\n snapMessage,\n build,\n skipDependencyInstallation,\n }: {\n mergeStrategy: MergeStrategy;\n allComponentsStatus: ComponentMergeStatus[];\n otherLaneId: LaneId;\n currentLane?: Lane;\n noSnap?: boolean;\n tag?: boolean;\n snapMessage?: string;\n build?: boolean;\n skipDependencyInstallation?: boolean;\n }): Promise<ApplyVersionResults> {\n const consumer = this.workspace?.consumer;\n const legacyScope = this.scope.legacyScope;\n const componentWithConflict = allComponentsStatus.find(\n (component) => component.mergeResults && component.mergeResults.hasConflicts\n );\n if (componentWithConflict && !mergeStrategy) {\n mergeStrategy = await getMergeStrategyInteractive();\n }\n const failedComponents: FailedComponents[] = allComponentsStatus\n .filter((componentStatus) => componentStatus.unchangedMessage)\n .filter((componentStatus) => !componentStatus.shouldBeRemoved)\n .map((componentStatus) => ({\n id: componentStatus.id,\n unchangedMessage: componentStatus.unchangedMessage as string,\n unchangedLegitimately: componentStatus.unchangedLegitimately,\n }));\n\n const componentIdsToRemove = allComponentsStatus\n .filter((componentStatus) => componentStatus.shouldBeRemoved)\n .map((c) => c.id.changeVersion(undefined));\n\n const succeededComponents = allComponentsStatus.filter((componentStatus) => !componentStatus.unchangedMessage);\n\n const currentLaneIdsBeforeMerge = currentLane?.toComponentIds();\n\n const componentsResults = await this.applyVersionMultiple(\n succeededComponents,\n otherLaneId,\n mergeStrategy,\n currentLane\n );\n\n const allConfigMerge = compact(succeededComponents.map((c) => c.configMergeResult));\n\n const { workspaceDepsUpdates, workspaceDepsConflicts, workspaceDepsUnchanged } = this.workspace\n ? await this.configMerger.updateWorkspaceJsoncWithDepsIfNeeded(allConfigMerge)\n : { workspaceDepsUpdates: undefined, workspaceDepsConflicts: undefined, workspaceDepsUnchanged: undefined };\n\n let workspaceConfigConflictWriteError: Error | undefined;\n if (workspaceDepsConflicts) {\n workspaceConfigConflictWriteError = await this.configMerger.writeWorkspaceJsoncWithConflictsGracefully(\n workspaceDepsConflicts\n );\n }\n if (this.workspace) await this.configMerger.generateConfigMergeConflictFileForAll(allConfigMerge);\n\n if (currentLane) legacyScope.objects.add(currentLane);\n\n await legacyScope.objects.persist(); // persist anyway, if currentLane is null it should save all main heads\n\n await legacyScope.objects.unmergedComponents.write();\n\n if (this.workspace) {\n await consumer.writeBitMap(`merge ${otherLaneId.toString()}`);\n await this.removeFromWsJsonPolicyIfExists(componentsResults, currentLane, currentLaneIdsBeforeMerge);\n }\n\n if (componentIdsToRemove.length && this.workspace) {\n const compBitIdsToRemove = ComponentIdList.fromArray(componentIdsToRemove);\n await deleteComponentsFiles(consumer, compBitIdsToRemove);\n await consumer.cleanFromBitMap(compBitIdsToRemove);\n }\n\n const componentsHasConfigMergeConflicts = allComponentsStatus.some((c) => c.configMergeResult?.hasConflicts());\n const leftUnresolvedConflicts = componentWithConflict && mergeStrategy === 'manual';\n if (!skipDependencyInstallation && !leftUnresolvedConflicts && !componentsHasConfigMergeConflicts) {\n try {\n await this.install.install(undefined, {\n dedupe: true,\n updateExisting: false,\n import: false,\n });\n } catch (err: any) {\n this.logger.error(`failed installing packages`, err);\n this.logger.consoleFailure(\n `failed installing packages, see the log for full stacktrace. error: ${err.message}`\n );\n }\n }\n\n const getSnapOrTagResults = async (): Promise<MergeSnapResults> => {\n // if one of the component has conflict, don't snap-merge. otherwise, some of the components would be snap-merged\n // and some not. besides the fact that it could by mistake tag dependent, it's a confusing state. better not snap.\n if (noSnap || leftUnresolvedConflicts || componentsHasConfigMergeConflicts) {\n return null;\n }\n if (tag) {\n const idsToTag = allComponentsStatus.map((c) => c.id);\n const results = await this.tagAllLaneComponent(idsToTag, snapMessage, build);\n if (!results) return null;\n const { taggedComponents, autoTaggedResults, removedComponents } = results;\n return { snappedComponents: taggedComponents, autoSnappedResults: autoTaggedResults, removedComponents };\n }\n return this.snapResolvedComponents(snapMessage, build, currentLane?.toLaneId());\n };\n let mergeSnapResults: MergeSnapResults = null;\n let mergeSnapError: Error | undefined;\n const bitMapSnapshot = this.workspace ? this.workspace.bitMap.takeSnapshot() : null;\n try {\n mergeSnapResults = await getSnapOrTagResults();\n } catch (err: any) {\n this.logger.error('failed running snap. mergeSnapError:', err);\n mergeSnapError = err;\n if (bitMapSnapshot) this.workspace.bitMap.restoreFromSnapshot(bitMapSnapshot);\n }\n\n return {\n components: componentsResults.map((c) => c.applyVersionResult),\n failedComponents,\n removedComponents: [...componentIdsToRemove, ...(mergeSnapResults?.removedComponents || [])],\n mergeSnapResults,\n mergeSnapError,\n workspaceConfigUpdateResult: {\n workspaceDepsUpdates,\n workspaceDepsConflicts,\n workspaceDepsUnchanged,\n workspaceConfigConflictWriteError,\n },\n leftUnresolvedConflicts,\n };\n }\n\n async removeFromWsJsonPolicyIfExists(\n componentsResults: ApplyVersionWithComps[],\n currentLane?: Lane,\n currentLaneIdsBeforeMerge?: ComponentIdList\n ) {\n const newlyIntroducedIds = currentLane\n ?.toComponentIds()\n .filter((id) => !currentLaneIdsBeforeMerge?.hasWithoutVersion(id));\n const newlyIntroducedComponentIds = ComponentIdList.fromArray(newlyIntroducedIds || []);\n const components = compact(\n componentsResults\n .map((c) => c.legacyCompToWrite)\n .filter((c) => c && newlyIntroducedComponentIds.hasWithoutVersion(c.id))\n );\n const packages = components.map((c) => componentIdToPackageName(c));\n const isRemoved = this.depResolver.removeFromRootPolicy(packages);\n if (isRemoved) await this.depResolver.persistConfig('merge (remove packages)');\n }\n\n /**\n * this function gets called from two different commands:\n * 1. \"bit merge <ids...>\", when merging a component from a remote to the local.\n * in this case, the remote and local are on the same lane or both on main.\n * 2. \"bit lane merge\", when merging from one lane to another.\n */\n async getMergeStatus(\n bitIds: ComponentID[], // the id.version is the version we want to merge to the current component\n options: MergeStatusProviderOptions,\n currentLane?: Lane, // currently checked out lane. if on main, then it's null.\n otherLane?: Lane // the lane we want to merged to our lane. (null if it's \"main\").\n ): Promise<ComponentMergeStatus[]> {\n const mergeStatusProvider = new MergeStatusProvider(\n this.scope,\n this.logger,\n this.importer,\n options,\n this.workspace,\n currentLane,\n otherLane\n );\n return mergeStatusProvider.getStatus(bitIds);\n }\n\n private async applyVersionMultiple(\n succeededComponents: ComponentMergeStatus[],\n otherLaneId: LaneId,\n mergeStrategy: MergeStrategy,\n currentLane?: Lane\n ): Promise<ApplyVersionWithComps[]> {\n const componentsResults = await mapSeries(\n succeededComponents,\n async ({ currentComponent, id, mergeResults, resolvedUnrelated, configMergeResult }) => {\n const modelComponent = await this.scope.legacyScope.getModelComponent(id);\n const updatedLaneId = otherLaneId.isDefault() ? LaneId.from(otherLaneId.name, id.scope as string) : otherLaneId;\n return this.applyVersion({\n currentComponent,\n id,\n mergeResults,\n mergeStrategy,\n remoteHead: modelComponent.getRef(id.version as string) as Ref,\n otherLaneId: updatedLaneId,\n currentLane,\n resolvedUnrelated,\n configMergeResult,\n });\n }\n );\n\n if (this.workspace) {\n const compsToWrite = compact(componentsResults.map((c) => c.legacyCompToWrite));\n const manyComponentsWriterOpts = {\n consumer: this.workspace.consumer,\n components: compsToWrite,\n skipDependencyInstallation: true,\n writeConfig: false, // @todo: should write if config exists before, needs to figure out how to do it.\n reasonForBitmapChange: 'merge',\n };\n await this.componentWriter.writeMany(manyComponentsWriterOpts);\n }\n\n return componentsResults;\n }\n\n private async applyVersion({\n currentComponent,\n id,\n mergeResults,\n mergeStrategy,\n remoteHead,\n otherLaneId,\n currentLane,\n resolvedUnrelated,\n configMergeResult,\n }: {\n currentComponent: ConsumerComponent | null | undefined;\n id: ComponentID;\n mergeResults: MergeResultsThreeWay | null | undefined;\n mergeStrategy: MergeStrategy;\n remoteHead: Ref;\n otherLaneId: LaneId;\n currentLane?: Lane;\n resolvedUnrelated?: ResolveUnrelatedData;\n configMergeResult?: ConfigMergeResult;\n }): Promise<ApplyVersionWithComps> {\n const legacyScope = this.scope.legacyScope;\n let filesStatus = {};\n const unmergedComponent: UnmergedComponent = {\n id: { name: id.fullName, scope: id.scope },\n head: remoteHead,\n laneId: otherLaneId,\n };\n id = currentComponent ? currentComponent.id : id;\n const modelComponent = await legacyScope.getModelComponent(id);\n\n const addToCurrentLane = (head: Ref) => {\n if (!currentLane) throw new Error('currentLane must be defined when adding to the lane');\n if (otherLaneId.isDefault()) {\n const isPartOfLane = currentLane.components.find((c) => c.id.isEqualWithoutVersion(id));\n if (!isPartOfLane) return;\n }\n currentLane.addComponent({ id, head });\n };\n\n const handleResolveUnrelated = (legacyCompToWrite?: ConsumerComponent) => {\n if (!currentComponent) throw new Error('currentComponent must be defined when resolvedUnrelated');\n // because when on a main, we don't allow merging lanes with unrelated. we asks users to switch to the lane\n // first and then merge with --resolve-unrelated\n if (!currentLane) throw new Error('currentLane must be defined when resolvedUnrelated');\n if (!resolvedUnrelated) throw new Error('resolvedUnrelated must be populated');\n addToCurrentLane(resolvedUnrelated.headOnCurrentLane);\n unmergedComponent.unrelated = {\n unrelatedHead: resolvedUnrelated.unrelatedHead,\n headOnCurrentLane: resolvedUnrelated.headOnCurrentLane,\n unrelatedLaneId: resolvedUnrelated.unrelatedLaneId,\n };\n legacyScope.objects.unmergedComponents.addEntry(unmergedComponent);\n return { applyVersionResult: { id, filesStatus }, component: currentComponent, legacyCompToWrite };\n };\n\n const markAllFilesAsUnchanged = () => {\n if (!currentComponent) throw new Error(`applyVersion expect to get currentComponent for ${id.toString()}`);\n currentComponent.files.forEach((file) => {\n filesStatus[pathNormalizeToLinux(file.relative)] = FileStatus.unchanged;\n });\n };\n if (mergeResults && mergeResults.hasConflicts && mergeStrategy === MergeOptions.ours) {\n markAllFilesAsUnchanged();\n legacyScope.objects.unmergedComponents.addEntry(unmergedComponent);\n return { applyVersionResult: { id, filesStatus }, component: currentComponent || undefined };\n }\n if (resolvedUnrelated?.strategy === 'ours') {\n markAllFilesAsUnchanged();\n return handleResolveUnrelated();\n }\n const remoteId = id.changeVersion(remoteHead.toString());\n const idToLoad = !mergeResults || mergeStrategy === MergeOptions.theirs ? remoteId : id;\n const legacyComponent = this.workspace\n ? await this.workspace.consumer.loadComponentFromModelImportIfNeeded(idToLoad)\n : await legacyScope.getConsumerComponent(idToLoad); // when loading from the scope, we import all needed components first, so it should be fine. otherwise, change the code to import it here\n if (mergeResults && mergeStrategy === MergeOptions.theirs) {\n // in this case, we don't want to update .bitmap with the version of the remote. we want to keep the same version\n legacyComponent.version = id.version;\n }\n const files = legacyComponent.files;\n updateFileStatus(files, filesStatus, currentComponent || undefined);\n\n if (mergeResults) {\n // update files according to the merge results\n const { filesStatus: modifiedStatus, modifiedFiles } = applyModifiedVersion(files, mergeResults, mergeStrategy);\n legacyComponent.files = modifiedFiles;\n filesStatus = { ...filesStatus, ...modifiedStatus };\n }\n\n if (this.workspace) await removeFilesIfNeeded(filesStatus, this.workspace.consumer, currentComponent || undefined);\n\n if (configMergeResult) {\n const successfullyMergedConfig = configMergeResult.getSuccessfullyMergedConfig();\n if (successfullyMergedConfig) {\n unmergedComponent.mergedConfig = successfullyMergedConfig;\n // no need to `unmergedComponents.addEntry` here. it'll be added in the next lines inside `if (mergeResults)`.\n // because if `configMergeResult` is set, `mergeResults` must be set as well. both happen on diverge.\n }\n }\n\n // if mergeResults, the head snap is going to be updated on a later phase when snapping with two parents\n // otherwise, update the head of the current lane or main\n if (mergeResults) {\n if (mergeResults.hasConflicts && mergeStrategy === MergeOptions.manual) {\n unmergedComponent.unmergedPaths = mergeResults.modifiedFiles.filter((f) => f.conflict).map((f) => f.filePath);\n }\n legacyScope.objects.unmergedComponents.addEntry(unmergedComponent);\n } else if (currentLane) {\n if (resolvedUnrelated) {\n // must be \"theirs\"\n return handleResolveUnrelated(legacyComponent);\n }\n addToCurrentLane(remoteHead);\n } else {\n // this is main\n modelComponent.setHead(remoteHead);\n // mark it as local, otherwise, when importing this component from a remote, it'll override it.\n modelComponent.markVersionAsLocal(remoteHead.toString());\n legacyScope.objects.add(modelComponent);\n }\n\n return {\n applyVersionResult: { id: idToLoad, filesStatus },\n component: currentComponent || undefined,\n legacyCompToWrite: legacyComponent,\n };\n }\n\n private async abortMerge(values: string[]): Promise<ApplyVersionResults> {\n const consumer = this.workspace.consumer;\n const ids = await this.getIdsForUnmerged(values);\n const results = await this.checkout.checkout({ ids, reset: true });\n ids.forEach((id) => consumer.scope.objects.unmergedComponents.removeComponent(id));\n await consumer.scope.objects.unmergedComponents.write();\n return { abortedComponents: results.components };\n }\n\n private async resolveMerge(values: string[], snapMessage: string, build: boolean): Promise<ApplyVersionResults> {\n const ids = await this.getIdsForUnmerged(values);\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const { snappedComponents } = await this.snapping.snap({\n legacyBitIds: ComponentIdList.fromArray(ids.map((id) => id)),\n build,\n message: snapMessage,\n });\n return { resolvedComponents: snappedComponents };\n }\n\n private async getAllComponentsStatus(\n bitIds: ComponentID[],\n laneId: LaneId,\n localLaneObject: Lane | undefined,\n mergeStrategy: MergeStrategy\n ): Promise<ComponentMergeStatus[]> {\n const ids = await Promise.all(\n bitIds.map(async (bitId) => {\n const remoteScopeName = laneId.isDefault() ? bitId.scope : laneId.scope;\n const remoteLaneId = LaneId.from(laneId.name, remoteScopeName as string);\n const remoteHead = await this.workspace.consumer.scope.objects.remoteLanes.getRef(remoteLaneId, bitId);\n const laneIdStr = remoteLaneId.toString();\n if (!remoteHead) {\n throw new BitError(`unable to find a remote head of \"${bitId.toStringWithoutVersion()}\" in \"${laneIdStr}\"`);\n }\n return bitId.changeVersion(remoteHead.toString());\n })\n );\n\n return this.getMergeStatus(ids, { shouldSquash: false, mergeStrategy }, localLaneObject, localLaneObject);\n }\n\n private async snapResolvedComponents(\n snapMessage?: string,\n build?: boolean,\n laneId?: LaneId\n ): Promise<MergeSnapResults> {\n const unmergedComponents = this.scope.legacyScope.objects.unmergedComponents.getComponents();\n this.logger.debug(`merge-snaps, snapResolvedComponents, total ${unmergedComponents.length.toString()} components`);\n if (!unmergedComponents.length) return null;\n const ids = ComponentIdList.fromArray(unmergedComponents.map((r) => ComponentID.fromObject(r.id)));\n if (!this.workspace) {\n const results = await this.snapping.snapFromScope(\n ids.map((id) => ({ componentId: id.toString() })),\n {\n message: snapMessage,\n build,\n lane: laneId?.toString(),\n }\n );\n return { ...results, autoSnappedResults: [] };\n }\n return this.snapping.snap({\n legacyBitIds: ids,\n build,\n message: snapMessage,\n });\n }\n\n private async tagAllLaneComponent(\n idsToTag: ComponentID[],\n tagMessage?: string,\n build?: boolean\n ): Promise<TagResults | null> {\n const ids = idsToTag.map((id) => {\n return id.toStringWithoutVersion();\n });\n this.logger.debug(`merge-snaps, tagResolvedComponents, total ${idsToTag.length.toString()} components`);\n return this.snapping.tag({\n ids,\n build,\n message: tagMessage,\n unmodified: true,\n });\n }\n\n private async getIdsForUnmerged(idsStr?: string[]): Promise<ComponentID[]> {\n if (idsStr && idsStr.length) {\n const componentIds = await this.workspace.resolveMultipleComponentIds(idsStr);\n componentIds.forEach((id) => {\n const entry = this.workspace.consumer.scope.objects.unmergedComponents.getEntry(id);\n if (!entry) {\n throw new BitError(`unable to merge-resolve ${id.toString()}, it is not marked as unresolved`);\n }\n });\n return componentIds;\n }\n const unresolvedComponents = this.workspace.consumer.scope.objects.unmergedComponents.getComponents();\n if (!unresolvedComponents.length) throw new BitError(`all components are resolved already, nothing to do`);\n return unresolvedComponents.map((u) => ComponentID.fromObject(u.id));\n }\n\n private async getComponentsToMerge(consumer: Consumer, ids: string[]): Promise<ComponentID[]> {\n const componentsList = new ComponentsList(consumer);\n if (!ids.length) {\n const mergePending = await componentsList.listMergePendingComponents();\n return mergePending.map((c) => c.id);\n }\n if (hasWildcard(ids)) {\n return componentsList.listComponentsByIdsWithWildcard(ids);\n }\n return ids.map((id) => consumer.getParsedId(id));\n }\n\n static slots = [];\n static dependencies = [\n CLIAspect,\n WorkspaceAspect,\n ScopeAspect,\n SnappingAspect,\n CheckoutAspect,\n InstallAspect,\n LoggerAspect,\n ComponentWriterAspect,\n ImporterAspect,\n ConfigAspect,\n RemoveAspect,\n GlobalConfigAspect,\n ConfigMergerAspect,\n DependencyResolverAspect,\n ];\n static runtime = MainRuntime;\n static async provider([\n cli,\n workspace,\n scope,\n snapping,\n checkout,\n install,\n loggerMain,\n compWriter,\n importer,\n config,\n remove,\n globalConfig,\n configMerger,\n depResolver,\n ]: [\n CLIMain,\n Workspace,\n ScopeMain,\n SnappingMain,\n CheckoutMain,\n InstallMain,\n LoggerMain,\n ComponentWriterMain,\n ImporterMain,\n ConfigMain,\n RemoveMain,\n GlobalConfigMain,\n ConfigMergerMain,\n DependencyResolverMain\n ]) {\n const logger = loggerMain.createLogger(MergingAspect.id);\n const merging = new MergingMain(\n workspace,\n scope,\n install,\n snapping,\n checkout,\n logger,\n compWriter,\n importer,\n config,\n remove,\n configMerger,\n depResolver\n );\n cli.register(new MergeCmd(merging, globalConfig));\n return merging;\n }\n}\n\nMergingAspect.addRuntime(MergingMain);\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/merging",
3
- "version": "1.0.310",
3
+ "version": "1.0.311",
4
4
  "homepage": "https://bit.cloud/teambit/component/merging",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.component",
8
8
  "name": "merging",
9
- "version": "1.0.310"
9
+ "version": "1.0.311"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "2.4.2",
@@ -16,20 +16,20 @@
16
16
  "@teambit/component-id": "1.2.0",
17
17
  "@teambit/lane-id": "0.0.311",
18
18
  "@teambit/harmony": "0.4.6",
19
- "@teambit/cli": "0.0.887",
20
- "@teambit/config-merger": "0.0.177",
21
- "@teambit/global-config": "0.0.890",
22
- "@teambit/importer": "1.0.310",
23
- "@teambit/logger": "0.0.980",
24
- "@teambit/scope": "1.0.310",
25
- "@teambit/workspace": "1.0.310",
26
- "@teambit/checkout": "1.0.310",
27
- "@teambit/component-writer": "1.0.310",
28
- "@teambit/config": "0.0.1061",
29
- "@teambit/dependency-resolver": "1.0.310",
30
- "@teambit/install": "1.0.310",
31
- "@teambit/remove": "1.0.310",
32
- "@teambit/snapping": "1.0.310"
19
+ "@teambit/cli": "0.0.888",
20
+ "@teambit/config-merger": "0.0.178",
21
+ "@teambit/global-config": "0.0.891",
22
+ "@teambit/importer": "1.0.311",
23
+ "@teambit/logger": "0.0.981",
24
+ "@teambit/scope": "1.0.311",
25
+ "@teambit/workspace": "1.0.311",
26
+ "@teambit/checkout": "1.0.311",
27
+ "@teambit/component-writer": "1.0.311",
28
+ "@teambit/config": "0.0.1062",
29
+ "@teambit/dependency-resolver": "1.0.311",
30
+ "@teambit/install": "1.0.311",
31
+ "@teambit/remove": "1.0.311",
32
+ "@teambit/snapping": "1.0.311"
33
33
  },
34
34
  "devDependencies": {
35
35
  "@types/lodash": "4.14.165",