xml-disassembler 1.3.9 → 1.3.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,21 @@
5
5
 
6
6
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
7
7
 
8
+ ## [1.3.11](https://github.com/mcarvin8/xml-disassembler/compare/v1.3.10...v1.3.11) (2025-01-21)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * revert to 1.3.8 to remove parallel processing ([876ff0c](https://github.com/mcarvin8/xml-disassembler/commit/876ff0cd8c27060a22b26d0efdc34bf155214680))
14
+
15
+ ## [1.3.10](https://github.com/mcarvin8/xml-disassembler/compare/v1.3.9...v1.3.10) (2025-01-21)
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * export get concurrency threshold ([1cb7cae](https://github.com/mcarvin8/xml-disassembler/commit/1cb7cae42db6d7cf6b4cd0169745805808e20658))
21
+ * use concurrency limit function ([a8e53b8](https://github.com/mcarvin8/xml-disassembler/commit/a8e53b88b503a61c7b284f56f87521949aa3d687))
22
+
8
23
  ## [1.3.9](https://github.com/mcarvin8/xml-disassembler/compare/v1.3.8...v1.3.9) (2025-01-21)
9
24
 
10
25
 
package/disassemble.log CHANGED
@@ -1,95 +1,95 @@
1
- [2025-01-21T16:47:02.878] [DEBUG] default - Parsing file to disassemble: mock/general/HR_Admin.permissionset-meta.xml
2
- [2025-01-21T16:47:02.897] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/classAccesses/Send_Email_Confirmation.classAccesses-meta.xml
3
- [2025-01-21T16:47:02.898] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/fieldPermissions/Job_Request__c.Salary__c.fieldPermissions-meta.xml
4
- [2025-01-21T16:47:02.899] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/objectPermissions/Job_Request__c.objectPermissions-meta.xml
5
- [2025-01-21T16:47:02.900] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/applicationVisibilities/JobApps__Recruiting.applicationVisibilities-meta.xml
6
- [2025-01-21T16:47:02.901] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/pageAccesses/Job_Request_Web_Form.pageAccesses-meta.xml
7
- [2025-01-21T16:47:02.901] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/recordTypeVisibilities/Recruiting.DevManager.recordTypeVisibilities-meta.xml
8
- [2025-01-21T16:47:02.902] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/tabSettings/Job_Request__c.tabSettings-meta.xml
9
- [2025-01-21T16:47:02.903] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/userPermissions/APIEnabled.userPermissions-meta.xml
10
- [2025-01-21T16:47:02.904] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/HR_Admin.permissionset-meta.xml
11
- [2025-01-21T16:47:02.906] [DEBUG] default - Parsing directory to reassemble: mock/general/HR_Admin
12
- [2025-01-21T16:47:02.921] [DEBUG] default - Created reassembled file: mock/general/HR_Admin.permissionset-meta.xml
13
- [2025-01-21T16:47:02.922] [DEBUG] default - Parsing file to disassemble: mock/attributes/notes.xml
14
- [2025-01-21T16:47:02.924] [DEBUG] default - Created disassembled file: mock/attributes/notes/nest/103c6c8b.nest-meta.xml
15
- [2025-01-21T16:47:02.924] [DEBUG] default - Created disassembled file: mock/attributes/notes/nest/f876f2be.nest-meta.xml
16
- [2025-01-21T16:47:02.925] [DEBUG] default - Parsing directory to reassemble: mock/attributes/notes
17
- [2025-01-21T16:47:02.927] [DEBUG] default - Created reassembled file: mock/attributes/notes.xml
18
- [2025-01-21T16:47:02.928] [DEBUG] default - Parsing file to disassemble: mock/cdata/VidLand_US.marketingappextension-meta.xml
19
- [2025-01-21T16:47:02.929] [DEBUG] default - Created disassembled file: mock/cdata/VidLand_US/marketingAppExtActions/register_user.marketingAppExtActions-meta.xml
20
- [2025-01-21T16:47:02.930] [DEBUG] default - Created disassembled file: mock/cdata/VidLand_US/VidLand_US.marketingappextension-meta.xml
21
- [2025-01-21T16:47:02.931] [DEBUG] default - Parsing directory to reassemble: mock/cdata/VidLand_US
22
- [2025-01-21T16:47:02.933] [DEBUG] default - Created reassembled file: mock/cdata/VidLand_US.xml
23
- [2025-01-21T16:47:02.934] [DEBUG] default - Parsing file to disassemble: mock/comments/Numbers-fr.globalValueSetTranslation-meta.xml
24
- [2025-01-21T16:47:02.935] [DEBUG] default - Created disassembled file: mock/comments/Numbers-fr/valueTranslation/d7dd1420.valueTranslation-meta.xml
25
- [2025-01-21T16:47:02.936] [DEBUG] default - Created disassembled file: mock/comments/Numbers-fr/valueTranslation/30e8b6d2.valueTranslation-meta.xml
26
- [2025-01-21T16:47:02.936] [DEBUG] default - Created disassembled file: mock/comments/Numbers-fr/valueTranslation/d8852ede.valueTranslation-meta.xml
27
- [2025-01-21T16:47:02.937] [DEBUG] default - Parsing directory to reassemble: mock/comments/Numbers-fr
28
- [2025-01-21T16:47:02.938] [DEBUG] default - Created reassembled file: mock/comments/Numbers-fr.globalValueSetTranslation-meta.xml
29
- [2025-01-21T16:47:02.939] [DEBUG] default - Parsing file to disassemble: mock/deeply-nested-unique-id-element/Get_Info.flow-meta.xml
30
- [2025-01-21T16:47:02.945] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/actionCalls/Get_Info.actionCalls-meta.xml
31
- [2025-01-21T16:47:02.946] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/decisions/Update_If_Existing.decisions-meta.xml
32
- [2025-01-21T16:47:02.946] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/dynamicChoiceSets/accounts.dynamicChoiceSets-meta.xml
33
- [2025-01-21T16:47:02.946] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/assignments/Set_Contact_ID.assignments-meta.xml
34
- [2025-01-21T16:47:02.946] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/actionCalls/Post_to_Contact_s_Feed.actionCalls-meta.xml
35
- [2025-01-21T16:47:02.947] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/decisions/Update_or_Create.decisions-meta.xml
36
- [2025-01-21T16:47:02.948] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/formulas/created_or_updated.formulas-meta.xml
37
- [2025-01-21T16:47:02.948] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/processMetadataValues/BuilderType.processMetadataValues-meta.xml
38
- [2025-01-21T16:47:02.948] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/recordCreates/Create_Contact.recordCreates-meta.xml
39
- [2025-01-21T16:47:02.948] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/recordLookups/Find_a_Match.recordLookups-meta.xml
40
- [2025-01-21T16:47:02.948] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/processMetadataValues/CanvasMode.processMetadataValues-meta.xml
41
- [2025-01-21T16:47:02.948] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/processMetadataValues/OriginBuilderType.processMetadataValues-meta.xml
42
- [2025-01-21T16:47:02.949] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/recordUpdates/Update_Contact.recordUpdates-meta.xml
43
- [2025-01-21T16:47:02.949] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/screens/Confirm.screens-meta.xml
44
- [2025-01-21T16:47:02.950] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/textTemplates/chatterMessage.textTemplates-meta.xml
45
- [2025-01-21T16:47:02.950] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/screens/Contact_Info.screens-meta.xml
46
- [2025-01-21T16:47:02.950] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/start/Contact_Info.start-meta.xml
47
- [2025-01-21T16:47:02.950] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/variables/ComplexObjectExample.variables-meta.xml
48
- [2025-01-21T16:47:02.950] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/variables/contact.variables-meta.xml
49
- [2025-01-21T16:47:02.950] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/variables/updateExisting.variables-meta.xml
50
- [2025-01-21T16:47:02.950] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/variables/existingId.variables-meta.xml
51
- [2025-01-21T16:47:02.951] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/Get_Info.flow-meta.xml
52
- [2025-01-21T16:47:02.952] [DEBUG] default - Parsing directory to reassemble: mock/deeply-nested-unique-id-element/Get_Info
53
- [2025-01-21T16:47:02.968] [DEBUG] default - Created reassembled file: mock/deeply-nested-unique-id-element/Get_Info.flow-meta.xml
54
- [2025-01-21T16:47:02.970] [DEBUG] default - Parsing file to disassemble: mock/array-of-leafs/Dreamhouse.app-meta.xml
55
- [2025-01-21T16:47:02.973] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/39049d21.actionOverrides-meta.xml
56
- [2025-01-21T16:47:02.973] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/brand/c9db422b.brand-meta.xml
57
- [2025-01-21T16:47:02.973] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/735c1659.actionOverrides-meta.xml
58
- [2025-01-21T16:47:02.973] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/b04e9f9b.actionOverrides-meta.xml
59
- [2025-01-21T16:47:02.973] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/c8cc7a99.actionOverrides-meta.xml
60
- [2025-01-21T16:47:02.974] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/Dreamhouse.app-meta.xml
61
- [2025-01-21T16:47:02.975] [DEBUG] default - Parsing directory to reassemble: mock/array-of-leafs/Dreamhouse
62
- [2025-01-21T16:47:02.979] [DEBUG] default - Created reassembled file: mock/array-of-leafs/Dreamhouse.app-meta.xml
63
- [2025-01-21T16:47:02.980] [DEBUG] default - Parsing file to disassemble: mock/array-of-leafs/Dreamhouse.app-meta.xml
64
- [2025-01-21T16:47:02.985] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/39049d21.actionOverrides-meta.xml
65
- [2025-01-21T16:47:02.985] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/brand/c9db422b.brand-meta.xml
66
- [2025-01-21T16:47:02.985] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/735c1659.actionOverrides-meta.xml
67
- [2025-01-21T16:47:02.985] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/b04e9f9b.actionOverrides-meta.xml
68
- [2025-01-21T16:47:02.985] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/c8cc7a99.actionOverrides-meta.xml
69
- [2025-01-21T16:47:02.985] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/Dreamhouse.app-meta.xml
70
- [2025-01-21T16:47:02.986] [DEBUG] default - Parsing directory to reassemble: mock/array-of-leafs/Dreamhouse
71
- [2025-01-21T16:47:02.988] [DEBUG] default - Created reassembled file: mock/array-of-leafs/Dreamhouse.app-meta.xml
72
- [2025-01-21T16:47:02.990] [DEBUG] default - Parsing file to disassemble: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin.permissionset-meta.xml
73
- [2025-01-21T16:47:02.991] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/applicationVisibilities/JobApps__Recruiting.applicationVisibilities-meta.xml
74
- [2025-01-21T16:47:02.992] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/classAccesses/Send_Email_Confirmation.classAccesses-meta.xml
75
- [2025-01-21T16:47:02.992] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/fieldPermissions/Job_Request__c.Salary__c.fieldPermissions-meta.xml
76
- [2025-01-21T16:47:02.992] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/objectPermissions/Job_Request__c.objectPermissions-meta.xml
77
- [2025-01-21T16:47:02.992] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/pageAccesses/Job_Request_Web_Form.pageAccesses-meta.xml
78
- [2025-01-21T16:47:02.992] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/tabSettings/Job_Request__c.tabSettings-meta.xml
79
- [2025-01-21T16:47:02.992] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/recordTypeVisibilities/Recruiting.DevManager.recordTypeVisibilities-meta.xml
80
- [2025-01-21T16:47:02.993] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/userPermissions/APIEnabled.userPermissions-meta.xml
81
- [2025-01-21T16:47:02.993] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/HR_Admin.permissionset-meta.xml
82
- [2025-01-21T16:47:02.994] [DEBUG] default - Parsing directory to reassemble: mock/no-namespace/HR_Admin
83
- [2025-01-21T16:47:02.997] [DEBUG] default - Created reassembled file: mock/no-namespace/HR_Admin.permissionset-meta.xml
84
- [2025-01-21T16:47:02.998] [ERROR] default - The file path provided is not an XML file: /home/runner/work/xml-disassembler/xml-disassembler/mock/not-an-xml.txt
85
- [2025-01-21T16:47:02.999] [ERROR] default - The provided path to reassemble is not a directory: mock/no-namespace/HR_Admin/HR_Admin.permissionset-meta.xml
86
- [2025-01-21T16:47:03.000] [DEBUG] default - Parsing file to disassemble: mock/no-root-element/Assessment_Bot.bot-meta.xml
87
- [2025-01-21T16:47:03.000] [ERROR] default - mock/no-root-element/Assessment_Bot.bot-meta.xml was unabled to be parsed and will not be processed. Confirm formatting and try again.
88
- [2025-01-21T16:47:03.001] [DEBUG] default - Parsing directory to reassemble: mock/no-root-element/Assessment_Bot
89
- [2025-01-21T16:47:03.001] [ERROR] default - mock/no-root-element/Assessment_Bot/Assessment_Bot.bot-meta.xml was unabled to be parsed and will not be processed. Confirm formatting and try again.
90
- [2025-01-21T16:47:03.002] [ERROR] default - mock/no-root-element/Assessment_Bot/botMlDomain/419e0199.botMlDomain-meta.xml was unabled to be parsed and will not be processed. Confirm formatting and try again.
91
- [2025-01-21T16:47:03.002] [ERROR] default - No files under mock/no-root-element/Assessment_Bot were parsed successfully. A reassembled XML file was not created.
92
- [2025-01-21T16:47:03.003] [DEBUG] default - Parsing file to disassemble: mock/no-nested-elements/HR_Admin.xml
93
- [2025-01-21T16:47:03.003] [ERROR] default - The XML file mock/no-nested-elements/HR_Admin.xml only has leaf elements. This file will not be disassembled.
94
- [2025-01-21T16:47:03.004] [WARN] default - File ignored by .xmldisassemblerignore: mock/ignore/HR_Admin.permissionset-meta.xml
95
- [2025-01-21T16:47:03.006] [WARN] default - File ignored by .xmldisassemblerignore: /home/runner/work/xml-disassembler/xml-disassembler/mock/ignore/HR_Admin.permissionset-meta.xml
1
+ [2025-01-21T21:49:47.604] [DEBUG] default - Parsing file to disassemble: mock/general/HR_Admin.permissionset-meta.xml
2
+ [2025-01-21T21:49:47.611] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/applicationVisibilities/JobApps__Recruiting.applicationVisibilities-meta.xml
3
+ [2025-01-21T21:49:47.612] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/classAccesses/Send_Email_Confirmation.classAccesses-meta.xml
4
+ [2025-01-21T21:49:47.612] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/fieldPermissions/Job_Request__c.Salary__c.fieldPermissions-meta.xml
5
+ [2025-01-21T21:49:47.613] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/objectPermissions/Job_Request__c.objectPermissions-meta.xml
6
+ [2025-01-21T21:49:47.613] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/pageAccesses/Job_Request_Web_Form.pageAccesses-meta.xml
7
+ [2025-01-21T21:49:47.614] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/recordTypeVisibilities/Recruiting.DevManager.recordTypeVisibilities-meta.xml
8
+ [2025-01-21T21:49:47.615] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/tabSettings/Job_Request__c.tabSettings-meta.xml
9
+ [2025-01-21T21:49:47.615] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/userPermissions/APIEnabled.userPermissions-meta.xml
10
+ [2025-01-21T21:49:47.616] [DEBUG] default - Created disassembled file: mock/general/HR_Admin/HR_Admin.permissionset-meta.xml
11
+ [2025-01-21T21:49:47.619] [DEBUG] default - Parsing directory to reassemble: mock/general/HR_Admin
12
+ [2025-01-21T21:49:47.635] [DEBUG] default - Created reassembled file: mock/general/HR_Admin.permissionset-meta.xml
13
+ [2025-01-21T21:49:47.640] [DEBUG] default - Parsing file to disassemble: mock/attributes/notes.xml
14
+ [2025-01-21T21:49:47.641] [DEBUG] default - Created disassembled file: mock/attributes/notes/nest/103c6c8b.nest-meta.xml
15
+ [2025-01-21T21:49:47.641] [DEBUG] default - Created disassembled file: mock/attributes/notes/nest/f876f2be.nest-meta.xml
16
+ [2025-01-21T21:49:47.642] [DEBUG] default - Parsing directory to reassemble: mock/attributes/notes
17
+ [2025-01-21T21:49:47.644] [DEBUG] default - Created reassembled file: mock/attributes/notes.xml
18
+ [2025-01-21T21:49:47.645] [DEBUG] default - Parsing file to disassemble: mock/cdata/VidLand_US.marketingappextension-meta.xml
19
+ [2025-01-21T21:49:47.647] [DEBUG] default - Created disassembled file: mock/cdata/VidLand_US/marketingAppExtActions/register_user.marketingAppExtActions-meta.xml
20
+ [2025-01-21T21:49:47.647] [DEBUG] default - Created disassembled file: mock/cdata/VidLand_US/VidLand_US.marketingappextension-meta.xml
21
+ [2025-01-21T21:49:47.648] [DEBUG] default - Parsing directory to reassemble: mock/cdata/VidLand_US
22
+ [2025-01-21T21:49:47.650] [DEBUG] default - Created reassembled file: mock/cdata/VidLand_US.xml
23
+ [2025-01-21T21:49:47.651] [DEBUG] default - Parsing file to disassemble: mock/comments/Numbers-fr.globalValueSetTranslation-meta.xml
24
+ [2025-01-21T21:49:47.652] [DEBUG] default - Created disassembled file: mock/comments/Numbers-fr/valueTranslation/30e8b6d2.valueTranslation-meta.xml
25
+ [2025-01-21T21:49:47.653] [DEBUG] default - Created disassembled file: mock/comments/Numbers-fr/valueTranslation/d7dd1420.valueTranslation-meta.xml
26
+ [2025-01-21T21:49:47.653] [DEBUG] default - Created disassembled file: mock/comments/Numbers-fr/valueTranslation/d8852ede.valueTranslation-meta.xml
27
+ [2025-01-21T21:49:47.655] [DEBUG] default - Parsing directory to reassemble: mock/comments/Numbers-fr
28
+ [2025-01-21T21:49:47.671] [DEBUG] default - Created reassembled file: mock/comments/Numbers-fr.globalValueSetTranslation-meta.xml
29
+ [2025-01-21T21:49:47.678] [DEBUG] default - Parsing file to disassemble: mock/deeply-nested-unique-id-element/Get_Info.flow-meta.xml
30
+ [2025-01-21T21:49:47.690] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/actionCalls/Get_Info.actionCalls-meta.xml
31
+ [2025-01-21T21:49:47.691] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/actionCalls/Post_to_Contact_s_Feed.actionCalls-meta.xml
32
+ [2025-01-21T21:49:47.692] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/assignments/Set_Contact_ID.assignments-meta.xml
33
+ [2025-01-21T21:49:47.693] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/decisions/Update_If_Existing.decisions-meta.xml
34
+ [2025-01-21T21:49:47.694] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/decisions/Update_or_Create.decisions-meta.xml
35
+ [2025-01-21T21:49:47.695] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/dynamicChoiceSets/accounts.dynamicChoiceSets-meta.xml
36
+ [2025-01-21T21:49:47.696] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/formulas/created_or_updated.formulas-meta.xml
37
+ [2025-01-21T21:49:47.697] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/processMetadataValues/BuilderType.processMetadataValues-meta.xml
38
+ [2025-01-21T21:49:47.698] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/processMetadataValues/CanvasMode.processMetadataValues-meta.xml
39
+ [2025-01-21T21:49:47.698] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/processMetadataValues/OriginBuilderType.processMetadataValues-meta.xml
40
+ [2025-01-21T21:49:47.699] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/recordCreates/Create_Contact.recordCreates-meta.xml
41
+ [2025-01-21T21:49:47.700] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/recordLookups/Find_a_Match.recordLookups-meta.xml
42
+ [2025-01-21T21:49:47.701] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/recordUpdates/Update_Contact.recordUpdates-meta.xml
43
+ [2025-01-21T21:49:47.702] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/screens/Confirm.screens-meta.xml
44
+ [2025-01-21T21:49:47.703] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/screens/Contact_Info.screens-meta.xml
45
+ [2025-01-21T21:49:47.703] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/start/Contact_Info.start-meta.xml
46
+ [2025-01-21T21:49:47.704] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/textTemplates/chatterMessage.textTemplates-meta.xml
47
+ [2025-01-21T21:49:47.705] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/variables/ComplexObjectExample.variables-meta.xml
48
+ [2025-01-21T21:49:47.706] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/variables/contact.variables-meta.xml
49
+ [2025-01-21T21:49:47.707] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/variables/existingId.variables-meta.xml
50
+ [2025-01-21T21:49:47.707] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/variables/updateExisting.variables-meta.xml
51
+ [2025-01-21T21:49:47.711] [DEBUG] default - Created disassembled file: mock/deeply-nested-unique-id-element/Get_Info/Get_Info.flow-meta.xml
52
+ [2025-01-21T21:49:47.713] [DEBUG] default - Parsing directory to reassemble: mock/deeply-nested-unique-id-element/Get_Info
53
+ [2025-01-21T21:49:47.757] [DEBUG] default - Created reassembled file: mock/deeply-nested-unique-id-element/Get_Info.flow-meta.xml
54
+ [2025-01-21T21:49:47.761] [DEBUG] default - Parsing file to disassemble: mock/array-of-leafs/Dreamhouse.app-meta.xml
55
+ [2025-01-21T21:49:47.766] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/39049d21.actionOverrides-meta.xml
56
+ [2025-01-21T21:49:47.766] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/735c1659.actionOverrides-meta.xml
57
+ [2025-01-21T21:49:47.767] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/b04e9f9b.actionOverrides-meta.xml
58
+ [2025-01-21T21:49:47.769] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/c8cc7a99.actionOverrides-meta.xml
59
+ [2025-01-21T21:49:47.769] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/brand/c9db422b.brand-meta.xml
60
+ [2025-01-21T21:49:47.770] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/Dreamhouse.app-meta.xml
61
+ [2025-01-21T21:49:47.771] [DEBUG] default - Parsing directory to reassemble: mock/array-of-leafs/Dreamhouse
62
+ [2025-01-21T21:49:47.776] [DEBUG] default - Created reassembled file: mock/array-of-leafs/Dreamhouse.app-meta.xml
63
+ [2025-01-21T21:49:47.777] [DEBUG] default - Parsing file to disassemble: mock/array-of-leafs/Dreamhouse.app-meta.xml
64
+ [2025-01-21T21:49:47.781] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/39049d21.actionOverrides-meta.xml
65
+ [2025-01-21T21:49:47.781] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/735c1659.actionOverrides-meta.xml
66
+ [2025-01-21T21:49:47.781] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/b04e9f9b.actionOverrides-meta.xml
67
+ [2025-01-21T21:49:47.782] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/actionOverrides/c8cc7a99.actionOverrides-meta.xml
68
+ [2025-01-21T21:49:47.782] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/brand/c9db422b.brand-meta.xml
69
+ [2025-01-21T21:49:47.782] [DEBUG] default - Created disassembled file: mock/array-of-leafs/Dreamhouse/Dreamhouse.app-meta.xml
70
+ [2025-01-21T21:49:47.783] [DEBUG] default - Parsing directory to reassemble: mock/array-of-leafs/Dreamhouse
71
+ [2025-01-21T21:49:47.786] [DEBUG] default - Created reassembled file: mock/array-of-leafs/Dreamhouse.app-meta.xml
72
+ [2025-01-21T21:49:47.788] [DEBUG] default - Parsing file to disassemble: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin.permissionset-meta.xml
73
+ [2025-01-21T21:49:47.789] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/applicationVisibilities/JobApps__Recruiting.applicationVisibilities-meta.xml
74
+ [2025-01-21T21:49:47.789] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/classAccesses/Send_Email_Confirmation.classAccesses-meta.xml
75
+ [2025-01-21T21:49:47.789] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/fieldPermissions/Job_Request__c.Salary__c.fieldPermissions-meta.xml
76
+ [2025-01-21T21:49:47.790] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/objectPermissions/Job_Request__c.objectPermissions-meta.xml
77
+ [2025-01-21T21:49:47.790] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/pageAccesses/Job_Request_Web_Form.pageAccesses-meta.xml
78
+ [2025-01-21T21:49:47.791] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/recordTypeVisibilities/Recruiting.DevManager.recordTypeVisibilities-meta.xml
79
+ [2025-01-21T21:49:47.791] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/tabSettings/Job_Request__c.tabSettings-meta.xml
80
+ [2025-01-21T21:49:47.791] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/userPermissions/APIEnabled.userPermissions-meta.xml
81
+ [2025-01-21T21:49:47.791] [DEBUG] default - Created disassembled file: /home/runner/work/xml-disassembler/xml-disassembler/mock/no-namespace/HR_Admin/HR_Admin.permissionset-meta.xml
82
+ [2025-01-21T21:49:47.792] [DEBUG] default - Parsing directory to reassemble: mock/no-namespace/HR_Admin
83
+ [2025-01-21T21:49:47.796] [DEBUG] default - Created reassembled file: mock/no-namespace/HR_Admin.permissionset-meta.xml
84
+ [2025-01-21T21:49:47.797] [ERROR] default - The file path provided is not an XML file: /home/runner/work/xml-disassembler/xml-disassembler/mock/not-an-xml.txt
85
+ [2025-01-21T21:49:47.798] [ERROR] default - The provided path to reassemble is not a directory: mock/no-namespace/HR_Admin/HR_Admin.permissionset-meta.xml
86
+ [2025-01-21T21:49:47.800] [DEBUG] default - Parsing file to disassemble: mock/no-root-element/Assessment_Bot.bot-meta.xml
87
+ [2025-01-21T21:49:47.800] [ERROR] default - mock/no-root-element/Assessment_Bot.bot-meta.xml was unabled to be parsed and will not be processed. Confirm formatting and try again.
88
+ [2025-01-21T21:49:47.801] [DEBUG] default - Parsing directory to reassemble: mock/no-root-element/Assessment_Bot
89
+ [2025-01-21T21:49:47.801] [ERROR] default - mock/no-root-element/Assessment_Bot/Assessment_Bot.bot-meta.xml was unabled to be parsed and will not be processed. Confirm formatting and try again.
90
+ [2025-01-21T21:49:47.802] [ERROR] default - mock/no-root-element/Assessment_Bot/botMlDomain/419e0199.botMlDomain-meta.xml was unabled to be parsed and will not be processed. Confirm formatting and try again.
91
+ [2025-01-21T21:49:47.802] [ERROR] default - No files under mock/no-root-element/Assessment_Bot were parsed successfully. A reassembled XML file was not created.
92
+ [2025-01-21T21:49:47.803] [DEBUG] default - Parsing file to disassemble: mock/no-nested-elements/HR_Admin.xml
93
+ [2025-01-21T21:49:47.803] [ERROR] default - The XML file mock/no-nested-elements/HR_Admin.xml only has leaf elements. This file will not be disassembled.
94
+ [2025-01-21T21:49:47.804] [WARN] default - File ignored by .xmldisassemblerignore: mock/ignore/HR_Admin.permissionset-meta.xml
95
+ [2025-01-21T21:49:47.805] [WARN] default - File ignored by .xmldisassemblerignore: /home/runner/work/xml-disassembler/xml-disassembler/mock/ignore/HR_Admin.permissionset-meta.xml
package/dist/index.cjs CHANGED
@@ -8,7 +8,6 @@ var node_path = require('node:path');
8
8
  var ignore = require('ignore');
9
9
  var node_crypto = require('node:crypto');
10
10
  var fastXmlParser = require('fast-xml-parser');
11
- var node_os = require('node:os');
12
11
 
13
12
  /******************************************************************************
14
13
  Copyright (c) Microsoft Corporation.
@@ -127,60 +126,36 @@ function processFilesForRootElement(xmlParsed) {
127
126
  });
128
127
  }
129
128
 
130
- function getConcurrencyThreshold() {
131
- const AVAILABLE_PARALLELISM = node_os.availableParallelism
132
- ? node_os.availableParallelism()
133
- : Infinity;
134
- return Math.min(AVAILABLE_PARALLELISM, 6);
135
- }
136
-
137
129
  class ReassembleXMLFileHandler {
138
130
  processFilesInDirectory(dirPath) {
139
131
  return __awaiter(this, void 0, void 0, function* () {
132
+ const combinedXmlContents = [];
133
+ let rootResult = undefined;
140
134
  const files = yield promises.readdir(dirPath);
141
135
  files.sort((fileA, fileB) => {
142
136
  const fullNameA = fileA.split(".")[0].toLowerCase();
143
137
  const fullNameB = fileB.split(".")[0].toLowerCase();
144
138
  return fullNameA.localeCompare(fullNameB);
145
139
  });
146
- const combinedXmlContents = [];
147
- let rootResult = undefined;
148
- const concurrencyLimit = getConcurrencyThreshold();
149
- const activePromises = [];
150
- let currentIndex = 0;
151
- const processFile = (file, index) => __awaiter(this, void 0, void 0, function* () {
140
+ for (const file of files) {
152
141
  const filePath = posix.join(dirPath, file);
153
142
  const fileStat = yield promises.stat(filePath);
154
143
  if (fileStat.isFile() && filePath.endsWith(".xml")) {
155
144
  const xmlParsed = yield parseXML(filePath);
156
145
  if (xmlParsed === undefined)
157
- return;
146
+ continue;
158
147
  const rootResultFromFile = yield processFilesForRootElement(xmlParsed);
159
148
  rootResult = rootResultFromFile;
160
149
  const combinedXmlString = buildXMLString(xmlParsed);
161
- combinedXmlContents[index] = combinedXmlString;
150
+ combinedXmlContents.push(combinedXmlString);
162
151
  }
163
152
  else if (fileStat.isDirectory()) {
164
153
  const [subCombinedXmlContents, subRootResult] = yield this.processFilesInDirectory(filePath);
154
+ combinedXmlContents.push(...subCombinedXmlContents);
165
155
  rootResult = subRootResult;
166
- combinedXmlContents[index] = subCombinedXmlContents.join("");
167
- }
168
- });
169
- while (currentIndex < files.length || activePromises.length > 0) {
170
- if (currentIndex < files.length &&
171
- activePromises.length < concurrencyLimit) {
172
- const index = currentIndex++;
173
- const file = files[index];
174
- const promise = processFile(file, index).finally(() => {
175
- activePromises.splice(activePromises.indexOf(promise), 1);
176
- });
177
- activePromises.push(promise);
178
- }
179
- else {
180
- yield Promise.race(activePromises);
181
156
  }
182
157
  }
183
- return [combinedXmlContents.filter(Boolean), rootResult];
158
+ return [combinedXmlContents, rootResult];
184
159
  });
185
160
  }
186
161
  reassemble(xmlAttributes) {
@@ -301,14 +276,10 @@ function buildDisassembledFiles(filePath, disassembledPath, uniqueIdElements, ba
301
276
  let leafContent = "";
302
277
  let leafCount = 0;
303
278
  let hasNestedElements = false;
304
- const childKeys = Object.keys(rootElement).filter((key) => !key.startsWith("@"));
305
- const concurrencyLimit = getConcurrencyThreshold();
306
- const activePromises = [];
307
- let currentIndex = 0;
308
- const processChildKey = (key) => __awaiter(this, void 0, void 0, function* () {
279
+ for (const key of Object.keys(rootElement).filter((key) => !key.startsWith("@"))) {
309
280
  if (Array.isArray(rootElement[key])) {
310
- yield Promise.all(rootElement[key].map((element) => __awaiter(this, void 0, void 0, function* () {
311
- const [updatedLeafContent, updatedLeafCount, updatedHasNestedElements,] = yield processElement({
281
+ for (const element of rootElement[key]) {
282
+ const [updatedLeafContent, updatedLeafCount, updatedHasNestedElements] = yield processElement({
312
283
  element,
313
284
  disassembledPath,
314
285
  uniqueIdElements,
@@ -316,14 +287,14 @@ function buildDisassembledFiles(filePath, disassembledPath, uniqueIdElements, ba
316
287
  rootElementHeader,
317
288
  key,
318
289
  indent,
319
- leafContent: "",
320
- leafCount: 0,
321
- hasNestedElements: false,
290
+ leafContent,
291
+ leafCount,
292
+ hasNestedElements,
322
293
  });
323
- leafContent += updatedLeafContent;
324
- leafCount += updatedLeafCount;
325
- hasNestedElements = hasNestedElements || updatedHasNestedElements;
326
- })));
294
+ leafContent = updatedLeafContent;
295
+ leafCount = updatedLeafCount;
296
+ hasNestedElements = updatedHasNestedElements;
297
+ }
327
298
  }
328
299
  else {
329
300
  const [updatedLeafContent, updatedLeafCount, updatedHasNestedElements] = yield processElement({
@@ -334,26 +305,13 @@ function buildDisassembledFiles(filePath, disassembledPath, uniqueIdElements, ba
334
305
  rootElementHeader,
335
306
  key,
336
307
  indent,
337
- leafContent: "",
338
- leafCount: 0,
339
- hasNestedElements: false,
308
+ leafContent,
309
+ leafCount,
310
+ hasNestedElements,
340
311
  });
341
- leafContent += updatedLeafContent;
342
- leafCount += updatedLeafCount;
343
- hasNestedElements = hasNestedElements || updatedHasNestedElements;
344
- }
345
- });
346
- while (currentIndex < childKeys.length || activePromises.length > 0) {
347
- if (currentIndex < childKeys.length &&
348
- activePromises.length < concurrencyLimit) {
349
- const key = childKeys[currentIndex++];
350
- const promise = processChildKey(key).finally(() => {
351
- activePromises.splice(activePromises.indexOf(promise), 1);
352
- });
353
- activePromises.push(promise);
354
- }
355
- else {
356
- yield Promise.race(activePromises);
312
+ leafContent = updatedLeafContent;
313
+ leafCount = updatedLeafCount;
314
+ hasNestedElements = updatedHasNestedElements;
357
315
  }
358
316
  }
359
317
  if (!hasNestedElements) {
@@ -364,7 +322,7 @@ function buildDisassembledFiles(filePath, disassembledPath, uniqueIdElements, ba
364
322
  yield buildLeafFile(leafContent, disassembledPath, baseName, rootElementName, rootElementHeader);
365
323
  }
366
324
  if (postPurge) {
367
- yield promises.unlink(filePath);
325
+ promises.unlink(filePath);
368
326
  }
369
327
  });
370
328
  }
@@ -404,10 +362,7 @@ class DisassembleXMLFileHandler {
404
362
  }
405
363
  else if (fileStat.isDirectory()) {
406
364
  const subFiles = yield promises.readdir(filePath);
407
- const concurrencyLimit = getConcurrencyThreshold();
408
- const activePromises = [];
409
- let currentIndex = 0;
410
- const processSubFile = (subFile) => __awaiter(this, void 0, void 0, function* () {
365
+ for (const subFile of subFiles) {
411
366
  const subFilePath = node_path.join(filePath, subFile);
412
367
  const relativeSubFilePath = this.posixPath(node_path.relative(process.cwd(), subFilePath));
413
368
  if (subFilePath.endsWith(".xml") &&
@@ -423,19 +378,6 @@ class DisassembleXMLFileHandler {
423
378
  else if (this.ign.ignores(relativeSubFilePath)) {
424
379
  logger.warn(`File ignored by ${ignorePath}: ${subFilePath}`);
425
380
  }
426
- });
427
- while (currentIndex < subFiles.length || activePromises.length > 0) {
428
- if (currentIndex < subFiles.length &&
429
- activePromises.length < concurrencyLimit) {
430
- const subFile = subFiles[currentIndex++];
431
- const promise = processSubFile(subFile).finally(() => {
432
- activePromises.splice(activePromises.indexOf(promise), 1);
433
- });
434
- activePromises.push(promise);
435
- }
436
- else {
437
- yield Promise.race(activePromises);
438
- }
439
381
  }
440
382
  }
441
383
  });
@@ -446,10 +388,10 @@ class DisassembleXMLFileHandler {
446
388
  logger.debug(`Parsing file to disassemble: ${filePath}`);
447
389
  const fullName = node_path.basename(filePath, node_path.extname(filePath));
448
390
  const baseName = fullName.split(".")[0];
449
- let outputPath = node_path.join(dirPath, baseName);
450
- if (prePurge && node_fs.existsSync(outputPath)) {
391
+ let outputPath;
392
+ outputPath = node_path.join(dirPath, baseName);
393
+ if (prePurge && node_fs.existsSync(outputPath))
451
394
  yield promises.rm(outputPath, { recursive: true });
452
- }
453
395
  yield buildDisassembledFiles(filePath, outputPath, uniqueIdElements, fullName, INDENT, postPurge);
454
396
  });
455
397
  }