dev/core#2607 - Add deleted-files-list
authorcolemanw <coleman@civicrm.org>
Thu, 14 Dec 2023 14:41:07 +0000 (09:41 -0500)
committercolemanw <coleman@civicrm.org>
Fri, 15 Dec 2023 14:26:19 +0000 (09:26 -0500)
Towards addressing the problem that some upgraders leave old files in the tree, which
can cause php fatal errors when they continue to autoload, or security issues if the
files were deleted for security reasons.

This generates a list of files which no longer exist. We could use that list to attempt
to auto-remove them during upgrades, or at the very least show an alert if they are present.

deleted-files-list.json [new file with mode: 0644]
distmaker/dists/common.sh
tools/scripts/generate-deleted-files-list.php [new file with mode: 0755]

diff --git a/deleted-files-list.json b/deleted-files-list.json
new file mode 100644 (file)
index 0000000..eefc6b0
--- /dev/null
@@ -0,0 +1,1038 @@
+[
+    "CRM/ACL/Form/ACLBasic.php",
+    "CRM/ACL/Page/ACLBasic.php",
+    "CRM/Activity/BAO/ActivityTarget.php",
+    "CRM/Activity/Form/Task/PDFLetterCommon.php",
+    "CRM/Activity/Form/Task/SearchTaskHookSample.php",
+    "CRM/Activity/Import/Field.php",
+    "CRM/Activity/Import/Form/Summary.php",
+    "CRM/Activity/Import/Parser.php",
+    "CRM/Admin/Form/Persistent.php",
+    "CRM/Admin/Form/Preferences/Campaign.php",
+    "CRM/Admin/Form/Preferences/Event.php",
+    "CRM/Admin/Form/Preferences/Multisite.php",
+    "CRM/Admin/Page/CMSUser.php",
+    "CRM/Admin/Page/Persistent.php",
+    "CRM/Admin/Page/Setting.php",
+    "CRM/Api4/Permission.php",
+    "CRM/Api4/Services.php",
+    "CRM/Campaign/Config.php",
+    "CRM/Campaign/Form/Search/*",
+    "CRM/Campaign/Page/Campaign.php",
+    "CRM/Campaign/Page/DashBoard.php",
+    "CRM/Campaign/Page/Survey.php",
+    "CRM/Case/Config.php",
+    "CRM/Case/Form/AddContact.php",
+    "CRM/Case/Form/Task/SearchTaskHookSample.php",
+    "CRM/Case/FormBuilder.php",
+    "CRM/Case/WorkflowMessage/*",
+    "CRM/Contact/BAO/Contact/Optimizer.php",
+    "CRM/Contact/DAO/Factory.php",
+    "CRM/Contact/Form/ProfileContact.php",
+    "CRM/Contact/Import/Field.php",
+    "CRM/Contact/Import/ImportJob.php",
+    "CRM/Contact/Import/Importer.php",
+    "CRM/Contact/Page/Dashlet.php",
+    "CRM/Contact/Page/View/Note.php",
+    "CRM/Contact/Page/View/Sunlight.php",
+    "CRM/Contribute/BAO/ManagePremiums.php",
+    "CRM/Contribute/Config.php",
+    "CRM/Contribute/Form/CloseAccPeriod.php",
+    "CRM/Contribute/Form/Contribution/OnBehalfOf.php",
+    "CRM/Contribute/Form/Task/PDFLetterCommon.php",
+    "CRM/Contribute/Form/Task/SearchTaskHookSample.php",
+    "CRM/Contribute/Import/Field.php",
+    "CRM/Contribute/Import/Form/Summary.php",
+    "CRM/Contribute/Import/Parser.php",
+    "CRM/Core/ActionScheduleTmp.php",
+    "CRM/Core/BAO/Cache/*",
+    "CRM/Core/BAO/Persistent.php",
+    "CRM/Core/BAO/Preferences.php",
+    "CRM/Core/Base.php",
+    "CRM/Core/CodeGen/Version.php",
+    "CRM/Core/Component/Config.php",
+    "CRM/Core/Config/Defaults.php",
+    "CRM/Core/Config/Variables.php",
+    "CRM/Core/DAO/ActionMapping.php",
+    "CRM/Core/DAO/Persistent.php",
+    "CRM/Core/EntityReference.php",
+    "CRM/Core/I18n/SchemaStructure_2_2_0.php",
+    "CRM/Core/I18n/SchemaStructure_3_0_alpha1.php",
+    "CRM/Core/I18n/SchemaStructure_3_0_beta1.php",
+    "CRM/Core/I18n/SchemaStructure_3_0_beta4.php",
+    "CRM/Core/I18n/SchemaStructure_3_1_alpha1.php",
+    "CRM/Core/I18n/SchemaStructure_3_1_beta2.php",
+    "CRM/Core/I18n/SchemaStructure_3_2_beta4.php",
+    "CRM/Core/I18n/SchemaStructure_3_3_beta1.php",
+    "CRM/Core/I18n/SchemaStructure_3_4_0.php",
+    "CRM/Core/I18n/SchemaStructure_3_4_beta2.php",
+    "CRM/Core/I18n/SchemaStructure_3_4_beta3.php",
+    "CRM/Core/I18n/SchemaStructure_4_1_0.php",
+    "CRM/Core/I18n/SchemaStructure_4_1_alpha1.php",
+    "CRM/Core/Payment/Google.php",
+    "CRM/Core/Payment/GoogleIPN.php",
+    "CRM/Core/Payment/IATS.php",
+    "CRM/Core/Payment/Moneris.php",
+    "CRM/Core/Payment/PaymentExpress.php",
+    "CRM/Core/Payment/PaymentExpressIPN.php",
+    "CRM/Core/Payment/PaymentExpressUtils.php",
+    "CRM/Core/Permission/Drupal6.php",
+    "CRM/Core/Smarty/plugins/block.serialize.php",
+    "CRM/Core/Smarty/plugins/function.crmDBTpl.php",
+    "CRM/Core/Smarty/plugins/function.crmNavigationMenu.php",
+    "CRM/Custom/Form/ChangeFieldType.php",
+    "CRM/Custom/Import/Field.php",
+    "CRM/Custom/Import/Form/Summary.php",
+    "CRM/Custom/Import/Parser.php",
+    "CRM/Event/Config.php",
+    "CRM/Event/Form/Task/SearchTaskHookSample.php",
+    "CRM/Event/Import/Field.php",
+    "CRM/Event/Import/Form/Summary.php",
+    "CRM/Event/Import/Parser.php",
+    "CRM/Grant/*",
+    "CRM/Import/DataSource/Spreadsheet.php",
+    "CRM/Import/Form/Summary.php",
+    "CRM/Mailing/Form/Group.php",
+    "CRM/Mailing/Form/Schedule.php",
+    "CRM/Mailing/Form/Settings.php",
+    "CRM/Mailing/Form/Test.php",
+    "CRM/Mailing/Form/Upload.php",
+    "CRM/Mailing/Page/Preview.php",
+    "CRM/Mailing/StateMachine/*",
+    "CRM/Member/Config.php",
+    "CRM/Member/Form/Task/PDFLetterCommon.php",
+    "CRM/Member/Form/Task/SearchTaskHookSample.php",
+    "CRM/Member/Import/Field.php",
+    "CRM/Member/Import/Form/Summary.php",
+    "CRM/Member/Import/Parser.php",
+    "CRM/Pledge/Config.php",
+    "CRM/Pledge/Form/Task/SearchTaskHookSample.php",
+    "CRM/Report/Config.php",
+    "CRM/Report/Form/Contribute/LoggingDetail.php",
+    "CRM/Report/Form/Contribute/LoggingSummary.php",
+    "CRM/Report/Form/Event.php",
+    "CRM/Report/Form/Extended.php",
+    "CRM/Report/Interface.php",
+    "CRM/Upgrade/3.2.1.msg_template/*",
+    "CRM/Upgrade/3.2.alpha1.msg_template/*",
+    "CRM/Upgrade/3.2.alpha2.msg_template/*",
+    "CRM/Upgrade/3.2.alpha3.languages/*",
+    "CRM/Upgrade/3.2.alpha3.msg_template/*",
+    "CRM/Upgrade/3.3.2.msg_template/*",
+    "CRM/Upgrade/3.3.3.msg_template/*",
+    "CRM/Upgrade/3.3.beta1.msg_template/*",
+    "CRM/Upgrade/3.3.beta2.msg_template/*",
+    "CRM/Upgrade/3.4.3.msg_template/*",
+    "CRM/Upgrade/3.4.5.msg_template/*",
+    "CRM/Upgrade/3.4.6.msg_template/*",
+    "CRM/Upgrade/3.4.7.msg_template/*",
+    "CRM/Upgrade/3.4.beta2.msg_template/*",
+    "CRM/Upgrade/4.1.alpha1.msg_template/*",
+    "CRM/Upgrade/4.2.alpha1.msg_template/*",
+    "CRM/Upgrade/4.2.alpha2.msg_template/*",
+    "CRM/Upgrade/4.2.alpha3.msg_template/*",
+    "CRM/Upgrade/4.2.beta3.msg_template/*",
+    "CRM/Upgrade/4.3.5.msg_template/*",
+    "CRM/Upgrade/4.3.alpha1.msg_template/*",
+    "CRM/Upgrade/4.3.alpha3.msg_template/*",
+    "CRM/Upgrade/4.3.beta1.msg_template/*",
+    "CRM/Upgrade/4.3.beta2.msg_template/*",
+    "CRM/Upgrade/4.3.beta3.msg_template/*",
+    "CRM/Upgrade/4.4.3.msg_template/*",
+    "CRM/Upgrade/4.4.alpha1.msg_template/*",
+    "CRM/Upgrade/4.5.0.msg_template/*",
+    "CRM/Upgrade/4.5.alpha1.msg_template/*",
+    "CRM/Upgrade/4.5.beta2.msg_template/*",
+    "CRM/Upgrade/4.6.10.msg_template/*",
+    "CRM/Upgrade/4.6.3.msg_template/*",
+    "CRM/Upgrade/4.6.9.msg_template/*",
+    "CRM/Upgrade/4.6.alpha1.msg_template/*",
+    "CRM/Upgrade/4.6.alpha4.msg_template/*",
+    "CRM/Upgrade/4.7.11.msg_template/*",
+    "CRM/Upgrade/4.7.14.msg_template/*",
+    "CRM/Upgrade/4.7.19.msg_template/*",
+    "CRM/Upgrade/4.7.23.msg_template/*",
+    "CRM/Upgrade/4.7.4.msg_template/*",
+    "CRM/Upgrade/4.7.5.msg_template/*",
+    "CRM/Upgrade/4.7.alpha1.msg_template/*",
+    "CRM/Upgrade/4.7.beta1.msg_template/*",
+    "CRM/Upgrade/4.7.beta8.msg_template/*",
+    "CRM/Upgrade/Incremental/php/FourFive.php",
+    "CRM/Upgrade/Incremental/php/FourFour.php",
+    "CRM/Upgrade/Incremental/php/FourOne.php",
+    "CRM/Upgrade/Incremental/php/FourSix.php",
+    "CRM/Upgrade/Incremental/php/FourThree.php",
+    "CRM/Upgrade/Incremental/php/FourTwo.php",
+    "CRM/Upgrade/Incremental/php/FourZero.php",
+    "CRM/Upgrade/Incremental/php/ThreeFour.php",
+    "CRM/Upgrade/Incremental/php/ThreeThree.php",
+    "CRM/Upgrade/Incremental/php/ThreeTwo.php",
+    "CRM/Upgrade/Incremental/sql/3.2.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.2.1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.2.2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.2.3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.2.4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.2.5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.2.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.2.alpha2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.2.alpha3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.2.alpha4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.2.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.2.beta3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.2.beta4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.2.beta5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.3.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.3.1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.3.2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.3.3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.3.4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.3.6.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.3.7.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.3.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.3.alpha2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.3.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.3.beta2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.3.beta3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.4.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.4.1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.4.2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.4.3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.4.5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.4.6.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.4.7.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.4.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.4.alpha2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.4.alpha3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.4.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.4.beta2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/3.4.beta3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.1.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.1.1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.1.2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.1.3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.1.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.1.alpha2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.1.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.1.beta2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.1.beta3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.6.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.7.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.8.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.9.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.alpha2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.alpha3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.beta2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.beta3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.beta5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.2.beta6.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.6.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.7.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.8.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.9.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.alpha2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.alpha3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.beta2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.beta3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.beta4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.3.beta5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.4.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.4.1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.4.2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.4.3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.4.4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.4.5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.4.6.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.4.7.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.4.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.4.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.6.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.7.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.8.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.9.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.alpha2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.beta2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.beta3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.beta4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.beta5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.beta6.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.beta7.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.beta8.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.5.beta9.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.10.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.11.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.12.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.6.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.7.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.8.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.9.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.alpha2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.alpha3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.alpha4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.alpha5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.alpha6.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.alpha7.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.beta2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.beta3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.beta4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.6.beta5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.10.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.11.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.12.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.13.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.14.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.15.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.16.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.17.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.18.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.19.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.20.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.21.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.22.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.23.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.24.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.25.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.26.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.27.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.28.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.29.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.30.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.31.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.6.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.7.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.8.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.9.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.alpha2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.alpha3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.alpha4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.alpha5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.beta2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.beta3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.beta4.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.beta5.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.beta6.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.beta7.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.7.beta8.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/4.8.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.0.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.0.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.1.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.1.1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.1.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.1.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.10.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.11.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.11.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.11.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.12.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.13.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.14.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.15.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.15.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.16.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.17.1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.17.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.18.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.18.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.18.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.19.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.19.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.2.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.20.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.21.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.22.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.22.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.23.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.24.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.25.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.25.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.25.beta2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.25.beta3.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.26.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.28.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.29.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.3.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.30.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.31.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.31.beta2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.32.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.33.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.33.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.34.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.35.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.36.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.36.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.4.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.6.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.6.beta2.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.7.0.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.7.alpha1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.8.beta1.mysql.tpl",
+    "CRM/Upgrade/Incremental/sql/5.9.0.mysql.tpl",
+    "CRM/Upgrade/Page/Cleanup.php",
+    "CRM/Upgrade/Snapshot/*",
+    "CRM/Utils/Api.php",
+    "CRM/Utils/Cache/SerializeCache.php",
+    "CRM/Utils/Check/Component/Event.php",
+    "CRM/Utils/DeprecatedUtils.php",
+    "CRM/Utils/Geocode.php",
+    "CRM/Utils/Geocode/Yahoo.php",
+    "CRM/Utils/Hook/Drupal6.php",
+    "CRM/Utils/Mail/LoggingMailer.php",
+    "CRM/Utils/OpenFlashChart.php",
+    "CRM/Utils/Sunlight.php",
+    "CRM/Utils/System/Drupal6.php",
+    "CRM/Utils/Tree.php",
+    "CRM/Widget/*",
+    "Civi/Api4/Action/Contact/GetFields.php",
+    "Civi/Api4/Action/CustomValue/GetActions.php",
+    "Civi/Api4/Action/CustomValue/Replace.php",
+    "Civi/Api4/Action/Entity/GetLinks.php",
+    "Civi/Api4/Action/EntityTag/*",
+    "Civi/Api4/Event/GetSpecEvent.php",
+    "Civi/Api4/Event/Subscriber/ActivityPreCreationSubscriber.php",
+    "Civi/Api4/Event/Subscriber/ContactPreSaveSubscriber.php",
+    "Civi/Api4/Event/Subscriber/CreateApi4RequestSubscriber.php",
+    "Civi/Api4/Event/Subscriber/CustomGroupPreCreationSubscriber.php",
+    "Civi/Api4/Event/Subscriber/OptionValuePreCreationSubscriber.php",
+    "Civi/Api4/Event/Subscriber/PostSelectQuerySubscriber.php",
+    "Civi/Api4/Generic/Traits/OptionList.php",
+    "Civi/Api4/Service/Autocomplete/ParticipantAutocompleteProvider.php",
+    "Civi/Api4/Service/Schema/Joinable/ActivityToActivityContactAssigneesJoinable.php",
+    "Civi/Api4/Service/Schema/Joinable/BridgeJoinable.php",
+    "Civi/Api4/Service/Schema/Joinable/OptionValueJoinable.php",
+    "Civi/Api4/Service/Spec/Provider/ACLEntityRoleCreationSpecProvider.php",
+    "Civi/Api4/Service/Spec/Provider/ActivityCreationSpecProvider.php",
+    "Civi/Api4/Service/Spec/Provider/ContactCreationSpecProvider.php",
+    "Civi/Api4/Service/Spec/Provider/CustomGroupSpecProvider.php",
+    "Civi/Api4/Service/Spec/Provider/MappingCreationSpecProvider.php",
+    "Civi/Api4/Service/Spec/Provider/UFMatchCreationSpecProvider.php",
+    "Civi/Api4/Service/Spec/Provider/UserJobSpecProvider.php",
+    "Civi/Api4/Survey.php",
+    "Civi/Api4/Utils/ActionUtil.php",
+    "Civi/Api4/services.xml",
+    "Civi/Compile/*",
+    "Civi/Foo/*",
+    "Civi/Pipe/BasicJsonSession.php",
+    "Civi/Test/Api3DocTrait.php",
+    "Civi/Test/CiviEnvBuilder/ExtensionStep.php",
+    "Civi/WorkflowMessage/Examples.php",
+    "Civi/WorkflowMessage/GenericWorkflowMessage/contribution.ex.php",
+    "Civi/WorkflowMessage/GenericWorkflowMessage/contribution_recur.ex.php",
+    "ang/api4Explorer/SaveSearch.html",
+    "ang/crmCaseType/*",
+    "ang/crmExample.ang.php",
+    "ang/crmExample.js",
+    "ang/crmExample/*",
+    "ang/crmMailing/*",
+    "ang/crmStatusPage/crmSnoozeOption.js",
+    "ang/ui.utils.ang.php",
+    "api/v3/examples/*",
+    "bin/cleanup42.php",
+    "bin/deprecated/*",
+    "bin/encryptDB.php",
+    "bin/gitify",
+    "bower.json",
+    "css/Audit/*",
+    "css/civicrmNavigation.css",
+    "css/drupal.css",
+    "css/menu-leaf.png",
+    "distmaker/dists/drupal6_php5.sh",
+    "docs/*",
+    "ext/afform/admin/CRM/AfformAdmin/Upgrader/*",
+    "ext/afform/admin/ang/afAdmin.aff.html",
+    "ext/afform/admin/ang/afAdmin.aff.json",
+    "ext/afform/admin/ang/afAdminFormSubmissionList.aff.json",
+    "ext/afform/admin/ang/afAdminList.aff.html",
+    "ext/afform/admin/ang/afGuiAdmin.aff.html",
+    "ext/afform/admin/ang/afGuiEditor/afGuiEditable.directive.js",
+    "ext/afform/admin/ang/afGuiEditor/container.html",
+    "ext/afform/admin/ang/afGuiEditor/entityConfig/Activity.html",
+    "ext/afform/admin/ang/afGuiEditor/entityConfig/Contact.html",
+    "ext/afform/admin/ang/afGuiEditor/entityDefaults/*",
+    "ext/afform/admin/ang/afGuiEditor/inputType/Existing.html",
+    "ext/afform/admin/ang/afGuiEditor/main.html",
+    "ext/afform/admin/ang/afGuiEditor/markup-menu.html",
+    "ext/afform/api/*",
+    "ext/afform/core/CRM/Afform/Upgrader/*",
+    "ext/afform/core/Civi/Api4/Action/Afform/Delete.php",
+    "ext/afform/core/Civi/Api4/Action/Afform/GetFields.php",
+    "ext/afform/core/Civi/Api4/AfformPalette.php",
+    "ext/afform/core/Civi/Api4/AfformTag.php",
+    "ext/afform/core/Civi/Api4/Service/*",
+    "ext/afform/core/Civi/Api4/Traits/*",
+    "ext/afform/core/ang/af.css",
+    "ext/afform/core/ang/af/Block.js",
+    "ext/afform/core/ang/af/Entity.js",
+    "ext/afform/core/ang/af/Field.js",
+    "ext/afform/core/ang/af/Form.js",
+    "ext/afform/core/ang/af/afBlock.html",
+    "ext/afform/core/ang/af/fields/Existing.html",
+    "ext/afform/core/ang/afBlock.ang.php",
+    "ext/afform/core/ang/afBlock.css",
+    "ext/afform/core/ang/afBlock.js",
+    "ext/afform/core/ang/afBlock/*",
+    "ext/afform/core/ang/afField.ang.php",
+    "ext/afform/core/ang/afField.css",
+    "ext/afform/core/ang/afField.js",
+    "ext/afform/core/ang/afblockContactAddress.aff.json",
+    "ext/afform/core/ang/afblockContactEmail.aff.json",
+    "ext/afform/core/ang/afblockContactIM.aff.json",
+    "ext/afform/core/ang/afblockContactNote.aff.json",
+    "ext/afform/core/ang/afblockContactPhone.aff.json",
+    "ext/afform/core/ang/afblockContactWebsite.aff.json",
+    "ext/afform/core/ang/afblockNameHousehold.aff.json",
+    "ext/afform/core/ang/afblockNameIndividual.aff.json",
+    "ext/afform/core/ang/afblockNameOrganization.aff.json",
+    "ext/afform/core/ang/afformStandalone/*",
+    "ext/afform/core/ang/afjoinAddressDefault.aff.json",
+    "ext/afform/core/ang/afjoinEmailDefault.aff.json",
+    "ext/afform/core/ang/afjoinIMDefault.aff.json",
+    "ext/afform/core/ang/afjoinPhoneDefault.aff.json",
+    "ext/afform/core/ang/afjoinWebsiteDefault.aff.json",
+    "ext/afform/core/tests/phpunit/Civi/Afform/AfformGetFieldsTest.php",
+    "ext/afform/gui/*",
+    "ext/afform/html/CRM/*",
+    "ext/afform/html/ang/afHtmlAdmin.aff.json",
+    "ext/afform/html/ang/afHtmlEditor.aff.json",
+    "ext/afform/html/ang/afHtmlList.aff.json",
+    "ext/afform/html/ang/afMonaco.ang.php",
+    "ext/afform/html/ang/afMonaco.css",
+    "ext/afform/html/ang/afMoncao.css",
+    "ext/afform/html/ang/afformHtmlAdmin.aff.html",
+    "ext/afform/html/bin/setup.sh",
+    "ext/afform/html/package-lock.json",
+    "ext/afform/html/package.json",
+    "ext/afform/html/templates/*",
+    "ext/afform/html/xml/*",
+    "ext/afform/images/*",
+    "ext/afform/mock/ang/afExamplePage.aff.html",
+    "ext/afform/mock/ang/afExamplePage.aff.json",
+    "ext/afform/mock/ang/afex.aff.json",
+    "ext/afform/mock/ang/mock-weird-name.aff.json",
+    "ext/afform/mock/ang/mockFoo.aff.json",
+    "ext/afform/mock/ang/mockPage.aff.json",
+    "ext/afform/mock/ang/mockPublicForm.aff.json",
+    "ext/afform/mock/ang/testAfform.aff.json",
+    "ext/afform/mock/ang/testContactEmailSearchForm.aff.json",
+    "ext/afform/mock/ang/testMultipleSearchForm.aff.json",
+    "ext/afform/mock/tests/phpunit/api/v4/AfformPaletteTest.php",
+    "ext/afform/tests/*",
+    "ext/authx/CRM/Authx/Page/Id.php",
+    "ext/authx/tests/phpunit/Civi/Authx/AllFlowsTest.php",
+    "ext/civi_mail/ang/afsearchEmailBounceHistory.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchAdminContactTypes.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchAdminCustomFields.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchAdminCustomGroups.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchAdminFinancialTypes.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchAdminScheduledReminders.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchAdministerLocationTypes.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchAdministerPaymentProcessors.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchAssignUsersToRoles.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchAssignedFinancialAccounts.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchFinancialAccounts.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchFinancialTypes.aff.html",
+    "ext/civicrm_admin_ui/ang/afsearchLabelFormat.aff.html",
+    "ext/civicrm_admin_ui/ang/afsearchMailAccounts.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchManageACLs.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchManageContributionPages.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchManageGroups.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchManageScheduledJobs.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchProfileFields.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchProfiles.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchRelationshipTypes.aff.json",
+    "ext/civicrm_admin_ui/ang/afsearchScheduledJobsLog.aff.json",
+    "ext/civicrm_search_ui/ang/afsearchContactSearch.aff.json",
+    "ext/civicrm_search_ui/ang/afsearchFindContributions.aff.json",
+    "ext/civigrant/CRM/Grant/Info.php",
+    "ext/civigrant/CRM/Grant/Page/Tab.php",
+    "ext/civigrant/Civi/Api4/Service/*",
+    "ext/civigrant/ang/afsearchTabGrant.aff.json",
+    "ext/civigrant/managed/OptionGroup_contact_view_options_OptionValue_CiviGrant.mgd.php",
+    "ext/civigrant/templates/CRM/Grant/Page/Tab.tpl",
+    "ext/civiimport/ang/afsearchAllImports.aff.json",
+    "ext/civiimport/ang/afsearchMyImports.aff.json",
+    "ext/civiimport/ang/afsearchTemplates.aff.json",
+    "ext/ckeditor4/CRM/Ckeditor4/Upgrader/*",
+    "ext/ewaysingle/lib/XML/*",
+    "ext/financialacls/tests/phpunit/BuildAmountHookTest.php",
+    "ext/flexmailer/settings/*",
+    "ext/flexmailer/src/ClickTracker/BaseClickTracker.php",
+    "ext/flexmailer/xml/*",
+    "ext/greenwich/images/*",
+    "ext/message_admin/ang/crmDialog.ang.php",
+    "ext/msgtplui/*",
+    "ext/oauth-client/CRM/OAuth/Upgrader/*",
+    "ext/oauth-client/Civi/Api4/Action/OAuthContactToken/*",
+    "ext/oauth-client/ang/oauthClientAdmin.aff.json",
+    "ext/oauth-client/ang/oauthJwtDebug.aff.json",
+    "ext/oauth-client/data/*",
+    "ext/oauth-client/images/*",
+    "ext/recaptcha/xml/*",
+    "ext/search/*",
+    "ext/search_kit/CRM/Search/Upgrader/*",
+    "ext/search_kit/ang/crmSearchAdmin/compose/*",
+    "ext/search_kit/ang/crmSearchAdmin/searchList.controller.js",
+    "ext/search_kit/ang/crmSearchAdmin/searchList.html",
+    "ext/search_kit/ang/crmSearchDisplay/AddButton.html",
+    "ext/search_kit/ang/crmSearchTasks/crmSearchTaskDelete.ctrl.js",
+    "ext/search_kit/ang/crmSearchTasks/crmSearchTaskDelete.html",
+    "ext/search_kit/ang/crmSearchTasks/crmSearchTasks.component.js",
+    "ext/standaloneusers/CRM/Standaloneusers/BAO/RolePermission.php",
+    "ext/standaloneusers/CRM/Standaloneusers/BAO/UserRole.php",
+    "ext/standaloneusers/CRM/Standaloneusers/DAO/RolePermission.php",
+    "ext/standaloneusers/CRM/Standaloneusers/Upgrader/*",
+    "ext/standaloneusers/Civi/Api4/RolePermission.php",
+    "ext/standaloneusers/ang/afformEditUserAccount.aff.json",
+    "ext/standaloneusers/ang/afformX.aff.json",
+    "ext/standaloneusers/ang/afsearchAdministerUserAccounts.aff.json",
+    "ext/standaloneusers/ang/afsearchUserRoles.aff.json",
+    "ext/standaloneusers/ang/afsearchUsers.aff.html",
+    "ext/standaloneusers/ang/afsearchUsers.aff.json",
+    "ext/standaloneusers/managed/OptionGroup_role.mgd.php",
+    "ext/standaloneusers/mixin/*",
+    "ext/standaloneusers/templates/CRM/Standaloneusers/Page/_contentFoot.tpl",
+    "ext/standaloneusers/templates/CRM/Standaloneusers/Page/_contentHead.tpl",
+    "ext/standaloneusers/xml/schema/CRM/Standaloneusers/RolePermission.entityType.php",
+    "ext/standaloneusers/xml/schema/CRM/Standaloneusers/RolePermission.xml",
+    "extern/googleNotify.php",
+    "extern/pxIPN.php",
+    "i/Bulb.png",
+    "i/EnvelopeIn.gif",
+    "i/Error.gif",
+    "i/Eyeball.gif",
+    "i/TreeMinus.gif",
+    "i/TreeMinusWhite.gif",
+    "i/TreePlus.gif",
+    "i/TreePlusWhite.gif",
+    "i/admin/*",
+    "i/applications-internet.png",
+    "i/arrow.gif",
+    "i/cal.gif",
+    "i/check.gif",
+    "i/close.png",
+    "i/collapsable.gif",
+    "i/copy.png",
+    "i/crm-button-bg.gif",
+    "i/crm-button-black.gif",
+    "i/crm-button-blue.gif",
+    "i/crm-button-dark-blue.gif",
+    "i/crm-button-dark.gif",
+    "i/crm-button.gif",
+    "i/feed-icon.png",
+    "i/geotag_16.png",
+    "i/grippie.png",
+    "i/group.png",
+    "i/ical_feed.gif",
+    "i/langs.png",
+    "i/logo16px.png",
+    "i/meeting.gif",
+    "i/office-calendar.png",
+    "i/openid-icon-small.gif",
+    "i/print-icon.png",
+    "i/print_pdf.gif",
+    "i/rss2.png",
+    "i/stop-icon.png",
+    "i/tel.gif",
+    "i/vcard-icon.png",
+    "js/Audit/*",
+    "js/angular-crmMailingAB.js",
+    "js/crm.admin.js",
+    "js/crm.angular.js",
+    "js/crm.joomla.js",
+    "js/jquery/jquery.crmasmselect.js",
+    "js/jquery/jquery.dashboard.js",
+    "js/load-bootstrap.js",
+    "js/wysiwyg/crm.textarea.js",
+    "mkdocs.yml",
+    "packages/Archive/*",
+    "packages/Auth/*",
+    "packages/Cache/*",
+    "packages/Console/*",
+    "packages/DB.php",
+    "packages/DB/Table.php",
+    "packages/DB/Table/*",
+    "packages/DB/common.php",
+    "packages/DB/dbase.php",
+    "packages/DB/fbsql.php",
+    "packages/DB/ibase.php",
+    "packages/DB/ifx.php",
+    "packages/DB/msql.php",
+    "packages/DB/mssql.php",
+    "packages/DB/mysql.php",
+    "packages/DB/mysqli.php",
+    "packages/DB/oci8.php",
+    "packages/DB/odbc.php",
+    "packages/DB/pgsql.php",
+    "packages/DB/sqlite.php",
+    "packages/DB/storage.php",
+    "packages/DB/sybase.php",
+    "packages/FPDI/*",
+    "packages/File/*",
+    "packages/Google/*",
+    "packages/HTML/QuickForm/ckeditor.php",
+    "packages/HTML/QuickForm/drupalwysiwyg.php",
+    "packages/HTML/QuickForm/joomlaeditor.php",
+    "packages/HTML/QuickForm/tinymce.php",
+    "packages/HTTP/*",
+    "packages/IDS/vendors/*",
+    "packages/Log.php",
+    "packages/Log/*",
+    "packages/Mail.php",
+    "packages/Mail/RFC822.php",
+    "packages/Mail/mail.php",
+    "packages/Mail/mime.php",
+    "packages/Mail/mimePart.php",
+    "packages/Mail/mock.php",
+    "packages/Mail/null.php",
+    "packages/Mail/sendmail.php",
+    "packages/Mail/smtp.php",
+    "packages/Mail/smtpmx.php",
+    "packages/Net/*",
+    "packages/OS/*",
+    "packages/OpenFlashChart/*",
+    "packages/PEAR.php",
+    "packages/PEAR/*",
+    "packages/PEAR5.php",
+    "packages/PHP/CodeCoverage.php",
+    "packages/PHP/CodeCoverage/*",
+    "packages/PHP/Timer.php",
+    "packages/PHP/Timer/*",
+    "packages/PHP/Token.php",
+    "packages/PHP/Token/*",
+    "packages/PHP/php_beautifier",
+    "packages/PHPUnit/*",
+    "packages/PHPgettext/examples/*",
+    "packages/PhpDocumentor/*",
+    "packages/SeleniumRC/*",
+    "packages/Services/*",
+    "packages/Smarty/plugins/modifier.print_array.php",
+    "packages/Structures/*",
+    "packages/SymfonyComponents/*",
+    "packages/System.php",
+    "packages/System/*",
+    "packages/Text/*",
+    "packages/VERSIONS",
+    "packages/Validate/Finance/*",
+    "packages/When/*",
+    "packages/XML/*",
+    "packages/_ORIGINAL_/DB.php",
+    "packages/_ORIGINAL_/Log.php",
+    "packages/_ORIGINAL_/Mail.php",
+    "packages/_ORIGINAL_/Mail/*",
+    "packages/_ORIGINAL_/Net/*",
+    "packages/_ORIGINAL_/PEAR.php",
+    "packages/_ORIGINAL_/PEAR/ErrorStack.php",
+    "packages/_ORIGINAL_/PHPUnit/*",
+    "packages/_ORIGINAL_/PhpDocumentor/*",
+    "packages/_ORIGINAL_/Services/*",
+    "packages/_ORIGINAL_/System.php",
+    "packages/amavisd-new/*",
+    "packages/backbone-forms/test/*",
+    "packages/backbone/backbone.collectionsubset.min.js",
+    "packages/ckeditor/*",
+    "packages/cron-expression/*",
+    "packages/eWAY/*",
+    "packages/ezc/*",
+    "packages/html2text/*",
+    "packages/jquery/plugins/DataTables/Readme.md",
+    "packages/jquery/plugins/DataTables/license.txt",
+    "packages/jquery/plugins/DataTables/media/css/*",
+    "packages/jquery/plugins/DataTables/media/images/Sorting",
+    "packages/jquery/plugins/DataTables/media/js/*",
+    "packages/jquery/plugins/jquery-fieldselection.js",
+    "packages/jquery/plugins/jquery.FormNavigate.js",
+    "packages/jquery/plugins/jquery.FormNavigate.min.js",
+    "packages/jquery/plugins/jquery.civicrm-validate.js",
+    "packages/jquery/plugins/jquery.fixedPosition.js",
+    "packages/jquery/plugins/jquery.menu.js",
+    "packages/jquery/plugins/jquery.menu.min.js",
+    "packages/jquery/plugins/jquery.mustache.js",
+    "packages/jquery/plugins/jquery.textarearesizer.js",
+    "packages/jquery/plugins/jquery.ui.datepicker.validation.pack.js",
+    "packages/momentjs/*",
+    "packages/pearcmd.php",
+    "packages/peclcmd.php",
+    "packages/recaptcha/*",
+    "packages/snappy/test/*",
+    "packages/tcpdf/*",
+    "packages/tinymce/*",
+    "setup/res/error.html",
+    "setup/res/template.php",
+    "sql/civicrm_data/civicrm_action_mapping.sqldata.php",
+    "sql/civicrm_queue_item.mysql",
+    "sql/civicrm_upgradedb_v1.1_v1.2_40.mysql",
+    "sql/civicrm_upgradedb_v1.1_v1.2_41.mysql",
+    "sql/civicrm_upgradedb_v1.2_v1.3_40.mysql",
+    "sql/civicrm_upgradedb_v1.2_v1.3_41.mysql",
+    "sql/civicrm_upgradedb_v1.3_v1.4_40.mysql",
+    "sql/civicrm_upgradedb_v1.3_v1.4_41.mysql",
+    "sql/civicrm_upgradedb_v1.4_v1.5_40.mysql",
+    "sql/civicrm_upgradedb_v1.4_v1.5_41.mysql",
+    "sql/civicrm_upgradedb_v1.5_v1.6_40.mysql",
+    "sql/civicrm_upgradedb_v1.5_v1.6_41.mysql",
+    "sql/civicrm_upgradedb_v1.6_v1.7_40.mysql",
+    "sql/civicrm_upgradedb_v1.6_v1.7_41.mysql",
+    "sql/civicrm_upgradedb_v1.7_v1.8_41.mysql",
+    "sql/civicrm_upgradedb_v1.8_v1.9_41.mysql",
+    "sql/upgrade_pcm.mysql",
+    "sql/zipcodes.mysql",
+    "templates/CRM/ACL/Form/ACLBasic.tpl",
+    "templates/CRM/ACL/Page/ACLBasic.tpl",
+    "templates/CRM/Activity/Form/ActivityJs.tpl",
+    "templates/CRM/Activity/Import/Form/DataSource.hlp",
+    "templates/CRM/Activity/Import/Form/Summary.tpl",
+    "templates/CRM/Admin/Form/DomainDump.tpl",
+    "templates/CRM/Admin/Form/Persistent.tpl",
+    "templates/CRM/Admin/Form/Preferences/Campaign.tpl",
+    "templates/CRM/Admin/Form/Preferences/Event.tpl",
+    "templates/CRM/Admin/Form/Preferences/Multisite.tpl",
+    "templates/CRM/Admin/Form/Setting/Event.tpl",
+    "templates/CRM/Admin/Form/Setting/Localization.js",
+    "templates/CRM/Admin/Form/Setting/versionCheckOptions.js",
+    "templates/CRM/Admin/Page/CMSUser.tpl",
+    "templates/CRM/Admin/Page/DomainDump.tpl",
+    "templates/CRM/Admin/Page/Persistent.tpl",
+    "templates/CRM/Block/Gcc.tpl",
+    "templates/CRM/Campaign/Form/Petition/Block.tpl",
+    "templates/CRM/Campaign/Form/Search/Campaign.tpl",
+    "templates/CRM/Campaign/Form/Search/Petition.tpl",
+    "templates/CRM/Campaign/Form/Search/Survey.tpl",
+    "templates/CRM/Campaign/Page/Campaign.tpl",
+    "templates/CRM/Campaign/Page/DashBoard.tpl",
+    "templates/CRM/Campaign/Page/Survey.tpl",
+    "templates/CRM/Case/Audit/Audit.tpl",
+    "templates/CRM/Case/Form/AddContact.tpl",
+    "templates/CRM/Case/Form/Task/SearchTaskHookSample.tpl",
+    "templates/CRM/Contact/Form/Edit/Address/CustomField.tpl",
+    "templates/CRM/Contact/Form/Search/Criteria/Recurringcontribution.tpl",
+    "templates/CRM/Contact/Import/Form/Spreadsheet.tpl",
+    "templates/CRM/Contact/Page/Dashlet.tpl",
+    "templates/CRM/Contact/Page/View/Note.tpl",
+    "templates/CRM/Contact/Page/View/Sunlight.tpl",
+    "templates/CRM/Contribute/Form/CloseAccPeriod.tpl",
+    "templates/CRM/Contribute/Form/PaymentInstrument.tpl",
+    "templates/CRM/Contribute/Form/Preview.tpl",
+    "templates/CRM/Contribute/Form/Task/SearchTaskHookSample.tpl",
+    "templates/CRM/Contribute/Import/Form/MapTable.tpl",
+    "templates/CRM/Contribute/Import/Form/Summary.tpl",
+    "templates/CRM/Custom/Form/ChangeFieldType.tpl",
+    "templates/CRM/Custom/Form/Edit.tpl",
+    "templates/CRM/Custom/Import/Form/Summary.tpl",
+    "templates/CRM/Event/Form/Task/SearchTaskHookSample.tpl",
+    "templates/CRM/Event/Import/Form/MapTable.tpl",
+    "templates/CRM/Event/Import/Form/Summary.tpl",
+    "templates/CRM/Event/Page/ICalendar.tpl",
+    "templates/CRM/Export/Form/table.tpl",
+    "templates/CRM/Grant/*",
+    "templates/CRM/Import/Form/MapTable.tpl",
+    "templates/CRM/Mailing/Form/Group.hlp",
+    "templates/CRM/Mailing/Form/Group.tpl",
+    "templates/CRM/Mailing/Form/Schedule.hlp",
+    "templates/CRM/Mailing/Form/Schedule.tpl",
+    "templates/CRM/Mailing/Form/Settings.hlp",
+    "templates/CRM/Mailing/Form/Settings.tpl",
+    "templates/CRM/Mailing/Form/Test.hlp",
+    "templates/CRM/Mailing/Form/Test.tpl",
+    "templates/CRM/Mailing/Form/Upload.hlp",
+    "templates/CRM/Mailing/Form/Upload.tpl",
+    "templates/CRM/Member/Form/Task/j.html",
+    "templates/CRM/Member/Import/Form/MapTable.tpl",
+    "templates/CRM/Member/Import/Form/Summary.tpl",
+    "templates/CRM/Price/Form/LineItem.tpl",
+    "templates/CRM/Report/Form/Activity.tpl",
+    "templates/CRM/Report/Form/ActivitySummary.tpl",
+    "templates/CRM/Report/Form/Campaign/SurveyDetails.tpl",
+    "templates/CRM/Report/Form/Case/*",
+    "templates/CRM/Report/Form/Contact/CurrentEmployer.tpl",
+    "templates/CRM/Report/Form/Contact/Log.tpl",
+    "templates/CRM/Report/Form/Contact/Relationship.tpl",
+    "templates/CRM/Report/Form/Contribute/Bookkeeping.tpl",
+    "templates/CRM/Report/Form/Contribute/Detail.tpl",
+    "templates/CRM/Report/Form/Contribute/History.tpl",
+    "templates/CRM/Report/Form/Contribute/HouseholdSummary.tpl",
+    "templates/CRM/Report/Form/Contribute/Lybunt.tpl",
+    "templates/CRM/Report/Form/Contribute/OrganizationSummary.tpl",
+    "templates/CRM/Report/Form/Contribute/PCP.tpl",
+    "templates/CRM/Report/Form/Contribute/Repeat.tpl",
+    "templates/CRM/Report/Form/Contribute/SoftCredit.tpl",
+    "templates/CRM/Report/Form/Contribute/Summary.tpl",
+    "templates/CRM/Report/Form/Contribute/Sybunt.tpl",
+    "templates/CRM/Report/Form/Contribute/TopDonor.tpl",
+    "templates/CRM/Report/Form/Event/IncomeCountSummary.tpl",
+    "templates/CRM/Report/Form/Event/ParticipantListCount.tpl",
+    "templates/CRM/Report/Form/Event/Summary.tpl",
+    "templates/CRM/Report/Form/Mailing/*",
+    "templates/CRM/Report/Form/Member/*",
+    "templates/CRM/Report/Form/Membership/*",
+    "templates/CRM/Report/Form/Pledge/*",
+    "templates/CRM/Report/Form/Walklist/*",
+    "templates/CRM/Tag/Form/Tagtree.hlp",
+    "templates/CRM/common/TrackingFields.tpl",
+    "templates/CRM/common/civicrm_variables.tpl",
+    "templates/CRM/common/crmeditable.tpl",
+    "templates/CRM/common/dashboard.tpl",
+    "templates/CRM/common/expandRow.tpl",
+    "templates/CRM/common/localNav.tpl",
+    "templates/CRM/common/navigation.js.tpl",
+    "templates/CRM/common/openFlashChart.tpl",
+    "templates/CRM/common/wysiwyg.tpl",
+    "tests/README.txt",
+    "tests/fixtures/case.yaml",
+    "tests/fixtures/case_contact.yaml",
+    "tests/fixtures/case_relationships.yaml",
+    "tests/fixtures/case_types.yaml",
+    "tests/fixtures/contacts.yaml",
+    "tests/karma/modules.js",
+    "tests/karma/unit/externalDomainSpec.js",
+    "tests/mock/extension_browser_results/single",
+    "tests/phpunit/CRM/Activity/BAO/ActivityTargetTest.php",
+    "tests/phpunit/CRM/Admin/Form/ExtensionTest.php",
+    "tests/phpunit/CRM/Campaign/BAO/CampaignTest.php",
+    "tests/phpunit/CRM/Contact/BAO/QueryTestDataProvider.php",
+    "tests/phpunit/CRM/Contact/Form/Search/Custom/*",
+    "tests/phpunit/CRM/Contact/Import/Form/data/.~lock.individual_valid_with_related_no_email.csv#",
+    "tests/phpunit/CRM/Contact/Page/View/NoteTest.php",
+    "tests/phpunit/CRM/Contribute/Import/Parser/data/.~lock.contributions.csv#",
+    "tests/phpunit/CRM/Contribute/Import/Parser/data/.~lock.pledge.csv#",
+    "tests/phpunit/CRM/Contribute/Import/Parser/data/contributions.txt",
+    "tests/phpunit/CRM/Core/BAO/DashboardTest.php",
+    "tests/phpunit/CRM/Event/Form/RegistrationTest.php",
+    "tests/phpunit/CRM/Event/Form/Task/ParticipantStatusTest.php",
+    "tests/phpunit/CRM/Extension/dataset/good-repository/test.crm.extension.browsertest.a.xml",
+    "tests/phpunit/CRM/Extension/dataset/good-repository/test.crm.extension.browsertest.b.xml",
+    "tests/phpunit/CRM/Member/Form/dataset/*",
+    "tests/phpunit/CRM/Utils/DeprecatedUtilsTest.php",
+    "tests/phpunit/CRM/Utils/GeocodeTest.php",
+    "tests/phpunit/CRMTraits/ACL/*",
+    "tests/phpunit/Civi/Pipe/BasicJsonSessionTest.php",
+    "tests/phpunit/CiviTest/AuthorizeNet.php",
+    "tests/phpunit/CiviTest/CiviSeleniumSettings.auto.php",
+    "tests/phpunit/CiviTest/CiviSeleniumSettings.php.txt",
+    "tests/phpunit/CiviTest/CiviSeleniumTestCase.php",
+    "tests/phpunit/CiviTest/CiviTestDB.php",
+    "tests/phpunit/CiviTest/CiviTestPdoUtils.php",
+    "tests/phpunit/CiviTest/CiviTester.php",
+    "tests/phpunit/CiviTest/Contact.php",
+    "tests/phpunit/CiviTest/ContributionPage.php",
+    "tests/phpunit/CiviTest/Custom.php",
+    "tests/phpunit/CiviTest/Event.php",
+    "tests/phpunit/CiviTest/Membership.php",
+    "tests/phpunit/CiviTest/Participant.php",
+    "tests/phpunit/CiviTest/PaypalPro.php",
+    "tests/phpunit/CiviTest/civicrm.settings.cli.php",
+    "tests/phpunit/CiviTest/civicrm.settings.dist.php",
+    "tests/phpunit/CiviTest/civicrm.settings.local.php.txt",
+    "tests/phpunit/CiviTest/test.hlp",
+    "tests/phpunit/E2E/Extern/SoapTest.php",
+    "tests/phpunit/WebTest/*",
+    "tests/phpunit/api/v3/dataset/email_contact_17.xml",
+    "tests/phpunit/api/v3/dataset/uf_group_test.xml",
+    "tests/phpunit/api/v4/Action/ComplexQueryTest.php",
+    "tests/phpunit/api/v4/DataSets/*",
+    "tests/phpunit/api/v4/Query/Api4SelectQueryComplexJoinTest.php",
+    "tests/phpunit/api/v4/Service/Schema/SchemaMapRealTableTest.php",
+    "tests/phpunit/api/v4/Service/TestCreationParameterProvider.php",
+    "tests/phpunit/api/v4/Traits/TestDataLoaderTrait.php",
+    "tests/phpunit/api/v4/services.xml",
+    "tests/qunit/common-js/*",
+    "tests/templates/documentFunction.tpl",
+    "tools/CRM/*",
+    "tools/bin/scripts/ImportTags.php",
+    "tools/bin/scripts/NormalizePhone.php",
+    "tools/bin/scripts/ajax.php",
+    "tools/bin/scripts/cli.php",
+    "tools/bin/scripts/create-pot-files",
+    "tools/bin/scripts/createdoc.sh",
+    "tools/bin/scripts/delete.sh",
+    "tools/bin/scripts/drop-closing-php-tags.sh",
+    "tools/bin/scripts/ircbot-civi.py",
+    "tools/bin/scripts/memcache.php",
+    "tools/bin/scripts/postIPN.sh",
+    "tools/bin/scripts/replace.sh",
+    "tools/bin/scripts/runCPSTest.sh",
+    "tools/bin/scripts/runStressTest.sh.txt",
+    "tools/bin/scripts/runTest.sh",
+    "tools/bin/scripts/soapClient.php.txt",
+    "tools/bin/scripts/syncPackages.sh",
+    "tools/bin/scripts/testProcess.php",
+    "tools/bin/scripts/test_sandbox.sh",
+    "tools/bin/scripts/updateNameCache.php",
+    "tools/drupal/modules/multicurrency/*",
+    "tools/extensions/org.civicrm.angularex/*",
+    "tools/extensions/org.civicrm.multisite.zip",
+    "tools/extensions/org.civicrm.multisite/*",
+    "tools/extensions/org.civicrm.payment.googlecheckout.zip",
+    "tools/extensions/org.civicrm.payment.googlecheckout/*",
+    "tools/extensions/org.civicrm.report.baykeeper/*",
+    "tools/extensions/org.civicrm.report.grant.zip",
+    "tools/extensions/org.civicrm.report.grant/*",
+    "tools/extensions/org.civicrm.search.activity.zip",
+    "tools/extensions/org.civicrm.search.activity/*",
+    "tools/extensions/org.civicrm.search.basic.zip",
+    "tools/extensions/org.civicrm.search.basic/*",
+    "tools/extensions/org.civicrm.search.multivalue.zip",
+    "tools/extensions/org.civicrm.search.multivalue/*",
+    "tools/extensions/phpstorm/mixin/*",
+    "tools/queries",
+    "tools/queriesafter.txt",
+    "tools/scripts/civimail-spooler/*",
+    "tools/scripts/composer/patches/*",
+    "tools/scripts/mk-drupal-test-site",
+    "tools/scripts/releaser/*",
+    "tools/sites/*",
+    "tools/sql/*",
+    "tools/standalone/src/*",
+    "tools/templates/*",
+    "tools/tests/*",
+    "tools/xml/*",
+    "xml/schema/Activity/ActivityAssignment.xml",
+    "xml/schema/Activity/ActivityTarget.xml",
+    "xml/schema/Bridge/*",
+    "xml/schema/Contact/Household.xml",
+    "xml/schema/Contact/Individual.xml",
+    "xml/schema/Contact/Organization.xml",
+    "xml/schema/Core/Preferences.xml",
+    "xml/schema/Event/EventPage.xml",
+    "xml/schema/GccSchema.xml",
+    "xml/schema/Grant/*",
+    "xml/schema/Standalone/*"
+]
index 51b83b9565ac35301649272cf168af848ea06285..6b14d9552cff828b09338c9ed3d6ef5bfa08a4e8 100644 (file)
@@ -87,7 +87,7 @@ function dm_install_core() {
   done
 
   dm_install_files "$repo" "$to" {agpl-3.0,agpl-3.0.exception,gpl}.txt
-  dm_install_files "$repo" "$to" composer.json composer.lock package.json Civi.php README.md release-notes.md extension-compatibility.json guzzle_php81_shim.php
+  dm_install_files "$repo" "$to" composer.json composer.lock package.json Civi.php README.md release-notes.md extension-compatibility.json deleted-files-list.json guzzle_php81_shim.php
 
   mkdir -p "$to/sql"
   pushd "$repo" >> /dev/null
diff --git a/tools/scripts/generate-deleted-files-list.php b/tools/scripts/generate-deleted-files-list.php
new file mode 100755 (executable)
index 0000000..bf71cde
--- /dev/null
@@ -0,0 +1,53 @@
+#!/usr/bin/env php
+<?php
+$deletedFiles = [];
+// This is as far back as the log reasonably needs to go; typically one major version less than
+// CRM_Upgrade_Form::MINIMUM_UPGRADABLE_VERSION
+$minVer = '4.6.0';
+
+function parseLog($logString, &$deletedFiles, $prefix = '') {
+  $log = preg_split("/\r\n|\n|\r/", $logString);
+  foreach ($log as $line) {
+    $matches = [];
+    preg_match('#delete[ ]+mode[ ]+[0-9]+[ ]+([^ ]+)#', $line, $matches);
+    $fileName = $matches[1] ?? NULL;
+    if ($fileName && $fileName !== '1' && !file_exists($prefix . $fileName)) {
+      // Was the file deleted or was the entire directory deleted?
+      $path = explode('/', $prefix . $fileName);
+      array_pop($path);
+      $removedDir = !is_dir(implode('/', $path));
+      if ($removedDir) {
+        // Recuse up to the top-level deleted directory
+        do {
+          $dir = array_pop($path);
+        }
+        while ($path && $dir && !is_dir(implode('/', $path)));
+        if ($dir) {
+          $deletedFiles[] = implode('/', $path) . ($path ? '/' : '') . "$dir/*";
+        }
+        else {
+          $removedDir = FALSE;
+        }
+      }
+      if (!$removedDir) {
+        $deletedFiles[] = $prefix . $fileName;
+      }
+    }
+  }
+}
+
+// Core files
+$logString = `git log $minVer...HEAD --diff-filter=D --summary | grep delete`;
+parseLog($logString, $deletedFiles);
+
+// Packages
+$prefix = 'packages/';
+$logString = `(cd $prefix && git log $minVer...HEAD --diff-filter=D --summary | grep delete)`;
+parseLog($logString, $deletedFiles, $prefix);
+
+$deletedFiles = array_unique($deletedFiles);
+sort($deletedFiles);
+$fileName = 'deleted-files-list.json';
+$fileCount = count($deletedFiles);
+file_put_contents(__DIR__ . "/../../$fileName", json_encode($deletedFiles, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES) . "\n");
+echo "Wrote $fileCount items to '$fileName'.\n";