@teambit/merging 1.0.506 → 1.0.507
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.
|
|
3
|
+
<testsuite name="teambit.component/merging@1.0.507" tests="0" failures="0" errors="0" skipped="0"/>
|
|
4
4
|
</testsuites>
|
package/artifacts/schema.json
CHANGED
|
@@ -865,7 +865,7 @@
|
|
|
865
865
|
"componentId": {
|
|
866
866
|
"scope": "teambit.legacy",
|
|
867
867
|
"name": "scope",
|
|
868
|
-
"version": "0.0.
|
|
868
|
+
"version": "0.0.14"
|
|
869
869
|
}
|
|
870
870
|
},
|
|
871
871
|
"isOptional": false
|
|
@@ -890,7 +890,7 @@
|
|
|
890
890
|
"componentId": {
|
|
891
891
|
"scope": "teambit.scope",
|
|
892
892
|
"name": "objects",
|
|
893
|
-
"version": "0.0.
|
|
893
|
+
"version": "0.0.14"
|
|
894
894
|
}
|
|
895
895
|
},
|
|
896
896
|
"isOptional": false
|
|
@@ -975,7 +975,7 @@
|
|
|
975
975
|
"componentId": {
|
|
976
976
|
"scope": "teambit.scope",
|
|
977
977
|
"name": "objects",
|
|
978
|
-
"version": "0.0.
|
|
978
|
+
"version": "0.0.14"
|
|
979
979
|
}
|
|
980
980
|
},
|
|
981
981
|
"isOptional": false
|
|
@@ -1004,7 +1004,7 @@
|
|
|
1004
1004
|
"componentId": {
|
|
1005
1005
|
"scope": "teambit.legacy",
|
|
1006
1006
|
"name": "scope",
|
|
1007
|
-
"version": "0.0.
|
|
1007
|
+
"version": "0.0.14"
|
|
1008
1008
|
}
|
|
1009
1009
|
},
|
|
1010
1010
|
"isOptional": false
|
|
@@ -1029,7 +1029,7 @@
|
|
|
1029
1029
|
"componentId": {
|
|
1030
1030
|
"scope": "teambit.scope",
|
|
1031
1031
|
"name": "objects",
|
|
1032
|
-
"version": "0.0.
|
|
1032
|
+
"version": "0.0.14"
|
|
1033
1033
|
}
|
|
1034
1034
|
},
|
|
1035
1035
|
"isOptional": false
|
|
@@ -1114,7 +1114,7 @@
|
|
|
1114
1114
|
"componentId": {
|
|
1115
1115
|
"scope": "teambit.scope",
|
|
1116
1116
|
"name": "objects",
|
|
1117
|
-
"version": "0.0.
|
|
1117
|
+
"version": "0.0.14"
|
|
1118
1118
|
}
|
|
1119
1119
|
},
|
|
1120
1120
|
"isOptional": false
|
|
@@ -1201,7 +1201,7 @@
|
|
|
1201
1201
|
"line": 17,
|
|
1202
1202
|
"character": 3
|
|
1203
1203
|
},
|
|
1204
|
-
"signature": "type MergeStrategy = \"
|
|
1204
|
+
"signature": "type MergeStrategy = \"theirs\" | \"ours\" | \"manual\"",
|
|
1205
1205
|
"name": "MergeStrategy",
|
|
1206
1206
|
"exportNode": {
|
|
1207
1207
|
"__schema": "TypeSchema",
|
|
@@ -1210,7 +1210,7 @@
|
|
|
1210
1210
|
"line": 8,
|
|
1211
1211
|
"character": 1
|
|
1212
1212
|
},
|
|
1213
|
-
"signature": "type MergeStrategy = \"
|
|
1213
|
+
"signature": "type MergeStrategy = \"theirs\" | \"ours\" | \"manual\"",
|
|
1214
1214
|
"name": "MergeStrategy",
|
|
1215
1215
|
"type": {
|
|
1216
1216
|
"__schema": "TypeOperatorSchema",
|
|
@@ -1395,7 +1395,7 @@
|
|
|
1395
1395
|
"componentId": {
|
|
1396
1396
|
"scope": "teambit.component",
|
|
1397
1397
|
"name": "sources",
|
|
1398
|
-
"version": "0.0.
|
|
1398
|
+
"version": "0.0.66"
|
|
1399
1399
|
}
|
|
1400
1400
|
},
|
|
1401
1401
|
"isOptional": false
|
|
@@ -1648,7 +1648,7 @@
|
|
|
1648
1648
|
"componentId": {
|
|
1649
1649
|
"scope": "teambit.component",
|
|
1650
1650
|
"name": "sources",
|
|
1651
|
-
"version": "0.0.
|
|
1651
|
+
"version": "0.0.66"
|
|
1652
1652
|
}
|
|
1653
1653
|
},
|
|
1654
1654
|
"isOptional": false
|
|
@@ -1693,7 +1693,7 @@
|
|
|
1693
1693
|
"componentId": {
|
|
1694
1694
|
"scope": "teambit.scope",
|
|
1695
1695
|
"name": "objects",
|
|
1696
|
-
"version": "0.0.
|
|
1696
|
+
"version": "0.0.14"
|
|
1697
1697
|
}
|
|
1698
1698
|
},
|
|
1699
1699
|
"isOptional": false
|
|
@@ -1886,7 +1886,7 @@
|
|
|
1886
1886
|
"componentId": {
|
|
1887
1887
|
"scope": "teambit.component",
|
|
1888
1888
|
"name": "sources",
|
|
1889
|
-
"version": "0.0.
|
|
1889
|
+
"version": "0.0.66"
|
|
1890
1890
|
}
|
|
1891
1891
|
},
|
|
1892
1892
|
"isOptional": false
|
|
@@ -1963,7 +1963,7 @@
|
|
|
1963
1963
|
"componentId": {
|
|
1964
1964
|
"scope": "teambit.component",
|
|
1965
1965
|
"name": "sources",
|
|
1966
|
-
"version": "0.0.
|
|
1966
|
+
"version": "0.0.66"
|
|
1967
1967
|
}
|
|
1968
1968
|
},
|
|
1969
1969
|
"isOptional": false
|
|
@@ -2040,7 +2040,7 @@
|
|
|
2040
2040
|
"componentId": {
|
|
2041
2041
|
"scope": "teambit.scope",
|
|
2042
2042
|
"name": "objects",
|
|
2043
|
-
"version": "0.0.
|
|
2043
|
+
"version": "0.0.14"
|
|
2044
2044
|
}
|
|
2045
2045
|
},
|
|
2046
2046
|
"isOptional": false
|
|
@@ -3311,7 +3311,7 @@
|
|
|
3311
3311
|
"line": 222,
|
|
3312
3312
|
"character": 5
|
|
3313
3313
|
},
|
|
3314
|
-
"signature": "(property) mergeStrategy: \"
|
|
3314
|
+
"signature": "(property) mergeStrategy: \"theirs\" | \"ours\" | \"manual\"",
|
|
3315
3315
|
"name": "mergeStrategy",
|
|
3316
3316
|
"type": {
|
|
3317
3317
|
"__schema": "TypeRefSchema",
|
|
@@ -3548,7 +3548,7 @@
|
|
|
3548
3548
|
"line": 222,
|
|
3549
3549
|
"character": 5
|
|
3550
3550
|
},
|
|
3551
|
-
"signature": "(property) mergeStrategy: \"
|
|
3551
|
+
"signature": "(property) mergeStrategy: \"theirs\" | \"ours\" | \"manual\"",
|
|
3552
3552
|
"name": "mergeStrategy",
|
|
3553
3553
|
"type": {
|
|
3554
3554
|
"__schema": "TypeRefSchema",
|
|
@@ -5003,7 +5003,7 @@
|
|
|
5003
5003
|
"line": 28,
|
|
5004
5004
|
"character": 3
|
|
5005
5005
|
},
|
|
5006
|
-
"signature": "type FilesStatus = {\n [fileName: string]: \"
|
|
5006
|
+
"signature": "type FilesStatus = {\n [fileName: string]: \"removed\" | \"manual\" | \"added\" | \"merged\" | \"updated\" | \"overridden\" | \"unchanged\" | \"binaryConflict\" | \"remainDeleted\" | \"deletedConflict\";\n}",
|
|
5007
5007
|
"name": "FilesStatus",
|
|
5008
5008
|
"exportNode": {
|
|
5009
5009
|
"__schema": "TypeSchema",
|
|
@@ -5012,7 +5012,7 @@
|
|
|
5012
5012
|
"line": 82,
|
|
5013
5013
|
"character": 1
|
|
5014
5014
|
},
|
|
5015
|
-
"signature": "type FilesStatus = {\n [fileName: string]: \"
|
|
5015
|
+
"signature": "type FilesStatus = {\n [fileName: string]: \"removed\" | \"manual\" | \"added\" | \"merged\" | \"updated\" | \"overridden\" | \"unchanged\" | \"binaryConflict\" | \"remainDeleted\" | \"deletedConflict\";\n}",
|
|
5016
5016
|
"name": "FilesStatus",
|
|
5017
5017
|
"type": {
|
|
5018
5018
|
"__schema": "TypeLiteralSchema",
|
|
@@ -5622,7 +5622,7 @@
|
|
|
5622
5622
|
"line": 79,
|
|
5623
5623
|
"character": 7
|
|
5624
5624
|
},
|
|
5625
|
-
"signature": "(property) autoMergeResolve?: \"
|
|
5625
|
+
"signature": "(property) autoMergeResolve?: \"theirs\" | \"ours\" | \"manual\" | undefined",
|
|
5626
5626
|
"name": "autoMergeResolve",
|
|
5627
5627
|
"type": {
|
|
5628
5628
|
"__schema": "TypeRefSchema",
|
|
@@ -5846,7 +5846,7 @@
|
|
|
5846
5846
|
"line": 79,
|
|
5847
5847
|
"character": 7
|
|
5848
5848
|
},
|
|
5849
|
-
"signature": "(property) autoMergeResolve?: \"
|
|
5849
|
+
"signature": "(property) autoMergeResolve?: \"theirs\" | \"ours\" | \"manual\" | undefined",
|
|
5850
5850
|
"name": "autoMergeResolve",
|
|
5851
5851
|
"type": {
|
|
5852
5852
|
"__schema": "TypeRefSchema",
|
|
@@ -6040,7 +6040,7 @@
|
|
|
6040
6040
|
"_legacy": {
|
|
6041
6041
|
"scope": "teambit.component",
|
|
6042
6042
|
"name": "merging",
|
|
6043
|
-
"version": "1.0.
|
|
6043
|
+
"version": "1.0.507"
|
|
6044
6044
|
},
|
|
6045
6045
|
"_scope": "teambit.component"
|
|
6046
6046
|
}
|
|
@@ -6860,7 +6860,7 @@
|
|
|
6860
6860
|
"componentId": {
|
|
6861
6861
|
"scope": "teambit.component",
|
|
6862
6862
|
"name": "sources",
|
|
6863
|
-
"version": "0.0.
|
|
6863
|
+
"version": "0.0.66"
|
|
6864
6864
|
}
|
|
6865
6865
|
},
|
|
6866
6866
|
"isOptional": false
|
|
@@ -7113,7 +7113,7 @@
|
|
|
7113
7113
|
"componentId": {
|
|
7114
7114
|
"scope": "teambit.component",
|
|
7115
7115
|
"name": "sources",
|
|
7116
|
-
"version": "0.0.
|
|
7116
|
+
"version": "0.0.66"
|
|
7117
7117
|
}
|
|
7118
7118
|
},
|
|
7119
7119
|
"isOptional": false
|
|
@@ -7158,7 +7158,7 @@
|
|
|
7158
7158
|
"componentId": {
|
|
7159
7159
|
"scope": "teambit.scope",
|
|
7160
7160
|
"name": "objects",
|
|
7161
|
-
"version": "0.0.
|
|
7161
|
+
"version": "0.0.14"
|
|
7162
7162
|
}
|
|
7163
7163
|
},
|
|
7164
7164
|
"isOptional": false
|
|
@@ -7351,7 +7351,7 @@
|
|
|
7351
7351
|
"componentId": {
|
|
7352
7352
|
"scope": "teambit.component",
|
|
7353
7353
|
"name": "sources",
|
|
7354
|
-
"version": "0.0.
|
|
7354
|
+
"version": "0.0.66"
|
|
7355
7355
|
}
|
|
7356
7356
|
},
|
|
7357
7357
|
"isOptional": false
|
|
@@ -7428,7 +7428,7 @@
|
|
|
7428
7428
|
"componentId": {
|
|
7429
7429
|
"scope": "teambit.component",
|
|
7430
7430
|
"name": "sources",
|
|
7431
|
-
"version": "0.0.
|
|
7431
|
+
"version": "0.0.66"
|
|
7432
7432
|
}
|
|
7433
7433
|
},
|
|
7434
7434
|
"isOptional": false
|
|
@@ -7505,7 +7505,7 @@
|
|
|
7505
7505
|
"componentId": {
|
|
7506
7506
|
"scope": "teambit.scope",
|
|
7507
7507
|
"name": "objects",
|
|
7508
|
-
"version": "0.0.
|
|
7508
|
+
"version": "0.0.14"
|
|
7509
7509
|
}
|
|
7510
7510
|
},
|
|
7511
7511
|
"isOptional": false
|
|
@@ -7616,7 +7616,7 @@
|
|
|
7616
7616
|
"componentId": {
|
|
7617
7617
|
"scope": "teambit.legacy",
|
|
7618
7618
|
"name": "scope",
|
|
7619
|
-
"version": "0.0.
|
|
7619
|
+
"version": "0.0.14"
|
|
7620
7620
|
}
|
|
7621
7621
|
},
|
|
7622
7622
|
"isOptional": false
|
|
@@ -7641,7 +7641,7 @@
|
|
|
7641
7641
|
"componentId": {
|
|
7642
7642
|
"scope": "teambit.scope",
|
|
7643
7643
|
"name": "objects",
|
|
7644
|
-
"version": "0.0.
|
|
7644
|
+
"version": "0.0.14"
|
|
7645
7645
|
}
|
|
7646
7646
|
},
|
|
7647
7647
|
"isOptional": false
|
|
@@ -7726,7 +7726,7 @@
|
|
|
7726
7726
|
"componentId": {
|
|
7727
7727
|
"scope": "teambit.scope",
|
|
7728
7728
|
"name": "objects",
|
|
7729
|
-
"version": "0.0.
|
|
7729
|
+
"version": "0.0.14"
|
|
7730
7730
|
}
|
|
7731
7731
|
},
|
|
7732
7732
|
"isOptional": false
|
|
@@ -7755,7 +7755,7 @@
|
|
|
7755
7755
|
"componentId": {
|
|
7756
7756
|
"scope": "teambit.legacy",
|
|
7757
7757
|
"name": "scope",
|
|
7758
|
-
"version": "0.0.
|
|
7758
|
+
"version": "0.0.14"
|
|
7759
7759
|
}
|
|
7760
7760
|
},
|
|
7761
7761
|
"isOptional": false
|
|
@@ -7780,7 +7780,7 @@
|
|
|
7780
7780
|
"componentId": {
|
|
7781
7781
|
"scope": "teambit.scope",
|
|
7782
7782
|
"name": "objects",
|
|
7783
|
-
"version": "0.0.
|
|
7783
|
+
"version": "0.0.14"
|
|
7784
7784
|
}
|
|
7785
7785
|
},
|
|
7786
7786
|
"isOptional": false
|
|
@@ -7865,7 +7865,7 @@
|
|
|
7865
7865
|
"componentId": {
|
|
7866
7866
|
"scope": "teambit.scope",
|
|
7867
7867
|
"name": "objects",
|
|
7868
|
-
"version": "0.0.
|
|
7868
|
+
"version": "0.0.14"
|
|
7869
7869
|
}
|
|
7870
7870
|
},
|
|
7871
7871
|
"isOptional": false
|
|
@@ -8556,7 +8556,7 @@
|
|
|
8556
8556
|
"componentId": {
|
|
8557
8557
|
"scope": "teambit.component",
|
|
8558
8558
|
"name": "snap-distance",
|
|
8559
|
-
"version": "0.0.
|
|
8559
|
+
"version": "0.0.15"
|
|
8560
8560
|
}
|
|
8561
8561
|
},
|
|
8562
8562
|
"isOptional": false
|
|
@@ -8813,7 +8813,7 @@
|
|
|
8813
8813
|
"componentId": {
|
|
8814
8814
|
"scope": "teambit.scope",
|
|
8815
8815
|
"name": "objects",
|
|
8816
|
-
"version": "0.0.
|
|
8816
|
+
"version": "0.0.14"
|
|
8817
8817
|
}
|
|
8818
8818
|
},
|
|
8819
8819
|
"isOptional": false
|
|
@@ -8863,7 +8863,7 @@
|
|
|
8863
8863
|
"componentId": {
|
|
8864
8864
|
"scope": "teambit.scope",
|
|
8865
8865
|
"name": "objects",
|
|
8866
|
-
"version": "0.0.
|
|
8866
|
+
"version": "0.0.14"
|
|
8867
8867
|
}
|
|
8868
8868
|
},
|
|
8869
8869
|
"isOptional": false
|
|
@@ -8969,7 +8969,7 @@
|
|
|
8969
8969
|
"line": 82,
|
|
8970
8970
|
"character": 1
|
|
8971
8971
|
},
|
|
8972
|
-
"signature": "type FilesStatus = {\n [fileName: string]: \"
|
|
8972
|
+
"signature": "type FilesStatus = {\n [fileName: string]: \"removed\" | \"manual\" | \"added\" | \"merged\" | \"updated\" | \"overridden\" | \"unchanged\" | \"binaryConflict\" | \"remainDeleted\" | \"deletedConflict\";\n}",
|
|
8973
8973
|
"name": "FilesStatus",
|
|
8974
8974
|
"type": {
|
|
8975
8975
|
"__schema": "TypeLiteralSchema",
|
|
@@ -10374,7 +10374,7 @@
|
|
|
10374
10374
|
"line": 222,
|
|
10375
10375
|
"character": 5
|
|
10376
10376
|
},
|
|
10377
|
-
"signature": "(property) mergeStrategy: \"
|
|
10377
|
+
"signature": "(property) mergeStrategy: \"theirs\" | \"ours\" | \"manual\"",
|
|
10378
10378
|
"name": "mergeStrategy",
|
|
10379
10379
|
"type": {
|
|
10380
10380
|
"__schema": "TypeRefSchema",
|
|
@@ -10611,7 +10611,7 @@
|
|
|
10611
10611
|
"line": 222,
|
|
10612
10612
|
"character": 5
|
|
10613
10613
|
},
|
|
10614
|
-
"signature": "(property) mergeStrategy: \"
|
|
10614
|
+
"signature": "(property) mergeStrategy: \"theirs\" | \"ours\" | \"manual\"",
|
|
10615
10615
|
"name": "mergeStrategy",
|
|
10616
10616
|
"type": {
|
|
10617
10617
|
"__schema": "TypeRefSchema",
|
|
@@ -11427,7 +11427,7 @@
|
|
|
11427
11427
|
"line": 54,
|
|
11428
11428
|
"character": 3
|
|
11429
11429
|
},
|
|
11430
|
-
"signature": "(property) strategy: \"
|
|
11430
|
+
"signature": "(property) strategy: \"theirs\" | \"ours\" | \"manual\"",
|
|
11431
11431
|
"name": "strategy",
|
|
11432
11432
|
"type": {
|
|
11433
11433
|
"__schema": "TypeRefSchema",
|
|
@@ -11460,7 +11460,7 @@
|
|
|
11460
11460
|
"componentId": {
|
|
11461
11461
|
"scope": "teambit.scope",
|
|
11462
11462
|
"name": "objects",
|
|
11463
|
-
"version": "0.0.
|
|
11463
|
+
"version": "0.0.14"
|
|
11464
11464
|
}
|
|
11465
11465
|
},
|
|
11466
11466
|
"isOptional": false
|
|
@@ -11485,7 +11485,7 @@
|
|
|
11485
11485
|
"componentId": {
|
|
11486
11486
|
"scope": "teambit.scope",
|
|
11487
11487
|
"name": "objects",
|
|
11488
|
-
"version": "0.0.
|
|
11488
|
+
"version": "0.0.14"
|
|
11489
11489
|
}
|
|
11490
11490
|
},
|
|
11491
11491
|
"isOptional": false
|
|
@@ -11571,7 +11571,7 @@
|
|
|
11571
11571
|
"componentId": {
|
|
11572
11572
|
"scope": "teambit.component",
|
|
11573
11573
|
"name": "merging",
|
|
11574
|
-
"version": "1.0.
|
|
11574
|
+
"version": "1.0.507"
|
|
11575
11575
|
},
|
|
11576
11576
|
"taggedModuleExports": []
|
|
11577
11577
|
}
|
|
@@ -679,7 +679,7 @@ class MergingMain {
|
|
|
679
679
|
}
|
|
680
680
|
async listMergePendingComponents(componentsList) {
|
|
681
681
|
const consumer = this.workspace.consumer;
|
|
682
|
-
componentsList = componentsList || new (_legacy().ComponentsList)(
|
|
682
|
+
componentsList = componentsList || new (_legacy().ComponentsList)(this.workspace);
|
|
683
683
|
const allIds = consumer.bitMap.getAllIdsAvailableOnLaneIncludeRemoved();
|
|
684
684
|
const componentsFromModel = await componentsList.getModelComponents();
|
|
685
685
|
const duringMergeComps = componentsList.listDuringMergeStateComponents();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_cli","data","require","_workspace","_legacy","_snapping","_pMapSeries","_interopRequireDefault","_componentId","_bitError","_laneId","_chalk","_config","_remove","_toolboxPath","_pkgModules","_componentWriter","_importer","_logger","_globalConfig","_lodash","_checkout","_configMerger","_dependencyResolver","_install","_scope","_mergeCmd","_merging","_mergeStatusProvider","_mergeVersion","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","pattern","mergeStrategy","abort","resolve","noAutoSnap","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","noSnap","tag","detachHead","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","detachedHeads","setHead","markVersionAsLocal","ids","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","componentIds","idsByPattern","entry","getEntry","unresolvedComponents","u","mergePending","listMergePendingComponents","componentsList","ComponentsList","allIds","getAllIdsAvailableOnLaneIncludeRemoved","componentsFromModel","getModelComponents","duringMergeComps","listDuringMergeStateComponents","mergePendingComponents","toComponentId","divergedData","getDivergeDataForMergePending","isDiverged","diverge","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, AutoTagResult } from '@teambit/workspace';\nimport { Consumer } from '@teambit/legacy.consumer';\nimport { ComponentsList } from '@teambit/legacy.component-list';\nimport { SnappingAspect, SnappingMain, TagResults } from '@teambit/snapping';\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 { UnmergedComponent } from '@teambit/legacy.scope';\nimport { Ref, Lane, ModelComponent } from '@teambit/scope.objects';\nimport chalk from 'chalk';\nimport { ConfigAspect, ConfigMain } from '@teambit/config';\nimport { RemoveAspect, RemoveMain, deleteComponentsFiles } from '@teambit/remove';\nimport { pathNormalizeToLinux } from '@teambit/toolbox.path.path';\nimport { componentIdToPackageName } from '@teambit/pkg.modules.component-package-name';\nimport { ComponentWriterAspect, ComponentWriterMain } from '@teambit/component-writer';\nimport { ConsumerComponent } from '@teambit/legacy.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 {\n ApplyVersionWithComps,\n CheckoutAspect,\n CheckoutMain,\n ComponentStatusBase,\n applyModifiedVersion,\n removeFilesIfNeeded,\n updateFileStatus,\n} from '@teambit/checkout';\nimport {\n ConfigMergerAspect,\n ConfigMergerMain,\n ConfigMergeResult,\n WorkspaceConfigUpdateResult,\n} from '@teambit/config-merger';\nimport { SnapsDistance } from '@teambit/component.snap-distance';\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';\nimport {\n MergeStrategy,\n FileStatus,\n getMergeStrategyInteractive,\n MergeResultsThreeWay,\n MergeOptions,\n} from './merge-version';\n\ntype ResolveUnrelatedData = {\n strategy: MergeStrategy;\n headOnCurrentLane: Ref;\n unrelatedHead: Ref;\n unrelatedLaneId: LaneId;\n};\n\nexport type DivergedComponent = { id: ComponentID; diverge: SnapsDistance };\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 newComponents?: ComponentID[]; // relevant for \"bit stash load\". (stashedBitmapEntries is populated)\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 pattern: string,\n mergeStrategy: MergeStrategy,\n abort: boolean,\n resolve: boolean,\n noAutoSnap: 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(pattern, message, build);\n } else if (abort) {\n mergeResults = await this.abortMerge(pattern);\n } else {\n const bitIds = await this.getComponentsToMerge(pattern);\n mergeResults = await this.mergeComponentsFromRemote(\n consumer,\n bitIds,\n mergeStrategy,\n noAutoSnap,\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 noAutoSnap: 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 noAutoSnap: noAutoSnap,\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 noAutoSnap,\n noSnap,\n tag,\n snapMessage,\n build,\n skipDependencyInstallation,\n detachHead,\n }: {\n mergeStrategy: MergeStrategy;\n allComponentsStatus: ComponentMergeStatus[];\n otherLaneId: LaneId;\n currentLane?: Lane;\n noAutoSnap?: boolean;\n noSnap?: boolean;\n tag?: boolean;\n snapMessage?: string;\n build?: boolean;\n skipDependencyInstallation?: boolean;\n detachHead?: 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 detachHead\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 =\n await this.configMerger.writeWorkspaceJsoncWithConflictsGracefully(workspaceDepsConflicts);\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 (noAutoSnap || 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 detachHead?: boolean\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 detachHead,\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 detachHead,\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 detachHead?: boolean;\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 if (detachHead) {\n modelComponent.detachedHeads.setHead(remoteHead);\n } else {\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 }\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(pattern: string): Promise<ApplyVersionResults> {\n const consumer = this.workspace.consumer;\n const ids = await this.getIdsForUnmerged(pattern);\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(pattern: string, snapMessage: string, build: boolean): Promise<ApplyVersionResults> {\n const ids = await this.getIdsForUnmerged(pattern);\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(pattern?: string): Promise<ComponentID[]> {\n if (pattern) {\n const componentIds = await this.workspace.idsByPattern(pattern);\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(pattern?: string): Promise<ComponentID[]> {\n if (pattern) {\n return this.workspace.idsByPattern(pattern);\n }\n const mergePending = await this.listMergePendingComponents();\n return mergePending.map((c) => c.id);\n }\n\n async listMergePendingComponents(componentsList?: ComponentsList): Promise<DivergedComponent[]> {\n const consumer = this.workspace.consumer;\n componentsList = componentsList || new ComponentsList(consumer);\n const allIds = consumer.bitMap.getAllIdsAvailableOnLaneIncludeRemoved();\n const componentsFromModel = await componentsList.getModelComponents();\n const duringMergeComps = componentsList.listDuringMergeStateComponents();\n const mergePendingComponents = await Promise.all(\n allIds.map(async (componentId: ComponentID) => {\n const modelComponent = componentsFromModel.find((c) => c.toComponentId().isEqualWithoutVersion(componentId));\n if (!modelComponent || duringMergeComps.hasWithoutVersion(componentId)) return null;\n const divergedData = await modelComponent.getDivergeDataForMergePending(consumer.scope.objects);\n if (!divergedData.isDiverged()) return null;\n return { id: modelComponent.toComponentId(), diverge: divergedData };\n })\n );\n return compact(mergePendingComponents);\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","_legacy","_snapping","_pMapSeries","_interopRequireDefault","_componentId","_bitError","_laneId","_chalk","_config","_remove","_toolboxPath","_pkgModules","_componentWriter","_importer","_logger","_globalConfig","_lodash","_checkout","_configMerger","_dependencyResolver","_install","_scope","_mergeCmd","_merging","_mergeStatusProvider","_mergeVersion","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","pattern","mergeStrategy","abort","resolve","noAutoSnap","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","noSnap","tag","detachHead","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","detachedHeads","setHead","markVersionAsLocal","ids","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","componentIds","idsByPattern","entry","getEntry","unresolvedComponents","u","mergePending","listMergePendingComponents","componentsList","ComponentsList","allIds","getAllIdsAvailableOnLaneIncludeRemoved","componentsFromModel","getModelComponents","duringMergeComps","listDuringMergeStateComponents","mergePendingComponents","toComponentId","divergedData","getDivergeDataForMergePending","isDiverged","diverge","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, AutoTagResult } from '@teambit/workspace';\nimport { Consumer } from '@teambit/legacy.consumer';\nimport { ComponentsList } from '@teambit/legacy.component-list';\nimport { SnappingAspect, SnappingMain, TagResults } from '@teambit/snapping';\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 { UnmergedComponent } from '@teambit/legacy.scope';\nimport { Ref, Lane, ModelComponent } from '@teambit/scope.objects';\nimport chalk from 'chalk';\nimport { ConfigAspect, ConfigMain } from '@teambit/config';\nimport { RemoveAspect, RemoveMain, deleteComponentsFiles } from '@teambit/remove';\nimport { pathNormalizeToLinux } from '@teambit/toolbox.path.path';\nimport { componentIdToPackageName } from '@teambit/pkg.modules.component-package-name';\nimport { ComponentWriterAspect, ComponentWriterMain } from '@teambit/component-writer';\nimport { ConsumerComponent } from '@teambit/legacy.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 {\n ApplyVersionWithComps,\n CheckoutAspect,\n CheckoutMain,\n ComponentStatusBase,\n applyModifiedVersion,\n removeFilesIfNeeded,\n updateFileStatus,\n} from '@teambit/checkout';\nimport {\n ConfigMergerAspect,\n ConfigMergerMain,\n ConfigMergeResult,\n WorkspaceConfigUpdateResult,\n} from '@teambit/config-merger';\nimport { SnapsDistance } from '@teambit/component.snap-distance';\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';\nimport {\n MergeStrategy,\n FileStatus,\n getMergeStrategyInteractive,\n MergeResultsThreeWay,\n MergeOptions,\n} from './merge-version';\n\ntype ResolveUnrelatedData = {\n strategy: MergeStrategy;\n headOnCurrentLane: Ref;\n unrelatedHead: Ref;\n unrelatedLaneId: LaneId;\n};\n\nexport type DivergedComponent = { id: ComponentID; diverge: SnapsDistance };\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 newComponents?: ComponentID[]; // relevant for \"bit stash load\". (stashedBitmapEntries is populated)\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 pattern: string,\n mergeStrategy: MergeStrategy,\n abort: boolean,\n resolve: boolean,\n noAutoSnap: 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(pattern, message, build);\n } else if (abort) {\n mergeResults = await this.abortMerge(pattern);\n } else {\n const bitIds = await this.getComponentsToMerge(pattern);\n mergeResults = await this.mergeComponentsFromRemote(\n consumer,\n bitIds,\n mergeStrategy,\n noAutoSnap,\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 noAutoSnap: 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 noAutoSnap: noAutoSnap,\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 noAutoSnap,\n noSnap,\n tag,\n snapMessage,\n build,\n skipDependencyInstallation,\n detachHead,\n }: {\n mergeStrategy: MergeStrategy;\n allComponentsStatus: ComponentMergeStatus[];\n otherLaneId: LaneId;\n currentLane?: Lane;\n noAutoSnap?: boolean;\n noSnap?: boolean;\n tag?: boolean;\n snapMessage?: string;\n build?: boolean;\n skipDependencyInstallation?: boolean;\n detachHead?: 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 detachHead\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 =\n await this.configMerger.writeWorkspaceJsoncWithConflictsGracefully(workspaceDepsConflicts);\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 (noAutoSnap || 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 detachHead?: boolean\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 detachHead,\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 detachHead,\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 detachHead?: boolean;\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 if (detachHead) {\n modelComponent.detachedHeads.setHead(remoteHead);\n } else {\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 }\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(pattern: string): Promise<ApplyVersionResults> {\n const consumer = this.workspace.consumer;\n const ids = await this.getIdsForUnmerged(pattern);\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(pattern: string, snapMessage: string, build: boolean): Promise<ApplyVersionResults> {\n const ids = await this.getIdsForUnmerged(pattern);\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(pattern?: string): Promise<ComponentID[]> {\n if (pattern) {\n const componentIds = await this.workspace.idsByPattern(pattern);\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(pattern?: string): Promise<ComponentID[]> {\n if (pattern) {\n return this.workspace.idsByPattern(pattern);\n }\n const mergePending = await this.listMergePendingComponents();\n return mergePending.map((c) => c.id);\n }\n\n async listMergePendingComponents(componentsList?: ComponentsList): Promise<DivergedComponent[]> {\n const consumer = this.workspace.consumer;\n componentsList = componentsList || new ComponentsList(this.workspace);\n const allIds = consumer.bitMap.getAllIdsAvailableOnLaneIncludeRemoved();\n const componentsFromModel = await componentsList.getModelComponents();\n const duringMergeComps = componentsList.listDuringMergeStateComponents();\n const mergePendingComponents = await Promise.all(\n allIds.map(async (componentId: ComponentID) => {\n const modelComponent = componentsFromModel.find((c) => c.toComponentId().isEqualWithoutVersion(componentId));\n if (!modelComponent || duringMergeComps.hasWithoutVersion(componentId)) return null;\n const divergedData = await modelComponent.getDivergeDataForMergePending(consumer.scope.objects);\n if (!divergedData.isDiverged()) return null;\n return { id: modelComponent.toComponentId(), diverge: divergedData };\n })\n );\n return compact(mergePendingComponents);\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.
|
|
3
|
+
"version": "1.0.507",
|
|
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.
|
|
9
|
+
"version": "1.0.507"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"chalk": "2.4.2",
|
|
@@ -17,34 +17,34 @@
|
|
|
17
17
|
"@teambit/component-id": "1.2.2",
|
|
18
18
|
"@teambit/lane-id": "0.0.311",
|
|
19
19
|
"@teambit/harmony": "0.4.6",
|
|
20
|
-
"@teambit/cli": "0.0.
|
|
21
|
-
"@teambit/config-merger": "0.0.
|
|
22
|
-
"@teambit/global-config": "0.0.
|
|
20
|
+
"@teambit/cli": "0.0.1084",
|
|
21
|
+
"@teambit/config-merger": "0.0.374",
|
|
22
|
+
"@teambit/global-config": "0.0.1087",
|
|
23
23
|
"@teambit/legacy.constants": "0.0.4",
|
|
24
24
|
"@teambit/git.modules.git-executable": "0.0.5",
|
|
25
25
|
"@teambit/legacy.logger": "0.0.6",
|
|
26
26
|
"@teambit/legacy.utils": "0.0.12",
|
|
27
|
-
"@teambit/component.snap-distance": "0.0.
|
|
28
|
-
"@teambit/importer": "1.0.
|
|
29
|
-
"@teambit/legacy.consumer-component": "0.0.
|
|
30
|
-
"@teambit/legacy.scope": "0.0.
|
|
31
|
-
"@teambit/logger": "0.0.
|
|
32
|
-
"@teambit/scope.objects": "0.0.
|
|
33
|
-
"@teambit/scope": "1.0.
|
|
34
|
-
"@teambit/workspace": "1.0.
|
|
35
|
-
"@teambit/checkout": "1.0.
|
|
36
|
-
"@teambit/component-writer": "1.0.
|
|
37
|
-
"@teambit/config": "0.0.
|
|
38
|
-
"@teambit/dependency-resolver": "1.0.
|
|
39
|
-
"@teambit/install": "1.0.
|
|
40
|
-
"@teambit/legacy.component-list": "0.0.
|
|
41
|
-
"@teambit/legacy.consumer": "0.0.
|
|
42
|
-
"@teambit/pkg.modules.component-package-name": "0.0.
|
|
43
|
-
"@teambit/remove": "1.0.
|
|
44
|
-
"@teambit/snapping": "1.0.
|
|
27
|
+
"@teambit/component.snap-distance": "0.0.15",
|
|
28
|
+
"@teambit/importer": "1.0.507",
|
|
29
|
+
"@teambit/legacy.consumer-component": "0.0.15",
|
|
30
|
+
"@teambit/legacy.scope": "0.0.14",
|
|
31
|
+
"@teambit/logger": "0.0.1177",
|
|
32
|
+
"@teambit/scope.objects": "0.0.14",
|
|
33
|
+
"@teambit/scope": "1.0.507",
|
|
34
|
+
"@teambit/workspace": "1.0.507",
|
|
35
|
+
"@teambit/checkout": "1.0.507",
|
|
36
|
+
"@teambit/component-writer": "1.0.507",
|
|
37
|
+
"@teambit/config": "0.0.1258",
|
|
38
|
+
"@teambit/dependency-resolver": "1.0.507",
|
|
39
|
+
"@teambit/install": "1.0.507",
|
|
40
|
+
"@teambit/legacy.component-list": "0.0.68",
|
|
41
|
+
"@teambit/legacy.consumer": "0.0.14",
|
|
42
|
+
"@teambit/pkg.modules.component-package-name": "0.0.21",
|
|
43
|
+
"@teambit/remove": "1.0.507",
|
|
44
|
+
"@teambit/snapping": "1.0.507",
|
|
45
45
|
"@teambit/toolbox.path.path": "0.0.5",
|
|
46
46
|
"@teambit/legacy.cli.prompts": "0.0.9",
|
|
47
|
-
"@teambit/component.sources": "0.0.
|
|
47
|
+
"@teambit/component.sources": "0.0.66",
|
|
48
48
|
"@teambit/toolbox.crypto.sha1": "0.0.4",
|
|
49
49
|
"@teambit/toolbox.string.eol": "0.0.2"
|
|
50
50
|
},
|
|
File without changes
|