-
Task
-
Resolution: Fixed
-
Minor
-
Future Dev
-
MOODLE_311_STABLE, MOODLE_39_STABLE, MOODLE_400_STABLE
-
-
Since Moodle 3.5 (MDL-59159), these rules apply to decide Minimum PHP and Moodle versions supported:
- A LTS will always require the previous LTS (or later) for upgrading.
- The maximum PHP version supported for a branch will be the max one achieved along the life of the branch. Usually with .0 releases but may happen later (we added support for php70 with 3.0.1, or support for php73 with 3.6.4, for example).
- The minimum PHP version supported for a branch will be the lower of:
- The minimum version supported in any way by php the day of the Moodle release (so we provide slow, progressive increments).
- The maximum PHP version supported by the previous LTS branch (so we guarantee jumping between LTS is possible without upgrading PHP at the same time).
We need to decide ASAP about all the PHP/DB/Moodle versions requirements and put all them into the environmental tests (adding them to all supported branches).
All the still open linked issues have been also cloned here from the 4.0 sister issue (MDL-70594).
Usual discussions:
- PHP min. version/supported versions.
- database versions.
- Linked issues.
- ...
Feel free to propose areas to be discussed here. A numbered list with all them will be created to vote and decide the final outcomes of this issue.
 Related Tasks (create issues/PRs whenever they apply):
TODO-0: Recommendation. It's useful to look to the changes performed for previous versions, specially LTS ones, to see which sort of changes must be applied with this issue.
TODO-1: MDLSITE-6686 : Once the agreement is settled, if there are raised requirements (PHP/Database/Extensions...) create a MDLSITE issue to ensure that external testers environment is ready for them.
TODO-2: Composer: To be done as part of this issue (master only):
- Raised lower PHP version do imply that core composer stuff need to be updated and regenerated with it.
- Also, check that all the php and extensions requirements and recommendations in the composer.json file match the ones specified in the admin/environment.xml file (defined by this issue).
TODO-3: Environment and upgrade: To be done as part of this issue:
- Add the new version section to the admin/environment.xml files, for all the supported (security included) branches. Ensure all the new requirements are applied.
- If Moodle requirements have changed, remove any upgrade step (and upgradelib functions) not used anymore (master only).
TODO-4: Travis / GHA integration: To be done as part of this issue (master only): Ensure requirements are fulfilled and there are jobs using the new versions.
TODO-5: Once the agreement is settled, ensure that:
- The affected php docker images fulfill all the requirements (extensions...).
- Same for (still) non-dockered stuff, like:
- Legacy CI server. Ensure that bot master jobs and CiBoT runs are executed with minimum supported php version.
- Performance-comparison jobs.
TODO-6: Once the patch is ready to peer-review, update all the configuration @ CI infrastructure:
- Ensure (nightlyjobs) that every Moodle branch knows its lowest and highest PHP supported versions.
- Verify that the runner (moodle-ci-runner) is using correct database versions.
TODO-7: Once applied upstream, changes are needed @ download.moodle.org to show the new requirements there (serverscripts).
TODO-8: Once applied upstream, ensure that both the Mac and Windows packages fulfill the requirements and work ok.
TODO-9: Once applied upstream, review the travis and/or github actions configuration for various repositories. The new core requirements may be hitting them. Also add new branches if missing. Known to need review / fix repos include:
- moodle_docker (both CIs and default php/db versions if raised)
- moodle-ci-runner (both CIs and default php/db versions if raised)
- moodle-plugin-ci
- local_codechecker
- local_moodlecheck
- local_ci
- ...
TODO-10: Consider if there is any PHPUnit upgrade to perform whenever there are PHP version changes. (not for now we are already running the latest and greatest phpunit 9.5).
TODO-11: MDL-74905 : Ensure that the (clone of this) issue for next (to this) requirements issue is created and contains all the information. All the non-resolved details and issues must be dragged to the new issue.
TODO-12: Docs:
- Ensure that all the requirements are shown in the corresponding docs (release and/or upgrade). Ask Community team if the new version docs need to be created.
- Ensure that there are landing pages @ docs for all the environmental changes performed.
TIA and ciao
Â
- blocks
-
MDL-72722 Oracle support for distinct group concatenation SQL
- Closed
- has a clone
-
MDL-74905 Decide Moodle 4.2 requirements and push them to environment.xml (due date: 2022-12-26)
- Closed
- has a non-specific relationship to
-
MDL-45723 uniformize the handling of svgs in resolve_image_location() calls.
- Closed
-
MDL-58615 Remove YUI CDN support
- Closed
-
MDL-60037 cachestore_memcached_test::test_multi_use_compatibility is failing again with memcached 1.5.0
- Closed
-
MDL-69684 It's possible to hold a redis session lock forever
- Closed
-
MDL-70745 Prepare Moodle for PHP 8.0
- Closed
-
MDL-73016 Prepare Moodle for PHP 8.1
- Closed
-
MDL-74834 Update github actions from bionic (18.04) to focal (20.04)
- Closed
-
MDL-76459 Expand Database Identifier Sizes (Column names, Table names)
- Closed
-
MDL-62640 Remove option to disable slash arguments (slashargs)
- Component lead review in progress
-
MDL-69960 Remove all the compatibility bits related with the end of IE11 support
- Open
-
MDL-64482 Review not needed anymore PHP 5.x & 7.0 checks uses in core
- Closed
-
MDLSITE-6686 Verify testers VM supports Moodle 4.1 requirements
- Closed
-
MDL-62352 Set default $CFG->forceclean to 1
- Open
-
MDL-51590 Automatically update environment.xml (and send an email to administrator if some requirements are not OK)
- Closed
-
MDL-73269 Add PHP version and required/optional extensions to composer.json
- Closed
- has been marked as being related by
-
MDL-70889 XMLRPC to be or not to be
- Closed
-
MDL-73500 Remove all the conditional code looking for php < 73
- Closed
-
MDL-73587 Perform a complete PHPCompatibility 8.1 execution against codebase
- Closed
- is a clone of
-
MDL-70594 Decide Moodle 4.0 requirements and push them to environment.xml (due date: 2021-06-09)
- Closed
- Testing discovered
-
MDL-75223 Problems with Oracle 21 (behat testing failures)
- Closed
-
MDL-75208 Problems with Oracle 21 (phpunit testing failures)
- Closed
- will be (partly) resolved by
-
MDL-71421 Move php-sodium recommendation back to requirement
- Closed