Add userOption PIP to upgrade instructions
[GitHub/WoltLab/WCF.git] / com.woltlab.wcf / package.xml
index 14f1210d5f34e804ac00a7b254f4d0071e652db6..7617ab38f7d6134157e08319f85dbc570244e253 100644 (file)
@@ -5,7 +5,7 @@
                <packagedescription>Free CMS and web-framework, designed for awesome websites and communities.</packagedescription>
                <packagedescription language="de">Freies CMS und Web-Framework, das eindrucksvolle Websites und Communities ermöglicht.</packagedescription>
                <isapplication>1</isapplication>
-               <version>5.3.5</version>
+               <version>5.4.0 Alpha 1</version>
                <date>2021-03-03</date>
        </packageinformation>
        
                <instruction type="script">acp/post_install.php</instruction>
        </instructions>
        
-       <instructions type="update" fromversion="5.2.*">
-               <!-- We need to deploy `lib/core.functions.php` and `lib/system/api/*` first, otherwise
-                    Guzzle can not be found during the development of the regular file PIP. -->
+       <instructions type="update" fromversion="5.3.*">
+               <!--
+tar cvf com.woltlab.wcf/files_pre_check.tar -C wcfsetup/install/files/ \
+       acp/update_com.woltlab.wcf_5.4_checkSystemRequirements.php \
+       acp/update_com.woltlab.wcf_5.4_checkOwnerGroup.php
+               -->
+               <instruction type="file" run="standalone">files_pre_check.tar</instruction>
+               
+               <!-- Checks that need to happen before the upgrade starts. -->
+               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.4_checkSystemRequirements.php</instruction>
+               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.4_checkOwnerGroup.php</instruction>
+
+               <!--
+tar cvf com.woltlab.wcf/files_pre.tar -C wcfsetup/install/files/ \
+       acp/update_com.woltlab.wcf_5.4_session_1_cookies.php \
+       acp/database/update_com.woltlab.wcf_5.4_session_2_user_session.php \
+       acp/update_com.woltlab.wcf_5.4_session_3_migrate_session.php \
+       lib/util/HeaderUtil.class.php \
+       lib/system/package/plugin/AbstractPackageInstallationPlugin.class.php \
+       lib/system/package/plugin/DatabasePackageInstallationPlugin.class.php \
+       lib/system/package/plugin/FilePackageInstallationPlugin.class.php \
+       lib/system/package/plugin/ScriptPackageInstallationPlugin.class.php
+               -->
                <instruction type="file" run="standalone">files_pre.tar</instruction>
+
+               <instruction type="packageInstallationPlugin" />
+
+               <!-- Deploy some of the options before running the upgrade to not brick the login if the upgrade aborts. -->
+               <instruction type="option" run="standalone">option_5.4.xml</instruction>
+
+               <!-- Preparations for the new session system. -->
+               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.4_session_1_cookies.php</instruction>
+               <instruction type="database" run="standalone">acp/database/update_com.woltlab.wcf_5.4_session_2_user_session.php</instruction>
+               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.4_session_3_migrate_session.php</instruction>
                
-               <!-- Verify that there are no duplicate usernames and warn about them if any are found. -->
-               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.3_preUpdate.php</instruction>
-               
-               <!-- Deploy the database changes as early as possible to avoid any conflicts by calls to
-                    tables that do not exist in 5.2, in particular `wcfN_devtools_missing_language_item`.-->
-               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.3.php</instruction>
-               
+               <!-- New application code. -->
                <instruction type="file" />
                <instruction type="acpTemplate" />
                <instruction type="template" />
                
+               <!-- Make all the new options available as early as possible. -->
                <instruction type="option" run="standalone" />
                
-               <instruction type="acpMenu" />
-               <instruction type="clipboardAction" />
-               <instruction type="mediaProvider" />
-               <instruction type="userGroupOption" />
-               <instruction type="userMenu" />
-               <instruction type="page" />
+               <!-- Cleanup for the new session system. -->
+               <instruction type="database" run="standalone">acp/database/update_com.woltlab.wcf_5.4_session_4_drop_virtual.php</instruction>
+               <instruction type="database" run="standalone">acp/database/update_com.woltlab.wcf_5.4_session_5_drop_acp.php</instruction>
+               <instruction type="database" run="standalone">acp/database/update_com.woltlab.wcf_5.4_session_6_clean_session.php</instruction>
+               
+               <!-- Non-critical database adjustments. -->
+               <instruction type="database" run="standalone">acp/database/update_com.woltlab.wcf_5.4.php</instruction>
                
-               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.3_emailConfirmation.php</instruction>
+               <!-- Index updates for `wcf1_tag_to_object`. -->
+               <instruction type="database" run="standalone">acp/database/update_com.woltlab.wcf_5.4_wcf1_tag_to_object_step1.php</instruction>
+               <instruction type="database" run="standalone">acp/database/update_com.woltlab.wcf_5.4_wcf1_tag_to_object_step2.php</instruction>
+               <instruction type="database" run="standalone">acp/database/update_com.woltlab.wcf_5.4_wcf1_tag_to_object_step3.php</instruction>
+               <instruction type="database" run="standalone">acp/database/update_com.woltlab.wcf_5.4_wcf1_tag_to_object_step4.php</instruction>
                
-               <!-- The internal data structure of sitemaps have been modified, this script must be run before
-                    the `objectType` pip to prevent any data corruption. -->
-               <instruction type="script">acp/update_com.woltlab.wcf_5.3_sitemaps.php</instruction>
+               <!-- Cleanup of the filesystem. -->
+               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.4_removeFiles.php</instruction>
                
+               <!-- Misc. PIPs. -->
+               <instruction type="acpMenu" />
+               <instruction type="clipboardAction" />
+               <instruction type="eventListener" />
                <instruction type="objectTypeDefinition" />
                <instruction type="objectType" />
-               
-               <instruction type="userNotificationEvent" />
-               <instruction type="userOption" />
-               
+               <instruction type="userGroupOption" />
+               <instruction type="userMenu" />
+               <instruction type="page" />
                <instruction type="language" />
+               <instruction type="mediaProvider" />
+               <instruction type="userOption" />
                
-               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.3_invalidateMailForm.php</instruction>
-               
-               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.3_fixActivationMethod.php</instruction>
-               
-               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.3_orphanedComments.php</instruction>
-               
-               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.3_style.php</instruction>
-               
-               <instruction type="style" run="standalone">defaultStyle.tar</instruction>
-               
-               <!-- This SQL step purges the legacy package servers, this must come last to make sure that an early
-                    abort of the core upgrade does not brick the installation. -->
-               <instruction type="sql">update_5.3.sql</instruction>
+               <!-- Migration of multi-factor authentication. -->
+               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.4_migrate_multifactor.php</instruction>
                
-               <instruction type="script">acp/update_com.woltlab.wcf_5.3_packageServer.php</instruction>
-       </instructions>
+               <!-- Migration of the rank images -->
+               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.4_migrate_rank_images.php</instruction>
 
-       <instructions type="update" fromversion="5.3.4">
-               <instruction type="acpTemplate">acptemplates_update.tar</instruction>
-               <instruction type="file">files_update.tar</instruction>
-               <instruction type="template">templates_update.tar</instruction>
+               <!-- Update of the Google Fonts -->
+               <instruction type="script" run="standalone">acp/update_com.woltlab.wcf_5.4_update_google_font.php</instruction>
                
-               <instruction type="language" />
-               
-               <instruction type="mediaProvider" />
-               <instruction type="objectType" />
+               <instruction type="script">acp/update_com.woltlab.wcf_5.4_deleteLanguageItems.php</instruction>
        </instructions>
 </package>