Muhammad Arnaldo [Mon, 5 Jan 2026 03:43:10 +0000 (10:43 +0700)]
MDL-86346 core: update the use of ArrayLoader namespace
The Mustache library just got updated to version 3 recently.
The changes include update to psr-4. Hence, we update
the call to the class ArrayLoader.
Adrian Greeve [Tue, 6 Jan 2026 01:04:49 +0000 (09:04 +0800)]
Merge branch 'MDL-87526-main' of https://github.com/andrewnicols/moodle
Stefan Topfstedt [Sat, 6 Dec 2025 00:22:06 +0000 (16:22 -0800)]
MDL-87416 glossary: set page title on glossary entry details page.
Mark Johnson [Mon, 5 Jan 2026 11:28:50 +0000 (11:28 +0000)]
MDL-85431 questions: Fix access checks on Question banks page
Users who could not manage activities on a course, but did have
permission to access particular question banks, could not access the
Question banks page.
This modifies the permission checks on that page to allow access if the
user can either manage activities, or has access to at least one
activity that publishes questions. Some additional changes to the output
were required to prevent non-editing users adding banks.
It also modifies the navigation hook to add the Question banks
navigation node if the user can access any activitiy that publishes
questions on the course. This is all based on cached modinfo and
permissions data so should remain performant.
Paul Holden [Mon, 5 Jan 2026 14:24:30 +0000 (14:24 +0000)]
Merge branch 'MDL-87529' of https://github.com/yerairogo/moodle
Paul Holden [Mon, 5 Jan 2026 10:09:25 +0000 (10:09 +0000)]
MDL-87251 tool_uploadcourse: update scenarios for self-enrol title.
Paul Holden [Mon, 5 Jan 2026 09:59:59 +0000 (09:59 +0000)]
Merge branch 'MDL-87251-main' of https://github.com/roland04/moodle
Paul Holden [Mon, 5 Jan 2026 09:46:51 +0000 (09:46 +0000)]
Merge branch 'MDL-87288-main' of https://github.com/ilyatregubov/moodle
AMOS bot [Sat, 3 Jan 2026 00:08:09 +0000 (00:08 +0000)]
Automatically generated installer lang files
Mark Johnson [Tue, 18 Nov 2025 14:10:22 +0000 (14:10 +0000)]
MDL-73602 questions: Remove qtype_random
Mark Johnson [Wed, 19 Nov 2025 16:34:17 +0000 (16:34 +0000)]
MDL-73602 quiz: Remove all qtype_random references
This removes the use of the "random" qtype for random questions from the
quiz module. Instead, the quiz structure now idenfies slots containing
random questions using a `random` boolean field on the slot.
This includes some amendments to statistics classes in the core_question
namespace, as they ultimately get their question data from
mod/quiz/report/reportlib.php
It also introduces a proper (if limited) way to add random questions in
behat tests.
Mark Johnson [Tue, 18 Nov 2025 16:32:39 +0000 (16:32 +0000)]
MDL-73602 quiz: Restore random tag filters to new format
As we are now creating set references using the modern filtercondition
format, this ensures legacy tag filters are also converted directly to
the new format.
We no longer need the tag name as part of this, only the ID, so we have
factored the name out of `process_quiz_slot_tags`.
Andrew Nicols [Tue, 25 Jun 2024 01:55:46 +0000 (09:55 +0800)]
MDL-82284 core: Remove all PHP5 constructors
meirzamoodle [Thu, 25 Dec 2025 04:09:57 +0000 (11:09 +0700)]
MDL-87423 core: Remove the deprecated functions
James C [Tue, 30 Dec 2025 04:38:46 +0000 (17:38 +1300)]
MDL-85530 course: Improve PHPDoc types for course format code
James C [Tue, 30 Dec 2025 04:37:37 +0000 (17:37 +1300)]
MDL-86959 course: Improve PHPDoc types for course code
Sara Arjona [Mon, 29 Dec 2025 13:51:30 +0000 (14:51 +0100)]
Merge branch 'MDL-87280-main' of https://github.com/sarjona/moodle
Huong Nguyen [Mon, 29 Dec 2025 06:51:34 +0000 (13:51 +0700)]
Merge branch 'MDL-81882-main' of https://github.com/yusufwib01/moodle
Huong Nguyen [Mon, 29 Dec 2025 06:45:41 +0000 (13:45 +0700)]
Merge branch 'MDL-86346-main' of https://github.com/muhammadarnaldo/moodle
Matt Porritt [Fri, 14 Mar 2025 04:13:51 +0000 (15:13 +1100)]
MDL-84862 AI: Stop provider instance creataion when no provider plugins
Prevents calls to action to create an AI provider instance from
being displayed to users when there are no AI provider plugins
installed in the instance.
Co-Authored-By: Yusuf Wibisono <yusuf.wibisono@moodle.com>
Muhammad Arnaldo [Mon, 1 Dec 2025 04:54:57 +0000 (11:54 +0700)]
MDL-86346 lib: Update mustache helper after upgrade
- Update component file, moved mustache from psr-0 to psr-4 section
- Update mustache helpers
- Update mustache related tests
Huong Nguyen [Mon, 29 Dec 2025 02:54:25 +0000 (09:54 +0700)]
Merge branch 'MDL-87433-main' of https://github.com/muhammadarnaldo/moodle
AMOS bot [Sat, 27 Dec 2025 00:08:11 +0000 (00:08 +0000)]
Automatically generated installer lang files
AMOS bot [Fri, 26 Dec 2025 00:08:07 +0000 (00:08 +0000)]
Automatically generated installer lang files
Muhammad Arnaldo [Wed, 24 Dec 2025 08:47:54 +0000 (15:47 +0700)]
MDL-87433 course: Add sorting to get_nearest_editable_subcategory
Add ORDER BY to the query to ensure categories are returned in
consistent order. This fixes random test failures, especially
on PostgreSQL.
Mark Johnson [Tue, 18 Nov 2025 16:30:25 +0000 (16:30 +0000)]
MDL-73602 questions: Prevent restore of qtype_random questions
This completely removes the step of creating a question with qtype
'random' during the restore process.
Previously, we would create the question bank entry, question version
and question record, then rely on the activity using it to convert it to
a question set reference and delete it. If the activity was never
restored, the question remained in the database.
Now, we store the random question data in a temporary record. The
activity still converts this to a set reference, and now directly to the
new filter condition format. The temporary record will automatically be
cleaned up after the restore.
If the restore process attempts to create a question record with qtype
'random', this will now throw a coding exception as this must never
happen.
Yerai RodrÃguez [Tue, 23 Dec 2025 12:26:46 +0000 (13:26 +0100)]
MDL-87529 core_customfield: reset CF handler cache after form save
Alex Keel [Tue, 23 Dec 2025 12:28:35 +0000 (12:28 +0000)]
MDL-86869 gradereport_singleview: Raises memory limit
Amaia Anabitarte [Tue, 23 Dec 2025 10:37:53 +0000 (11:37 +0100)]
Merge branch 'MDL-87279-main' of https://github.com/sarjona/moodle
Mihail Geshoski [Tue, 23 Dec 2025 08:58:28 +0000 (16:58 +0800)]
Merge branch 'MDL-84987_main' of https://github.com/marxjohnson/moodle
Mihail Geshoski [Tue, 23 Dec 2025 08:51:33 +0000 (16:51 +0800)]
Merge branch 'MDL-85649_main' of https://github.com/marxjohnson/moodle
Mihail Geshoski [Tue, 23 Dec 2025 08:46:57 +0000 (16:46 +0800)]
Merge branch 'MDL-86995-main' of https://github.com/sh-csg/moodle
Mihail Geshoski [Tue, 23 Dec 2025 08:09:28 +0000 (16:09 +0800)]
Merge branch 'MDL-86798_main' of https://github.com/marxjohnson/moodle
Sara Arjona [Fri, 12 Dec 2025 11:46:28 +0000 (12:46 +0100)]
MDL-87280 subsection: Add task to remove existing descriptions
Sara Arjona [Mon, 1 Dec 2025 09:41:20 +0000 (10:41 +0100)]
MDL-87279 course: Remove edit description for delegated sections
Sara Arjona [Tue, 23 Dec 2025 05:48:42 +0000 (06:48 +0100)]
Merge branch 'MDL-83115-main' of https://github.com/aanabit/moodle
Andrew Nicols [Tue, 23 Dec 2025 03:45:09 +0000 (11:45 +0800)]
MDL-87526 core: Moodle provides moodle/lms
Mark Johnson [Fri, 11 Jul 2025 08:00:13 +0000 (09:00 +0100)]
MDL-85649 questions: Show question count in the question banks page
This displays a badge next to each question bank with a count of the
question it contains. The counts are loaded asynchrnously to avoid
adding extra queries to the page load.
Amaia Anabitarte [Wed, 19 Nov 2025 15:49:16 +0000 (16:49 +0100)]
MDL-83115 course_format: Improve format does not support sections error
Laurent David [Wed, 15 Oct 2025 10:47:28 +0000 (12:47 +0200)]
MDL-86854 core_course: refactor moveto_module other usages
Laurent David [Tue, 14 Oct 2025 08:46:26 +0000 (10:46 +0200)]
MDL-86854 core_courseformat: cm_move to use cmactions methods
Laurent David [Tue, 14 Oct 2025 06:36:33 +0000 (08:36 +0200)]
MDL-86854 core_courseformat: Add move_before logic by cmactions
Stefan Hanauska [Wed, 5 Nov 2025 13:08:15 +0000 (14:08 +0100)]
MDL-86995 mod_forum: Allow ignoring maxeditingtime for qanda forum
Mark Johnson [Thu, 11 Dec 2025 11:19:09 +0000 (11:19 +0000)]
MDL-86798 questions: Check original context is on the same site
When checking if the original context exists during a restore, we need
to check that we're looking at the context on the same site, not one on
a different site that happens to have the same ID.
Mark Johnson [Fri, 14 Nov 2025 11:08:17 +0000 (11:08 +0000)]
MDL-86798 questions: Track next version for question bank entries
This adds a new "nextversion" field to `question_bank_entries` to track
which version number the next version of the question should have. This
ensures that version numbers are not re-used if the latest version is
deleted.
To use this field, you must call
`\core_question\versions::get_next_version()`. This will initialise the
field to the correct value if it is currently null.
If you create a new version using this value, you must then call
`\core_question\versions::increment_next_version()` to increment the
counter.
Mark Johnson [Thu, 13 Nov 2025 09:12:49 +0000 (09:12 +0000)]
MDL-86798 questions: Restore backups containing deleted versions
If the latest version of a question is deleted, and then a new one
created, the new one will currently re-use the version number of the
deleted version. If the original version was backed up before it was
deleted, then restored later, we end up with two questions in one
question bank entry that have the same version.
To resolve this, when restoring a question, we check if there is already
a version with the same version number, then bump it and any higher
versions up by 1. We also check for any references specifically using
these versions and bump those up by 1. Any references using "always
latest" will be fine, as the latest version will still be the latest.
Additionally, if deleting a version made it hidden, and the backup
contains the same version in "ready" state, restoring the backup will
restore it to "ready" state.
Huong Nguyen [Fri, 19 Dec 2025 02:03:57 +0000 (09:03 +0700)]
weekly release 5.2dev
Huong Nguyen [Fri, 19 Dec 2025 02:03:57 +0000 (09:03 +0700)]
NOBUG: Add upgrade notes
Mark Johnson [Thu, 4 Dec 2025 14:54:59 +0000 (14:54 +0000)]
MDL-84987 qbank_managecategories: In-place editing of category names
Implement an inplace_editable widget for category names.
Currently, category names in the Edit categories interface are a link to
the questions in that category. This reduces that link so it only
applies to the question count, and replaces the static category name
with an inplace_editable widget.
As this is within a reactive component, and the category name is used
elsewhere for things like building the "Move category" modal, once the
inplace_editable returns a successful update we also update the category
name in the state.
The category component now listens for updates to the name in the state,
and updates the `data-categoryname` attribute in the DOM element. As
well as being triggered by the new inplace_editable, this is also
triggered when the name is edited in the modal editing form.
Ilya Tregubov [Thu, 18 Dec 2025 08:36:06 +0000 (09:36 +0100)]
MDL-87288 output: Fix pagination in small containers.
Huong Nguyen [Thu, 18 Dec 2025 03:22:35 +0000 (10:22 +0700)]
Merge branch 'MDL-87340-main' of https://github.com/lameze/moodle
Huong Nguyen [Thu, 18 Dec 2025 02:29:53 +0000 (09:29 +0700)]
Merge branch 'MDL-86420-main' of https://github.com/muhammadarnaldo/moodle
Huong Nguyen [Thu, 18 Dec 2025 02:26:48 +0000 (09:26 +0700)]
Merge branch 'MDL-86086-main' of https://github.com/andimendunia/moodle
Adrian Greeve [Wed, 17 Dec 2025 08:21:40 +0000 (16:21 +0800)]
Merge branch 'MDL-87461-main' of https://github.com/andrewnicols/moodle
Huong Nguyen [Wed, 17 Dec 2025 07:15:12 +0000 (14:15 +0700)]
Merge branch 'MDL-87094-main' of https://github.com/andelacruz/moodle
Mihail Geshoski [Wed, 17 Dec 2025 04:42:15 +0000 (12:42 +0800)]
Merge branch 'MDL-86916-main' of https://github.com/durenadev/moodle
Mihail Geshoski [Wed, 17 Dec 2025 04:38:24 +0000 (12:38 +0800)]
Merge branch 'MDL-82639-main' of https://github.com/cameron1729/moodle
Mihail Geshoski [Wed, 17 Dec 2025 04:29:41 +0000 (12:29 +0800)]
Merge branch 'MDL-72833_main' of https://github.com/marxjohnson/moodle
Andi Permana [Wed, 10 Dec 2025 11:28:19 +0000 (18:28 +0700)]
MDL-86086 theme_boost: Add visual distinction for readonly form inputs
Juan Segarra Montesinos [Tue, 16 Dec 2025 16:46:06 +0000 (17:46 +0100)]
MDL-87479 mod_glossary: Manage entries from the showentry page
Mihail Geshoski [Wed, 17 Dec 2025 04:13:52 +0000 (12:13 +0800)]
Merge branch 'MDL-86416-main' of https://github.com/junpataleta/moodle
Huong Nguyen [Tue, 16 Dec 2025 04:06:34 +0000 (11:06 +0700)]
MDL-67733 repository_youtube: Use new Google API Client integration
Huong Nguyen [Tue, 16 Dec 2025 03:58:00 +0000 (10:58 +0700)]
MDL-67733 core: Add Google API Client integration for Moodle
Huong Nguyen [Tue, 16 Dec 2025 03:55:24 +0000 (10:55 +0700)]
MDL-67733 core: Add new libs to namespace
Huong Nguyen [Tue, 16 Dec 2025 03:53:02 +0000 (10:53 +0700)]
MDL-67733 core: Include Google PHP API Client Services
Huong Nguyen [Tue, 16 Dec 2025 02:59:08 +0000 (09:59 +0700)]
MDL-67733 core: Include Google Auth Library for PHP
Huong Nguyen [Tue, 16 Dec 2025 02:55:22 +0000 (09:55 +0700)]
MDL-67733 core: Include Google APIs version 2
Paul Holden [Tue, 16 Dec 2025 13:10:21 +0000 (13:10 +0000)]
MDL-85300 output: ensure Bootstrap tooltips load for dynamic content.
Prior to this change, tooltips would only load for elements in the
initial page DOM without considering those elements subsequently added
dynamically (e.g. via AJAX).
Co-authored-by: Sebastian Gundersen <sebastian@sgundersen.com>
Amaia Anabitarte [Tue, 16 Dec 2025 11:09:18 +0000 (12:09 +0100)]
Merge branch 'MDL-87276-main' of https://github.com/sarjona/moodle
Andrew Nicols [Mon, 15 Dec 2025 02:04:31 +0000 (10:04 +0800)]
MDL-87461 core: Hide diffs for composer.lock
Andrew Nicols [Mon, 15 Dec 2025 02:03:18 +0000 (10:03 +0800)]
MDL-87461 core: Update composer lock file
Andrew Nicols [Mon, 15 Dec 2025 02:03:01 +0000 (10:03 +0800)]
MDL-87461 core: Add Composer config to indicate the use of public dir
Huong Nguyen [Tue, 16 Dec 2025 02:46:04 +0000 (09:46 +0700)]
MDL-67733 core: Include PSR-6/Caching Interface
Huong Nguyen [Tue, 16 Dec 2025 02:40:09 +0000 (09:40 +0700)]
MDL-67733 core: Include Monolog
Alex Keel [Thu, 9 Oct 2025 15:22:42 +0000 (16:22 +0100)]
MDL-86869 gradereport_singleview: Lower the max per page limit
Amaia Anabitarte [Mon, 15 Dec 2025 12:39:54 +0000 (13:39 +0100)]
Merge branch 'MDL-87436-main' of https://github.com/laurentdavid/moodle
Mark Johnson [Thu, 11 Dec 2025 13:38:18 +0000 (13:38 +0000)]
MDL-72833 quiz: Respect locale in maxmark setting
Editing maxmarks in quiz slots was not respecting the decimal separator
from the set language's locale, meaning if your language formats numbers
like 1,10 editing didn't work correctly.
This sets the correct parameter to ensure the locale is respected.
Sara Arjona [Fri, 5 Dec 2025 11:51:51 +0000 (12:51 +0100)]
MDL-87276 course: Display course subsections inline
This patch:
- Updates subsection navigation links, replacing them with the
relevant anchor on the main section page.
- Removes the View action from the subsection menu in edit mode,
as there is no longer a separate page to view.
- Displays subsections inline always (even when 'Show one section
per page' is defined).
- Descriptions are no longer shown for delegated sections.
Jun Pataleta [Mon, 15 Dec 2025 10:48:49 +0000 (18:48 +0800)]
Merge branch 'MDL-87341_main' of https://github.com/TomoTsuyuki/moodle
Laurent David [Wed, 10 Dec 2025 10:54:14 +0000 (11:54 +0100)]
MDL-87436 core_courseformat: Fix id collision when testing
* When testing using phpunit/sqlsrv the ids of sections and cm are colliding
so we need to make sure we separate them as a reference to a cm can be the
same as a reference to a section
Angelia Dela Cruz [Thu, 4 Dec 2025 08:08:04 +0000 (16:08 +0800)]
MDL-87094 core_course: Behat to restrict available activities/resources
Huong Nguyen [Mon, 15 Dec 2025 02:03:32 +0000 (09:03 +0700)]
Merge branch 'MDL-87034-main' of https://github.com/jleyva/moodle
Andrew Nicols [Mon, 15 Dec 2025 02:01:13 +0000 (10:01 +0800)]
MDL-87461 core: Update Composer type to moodle-core
Huong Nguyen [Mon, 15 Dec 2025 01:58:07 +0000 (08:58 +0700)]
Merge branch 'MDL-86638-main' of https://github.com/josepico01/moodle
Huong Nguyen [Mon, 15 Dec 2025 01:55:30 +0000 (08:55 +0700)]
Merge branch 'main_MDL-73396' of https://github.com/niko-hoogeveen/moodle
Huong Nguyen [Mon, 15 Dec 2025 01:45:22 +0000 (08:45 +0700)]
Merge branch 'MDL-86679-main' of https://github.com/andimendunia/moodle
Tomo Tsuyuki [Sun, 14 Dec 2025 23:16:09 +0000 (10:16 +1100)]
MDL-87341 javascript: Fix aria label issue for navigation bar
Cameron Ball [Sat, 13 Dec 2025 02:39:06 +0000 (10:39 +0800)]
MDL-82639 mod_quiz: Improve events for random questions
Cameron Ball [Sat, 13 Dec 2025 02:37:51 +0000 (10:37 +0800)]
MDL-82639 mod_quiz: Refactor random filter update
Stefan Topfstedt [Mon, 25 Aug 2025 22:54:20 +0000 (15:54 -0700)]
MDL-86436 navigation: hide empty page heading menu.
Co-authored-by: Jun Pataleta <jun@moodle.com>
Stefan Topfstedt [Fri, 12 Dec 2025 19:12:31 +0000 (11:12 -0800)]
MDL-87415 profile: set page title when accessed as guest user.
Philipp Memmel [Tue, 18 Nov 2025 08:46:41 +0000 (08:46 +0000)]
MDL-79221 core_grade: Fix fetching context for disabled mod plugins
Activity plugins that are disabled on the site are not included in
the modinfo cache. That's why their context must not be fetched via
modinfo cache.
Philipp Memmel [Sun, 5 Oct 2025 17:39:25 +0000 (17:39 +0000)]
MDL-79221 core_completion: Do not update state for disabled plugins
Shamim Rezaie [Fri, 12 Dec 2025 03:05:57 +0000 (14:05 +1100)]
weekly release 5.2dev
Shamim Rezaie [Fri, 12 Dec 2025 03:05:57 +0000 (14:05 +1100)]
NOBUG: Add upgrade notes
Shamim Rezaie [Fri, 12 Dec 2025 03:05:44 +0000 (14:05 +1100)]
Merge branch 'install_main' of https://git.in.moodle.com/amosbot/moodle-install
Mihail Geshoski [Thu, 11 Dec 2025 05:40:11 +0000 (13:40 +0800)]
MDL-87412 qbank_managecategories: Use single quotes in scenario name
Huong Nguyen [Thu, 11 Dec 2025 03:56:43 +0000 (10:56 +0700)]
Merge branch 'MDL-86699' of https://github.com/paulholden/moodle
Huong Nguyen [Thu, 11 Dec 2025 03:36:01 +0000 (10:36 +0700)]
Merge branch 'MDL-86997' of https://github.com/paulholden/moodle
Huong Nguyen [Thu, 11 Dec 2025 03:30:01 +0000 (10:30 +0700)]
Merge branch 'MDL-87000' of https://github.com/paulholden/moodle