Moodle Changelog

What's new in Moodle 4.4

Apr 22, 2024
  • Major UX improvements:
  • Course hierarchy improvements:
  • MDL-80923 - Remove the Custom checkbox from the Settings page for all course formats
  • MDL-80621 - Update activity separators with "+" buttons styling
  • MDL-80622 - Improve the shadow element when dragging activity cards
  • MDL-80620 - Improve the collapse/expand chevrons styling
  • MDL-80219 - Improve activity and section cards
  • MDL-80460 - Create section with "New section" name and stop using the auto-renaming for the topics course format
  • MDL-80418 - Homogenise Adding / Updating activity titles, regardless the section where it belongs
  • MDL-80541 - Homogenise the section form title
  • MDL-80248 - In course/section.php, display the General section instead of displaying all the course sections
  • MDL-80249 - In course/section.php, hide secondary navigation and add breadcrumb
  • MDL-80557 - Change the default order for the course formats
  • MDL-79986 - Create a new course section page
  • MDL-80461 - Eliminate erroneous references to topic and weeks from the UI
  • MDL-80186 - Add delegate section fields to the course_section table
  • MDL-80203 - Delegate editing options for delegated sections
  • MDL-80220 - Update the section visibility badge to use status dropdown like the activities
  • MDL-79987 - Improving the course layout one section per page
  • Other major features:
  • Messaging phase 2 - Expand Matrix integration & Communication API:
  • MDL-78551 - Implement initial group support in Communication providers
  • MDL-77444 - Add initial Mobile App support to the communication API
  • Notification improvements phase 1:
  • MDL-4188 - Send course welcome message for manual and self enrolments
  • MDL-46886 - Send users a notification message before they are unenrolled due to inactivity
  • MDL-79131 - Send administrators a notification when tasks reach their max fail delay
  • MDL-79714 - Web and email notification default on for new installs
  • BigBlueButton:
  • MDL-79239 - Require Registration for BigBlueButton Plugin Server Credentials
  • MDL-77660 - Completion extension using Subplugins
  • MDL-79750 - Make SHA256 the default algorithm for BigBlueButton requests
  • MDL-79537 - Remove 'bbb-meeting-size-hint' as a meta parameter on create
  • Quiz and questions:
  • MDL-79863 - Integration of the ordering question type into Moodle core including improved accessibility and configuration process
  • MDL-74610 - Let a quiz have multiple total grades (e.g. for each section)
  • MDL-67259 - Quiz autosave should reassure users that it is working
  • MDL-80900 - Review quiz attempt summary improvements
  • MDL-80099 - Migrate quiz statistics callbacks to Hooks API
  • Report builder:
  • MDL-79510 - Allow Config changes report to filter on Plugin
  • MDL-80342 - Allow to filter users in the custom reports by their cohorts
  • MDL-77805 - Improve report builder filters dropdown UI
  • MDL-77804 - Improve report builder inline filter forms UI
  • MDL-79270 - Improve "Browse users" page using Report builder functionality
  • MDL-80245 - Support custom reports tagging
  • MDL-80722 - Course report source - add time created and time modified
  • MDL-80619 - Add capability to view any report in report builder
  • MDL-81126 - Add relative date filter option to select dates after given period
  • MDL-78427 - New theme usage report
  • MDL-80325 - Make "delete" actions in report builder reports red
  • MDL-81073 - Add version and expiry date to manage badges page filters
  • MDL-79200 - Improve how custom reports filter file types by type
  • MDL-79216 - Improve how custom reports filter files by size
  • MDL-80843 - Add authentication method column to user entity
  • MDL-79646 - Add animation to indicate completion of drag/drop when editing report
  • MDL-79629 - Enhance report editor filter/condition selection to use autocomplete
  • MDL-80063 - Custom report on assigned roles across the site
  • MDL-79788 - Convert tag collection report to a report builder system report
  • MDL-80560 - New report for "Browse user list" follow up - picture, download, identity fields
  • MDL-79346 - Add filter/condition on cohort visibility field
  • MDL-80329 - Report builder filters should trim the spaces
  • MDL-79552 - Add cohort data (columns/filters) to user-focused reports
  • MDL-79532 - Add blog "title with link" column for custom reporting
  • MDL-80052 - Convert remaining reports inside Badges to report builder
  • TinyMCE 6:
  • MDL-77325 - Make TinyMCE the default editor for existing installs
  • MDL-79709 - Create Capability for TinyMCE Premium plugins
  • MDL-78096 - TinyMCE - Improve image adding
  • Content bank and H5P:
  • MDL-79543 - H5P activity number of attempts no longer displayed
  • MDL-80028 - Grant non-editing teacher mod/h5pactivity:reviewattempts
  • MDL-80754 - H5P activity reports page: Add the total attempts to the table column
  • MDL-80055 - Restyle and re-position the 'Edit H5P content' link within the H5P activity page.
  • Accessibility improvements:
  • MDL-78994 - Guest policy link should be early in the page's tab order for keyboard navigation users
  • MDL-80431 - Do not use tag for form elements group that does not have a label
  • MDL-81066 - Validate form fields on submit or change, not just tab
  • Usability improvements:
  • MDL-77980 - Grade item column headings in the grader report should link to activities
  • MDL-69541 - Add option to "Post to all groups" in the quick discussion creation
  • MDL-78850 - Clicking on Calendar date through Course page should select course in dropdown and show course events on Calendar event page
  • MDL-79769 - Login Page - Add ability to show password in plain text
  • MDL-78335 - Normalise the date completion criteria date string
  • MDL-79912 - Improve the backup/restore workflow: Create index page
  • MDL-79915 - Improve the backup/restore workflow: Improve UI for Restore
  • MDL-81337 - Course page plus icon should have a tooltip to inform you what happens if you click it
  • MDL-80235 - SCORM should not allow 0 as minimum score required
  • MDL-79920 - Authentication: MFA - Improve user factor setup
  • MDL-78425 - Theme Selector: Improve UI
  • MDL-81172 - Async Backup on by default from Install
  • Other Highlights:
  • Functional changes:
  • MDL-78285 - Reintroduce activity mime file type icons (meaning each file has its extension icon)
  • MDL-78284 - Implement the new activity icons design
  • MDL-43820 - tool_uploadcourse supports multiple enrolment instances of the same type
  • MDL-80871 - Add option to user tours to make them always show
  • MDL-79044 - Improve gradebook export formats order
  • MDL-73626 - Can no longer release individual grades when assignment is anonymous
  • MDL-71744 - Configurable defaults for Announcement forums
  • MDL-73852 - Allow using meta enrolment when uploading course via CSV
  • MDL-80856 - Improve the sticky footer maximum width to dynamically adapt to the page content width
  • MDL-79959 - Add custom field picker for SSO identification in repository_equella
  • MDL-80828 - Activity action menu should not have a submenu panel when only two choices are available
  • MDL-70384 - Allow dialogues for adding database fields to use Bootstrap so they look consistent with other pages
  • MDL-80949 - Database field - Remove autolink setting for short text field type
  • For administrators:
  • MDL-43056 - Add the capability tool/uploadcourse:use for tool_uploadcourse
  • MDL-80914 - Reintroduce the LTI external tool option to set custom params at the instance level
  • MDL-79128 - Tasks: Implement no-retry flag for ad-hoc tasks and clean up records of historical failed tasks
  • MDL-79130 - Tasks: Ad-hoc tasks shouldn't retry after max fail delay
  • MDL-80866 - Disabled by default Chat and Survey activity for new installations
  • MDL-67898 - Have an admin_setting which exposes a check
  • MDL-80548 - Add bulk actions to the"Browse list of users" page
  • MDL-80554 - Show debugging calls in tasks logs regardless of debugdisplay
  • MDL-79563 - Add cmid option for backup and course option for restore for CLI script
  • MDL-79564 - Implement import CLI script
  • MDL-80267 - Asynchronous restore keeps deleting course/student content - Using no-retry flag
  • MDL-80328 - Use a confirmation modal when deleting a user
  • MDL-78426 - Theme Selector: Settings UI
  • Performance:
  • MDL-63128 - Redis Cache & Session: implement cluster support
  • MDL-74676 - Speed up limittoenrolled option in course search
  • MDL-65403 - messaging_cleanup_task should use an indexed DB field for improved performance
  • MDL-66546 - Add support to unix:// connections to redis caching/sessions.
  • MDL-79337 - Unnecessary call to set_user_preference when loading a page with an already open drawer in Boost theme
  • MDL-73703 - LDAP user sync: update users in chunks
  • Security improvements:
  • MDL-78511 - Add SMS as a factor in multi-factor authentication
  • For developers:
  • MDL-78334 - Provide a mechanism to deprecate and detect deprecated CSS
  • MDL-73483 - Add hooks (instead of callbacks) to extend course edit form
  • MDL-80838 - Add support for PSR-20 (Clock) to allow better time management
  • MDL-80005 - Add PARAM_ definition class
  • MDL-79151 - Backup of custom fields for courses should include images
  • MDL-80082 - In tables and reports, when there is no entry, give out the "Nothing to display" string as notification instead of header
  • MDL-81011 - Allow hooks to use attributes instead of described_hook interface
  • MDL-79974 - Improve developer experience for exceptions when developing and make it easier to open in editor
  • MDL-80850 - Create JavaScript core/dropzone module to handle dropzone
  • MDL-79520 - Replace custom Clever SSO implementation with OIDC implementation
  • MDL-80207 - Replace use of Horde with Roundcube
  • MDL-80736 - Move AWS helper code to core namespace
  • MDL-80566 - Convert callback 'bulk_user_actions' to hook
  • MDL-80096 - Add a tool to execute behat generators in the current instance
  • MDL-79985 - Create a dropdown form field for advanced options
  • Upgrade Boost theme to use Bootstrap 5.x:
  • MDL-80397 - Refactor some .card-* helpers dropped in Boostrap 5
  • MDL-80395 - Refactor dropped mixins in Bootstrap 5
  • MDL-80396 - Refactor .media component dropped in Bootstrap 5
  • MDL-75673 - Add PopperJS v2 library
  • MDL-80244 - Refactor Navbars preparing them for Boostrap 5
  • MDL-80259 - Refactor .badge-[warning|info|...] and .badge-pill classes dropped in Bootstrap 5
  • MDL-80238 - Refactor .jumbotron dropped in Bootstrap 5
  • MDL-75670 - Refactor Bootstrap form layouts preparing them for Boostrap 5
  • Web service additions and updates:
  • MDL-81065 - Create a new Web Service to be able to retrieve filter configuration and specific overrides per context
  • MDL-65978 - New web services for managing blog entries
  • MDL-78088 - New web services for the user data privacy section (Privacy and policies)
  • MDL-80300 - New web service for creating quiz overrides
  • Deprecations:
  • MDL-75794 - Deprecate i_add_a_field_to_database_and_i_fill_the_form_with() and i_add_an_entry_to_database_with() behat steps
  • MDL-77038 - Deprecate stateactions::section_move method
  • MDL-67667 - Deprecate is_blocking() for adhoc and scheduled tasks in Task API
  • MDL-81326 - Deprecate book_get_nav_classes
  • MDL-72656 - Deprecate old course renderer methods
  • MDL-74238 - Final deprecation of get_available_completion_tabs() and navigation()
  • MDL-73975 - Final deprecation management_heading/course_search_form
  • MDL-73545 - Final deprecation lesson_add_header_buttons
  • MDL-73426 - Final deprecation print_badge_tabs
  • MDL-72376 - Final deprecation of book_get_nav_types
  • MDL-73117 - Final deprecation of three-month calendar pseudo block items
  • MDL-70483 - Final deprecation of get_forum_discussions_paginated web service
  • MDL-80703 - Final deprecation of block_calendar_upcoming::get_upcoming_content()
  • MDL-71950 - Final deprecation display_help_icon() and print_help_icon()
  • MDL-80409 - Final deprecation of download_as_dataformat method
  • MDL-71732 - Final deprecation of functions in lib/deprecatedlib.php initially deprecated in 4.0
  • MDL-72438 - Final deprecations in core_question initially deprecated in 4.0
  • MDL-71734 - Final deprecation of strings initially deprecated in 4.0
  • Component API updates:
  • admin/tool/dataprivacy/upgrade.txt
  • admin/tool/mfa/upgrade.txt
  • admin/tool/usertours/upgrade.txt
  • admin/upgrade.txt
  • auth/email/upgrade.txt
  • auth/upgrade.txt
  • backup/upgrade.txt
  • badges/upgrade.txt
  • blocks/calendar_upcoming/upgrade.txt
  • blocks/recentlyaccesseditems/upgrade.txt
  • blog/upgrade.txt
  • calendar/upgrade.txt
  • completion/upgrade.txt
  • course/format/upgrade.txt
  • course/upgrade.txt
  • customfield/upgrade.txt
  • enrol/upgrade.txt
  • grade/report/upgrade.txt
  • grade/upgrade.txt
  • h5p/upgrade.txt
  • lib/form/upgrade.txt
  • lib/upgrade.txt
  • mod/book/upgrade.txt
  • mod/data/upgrade.txt
  • mod/forum/upgrade.txt
  • mod/lesson/upgrade.txt
  • mod/quiz/report/upgrade.txt
  • mod/quiz/upgrade.txt
  • mod/upgrade.txt
  • mod/url/upgrade.txt
  • question/bank/upgrade.txt
  • question/engine/upgrade.txt
  • question/type/calculatedmulti/upgrade.txt
  • question/upgrade.txt
  • reportbuilder/upgrade.txt
  • tag/upgrade.txt
  • theme/boost/upgrade.txt
  • theme/upgrade.txt
  • user/upgrade.txt

New in Moodle 4.3.3 (Feb 12, 2024)

  • General fixes and improvements:
  • MDL-79937 - Lesson: Matching questions does not match with expected response
  • MDL-76719 - "userisfilteredout" error in assignment when attempting to grade with "Grade" and a filter is set which returns an empty submissions list
  • MDL-78311 - Error in IP validation code returning an empty string when a valid IP is passed as a parameter
  • MDL-69225 - "Preview mode" warning banner is displayed on H5P activities even when not applicable
  • MDL-69615 - Automated backup reports email should be send after all backups are done (all "Ad-hoc task to save pending course")
  • MDL-79091 - Award badges task fails when badge requires multiple deleted activities
  • MDL-59467 - Mustache_Exception: Unknown helper: uniqid
  • MDL-36733 - Wildcards should be useable in hints of calculated questiontypes
  • MDL-79708 - Random questions from empty categories with non-empty sub-categories throwing "not enough questions in category" error
  • MDL-80333 - New login notification task always queued even when feature is disabled
  • MDL-70058 - Textarea custom field can't be updated by core_course_update_courses webservice
  • MDL-80673 - View Grades modal is missing the Grading Guide criteria and feedback from professors
  • MDL-69497 - Filtering in grader fails if user does not have moodle/user:editownprofile capability
  • MDL-75579 - Asynchronous restore keeps deleting course/student content
  • MDL-80224 - City/town defaults to the uploader's City/town when uploading users
  • MDL-80650 - Restore of Backups from

New in Moodle 4.3.2 (Jan 5, 2024)

  • Regression fixes:
  • MDL-80393 - Ensure JavaScript requests that require current language have access to it
  • MDL-80394 - Backwards-incompatible Grade API changes committed to stable branches in MDL-68652
  • General fixes:
  • MDL-77572 - Some course capabilities do not allow the course edit menu (kebab) to display
  • MDL-80003 - Autosave in quiz does not always work with TinyMCE editor fields
  • MDL-80233 - Cannot disable 'View activity' requirement in default activity completion
  • Security improvements:
  • MDL-74466 - Repository management leaks sesskey in GET requests

New in Moodle 4.3.1 (Dec 11, 2023)

  • General fixes and improvements:
  • MDL-64431 - Layers missing from PDFs in grading view
  • MDL-68652 - Forum grades include teacher, all roles
  • MDL-80150 - Reintroduce activity mime file type icons (meaning each file has its extension icon) (backport of MDL-78285)
  • MDL-76555 - PHP8.0 error in mod_resource if legacy instances are present
  • MDL-75572 - Badges using activity completion with passing grade criteria, even when failed grade is given
  • MDL-60632 - Chart rendering fails in quiz report when overall negative grades
  • MDL-74129 - Copyright button in H5P activities ignores the metadata information
  • MDL-79148 - When a recording is imported on a Room with Recording type of BigBlueButton activity, it won't show the link to watch it
  • MDL-79726 - Activity with only "Receive a grade" for the completion condition is being shown as "To do" when it should technically be already "Done"
  • MDL-79967 - SCORM activity completion not triggering under certain conditions
  • MDL-78775 - Error in the grader report when attempting to modify a grade after using the search filter
  • MDL-71414 - The attempt report for H5P drag-and-drop type questions is erroneous when answer elements are in multiple drop zones
  • MDL-74378 - Quiz closing more than 1 h after opening stops auto-saving and does not auto-submit
  • MDL-79611 - Assignment View with missing group is wrongly displayed
  • MDL-78103 - More menu text exceeds the menu border in RTL
  • MDL-42189 - User can still see grade in overview report for the courses where their enrolment is suspended
  • MDL-79639 - Deadlock while running ad-hoc task quiz_statisticstaskrecalculate
  • MDL-79615 - Inefficient cache rebuilding when bulk-updating course module visibility
  • MDL-79194 - Activity context menu not updated when topic un-hidden
  • MDL-79367 - Activity access restrictions do not work when using activity completion with passing grade criteria and failed grade is given
  • MDL-79648 - In format weeks you get 29 October twice
  • MDL-79185 - Fix statcache race condition in cachestore_file
  • MDL-76457 - Popover context pointing arrows should be flipped in RTL mode
  • MDL-79806 - quiz_statistics ad-hoc task should be triggered when attempts are deleted
  • MDL-80210 - The quiz setting reviewmaxmarks has the wrong default when upgrading to Moodle 4.3
  • MDL-78481 - Multi-language filter v2 not working properly for matching questions in a lesson
  • MDL-79633 - Database timeadded and timemodified hour display when hovering
  • MDL-79807 - When a question is added or removed from a quiz, we must remove all cached stats immediately
  • MDL-79501 - Editing Multiple Videos in TinyMCE Editor uses the first video instead of selected one
  • MDL-77816 - Clicking the "Validate completion" button from within a BigBlueButton activity results in an "invalidparameter"
  • MDL-79604 - Exception when missing checkbox field in db activity template
  • MDL-80004 - Error when attempting to delete SCORM attempts during a course reset
  • MDL-80035 - Function 'theme_boostoutputcore_renderer::edit_button' throws an Exception when "haseditswitch" has no value
  • MDL-79966 - Scheduled task timing (crontab fields) is wrong
  • MDL-79693 - Copy to clipboard modal no longer shows toast message upon success
  • MDL-79841 - Left and right borders disappearing from boxes in small screens
  • MDL-75616 - restore_backup CLI command fails when CFG->backuptempdir is defined
  • MDL-77364 - Display the whole full name of course on course cards in "My courses" page or add a tooltip on mouse hover
  • MDL-80205 - It's not possible to set the valid grade to pass for the SCORM activity
  • MDL-80209 - It's not possible to specify the minimum score for the SCORM activity
  • MDL-79996 - Error when deleting user when communication providers are enabled
  • MDL-80257 - TinyMCE Copy paste is broken if enabling TinyMCE Premium
  • MDL-79956 - Import Recording Link shown for all users
  • MDL-79635 - Incorrect number of query parameters while listing users by student
  • MDL-79422 - nologin WS fetches should not fail subsequent requests on error
  • MDL-79767 - "Eye" icon (activate/deactivate) not working in Moodle 4.3
  • MDL-78670 - Prevent using offline quizzes when sequential navigation is enabled
  • MDL-79614 - Users not marked synced with membership updates
  • MDL-74248 - MP3 files uploaded to folder resources will not play in Chrome
  • MDL-79800 - Fix activity card right elements margins
  • MDL-79601 - In RTL mode the Course Progress Report displays First/Last Name in LTR format
  • MDL-79962 - Make role entity name column more predictably sorted
  • MDL-80002 - Forum summary report date filtering throws an exception
  • MDL-79840 - Contentbank refers to invalid image URLs for icons
  • MDL-79512 - A teacher can not change the order of the questions in feedback activity
  • MDL-79858 - The "Request a course" button is badly styled on my courses
  • MDL-79856 - Role deletion confirmation contains missing role name
  • MDL-80181 - Wiki comments table has broken column width
  • MDL-80037 - Theme selector does not indicate when $CFG->theme is defined in config.php
  • MDL-79992 - Course backups are not displayed in the Restore when accessing from a module page
  • MDL-79827 - Tiny editor link plugin doesn't correctly observe whether files can be uploaded
  • MDL-79747 - quiz_statistics ad-hoc task should not set a userid: prevents quiz submission if main admin is nologin
  • MDL-79617 - Close session early during file upload process
  • MDL-79610 - Duplicate activity with restrictions doesn't display the "Edit restrictions" button
  • MDL-79352 - Admin tools link in plugin overview page leads to broken URL
  • MDL-79160 - Questions: The answer field is overflowed the parent width when the size is too big
  • MDL-78979 - Restore or copy a course change links to database items
  • MDL-79365 - Cannot edit courses when unique custom text fields are present
  • MDL-79781 - Error in Courses Pending approval when the default role is deleted
  • MDL-79325 - Group overview export doesn't correctly format group names
  • MDL-77274 - Letter avatars should respect the preference which should come first family or given names
  • MDL-80019 - Completion form Freeze should not allow to edit the completion events
  • MDL-80045 - Starred courses block off centred in right drawer under 575px screen width
  • MDL-79849 - Options to disable Global search or Search forums blocks in mobile app version 4.3
  • MDL-78903 - Tiny media image plugin doesn't properly honour file upload options
  • MDL-78849 - "Continue as guest" button shows when already logged in as guest and being redirected to login page
  • MDL-79801 - Tags custom report entity "flagged" value incorrectly calculated
  • MDL-79783 - Bulk action checkboxes not properly aligned on reports
  • MDL-79979 - Test course creation in Site administration is not taking 'Auto-enrol admin in new courses' setting into consideration
  • MDL-80015 - Category 'More' menu dropdown sits 'off-screen'
  • MDL-79862 - Course completion failure with some third-party plugins
  • MDL-80286 - Database date type fields with values smaller than -2147483648 lead to "Error reading database" exceptions
  • MDL-80254 - Cron task issue with Send report schedules (core_reportbuildertasksend_schedules),Invalid user
  • MDL-78650 - Assignment is still in timeline after submission with group submission, require to click submit, and no activity completion options
  • MDL-76694 - Comment JS error when run in embedded page layouts
  • MDL-79623 - Component Library: core/confirm wrong content key
  • MDL-79642 - Question bank error: Return value must be of type array, none returned
  • MDL-79279 - Importing cloze questions does not import their Idnumbers
  • MDL-80341 - Quiz submission confirmation: description items should not be counted as unanswered questions
  • Accessibility improvements:
  • MDL-77651 - Decorative icons should be hidden from the screen reader (WCAG 2.1 - 1.1.1 Non-text Content)
  • MDL-80185 - Invalid language attribute on HTML tag for languages such as en_wp and de_kids
  • MDL-71336 - Dynamic forms use the same id for different date elements
  • MDL-80121 - Empty heading in Gradebook Single View report's zero state page
  • MDL-79705 - User profile: checkbox profile fields rendered in a way that is not accessible
  • MDL-80131 - Make the title of the pages on the database module unique
  • MDL-79061 - Provide feedback for actions performed on the course page
  • MDL-79062 - Grader report accessibility issues
  • MDL-80043 - Make the page titles for single view and grader reports more unique
  • Security fixes:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.

New in Moodle 4.3 (Dec 11, 2023)

  • Major UX improvements:
  • Gradebook:
  • MDL-77638 - Create a modal form for basic addition of grade categories in Gradebook setup
  • MDL-78217 - Improve the overriding of weights in the Gradebook setup
  • MDL-77447 - Make the grade item status indicators consistent across the Gradebook reports
  • MDL-77639 - Create a modal form for basic addition of outcomes in Gradebook setup
  • MDL-77035 - Improve the UI related to the bulk move functionality in Gradebook setup
  • MDL-77637 - Create a modal form for basic addition of grade item in Gradebook setup
  • MDL-78100 - Add an option to clear all applied filters in the grader report
  • Activity cards redesign:
  • MDL-78283 - Add radio dropdown interaction to group mode icon
  • MDL-78279 - Create new details dropdown components
  • MDL-78282 - Add radio dropdown interaction to availability badge
  • MDL-78280 - Add details dropdown to completion criteria badge
  • MDL-78288 - Add access restriction quickform direct link button to restrictions details dropdown
  • MDL-78200 - Add the group mode indicator to the activity card
  • MDL-78954 - Improve action menu subpanel aesthetics and effects
  • MDL-78826 - Improve accessibility of keyboard control for the generic dropdowns
  • MDL-78607 - Improve section and activity settings form to load access restrictions
  • MDL-78665 - Create a generic submenu for status selection
  • MDL-78286 - Add completion quickform direct link button to completion details dropdown
  • MDL-78207 - Implement activity card information badge integration
  • MDL-78203 - Add group mode option to activity actions submenu
  • MDL-78201 - Create the groupmode state actions
  • MDL-78199 - Improve activity card styling
  • MDL-78744 - Refactor 'activity_information' output class
  • MDL-78289 - Improve the student completion criteria display format
  • MDL-78204 - Add "show more" / "show less" options for access restrictions on course page
  • MDL-78291 - Modify the availability activity action menu to open in a subpanel
  • Other major features:
  • Messaging phase 1 - Integrate chat services:
  • MDL-77576 - Matrix integration MVP - Matrix is available for use in courses
  • MDL-78619 - Add a custom link communication provider
  • MDL-76704 - Admin settings to control Matrix room creation for Courses
  • MDL-77357 - Create dynamic form fields feature for communication plugins
  • MDL-77252 - Add banners to indicate room creation status to teachers
  • MDL-78129 - Allow teachers, managers and admins to moderate their courses' Matrix rooms
  • MDL-77917 - Allow versioned APIs for clients in Matrix provider
  • LTI external tools - Improve configuration and management in courses:
  • MDL-78575 - Centralised page to view and manage preconfigured LTI external tools in a course
  • MDL-78909 - Enable setting whether a preconfigured tool appears in the activity chooser in a course
  • MDL-78916 - Simplify the creation of an LTI external tool activity in a course
  • MDL-78576 - Improve deletion of course preconfigured LTI tools
  • Multi-factor Authentication:
  • MDL-78509 - MFA in core
  • MDL-78534 - Improve 2nd factor verify flow
  • MDL-79051 - Improve email template
  • MoodleNet integration - Phase 2:
  • MDL-75318 - Allow teachers to share courses to MoodleNet (all activities)
  • MDL-78267 - Add ability for teachers to customise courses shared to MoodleNet
  • MDL-75502 - Implement share progress page for content shared to MoodleNet
  • MDL-77296 - Record MoodleNet share progress data in a consumable format
  • Default site completion criteria settings:
  • MDL-78528 - Redesign the Default activity completion page
  • MDL-78517 - Homogenise the course completion conditions
  • MDL-78531 - Create a new 'Courses > Default settings' section in Site administration
  • MDL-78530 - Consider the default site completion settings during activity creation
  • MDL-78527 - Improve the completion conditions form
  • MDL-78633 - Use tertiary navigation selector in Course completion settings
  • MDL-79093 - Order activities by display name in Default activity completion
  • TinyMCE 6:
  • MDL-75268 - Create TinyMCE Premium plugins integration
  • MDL-78613 - Add source code formatting and styling
  • MDL-75963 - Add "Code highlighter" filter to display coding style properly
  • MDL-77979 - TinyMCE tool for preventing auto-linking
  • MDL-79066 - Add fullscreen button
  • BigBlueButton:
  • MDL-76710 - Add support for BigBlueButton Subplugins
  • MDL-78062 - Add backup support for BigBlueButton Subplugins
  • MDL-78960 - BigBlueButton Subplugin : allow action_url_addons to know about the instance
  • Quiz and questions:
  • MDL-76629 - Add sticky student name column in Quiz results table
  • MDL-74054 - Give teachers more flexibility to customise their own view of the question bank
  • MDL-72321 - Better searching/filtering in the question bank, so more flexible randomisation in quizzes
  • MDL-77218 - Quiz/questions preview: explanatory text that preview settings only affect the preview
  • MDL-77564 - Quiz display options: make it possible to completely hide the grade information
  • MDL-77127 - Allow students to hide the timer in a timed quiz
  • MDL-77745 - Anywhere a teacher views questions, display version information
  • MDL-78823 - Implement qbank plugin enabled/disabled events
  • MDL-77872 - Increase the width of Quiz editing page to improve usability
  • Report builder:
  • MDL-78117 - Create a custom report filter on context level
  • MDL-76471 - Create a report builder filter for "enrolment name"
  • MDL-76900 - Separate course participant enrol/role elements to new report entities
  • MDL-78879 - Support "not" / inversion of category conditions in report builder
  • MDL-75810 - Add tag support to badges custom report source
  • MDL-76902 - Create "Course categories" custom report source
  • MDL-78755 - Course participants report source should show active enrolments by default
  • MDL-77700 - Include user in custom report for comments on blog entries
  • MDL-76295 - Implement default report sorting in all report sources
  • MDL-78835 - Include custom fields in report group/grouping entities
  • MDL-78741 - Allow reporting/filtering on context path and parent
  • MDL-77532 - Include custom fields in cohort report entity
  • MDL-77061 - Add search and filter function in Manage Badges page
  • MDL-78532 - Create a new Web Service to retrieve system reports (core_reportbuilder_retrieve_system_report)
  • MDL-77067 - Indicate where report audiences are used in schedules
  • MDL-77614 - Reports shouldn't allow adding new entities whose name was already added
  • Content bank and H5P:
  • MDL-76338 - Enable content to be copied in content bank
  • MDL-77667 - Display full course name in content bank for selection
  • MDL-74773 - Contentbank: add notification when updating
  • Accessibility improvements:
  • MDL-75762 - Retain course page position when pressing back button from activity/resource
  • MDL-74869 - Activity icon colours should be SCSS variables so they are easy to override
  • Usability improvements:
  • MDL-71212 - Add course kebab menu with 'Collapse all' and 'Expand all' options to course index
  • MDL-78474 - Enable users to personalise the name for the resource "Text and media area"
  • MDL-76203 - Add support for BDI tag in HTML Purifier
  • MDL-74679 - Allow students to send Q&A forum post notifications with no editing-time delay
  • MDL-77793 - Remove the legacy theme selector
  • MDL-63759 - Replace geoIP lookup with openstreetmap
  • MDL-76982 - Add floating previous/next buttons to navigate book chapters
  • MDL-73464 - Focus on chapter content when navigating to next/previous Book chapter
  • MDL-76270 - Enable/disable group messaging in bulk
  • MDL-78184 - Improve user flow for connecting to a open badges backpack
  • MDL-44190 - Select current course by default when restoring a single activity from within a course or activity
  • MDL-78630 - A notification should be displayed when a user's account is locked/unlocked
  • MDL-78579 - Glossary should display number of entries pending approval
  • MDL-78503 - Web service tokens: Add a Last Access column at the table view
  • MDL-79042 - MathJax: Notify when we finish rendering all the equations
  • Other Highlights:
  • Functional changes:
  • MDL-48762 - Restrict access to course based on start and end date
  • MDL-40084 - Export related files in database activity export
  • MDL-73325 - Enable support for tagging badges
  • MDL-45452 - Completion report: Date format for "Excel-compatible format" CSV export updated to use Excel compatible format
  • MDL-75802 - A (teacher) user should not be able to un-enrol themselves via bulk un-enrolment
  • MDL-67186 - Add custom fields to groups and groupings
  • MDL-73839 - Allow using cohort enrolment when uploading course via CSV
  • MDL-78972 - Update 'Delete' colour in activity action menu
  • MDL-78341 - Improve the progress bar rendering to re-align with bootstrap
  • MDL-78175 - Move role renaming settings to a participant -> enrolments page
  • For administrators:
  • MDL-69489 - Enable Admins to restrict LTI Tools to specific Categories
  • MDL-77443 - Event Monitor: Course and activity name variables for event monitoring rules
  • MDL-78993 - Remove the $CFG->svgicons setting
  • MDL-67529 - GDPR: Option to filter which courses are included in data requests
  • MDL-78312 - User selectors: add an 'exact match only' option
  • MDL-77260 - Make it easier to find a specific component in event monitoring tool
  • MDL-78468 - Remove the legacy theme settings enabledevicedetection and devicedetectregex
  • MDL-79090 - Enable and disable scheduled tasks from the CLI
  • MDL-71421 - Move php-sodium recommendation back to requirement
  • MDL-78132 - Improve the workflow for creating badge backpack
  • MDL-76104 - Add Moodle filters support to user tours
  • MDL-78019 - Log every time a user deletes a file from the draft area
  • Mobile:
  • MDL-79242 - Improve the UX for first time users of the Android app via the Google Play install referrer API
  • MDL-74263 - Enable guest access with password support on the app
  • Performance:
  • MDL-46279 - Refactor SCORM database schema to improve performance
  • MDL-78212 - Allow MySQL database driver to set MySQL options for MYSQLI_CLIENT_COMPRESS
  • MDL-77797 - Make LaTeX files cached public immutable so can be served by a CDN
  • Security improvements:
  • MDL-54704 - SSL support for connection to Postgres and MySQL Database
  • MDL-67390 - Update password hashing to SHA-512
  • MDL-72622 - Support TLS connections for Redis
  • MDL-76656 - Web service tokens should be read-once
  • MDL-50160 - HTTP only cookies (cookiehttponly) default set to on and UI setting removed
  • MDL-67774 - Specify password peppers in config.php
  • MDL-53368 - Captcha available on login page
  • MDL-69958 - Support /.well-known/password-change requests from password managers
  • MDL-78801 - Add Auto logout settings for the mobile app
  • MDL-78698 - Deprecate random_bytes_emulate function
  • MDL-78571 - Media: Allow Vimeo do not track option
  • MDL-62401 - Embed YouTube videos with nocookie extension
  • MDL-75372 - Add logging for URLs which fail the cURL security helper blocking
  • For developers:
  • MDL-76405 - Prepare Moodle for PHP 8.2
  • MDL-74954 - Hooks as replacement for some one-to-many lib.php callbacks based on PSR-14
  • MDL-79088 - Create hooks for adding items to the site primary navigation
  • MDL-79338 - Add support for hook callback redirection in tests
  • MDL-79144 - Allow hooks to define tags
  • MDL-77863 - Convert hard coded colours to use variables to make theme customisation easier
  • MDL-43195 - New Creative Commons Licenses version 4
  • MDL-32278 - Lib: improve print_object to handle recursion, produce prettier output
  • MDL-78109 - Cache: Remove harmful requirelockingwrite/requirelockingread options
  • MDL-77353 - Create generic core_user functions for generating and displaying user details
  • MDL-78316 - Convert IconSystem to ESM
  • MDL-74301 - Upgrade Eslint and audit rules
  • MDL-78467 - Cache: Improve cache locking API
  • MDL-77991 - Create a new generic select and search style element
  • MDL-78266 - Break core/templates into smaller, constituent parts
  • MDL-78884 - Remove sized files for MIME icons and update them with new SVG files
  • MDL-79039 - MathJax: Rewrite old JavaScript to AMD module
  • MDL-78934 - Move from (archived) Goutte to BrowserKit
  • MDL-67271 - Add missing SVG files for FontAwesome images
  • MDL-79031 - Add a JavaScript event for filters to trigger when they have finished rendering
  • MDL-78306 - Convert core/modal and remaining legacy uses to ESM
  • Web service additions and updates:
  • MDL-74570 - New web service core_badges_get_user_badge
  • MDL-74568 - New web service mod_chat_view_sessions
  • MDL-78844 - New web service to check access to a system report
  • MDL-56020 - New Web Services for global search
  • Deprecations:
  • MDL-61165 - Remove support for Legacy cron
  • MDL-78561 - Deprecate grade_helper:get_lang_string method
  • MDL-77174 - Deprecate moodle-core-notification-confirm
  • MDL-79134 - Deprecate MD5 for included user passwords in Backup
  • MDL-79313 - Deprecate unused calendar_top_controls()
  • MDL-78328 - Deprecate forum_print_discussion_header
  • MDL-71067 - Final deprecation of whitelist properties in coverage_info
  • MDL-69530 - Final deprecation of core_h5pfile_storage::EDITOR_FILEAREA constant
  • MDL-78012 - Final deprecation of badge backpack methods from 3.11
  • MDL-71183 - Final deprecation of core_course_renderer::course_section_cm_completion()
  • MDL-71196 - Final deprecation of *_get_completion_state() callbacks
  • MDL-71331 - Final deprecation of course_section_add_cm_control_nonajax()
  • MDL-71494 - Final deprecation of the $extradetails parameter in mod_feedbackoutputsummary constructor
  • Component API updates:
  • admin/tool/behat/upgrade.txt
  • admin/tool/dataprivacy/upgrade.txt
  • admin/upgrade.txt
  • availability/upgrade.txt
  • backup/upgrade.txt
  • badges/upgrade.txt
  • cache/upgrade.txt
  • calendar/upgrade.txt
  • communication/provider/upgrade.txt
  • communication/upgrade.txt
  • completion/upgrade.txt
  • course/format/upgrade.txt
  • course/upgrade.txt
  • customfield/upgrade.txt
  • enrol/upgrade.txt
  • filter/upgrade.txt
  • grade/report/upgrade.txt
  • grade/upgrade.txt
  • group/upgrade.txt
  • h5p/upgrade.txt
  • lib/form/upgrade.txt
  • lib/upgrade.txt
  • lib/xapi/upgrade.txt
  • mod/assign/upgrade.txt
  • mod/bigbluebuttonbn/upgrade.txt
  • mod/data/upgrade.txt
  • mod/feedback/upgrade.txt
  • mod/forum/upgrade.txt
  • mod/imscp/upgrade.txt
  • mod/lti/upgrade.txt
  • mod/quiz/report/statistics/upgrade.txt
  • mod/quiz/upgrade.txt
  • mod/resource/upgrade.txt
  • mod/scorm/upgrade.txt
  • question/bank/upgrade.txt
  • question/type/calculated/upgrade.txt
  • question/upgrade.txt
  • reportbuilder/upgrade.txt
  • repository/upgrade.txt
  • theme/boost/upgrade.txt
  • theme/upgrade.txt
  • user/upgrade.txt

New in Moodle 4.2 (May 29, 2023)

  • Major UX improvements:
  • Gradebook:
  • MDL-77030 - Display feedback in the Grader report
  • MDL-76149 - Implement "records per page" selector in the Grader report
  • MDL-75274 - Ability to collapse/expand items (columns) in the Grader report
  • MDL-76147 - Implement dropdown menu for the header actions in the Grader report table
  • MDL-77029 - Revamp the column sorting in the Grader report
  • MDL-77032 - Collapsible grade categories in the Gradebook setup
  • MDL-76143 - Implement search functionality in the Grader report
  • MDL-77033 - Indicators when the state of a grade item or category is changed in the Gradebook setup
  • MDL-76150 - General styling improvements to the Grader report
  • MDL-76146 - Move grade actions (hide, show, lock, grade analysis) to dropdown menu in the Grader report table
  • MDL-77031 - General styling improvements to the Gradebook setup
  • MDL-76139 - Implement a new group selector in the Grader report
  • Database activity:
  • MDL-76360 - Improve the look and feel of the Database fields page
  • MDL-76357 - Make sticky footer more prominent and noticeable
  • MDL-75498 - Add ##otherfields##, [[FIELD#name]] and [[FIELD#description]] tags to the database templates
  • MDL-75337 - Change Delete buttons' style on Database to 'danger' button
  • Course hierarchy:
  • MDL-76990 - Recover move right/left functionality removed/hidden for 4.0
  • MDL-76997 - Add an option for admins to reset indentation for courses on the site
  • MDL-76992 - Apply indentation on the course index
  • MDL-76991 - New course format setting to enable/disable course indentation in Weeks and Topics
  • Other Major features:
  • TinyMCE 6 improvements and setting as the default editor:
  • MDL-76866 - Make TinyMCE the default editor
  • MDL-77308 - Remove the legacy TinyMCE editor from core (editor_tinymce)
  • MDL-76867 - Allow Moodle TinyMCE plugins to be disabled
  • MDL-76520 - Add a TinyMCE link plugin
  • MoodleNet integration - phase 1:
  • MDL-75316 - Implement LMS foundation for sharing content to MoodleNet (share activities)
  • MDL-75650 - Add OAuth 2.0 Authorization Server Metadata support to issuers and create MoodleNet issuer
  • Bulk course activity editing:
  • MDL-76783 - The basic bulk section and activity selection UI
  • MDL-76850 - Add bulk duplicate activity action
  • MDL-76893 - Add bulk activity move action
  • MDL-76848 - Add bulk availability edit action
  • MDL-76894 - Add bulk section move
  • MDL-76895 - Add fast selections to the bulk editing
  • MDL-76851 - Add bulk delete action
  • MDL-74989 - Migrate delete activity course tools to the new reactive actions
  • MDL-74987 - Migrate duplicate activity course tools to the new reactive actions
  • BigBlueButton:
  • MDL-74664 - Option to restrict recording formats viewable by everyone
  • MDL-75753 - Add support for SHA256 (and longer) to BigBlueButton
  • MDL-76551 - Option to show profile pictures of participants in BBB sessions
  • MDL-75334 - Create a set of test courses which include BigBlueButton activities
  • Quiz and questions:
  • MDL-35745 - There must be a way to get a "Never submitted" quiz attempt back to the "In progress" state
  • MDL-74609 - Quiz: allow the displayed question numbers to be customised
  • MDL-71261 - Quiz user override should only get enrolled users
  • Report builder:
  • MDL-77056 - Add relative date filter option to select dates before given period
  • MDL-74145 - Create API for report bulk actions
  • MDL-76154 - Add files to custom blog reporting
  • MDL-77062 - Add more filters/conditions fields in course_completion entity
  • MDL-77201 - Allow report column callbacks to define how aggregated data is displayed
  • MDL-76479 - Custom report time filter should support last/current/next hour
  • MDL-76933 - Create "User badges" custom report source
  • Content bank and H5P:
  • MDL-67789 - Add support to "Save content state" in mod_h5pactivity
  • MDL-77049 - Customise H5P styles via Raw SCSS theme setting
  • Assignment:
  • MDL-45301 - Option to set PDF font in course settings for generated PDF files
  • MDL-55929 - Messaging from Assignment
  • Usability improvements:
  • MDL-75596 - Adding new activities should be possible anywhere in a section
  • MDL-62839 - Deselect "Accept grades from this tool" by default for new LTI instances
  • MDL-75908 - Links added in the navbar should receive focus/active behaviour (custommenuitems) on the Boost theme
  • MDL-31235 - Support text format for marking guide criteria and levels
  • MDL-40600 - Add ability to duplicate a course section
  • MDL-74465 - Display block configuration form in a popup
  • MDL-68347 - Add a way to find which users were created during course restore process
  • MDL-76377 - Improve links to moodle.org / moodle.academy (course creators/teachers)
  • MDL-76418 - Have a way to get the permalink to a course section
  • Other Highlights:
  • Functional changes:
  • MDL-74272 - Reassess the inclusion of the plugin name on the course page
  • MDL-77291 - Show text and media elements (aka labels) in the course index also in non edit mode
  • MDL-75594 - Change course module creation to support parameter for inserting modules at any place in the section
  • MDL-77387 - Copy course UI - enrol a user such as editingteacher in the copied course
  • MDL-76312 - Subscribers list should ordered by name
  • MDL-76386 - Provide option to have group count before names when adding users to group
  • MDL-77130 - Add cohort custom fields functionality
  • MDL-70226 - Default tab in the activity chooser should be recommended activities
  • For administrators:
  • MDL-68093 - Membership in some groups should be hidden from some roles for FERPA/ADA compliance
  • MDL-77406 - Log every time a user adds a file to a draft area
  • MDL-73503 - Add filtering by section to report_progress
  • MDL-65471 - Optionally allow CLI PHP upgrade.php --no-outage
  • MDL-77370 - New setting for the "Services and support" URL
  • MDL-74874 - Mark readonly sessions as no longer experimental
  • MDL-61789 - Allow to choose custom profile fields from OAuth 2 field mappings
  • MDL-70975 - Add new options to admin/cli/adhoc_task.php and from admin web UI
  • MDL-77385 - CLI Script to enable or disable the emailstop flag
  • MDL-64153 - Allow administrator to override sqlsrv connection options
  • MDL-72775 - Add a new status check for the cron task API to watch very long running tasks
  • Performance:
  • MDL-70687 - Redis session lock expiration should default shorter than session timeout
  • MDL-77232 - Optimize LTI 1.3 gradesync task
  • MDL-72559 - The core plugin_functions cache should be allowed to be stored locally
  • MDL-77186 - Add a keep-alive setting to admin/cli/cron.php
  • MDL-76129 - Improve upgrade/install performance relating to capabilities and settings
  • MDL-75667 - Improve speed of admin/blocks.php by combining db counts
  • Security improvements:
  • MDL-76722 - Add encrypted mobile notifications support (also see MDL-77893)
  • MDL-76755 - Improve default coverage of "cURL blocked hosts list" by including 127.0.0.0/8
  • For developers:
  • MDL-76135 - Import the Guzzle library in LMS
  • MDL-76989 - Upgrade Font Awesome to 6.3.0
  • MDL-76219 - Switch from Box/Spout to OpenSpout/OpenSpout
  • MDL-73144 - Allow use of dartsass for scss compilation
  • MDL-76134 - Build a reusable filter output component
  • MDL-71096 - All APIs should be listed in code
  • MDL-77714 - Remove Travis support from core
  • MDL-72609 - Convert pendingPromise to native Promise
  • MDL-76583 - Move lib/externallib.php to namespaced classes and fix coding style, etc
  • Migration away from YUI3:
  • MDL-77172 - Migrate moodle-tool_capability-search to ESM
  • MDL-77171 - Migrate moodle-core-tooltip and moodle-core-popuphelp to ESM
  • MDL-77009 - Replace moodle-tool_monitor-dropdown with ESM or generic
  • MDL-58615 - Remove YUI CDN support
  • MDL-77007 - Remove auth-passwordunmask YUI module
  • MDL-69164 - Convert question/qengine.js to AMD modules
  • Web service additions and updates:
  • MDL-77643 - Return via tool_mobile_get_config site location settings to properly display the user time zone in the app
  • Core plugins removed:
  • MDL-72350 - Remove Assignment 2.2 (mod_assignment) from core
  • MDL-77163 - Remove cachestore_mongodb from core
  • MDL-77161 - Remove cachestore_memcached from core
  • Deprecations:
  • MDL-52805 - Final deprecation of legacy log store
  • MDL-76898 - Quiz: final deprecations for things deprecated before 3.10
  • Component API updates:
  • admin/tool/generator/upgrade.txt
  • admin/tool/lp/upgrade.txt
  • admin/tool/mobile/upgrade.txt
  • admin/upgrade.txt
  • analytics/upgrade.txt
  • auth/upgrade.txt
  • availability/upgrade.txt
  • blocks/upgrade.txt
  • cache/upgrade.txt
  • cohort/upgrade.txt
  • comment/upgrade.txt
  • course/format/upgrade.txt
  • course/upgrade.txt
  • customfield/upgrade.txt
  • enrol/upgrade.txt
  • grade/report/upgrade.txt
  • group/upgrade.txt
  • lib/editor/tinymce/upgrade.txt
  • lib/editor/tiny/plugins/accessibilitychecker/upgrade.txt
  • lib/editor/tiny/upgrade.txt
  • lib/form/upgrade.txt
  • lib/upgrade.txt
  • lib/xapi/upgrade.txt
  • message/upgrade.txt
  • mod/assignment/type/upgrade.txt
  • mod/assign/upgrade.txt
  • mod/bigbluebuttonbn/upgrade.txt
  • mod/data/upgrade.txt
  • mod/feedback/upgrade.txt
  • mod/h5pactivity/upgrade.txt
  • mod/lti/upgrade.txt
  • mod/quiz/accessrule/upgrade.txt
  • mod/quiz/report/upgrade.txt
  • mod/quiz/upgrade.txt
  • mod/upgrade.txt
  • mod/workshop/upgrade.txt
  • plagiarism/upgrade.txt
  • question/engine/upgrade.txt
  • question/upgrade.txt
  • reportbuilder/upgrade.txt
  • report/upgrade.txt
  • search/upgrade.txt
  • theme/upgrade.txt
  • user/upgrade.txt
  • webservice/upgrade.txt

New in Moodle 4.1 (Nov 29, 2022)

  • Major UX improvements:
  • Gradebook:
  • MDL-75513 - Implement "User report" functionality
  • MDL-75423 - Implement "Singleview report" functionality
  • MDL-75837 - Replace the modals with dropdowns in the search widgets in the grade reports
  • MDL-75156 - Create a new "Grades summary" report in gradebook
  • MDL-75155 - Update import/export pages within the gradebook
  • MDL-75362 - Implement gradebook zero states for user & singleview reports
  • MDL-75157 - Improve the styling of the tertiary navigation on the gradebook pages
  • MDL-75214 - Secondary navigation bar changes
  • MDL-69275 - User can open external tool submission from the gradebook
  • Database activity:
  • MDL-75276 - Update default layouts for the new database templates
  • MDL-75252 - Improve Image gallery preset templates
  • MDL-75335 - Zero state on fields and templates when there is no field created on the Database
  • MDL-75492 - Improve mapping workflow when using a preset
  • MDL-76006 - Improve zero state images for database activity
  • MDL-75410 - Reset all templates in one go
  • MDL-75188 - Move "Import" preset form to a modal
  • MDL-75289 - Improve navigation in database activity
  • MDL-75401 - Add sticky footer to the mod_data pages
  • MDL-75412 - Create a new preset for "Journal"
  • MDL-75149 - Create a new preview page for Database activity Presets
  • MDL-75275 - Create new dropdown kebab menu tag with all the actions for the "List view" and "Single view" templates
  • MDL-75142 - Add description to Database activity presets
  • MDL-75234 - Use default templates in mod_data if the templates are not created
  • MDL-75140 - Skip fields mappings form if there are not fields created
  • MDL-75146 - Create a new ##id## tag to use in Database activity templates
  • MDL-75148 - Improve Presets management list page for Database activity
  • MDL-75137 - Redesign the zero state page for Database activity module
  • MDL-75187 - Move "Delete" preset confirmation to a modal
  • MDL-75411 - Create a new preset for "Proposals"
  • MDL-75413 - Create a new preset for "Resources"
  • Other usability and user experience improvements:
  • MDL-74716 - Add a link to Request a course to My courses page
  • MDL-61401 - Workshop: add "initials bars" UI to make it easier to find students in large groups
  • MDL-72531 - The Label resource should have an easier to understand name (Text and media area)
  • MDL-74608 - Allow the teacher to force the language for an activity, as well as at course level
  • MDL-74327 - Make location field in calendar event clickable if it is a URL
  • MDL-75713 - Calendar page to sort courses alphabetically by name
  • MDL-74314 - Grade Letters - Support additional letters
  • MDL-74635 - Add select All/None functionality to Manage tags page
  • MDL-69905 - Improve order of activities in the Recent Activity block
  • MDL-74513 - The "Timeline" and "Recently accessed items" blocks should display objects the same way
  • Other Major features:
  • TinyMCE 6 editor integration:
  • MDL-75966 - Initial TinyMCE 6 integration
  • MDL-75331 - Configure available headings and formatting options
  • MDL-75258 - Create Media plugin with Image editing
  • MDL-75328 - Create Video insertion/editing functionality in the tiny_media plugin
  • MDL-75260 - Create Media manager functionality in the tiny_media plugin
  • MDL-75261 - Create H5P plugin
  • MDL-75262 - Create Accessibility checker
  • MDL-75269 - Create Equation editor plugin
  • MDL-75263 - Create Draft save/restore integration
  • MDL-75940 - Allow Tiny branding to be disabled by admin
  • BigBlueButton:
  • MDL-74638 - Provide a way for teachers to invite external participants (guests)
  • MDL-74545 - Add a parameter to set the polling value for the live session/wait for moderator
  • MDL-75383 - Recordings synchronisation: warn user when cron is disabled or not working
  • MDL-74669 - Pick BBB UI language from Moodle user profile language instead of preferred browser language
  • MDL-73228 - Close meetings when removing BBB activity
  • Quiz, question bank and questions:
  • MDL-72509 - Move the participants filter UI from within core_user to a re-usable API
  • MDL-72957 - Question bank: add a new "Modified by" column
  • MDL-74035 - In-place edit of the question name in the qbank view
  • MDL-75306 - Question bank: add a last-used column
  • MDL-74041 - Question bank view - page size should be 100
  • MDL-72188 - Add JavaScript API in Safe Exam Browser (SEB) integration to query the keys (BEK/CK)
  • MDL-74996 - Add a warning if quiz is being submitted with unanswered questions
  • MDL-75818 - Qtype_multichoice: Add a new site-wide default for "Show standard instruction"
  • MDL-73481 - True/False questions: remove Standard Instructions (or allow users to hide them)
  • MDL-74495 - Show correct answer and feedback when overriding grade
  • Assignment:
  • MDL-71468 - Convert the "Prepare submissions for annotation" scheduled task into adhoc tasks
  • MDL-75295 - Produce all mod_assign editpdf images from pages in a single shell call instead of per page
  • MDL-64231 - Improve Group assignment submission exporting
  • MDL-74234 - Implement "treset" parameter on the assignment grading page
  • Report builder:
  • New reports:
  • MDL-73141 - Convert cohort listing reports to Report builder
  • MDL-75349 - Create "Groups" custom report source
  • MDL-75352 - Create "Comments" custom report source
  • MDL-73988 - Create "Badges" custom report source
  • MDL-75166 - Create "Blogs" custom report source
  • MDL-75165 - Create "Notes" custom report source
  • MDL-75535 - Create "Files" custom report source
  • MDL-75245 - Create "Tags" custom report source
  • MDL-75191 - Create "Task logs" custom report source
  • Other report builder improvements:
  • MDL-74364 - Custom report source for course participants
  • MDL-75525 - Allow to easily specify default sortorder in report builder datasources
  • MDL-75639 - Add "In the future" and "In the past" options to date filter
  • MDL-75235 - Make it easier for reports to provide custom filter form implementations
  • MDL-75135 - Add "Course category with link" column to course category entity
  • MDL-74720 - Add an option to allow admins to limit the number of report builder custom reports
  • MDL-74453 - Add authentication method filter to user entity
  • MDL-73047 - Add "Account creation date" user report builder field
  • MDL-73916 - Allow to set default condition values on datasources
  • MDL-73726 - Improve dataformat API
  • MDL-74165 - Provide easier method for generating multiple alias/params quickly
  • MDL-75333 - Custom report audience for site administrators
  • Other Highlights:
  • Functional changes:
  • MDL-22570 - Export groups/grouping to excel/ods/text files
  • MDL-58266 - "Student must view this activity to complete it" should be written to database
  • MDL-56567 - Add option to allow a competency rating to be overwritten by activity completion
  • MDL-74061 - Reports - Course completion report - Adding time in completion progress details
  • MDL-72283 - Allow customisation of Redis session handler errors
  • MDL-74967 - Use Group API in calendar to fetch users' groups/overrides so changes are reflected
  • MDL-73236 - Allow myprofile block to display user ID number
  • MDL-12643 - Capability moodle/course:bulkmessaging should only control bulk messaging and not other bulk actions
  • MDL-74785 - Include SCORM content package in global search index
  • For administrators:
  • MDL-61921 - Support XOAUTH2 for outgoing/incoming mail
  • MDL-66453 - Bulk assign roles in course categories when using Upload users
  • MDL-74643 - Contact site support - More granular control over access
  • MDL-65061 - Implement suspend on external unenrol option for ims enterprise enrolment method
  • MDL-72458 - Allow "timezone" to be displayed on a users profile
  • MDL-75751 - Upgrade: Improve upgrade/install performance logging
  • MDL-74592 - Add ability to match users by email when upload users from csv file
  • MDL-74171 - In the "Manage question bank plugins" site administration page, add the ability to sort alphabetically
  • MDL-74862 - Allow to disable QR login IP restriction checks
  • MDL-74435 - Admin user search should also search without whitespace
  • MDL-75014 - New callback / hook "xxx_before_session_start"
  • MDL-74991 - Implement a script to delete courses via CLI
  • MDL-73122 - Auth: Add test settings for OAuth2
  • MDL-73767 - OAuth2 - Add Clever SSO as an SSO provider
  • Mobile:
  • MDL-75099 - Add new "Disabled feature" within Mobile app settings for the new "Contact site support" feature introduced in app v4.1
  • Performance:
  • MDL-67648 - Cron task manager quality of service (version 3)
  • MDL-72948 - Reduce data fetched by message_search_users
  • MDL-72723 - Change backup_cron_automated_helper::course_is_modified so it finds one course modification instead of counting them all
  • MDL-73727 - Improve get_conversions_for_file query performance on large sites
  • MDL-70368 - Improve performance of get_imageinfo
  • Security improvements:
  • MDL-72486 - Add developer options to warn when making unsafe unproxied requests
  • MDL-72592 - Add lastlogin date to myprofile-block
  • For developers:
  • MDL-75218 - Add a Favicon setting
  • MDL-74733 - Navigation customisation within plugins should use "navigation" namespace
  • MDL-75256 - Move get_name from scheduled tasks up to tasks so adhoc tasks have a name too
  • MDL-74596 - Add a new option to hide search bar in admin pages
  • MDL-74697 - Support additional metadata in thirdpartylibs.xml
  • MDL-75100 - Migrate away from use of strftime and friends
  • MDL-72184 - Create DML method "cast int to char"
  • MDL-73933 - Course editor: Migrate hide, show and make available course tools to the new reactive actions
  • MDL-55580 - Process for deprecating a capability
  • XMLRPC removal:
  • MDL-76052 - Remove webservice_xmlrpc from core
  • MDL-76055 - Replace xmlrpc extension in MNet by php library
  • Web service additions and updates:
  • MDL-74956 - New Web Service core_reportbuilder_retrieve_report
  • MDL-74955 - New Web Service core_reportbuilder_reports_list
  • MDL-74957 - New Web Service core_reportbuilder_reports_view
  • Deprecations:
  • MDL-63594 - Final deprecation of cron_run_single_task() function
  • MDL-68011 - Final deprecation of get_module_metadata + get_shortcuts
  • MDL-68868 - Final deprecation of participants unified filter
  • MDL-69655 - Final deprecation of admin_setting_managelicenses
  • MDL-75456 - Final deprecation of get_node_type() and get_field() in behat_field_manager
  • MDL-71062 - Deprecation of print_error()
  • MDL-67347 - Remove strings deprecated in 3.9
  • Component API updates:
  • admin/tool/dataprivacy/upgrade.txt
  • admin/tool/mobile/upgrade.txt
  • admin/upgrade.txt
  • backup/upgrade.txt
  • cache/upgrade.txt
  • calendar/upgrade.txt
  • course/format/upgrade.txt
  • course/upgrade.txt
  • grade/upgrade.txt
  • lib/editor/atto/upgrade.txt
  • lib/upgrade.txt
  • mod/assign/upgrade.txt
  • mod/bigbluebuttonbn/upgrade.txt
  • mod/data/upgrade.txt
  • mod/forum/upgrade.txt
  • mod/h5pactivity/upgrade.txt
  • mod/lti/service/gradebookservices/upgrade.txt
  • mod/lti/source/upgrade.txt
  • mod/lti/upgrade.txt
  • mod/quiz/upgrade.txt
  • mod/upgrade.txt
  • question/bank/upgrade.txt
  • question/type/upgrade.txt
  • question/upgrade.txt
  • reportbuilder/upgrade.txt
  • theme/upgrade.txt
  • user/upgrade.txt
  • webservice/upgrade.txt

New in Moodle 4.0.5 (Nov 14, 2022)

  • General fixes and improvements:
  • MDL-68437 - Whole forum grading shows suspended students
  • MDL-73624 - Chrome cannot download files when the filename in Content-Disposition contains a comma (e.g. quiz report download)
  • MDL-74762 - Statistics in the Moodle 4.0 question bank use many DB queries causing performance problems
  • MDL-74941 - Cannot edit 3.11 Calculated Multichoice questions in Moodle 4.0
  • MDL-27570 - Quiz time limit changes are not reflected in active quiz attempts without page refresh
  • MDL-66955 - Slow search in 'Search people and messages'
  • MDL-68943 - Converted PDF file does not update when submission file is overwritten
  • MDL-75173 - Course is marked as completed when conditions are not met for passing grade
  • MDL-61880 - Oauth2 field mappings are reset and endpoints lost when identity issuer settings saved
  • MDL-75065 - Database error when creating simple calculated question
  • MDL-71531 - Moodle file cache - excessive locking around cache reads
  • MDL-76011 - "Download all/selected submissions" imposes download date on the zipped files instead of retaining submission dates
  • MDL-75010 - Viewing images in email should not update last access
  • MDL-74201 - Content bank files used by reference not restored on other site
  • MDL-75766 - Adding indexes in h5p database table (backport of MDL-71129)
  • MDL-74965 - BigBlueButton students access error
  • MDL-75784 - Expand all/Collapse all button is not working when we have two more button in a page
  • MDL-76169 - Various behat fixes for Question
  • MDL-74468 - BigBlueButton Custom Completion Fixes
  • MDL-59458 - Sorting database module entries by certain fields shows no results
  • MDL-72490 - Restrict date/time: Show error if users picks incompatible date restrictions
  • MDL-75985 - Standardise HTML output when comparing editor values
  • MDL-76020 - Some items missing from footer in Classic theme
  • MDL-76113 - Legacy grade sync always fails for LTI 2.0 consumers
  • MDL-76170 - LTI legacy grade sync fails if member sync occurs before first user launch
  • MDL-76041 - Exception when on the Recording Only page in BigBlueButton
  • MDL-74315 - Filters dropdown with large amount of elements is not displayed correctly in report builder
  • MDL-75519 - Default configuration of "Users" report source should sort by fullname
  • MDL-76108 - Exception thrown when restoring 1.9 backup into current moodle
  • MDL-75192 - "Current week" condition in report builder always considers Monday as start of week
  • MDL-75848 - "Cannot read properties of null" error when using Atto editor
  • MDL-75558 - BigBlueButton displays alert banner when Forced Group Mode "No groups" enabled
  • MDL-75642 - Error deleting multiple (random) questions from quiz
  • MDL-75727 - Problem with regrade for quizzes where "each attempt builds on the last"
  • MDL-75889 - allowedemaildomains should be case insensitive
  • Accessibility improvements:
  • MDL-74887 - "Available, but hidden on course page" in Label
  • MDL-74814 - Some accessibility issues in the edit profile page
  • For developers:
  • MDL-75886 - Set editor for editor-specific tests
  • MDL-75887 - Provide way to set HTML Editor content regardless of the current editor
  • MDL-75783 - Add vscode jsconfig.json configuration
  • Security fixes:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.

New in Moodle 4.0.4 (Sep 12, 2022)

  • General fixes and improvements:
  • MDL-75092 - Links for selecting all/none checkboxes lost from backup/import/restore pages (Course reuse)
  • MDL-71662 - Add group-filter to H5P-activity attempts report
  • MDL-70480 - get_user_submission susceptible to race condition resulting in invalid DB state
  • MDL-75199 - BigBlueButton is a blocker in upgrade to 4.0
  • MDL-74770 - Grader report: Unable to sort using custom profile fields
  • MDL-74873 - Notification preferences should disable controls if user disabled all notifications before
  • MDL-73685 - Error on /admin/roles/admins.php if email removed from identity fields
  • MDL-74901 - extend_navigation_frontpage now relies on the user having course:update capabilites to view the secondary navigation
  • MDL-68717 - Upcoming events block doesn't remove completed activities
  • MDL-74969 - When short forms are disabled the sections headers change style
  • MDL-75311 - Error when send report schedules by schedule task manager
  • MDL-74749 - Import recording button shown when feature disabled in BigBlueButton
  • MDL-75040 - Course completion details page contains incorrect course navigation
  • Security fixes:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.

New in Moodle 4.0.3 (Sep 12, 2022)

  • General fixes and improvements:
  • MDL-62959 - Changing a course event to a user event results in an error
  • MDL-74947 - As Admin, when creating an external tool (LTI), "Shared secret" is truncated at < character
  • MDL-69251 - LTI enrol method wrongly unenrols users due to bad task internal state
  • MDL-68843 - LTI Tools don't get deleted when linked activity module is deleted from course
  • MDL-74681 - Reads directly after writes to a table are stale when using read replicas if the update takes too long
  • MDL-75386 - Editor stylesheets does not include stylesheets for subplugins
  • MDL-75083 - Login form double submission leads to invalid login
  • MDL-74768 - Change category for a question in bank affects quizzes using random questions
  • MDL-74492 - Atto editor wrongfully creates UL tags inside SVG
  • MDL-75205 - Resetting report filters need to include original parameters
  • MDL-75181 - Exception when both completion setting "student view" and custom settings are enabled
  • MDL-73215 - Undefined variable error when online text assignment submission deleted
  • MDL-74784 - Related system badges causing badge rendering issue
  • MDL-75185 - Custom report sources selection is not ordered consistently
  • MDL-74826 - Add new "Disabled feature" within Mobile app settings for the new Reports option introduced in 4.0
  • MDL-74282 - Outcomes report should not be available if outcomes are disabled
  • MDL-74964 - Page enrol/index.php should not have secondary navigation
  • MDL-74595 - Cannot navigate back to the main calendar page from import/export calendars page
  • MDL-72430 - Editing events results in changing the type of event and removing the Course option
  • MDL-56923 - Assignment, Add new criterion icon should be aligned to the right, in RTL mode (theme:boost)
  • Accessibility improvements:
  • MDL-74740 - Skip links not showing up on blocks drawer
  • MDL-74800 - HTML validator errors on course homepage
  • Security improvements:
  • MDL-75237 - Alternate implementation of MSA-22-0016 applied to fix a regression (Note: There was no new security risk addressed, however MDL-75237 still has access restricted to avoid revealing details of the original vulnerability)
  • Security fixes:
  • MSA-22-0021 - Upgrade Mustache to latest version (upstream)
  • MSA-22-0022 - CSRF risk in enabling/disabling installed H5P libraries

New in Moodle 4.0.2 (Jul 11, 2022)

  • General fixes and improvements:
  • MDL-68867 - Group override does not appear on user calendar
  • MDL-74632 - Cannot link to image in Atto
  • MDL-74752 - Question versioning: regrading does not work for all question types (including multiple choice)
  • MDL-69400 - Moodle Core Forum Due Dates not restoring on backup and restore
  • MDL-67966 - Error writing to database when adding example submission to Workshop
  • MDL-74449 - Error in gradebook with PHP 8.0
  • MDL-74764 - Activity is not in alphabetical order when the name is lowercase
  • MDL-69756 - Nextcloud error when moving/copying access controlled link file over existing file having the same name
  • MDL-72324 - Plugin incompatible check is backwards in upgradelib
  • MDL-74718 - All files from Nextcloud instance are not shown in Moodle
  • MDL-74533 - Activity completion calculating with old passing grade requirement when that completion condition is modified
  • MDL-74906 - Adding multiple LTI activities via content selection is failing silently when global search is enabled
  • MDL-74790 - Description for File resource not displayed if it only contains an image
  • MDL-73898 - Site participants listing page shows the guest user account
  • MDL-72555 - All activities are being created in frontpage when "Main menu" block is added to the frontpage
  • MDL-74597 - Incorrect URLs in the user menu for messages and calendar
  • MDL-74929 - Assignment overrides page gets hidden by the footer
  • MDL-74715 - Report builder UI not always responding
  • MDL-74358 - Error in availability code when importing activity from old course using PHP 8.0
  • MDL-74516 - Create a quiz with passing grade completion causing error
  • MDL-74577 - login_failed_count_since_success isn't counted correctly
  • MDL-74886 - Cast both value and units to int for configduration write_setting
  • MDL-74605 - Videojs lost the feature of adjusting playback rate in 4.0
  • MDL-73225 - Exception when BigBlueButton server does not respond
  • MDL-74505 - Cannot edit questions in question bank if you do not have the 'question/move' capability
  • MDL-74710 - BigBlueButton setting link is broken on manage activities page
  • Accessibility improvements:
  • MDL-74742 - Fix colour contrast issues on the course homepage
  • MDL-74812 - Accessibility issues found on assignment with rubrics
  • MDL-74802 - Notification close button does not have meaningful label
  • MDL-74701 - Notification popover elements are focusable even when hidden
  • MDL-74813 - Filepicker drag and drop gif animation lasts for more than 5 secs
  • MDL-74815 - Colour contrast issues on the site homepage
  • MDL-75055 - Notification alert close button is misaligned
  • MDL-72885 - Languages in language selection menu are missing lang attribute
  • MDL-74741 - Accessibility issues regarding the move block modal
  • For developers:
  • MDL-75084 - Add behat generators for blog entries
  • MDL-74613 - Add behat generators for grades grade
  • MDL-74674 - Add behat generator to create notification
  • MDL-74864 - Allow specifying forum discussion group in behat generators
  • MDL-74816 - Allow specifying default file's name in mod_resource generator
  • MDL-74548 - Course copy controllers can be instantiated in an invalid state
  • MDL-69939 - Remove use of 'true' and 'false' strings in db/services.php
  • Security fixes:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.

New in Moodle 4.0.1 (May 9, 2022)

  • General fixes and improvements:
  • MDL-74461 - Not always possible to easily navigate back to section from an activity page
  • MDL-74514 - BigbluebuttonBN is polling the BigblueButton server too often
  • MDL-74481 - LTI Advantage: Non-Editing Teacher has role Student
  • MDL-74478 - Awarded badge for activity completion, despite not receiving a passing grade
  • MDL-74450 - The course secondary navigation should be displayed in the site home settings page
  • MDL-74317 - Edit mode cannot be turned on/off when using other capabilities
  • MDL-74436 - Fatal error when importing "course" events from ics file
  • MDL-74427 - Coding error detected when deleting question category
  • Security fixes:
  • Details of any security issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.

New in Moodle 4.0 (Apr 19, 2022)

  • Major UX improvements:
  • Navigation improvements:
  • MDL-70208 - Implement frontend functionality for primary navigation
  • MDL-70207 - Implement backend functionality for primary navigation
  • MDL-70202 - Implement frontend functionality for secondary navigation
  • MDL-70198 - Implement backend functionality for secondary navigation
  • MDL-70196 - Create a module based navigation bar
  • MDL-72352 - Ensure that secondary navigation is backwards compatible
  • MDL-73462 - Course and category management secondary and tertiary navigation
  • MDL-71977 - Define the secondary navigation nodes that should be always displayed in the more menu in the module context
  • MDL-71901 - Allow plugins to define their own secondary nav ordering
  • MDL-70844 - Update the secondary navigation view to send site administration information in tab form
  • MDL-72396 - Allow easy setting of the active tab for navigation views
  • MDL-71912 - Implement tertiary navigation for plugins (also see MDL-71913, MDL-71914 and MDL-71914)
  • MDL-73863 - Tertiary navigation in course completion
  • MDL-72875 - Add tertiary navigation to the participants page
  • MDL-72904 - Add tertiary navigation to the badges pages
  • MDL-72873 - Add tertiary navigation to the gradebook
  • MDL-72094 - Update the course reports page styling and functionality
  • MDL-71083 - Move the user menu in the top bar into the primary navigation menu in the mobile view
  • MDL-73393 - Ensure that existing third party themes still work with latest navigation changes
  • MDL-71943 - Dynamic (AJAX) tabs in Moodle LMS
  • MDL-72090 - Convert course admin pages from link farms to dropdowns
  • MDL-72413 - Move the activity modules title, description, and activity completion into a standard module API
  • MDL-72736 - Remove section navigation on one section per page
  • MDL-72834 - Move the calendar link into the user menu
  • MDL-72450 - Remove the next and previous activity links from all activity modules in Boost
  • MDL-71148 - Combine both the custom menu & primary navigation renderers
  • MDL-71683 - Update language menu to move from the top navigation into the user menu when logged in
  • MDL-72005 - Update the context_header in Boost to move the breadcrumb to the top
  • Course index:
  • MDL-71209 - Create the new course index list
  • MDL-72660 - Add activity completion indicators to the course index
  • MDL-71228 - Implement drag and drop option for sections and activities in the course index
  • MDL-71211 - Keep the status of the course index collapsed and expanded sections per user and course
  • MDL-71795 - Course index on activity view page
  • MDL-71828 - Implement section links' behaviour in course index
  • MDL-71664 - Enable drag & drop from course index to course content and vice versa
  • MDL-72463 - Add 'highlighted' label to course index
  • MDL-71727 - Sync course index and course content when an element is dragged
  • MDL-72897 - Mark the current section in the course index
  • MDL-73340 - Open course index by default first time a user access the course
  • MDL-73310 - Show the course index on all pages within a course
  • Course experience:
  • MDL-71037 - Sections are now collapsible for Topics and Weekly course formats
  • MDL-71691 - Created a new activity UI component
  • MDL-71689 - Improvements to add activity and add section design
  • MDL-71663 - Created a new "move" option in the sections and activity cog menu in the course editor
  • MDL-71779 - Made 'Add a new topic/week' option client side on Topics and Weekly formats
  • MDL-72311 - Proceed straight to course content when creating a new course
  • MDL-71863 - Created core_courseformat subsystem
  • MDL-72578 - Moved activity UI component to output classes and templates
  • MDL-73343 - New quick access to create a new course from My courses page when there is no course available
  • My Courses page and overview block:
  • MDL-70801 - Implement "My courses" page
  • MDL-58579 - Allow searching / filtering of courses in myoverview
  • MDL-73231 - Provide option of having My courses as defaulthomepage
  • Timeline block:
  • MDL-72276 - Update timeline block dropdowns to display current selection
  • MDL-72277 - Improve the layout and usability of the items in the timeline block
  • MDL-73068 - Only display courses in the timeline block if they contain events
  • MDL-72295 - Add text search to the timeline block
  • MDL-72594 - Improve displaying of overdue items in the timeline block
  • MDL-72603 - Replace timeline block pagination with "show more" lazy loading
  • MDL-72543 - Change the display of the event names of the items on the timeline block
  • Calendar usability:
  • MDL-71817 - Render the calendar in the calendar block in month view
  • MDL-72237 - Limit number of events shown per day in calendar month view
  • MDL-71810 - Add a current date indicator and make calendar block responsive when switching between small and large views
  • MDL-71808 - Move the import calendar form to its own page
  • MDL-72045 - Improve help information provided on the calendar export page
  • MDL-71790 - Revamp the manage subscriptions page
  • MDL-71788 - Make it easier to copy the export URL
  • MDL-71775 - Add footer links to the calendar block
  • MDL-72810 - Remove 3-month calendar view
  • Dashboard:
  • MDL-72092 - Arrange blocks between My courses & My dashboard
  • MDL-73114 - Display a title in the dashboard page
  • MDL-71964 - Welcome message for users
  • MDL-73233 - Provide option to disable the Dashboard
  • MDL-72116 - Remove some of the default blocks from the Dashboard
  • User tours:
  • MDL-61674 - Allow user tours to be created using the Atto text editor
  • MDL-72385 - Improve and simplify design of user tours
  • MDL-71938 - Display number of steps in a user tour
  • MDL-72783 - Add new user tours
  • MDL-72781 - Remove previous user tours
  • MDL-72557 - Implement customisable confirmation button for single step user tours
  • MDL-71931 - Update user tours to emit events
  • Other usability and user experience improvements:
  • MDL-69371 - Redesign the Moodle login page (also see MDL-72928)
  • MDL-71457 - Update the Moodle activity icons
  • MDL-71963 - Turn confirmation page into modals
  • MDL-71965 - New footer
  • MDL-71456 - Create page drawers for the block and course index areas
  • MDL-72095 - Set a main container width of Boost pages
  • MDL-71610 - Move the turn editing on button into the navbar
  • MDL-72305 - Show user initials as a placeholder for the user profile picture
  • MDL-72278 - Fake blocks now in drawer are made visible on first visit
  • MDL-72454 - Removal of back to top link
  • MDL-72088 - Update styling across top level pages
  • MDL-70888 - Update the layouts in Boost theme
  • MDL-71292 - Update the page header and include course image / activity icon
  • MDL-73608 - Provide a contact form which sends to the site support email and replace mailto link in footer
  • MDL-73935 - Improved flexibility of site support form and consistency of site support info provided in Moodle
  • MDL-61564 - Allow multiple cohort selection in cohort enrolment
  • MDL-66539 - Better handling of link names and URLs with Atto
  • MDL-73797 - Dialogues now have the action button on the right
  • MDL-60917 - Add highest ranked results section to global search
  • MDL-73917 - Notification preferences page improvements
  • MDL-72500 - Easier to find a specific component in event list report
  • MDL-32103 - Course completion is instant for activity based completion criteria (single user completions only)
  • Other major features:
  • Report builder integration (from Moodle Workplace):
  • MDL-70795 - Implement functionality for creating custom reports
  • MDL-70794 - Implement functionality for creating system reports
  • MDL-72588 - Implement custom report audiences
  • MDL-72598 - Implement custom report schedules
  • MDL-73598 - Allow Custom Reports to be disabled by site admin
  • MDL-72280 - Create "Courses" custom report source
  • MDL-73069 - Report condition to limit returned data to current user
  • MDL-73180 - Improve definitions of previous/next relative date filters
  • MDL-72662 - Implement relative date options in the Reportbuilder date filter
  • MDL-72172 - Create "Cohort members" custom report source
  • MDL-72962 - Format editable report elements (column, filters, etc)
  • MDL-72826 - Custom report option to display unique row values
  • MDL-71153 - Convert task logs report to a system report
  • MDL-71070 - Convert configuration changes report to a system report
  • BigBlueButton integration:
  • MDL-70658 - Integrate the BigBlueButton plugin into Moodle LMS
  • Quiz and Questions:
  • MDL-71516 - Create new plugin type - Qbank (for the full list of qbank plugins added to core, see MDL-70329)
  • MDL-71679 - Update mod_quiz for new question bank
  • MDL-71636 - Add a columnsortorder settings page
  • MDL-71696 - Add question versions
  • MDL-72076 - Question bank bulk action UI
  • MDL-72553 - Add custom fields to questions
  • MDL-52206 - Move "Require passing grade" completion option to core
  • MDL-52456 - Add notification message for students after questions have been manually graded
  • MDL-71984 - Add logging to quiz auto-save, process_attempt and redo_question
  • MDL-73337 - Log editing quizzes in detail
  • MDL-73699 - Question status UI/UX update
  • MDL-72448 - Add qbank_history to core
  • MDL-71614 - Add qbank_previewquestion to core
  • Update LTI tool provider feature to support 1.3:
  • MDL-69543 - Update tool to support 1.3 OAuth2/OIDC launch flow
  • MDL-71371 - Provide upgrade path for 1.1 preconfigured tools
  • MDL-72745 - Provide account provisioning options for LTI Advantage launches
  • MDL-69547 - Update tool enrolment code so that a user is automatically created and enrolled when launching via 1.3
  • MDL-69545 - Update user sync task to support 1.3 messages
  • MDL-69544 - Update grade sync task to support 1.3 messages
  • MDL-72288 - Update library and model code to support issuer and clientid uniqueness on registrations
  • MDL-69862 - Add dynamic registration support to the tool
  • MDL-70354 - Return line item information during content selection
  • Assignment:
  • MDL-68913 - Per attempt timing now available in assignments
  • Admin configuration presets:
  • MDL-72112 - Integrate admin_presets third-party plugin in Moodle LMS
  • MDL-73145 - Add a $CFG setting to define the preset to be installed
  • MDL-72114 - Include pre-installed admin presets
  • MDL-72113 - Add feature to import/export plugins visibility from Admin presets tool
  • MDL-73394 - Store the latest site admin preset applied
  • Content bank and H5P:
  • MDL-68394 - Integrate mod_h5pactivity with recent activity plugins
  • MDL-72099 - Add navigation by contexts in the content bank
  • MDL-71885 - Inline editing H5P content for mod_h5pactivity
  • MDL-71956 - Inline editing H5P content anywhere
  • Badges:
  • MDL-72141 - Simplifying the external badge page
  • Accessibility improvements:
  • MDL-67853 - Remove online-offline options on notifications
  • MDL-72078 - Give users an indication that they encountered an editor
  • MDL-71604 - Move the screen reader helper button to the first row
  • MDL-72896 - Make html_tables responsive by default
  • Other Highlights:
  • Functional changes:
  • MDL-70456 - Add custom user field support to all places that display user identity [0,Minor] Improvement
  • MDL-73342 - Disable some blocks by default (such as feedback, RSS and self-completion)
  • MDL-70905 - Updated media default width/height to use 16:9
  • MDL-72118 - Rename "HTML block" to the more easily understood "Text block"
  • MDL-72706 - Change default value of "Hidden sections" course format setting
  • MDL-72115 - Rename "Miscellaneous" category to "Category 1"
  • MDL-72119 - Make “Enable xxxxx” features consistent (hide menus for disabled features)
  • For administrators:
  • MDL-71347 - Add a filter to "browse list of users" for date of user account creation
  • MDL-72031 - Separate out max_time for audio and video files in Atto/RecordRTC
  • MDL-71515 - Improve the test outgoing mail configuration admin page
  • MDL-67686 - Add more filters to task log (/admin/tasklogs.php)
  • MDL-72984 - Ensure support email address is mandatory
  • MDL-73592 - MoodleNet integration now enabled by default
  • MDL-71621 - Parent role cannot edit custom fields in child profile
  • MDL-73918 - Allow admins to change the page width using custom SCSS
  • MDL-71927 - Logs and question attempt history now show time to the second, to help investigate issues
  • MDL-71466 - Custom user field support: Admin role screens (check permissions, assign)
  • MDL-72619 - Provide admin page to view cache size estimates
  • MDL-67822 - New check_database_schema performance check
  • MDL-70271 - Dropbox token and Permission Updates
  • MDL-58395 - LDAP auth sync now skip and report problematic user accounts
  • MDL-72251 - Tasks admin UI now shows time to nearest second
  • Mobile:
  • MDL-67807 - Return concurrent sessions information to apply concurrent login limit in the mobile app
  • MDL-69555 - Make duration of QR login and auto-login time between requests configurable
  • MDL-73794 - Update the footer in the mobile view
  • Performance:
  • MDL-72596 - Caching: Track cache I/O size in perfdebug
  • MDL-69088 - Make file cache store purges instant with a safe and async purge
  • MDL-68164 - Additional caching of pg_field_type postgres field metadata
  • MDL-63983 - Improve the performance of non-contact searches in messaging when site-wide messaging is disabled (default)
  • MDL-71014 - Cache the siteidentifier and site contextid in local cache
  • MDL-72328 - Add TTL support for Redis caches
  • MDL-72837 - Cache API should support versioned data
  • Security improvements:
  • MDL-56873 - Set more secure defaults for the cURL allow/deny lists
  • MDL-66776 - Send notifications when new devices are used to log in into the site
  • MDL-71627 - Add check API for anti virus and optionally remove admin notifications
  • MDL-71806 - Improved the UX of the Moodle security report
  • MDL-71176 - New password and change forms should have autocomplete="new-password"
  • For developers:
  • MDL-61460 - Introduce the UI components library
  • MDL-74229 - Add navigation node keys to allow themers to hide navigation tabs
  • MDL-74235 - Rename the icons for activities to allow support of multiple icons for multiple versions
  • MDL-74033 - Allow full customisation of the primary navigation
  • MDL-72779 - Set more than one value on a persistent at the same time
  • MDL-70862 - Implement a new callback to extend gradebook plugininfo
  • MDL-72289 - Allow callers to customise the rendered icon of inplace editable elements
  • MDL-73347 - Allow themes to define un-addable blocks
  • MDL-46778 - Allow use a separate DB configuration (not just prefix) for Behat similar to PHPUnit
  • MDL-73270 - Warn where XMLRPC is currently in use
  • MDL-67228 - Tool_replace maturity set
  • Web service additions and updates:
  • MDL-71135 - Create core_course_get_state web service
  • MDL-71165 - Create core_course_update_course web service
  • Core plugins removed:
  • MDL-71473 - Jabber removed as a standard notification plugin
  • MDL-58939 - Picasa repository and portfolio removed from core
  • MDL-72335 - Tool_health removed from core
  • MDL-72615 - Boxnet plugins removed from core
  • MDL-72616 - Quiz results block removed from core
  • MDL-72348 - Microsoft OneDrive (legacy) repository (repository_skydrive) removed from core
  • MDL-72347 - Word censorship filter (filter_censor) removed from core
  • MDL-72407 - VideoJS Flash plugin removed from core
  • MDL-72042 - Flash animation media player removed from core
  • MDL-72041 - WebCT question import format removed from core
  • MDL-72517 - Examview question import format removed from core
  • Deprecations:
  • MDL-53544 - Typo3 library removed
  • MDL-72004 - Quiz 4.0 Class renaming and deprecation
  • MDL-73756 - Deprecate $modinfo param to completion_info::get_data()
  • MDL-65799 - Phase 2 of deprecation of functions in lib/deprecatedlib.php initially deprecated in 3.8
  • MDL-71175 - Deprecate some plagiarism functions that are not used, or have replacements
  • MDL-66266 - Remove deprecated functions in messages/classes/api.php
  • MDL-72098 - deprecate grade_grade::insert method that just calls its parent
  • MDL-72433 - Final deprecation of get_grades() in lib/classes/grades_external.php
  • MDL-71476 - Remove mysql_engine.php
  • MDL-65252 - Final deprecations of forum_count_replies and get_forum_discussion_posts
  • MDL-67412 - Remove deprecated functions in lib/setuplib.php
  • MDL-65801 - Remove strings deprecated in 3.8
  • Component API updates:
  • admin/tool/generator/upgrade.txt
  • admin/tool/log/upgrade.txt
  • admin/tool/mobile/upgrade.txt
  • admin/tool/upgrade.txt
  • admin/tool/usertours/upgrade.txt
  • admin/upgrade.txt
  • analytics/upgrade.txt
  • auth/shibboleth/upgrade.txt
  • availability/upgrade.txt
  • backup/upgrade.txt
  • badges/upgrade.txt
  • blocks/section_links/upgrade.txt
  • blocks/tag_youtube/upgrade.txt
  • blocks/timeline/upgrade.txt
  • blocks/upgrade.txt
  • cache/upgrade.txt
  • calendar/upgrade.txt
  • completion/upgrade.txt
  • contentbank/upgrade.txt
  • course/format/upgrade.txt
  • course/upgrade.txt
  • customfield/upgrade.txt
  • dataformat/upgrade.txt
  • enrol/database/upgrade.txt
  • enrol/upgrade.txt
  • filter/upgrade.txt
  • grade/grading/form/upgrade.txt
  • grade/upgrade.txt
  • group/upgrade.txt
  • h5p/upgrade.txt
  • lib/upgrade.txt
  • media/upgrade.txt
  • message/upgrade.txt
  • mod/assign/upgrade.txt
  • mod/book/upgrade.txt
  • mod/feedback/upgrade.txt
  • mod/forum/upgrade.txt
  • mod/glossary/upgrade.txt
  • mod/h5pactivity/upgrade.txt
  • mod/lesson/upgrade.txt
  • mod/lti/upgrade.txt
  • mod/page/upgrade.txt
  • mod/quiz/upgrade.txt
  • mod/resource/upgrade.txt
  • mod/scorm/upgrade.txt
  • mod/upgrade.txt
  • mod/url/upgrade.txt
  • mod/wiki/upgrade.txt
  • mod/workshop/upgrade.txt
  • my/upgrade.txt
  • payment/upgrade.txt
  • plagiarism/upgrade.txt
  • portfolio/upgrade.txt
  • question/bank/upgrade.txt
  • question/behaviour/upgrade.txt
  • question/engine/upgrade.txt
  • question/format/upgrade.txt
  • question/type/multichoice/upgrade.txt
  • question/type/upgrade.txt
  • question/upgrade.txt
  • report/eventlist/upgrade.txt
  • report/upgrade.txt
  • repository/upgrade.txt
  • search/upgrade.txt
  • theme/upgrade.txt
  • user/upgrade.txt
  • webservice/upgrade.txt

New in Moodle 3.11.6 (Mar 15, 2022)

  • General fixes and improvements:
  • MDL-72762 - Backup fails if section name has only blank spaces
  • MDL-72246 - 3.11 Dashboard Loads Slowly (30 seconds)
  • MDL-72915 - Drag and Drop onto image: Issue moving draggable items with Unlimited option
  • MDL-73846 - "Prepare submissions for annotation" task tries to process the whole queue in one go
  • MDL-64770 - User profile fields uniqueness don't work while user importing
  • MDL-72646 - MIME type headers for theme fonts are deprecated
  • MDL-67428 - Performance issues with filters applied to course/category titles in navigation
  • MDL-73824 - Decimal comma & PHP8.0
  • MDL-66940 - 'View external Criteria URL' on Badgr links to badge awarded to somebody else
  • MDL-69965 - MoodleNet profile field is displayed even when MoodleNet is disabled
  • MDL-73915 - Bump NodeJS version, dependencies, and update JS build process, drop IE support
  • MDL-73827 - URL blocked during OBv2.1 user authentication
  • MDL-69966 - Quiz: start attempt button should be a primary button
  • MDL-73450 - is_antelope_file_format_no_more_supported check should return true on Aurora MySQL 8.0+
  • MDL-73588 - Unexpected content in the CURLOPT_FILE output stream on redirects
  • MDL-73905 - Wrong coding_exception used on problems sending messages
  • MDL-73954 - Quiz percentage should round the percentage the same way as the other grades
  • MDL-73582 - Add endpoint to provide the Moodle version
  • MDL-73868 - Remove multiple slashes in URL image for Open Badges services
  • MDL-73636 - Activity "Mark as done" buttons contain unformatted module names
  • MDL-73625 - Reorder and review the mobile settings for app 4.0
  • MDL-72937 - Saving a user profile Moodlenet field > 255 characters causes exception
  • MDL-73765 - Scheduled task are randomly allocated to 0 - 23 minutes range only
  • MDL-72852 - If there are no course badges, students shouldn't have a link to a page saying there are no badges available
  • MDL-73603 - Webservice token creation form throws exceptions during validation
  • MDL-73561 - "Grades were set for X items" message displayed as alert-danger
  • Accessibility improvements:
  • MDL-73584 - Required ARIA children role not present: group, menuitemradio, menuitem, menuitemcheckbox
  • MDL-70792 - CSS changes for the moremenu
  • MDL-72412 - aria-label attribute is invalid for informative icon fonts
  • Security improvements:
  • MDL-72734 - Inconsistent checks used to determine whether to run task through web UI
  • Security fixes:
  • Details of any security issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.

New in Moodle 3.11.5 (Jan 17, 2022)

  • General fixes and improvements:
  • MDL-68944 - Workshop skips scheduled allocation
  • MDL-69467 - H5P attempts not recorded when multiple users have same email address
  • MDL-69496 - mod_quiz: Or all available attempts completed setting value lost
  • MDL-68773 - Adhoc tasks for backup and restore are stuck in endless fail delay loop
  • MDL-59115 - OAuth2 does not pass in all user mapped settings into new account
  • MDL-72796 - retry interval in milliseconds for redis session cache is far too high
  • MDL-72791 - Custom course field content for new course not found in global search
  • MDL-72443 - SVG files do not support the preview mode
  • MDL-72716 - You should not be able to add more than one instance of most blocks to your Dashboard
  • MDL-72925 - Forum grading separate group filter shows discussion topics in the other groups
  • MDL-73414 - Impossible to turn on only "Enable web services" from site admin page
  • MDL-73189 - File upload limits not always enforced if there are many simultaneous uploads in progress
  • MDL-69061 - Lack of files reported during upgrade to 3.9 when $CFG->admin differs from 'admin'
  • MDL-73046 - HTML5 video in the mediaplugin fails when using .MOV files
  • MDL-72988 - PHP Notices detected in web server logs (mod_lti)
  • MDL-72966 - File upload: Uncaught TypeError from JavaScript when uploading a single file
  • MDL-73195 - mod_url: Error makes course/view.php unreachable if an invalid URL is saved
  • MDL-73207 - $CFG->scheduled_tasks has incorrect order for dayofweek and months in cron spec
  • MDL-72701 - Expand unit test coverage defaults
  • MDL-73128 - Image caption warning for external badges
  • MDL-73155 - Essay qtype: Error message is displayed when Allow attachments field is reset to 'No'
  • MDL-73256 - Disabling "Require email verification" doesn't persist properly the first time
  • MDL-73086 - User profile fields are broken when having uppercase in shortname
  • MDL-73153 - External badge image not displayed in some cases
  • MDL-72992 - Cannot enter feedback from grader report when feedback was previously deleted from assign grader
  • MDL-72785 - Can't delete course category
  • MDL-73176 - JS exception filtering course participants for keyword containing quotes
  • MDL-73402 - Admin bookmarks block is too aggressive at cleaning bookmarked section
  • MDL-72870 - Quiz attempt navigation buttons misaligned
  • MDL-73039 - Double encoding of site/course name in course download
  • MDL-73140 - Badly formatted lists in the grade history report
  • MDL-72982 - Data request email breaks organisation signature
  • MDL-61671 - Admin mobile certificate check can return errors on valid certificate
  • MDL-72789 - Improve filtering by component in eventlist report
  • MDL-72908 - Purge all caches only purges the selected cache if selected
  • MDL-73074 - Course autocomplete duplicated in report condition/filter
  • MDL-73255 - User Participants filter leaves invalid group filter row if no groups are present
  • Accessibility improvements:
  • MDL-70274 - The WCAG (cynthia.exe) validator links in the footer is no longer available
  • MDL-73026 - Focus outline for modal close button is clipped and has insufficient colour contrast
  • MDL-70721 - Need a Mustache helper method for html entities
  • MDL-73142 - File extension in Essay accepted file type list is failing accessibility color contrast limits
  • For developers:
  • MDL-73175 - Add behat generators for glossary entries and categories
  • MDL-73202 - Add behat generators for forum discussions and posts
  • MDL-72846 - Create default block generator for testing
  • MDL-73269 - Add PHP version and required/optional extensions to composer.json
  • Security improvements:
  • MDL-72096 - New helper function for cleaning SQL ORDER BY clauses
  • MDL-73295 - sesskey is exposed in url for /user/managetoken.php

New in Moodle 3.11.4 (Nov 8, 2021)

  • General fixes and improvements:
  • MDL-66203 - The submission status stays "Submitted for grading" after a submission is removed by or for the student
  • MDL-65943 - RecordRTC Content Does Not Playback in iOS (multiple browsers)
  • MDL-26633 - Unable to randomly allocate more than 30 reviews per submission / reviewer
  • MDL-72566 - Activity information performance enhancement could cause 'invalidcoursemodule' exception
  • MDL-64576 - Course completion activity dates are incorrect if course completion criteria have been edited
  • MDL-71344 - Drag and drop question type: does not work correctly with multiple questions on one page
  • MDL-72607 - Domain restricted Vimeo videos require an updated URL format to load correctly
  • MDL-72316 - SVG files being downloaded instead of served in SCORM activities
  • MDL-71970 - Fatal error with H5P due to incompatible "Declaration of core_h5pframework::fetchExternalData"
  • MDL-72590 - When unenrolling from a course with self enrolment, the course name does not pass filters
  • MDL-71750 - File upload: Submit buttons aren't disabled when upload multiple files
  • MDL-72743 - Make question restore more fault tolerant of missing user data in course backups
  • MDL-72621 - Drop support for $CFG->admin
  • MDL-72515 - Plugins overview page calls curl unnecessarily
  • MDL-72507 - Quiz auto-save does not detect uploaded files
  • MDL-51165 - Trailing slash in URL supplied to URL Resource causes extra click to open
  • MDL-72884 - Inserting an SVG file using the "Insert image" doesn't work well with "Auto-size"
  • MDL-56773 - Atto equation editor textarea input should be left aligned in RTL mode
  • MDL-72013 - Add jsdoc validation checks
  • MDL-72064 - Too easy to accidentally change your answer to a multiple-choice questions
  • MDL-72060 - LTI gradebookservice is user gradable in course not working as expected
  • MDL-72599 - Cannot configure or delete blocks added to admin/index.php
  • MDL-39324 - Adding custom video dimensions to a URL resource reverts media icon back to default
  • MDL-71306 - Error when cancelling add cohort_sync enrolment method
  • MDL-72767 - Forum digests may not be sent to a user if new posts made near to the digest send time
  • MDL-72275 - Timeline block "sort by courses" sometimes fetches incorrect or no results for time periods
  • MDL-71785 - Empty quiz section name behaves like new page
  • MDL-72342 - Group import from CSV is broken by byte order mark
  • MDL-72110 - Admin home page preference not respected
  • MDL-72309 - Course creation without category
  • MDL-71137 - File upload: The progress bars are displaying error when drag-and-drop multiple files sequentially
  • MDL-68325 - 'Complete another course' allows to select courses that has completion tracking disabled
  • MDL-71961 - Disable quiz navigation buttons while file uploads are in progress
  • MDL-72857 - Issued badge page doesn't filter site/course names (e.g. multi-lang content)
  • Accessibility improvements:
  • MDL-72673 - Duplicate element IDs in Glossary
  • MDL-72669 - Invalid HTML in multi-answer (Cloze) questions: blank content is not allowed
  • MDL-72674 - Give feedback about this software link does not warn users that it opens in a new window
  • MDL-71352 - Red/green color for fail/pass in grader report is not accessible
  • MDL-72426 - Insufficient colour contrast for the notification and message badges
  • MDL-71602 - Essay question type: no lable for the editor where the student enters their response
  • Security improvements:
  • MDL-72464 - Web service get_active_tokens doesn't return those without expiry date
  • Security fixes:
  • Details of any security issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.

New in Moodle 3.11.3 (Sep 13, 2021)

  • General fixes and improvements:
  • MDL-70176 - Forum Grading Does Not Respect Separate Groups Filter
  • MDL-71121 - Default settings async course backup
  • MDL-49202 - Checking "Hidden" in grade item settings does not hide the item from student, at the same time selecting "Hide" from dropdown on the setup page does
  • MDL-72242 - Missing SVG files in forum posts
  • MDL-70376 - Assignment - Annotated PDF Download issues when page is turned
  • MDL-72312 - PHP 7.2 tests failing in 3.10 & 3.9, caused by buggy php-igbinary extension
  • MDL-71500 - Cannot select a date on the right hand side 3 month mini calendar, after previously selecting one
  • MDL-69451 - moodle_read_slave_trait: restore temptables object when creating rw and ro handles
  • MDL-72033 - User tours: step placement issues if screen too narrow
  • MDL-71973 - Exception thrown when evaluating disabled models from the CLI
  • MDL-70006 - Suspended enrolment will get analytics messages
  • MDL-70165 - Unable to change user role in a new course
  • MDL-70433 - In gradebook titles, ampersand '&' is being displayed as & amp;
  • MDL-71050 - H5P does not use the correct language
  • MDL-72358 - Error exception in content bank when an H5P file doesn't exist
  • MDL-72265 - Backup code added in MDL-56310 incorrectly checks moodle/role:safeoverride for users who already have moodle/role:override
  • MDL-67833 - Text run over on Lang customization screen
  • MDL-72035 - Course completion report Excel download should include BOM to ensure correct character encoding
  • MDL-71945 - Bulk releasing grades for anonymous submissions pushes them to gradebook
  • MDL-71844 - Navigation breadcrumbs lost when running single task
  • MDL-71487 - Setting filesize settings to huge values breaks settings pages/search
  • MDL-72207 - Webservice mod_assign_get_submission_status doesn't support "All participants"
  • MDL-71029 - Forum summary report multiplies counts by number of enrollments a user has
  • MDL-72271 - Clicking "Finish Review" after a quiz set to Full screen popup with Javascript security results in a 404 to /mod/quiz/0 if not in a popup window
  • MDL-72325 - sitepolicynotagreed popup appears when trying to start a user tour
  • MDL-72153 - Privacy export of user data doesn't export description files correctly/triggers debugging
  • MDL-72106 - Error being displayed after deleting calendar subscription
  • MDL-71899 - Improve 3.11 Activity information performance
  • MDL-71925 - Inaccurate word count in Brickfield accessibility toolkit
  • Accessibility improvements:
  • MDL-68639 - Atto produces invalid nested unordered (UL) lists
  • MDL-72286 - Atto plugin steals default submit action so enter key in other fields no longer submits the form
  • MDL-71674 - Atto editor's insert image dialog boxes do not show all error messages
  • MDL-71656 - Add meaningful label to colour items in colour chooser elements
  • MDL-72206 - Insufficient colour contrast in warning messages in environment check
  • MDL-71814 - Atto: File picker – file info panel focus issue
  • Security improvements:
  • MDL-72014 - Update grunt and some components to avoid some security reports
  • MDL-72187 - Log visibility change of log stores

New in Moodle 3.11.2 (Sep 13, 2021)

  • Regression fix:
  • MDL-72203 - Redirect security checks should not introduce additional cURL requests
  • Accessibility fix:
  • MDL-71672 - Title of some dialogs are not read by screen reader when they are opened
  • Other fixes:
  • MDL-63770 - Moodle doesn't work when external port number doesn't equal internal
  • MDL-72139 - Encoding is lost after upgrading 3.9 to 3.9.8

New in Moodle 3.11.1 (Jul 12, 2021)

  • General fixes and improvements:
  • MDL-68925 - Quicklist items broken and cannot be used in PDF Annotator
  • MDL-65203 - Tab characters in event names produce malformed JSON in mustache template
  • MDL-65637 - Linkedin Authentication Stopped working
  • MDL-67975 - Nextcloud integration should allow the use of aliases to files in repository
  • MDL-55243 - SVG files are images and should be allowed for course images, drag-drop questions, etc.
  • MDL-71926 - Add an activity or resource link always visible in 3.11+
  • MDL-71126 - Quiz manual grading: page size preference can get stuck at 0
  • MDL-68915 - Forum and Lesson do not allow a change to max grade after a grade has been given
  • MDL-71659 - Grade item inconsistencies can break courses with courses with activities that require grade
  • MDL-64236 - The content in the Grader report table is partly covered by the scrollbar in RTL mode
  • MDL-67771 - Classic theme - unable to place blocks in Right region of activity modules
  • MDL-71694 - Grade validation failure causes loss of feedback comments
  • MDL-71047 - The cursor position is not correct when paste HTML in Atto editor
  • MDL-71113 - Integrate jsdoc into Grunt and allow for JS Documentation to be generated
  • MDL-70750 - In Survey activity the Response report -> Question doesn't work at all
  • MDL-71559 - User fields: new PROFILE_VISIBLE_TEACHERS constant not supported
  • MDL-71644 - File upload still gets stuck if try to leave page mid-upload
  • MDL-71366 - Checkboxes/Radio Buttons within multiple choice questions become invisible or shrink
  • MDL-71647 - Locally assigned roles no longer searches email address
  • MDL-71628 - Quiz review: names not shown on Manual grading screens
  • MDL-72010 - Quiz should use Moodle's mechanism for keeping the session alive
  • MDL-71947 - The indentation of the text must be corrected in the notice of time limit when starting a quiz
  • MDL-71789 - Add mform validation for invalid url when importing a calendar
  • MDL-71971 - In the "Edit quiz" page, don't stick together the "Repaginate" and the "Select multiple items" button
  • MDL-71838 - Quiz overview report runs out of memory with huge courses
  • MDL-71145 - Drag and Drop Marker Question Type: Saves incorrect marker positions or lost markers
  • MDL-71837 - Export Calendar buttons become inactive after pressing 'Export' (as file)
  • MDL-71836 - Enrol users: Cannot search by username
  • MDL-71832 - Browse list of users page error when sorting by custom user field
  • MDL-69703 - Selected potential group member are not highlighted properly
  • MDL-71438 - Block deletion timeouts can occur on large sites
  • Accessibility improvements:
  • MDL-71373 - Localize hard coded aria-label strings in table pagination and role manager
  • MDL-71669 - Menus opened by Atto buttons are announced as dialog box by screen-readers
  • MDL-71813 - File picker – folder view file details not available using keyboard (Enter)
  • MDL-71668 - Atto buttons do not have proper focus indicator
  • Security fixes:
  • Details of any security issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version

New in Moodle 3.11 (May 17, 2021)

  • Major features:
  • Improve student activity completion:
  • MDL-71189 - Define sort ordering for completion conditions
  • MDL-70821 - Update the course homepage to display the activity information
  • MDL-70818 - Implement the activity dates functionality for each activity and output them in view.php
  • MDL-70815 - Create a base class for fetching a user's activity completion details
  • MDL-70816 - Create a base class for fetching an activity's dates that are relevant for a given user
  • MDL-70820 - Implement the completion details functionality for each activity plugins output them in view.php - Part 1
  • MDL-70935 - Implement the completion details functionality for each activity plugins output them in view.php - Part 2
  • MDL-71235 - Review and update existing web services to return the new fields and exported information from activities
  • MDL-71288 - Activity completion fallback for third party plugins
  • MDL-71163 - Remove duplicate activity dates
  • MDL-71144 - Deprecate the *_get_completion_state() callbacks
  • MDL-71234 - Create user tours for the activity information output component
  • Brickfield accessibility toolkit:
  • MDL-69863 - Brickfield Education Labs accessibility toolkit core integration
  • Badges:
  • MDL-71117 - Make Moodle OBv2.1 implementation compliant
  • MDL-70689 - Add new "IMS OBv2.1" OAuth 2 service
  • MDL-70911 - Remove "Backpack settings" site administration page and improve UI
  • MDL-63961 - Improve resolution of badge image sent to external backpacks and used when duplicating badges
  • Content bank and H5P:
  • MDL-69331 - Add ability to disable specified H5P content types
  • MDL-66769 - Create a task to clean up unused H5P content
  • MDL-70429 - Allow admins to set the default returntype in repository_contentbank
  • MDL-67999 - Update content bank upload button to open file picker in a popup instead of new page
  • MDL-69762 - Option to make a content bank item unlisted
  • MDL-70408 - Open H5P file from H5P activity when it was added as a reference
  • MDL-70438 - Content bank should provide info on the number of places where content is used and warn you when deleting
  • Assignment:
  • MDL-52420 - Assignment comments should be also saved when clicking 'save changes' in the assignment grader page
  • MDL-68533 - Allow mod_assign download all assignments to be streamed
  • MDL-67702 - Assignment name filter preference should only affect current assignment's view
  • MDL-70038 - Implement Poppler pdftoppm compatibility for faster assignment submission PDF to PNG conversion
  • MDL-69631 - Add 'Draft' filter to assignment grading table
  • Quiz and questions:
  • MDL-32226 - Add Plagiarism support to essay questions
  • MDL-70895 - Questions: Default options when creating a question
  • MDL-71262 - Add default options for essay question type
  • MDL-71225 - Add default options for ddimageortext, ddmarker and match question types
  • MDL-71181 - Display pass grade on quiz front page
  • MDL-68597 - Add optional min/max word count limits to Essay question type
  • MDL-69735 - Read-only view of quiz settings overrides
  • MDL-70134 - Improve manual grading of quiz essay answers - web page format
  • MDL-66600 - Manual grading of automatically graded questions: show computer grading
  • MDL-71205 - Add default options for numerical question type using user-preferences
  • MDL-70562 - In a newly created quiz, prevent "Edit quiz" and "Back to the course" buttons sticking together
  • MDL-70266 - Quiz override screens should show user identity fields
  • MDL-71030 - Quiz review: name the person who made each change in the question response history (if not the student)
  • Accessibility improvements:
  • MDL-69474 - Improve accessibility of profile images
  • MDL-71089 - Make it possible to style toast notifications
  • Usability improvements:
  • MDL-70817 - Create an output component that displays an activity's information for a user
  • MDL-48594 - More filtering options on Activity Completion Report
  • MDL-65856 - UX Review of session expired timeout modal
  • MDL-65135 - Add year to messaging conversation date headings, if not the current year
  • MDL-51287 - Show confirmation when profile changes are saved
  • MDL-70565 - Add ability to search country field on Participants page
  • MDL-69145 - Default the participants page filtering to "ALL"
  • MDL-57831 - Improve notification preferences on/off buttons so they fit better with non-English strings
  • MDL-71254 - OAuth2: Display login errors on the login page
  • MDL-67028 - LTI: Support Course dates substitution parameters
  • MDL-70753 - Create landing page for the reports link in the secondary navigation
  • MDL-71403 - Update message preferences of a user as admin to use consistent toggle icons
  • MDL-71064 - Add support for keyboard hotkeys in VideoJS
  • MDL-69878 - Always show the close button on the message drawer
  • Other highlights:
  • Functional changes:
  • MDL-28452 - Convert user profile fields for messaging/networking into custom profile fields
  • MDL-58673 - Enable playbackrates for videojs
  • MDL-45242 - Allow user profile fields to be specified as user identity fields - New code is backwards-compatible, but report code should be updated.
  • MDL-66431 - Remove "Enable activity chooser" user preference
  • MDL-61768 - Update Google Drive repository to allow Shared drive files
  • MDL-63381 - Option to not include permissions overrides when importing or restoring a backup
  • MDL-71190 - Backup and Restore lastaccess to course
  • MDL-48269 - Remove option to hide a group picture
  • MDL-71118 - Differentiate between grade as a noun and grade as a verb in the UI texts
  • MDL-71186 - Add custom user field support to group management screens
  • MDL-69773 - Add an option to display section names in Section link block
  • For administrators:
  • MDL-70722 - Move Microsoft, Facebook and NextCloud OAuth2 services to new, reorganised architecture
  • MDL-42382 - Add a "Replace filter" option on the admin browse users page
  • MDL-65843 - Ability to force cron scheduled task definitions in config.php (schedule and disabled)
  • MDL-70536 - Create a CLI script to reset user dashboards
  • MDL-67748 - Improve the web services tokens management to allow searching and filtering
  • MDL-69460 - Check for removed files before CLI upgrade
  • MDL-70828 - Add ability to switch off session lock debugging
  • MDL-70583 - Implement a renderer for progress_bar in cli output
  • MDL-68010 - Allow disabled tasks to be run from the GUI
  • MDL-71017 - Add the ability to configure OAuth2 services for login only; add login display name
  • MDL-70269 - Update the ClamAV default behaviour when an error occurs
  • MDL-70500 - Use Dynamic Registration to allow Tools to update to LTI Advantage
  • MDL-70287 - Payment service consumers should be able to specify url after payment
  • MDL-70158 - Make it easier to find a specific component in template library
  • MDL-70632 - Allow searching of available language packs
  • MDL-70362 - Add showdebugging and showsql options to admin/cli/uninstall_plugins.php
  • MDL-69898 - Config change event should link to config change report
  • MDL-70159 - Sort capabilities in capability overview tool
  • Mobile:
  • MDL-71273 - Add a new option in Moodle app "Disabled features" for preventing the new LTI launch in the app
  • MDL-65983 - Include option for testing Push notifications in a site
  • Performance:
  • MDL-68481 - mod/folder/download_folder.php should be a streaming zip download
  • MDL-70444 - Make my_reset_page_for_all_users for dashboards more robust
  • MDL-68052 - Implement cleanup of analytics_indicator_calc stores table
  • MDL-71044 - Extend the 'backup_cleanup_task' scheduled task to remove old files
  • MDL-66667 - Cache course image in the course_summary_exporter
  • MDL-69121 - Allow redis session store to use zip or zStd for compression like redis MUC
  • MDL-70107 - Running a scheduled task in the GUI should unlock the session
  • MDL-27193 - Eliminate DB queries in mod/glossary/settings.php
  • MDL-70608 - Update language pack installs / updates to run asynchronously to avoid timeouts when multiple are used
  • Security improvements:
  • MDL-65818 - Provide admin setting type for secure data (passwords/tokens)
  • MDL-64865 - Add logging when auth config is automatically changed due to config/filesystem mismatch
  • MDL-69333 - Reduce ability to fingerprint a server with a htaccess-dist / nginx file / docs
  • MDL-69522 - Allow antivirus scanners to specify the message to the user
  • MDL-67882 - Log changes to the message notifications settings
  • MDL-70649 - Allow plugins to augment the cURL security helper via callback
  • MDL-70735 - Reduce information disclosure from TCPDF version
  • MDL-70766 - Log changes to auth plugin settings in config log
  • MDL-70439 - Display user email address visibility settings on their own profile
  • For developers:
  • MDL-52817 - New sql_group_concat db method
  • MDL-64554 - Add module for displaying moodleform in a modal window
  • MDL-71036 - Upgrade PHPUnit to 9.5.x
  • MDL-68608 - Improve the readonly session debugging message
  • MDL-71012 - HTTP 503 Service Not Available is returned by exceptions and should be 500 instead
  • MDL-70311 - Upgrade boost to use Bootstrap latest version
  • MDL-69202 - Restore backup: add getter method for oldmoduleid
  • MDL-70055 - Support large number of SQL-IN parameters in Postgres
  • MDL-70142 - Preserve form data when purging individual caches
  • MDL-71099 - Move user_fields from core to core_user
  • Web service additions and updates:
  • MDL-69869 - Add ability for "get enrolled users" web service to be filtered by suspended users
  • MDL-70128 - Create a new endpoint (script) to retrieve draft files from web services
  • MDL-68853 - Create web service to trigger report_viewed event for H5P activities
  • MDL-69259 - Create H5P activity web service to get the list of students that attempted an activity
  • MDL-70387 - New web service core_files_get_unused_draft_itemid
  • MDL-71492 - Return quiz pass grade via web services
  • MDL-70037 - Update mod_forum_get_discussion_posts web service to return the last_modified attribute
  • MDL-71031 - Batch create API for grade categories
  • MDL-71169 - All new external functions implementation classes should use execute as the method name, in which case the methodname property should not be specified in db/services.php file
  • Deprecations:
  • MDL-69792 - Deprecate unused backpack js functions
  • MDL-66138 - Deprecate get_forum_discussions_paginated webservice
  • MDL-65319 - Phase 2 of deprecation of functions in lib/deprecatedlib.php initially deprecated in 3.7
  • MDL-65284 - Final deprecation for analytics methods deprecated in MDL-64783
  • MDL-65215 - Final deprecation of i_dock_block()
  • MDL-65186 - Final deprecation of core_analyticsmanager::add_builtin_models()
  • MDL-65086 - get_enabled_time_splitting_methods final deprecation
  • MDL-64982 - Final deprecation of behat_base::TIMEOUT and related constants
  • MDL-64866 - Remove message/defaultoutputs.php and final deprecation of admin_page_manageqbehaviours class
  • MDL-64776 - Final deprecation of booktool_print_get_toc()
  • MDL-63266 - Final deprecation of enrol/database/cli/sync.php
  • Component API updates:
  • admin/upgrade.txt
  • analytics/upgrade.txt
  • auth/shibboleth/upgrade.txt
  • backup/upgrade.txt
  • badges/upgrade.txt
  • blocks/section_links/upgrade.txt
  • blocks/tag_youtube/upgrade.txt
  • completion/upgrade.txt
  • contentbank/upgrade.txt
  • course/upgrade.txt
  • customfield/upgrade.txt
  • enrol/database/upgrade.txt
  • enrol/upgrade.txt
  • group/upgrade.txt
  • h5p/upgrade.txt
  • lib/upgrade.txt
  • mod/book/upgrade.txt
  • mod/feedback/upgrade.txt
  • mod/forum/upgrade.txt
  • mod/h5pactivity/upgrade.txt
  • mod/quiz/upgrade.txt
  • payment/upgrade.txt
  • plagiarism/upgrade.txt
  • question/type/upgrade.txt
  • report/upgrade.txt
  • repository/upgrade.txt
  • theme/upgrade.txt
  • user/upgrade.txt
  • webservice/upgrade.txt

New in Moodle 3.10.4 (May 10, 2021)

  • General fixes and improvements:
  • MDL-71156 - Upgrade step from MDL-67494 corrupts calendar events
  • MDL-52724 - Atto does not generate UL tags when pasting LI tags
  • MDL-69415 - H5P has namespace overlap with mod_hvp, causing unexpected behavior
  • MDL-64336 - When an assignment is frozen students cannot see their submission
  • MDL-69956 - Rubric and Marking Guide gray boxes and unclear error if configured incorrectly
  • MDL-70947 - File upload navigation warning not protecting all uploads and interacts with double-submit protection
  • MDL-71274 - "Students who have not accessed the course recently" insights should not be generated for hidden courses
  • MDL-68716 - Error with forum_discussionlistsortorder during privacy process
  • MDL-70909 - H5P `mod/h5pactivity:submit` capability incorrectly used
  • MDL-69304 - Import succeeds unintentionally if csv file contains id which has number and string mixed
  • MDL-71460 - Change site registration notifications and newsletter subscriptions to opt-in checkbox
  • MDL-62244 - Link to mod_label redirects to the course, not to the label
  • MDL-71187 - Safe Exam Browser - deeper integration - The information you're about to submit is not secure
  • MDL-71168 - Cannot send message to all users in participation report
  • MDL-71400 - The notification after uploading a grading worksheet is inaccurate
  • MDL-71338 - Wrong content type when exporting user tours
  • MDL-70616 - Filters not applied to rubric name
  • MDL-71200 - When copying a course, mod_folder settings are copied incorrectly
  • MDL-71416 - Course report log for user displays course name instead of users name in header
  • MDL-71171 - Course custom field data remains as default values
  • MDL-71170 - Incorrect error message on course custom field 'text' page
  • MDL-71481 - Flickr public repository not displaying file information
  • MDL-71329 - MoodleNet profile not being validated properly when linking through the activity chooser
  • MDL-71440 - Assignment submission status info should not be displayed for teachers
  • MDL-71003 - Autocomplete elements in course participant filters obscure text inputs
  • MDL-70980 - Fix review mode in the H5P activity
  • MDL-71059 - Set the default returntype in repository_contentbank (Backport of MDL-70429)
  • MDL-71116 - Backpack API and URL should support more than 50 characters
  • MDL-71107 - Content bank content's author is not restored when copying a course
  • MDL-70863 - Q&A forums incorrectly display a "post cannot be viewed by you" error in some circumstances
  • MDL-70786 - Some course report pages are displaying only the users's first name
  • Accessibility improvements:
  • MDL-71087 - File picker: Focus lost after 'Create folder'

New in Moodle 3.10.3 (May 10, 2021)

  • Regression fix:
  • MDL-71182 - Revert latest calendar/data request changes (revert MDL-67494)
  • Other fixes:
  • MDL-66025 - It's possible to send an empty message to course participants
  • Accessibility improvements:
  • MDL-70992 - Folder: Unnecessary tab stops to the left of files
  • Security improvements:
  • MDL-71068 - Usernames or emails can be enumerated under certain conditions with $CFG->protectusernames on

New in Moodle 3.10.2 (Mar 9, 2021)

  • General fixes and improvements:
  • MDL-67959 - The default group icon should not be displayed when there is no group picture
  • MDL-67515 - Uninstalled plugin breaks the custom lang tool if it had some strings customised
  • MDL-66979 - Switch all the Behat testing to the new W3C drivers
  • MDL-70535 - VideoJS language doesn't fallback to en
  • MDL-68970 - Pages during a quiz attempt should not be cached, so forwards/back do not lead to errors
  • MDL-57020 - Unable to delete scales which are no longer used
  • MDL-70268 - Dropbox repository requires log on to work - which fails
  • MDL-46256 - count_words returns too few words when dealing with html tags
  • MDL-70048 - Dropbox Search API: /files/search is being retired in favor of /files/search_v2
  • MDL-69867 - Marking workflow display wrong current grade if using scales
  • MDL-70736 - Unable to load Marking Guide Templates
  • MDL-70796 - Moodle word count does not match other software
  • MDL-69101 - Essay question: "Accepted file types" and other new fields are not supported in Moodle XML file
  • MDL-70377 - When reviewing an attempt as a teacher $string['saved'] {$a} not replaced
  • MDL-43697 - Archived badges are restored during course restore
  • MDL-70676 - Workshop assessment aspect with no grade is unusable
  • MDL-70631 - Poor performance of zip_packer::extract_to_pathname()
  • MDL-70648 - Editing a calendar event of type category and removing the category results in an error
  • MDL-68958 - Undefined variable: href when creating IMSCP
  • MDL-70339 - Activity chooser does not honour external tool icons
  • MDL-56772 - File picker:Right align table column headers, in RTL mode (theme:boost)
  • MDL-70513 - Quiz manual grading page should warn if you try to leave with unsaved data
  • MDL-70705 - Multilang Filters not applied to Recent blog entries block Blog entry titles
  • MDL-70552 - Notification of submissions are not sent for anonymous feedback
  • MDL-70574 - Cloze multianswer question leaks percentage if with decimal
  • MDL-66932 - Grade percentage display in Gradebook should be LTR, in RTL mode
  • MDL-70585 - Downloaded course content unbrowseable for some activity names
  • MDL-70912 - Cannot access H5P content bank popup in Atto editor within mod_data textarea
  • MDL-70264 - badges/oauth2callback.php should be removed and replaced by admin/oauth2callback.php
  • MDL-67974 - Badge expiry error and missing expired stamp
  • MDL-67494 - Course/activity calendar events are deleted when the teacher who created them requests their data to be deleted
  • MDL-70995 - Group names not formatted in course participants filter
  • MDL-69883 - Unable to scroll beyond 50 conversations in Messages tool
  • MDL-69097 - Language filters aren't correctly applied in "Whole forum grading"
  • Accessibility improvements:
  • MDL-70169 - Login page accessibility issues
  • MDL-70288 - Checkbox and advanced checkbox elements can have duplicate labels
  • MDL-70173 - Dashboard accessibility issues
  • MDL-65390 - Accessibility #11 Content appears above “show more” button
  • MDL-59782 - Question bank highlight of last added question is wrong in boost
  • MDL-70172 - Site home page accessibility issues
  • Security fixes:
  • Details of any security issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.

New in Moodle 3.10.1 (Jan 18, 2021)

  • General fixes and improvements:
  • MDL-54907 - Automatically submitted quiz attempts: finish time is set to when cron ran, not when the attempt ended
  • MDL-69964 - The "Select all X users" button doesn't activate the drop-down menu in Participants Page
  • MDL-68896 - SCORM error in Chrome because of "XHR in page dismissal" policy change
  • MDL-67623 - Course overview (my courses block) pagination is broken beyond the second page
  • MDL-56119 - Rubric display layout issue, after students feedback is released
  • MDL-50955 - Lesson module error on save - Cannot find grade item for 'lesson'
  • MDL-65941 - Redis server issues break cache configuration page
  • MDL-70285 - The MDL-69687 upgrade step kills large databases
  • MDL-69526 - Custom field values in course overview block follow incorrect order
  • MDL-65852 - Non-editing teacher should be able to download course participants list
  • MDL-70265 - Reduce the number of phpunit runs in core's .travis.yml
  • MDL-70386 - Illegible css coloring of correct/incorrect div
  • MDL-69930 - Duplication items in drag-onto-image question
  • MDL-70276 - Add support for github actions to moodle.git
  • MDL-70355 - Multilang Filters not applied to Calendar block
  • MDL-70063 - [Youtube Plugin] Selecting a category results in error
  • MDL-67513 - View conversation link does not work when grading in full screen mode
  • MDL-70558 - Available language packs unsorted, difficult to locate
  • MDL-69868 - H5P corrupts USER object, causing forum error
  • MDL-70426 - Drag-drop markers questions: infinite markers keep duplicating
  • MDL-70065 - Quiz add questions from question bank: problem with paging & show all
  • MDL-62707 - codingerror in Global Search when "search within enrolled courses only" is set
  • MDL-70430 - OAuth2 system account's refresh token does not get updated due to a typo
  • MDL-70148 - Write new keyboard steps for Behat
  • MDL-69955 - Question type Drag and Drop: drop zone disappear in special case
  • MDL-70320 - Incorrect HTML escaping on the override permissions screen
  • MDL-70261 - Upload Courses tool breaks on locked custom fields
  • MDL-70153 - Qtype_essay file-size limit: it says "0 bytes" for students when "Site upload limit" is set
  • MDL-70436 - On mobile, the Quiz confirmation modal has it's close button cut off
  • MDL-70373 - Atto HTML editor lacks border outside Moodle forms (e.g. Essay questions)
  • MDL-70374 - Layout of multiple choice questions not well aligned
  • MDL-70520 - Moodle upgrade resets scheduled tasks lastruntime
  • MDL-70117 - PDF dataformat export: content can overflow when page headers are involved
  • MDL-70072 - Date in message system (always in Gregorian)
  • MDL-70237 - Payment modal breaks if there is html in a gateway description
  • MDL-70248 - Drag and Drop onto images: Drop zones have UI issue in Editing form
  • MDL-67636 - Locking grade category exposes hidden item grades on user report
  • MDL-70352 - Modal forms stay on the screen if you have multiple modals on one page
  • MDL-70580 - Privacy export tree navigation non-functional since MDL-69559
  • MDL-70567 - Task logs page doesn't respect result filter when moving through the pagination
  • MDL-70009 - Course with H5P element in content bank can not be deleted by Manager/Teacher role (with appropriate rights)
  • Accessibility improvements:
  • MDL-69841 - Edit Quiz, click on help icon under review options group will check / uncheck the checkbox
  • MDL-69422 - HTML validation and accessibility problems on database export page
  • MDL-69301 - Focus order in tabs
  • MDL-70094 - Question preview: Technical info section expands if you click the help icon there
  • Security improvements:
  • MDL-69877 - Set up a security.txt file in Moodle LMS
  • Security fixes:
  • Details of any security issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version

New in Moodle 3.9.2 (Sep 14, 2020)

  • General fixes and improvements:
  • MDL-63375 - Workshop rubric display issue in grid view
  • MDL-60574 - Atto editor undo/redo (crtl-y/z) can sometimes wipe all content
  • MDL-26401 - Byte order mark at the beginning of import groups file fail the process with the confusing error message
  • MDL-51709 - Gradebook single view has a hard coded name format in grade view
  • MDL-40227 - Numerical question in lesson - decimal fractions problem
  • MDL-66665 - Reopened assignment shown as graded by student themselves
  • MDL-61215 - Badge and user profile picture using an svg file doesn't display
  • MDL-66810 - Allow microphone and camera to be accessed from content iframe
  • MDL-69079 - Activity chooser does not display if site contains plugins missing from disk
  • MDL-68178 - Email-based self-registration confirmation email is not re-sent
  • MDL-67831 - The Message reply box is not fixed
  • MDL-66670 - list bullet points are cut off in some browsers
  • MDL-69246 - Question manual grading: floating point issues can lead to valid grades being rejected
  • MDL-65819 - Contact request email must respect the receiver's language
  • MDL-68715 - Condition: "Completion of other courses" is set without the course creator intervention
  • MDL-52052 - Import grades with an empty identifier causes bad upload but it doesn't show error message
  • MDL-55340 - Export labels from feedback
  • MDL-67671 - Backup step 2 show type options missing activity names
  • MDL-67440 - coretaskanalytics_cleanup_task extremely slow on Postgres site.
  • MDL-68210 - Unable to edit user overrides if assignment is not available to student
  • MDL-66900 - "Alternate image" gets removed upon editing course category settings.
  • MDL-66755 - After editing a forum post, a user is unsubscribed from the discussion
  • MDL-66626 - Assignfeedback_editpdf sending infinite request when page ready is not equal to page number of combined pdf
  • MDL-69297 - File-based Assignments shouldn't accept submissions without any files
  • MDL-69168 - Recently Accessed Items block uses stock LTI icon even if it has been customized
  • MDL-69215 - load_fontawesome_icon_map web service does not respect current theme
  • MDL-69414 - 3.9 regression - "Drag and drop onto image" flips in RTL lang.
  • MDL-69336 - Collapsing columns in dynamic tables no longer functions
  • MDL-55299 - Single and double quotes encoded in HTML characters in downloaded files
  • MDL-68618 - Forum idnumber update not working
  • MDL-68558 - Admin can get stuck on the Plugin dependencies check failure page
  • MDL-68444 - Calendar accessibility followups
  • MDL-69401 - Book's chapter title not showing max length limit
  • MDL-69358 - The 'backup_cleanup_task' task deletes records related to incompleted adhoc tasks
  • MDL-69375 - LTI Names and Roles Provisioning Service generates Link headers with incorrect format
  • MDL-66818 - Portfolio "export whole discussion" button should not be visible if the user has inadequate permissions
  • MDL-66707 - Forum too eager to mark messages as read (threaded view)
  • MDL-69296 - Pressing cancel on a resource activity settings page may result in a file download
  • MDL-69241 - Participants page pagination doesn't reset when applying filters
  • MDL-69199 - Complete user report incorrectly shows last modified time of quiz attempts, not time submitted
  • MDL-69112 - Underscore in folder name breaks assign feedback multi-upload
  • MDL-69089 - Content bank allows empty names
  • MDL-69069 - Insufficient colour contrast for in-place editable and drag and drop upload status
  • MDL-69054 - Edit button for badge backpack not displayed when version is OBv1.0
  • MDL-68964 - Swapping theme in chat window causing notice error
  • MDL-68889 - Recently accessed courses not functioning on small view ports
  • MDL-68731 - Forum digest processing does not mark posts as read
  • MDL-68706 - Course Custom field text area cant be emptied
  • MDL-42434 - Chat activity needs user help
  • MDL-69448 - Course Copy in 3.9 and 3.9.1 not working for teacher with extended permissions
  • MDL-69204 - User A can see the privacy and policies + data retention summary link on user B's profile page
  • MDL-69645 - Preferences window can be opened on Safe Exam Browser Mac clients during quizzes using manual configuration
  • Accessibility improvements:
  • MDL-69394 - Insufficient colour contrast for calendar event colour indicators
  • MDL-68344 - File Picker: focus lost on upload
  • MDL-69391 - Some dropdown menus have insufficient colour contrast between text and background
  • MDL-69389 - Insufficient colour contrast between link text and normal text
  • MDL-69387 - Completion checkbox images don't have sufficient colour contrast
  • MDL-69214 - Error reading database on Participants page if site:accessallgroups is set to prohibit
  • MDL-69115 - Course and category management page accessibility followups
  • MDL-69114 - Insufficient colour contrast for .*-info classes
  • MDL-69111 - Forum grading panel cannot be used when zoomed to 400%
  • For developers:
  • MDL-69068 - Allow behat generators to be pivoted
  • Security fixes:
  • Details of any security issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version

New in Moodle 3.9.1 (Jul 14, 2020)

  • General fixes and improvements:
  • MDL-60827 - OAuth 2 still expecting email verification after "Require email verification" has been disabled
  • MDL-68436 - Atto RecordRTC (record audio/video) plugin only works in the first editor on a page
  • MDL-69049 - Moodle 3.9 upgrade fails due to missing column in privacy plugins if standalone GDPR plugins were used
  • MDL-69106 - convert_submissions task with asynchronous document conversion cannot be completed by cron
  • MDL-69109 - Theme icons are lost after web upgrade in 3.9 or theme change in other versions
  • MDL-68992 - Update minimal age of digital consent according to current legislation
  • MDL-68215 - Make the Activity results block styling consistent with other blocks
  • MDL-69110 - Sorting does not work anymore in non-dynamic tables
  • MDL-66899 - Regrading quiz attempts should be logged
  • MDL-69077 - The capabilities moodle/question:tag* are not visible in the "Check permissions" page in the activity context
  • MDL-69021 - Alert links hard to distinguish
  • MDL-69099 - Some scheduled tasks are incorrectly labelled as "Disabled"
  • MDL-67294 - Choosing bulk removal of empty submissions causes an error
  • MDL-69031 - Missing Moodle app disable features settings for 3.9
  • Accessibility improvements:
  • MDL-69008 - Accessibility issues in the pagination bar template
  • Security improvements:
  • MDL-69047 - Content bank status message should be hard coded
  • Security fixes:
  • Details of any security issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.

New in Moodle 3.9 (Jun 15, 2020)

  • Major features:
  • Activity chooser overhaul:
  • MDL-67924 - Move turn editing on button out of the edit menu on boost
  • MDL-67264 - Rework/Redesign the activity chooser
  • MDL-67584 - Front end implementation of indicating favourites with a star
  • MDL-67586 - Update activity chooser to include recommended activities
  • MDL-67262 - Add admin page for recommending activities
  • MDL-67321 - Support categories/tabs in the activity chooser
  • MDL-67263 - Ability to search in the activity chooser
  • MDL-67585 - New API for extending the activity chooser and implementation of favouriting
  • MDL-68662 - Introduce an Activities and Resources tab
  • MDL-67587 - Add searching of the recommended activities admin page
  • H5P updates and improvements:
  • MDL-67814 - H5P editor integration
  • MDL-67734 - Create basic skeleton for a global xAPI library needed for H5P content
  • MDL-67337 - Apply Display H5P filter inside tags
  • MDL-68636 - Render specific icons for different H5P content types in content bank
  • MDL-67701 - New activity icon for H5P
  • MDL-67063 - Add a mechanism to support multi H5P core_api versions
  • MDL-67707 - Create a new H5P activity
  • MDL-67062 - Add Admin UI to delete existing H5P libraries
  • MDL-67788 - Add xAPI statement support to mod_h5p
  • MDL-67060 - Improve admin UI to manage H5P libraries and give information about H5P tools' status
  • MDL-67791 - Create xAPI activity report inside mod_h5p
  • MDL-68271 - H5P editor: support content-type translations
  • MDL-67810 - Integrate content bank and H5P content creator
  • MDL-67713 - Include H5P Activity backup and restore options
  • MDL-68227 - H5P editor: integrate translations with Moodle String API
  • MDL-68379 - Add support for result, attachments, context to core_xapi library
  • MDL-68381 - Add duration, completion and success to H5P activity attempts
  • MDL-68241 - Add xAPI result support on mod_h5pactivity
  • MDL-68826 - Add link to the content bank in the H5P activity
  • Content bank:
  • MDL-67786 - Create a new 'contentbank' plugin type and a new H5P plugin in the content bank
  • MDL-68314 - Backup and restore options for course level content bank
  • MDL-67800 - Implement events for content bank
  • MDL-67795 - Add a delete content option to the content bank
  • MDL-67812 - Create a new repository for the content bank
  • MDL-67813 - Implement search functionality for the repository_contentbank
  • MDL-68493 - Create a new view type list in the Content Bank
  • MDL-67797 - Implement search API for the content bank
  • MDL-68483 - Implement search functionality for the content bank
  • MoodleNet integration:
  • MDL-68111 - Core setting to toggle MoodleNet features globally (master)
  • MDL-68698 - Allow links to be imported by tool_moodlenet (all versions)
  • MDL-67884 - Add links to MoodleNet in Moodle (master)
  • Improved participants page filtering:
  • MDL-67917 - Create a single filter for tables and the AMD structure behind this
  • MDL-68348 - Update the participants filter to support filtering with additional logic operators
  • MDL-68246 - Update fetching of participants to support multiple values per filter
  • MDL-68169 - Add additional participants filter types and the ability to add multiple conditions to a filter set
  • MDL-68464 - "Enrol users" should not reload the page
  • MDL-68612 - Remove the previous (unified) filter from the participants page and deprecate relevant code
  • Course copy:
  • MDL-64843 - Course Copy User Interface
  • Improved Safe Exam Browser integration:
  • MDL-67850 - Add Safe Exam Browser integration to the standard Moodle package (moodle-quizaccess_seb)
  • MDL-68041 - New theme settings for secure layout - display lang menu and display logged-in user
  • Quiz and questions:
  • MDL-58645 - Make drag-and-drop onto image questions responsive and fix the print layout
  • MDL-62487 - Quiz manual grading: chosen options should be remembered as user preferences
  • MDL-68113 - Improve responsive design of drag-drop into text questions (also fixes layout when printed)
  • MDL-68446 - Drag-drop question types: remove the hard-coded maximum size limit on images
  • MDL-68382 - Update drag-drop marker questions to be more responsive (and improve print layout)
  • MDL-68367 - Question: Multi-choice Option to hide system 'Select ...'
  • MDL-68338 - GIFT question import/export format should support tags
  • MDL-67934 - Intelligent default idnumber when duplicating a question in the question bank
  • MDL-67351 - Create an additional admin "Required" setting flag and apply it to quiz require password setting
  • Badges:
  • MDL-66992 - Add support for Open Badges 2.1
  • MDL-68746 - Hide issuer details when creating badges with Open Badges 2.0 and above
  • MDL-68567 - Allow admins to manage available backpacks
  • MDL-66357 - Remove support for Mozilla Backpack
  • Accessibility audit improvements:
  • MDL-68542 - Change the bold plugin to use strong tags instead of b for accessibility
  • MDL-68541 - Limit the image description length and improve the alt text string
  • MDL-68548 - Change the italics plugin to use em tags instead of i for accessibility
  • MDL-68378 - Create an accessible change event
  • MDL-68551 - Change the strikethrough plugin to use del tags instead of strike for accessibility
  • MDL-67874 - Improve the contrast of browser focus outline
  • MDL-68299 - Improve UI accessibility on small view ports
  • Usability improvements:
  • MDL-66301 - Add ability to summarise all forums in a specific course
  • MDL-33671 - Add ability to bulk delete files in "My private files" repository
  • MDL-54554 - Improve error handling for unoconv (Universal Office Converter)
  • MDL-47750 - Make pasting images into the Atto HTML editor work (as much as browsers will let us)
  • MDL-45227 - Add text direction to default ATTO generated markup
  • MDL-58413 - Support internationalized domain names (IDN) in URL resources
  • MDL-68143 - Workshop: should remember collapsed/expanded sections
  • MDL-67613 - Add a new availability completion option - "previous activity with completion"
  • MDL-66463 - Add "Go to top" link when scroll down in boost and classic themes
  • MDL-68163 - Add ability to duplicate grade items in gradebook setup
  • MDL-67165 - Improve the user grade display modal
  • MDL-67160 - Show graded status in forum grading UI
  • MDL-65948 - Use the checkbox-toggleall component for the gradebook setup page
  • MDL-68217 - Reduce the size of titles on the recent activity page
  • MDL-68216 - Improve the recent activity block styling
  • MDL-68497 - Make fonts appear smooth in Firefox on Mac
  • MDL-68248 - My overview block: Add sort by short name
  • MDL-66911 - Display more information such as the URL beside licenses drop down menu in help icon
  • MDL-41958 - Show steps consistently during import
  • MDL-67703 - Make calendar manage subscription form more user friendly
  • MDL-68250 - Make book navigation easier to distinguish from activity navigation
  • MDL-67244 - Avoid HTML5 player video forced scaling for low resolution videos
  • MDL-67467 - Update progress report (Download in Excel-compatible format) dates to a sortable format
  • Other highlights:
  • Functional changes:
  • MDL-60817 - Notify the user when the original file extension has been removed or modified upon file editing in the filepicker
  • MDL-64310 - Avoid recycle bin locking the user's session during activity deletion or backup/restore (when it is enabled)
  • MDL-58827 - Add core profile fields to user filter
  • MDL-65796 - Include site name and link in contact request notifications
  • MDL-58866 - Modify the calendar events table to allow any component to create action events
  • MDL-46542 - Allow setting a subset of the available units in moodleform duration field
  • MDL-68563 - Enable additional content filters by default on new installs
  • MDL-67363 - Add a Quality of Service layer to the processing of the ad-hoc task queue
  • MDL-66920 - LTI 1.3: Allow tool to use JWKS URI rather than Public Key
  • MDL-67846 - Add name of user to fields included in forum exports
  • MDL-67547 - Render HTML in PDF dataformat export
  • MDL-66732 - Improve detection of non-public sites for registration
  • MDL-67072 - Include client_id and lti_deployment_id in OIDC Login Initiation request
  • MDL-68320 - Add a campaign feature, with a link to a Moodle page, to support sustainability
  • MDL-68409 - Stop using YUI modals in core/notification for alert and confirmation
  • MDL-68076 - Create "Feedback" link in Moodle to permanent survey site
  • MDL-56389 - Mark all as read in notifications menu should not apply to notifications received after the page was loaded
  • MDL-68465 - Subject for messages digest email should include site name
  • MDL-68568 - Move indent button to list group by default
  • MDL-57635 - User Tours: Restrict tours to account creation date, first login date or last login date
  • MDL-67384 - Upgrade jQuery EU Cookie Law popups to latest version
  • MDL-65306 - Prevent LTI Advantage external tool add failing due to uniqueness constraint and tag not persisting
  • MDL-66972 - Files API: Add Streaming file mime type support
  • For administrators:
  • MDL-62815 - Add new capabilities to control adding LTI activities from preconfigured tools
  • MDL-47271 - Add system status report including tasks with cli status script
  • MDL-45184 - Create user interface to add/delete new licenses
  • MDL-66332 - Add "show differences only" into tool_capability
  • MDL-65812 - Increase default session timeout and allow it to be configured in the GUI
  • MDL-64610 - Add support for per-task concurrency limits
  • MDL-66213 - It should be possible to view anonymous events in reports
  • MDL-66135 - Add support for custom course fields to Upload courses
  • MDL-59594 - Allow graceful fast exit of cron.php / adhoc_task.php via SIGTERM or SIGINT
  • MDL-65729 - Ad-hoc task processing for automated backups
  • MDL-29693 - Add filtering to the config changes admin report
  • MDL-66925 - Enable cli/adhoc_task.php to be run as a pseudo daemon with --keep-alive=60
  • MDL-67433 - Update admin/tool/task/cli/adhoc_task.php to respect task_adhoc_concurrency_limit
  • MDL-59487 - Re-run a scheduled task from the web
  • MDL-68261 - CLI changes should be included in the config changes report
  • MDL-67456 - Add more options to Maximum number of backups kept
  • MDL-65229 - Allow cron cli option to remotely stop all crons
  • MDL-68256 - Scheduled tasks admin: usability enhancements
  • MDL-67895 - Scheduled tasks admin: show the defaults in the form where you edit the settings for a task
  • MDL-66752 - Develop an automatic approval tool for delete/export of personal data with a standard completion reply
  • MDL-67990 - Increase the Antivirus default chunk size (ClamAV)
  • Mobile:
  • MDL-68537 - Update the tool_mobile_disabledfeatures setting with H5P and new blocks supported on the app
  • MDL-68294 - Add a new "Mobile app subscription plan" section in the Moodle app settings
  • MDL-65547 - Enable logging into the mobile app via QR code in the web user profile
  • MDL-67752 - Add new "activeusers" field containing last month active users in registration data
  • MDL-67753 - Enable "Mobile Notifications" when a site is registered
  • MDL-67907 - Site admins should see a warning asking them to enable the Mobile notifications plugin after registering for an Airnotifier key
  • Performance:
  • MDL-19711 - Read/Write splitting of DB operations to support primary/replica database configurations
  • MDL-39571 - Improve loading performance of filepicker when loading Recent Files
  • MDL-67689 - Improve theme designer mode performance
  • MDL-67681 - Improve course category tree cache performance by storing against single key instead of multiple
  • MDL-67040 - Improve the performance of the Analytics ML layer when using small datasets
  • MDL-68524 - Add Template and string prefetching
  • MDL-67635 - Speed up file system coretaskfile_trash_cleanup_task
  • MDL-66253 - Reduce the number of full table scans on the event table
  • MDL-68185 - Convert performance report to Check API
  • MDL-67075 - Extra session lock debugging for redis session handler
  • MDL-68577 - Tune the redis session handler to reduce blocking wait time
  • Security improvements and new features:
  • MDL-67309 - Have options to call check_password_policy on every login
  • MDL-64075 - Antivirus: Support remote scanning using TCP sockets.
  • MDL-67504 - Allow virus checks to be retried if they returned an error state
  • MDL-67362 - Add logging for admin setting changes to antivirus to config log
  • MDL-67545 - New config option for ClamAV scanning errors to prompt user to try again later
  • MDL-63734 - If passwordunmask field is hardcoded in config.php, do not show the value
  • For developers:
  • MDL-58018 - Reduce session lock contention with opt-in READ_ONLY_SESSION
  • MDL-59562 - Allow plugins to declare which major stable versions of moodle are supported
  • MDL-38511 - Plugins should be able to define new bulk user actions
  • MDL-67052 - Implement a Lock API factory using Mysql / MariaDB
  • MDL-67818 - Create a Check API
  • MDL-68329 - Improve the cache performance footer info even more
  • MDL-67432 - Allow quizaccess plugins to be able to set up external admin pages
  • MDL-67548 - Allow plugins to hook into course category deletion form
  • MDL-67386 - Upgrade boost to use Bootstrap v4.5.0
  • MDL-68386 - Charts API: support for Area Chart fill values from Chart.js
  • MDL-68477 - Charts API: support for legend options for Chart.js
  • MDL-68233 - Code in renderers should not refer to global $PAGE or global $OUTPUT
  • MDL-62757 - Validate boost presets before allowing to pick and use them
  • MDL-68177 - Course renderer UI elements split into different methods
  • MDL-67373 - Upgrade PHPMailer to latest version
  • MDL-67372 - Upgrade HTML Purifier to latest version
  • MDL-67385 - Upgrade MongoDB PHP Library to latest version
  • MDL-67383 - Upgrade VideoJS to latest version
  • MDL-67382 - Upgrade phpCAS to latest version
  • MDL-67378 - Upgrade mustache.js to latest version
  • MDL-67376 - Upgrade loglevel.js to latest version
  • MDL-52846 - Deprecation of legacy cron
  • MDL-65835 - Deprecate plagiarism_get_form_elements()
  • MDL-63580 - Deprecate dupe cron_run_single_task() function
  • MDL-67845 - Deprecate 'enrol_database_admin_setting_category' class
  • MDL-67872 - Deprecate and fix plagiarismlib use of config vars
  • MDL-68495 - Allow flexible_table to update dynamically
  • Component API upgrades:
  • admin/tool/log/upgrade.txt
  • admin/tool/upgrade.txt
  • auth/shibboleth/upgrade.txt
  • auth/upgrade.txt
  • badges/upgrade.txt
  • blocks/upgrade.txt
  • cache/upgrade.txt
  • calendar/upgrade.txt
  • course/format/upgrade.txt
  • course/upgrade.txt
  • dataformat/upgrade.txt
  • enrol/upgrade.txt
  • filter/upgrade.txt
  • grade/grading/form/upgrade.txt
  • grade/report/upgrade.txt
  • grade/upgrade.txt
  • lib/upgrade.txt
  • media/upgrade.txt
  • message/upgrade.txt
  • mod/assign/upgrade.txt
  • mod/feedback/upgrade.txt
  • mod/forum/upgrade.txt
  • mod/quiz/upgrade.txt
  • mod/scorm/report/basic/upgrade.txt
  • mod/scorm/upgrade.txt
  • mod/upgrade.txt
  • mod/workshop/upgrade.txt
  • question/format/upgrade.txt
  • report/upgrade.txt
  • tag/upgrade.txt
  • theme/upgrade.txt
  • user/upgrade.txt

New in Moodle 3.8.3 (May 11, 2020)

  • General fixes and improvements:
  • MDL-67442 - Assignment online text and feedback comments don't expand using Safari
  • MDL-66245 - GDPR data request export not usable when using special characters (invalid file paths)
  • MDL-52319 - Failed environment.xml check does not prevent plugin from being installed
  • MDL-58964 - Add existing class attributes to Boost flat navigation nodes
  • MDL-67995 - Single activity format dropdown from types of activity empty
  • MDL-68047 - TCPDF lib change results in deleted .jpg images in plugins such as mod_certificate
  • MDL-68116 - Prepare Moodle to be ready when h5p.org down completely so that only the author can see the test content
  • MDL-68277 - Essay question type review: answer box should be the right size
  • MDL-66200 - Gradebook CSV import deletes existing feedback comments if set to be ignored
  • MDL-68183 - Searching for user by email (case-insensitive + accent-sensitive) is too expensive on MySQL with many users
  • MDL-66671 - Missing LTI resource crashes sync_grades task
  • MDL-68223 - When grading assignments unable to select annotation comment using the mouse
  • MDL-67886 - admin/cli/check_database_schema.php does not check indexes
  • MDL-66849 - Appearance of tooltip title attributes in custom menu is incorrect
  • MDL-68146 - help and advanced icons are shown twice for checkboxes in forms
  • MDL-68049 - Link-level LTI memberships service not working
  • MDL-65539 - Keyboard drag and drop ordering of sections in courses is broken and confusing
  • MDL-68427 - paging_bar previous/next buttons have wrong page numbers
  • MDL-67930 - Forum discussions with hidden group picture display as broken links
  • MDL-68189 - Names of sections renamed inline do not change in the keyboard drag and drop menu
  • MDL-68509 - Deleting a temporary table forces a reload of the databasemeta cache (Backport of MDL-58584)
  • MDL-67499 - Cannot delete user if email is over 89 characters long
  • MDL-67751 - Folders don't get listed in course resources
  • MDL-67672 - As soon as fullnamedisplay and alternativefullnameformat differ, names in profile title and user menu differ
  • Accessibility improvements:
  • MDL-67663 - Forum grading submit grade form does not conform to accessibility guidelines
  • MDL-64494 - Contrast of colours for success, info, error and warnings text is not accessible
  • MDL-67968 - Calendar: New event: Accessibility issues
  • MDL-67970 - Course homepage: Editing mode on: Accessibility issues
  • MDL-68148 - Course participants: Main: Accessibility issues
  • MDL-67902 - Calendar month view accessibility issues
  • MDL-68135 - Course homepage: View mode: Accessibility issues
  • MDL-67901 - No label for clear my choice option on multiple-choice questions
  • MDL-68196 - Course participants: Enrol user: Accessibility issues
  • MDL-68266 - Course management: insufficient colour contrast
  • Security improvements:
  • MDL-68193 - db_replace() doesn't emit any audit trail, should emit a Moodle event
  • MDL-68443 - Improve XMLDB path validation of included files
  • Security fixes:
  • Details of any security issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.

New in Moodle 3.8.2 (Mar 9, 2020)

  • General fixes and improvements:
  • MDL-67175 - Chrome 80 support
  • MDL-57755 - Notifications automatically marked as read when messaging deactivated
  • MDL-67132 - LTI Adv grades do not roll up in course total
  • MDL-67414 - PostgreSQL 12.x support
  • MDL-67894 - Database error when sorting responses by "Groups"
  • MDL-67204 - Assignment calendar events with "alwaysshowdescription" get updated on every task run because of not updated "lastcron" field
  • MDL-65952 - mod_scorm automatically checks "passed" and "completed" completion options
  • MDL-67690 - Course Overview doesn't remember Starred filter state
  • MDL-63316 - Give back the default sort behaviour (lastname) in the participant table
  • MDL-49103 - Badge baking uses tEXt instead of iTXt
  • MDL-64531 - Delete quiz JSON error if question category deleted
  • MDL-67532 - Create Badge Page -- language defaults to 'Afar'
  • MDL-67817 - Update time zones listed in the language strings
  • MDL-67675 - Cannot cut and paste if H5P button is added to the Atto toolbar
  • MDL-60126 - Competency user data is not being erased when user gets deleted
  • MDL-67842 - Cannot remove the idnumber from a question
  • MDL-67674 - Performance: Course category tree cache can get built in parallel
  • MDL-66024 - tool_uploadcourse: fullname/shortname fields don't get length checked while uploading
  • MDL-51225 - Q&A forum recent activity reveals posts
  • MDL-67486 - Minimize how long we hold the global cron lock for
  • MDL-67721 - No 'View grade' button for single simple discussion forum
  • MDL-65884 - "Activity names auto-linking" filter and activity name like "-" (hyphen) breaks course content visualization
  • MDL-67471 - mark_notification_read fails if messaging disabled
  • MDL-66721 - Add an activity or resource menu "add" button appears below the fold
  • MDL-67364 - TinyMCE editor font sizes are too small in Classic theme (and other child themes)
  • MDL-67891 - Uninstalling Cohort roles tool can break site upgrade
  • MDL-67511 - Toast wrapper can interfere with Forum grading buttons
  • MDL-63424 - Required field indicator missing from Assign submission page
  • MDL-66875 - Calendar - Navigating months - URL doesn't work
  • MDL-66858 - HTML5 tag is filtered out by Atto editor
  • MDL-66220 - Q&A forum allows students to reply to posts they cannot see
  • MDL-67830 - Error being logged when navigating from gradebook to quiz
  • MDL-67746 - Cleanup of task logs fails with big number of records to be deleted
  • MDL-66897 - 'The grades were not saved...' should not be displayed as a success message
  • MDL-67142 - Long quiz names break deletion ad hoc task when questions are backed up
  • MDL-67312 - Events without subscriptions can lock users out of their sites
  • MDL-66108 - Error "You cannot make a category of one of its own subcategories."
  • MDL-67644 - Allow to disable identity providers via Moodle app feature settings
  • MDL-67806 - Allow to disable Dark Mode via Moodle app feature settings
  • MDL-67237 - Option to disable "H5P Offline" feature in the app
  • MDL-67980 - Sort ad-hoc tasks by "nextruntime"
  • MDL-65573 - Splitting a discussion creates discussion record with an incorrect first post author
  • MDL-67732 - Respect the capability for displaying the fullname
  • MDL-64686 - "Search courses" layout should look good on all screen sizes
  • MDL-67942 - Quiz: report delete_selected_attempts notice when a user has multiple enrolments
  • MDL-67424 - Errors showing for Forums in Complete Report for students
  • Accessibility improvements:
  • MDL-67969 - Calendar: View event details: Accessibility issues
  • MDL-67899 - Emoji picker button does not have a description
  • MDL-67876 - Forms with client-side validation should always scroll to the invalid element when you try to submit
  • MDL-67865 - Broken ARIA reference in the user menu
  • MDL-67863 - Ensure keyboard focus order is efficient and logical
  • MDL-67862 - Empty h3 tag in message deletion dialogue
  • MDL-67684 - Cache data contained in nested ul
  • MDL-67577 - Accessibility: Wrong tabindex order in top navbar (message+notification)
  • MDL-61390 - Forum: Heading structure on Search results page
  • MDL-61389 - Forum: "Discuss this topic" accessibility
  • MDL-59817 - Atto Accessibility Checker not catching accessibility issues in Firefox
  • MDL-35971 - Forum discussion table has no summary

New in Moodle 3.8.1 (Jan 13, 2020)

  • Fixes and improvements:
  • MDL-67327 - Switching "JavaScript Cache" on crashes first.js
  • MDL-48024 - Plugins should be able to provide data generators for Behat
  • MDL-65956 - A teacher trying to remove a submission without having the relevant capability encounters an error
  • MDL-67410 - Ajax call to enroll potential users is too slow
  • MDL-66581 - Password reset email doesn't fill in $a->link when auth_method is LDAP
  • MDL-67392 - Forum information about timed discussion doesn't handle correctly "displaystartdate" and "displayenddate" containing quotes
  • MDL-67285 - Filepicker does not work in the modal forms - unable to click on input texts
  • MDL-66503 - Scorm player is really narrow in new window on classic theme
  • MDL-66871 - Moodle calendar is not able to import .ics files with repeated events anymore
  • MDL-67042 - Block overview course filter displays hidden custom fields
  • MDL-65735 - Activity completion report - clicking initial should reset page number
  • MDL-67152 - Current day not displayed by default when using the calendar day view
  • MDL-67458 - Fatal error if cohort_role_sync task is run when an assigned role no longer exists
  • MDL-67359 - Relocate the Notifications area in the grader interface
  • MDL-67300 - Calendar: Inconsistent behaviour of managegroupentries capability
  • MDL-67277 - Discussion list shows subjects in bold
  • MDL-67154 - Quiz print version should not split questions over two pages
  • MDL-66708 - LTI 1.3 private key reset on each tool edit
  • MDL-64695 - tool_dataprivacy doesn't filter multilang tags within $SITE->fullname
  • MDL-67233 - Choices with only open dates in the future do not appear on timeline
  • MDL-67336 - Forum inline reply option is applying filters before saving content in the DB
  • MDL-67596 - Cron / adhoc task runners ramp up slowly for no reason
  • Security fixes:
  • Details of any security issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version

New in Moodle 3.8 (Nov 18, 2019)

  • Major features:
  • Analytics:
  • MDL-64739 - Analytics models may be restricted to category or course contexts
  • MDL-65588 - Insights about students who have not logged in recently
  • MDL-65562 - Report on the actions executed by users on predictions
  • MDL-65633 - Allow targets to limit the analysis interval to a specific interface or parent class.
  • MDL-66234 - Extra garbage collection for analytics
  • MDL-66254 - Require enrolments to be active for most of the analysis interval
  • MDL-62191 - Add bulk actions for analytics' insights
  • MDL-66536 - Insight notifications improvements
  • MDL-60949 - Analytics models should be sorted by name and not last modified
  • MDL-66004 - Allow the Python machine learning backend to run from a separate server
  • MDL-58992 - Add multi-class capabilities to prediction processors
  • MDL-65585 - Global on/off switch for analytics
  • H5P integration:
  • MDL-66388 - Create a new button in Atto to add H5P content in anywhere from hp5.com and h5p.org external URLs
  • MDL-66398 - Improve H5P filter to allow internal H5P content URLs
  • MDL-66593 - Implement backup and restore process for H5P content
  • MDL-67059 - Add Admin UI to manually upload H5P content-type libraries
  • MDL-67057 - Create a capability to update H5P content-type libraries
  • MDL-67058 - Create a task to install H5P content-type libraries
  • MDL-66609 - Create the basic skeleton, library and interfaces for rendering H5P content
  • MDL-66399 - Improve H5P Atto button to upload content
  • MDL-66397 - Create a new filter to convert h5p.com and h5p.org URLs to embed code
  • Forum summary report:
  • MDL-66153 - Forum report: Basic skeleton
  • MDL-66298 - Forum summary report option to message selected users
  • MDL-66268 - Groups filter in forum summary report
  • MDL-66373 - Dates filter in forum summary report
  • MDL-66297 - Link forum summary report to export of each user's post content
  • MDL-66694 - Add columns for word count and character count to the forum summary report
  • MDL-66768 - Add the ability to download the forum summary report
  • Forum export:
  • MDL-66075 - Forum export functionality
  • MDL-66631 - Dates filter in forum export
  • MDL-66808 - Forum export options for human-readable dates and removing HTML
  • Forum grading:
  • MDL-66074 - Create forum grading interface
  • MDL-66358 - Display grading form in the grading panel
  • MDL-66365 - Add a button to display the entire discussion for a post being graded
  • MDL-67116 - Make 'require grade' an activity completion criterion for the forum
  • MDL-66381 - Forum grading user search
  • MDL-66360 - Forum grading option to send notification to student
  • MDL-66906 - Forum view grades option for students
  • MDL-66359 - Support restricting the user list to a specific group
  • Forum UI improvements:
  • MDL-66477 - Create settings side drawer for new discussion view
  • MDL-64821 - Create new discussion view for forum
  • MDL-66481 - Update display of discussion in discussion list table
  • MDL-65129 - Search starred discussions only option in forum advanced search
  • Assignment:
  • MDL-63349 - Assignment: Annotate PDF - Rotate submitted image automatically
  • MDL-66537 - Annotate PDF - Right-to-left UI - The rotate buttons order is confusing
  • MDL-63878 - Enable the saving and printing of annotated PDFs from previous attempts
  • MDL-64811 - Assignment: Add warning about students falling into Default group if group submissions are enabled but not required
  • MDL-65797 - Performance improvements for user / group overrides for mod assign
  • Question bank:
  • MDL-66553 - Display ID number and tags in the question bank UI
  • MDL-66816 - Question bank: replace the row of edit icons with an Edit menu
  • MDL-67153 - Allow question types to add extra actions to the Question bank edit menu
  • Course relative dates (experimental):
  • MDL-66147 - Assignment due date relative to the student course start date
  • MDL-66144 - Weeks format relative dates
  • MDL-66143 - Course relative dates mode setting
  • MDL-66148 - Option to override the assignment due date in a relative dates course
  • Course overview:
  • MDL-64901 - block_myoverview: Add admin setting to control the available layouts
  • MDL-66016 - An admin can set which filters are available for users to select in their Dashboard course overview
  • MDL-66017 - An admin can specify a course custom field as a filter for users to select in their Dashboard course overview
  • MDL-63612 - Course card pattern colours may be specified by an admin
  • MDL-65621 - Courses with course visibility set to hide should be labelled 'Hidden from students' in the course overview
  • MDL-64860 - block_myoverview: Improve pagination widget
  • MDL-64094 - Change 'Hidden' to 'Removed from view' in the course overview
  • Emojis:
  • MDL-65896 - Add emojis to messaging
  • MDL-46779 - Atto should support full emoji
  • Usability improvements:
  • MDL-34498 - Session Timeout alert
  • MDL-61043 - Provide a more consistent and better way of selecting and deselecting all items in a list
  • MDL-48610 - Show alphabet filter in grader report even when there are less than 100 users
  • MDL-38555 - Forms do not prevent same data submission multiple times
  • MDL-59639 - Browser back button should work as expected in the administration menu with Boost theme
  • MDL-57208 - Let users set their default homepage
  • MDL-66178 - Participants list - Filter users with no roles
  • MDL-65671 - Calendar view selector enables users to switch between month, day and upcoming events
  • MDL-66563 - Improve drag and drop question accessibility in high-contrast mode
  • MDL-64032 - The UI for setting enrolment end date/duration should be consistent
  • MDL-65406 - Boost Theme accessibility: Nav drawer should be marked up as list
  • MDL-65915 - Better progress display while re-grading quiz attempts
  • MDL-67048 - Drag and drop upload progressbar invert inner and outer
  • Other highlights:
  • Functional changes:
  • MDL-64745 - Administrative setting to show/not show "hide" feature in online users block
  • MDL-62835 - The description should be displayed when viewing a Book, Lesson or IMS content package
  • MDL-66496 - Option to include author information when importing entries into a database activity
  • MDL-66740 - Make "course request" capability category context instead of system context
  • MDL-65093 - Users should be informed that they can't block a user who has permission to message all users
  • MDL-64002 - Add send message buffering
  • MDL-66226 - Show plain text in Messages summary pane
  • MDL-61649 - Several core emails provide only text format
  • MDL-35773 - Include files option in backup settings
  • MDL-63453 - VideoJS upgrade to 7.6.5 including HTTP Live Streaming (HLS) and Dynamic Adaptive Streaming over HTTP (MPEG-DASH) support
  • MDL-56549 - Add support for FLAC files
  • MDL-62836 - Make awarding badges groups/groupings compliant
  • MDL-60916 - Global Search: Replace course search form with global search
  • MDL-64438 - Display course category in course related block
  • MDL-66326 - Global search: Delete from search index when courses are deleted
  • MDL-65183 - block_timeline can cause JSON parse error on dashboard when activities are saved with newline characters
  • MDL-66612 - Calendar course event icon is different from course icon
  • MDL-66775 - Add new Mobile setting for forcing a minimum app version to access the site
  • MDL-66375 - Option to disable the "Forgotten password" feature in the app
  • MDL-66753 - The People block is no longer needed and should be removed from core
  • For administrators:
  • MDL-66034 - Log role changes in more detail
  • MDL-66570 - Allow disabling of cron output when capturing logs
  • MDL-61804 - Let the admin control if lists of courses should be pre-sorted by visibility or not
  • MDL-66133 - Let the administrator configure which user filters are shown by default
  • MDL-63643 - Add ability to search/filter users by Last IP Address
  • MDL-66119 - Disable GUI plugin uninstalls (eg $CFG->uninstallclionly similar to $CFG->disableupdateautodeploy)
  • MDL-65201 - Automated backup course ordering
  • MDL-65404 - Add column for enrol start dates to Upload users CSV
  • MDL-40669 - Upload users via text file should include the optional user field 'disable notifications'
  • MDL-66705 - Add an example csv file for bulk uploading of users
  • MDL-59470 - Option to duplicate a user tour
  • MDL-65622 - Add a new event when a grade item has been created
  • MDL-65369 - Include changed course settings in course_updated event
  • MDL-65492 - Cache admin UI: make it easy re-purge the cache you just purged
  • MDL-63127 - Redis Cache: implement compression
  • MDL-66428 - Allow Redis cache to use PHP extension Zstd
  • MDL-46317 - Private files space setting should use MB not Bytes
  • MDL-7339 - Change 'Open to Google' setting to 'Open to search engines'
  • MDL-65208 - Add cli upgrade option to test if an upgrade is required
  • MDL-58439 - Admin pages login as guest and then throw Access denied error (should prompt for login) require_admin()
  • For developers:
  • MDL-66675 - New $CFG->behat_pause_on_fail option added
  • MDL-46267 - The $CFG->httpswwwroot was removed
  • MDL-66335 - New steps to navigate straight to any plugin web page. Plugins must implement their own resolver between page types and URLs.
  • MDL-65349 - Profiling included and excluded URLs now are matched from start. Some adjustments may be needed.
  • MDL-66633 - Quiz: quiz attempt API should let you create an attempt for a different user
  • MDL-66709 - Components other than activity modules should be able to backup and restore question attempt data
  • MDL-66754 - Question engine: report methods should not require a list of slots
  • MDL-62497 - Add a new transpilation tool for ES6
  • MDL-50346 - Remove the restriction to forbid subdirectories in the templates directory
  • MDL-66327 - $DB->get_records uses a lot of Peak RAM (with Postgres)
  • MDL-66173 - Add hooks to extend all forms with /login/
  • MDL-66367 - Caching of templates should use a new templaterev variable
  • MDL-66304 - Allow support for xsendfile in alternative_file_system_class independently of local files
  • MDL-66166 - Improve the moodlebot user agent and expose a function for plugins to use
  • MDL-65646 - Move dependencies and subplugins to JSON
  • MDL-55751 - Remove the CSS chunker from Moodle
  • MDL-65438 - Allow themes to alter the core css url's
  • MDL-65747 - Removed unused Pear_Crypt_CHAP library
  • Web services additions and updates:
  • MDL-65794 - Make some web service calls idempotent over http GET
  • MDL-67043 - Web service to enable H5P offline access in the Moodle app
  • MDL-64254 - New Web Services for updating a forum post (or a discussion topic post)
  • MDL-65017 - New web service to delete forum posts
  • MDL-64588 - New web services for adding and deleting comments
  • MDL-66376 - Enforce app security by using tokenpluginfile.php instead webservice/pluginfile.php
  • MDL-65400 - Blocks Web Services (for course and dashboard) should return the block settings
  • Component API upgrades:
  • admin/upgrade.txt
  • analytics/upgrade.txt
  • blocks/recentlyaccessedcourses/upgrade.txt
  • blocks/starredcourses/upgrade.txt
  • blocks/upgrade.txt
  • cache/upgrade.txt
  • calendar/upgrade.txt
  • comment/upgrade.txt
  • course/format/upgrade.txt
  • course/upgrade.txt
  • customfield/field/upgrade.txt
  • enrol/ldap/upgrade.txt
  • enrol/upgrade.txt
  • lib/mlbackend/php/upgrade.txt
  • lib/mlbackend/python/upgrade.txt
  • lib/upgrade.txt
  • media/upgrade.txt
  • message/upgrade.txt
  • mod/assign/upgrade.txt
  • mod/book/upgrade.txt
  • mod/feedback/upgrade.txt
  • mod/forum/upgrade.txt
  • mod/glossary/upgrade.txt
  • mod/lti/upgrade.txt
  • mod/quiz/report/upgrade.txt
  • mod/upgrade.txt
  • mod/wiki/upgrade.txt
  • mod/workshop/upgrade.txt
  • question/type/upgrade.txt
  • question/upgrade.txt
  • search/upgrade.txt
  • theme/upgrade.txt
  • webservice/upgrade.txt

New in Moodle 3.7.3 (Nov 12, 2019)

  • Fixes and improvements:
  • MDL-46978 - Edit grade item changes visibility of category total
  • MDL-63895 - Profile / Participants list: Have roles with "Capabilities/moodle/course:viewsuspendedusers" respect the given setting
  • MDL-61121 - Assignment accessibility correct use of tables and toggleable +/- link
  • MDL-66409 - Lesson's numerical answers with value 0 are deleted on edit
  • MDL-62915 - Privacy API allows Primary Admin Account to be deleted
  • MDL-66433 - Courses with course visibility set to hide should be labelled 'Hidden from students' in the course overview (backport of MDL-65621)
  • MDL-66156 - Deleting a course that's been starred causes 'invalidrecord: Can't find data record in database table course.' error
  • MDL-64064 - Timeline block item dates should include the year
  • MDL-66091 - Analytics upcoming activities due notification and prediction should be clearer
  • MDL-51327 - Unzipped Embedded Files Disappear when Topic is Saved
  • MDL-66946 - Teachers appear in quiz reports when "enrolled users who have, or have not, attempted the quiz" option selected
  • MDL-66801 - Moodle XML question export/import does not include question-category idnumbers
  • MDL-66656 - Social Format Course-Edit Summary Icon leads to 'File Not Found'
  • MDL-66197 - When installing multiple languages with parents only the first parent is installed
  • MDL-66090 - Upcoming activities due notification email should come from the support contact
  • MDL-63250 - RecordRTC and assignment: Players are too big
  • MDL-65310 - Activities with Available from date and without deadline show as overdue in Timeline Block
  • MDL-66450 - User data label should wrap in enrol users modal window
  • MDL-66247 - Notification focus is not ARIA compliant
  • MDL-66915 - Assignment notifications with marking workflow get stuck in cron
  • MDL-66764 - Quiz "Try another question like this one" repeats random questions too often
  • MDL-66851 - Hidden courses visible in block_starredcourses
  • MDL-66293 - Pagination overflows modal window on add random question
  • MDL-66548 - Timer Issue - Conflict between Classic Theme and Quiz Setting
  • MDL-66864 - Upgrade fails with error 'number of parameters must be between 0 and 65535' on large sites
  • MDL-66328 - Groups overview runs out of memory on very large courses
  • MDL-65429 - Include unsubscribes in the forum subscription cache to improve performance
  • For developers:
  • MDL-66675 - Add pause on fail option to behat
  • MDL-66335 - Behat: new steps to navigate directly to a pages for any plugin, possibly while logging in
  • Security fixes and improvements:
  • Security fixes:
  • Details of any security issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.

New in Moodle 3.7.2 (Sep 16, 2019)

  • Fixes and improvements:
  • MDL-59911 - Unoconv doesn't work after the scheduled task conversion_cleanup_task has run
  • MDL-65219 - Broken link in messages contact request notification
  • MDL-58026 - Regrading a quiz in progress causes student to lose data
  • MDL-66071 - Cannot update user profile with non-internal auth method such as LDAP
  • MDL-63458 - Do not display "Send a message" option in course participants list if messaging is disabled site-wide
  • MDL-33884 - Export of questions with lots of images as Moodle XML runs out of memory
  • MDL-66136 - Online text assignment error when attempting to submit an image only (with no text)
  • MDL-66021 - 'Delete and then restore' doesn't delete when using asynchronous restore
  • MDL-64598 - Emojis are very big in forum notification emails
  • MDL-35939 - Quiz page title does not tell the user where they are in the quiz
  • MDL-65555 - Course restore excluding groups still restores quiz overrides resulting in extra calendar events
  • MDL-65517 - Manually completed course activities showing in Timeline
  • MDL-65925 - Grade page is broken if submission other than PDF was deleted
  • MDL-66110 - Error reading from database after upgrade to 3.7.1 (MySQL 8.0.2)
  • MDL-65679 - Expanding/collapsing PDF comments causes other annotations to change position
  • MDL-57342 - "Is this your first time here?" shows when self registration disabled and no message in auth_instructions
  • MDL-65954 - Exporting table data to PDF places entries in wrong columns
  • MDL-65116 - Assignment due date does not update for group selection
  • MDL-65786 - Blog-like format forum no longer shows unread messages count
  • MDL-65908 - Annotated PDF - Comments can't be added and viewed in RTL user interface
  • MDL-65749 - Upgrade PHPMailer
  • MDL-50472 - Maintenance Mode messages don't appear with Force Login enabled
  • MDL-52849 - File picker error messages are not read out in assignment to screen reader users
  • MDL-66272 - Custom theme favicon on LTI provider site breaks LTI authentication
  • MDL-66230 - Deleting a user tour causes error in privacy data export
  • MDL-64757 - Some Dashboard elements are following browser language, not page language
  • MDL-66120 - Remove community finder block - as part of Sunsetting moodle.net
  • MDL-66072 - Remove course-sharing functionality - as part of Sunsetting moodle.net
  • MDL-65595 - Multiple choice question text not wrapped in Lesson
  • Security fixes and improvements:
  • Security fixes:
  • MSA-19-0018 JavaScript injection possible in some Mustache templates via recursive rendering from contexts
  • MSA-19-0019 Course creation did not check the creator's role assignment capability before automatically assigning them as a teacher in the course
  • MSA-19-0020 Python Machine Learning dependency versions bumped
  • MSA-19-0021 Activity :addinstance capabilities were not respected when creating a course in single activity format
  • MSA-19-0022 Open redirect in the mobile launch endpoint could be used to expose mobile access tokens
  • MSA-19-0023 Forum subscribe link contained an open redirect if forced subscription mode was enabled
  • Security improvements:
  • MDL-65443 - Context freezing not logged

New in Moodle 3.7 (May 22, 2019)

  • Major features:
  • Forum:
  • MDL-22077 - Private reply option
  • MDL-65033 - Ability to star discussions
  • MDL-64956 - In-page forum post reply
  • MDL-65032 - Ability to lock discussions manually
  • MDL-65069 - Ability to create discussions without changing page
  • MDL-64820 - Forum display updated to use templates
  • MDL-65071 - List of discussions is sortable
  • MDL-65034 - Accessibility improvements to forum discussions
  • MDL-65394 - Forum rendering speed improvements
  • MDL-46881 - Forum scheduled task (cron) has been refactored into several smaller cron tasks
  • Messaging:
  • MDL-65015 - HTML in messages is cleaned according to site/role "trusttext" configuration
  • MDL-64715 - Personal space in messaging drawer for draft messages etc.
  • MDL-64495 - New settings page for messaging-related settings
  • MDL-63620 - Group conversations can be created from both the auto-create groups edit page and the import groups tool
  • MDL-63915 - Old messaging user interface removed and replaced with a new widget
  • MDL-64773 - Messaging conversations can be muted
  • MDL-65132 - New capability for deleting messages for all users within group conversations
  • MDL-64017 - Message processors can identify and handle group messages
  • MDL-64703 - Updated interface on the messaging index page
  • MDL-64137 - Searches highlight text that matches the search term
  • MDL-65114 - Timestamps in the main conversation list include days and years
  • MDL-64093 - New admin setting to set the site default for using enter key to send messages
  • MDL-60680 - Improved push notifications
  • Themes:
  • MDL-58428 - All Boost templates moved to core
  • MDL-64505 - Classic theme introduced to core
  • MDL-64506 - Bootstrapbase and related themes (Clean/More) removed from core
  • MDL-65449 - Themes can override the course pattern used on the dashboard
  • LTI:
  • MDL-62599 - LTI 1.3 support introduced
  • Open Badges:
  • MDL-63262 - Support added for Open Badges 2.0 platforms
  • MDL-63876 - Moodle competencies can be linked to criteria for badges in Open Badges 2.0
  • Dashboard and Course Overview:
  • MDL-63794 - Course categories can be displayed on courses in the course overview block
  • MDL-64855 - New admin setting to control the output of the course category in the myoverview block
  • MDL-64376 - Scrolling improved in the recently accessed courses block
  • MDL-64903 - Course filters are logically grouped in the myoverview block
  • MDL-64898 - The completion progress bar is no longer displayed for teachers in the myoverview block
  • Learning Analytics:
  • MDL-61667 - Improvements to the install/uninstall procedure the Analytics API offers to plugins
  • MDL-64783 - New “upcoming activities due” model added
  • MDL-65582 - The "upcoming activities due" model is enabled by default
  • MDL-64786 - Users can overwrite default model names
  • MDL-64693 - New target added for course competencies achievement
  • MDL-64636 - New target added for course completion
  • MDL-65176 - New target added for students at risk of not getting the minimum grade to pass a course
  • MDL-64954 - A "More info" link provides more information about different core analytics elements
  • MDL-64777 - Default models can be restored
  • MDL-64787 - Analytics models can be evaluated using a trained machine learning backend
  • MDL-60944 - Models can be created, deleted, imported and exported
  • MDL-64779 - Ability to choose whether to include trained model weights in an export
  • MDL-65175 - When evaluating a model, the time-splitting method can be set using the web interface
  • MDL-65177 - It is possible to set the frequency of insight generation for models based on assumptions (e.g. the "upcoming activities due" model)
  • MDL-60936 - "Enabled time-splitting methods" analytics setting converted to a list of default time-splitting methods for a model's evaluation
  • Usability improvements:
  • MDL-5311 - Choices can be cleared for single-answer multiple-choice questions
  • MDL-43385 - Print output of books has been improved
  • MDL-28505 - Course backup and restore can be performed asynchronously
  • MDL-61537 - Ability to rotate pages when annotating PDFs in assignment feedback
  • MDL-63773 - Assignment settings form hides irrelevant options instead of disabling them
  • MDL-64552 - Moodle forms inside the admin top level directory hide irrelevant options instead of disabling them
  • MDL-64557 - Moodle forms inside the course directory hide irrelevant options instead of disabling them
  • MDL-60474 - The student selection tool in the grading interface reflects the sorting order of the grading table
  • MDL-39261 - File support added to lesson essay questions
  • MDL-60913 - Global search results can be split into tabs by category
  • MDL-50793 - Teachers can see hidden pages in book activities
  • MDL-60059 - Workshop activity action events support drag and drop in the calendar
  • MDL-62142 - Accessibility improvements for Boost course landing page
  • Other Highlights:
  • Functional changes:
  • MDL-31355 - Forum due dates are added to the calendar
  • MDL-36088 - Adding/modifying questions to/in the question bank is logged
  • MDL-49673 - Assignment has an option to not display the grader to students
  • MDL-31852 - HTML tags allowed in the title of Lesson "content pages"
  • MDL-64377 - Ability to delete assignment file submissions
  • MDL-64243 - Nextcloud serves "offline" files consistent with other integrations (e.g. OneDrive and Google Docs)
  • MDL-53346 - User competencies in courses show the linked learning plans
  • MDL-62223 - Improved submission statements for assignments
  • MDL-52828 - Competencies can be graded when grading an activity
  • MDL-65154 - Course competencies page shows students which competencies are linked to an activity
  • MDL-64414 - "AND" and "OR" are available in if-conditions for grade calculations
  • For administrators:
  • MDL-10965 - There is a new capability available to view the list of non-hidden courses
  • MDL-57898 - New custom field types plugin and course custom fields functionality
  • MDL-49399 - Output can be captured during cron and task runs
  • MDL-62869 - Global search can be configured to include all visible courses
  • MDL-64322 - New data privacy capability to restrict submission of deletion requests for other users
  • MDL-63569 - A constant can be added to the subject of all emails
  • MDL-62907 - The standard log table 'other' field can be set to store in JSON format
  • MDL-64281 - Frame embedding is always allowed for requests coming from the Moodle app
  • MDL-61164 - Tasks using legacy cron functionality moved to scheduled tasks
  • MDL-57900 - Added fields to provide site metadata to support learning analytics
  • MDL-63623 - Plugins can be uninstalled via command line
  • MDL-64323 - Additional fields are included in user searches when making new data requests on behalf of a user
  • MDL-64347 - Improved processing of scheduled and ad-hoc tasks
  • MDL-65142 - Tables can be downloaded in PDF format (new dataformat)
  • MDL-64314 - Insights notification enable web notifications by default
  • MDL-65138 - Course sharing to Moodle.net is disabled by default (configured via a new setting)
  • MDL-64454 - Site administration page warns if cron does not run frequently
  • MDL-62728 - The language packs page displays a warning when locales are not fully supported
  • MDL-64071 - Improved diagnostics when testing LDAP settings
  • MDL-64823 - Disabling mobile plugins works as expected
  • MDL-44484 - Theme field available in the bulk upload users tool
  • MDL-64477 - Learning analytics usage data is included with site usage data
  • MDL-64337 - Mobile app enabled sites prompt users that do not use the app to download it in notification emails
  • MDL-64339 - User names provided in the comments report are hyperlinked to the user's profile
  • For developers:
  • MDL-54592 - MongoDB cache store upgraded to use PHP 7 compatible library
  • MDL-63977 - Behat testing available for mobile app features and plugins
  • MDL-63986 - Behat testing added for the messaging drawer
  • MDL-64449 - New debug feature to expose code issues with session locks
  • MDL-52167 - Core functionality added to enable site administration settings to be hidden if dependent on another disabled setting
  • MDL-63366 - Ability to specify filters for unit testing coverage
  • MDL-65130 - Improved unit testing coverage generation by only respecting the @covers annotation
  • MDL-60470 - New "after_require_login" hook introduced
  • MDL-65204 - Phpunit upgraded to version 7.5.x
  • MDL-64348 - Improved AJAX template fetching
  • MDL-59986 - External database enrolment sync moved to a scheduled task
  • MDL-63880 - Some templates common in dashboard blocks have been moved to increase reusability
  • MDL-64587 - New option in the XMLDB editor to add the mandatory persistent fields
  • MDL-64324 - ID collisions are avoided when forms are loaded from AJAX
  • MDL-64684 - When JavaScript caching is disabled, jQuery and RequireJS are no longer minified
  • New web services:
  • MDL-64252 - New SCORM web service to return user capabilities
  • MDL-64656 - New web service to return the tag associated with an element
  • MDL-64655 - New forum web service to return user access information
  • MDL-64642 - New web service to call multiple external functions

New in Moodle 3.6.1 (Jan 16, 2019)

  • Updated PHP to 7.1.25
  • Updated phpMyAdmin to 4.8.4
  • Updated SQLite to 3.26.0

New in Moodle 3.5.0 (May 17, 2018)

  • GDPR:
  • MDL-61275 - GDPR Consenting of Minors and Managing, Versioning and Tracking Privacy Policies and User Consents
  • MDL-61292 - A new admin tool to manage policy documents
  • MDL-61423 - Add age and location verification to identify minors
  • MDL-61302 - Workflow to allow users to agree to all policies
  • MDL-61301 - Report of user agreed policies and their versions
  • MDL-61705 - Bulk accept of policies on behalf of users
  • MDL-61864 - Include policy tool in core
  • MDL-62286 - Add policy link to the site footer
  • MDL-61306 - GDPR Data Requests and Data Registry
  • MDL-59718 - A process to send a request to the data protection officer
  • MDL-59720 - Delete personal data when it is no longer required
  • MDL-61307 - Create a new privacy subsystem
  • MDL-61362 - Ability to create data categories and purposes
  • MDL-61486 - Data registry with purpose and retention period
  • MDL-61489 - Report of plugin/components implementing the Privacy API
  • MDL-61499 - Ability to set default purpose and retention periods for context levels
  • MDL-61785 - Ability to review and confirm which expired data can be deleted
  • MDL-61899 - Include data privacy tool in core
  • MDL-61935 - Ability to specify the lawful bases for the collection of personal data
  • Question bank tagging improvements:
  • MDL-61066 - Expanded tagging functionality for question bank
  • MDL-61133 - New modal to add/edit/remove tags on questions
  • MDL-61135 - Filter questions by tag
  • MDL-61138 - Show the list of questions in the 'Add a random question' dialog
  • MDL-61363 - Ability to add question tags at a course level in the edit question form
  • MDL-61364 - Manage tags at a question and course context level
  • MDL-61380 - Allow filtering/adding random questions by tag for quizzes
  • MDL-61410 - Add import/export support for course level question tags
  • MDL-61444 - New capabilities for tagging questions
  • UX: Usability improvements:
  • MDL-62021 - Boost 4.0 Migration
  • MDL-56511 - Update bootstrap 4 to final release
  • MDL-61657 - Add images to the course cards on the dashboard
  • LTI Advantage support:
  • MDL-60416 - Add support for LTI Advantage 1.1
  • RecordRTC for Atto:
  • MDL-60848 - Implement RecordRTC Atto plugin as core feature
  • MDL-61973 - Update RecordRTC Atto plugin buttons
  • Messaging database tables:
  • MDL-61254 - Merge messaging database tables
  • MDL-36941 - Create new tables for messaging
  • MDL-61255 - Ad-hoc task to upgrade messages to merged table
  • Further details on this release are available here:
  • https://docs.moodle.org/dev/Moodle_3.5_release_notes

New in Moodle 3.4.1 (Jan 16, 2018)

  • Highlights:
  • MDL-34161 - LTI: backup and restore supports submissions and also course and site tools. References to the site tools are restored only on the same site (they are not included in course backup for security reasons).
  • MDL-27886 - If general backup setting "Include users" is unchecked, users with relevant capability can now backup user data
  • MDL-40613 - LDAP authentication method now can synchronise custom user profile fields
  • Fixes and improvements:
  • MDL-58887 - Accessibility: Gear icon is now properly defined for screen readers
  • MDL-54106 - Fixed bug preventing deletion of incomplete users accounts after specified period of time (setting "Delete not fully setup users after")
  • MDL-59512 - Allow to connect to OAuth 2 services that only support client authentication via Basic Auth
  • MDL-56197 - Lesson: Multiple Choice answers should appear on same line as radio button
  • MDL-45068 - Number of bug fixes in Import Groups from CSV tool
  • MDL-52100 - Folder resource: Fixed bug with big files being deleted when editing teachers update resource with global maxbytes lower
  • MDL-37757 - Turning off Server Files Repository should not break courses that use it
  • MDL-58272 - Assignment: Fixed bug when converting images in submisisons to pdf (unoconv)
  • MDL-54967 - IMS Common Cartridge import works correctly with HTML entities in URLs
  • MDL-27230 - Quiz: when group override is deleted the calendar event should also be deleted
  • MDL-57431 - Quiz: Clicking on help for "Shuffle" button no longer toggles shuffle itself
  • MDL-42676 - Assignment: Bug fix. The "This assignment is not accepting submissions" message is displayed in the assignment when override the grade
  • MDL-34389 - Category manager with the 'moodle/course:changecategory' should be able to move existing courses between categories
  • MDL-52538 - Lesson: Fixed bug with content pages displaying grade when they should not
  • MDL-45500 - Allow uninstalling grading methods plugins
  • MDL-58817 - LTI: display correct icons
  • MDL-43042 - Lession multichoice questions with multiple answers : more clear indication for the user which answer was correct
  • MDL-40790 - Lesson: UI fix for content buttons running off the edge of the page
  • MDL-59999 - Lesson: Grade essays page does should show which essays have been graded
  • MDL-57564 - Respect setting "Sort my courses (navsortmycoursessort)" on the dashboard
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version

New in Moodle 3.3.2 (Oct 4, 2017)

  • Highlights:
  • MDL-59492 - Gray out hidden courses in the new course overview block
  • MDL-57412 - Setting "Always link course sections" should apply consistently in Boost and Clean/More
  • MDL-58196 - "Require passing grade" in the Quiz activity completion settings can only be checked if "Student must receive a grade" is also checked
  • MDL-57698 - Bug fix: Backup and restore cause deadlock with sqlsrv driver
  • Fixes and improvements:
  • MDL-55912 - Assignment: when blind marking is enabled, students should receive teacher participant number in the email and not their own
  • MDL-54607 - Calendar export should not export events without duration as full-day events, i.e. assignment due dates have time component that was lost during export
  • MDL-59490 - Bug fix: LTI does not work when activity has a long name
  • MDL-55937 - Assignment: fixed error when viewing attachments of team submission
  • MDL-59511, MDL-59746, MDL-59539, MDL-59869 - Multiple fixes in OAuth 2 services (Google, OwnCloud, Nextcloud, etc)
  • MDL-35290 - My private files should continue working even if some files in filesystem are currently unreadable
  • MDL-57259 - Fixed bug that caused multiple debugging messages in error.log when teachers use assignment grading
  • MDL-56646 - Assignment: changing maximum grade of the module could result in negative grades in assignment which were pushed as "0" to the gradebook. This bug was fixed and will not happen in the future. However, according to Moodle policy, no existing grades were changed. Teachers will see the warning that there are erroneous grades and will be able to fix all of them with one click
  • MDL-54965 - Database module: fixed SQL error when you edit an entry after having added a new picture/file field
  • MDL-46495 - When uploading courses the setting "Completion tracking" should be set to the site default
  • MDL-59262 - Courses made via course request or "Upload course" tool should respect default course sections
  • MDL-59442 - Some third party modules had very big icons in the Default activity completion page
  • MDL-38129 - Grade export of user profile fields can now work with uppercase letters in the fields names
  • MDL-59317 - Performance improvements on the messages page
  • MDL-57246 - Trying to view a forum without the capability may lead you to a broken page.
  • MDL-59287 - Generate calendar event for "Expected completed on" for all modules.
  • MDL-55364 - Forum headers alignment on narrow screens
  • MDL-57649 - Lesson: Fixed bug deleting files unrelated to the pages being deleted
  • MDL-59195 - Assignments: when switching role to student teacher should be able to view group submissions
  • MDL-59068 - Lesson: Restore the behaviour of "No, I just want to go on to the next question"
  • Security issues:
  • MSA-17-0017 XSS in contact form on "non-respondents" page in non-anonymous feedback
  • MSA-17-0018 Course reports are not respecting group settings in courses
  • MSA-17-0019 user_can_view_profile() incorrectly assumes $course as shared course
  • MSA-17-0020 Admins may not know that exposing vendor directory is a security risk
  • For developers:
  • MDL-59708 - Hooks into the file API (backport of MDL-57476)

New in Moodle 3.3.1 (Jul 11, 2017)

  • Highlights:
  • MDL-58136 - Show only "in progress" courses in the My courses list in Booost flat navigation
  • MDL-56046 - Fixed bug when downloading Quiz statistics report and other multiple-sheet reports
  • MDL-58646, MDL-59122 - Number of performance improvements in Boost cache rebuilding
  • MDL-58310, MDL-59312, MDL-58103 - Correctly display AJAX errors and ignore interrupted requests caused by page unload (occasional "undefined" popup)
  • MDL-44961 - When restoring course with rolling start date never change log dates
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.
  • Fixes and improvements:
  • MDL-46322 - Assignment: Only enrolled users may be assigned as markers, if admins/managers can view course but are not enrolled they will not be assigned
  • MDL-58907 - Course overview: Remember last view mode (Timeline/Courses), add a setting for a default mode
  • MDL-58729 - Performance impovement in MySQL collation change script (follow up for Full UTF-8 Support in MySQL)
  • MDL-57957 - Assignment: Fixed bug with feedback files not being shown to students if assignment has no grading
  • MDL-57021 - Use normal password form field during sign up, adding new user and enrolling in a course
  • MDL-49988 - Wiki: line breaks in HTML source code should not affect page layout
  • MDL-58811 - Quiz: fixed bug preventing quiz duplication if questions have file links in their texts
  • For developers:
  • MDL-58911 - Change of behavior when writing unittests for the dashboard events - now callback from module are executed in unittests same way they would be executed on the dashboard

New in Moodle 3.3 (Jul 10, 2017)

  • Highlights:
  • MDL-55611 - New Course overview dashboard block featuring timeline of events
  • MDL-58220 - Make use of OAuth 2 services to allow users to authenticate with Google G-Suite or Microsoft Office accounts and manage files from associated drives
  • MDL-39913 - New Assignment setting for restricting submission file types
  • MDL-4782 - "Stealth mode" for resources/activities in a course - not displayed on the course page but available for students
  • MDL-40759 - New Font Awesome icon font for all icons in Moodle
  • For teachers:
  • MDL-58138 - Activity completion settings for setting activity completion defaults and bulk editing of completion requirements
  • MDL-48771 - Quiz activity: Option to delete multiple questions
  • MDL-53814 - Quiz activity: Question type icons are displayed in the quiz manual grading overview
  • MDL-55459 - Assignment activity: Annotated PDF comments are collapsible
  • MDL-23919 - Database activity: The setting "Required entries" is now an activity completion condition
  • MDL-57769 - Topic and weeks course formats: After a course is created, sections can be added and removed only from the course page (it is no longer possible to have "orphaned" activities)
  • MDL-46929, MDL-57456, MDL-57457 - Forum posts, glossary entries and book chapters may be tagged
  • MDL-56251 - For courses in weekly format, a new course setting allows for the course end date to be calculated automatically
  • MDL-47354 - Allow the page size in the Single view report to be configurable
  • Backup and restore:
  • MDL-34859 - Add site defaults for all restore settings, improve UI around "Overwrite course configuration" select
  • MDL-40838 - Allow to restore non-default enrollment methods without restoring users
  • MDL-57769 - When restoring/importing big courses in Weeks and Topics formats into small existing courses ajust the number of sections automatically
  • For administrators:
  • MDL-46375 - Support for storing files not on the local drive (there are no open-source solutions at the moment, developer's help is required to implement custom cloud storage)
  • MDL-55528, MDL-58280 - New document converter plugin type allows alternatives to unoconv, such as the Google Drive converter
  • MDL-55980 - Run individual scheduled tasks from web interface
  • MDL-57896 - CLI wrapper for get_config() and set_config() methods
  • MDL-57789 - Use Cache-Control: immutable when serving files
  • MDL-37765 - New capability to bypass access restrictions, separated from capability to view hidden activities
  • MDL-57913 - Convert external database authentication synchronisation to scheduled task
  • Plugins removal and deprecation:
  • The repository Skydrive is deprecated; please migrate to the newer OneDrive repository
  • The Dashboard block Course overview is replaced with a new block Course overview which is a different plugin. If you want to use the old block, you need to download and install it from https://moodle.org/plugins/block_course_overview
  • Mobile app support:
  • MDL-57410 - Allow admins to add new external links to pages in the main menu of the Mobile app
  • MDL-57408 - Add new settings for allowing renaming strings in the Mobile app
  • MDL-49423 - Add new settings for disabling Mobile app functionalities
  • MDL-57759 - Allow offline attempts via the Mobile app in the lesson module
  • MDL-57162 - Support Native App install banners for Android as well as iOS for the mobile app
  • Other improvements:
  • MDL-33483 - Google Docs repository: Save Doc files in different formats to RTF
  • MDL-42266 - Improve the list of maximum file size options for file uploads
  • MDL-51853 - Calendar subscriptions from imported files should be editable
  • MDL-41729 - Add ability to change passwords for users using Shibboleth
  • MDL-57572, MDL-57570, MDL-57355 - Redis and static caches performance improvements if igbinary library is installed
  • MDL-56808 - SCORM module: Performance improvements when running SCORM 1.2 packages
  • MDL-57686 - Add support for PDO databases in external database authentication
  • MDL-57638 - RSS Block: RSS feeds are more heavily cached and correctly respect skip values
  • For developers:
  • MDL-55528 - New plugin type 'fileconverter' for file conversions, unoconv is now a plugin that can be replaced with scalable commercial solutions (see File Converters)
  • MDL-40759 - Font Awesome icon font is used for all icons in Moodle (see Moodle icons)
  • MDL-46375 - Support for storing files not on the local drive is implemented by allowing to override functionality of file_storage and stored_file classes (see File System API)
  • MDL-12689 - Convert all authentication plugins to use settings.php (see upgrade.txt)
  • MDL-53978 - Add extra plugin callbacks for every major stage of page render (see commit)
  • MDL-58138 - Course modules may provide additional callbacks to participate in bulk editing of activities completion rules in a course
  • MDL-58220 - Better office integration
  • MDL-45584 - Multiple caches can be instantiated with the same definition but with different identifiers
  • MDL-57769 - Course formats: Attribute 'numsections' was removed from topics and weeks, other course formats may want to implement similar changes
  • MDL-55956 - Priority field for the calendar events allowing to specify the priority of overrides
  • MDL-58566 - New methods for retrieving calendar events
  • MDL-55941 - New element to select first name of first/last names is implemented in tablelib or can be used by developers elsewhere (template)
  • MDL-56519 - Lint behat .feature files
  • MDL-57273 - New classes (corepersistent, coreformpersistent, coreexternalexporter, coreexternalpersistent_exporter) used to represent a data-model and export that data in a standard format for webservices (previously was used in competencies) (see Persistent form, Persistent, Exporter)
  • MDL-57490 - Removed several legacy JS functions from javascript-static.js
  • MDL-57690 - mcore YUI rollup is no longer included on every single Moodle page

New in Moodle 3.2.3 (May 9, 2017)

  • Highlights:
  • MDL-39913 - Assignment module: Allow teacher to specify what file types are allowed for submissions
  • MDL-57429 - Badges: Backpack connection now works using Moodle own e-mail verification and does not use removed Persona service
  • MDL-55468 - Feedback module: Re-introduce export of analysis page removed in 3.1
  • MDL-57419 - Messaging: Enter inserts a new line instead of sending a message, fixing a problem with too many short emails
  • MDL-57510 - Added quick navigation between sections of Question bank in Boost theme
  • MDL-58461 - Updated URLs for MathJAX CDN
  • MDL-56675 - Memcached MUC store: Detected an incompatible version combination with PHP 5.6 and memcached 1.4.23. Please upgrade to PHP7, or downgrade to a known working version of memcached
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.
  • Fixes and improvements:
  • MDL-58593 - Performance improvement when creating automated backups
  • MDL-58182 - Fixed absent buttons on course drag and drop dialogue
  • MDL-41809 - Fixed bug in course cache rebuilding when access restrictions depend on grade in another activity
  • MDL-55939 - Feedback module: Fixed bug when teachers were not able to map site feedback to courses
  • MDL-58278 - Assignment module: save grade, feedback and rubric data before marking workflow state is released
  • MDL-58274 - Theme Boost: fixed misalignment of editing icons on course page in editing mode
  • MDL-58166 - Assignment module: allow students to view submissions with marking workflow and allocated markers
  • MDL-57807 - Database module: In advanced search when nothing is specified in the simple menu dropdown assume all values
  • MDL-58556 - Fixed indefinite loop in LDAP authentication with forced password
  • MDL-57583 - Bug fix in course completion settings form always selecting all activities
  • MDL-56370 - Feedback module: If multiple submissions are allowed in non-anonymous feedback new submission should modify the previous one and not start over
  • MDL-58257 - Fixed bug preventing searching courses with a dash in the title
  • MDL-57616 - Allow to drag and drop video and audio files to the course page and and insert them as labels
  • MDL-57704 - LTI provider: Do not force SSLv3, it is insecure and rejected by some clients
  • MDL-58349 - Assignment module: fixed display of edit pdf comments in theme "Boost"

New in Moodle 3.2.2 (Mar 13, 2017)

  • Highlights:
  • MDL-36233 - Fixed inconsistent "Submissions not graded" link displayed to the teachers on the course overview block
  • MDL-48228 - MySQL and MariaDB drivers updated to support full UTF-8 . For sites upgrading to 3.2.2, a CLI script may be used to convert to full UTF-8. See MySQL full unicode support for details.
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.
  • Fixes and improvements:
  • MDL-56122 - Force reload/recreation of (unoconv) preview in grading interface
  • MDL-51833 - Performance improvement in event monitor preferences loading
  • MDL-55859 - Assignment: Delete incomplete files after pdf conversion failure
  • MDL-55762 - Better error handling around ghostscript
  • MDL-50719 - Long-running scheduled task should not significantly slow down cron processing of other tasks
  • MDL-57587 - Quiz: Show feedback images when reviewing a quiz attempt
  • MDL-57608 - VideoJS and VideoJs-Youtube javascript modules are no longer loaded when not required on the page
  • MDL-50770 - Dashboard should apply customized block positions during dashboard reset
  • MDL-57374 - Pasting unformatted non HTML plain text in Atto should not remove all styles and class attributes from all existing content in editor
  • MDL-57362 - Assignment list all submissions must respect separate groups mode
  • MDL-46782 - When re-entering Multi-SCO SCORM start from the first uncompleted SCO
  • MDL-53367 - Importing a forum with auto subscription now automatically subscribes current users
  • MDL-50625 - Allow to use LDAP user synchronisation without page control
  • MDL-55915 - Respect capability to view full names in assignment grading, grader report and manual user enrolment popup
  • MDL-57785 - Don't refresh SCORM navigation when navigation display is disabled
  • MDL-57370 - Performance improvement when displaying notifications and messages popups
  • MDL-57296 - Fixed bug when teacher without permission to view hidden grades was not able to collapse grade categories in the gradebook
  • MDL-55547 - Event monitor: fixed bug preventing to view current subscription after deleting a course with subscriptions
  • For developers:
  • MDL-57030 - Add option to behat run tool to automatically rerun failures
  • MDL-57940 - Allow behat parallel run to start at different time

New in Moodle 3.2.1 (Jan 9, 2017)

  • Fixes and improvements:
  • MDL-55906 - Assignment grading table reset button should clear persistent settings
  • MDL-57222 - Marking workflow and grading must still save for hidden Assignment
  • MDL-56810 - Fixed error converting submissions for annotation when student is unenrolled from course
  • MDL-55062 - Upload users admin tool incorrectly updates authentication method for existing users when not included in CSV
  • MDL-56912 - Feedback: Allow to submit empty not required multichoice questions
  • MDL-53044 - Completely prevent login with expired passwords
  • MDL-57213 - Boost - Fixed bug when my courses were not displayed at all with $CFG->navshowmycoursecategories on
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.

New in Moodle 3.2 (Dec 5, 2016)

  • Highlights:
  • MDL-55071, MDL-55074 - New "Boost" Bootstrap 4 theme, usability improvements of the navigation
  • MDL-54682 - Messaging UI changes
  • MDL-52777 - Moodle Tour/Walkthough/Instructional overlays for first time user on page (User tours)
  • MDL-38158 - Pluggable media players in Moodle; Video.JS player
  • MDL-55324 - Easier embedding videos in audios in Atto editor with poster, subtitles and other attributes
  • MDL-54987 - New chart API and library
  • Mobile app:
  • MDL-53870 - Support for offline quizzes in the Mobile app
  • MDL-53777 - Include support for login via the browser in the new Moodle Mobile admin tool
  • MDL-55059 - Support Smart App Banners for iOS
  • MDL-56607 - Move mobile settings to top-level admin
  • External tool (LTI):
  • MDL-49609 - Add LTI Content Item support
  • MDL-47113 - Open LTI Tools in new Window, add link when popup is blocked
  • MDL-53832 - LTI v2.0 support
  • Assignment:
  • MDL-38105 - Allow negative score for rubric and change default grade calculation method
  • MDL-29795 - Add user/group overrides for mod/assign
  • MDL-54872 - Sort blind marked assignment by blind ID instead of userid
  • Quiz:
  • MDL-48629 - Change the separator for matching correct answer feedback
  • MDL-3782 - Allow multiple answers in cloze MULTICHOICE question type
  • MDL-55200 - Show coordinates in ddmarker questions to simplify dropzone creation
  • MDL-27072 - Quiz reports now work on very large courses, rather than running out of memory
  • Choice:
  • MDL-18592 - Allow teacher to make choices for students
  • MDL-11369 - Show choice deadline in the course calendar
  • MDL-55140 - Allow to specify open and close dates separately
  • MDL-37946 - When choice display is set horizontal or vertical apply it to both options and results display
  • Forum:
  • MDL-18599 - Upon restore, association of "owner" of single simple discussion forum type defaults to user completing restore. Solution: hide author of the first post
  • MDL-37669 - Forum: Make "Mark as read on notification" a user preference
  • MDL-55982 - Add support for automatic locking of an individual forum discussion after a period of inactivity
  • Other activity modules:
  • MDL-55327 - Lesson: option to duplicate pages
  • MDL-55868 - Book: various usability improvements
  • MDL-56100 - Folder: Display in recent activity block
  • MDL-54945 - Workshop: integrate with portfolio API
  • MDL-48944 - Survey: activity completion condition on survey completion
  • MDL-44712 - SCORM: improve Multi-SCO completion handing in activity completion
  • MDL-55158 - Database activity: add start and end dates to the calendar
  • MDL-14448, MDL-55464, MDL-55254, MDL-55251, MDL-49029 - Add standard capability "mod/xxxxx:view" to Lesson, Label, Database, Chat and Choice activities
  • MDL-55866 - Remember editor disabled setting on a per-activity setting
  • Global search:
  • MDL-54794 - Add users to global search
  • MDL-54973 - Add messages to global search
  • MDL-55127 - Add database entries to global search
  • MDL-53222 - Revise admin settings/report for global search for improved usability
  • Other improvements:
  • MDL-30179 - Allow teacher to toggle to/from "user view" in the User report in the gradebook (some items may be hidden for students but not teachers)
  • MDL-53048 - New "password" fields that are not auto-filled by password managers
  • MDL-55767 - Allow to import learning plans
  • MDL-29110 - Specify welcome email sender in enrol_self, or send emails from system noreply address
  • MDL-22078 - Store "End date" for each course to be used in reports and analytics
  • MDL-53399 - Remove 'activity chooser off/on' option
  • MDL-54751 - Introduce asynchronous module deletion so that recycle bin backup does not slow down editing process for the teacher
  • MDL-55981 - By default non-editing teacher should not be able to access all groups (roles in upgraded sites are not changed)
  • MDL-31356 - IMS Enterprise enrol plugin added features
  • MDL-43230 - Support revoking awarded badges
  • MDL-50286 - Allow to filter report_log by origin : Logs clogged up with events listed as origin cli
  • MDL-51749 - Add Ability to Export Calendar for user or group events
  • MDL-50888 - Antivirus: Implement ClamAV virus scanning using unix sockets.
  • MDL-54617 - Always show count of online users in the online users block
  • MDL-54680 - Offer cartridges in LTI provider
  • For administrators:
  • MDL-44467 - Return-Path should use no-reply address instead of support email; use only no-reply email or allowed domains in "From" header
  • MDL-48468 - Add a Redis cache store to Moodle core
  • MDL-39117 - Add a APCu cache store to Moodle core
  • MDL-54947 - Update PostgreSQL binary (bytea) handling and improve connection performance
  • MDL-48766 - Support IPv6 in IP lookup tool
  • MDL-55124 - Support for connection pooler (pgbouncer) in PostgreSQL connection
  • MDL-55916 - Maintenance mode should serve a http 503 instead of a 200
  • MDL-54606 - Sessions: Add support for Redis as a session_class_handler
  • MDL-53366 - Antivirus clamav: Remove "Quarantine directory" settings parameter.
  • MDL-55791 - Add capability to allow certain users through Maintenance mode
  • Plugins removal:
  • MDL-55837 - Themes Base and Canvas - these themes can not be used by themselves but they may be used as parent themes
  • MDL-49533 - Repository Alfresco for Alfresco 4.2 and below, see Alfresco repository documentation
  • MDL-55927 - Authentication method Radius. This plugin uses mcrypt library and is not compatible with PHP 7.1
  • MDL-38158 - Media players Flowplayer, Windows media player, RealPlayer, Quicktime - these media players were present in Moodle 3.1 but removed in 3.2. They need to be installed in media/player directory
  • Web services:
  • MDL-31465 - Incorporate user suspension into web services
  • MDL-45639 - Web Service for SSO (auto-login from the app to the site)
  • MDL-55923 - Improve the behavior of deleted tokens on password reset
  • MDL-55928 - New Web Service gradereport_user_get_grade_items
  • MDL-55100 - New Web Service core_course_get_courses_by_field
  • For developers:
  • MDL-55071, MDL-55074 - New "Boost" Bootstrap 4 theme, block and navigation changes (see Boost_Navigation and Themes)
  • MDL-38158 - Introduction of Media players plugin type (see Media players)
  • MDL-50937 - JQuery updated to version 3.1 (see jQuery)
  • MDL-54987 - New chart API and library (see Charts_API)
  • MDL-55727 - AMD modal module introduced (see AMD Modal documentation)
  • MDL-52127 - Linting for Javascript with ESLint (see Linting Javascript)
  • MDL-55058 - Linting for CSS with stylelint (see Linting CSS)
  • MDL-48114 - Moodle can now be downloaded via composer (see Composer)
  • MDL-55091 - phpunit has been upgraded to 5.x
  • MDL-55072 - Behat now supports different themes. (See Running_acceptance_test)
  • MDL-55048 - Grunt and npm build dependencies now require node version 4 or above
  • MDL-31243 - New get_with_capability_sql function for retrieving SQL for finding users with capability in the given context
  • MDL-49599 - Boxnet v1 API is now deprecated
  • MDL-53306 - New authentication plugin method added which is called before user login
  • MDL-47162 - Course ID is now required in message events
  • MDL-55141 - Debugging option added for scheduled tasks from CLI (see Scheduled tasks documentation)
  • MDL-54941 - Add filesize as a new field returned in all the Web Services returning file information
  • MDL-56082 - Expose external authentication methods (loginpage_idp_list) in login block

New in Moodle 3.1.3 (Nov 14, 2016)

  • Functional changes:
  • MDL-56022 - Assignment: Allow to bulk download students submissions in separate folders to avoid file renaming confirmations
  • MDL-46946 - Prompt users to complete required custom user profile fields before allowing them to use the site
  • MDL-43796 - Assignment: When importing an assignment with blind marking into another course never reveal identities
  • API changes:
  • MDL-52051 - Migrate to Dropbox API v2
  • MDL-55602 - Sessions: Add support for Redis as a session_class_handler
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.
  • Fixes and improvements:
  • MDL-47500 - SCORM: Remove blank space on top
  • MDL-54852 - Assignment: Do not display "Do you want to leave this page" dialogue on PDF grading screen when changes are saved
  • MDL-29332 - Allow calculated questions to have variables with case differences (usually affects upgrades from before Moodle 2.1)
  • MDL-56129 - Fix video playback with iOS 10.0 and 10.1 devices (iPad / iPhone)
  • MDL-29774 - When adding group members and using user search display groups of potential members
  • MDL-42041 - Book: put "Turn editing on" button in a more obvious location
  • MDL-56368 - Fixed alignment of settings for Restrict Access when activity titles are very long
  • MDL-55858 - Remove unsubscribe link from notification email in forum with forced subscription
  • MDL-45969 - PDF annotations now show the submission of the selected attempt (fixed the bug when only last attempt was shown)
  • MDL-55505 - Assignment: Fixed bug when editing grades for previous submission attempts overwrites existing grades
  • MDL-56328 - Bootstrapbase Themes - reduce section activity indent when not editing

New in Moodle 3.1.1 (Jul 10, 2016)

  • Highlights:
  • MDL-41922 - Completed quizzes no longer appear in the Course overview block for students
  • MDL-54165 - Allow to hide the document preview in assignment grading interface
  • MDL-41945 - Do not overwrite submission with an empty filearea when several team members edit the same assignment
  • MDL-49852 - Mark assignment as completed for all students in the team when one student from the team has made a submission
  • MDL-29905 - Fixed the bug when deleting empty quiz category was showing an error that it has questions
  • MDL-46721 - Assignment blind marking: participant number in the notification email matches the number on the submission
  • MDL-45427 - Database activity: When creating a template clicking on the tags should add it to the textarea when Atto editor is used
  • MDL-35104 - Allow to change username of a user registered under LDAP authentication method
  • MDL-51806 - Workshop: allow to save edited settings when using comma as a decimal separator
  • MDL-43887 - Fixed bug when handling optional date/time custom user profile field with date range starting later than 1970
  • MDL-35987 - Do not abort restore process in case of multichoice question error 'Backup error: invalid input syntax for integer: ""'
  • Fixes and improvements:
  • MDL-55020 - Fixed bug when installing plugin downloaded from github repository
  • MDL-54909 - Show different background from page when annotating PDF
  • MDL-53111 - Allow to unmark completion criterion 'Require end reached'
  • MDL-37138 - When clicking a URL in chat, it should open in a new window or tab
  • MDL-54997 - Activity completion for a competency should be attached to course competency and not the learning plan competency
  • MDL-54934 - Accessibility enhancements: Indicate phase name/form name on the Workshop title
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.
  • For developers:
  • MDL-53019 - PHP 5.6.5 or higher is required for development on master branch

New in Moodle 3.2 Dev (Jul 10, 2016)

  • Fixed issues:
  • MDL-51978: Change the default course format to Topics
  • MDL-24064: Remove (unused and disabled) user bulk enrolment code
  • MDL-54899: CLONE - Update composer.json with the new moodlehq/behat-extension tag
  • MDL-55050: grunt watch causes eslint of all files on any js change.
  • MDL-52127: Check Moodle JS coding style with eslint
  • MDL-54617: Always show count of online users
  • MDL-54676: Bump backup internal version and release information for 3.2 branch
  • MDL-54622: The "Display name" setting in the myprofile block is unused and should be removed
  • MDL-54649: Fix css lint issues in questions and quiz
  • MDL-54563: It should not be possible to add the course completion blocks to the front page
  • MDL-54036: Remove unused sort variable in forum_print_posts_flat
  • MDL-53306: Add hook to be executed before user login in authentication plugins.
  • MDL-35628: Replace all dirname(__FILE__) with __DIR__
  • MDL-45762: Accessing a conditional hidden section via a url provides error message
  • MDL-54939: Make AMD modules eslint warning free
  • MDL-54654: Fix lint issues in mod/ CSS
  • MDL-54652: Fix lint issues in admin/ blocks/ filter/ grade/ css
  • MDL-51789: Allow user profile picture update in webservices (user_update_users)
  • MDL-37554: 'Select All' option for activities in Course Completion list.
  • MDL-54590: Installation instructions for databases should specify allowed characters.
  • MDL-53399: Remove 'activity chooser off/on' option
  • MDL-53292: Deprecate callback delete_course
  • MDL-51163: Remove deprecated course/category.php
  • MDL-54983: create_user_key and get_user_key have incorrect phpdocs for $validuntil
  • MDL-47113: Open LTI Tools in new Window, add link when popup is blocked
  • MDL-54855: Add missing preventsubmissionnotingroup field in mod_assign_get_assignments
  • MDL-54601: Order the service's function list
  • MDL-54599: Plugin names in admin settings menu should be sorted by displayed name
  • MDL-54865: Hyperlink Student's Name in Gradebook User Report
  • MDL-51749: Add Ability to Export Calendar for user or group events
  • MDL-54104: core_course_get_contents should return section number
  • MDL-54951: Return the module intro/summary file area files in the get_mods_by_courses WS
  • MDL-54980: Add mod_assign_list_participants to the Mobile service
  • MDL-54889: Stop using jshint for everything but shifter
  • MDL-54857: New Web Service tool_mobile_get_site_public_settings
  • MDL-54955: Apply external_format_string in existing WS
  • MDL-54794: Add users to global search
  • MDL-55000: Migrate use of YUI2 in Grade
  • MDL-37946: Horizontal vs Vertical confusion in Choice
  • MDL-48944: Survey should have activity completion condition on survey completed
  • MDL-54602: Remove core_grades_update_grades from the Mobile service
  • MDL-48114: Add Meta-Information to composer.json
  • MDL-54800: Return the course category in core_enrol_get_users_courses
  • MDL-54856: Add the core_course_get_categories external function to the mobile service
  • MDL-54947: Update PostgreSQL binary (bytea) handling and improve connection performance
  • MDL-50758: Multiple choice - Displayed correct answer is wrong when there are multiple correct options
  • MDL-55001: Avoid redirects in home page url links
  • MDL-53495: Report the actual name length restriction for table names

New in Moodle 3.1 (May 24, 2016)

  • MAJOR FEATURES:
  • Highlights:
  • MDL-53451 - Competencies support in Moodle
  • MDL-52954 - Improvements to the Assignment grading user interface
  • MDL-31989 - Global Search API allows to search forums, wikis and other content throughout the whole site. Installation and setup of SOLR server is required,
  • MDL-52002 - Significant performance improvements in gradebook calculations
  • MDL-48012 - Recycle bin plugin is now part of standard Moodle distribution: allow instructors to "undo" deletions of course modules and courses. Moodle Users Association project
  • MDL-49279 - Add support in moodle plugins for exporting "Mobile app addons"
  • Forum:
  • MDL-372 - Allow to "pin" discussions to keep them always on the top of the list
  • MDL-34160 - Allow forum email subject to be customised
  • MDL-47365 - Add permalink option to forum posts
  • MDL-51214 - Rename the News forum to "Announcements"
  • MDL-44087 - Forum does not observe message notification settings for digest emails
  • MDL-53050 - Highlight the selected forum post when deep linking with a #anchor
  • Assignment:
  • MDL-52397 - Feedback for Assignments is not sent if the assignment grade timemodified setting was set to two days ago
  • MDL-52596 - Add a 'maxperpage' site wide setting for grading table size (to mitigate broken grading pages in large courses)
  • MDL-52269 - Not obvious to tell if an assignment is in blind marking if user holds the "mod/assign:viewblinddetails" capabilty
  • MDL-52270 - Difficult to cross reference users with their blind identities
  • MDL-44598 - List student names on 'grant extension' screen
  • MDL-52490 - Download selected assign submissions as a zip file
  • MDL-52290 - EditPDF - Also show the total page number in the pagination
  • MDL-52489 - "Download all submissions as a zip" should maintain the folder structure in students submissions
  • External tool (LTI):
  • MDL-52154 - Rework LTI admin screens
  • MDL-45064 - Option to add Preconfigured LTI Tool to Activity Chooser
  • MDL-52035 - Integrate LTI Provider support in Moodle as the Publish as LTI tool
  • MDL-52821 - Compliance: Send tool_consumer_instance_description in LTI launch request
  • Feedback:
  • MDL-53738 - Feedback activity module will be enabled by default in new 3.1 installations. If you are upgrading to 3.1 we recommend you to enable it manually.
  • MDL-52094 - Various improvements to UI and bug fixes
  • SCORM:
  • MDL-45712 - Add Result field to the SCORM Interactions Report
  • MDL-48680 - Add score and status submission events to SCORM activity
  • MDL-42473 - Add group support to SCORM activity
  • Quiz:
  • MDL-52738 - Quiz attempt/review page should have a previous button to match next
  • MDL-46092 - Add the OU styling of the Quiz navigation into Moodle core as the default
  • MDL-46091 - Rationalise confirmations when you start a quiz
  • MDL-52806 - Show right answers when manually grading automatically marked questions
  • MDL-53304 - Immediate feedback behaviours should not show a disabled check button when you can't use it
  • Other activity modules:
  • MDL-42190 - Workshop: Possibility to delete a submission
  • MDL-51306 - Folder: Bulk download all files within a folder activity as ZIP file
  • MDL-52414 - Lesson: Allow Default Settings for Lesson Module Settings
  • MDL-51267 - URL/File: Make setting up a URL/File resource more obvious
  • MDL-50794 - Workshop: Restricting file types as attachments to a workshop
  • Gradebook:
  • MDL-48634 - Option to rescale existing grades when changing max points
  • MDL-52522 - grade_minmaxtouse should be respected for overridden categories
  • MDL-51900 - Tab Down Grade Column in Single View of Gradebook
  • MDL-52309 - Make Grade History report require user to submit parameters before the report starts running
  • Performance:
  • MDL-51374 - Do not purge entire databasemeta cache when there are structure changes (esp temp tables).
  • MDL-51603 - Refactor downloading of csv, ods, excel etc files in reports and exports across moodle to stream progressively
  • MDL-34925 - Improve bulk user export performance
  • MDL-50385 - Performance improvement to the grade history report
  • Tagging:
  • MDL-50851 - Introduce tag collections - ability to separate independent tag areas
  • MDL-52252 - Add tags to modules (Resources and Activities)
  • MDL-25742 - Allow to search wiki pages by tags
  • MDL-51283 - Rename "official" tags to "standard", allow admin to set for each tag area how to use standard tags
  • MDL-16855 - Add tag filtering to "Manage tags" page
  • MDL-52707 - Allow tags to be combined
  • Usability:
  • MDL-27628 - Enrol meta: Possible to add multiple courses without leaving the form
  • MDL-51818 - Move the profile 'Message' button to be next to the user picture
  • MDL-52258 - Calendar now shows duration in calendar block
  • MDL-53043 - Move user search box above the students list in the manual enrolments popup
  • MDL-35590 - Navigation block redesign to meet ARIA specification
  • MDL-49963 - Allow to message all participants when there are more than one page in participants list
  • MDL-51354 - Help popup and improved name for events dropdown menu on the course and site logs pages
  • MDL-53026 - Use inplace editable for editing cohort names
  • MDL-51706 - Move plagiarism links to the top of the summary and full text outputs
  • MDL-53382 - "Show all" link on participants page should be moved beneath the page switcher
  • Other improvements:
  • MDL-53057 - Add search feature to the File system repository
  • MDL-48506 - Improve memcached cache store so that it is multi-site safe
  • MDL-50661 - Restyle "Clean" theme to use Logo and Header in Frontpage with smaller logo option in other pages.
  • MDL-36652 - When downloading an Excel spreadsheet of student logs, have the course short name included in the file name.
  • MDL-53207 - Display stock avatar instead of own user picture from messages from fake users
  • MDL-51698 - Markup the crumb trail so search engines understand it and leverage it
  • MDL-53072 - Option to choose whether we include suspended users when auto-creating groups
  • MDL-52869 - Convert inline activity name edit to use the inplace editable element
  • For administrators:
  • MDL-26935 - New capability to control role renaming
  • MDL-28030 - Add config.php settings to allow plugins to rewrite output moodle_urls (eg clean / semantic urls)
  • MDL-52752 - Administrators can specify an alternate URL to use for MathJax
  • MDL-52219 - Completion tracking & availability should default to on for new installs
  • MDL-52990 - Enable all emails to be themed, ie add 4 wrapper mustache templates
  • MDL-53260 - Option to display CLI upgrade messages in English
  • MDL-52386 - Allow to control field for flagging enabled/disabled users in LDAP authentication (useful for Active Directory)
  • MDL-52383 - Calendar "Days to look ahead" should allow intervals up to 1 year
  • MDL-49934 - Admins or managers should be able to retrieve assignments info via get_assignments web service
  • FOR DEVELOPERS:
  • Significant new areas:
  • MDL-31989 - Global Search API allows to index and search forums, wikis and other content throughout the whole site.
  • MDL-49279, MDL-50032 - Add support in moodle plugins for exporting "Mobile app addons"
  • MDL-53451 - Competencies support in Moodle (documentation)
  • MDL-50887 - Implement plugins infrastructure for antivirus and create ClamAV plugin (documentation).
  • MDL-51603 - New Dataformat plugin type for downloading data as csv, ods, excel etc (eg from table_sql export)
  • MDL-50851 - Significant changes to Tags API, tag areas can now implement callbacks to display tagged items (documentation)
  • MDL-46891 - Upgrade to behat 3.x (documentation)
  • Smaller new things:
  • MDL-51802 - Reusable element for inplace editing (documentation)
  • MDL-30811 - Introduce notification stack to moodle sessions (documentation)
  • MDL-52237 - Add a callback to inject nodes in the user profile navigation
  • MDL-51324 - New course chooser element for moodleforms (documentation)
  • MDL-53311 - Reusable element for displaying tree similar to navigation tree (documentation)
  • Smaller changes in core APIs:
  • MDL-52954 - file_storage class can now convert between office documents (documentation)
  • MDL-53274 - Throw exception (in developer mode) if page context is not set, otherwise it is easily missed in AJAX calls
  • MDL-52826, MDL-52715 - Allow to use moodleforms in AJAX requests (documentation)
  • MDL-51718 - Allow to specify scheme in moodle_url
  • MDL-51700 - Ajax service should clean the return values of the external functions
  • MDL-53962 - Changes to webservices XML-RPC API - it is now critical to specify parameters for XML-RPC calls in the correct order. Previously Zend may have been able to work out the order, our new implementation, at this stage, cannot.
  • Themeability improvements:
  • MDL-50464 - New renderer for RSS Client Block allows themes to customise its look
  • Changes related to particular plugins:
  • MDL-52013 - Allow mod_assign plugins to add calendar events
  • MDL-48362 - Improve the enrol API to prevent logic in the UI (documentation)
  • MDL-52996 - Allow Atto customisation for special-purpose plugins
  • MDL-52781 - Improved validation on user fields when creating users from external datasources
  • MDL-53304 - Changes to interactive question behaviour may cause the unit tests for your question type to break if you have followed the common patter. You will need to make changes like this.

New in Moodle 3.0.4 (May 9, 2016)

  • Fixes and improvements:
  • MDL-51142 - Assignment activity: Logging in as another user should not change the field "Last modified (submission)"
  • MDL-53795 - Performance improvement in backups with logs
  • MDL-49861 - Database activity: "Save and add another" button should not pre-populate the form with data from previous entry
  • MDL-50795 - Atto editor: Background color is no longer applied when pasting clipboard content because of Chrome problems
  • MDL-53538 - Database activity: Do not display coding error when searching a database with no entries
  • MDL-53139 - Upload users tool no longer breaks because of the wrong case in user email
  • MDL-53899 - Permissions of files created during the plugin installation should follow configuration settings
  • MDL-53176 - Performance improvement to grade history report
  • MDL-51828 - Wikimedia repository: Allow to consistently import any .svg files
  • MDL-53402 - Database activity: Setting field type Number to required should allow zero value
  • MDL-53770 - LTI activity: Allow to uninstall ltisource plugins
  • MDL-53728 - Improvements to file format selector in import/export questions form
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.

New in Moodle 3.0.3 (May 7, 2016)

  • Highlights:
  • MDL-48778 - Fixed problems with assign quick grading in case of multiple attempts
  • MDL-21912 - New setting 'Allow admin conflict resolution' for restoring a course from a different Moodle site
  • MDL-31635 - Course completion "grade" criteria now correctly shows grades as points and not percents
  • MDL-51702 - Restored ability to assign roles to blocks in Default dashboard and My home
  • MDL-49807 - Wiki table of contents correctly displays headers created in Atto editor
  • Fixes and improvements:
  • MDL-48015 - Fixed misalignment in gradebook when category has no total and items
  • MDL-52566 - Releasing assignment with team submission now releases grades to all group members
  • MDL-52486 - Fixed javascript errors in languages with _ in the name such as en_us (for example when editing user interests)
  • MDL-52249 - Custom menus with subitems now work correctly on touch screen devices
  • MDL-51723 - Fixed bug with unenrolling users on login under LDAP auth with Active Directory
  • MDL-38020 - Corrected user enrollment workflow through Participant list using Edit Icon
  • MDL-41531 - Fixed irregular characters in course name interfering with PayPal enrolment
  • MDL-51075 - Centered positioning of glossary popup
  • MDL-52217 - Cleaning temporary download directory for dropbox repository
  • MDL-52637 - Fixed problems with connection to SMTP mail in some configurations
  • MDL-52589 - Allow non-default cache stores to be uninstalled
  • MDL-50083 - Unlock submissions when reopening locked assignment
  • MDL-43620 - Allow to reset the course start date when having a chat activity
  • MDL-49338 - Fixed bug when quiz statistics report displays the preview icons to the wrong variant
  • MDL-52763 - Users with the mod/assign:viewblinddetails capability are able to cross reference users with their blind identities
  • MDL-52435 - Plagiarism prevention links are moved to the top of the submission text
  • MDL-52814 - Fixed overlapping of redo button in Quiz
  • MDL-53012 - Behat: Add step to run scheduled task
  • MDL-50218 - If there is no grade, an external tool (LTI) module will now return a grade of '' instead of 0 to the LTI tool producer
  • Security issues:
  • MSA-16-0003 Incorrect capability check when displaying users emails in Participants list
  • MSA-16-0004 XSS from profile fields from external db
  • MSA-16-0005 Reflected XSS in mod_data advanced search
  • MSA-16-0006 Hidden courses are shown to students in Event Monitor
  • MSA-16-0007 Non-Editing Instructor role can edit exclude checkbox in Single View
  • MSA-16-0008 External function get_calendar_events return events that pertains to hidden activities
  • MSA-16-0009 CSRF in Assignment plugin management page
  • MSA-16-0010 Enumeration of category details possible without authentication
  • MSA-16-0011 Add no referrer to links with _blank target attribute
  • MSA-16-0012 External function mod_assign_save_submission does not check due dates

New in Moodle 3.0.2 (Jan 11, 2016)

  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.
  • Fixes and improvements:
  • MDL-49473 - Logs export contains year
  • MDL-52078 - Fixed error in grade totals when using natural grading and excluding hidden items that appeared only when viewed by students
  • MDL-52354, MDL-52355 - Database module now allows to set dates in a broader range and respects calendar type plugin
  • MDL-51257 - Messaging screen now indicates when a message is not sent
  • MDL-52194 - Fixed Flowplayer not working with insecure configuration of request_orde

New in Moodle 3.0.1 (Dec 20, 2015)

  • Highlights:
  • Moodle 3.0.1 is a special release outside of the normal release schedule. The main highlight is support of PHP 7.0. This is the new major version of the programming language Moodle is written in; it has significantly better performance but at the same time lots of changes in the engine. Please note that Moodle 2.9 will show errors if run on PHP 7.
  • Before upgrading to PHP 7 version on production servers, you are recommended to test all plugins thoroughly. See Moodle and PHP7 for developer documentation.
  • PHP 7 was released on 3 December 2015 and is still very young. Not all libraries and/or drivers are available yet for PHP 7. For example, there are no drivers for SQL*Server. Other drivers required by your plugins may also be missing.
  • It is expected that PHP 7 will immediately become very popular because of its performance improvements, we also know that many institutions have not even upgraded to Moodle 3.0 yet, it will still be supported for a long time and users can really benefit from this bundle.
  • Other fixes and improvements:
  • MDL-44330 - When using assignment grading in several tabs the links to individual students grades work correctly.
  • MDL-37834 - Excel can be used to edit the assignment Offline grading worksheet
  • MDL-42571 - Edit PDF: Fixed bug with viewing the second PDF on assignment grading page
  • MDL-43069 - Assignment grading: "Submission comments" fail to expand if you hide the "file submissions" column
  • MDL-37308 - Uploaded PNG images preserve transparency during resize
  • MDL-49490 - Fixed export to portfolio link in assignment with additional files
  • MDL-52194 - Fixed Flowplayer not working with insecure configuration of request_order
  • For developers:
  • MDL-51582 - Switch to grunt to compile LESS as recess is no longer maintained

New in Moodle 3.0 (Nov 16, 2015)

  • Highlights:
  • MDL-29801 - Allow users to delete personal messages
  • MDL-27177 - Allow students to see each other's contact details in full profile without global permission if they are able to see each other's course profile
  • MDL-46455 - Backup/restore functionality with new logging system
  • MDL-46878 - Reset Dashboard for all users after changing the default Dashboard
  • Quiz:
  • MDL-47494 - New question types from the UK Open University - Select missing words, Drag and drop into text, Drag and drop onto image and Drag and drop markers
  • MDL-38214 - New Cloze subquestion types with shuffling of answers - MCS, MCVS, MCHS
  • MDL-50217 - Question types sorted with common ones at the top
  • MDL-29771 - Interactive behaviour should show number of tries left in the Try again state
  • Forum:
  • MDL-49682 - Make forum email template editable
  • MDL-46321 - Uninformative error when moving forum without first selecting destination
  • MDL-50993 - Timed discussions are now displayed to students in a logical order
  • MDL-50430 - Number of subscribers specified in forum subscriber list
  • Assignment:
  • MDL-49176 - Assignment marking guide 'flattens' instructions for markers and students
  • MDL-49515 - Upgrade FPDI library in assignfeedback_editpdf to 1.5.4 to fix problems with PDF annotator on some files
  • MDL-50283 - Improve Rubric interface to include the ability to duplicate rows
  • Other activity modules:
  • MDL-49028 - Wiki: Option to delete pages during course reset
  • MDL-40836 - File resource: New file resource setting option to display upload/modified date
  • MDL-26501 - Glossary: Do not allow to browse by author if author is never displayed
  • MDL-50673 - Workshop: display all participants on "Submission phase" page in a table
  • MDL-50664 - Database activity: add setting to disallow managing of own entries after approval
  • MDL-50658 - LTI: Add support for LTI Memberships service
  • MDL-49581 - Lesson: Remove high scores list feature
  • MDL-49882 - Lesson: Essay questions are not imported into the lesson Module
  • MDL-50720 - Database activity: Highlight database entries that are not yet approved.
  • User interface and usability improvements:
  • MDL-51051 - Rename 'Categories and items' to 'Gradebook setup' and add link
  • MDL-51250 - Show default section name when editing section details with default checkbox being checked
  • MDL-49984 - Add visual blocks outlines to My profile page to help separate information
  • MDL-48947 - Collect all course section editing buttons under one "Edit" dropdown
  • MDL-51087 - Use client-side validation in the signup form
  • MDL-50113 - Improve display of long user and course names in Messaging
  • MDL-50919 - Simplify the Manage tags page, allow to quickly change name, flag and official status of the tags
  • MDL-51013 - Navbar button should appear for smaller screens only when the custom menu or language menu is not empty
  • MDL-51260 - Use the new autocomplete form field for tags
  • MDL-51296 - Add title to page when adding blog post
  • MDL-38763 - Permission override UI should use JS confirmation
  • MDL-29763 - Add description to Portfolio settings page
  • Atto editor:
  • MDL-45515 - New table editing features in Atto editor
  • MDL-49732 - Keyboard interaction for hyperlink in Atto (Ctrl+K)
  • MDL-50936 - More Atto editor Maths equation buttons (sum, sqrt, int, etc.)
  • MDL-50142 - Text editor preferences help pop-up
  • Enrolments:
  • MDL-30674 - Set guest access key from enrolment methods page
  • MDL-30157 - Allow users to start manual enrolments right now
  • MDL-49746 - Allow to sort enrolled users page by last course access
  • MDL-48074 - Group filter in enrolments list should have option "not in any group"
  • Administration:
  • MDL-49329 - Multiple improvements in the plugins installation/update system including ability to install several plugins at the same time
  • MDL-49280 - New configuration setting to allow duplicate email addresses
  • MDL-51330 - Show scheduled tasks component in the cron log
  • MDL-51261 - Upgrade key - mechanism to protect anonymous web access to upgrade screens
  • MDL-50602 - New settings in Automated backup setup for deleting older backups and keeping a minimum number of backups
  • MDL-48438 - Add real name to email about login failures
  • MDL-30960 - New option in email settings to specify SSL or TLS (SMTPSecure property of PHPMailer)
  • MDL-46623, MDL-51824 - CAS and LDAP: Replace CLI script to synchronise users with a scheduled tasks
  • MDL-39319 - Allow administrator to uninstall several languages in one single action
  • MDL-50155 - Move and rename "Common activities settings" link to be under "Manage activities" for consistency
  • MDL-50631 - Display Moodle ASCII logo in CLI installer
  • MDL-46167 - New option for CLI installation: skip database
  • MDL-50572 - Disable YouTube repository by default since it requires setting up
  • MDL-51739 - Lock theme selector UI when $CFG->theme is hardcoded in config.php
  • MDL-51478 - Enable Mobile services by default
  • MDL-19748 - Do not allow to edit tags in the default authenticated user role
  • MDL-46398 - Make HTML5 video the default player for capable videos
  • Other improvements:
  • MDL-51132 - Introduce course tagging as a replacement for user-course-tagging in the "Tags" block. See upgrade documentation
  • MDL-41042 - Course contacts shown in course listings no longer lag by an hour
  • MDL-44273 - Back-off strategy for RSS feeds
  • MDL-45981 - CAS Auth Config needs way to specify that curl should use SSLv3.
  • MDL-49891 - Add description meta to frontpage
  • MDL-25451 - Go straight to "Permissions" from block context menu instead of "Assign roles" if they are not available
  • MDL-50647 - Add 'not in group' section to group overview page
  • MDL-50956 - Allow main menu block to be displayed "throughout the entire site"
  • MDL-28954 - Allow images and embedded files in the cohort descriptions
  • MDL-50371 - Use $CFG->gradepointdefault for new manual gradeitems and grade categories
  • Security issues:
  • There are no new security issues since the Moodle 2.9.3 release on 9 November 2015.
  • For developers:
  • MDL-46455 - Events must define fields mappings in order to be correctly restored (documentation)
  • MDL-50125 - Allow all plugins to inject links in the preferences page (documentation)
  • MDL-51247 - Revive / refresh / rebuild the autocomplete mform element.
  • MDL-50839 - Allow themes to set User menu avatar size (documentation)
  • MDL-48494 - Make $plugin->component required for all plugins
  • MDL-43896 - Drop support for $module in version.php files for Moodle 3.0
  • MDL-50645 - Cache the list of available callbacks per plugin
  • MDL-33564 - rss_error() should return a proper HTTP response code
  • MDL-37864 - New method to add help icons to the sortable table headers (documentation)
  • MDL-51737 - Add ability to detect MS Edge in our browser sniffing code
  • MDL-51213 - external_format_text should be safe to call from web or webservice (documentation)
  • MDL-51413 - Add an additional return field in get_forums_by_courses in order to specify if the current user can create discussions
  • MDL-51217 - Using recaptcha is not possible outside auth_email plugin.
  • MDL-51107 - Add a callback to inject nodes in the category settings navigation (documentation)
  • MDL-50891 - is_web_crawler should be moved to useragent class
  • MDL-50453 - Replace reserved word usage from \core\progress\null (PHP7)
  • MDL-50009 - Prevent scheduled tasks from leaving unfinished db transactions
  • MDL-49821 - Some Web Services miss checks for guest and deleted users
  • MDL-50926 - Upgrade to phpunit 4.x
  • MDL-50491 - New format_text option to exclude particular filters
  • MDL-50783 - Allow some ajax external functions to be called without a session
  • MDL-50150 - Add "Blocks" feature to JS and PHP mustache engines (documentation)

New in Moodle 2.9.3 (Nov 9, 2015)

  • Highlights:
  • MDL-42639 - Web service core_user_get_users_by_field should return username or idnumber to all managers
  • MDL-48861 - Assignment: "Need grading" filter is not working properly within grading overview
  • MDL-51552 - "Single View" bulk insert for empty grades no longer overwrites non-empty grades
  • MDL-51083 - Fixed undesired browser password autofilling in several forms (majority of forms were fixed in MDL-45772 in previous release)
  • MDL-36606 - AJAX Grader report now works correctly when uneditable cells are present
  • Functional changes:
  • MDL-49545 - Teachers without capability to change course full or short name should not be able to do it during restore as well
  • MDL-50917 - Allow manager to access another user's preferences
  • MDL-50811 - Forum email replies update completion tracking information
  • MDL-51834 - Lock custom profile fields that are set to by synchronised with various auth plugins
  • MDL-44707 - Copy embedded files in HTML block when duplicating block (mostly affects adding HTML block with files to default Dashboard)
  • MDL-51467 - Changing course start date when resetting course now correctly adjusts Date Restrictions
  • MDL-43594 - Assignment: Resetting course start date now updates calendar events respectfully
  • UI changes:
  • MDL-40710 - Better visualization of badges backpack icon
  • MDL-51290 - Make adding a photo to a profile more obvious
  • MDL-50207 - Fixed activity results block CSS not to overwrite table caption and work correctly with RTL
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.
  • Fixes and improvements:
  • MDL-51514 - Performance improvement in one of regrading queries on MySQL
  • MDL-51498 - Improve performance for regrading gradebook
  • MDL-50805 - Performance improvement in cron Messaging Cleanup Task
  • MDL-50790 - Fixed problem with removing content of Reply to email feature in gmail
  • MDL-26429 - Added missing criteria icons to completion report
  • MDL-51190 - Fixed MS Edge locking up when viewing embedded PDF
  • MDL-46710 - LTI module correctly tracks completion when opened in a new window
  • MDL-46497 - Atto: clicking RTL button and then LTR button should not add additional HTML tags
  • MDL-49032 - RFC2445_WSP defined incorrectly for Bennu iCal.
  • MDL-50892 - Fixed errors appearing when resource or activity was named '0' (zero)
  • MDL-51390 - Badges: fixed connection to external backpack
  • MDL-50079 - Atto: Fixed bug when user was unable to select "open in new window" when linking to the file from repository
  • MDL-48881 - Fixed bug with lesson not always showing student attempts

New in Moodle 2.9.2 (Sep 14, 2015)

  • Highlights:
  • MDL-50062 - Changing grading category aggregation method no longer results in unexpected "Extra credit" items
  • MDL-34938 - Enrolment expiration dates are now respected in meta course enrolments
  • MDL-35148 - Course/Category themes are respected when viewing website on tablets or mobile devices
  • MDL-45772 - Forms such as "Create new group" are no longer populated with passwords and usernames by the browsers
  • UI changes:
  • MDL-37832 - Course overview block on "My" ("Dashboard") page indicates that activities are expandable/collapsible
  • MDL-46860 - Filepicker is displayed correctly inside Manage Files popup in Atto
  • MDL-49536 - "Clean" and "More" theme's logo removes all header information.
  • MDL-45841 - Blog-style forums better indicate unread posts
  • MDL-50293 - File name wraps properly in the Navigation block
  • MDL-50323 - Unordered lists are styled in course sections properly
  • MDL-50869 - Increased contract of warning colours for AA accessibility
  • MDL-50801 - Allow to set the caption side in Atto table
  • MDL-50525 - Improve placement of preventsubmissionnotingroup on settings page
  • Functional changes:
  • MDL-49826 - Single view now requires capability moodle/grade:edit and not moodle/grade:manage
  • MDL-35027 - Forum's subscribers list shows participants with no access to forum
  • MDL-51179 - Atto autosave restore is disabled if the content is modified by somebody else
  • MDL-49629 - Possible to specify icon URL for a named external tool
  • MDL-50868 - Allow to use ruby tags
  • API changes:
  • MDL-49085 - Block tag_youtube is converted to the new YouTube API
  • MDL-49360 - Function get_local_referer() should be used rather than HTTP_REFERER directly
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.
  • Fixes and improvements:
  • MDL-46232 - Fixed "Only lowercase letters allowed" error on deleting users with empty email
  • MDL-30315 - Uploading feedback from CSV no longer overrides local assigned grades
  • MDL-50446 - Main menu block no longer throws error if there is a resource to be opened in a new window
  • MDL-49440 - Date picker correctly displays names for week days in all locales
  • MDL-42670 - Recent activity block no longer shows student name when assignment blind marking is on
  • MDL-49864 - Assignment PDF Pen annotations are always visible even if there are draft pen annotations
  • MDL-43785 - Corrected error message text about expired sessions when clicking on AJAX elements such as expanding admin menu
  • MDL-44962 - Fixed error when using HTML tags inside wiki headers
  • MDL-50649 - Optimised database query for Course Participation report
  • MDL-50714 - Posting in a forum does not unnecessarily require capability 'mod/forum:movediscussions'
  • MDL-50799 - Improve question bank "questions per page" string behaviour

New in Moodle 2.9 (May 11, 2015)

  • Navigation improvements:
  • MDL-45894, MDL-49634 - Grades page listing all my courses, and all courses I am teaching in one place (linked from User Menu)
  • MDL-48936 - My Home is now Dashboard
  • MDL-48932, MDL-45898 - Redesign profile page, make it pluggable
  • MDL-45895 - New Preferences page (linked from user menu)
  • MDL-45896 - Consistent header for user pages
  • MDL-48931 - Consistent header for user sub pages
  • MDL-48935 - Consistent bread crumbs for user pages
  • MDL-49635 - Remove redundant nodes from nav tree
  • MDL-49983 - Improve consistency of the use of the word "My" in navigation
  • User interface improvements:
  • MDL-43996 - Drag and drop image into Atto editor inserts it as a file
  • MDL-19670 - Teacher can post the same forum question to all groups at once
  • MDL-47172 - “You have assignments that need attention” in the course overview block displays relevant information for teachers
  • MDL-48933 - Ajax interface for messaging
  • MDL-25721 - Sort by age when viewing question banks
  • MDL-23296 - Provide search function for Server files area in the file picker
  • MDL-48937 - Don't show the category in the breadcrumb if there is only one category
  • MDL-26226 - Section names in the navigation can link to the sections
  • MDL-49694 - Overview report shows the full course name
  • MDL-47527 - Allow access to overview report for users who can view all grades
  • MDL-36009, MDL-46662 - Grader report accessibility improvement
  • MDL-47562 - UI Fixes and improvements for SingleView report
  • MDL-47434 - Do not display 'General' section in navigation block if it's empty
  • Course creation improvements:
  • MDL-10405 - Added button to quickly delete a whole section on the course homepage
  • MDL-31500 - Allow backup and restore on the front page
  • MDL-5583 - Fields in database module can be set as required
  • MDL-28526 - Glossary can export/import embedded images and attached files
  • MDL-49006, MDL-49101 - Removed default requirement of activity description and substituted with a single setting
  • MDL-13831 - Grade to pass can be set by editing activity without going to gradebook
  • MDL-46960 - Completion status is updated immediately for student when activity is graded
  • MDL-27074 - Display group name for group events in the calendar
  • MDL-48969 - New activity results block
  • MDL-18177 - Add option to choose whether groups and/or groupings are included in a back up
  • MDL-20053 - Database activity: create ##userpicture## tag to allow the user's profile picture to be displayed
  • MDL-49543 - Add a WYSIWYG field to Badges which is displayed on the criteria page
  • MDL-46416 - Possible to change / remove picture from group
  • MDL-49687 - Adding a single person to multiple groups at the same time
  • MDL-21724 - The course edit page needs a way to redirect to some page other than the main course page after saving
  • MDL-47628 - When grouping is selected for the activity display a button to quickly create access restriction (helps users who were used to groupmembersonly)
  • MDL-23178 - Allow indenting again for activities in the Main Menu block
  • MDL-46238 - Add a simple way to go back from enrol/users.php page to the course
  • Administrator features:
  • MDL-15187 - Assign global roles using CSV upload
  • MDL-30937 - Backup report again links to the individual course backup summaries
  • MDL-32547 - Configure temporary file deletion, to avoid moodledata/temp/backup filling up the filesystem
  • MDL-49684 - Replace custom Moodle timezone stuff with standard PHP date/time code
  • MDL-25763 - CLI version of admin/replace.php
  • MDL-44874 - Per-request temp directories
  • MDL-46064 - Drop support for MyISAM
  • MDL-49298 - Make tgz backups standard
  • MDL-47834 - New option for restriction of concurrent logins in managing authentication
  • MDL-47800 - Logout user when somebody changes their password
  • MDL-47830 - Add password rotation restrictions
  • MDL-48559 - Web CRON should be disabled by default
  • MDL-48080 - Never send mail to domains ending in .invalid
  • MDL-48595 - Log exports no longer fails because of memory limit
  • MDL-28513 - Allow specification of admin user email in CLI installer
  • MDL-49842 - Allow specification of front page summary in CLI installer
  • MDL-47803 - New page that shows all browser sessions of current user
  • MDL-34684 - New health check to detect incorrect category path order and/or missing parent categories
  • MDL-48493 - Automatically detect the plugin type when installing from ZIP
  • MDL-48894 - Site registration page states if site is registered
  • MDL-18183 - Option to verify peer and host of MNet peer using HTTPS
  • Files and repositories:
  • MDL-42616 - Files: Support custom file types
  • MDL-43752 - S3 repository works for non-US repositories
  • Authentication, enrolments and access:
  • Several improvements to meta enrolments, such as: populate groups from courses MDL-17929, sorting courses alphabetically MDL-35696, button to quickly add a new method MDL-49439
  • MDL-26017 - Keyholder capability in self-enrolment plugin
  • MDL-20365 - Salted Crypt passwords option for external database authentication
  • MDL-49380 - Chose "Create new group" when synchronising cohort enrolment with a group
  • MDL-49677 - Improvement of Custom welcome message in self-enrolment plugin
  • MDL-43415 - Custom profile fields should be syncable with external DB auth
  • MDL-49638 - reCAPTCHA should be moved below custom profile fields during self registration
  • Quiz:
  • MDL-348 - Printer-friendly option for quizzes
  • MDL-40988 - Add section headings to quiz
  • MDL-40992 - Option for teachers to allow students to redo a finished question within a quiz attempt
  • MDL-35280 - quiz_reset_userdata does not have an option to remove user/group overrides
  • MDL-48898 - Quiz time period setting should use admin_setting_configduration
  • MDL-6340 - force unique/unseen questions in retakes
  • MDL-40990 - Teachers can require students to complete Question 1 before they can see Question 2
  • MDL-49814 - Quiz navigation indicates depended questions
  • Lesson:
  • MDL-48803 - support for groups
  • MDL-48715 - moving “time spent” from prerequisite to the proper completion rule
  • MDL-43387 - UI for grading essays
  • MDL-48244 - Lessons with no questions show completed after the first page is viewed
  • MDL-47587 - Make progress bar available on the very last page of a lesson.
  • MDL-49642 - Give time/date extensions to users and groups in lesson
  • MDL-40286 - non-editing teacher should see Grade analysis in Lesson
  • MDL-48473 - Lesson shortanswer question: add fill in the blank option
  • MDL-48984 - Lesson content page jump descriptions, numerical and shortanswer questions answers allow rich html but should be plain text
  • MDL-18553 - Removing grade info from lesson pages if lesson grade is 0
  • MDL-26689 - in order to prevent interactivity references from being broken move the "Dependent on" feature to the completion/availability subsystem
  • MDL-49183 - Page creation, update and delete events added
  • MDL-48883 - Content page viewed, Question page viewed and Question page answered events added
  • Other modules:
  • MDL-48221 - Make forum subscription combinations less confusing with different combinations
  • MDL-48822 - Find last visual post in a discussion
  • MDL-46755 - Allow teachers to configure the number of discussions displayed using the social course format
  • MDL-49069 - Ability to specify default values for Forum RSS
  • MDL-48159 - For users without group prevent submissions instead of using "Default team" in group assignments
  • MDL-47777 - Convert assignment maximum files per submission maximum to global setting
  • MDL-45848 - Possible to assign Marker on a marking guide or rubric assignment without giving a grade
  • MDL-49220 - Allow preview of Choice options before activity is opened for submission
  • MDL-34375 - Choice module should display information in "Course overview" block
  • MDL-43770 - Exclude inactive users' responses from Choice report (with an option to include)
  • MDL-32285 - Added "Continue" button under Error notification message (IMS CP)
  • MDL-49730 - Workshop: use full page width when displaying contents
  • MDL-36874 - Text navigation for Books
  • MDL-49563 - Allow glossary entry to be updated from glossary navigation
  • Various:
  • MDL-46763 - Save user images as JPEG if uploaded in that format.
  • MDL-48760 - MathJax library updated to 2.5
  • MDL-47232 - Course completion: "Activities to be completed" should not require passing grade
  • MDL-48437 - Make Visible/All groups selector show own groups first
  • MDL-47501 - Add an indication that the grade letters was overridden
  • MDL-47159 - Link plugin in Atto should add 'http://' prefix when necessary
  • MDL-9443 - Run *.xhtml file through the text filters.
  • MDL-48616 - Add Macrons in Atto character map
  • MDL-46665 - Add 'idnumber' field to user filter
  • MDL-48499 - Show which users have not received messages in bulk messaging
  • MDL-49333 - Return additional information in WebService core_get_site_info
  • Security issues:
  • MDL-49046 - Support for Asynchronous Module Definition formatted javascript modules
  • MDL-49163 - Support for calling webservice functions directly from javascript
  • MDL-49152 - Support for implementing renderers as mustache templates (php and javascript)
  • MDL-44874 - A new per-request directory API has been added, and should be used instead of make_temp_directory wherever possible.
  • MDL-49604 - Support for in browser caching (localstorage) of strings and templates
  • MDL-49650 - Template Library - tool for displaying templates in the current theme
  • MDL-48887 - New auth hook to intercept code before login page is shown.
  • MDL-48177 - Allow plugin environment checks to work without defining explicit versions of Moodle
  • MDL-46728 - WOFF2 fonts are supported in themes.
  • MDL-39752, MDL-49456 - Behat tests runs in parallel
  • MDL-49163 - Unified Ajax script handler
  • MDL-27548 - The comments table contains the component
  • MDL-49269 - Add an AMD log module
  • MDL-49534 - Delete pear/HTTP/WebDav
  • MDL-48212 - Introduces a new class \core\message\message that should be used instead of \stdClass for creating messages.
  • MDL-37477 - html_table API supports caption tag
  • MDL-49643 - Deprecate inconsistent API to extend the navigation by local plugins
  • MDL-49361 - Ability to provide alternate strings manager
  • MDL-44642 - Implemented backend to keep session alive
  • MDL-45725 - User preferences for flexible tables can be set persistent across sessions
  • MDL-49306 - When copying block instances the instance data is also copied
  • MDL-47915 - Theme layout "embedded" uses id='page-content' rather than 'content' to be consistent with other layouts
  • MDL-48212 - Implement new message api to support specific text only on a given handler
  • MDL-49262 - Delete the yui versions of the bootstrap plugins
  • MDL-40864 - Use div.logo instead of a.logo in Bootstrapbase / Clean / More home links
  • MDL-48160 - For theme developers: changes to block region layouts when coded for RTL

New in Moodle 2.8.5 (Mar 10, 2015)

  • Highlights:
  • MDL-35392 - Feedback from module assign is now always shown in the gradebook
  • MDL-31036 - No more truncating characters in assignement quick grading
  • MDL-46626 - Log report export no longer contains html
  • MDL-23273 - Limit of responses in choice module is respected in case of synchronous submissions
  • Functional changes:
  • MDL-31578 - Shibboleth can map attributes for all Moodle fields including custom attributes
  • MDL-47911 - Performance improvement on gradebook operations
  • MDL-49240 - Webservice core_get_string now functions correctly
  • MDL-45621 - It is possible to uninstall portfolio plugins
  • MDL-48670 - Standard behat tests now work properly regardless of user timezone
  • UI changes:
  • MDL-48533 - Backup report now links to the individual course backup summaries
  • MDL-49064 - leftalign css class now has an RTL equivilent in bootstrap base
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.
  • Fixes and improvements:
  • MDL-42138 - Required custom profile fields are always required on signup form even when user has logged in as guest
  • MDL-49059 - Possible to embed YouTube videos with start time or playlist info
  • MDL-48544 - Block region no longer disappears if all blocks in it were hidden
  • MDL-48841 - Fixed bug with not being able to reset scheduled task to defaults
  • MDL-49167 - Fixed regression with $CFG->yuislasharguments introduced by previous minor release
  • MDL-47953 - Grader report shows correct number of students per page when suspended users are present
  • MDL-48294 - enablemobilewebservice is no longer duplicated in Site Admin
  • MDL-48679 - Fixed bug with missing grade export URL when using grade publishing

New in Moodle 2.8.3 (Jan 31, 2015)

  • Fixed issues:
  • Bug MDL-47692: Event "question_manually_graded" is triggered in single comment view only
  • Bug MDL-43421: user_lastaccess race condition
  • Bug MDL-48978: User Description Field breaks in 2.8.2
  • Bug MDL-48542: Possible to render a Moodle site completely inaccessible by passing '###' to customusermenuitems setting
  • Bug MDL-48510: Email to my private files address expires and never recovers
  • Bug MDL-47425: Assignment without any Submission types and Use marking workflow to Yes
  • Bug MDL-46671: Fatal error when calendar event links to the non-existing activity
  • Bug MDL-46976: email addresses not trimmed on registration and thrown away when editing profile
  • Bug MDL-43386: Grade essay student response formatting not correct.
  • Bug MDL-44907: Bootstrapbase: Admin setting validation messages are styled terribly unclearly
  • Bug MDL-38142: problem with mod/forums/user.php when course is marked as unavailable to students
  • Bug MDL-35155: Using a parameter in the $start argument in sql_substr() breaks in MSSQL
  • Bug MDL-48829: It is not possible to reliably identify which page each quiz navigation button belongs to
  • Bug MDL-48711: Incorrect display of the extra credit mark for category totals
  • Bug MDL-48474: When editing a shortanswer question, answers are no longer trimmed
  • Bug MDL-48073: Group filter is reset when moving to next page of enrolled users
  • Bug MDL-48383: Cron warns about disabled enrol_imsenterprise after each scheduled task
  • Bug MDL-31774: Wrong jump behavior in lessons with mutiple clusters
  • Bug MDL-47792: Course Completion Report - "Course Complete" column heading truncated
  • Bug MDL-47871: Event monitor: Allow teacher to duplicate System rule
  • Bug MDL-47761: Self enrolment simply tells "You can not enrol yourself in this course" instead of using the appropriate error strings
  • Bug MDL-47166: Atto: invert indent/outdent buttons (again)
  • Bug MDL-45784: Lesson preview link visible for students in admin block
  • Bug MDL-44560: Pagination in glossary category view not working when entries have multiple categories
  • Bug MDL-43898: Unable to reposition blocks on mod/lesson/continue.php page
  • Bug MDL-41166: assign -> the export to portfolio button should not be shown if the user has not the right to export
  • Bug MDL-42172: Add alternate name fields to "Lock user fields" in email enrolement.
  • Bug MDL-41026: notes externallib functions: validate_parameters() second parameter is not well formatted
  • Bug MDL-40326: Lesson progress bar is not reset by course reset
  • Bug MDL-40285: Assignment is submitted by a group member and it only shows as submitted for grading for that group member.
  • Bug MDL-39103: Lesson settings block navigation displays bugs
  • Bug MDL-38277: Lesson Complete report table headings incorrect display.
  • Bug MDL-36824: The appearance of a lesson activity linked media is weird
  • Bug MDL-36877: Setting Course "Show gradebook to students" to No prevents display of Final Lesson page!
  • Bug MDL-35765: Grade categories not distinct in conditional drop down.
  • Bug MDL-35486: Fixup phpdoc typo (was File-upload dialog missing alt-texts on some images)
  • Bug MDL-48914: No limit on number of users when viewing roles assigned in a specific context, resulting with php memory error
  • Improvement MDL-48921: Query in URL is lost in admin settings search page
  • Improvement MDL-48916: Clarify text for "Undo/Redo"
  • Bug MDL-48873: Wrong redirection when wrong login infos using CAS auth method with multiauth setting
  • Bug MDL-48855: File tags.txt recommends a command that produces warnings and needs reviewing
  • Bug MDL-48847: Confusing number in Group overview User Count
  • Bug MDL-48837: Unit tests fail because time zone modified in previous test
  • Bug MDL-48831: Behat activity visibility test steps fail with labels
  • Bug MDL-48830: Inaccurate query in get_capability_info()
  • Improvement MDL-48823: Improve performance when saving administration settings
  • Bug MDL-48813: Remove groupmember only support from lesson Module
  • Bug MDL-48798: report courseoverview should use separate string for "Activity" word
  • Bug MDL-48779: Problem generating mnet cert with long non-latin site name
  • Improvement MDL-48782: Lesson String Improvements, change "left menu" to "lesson navigation"
  • Bug MDL-48776: Link sent in message email for changing message preferences error
  • Improvement MDL-48761: Add behat step to pause execution for debugging
  • Bug MDL-48753: badges_get_user_badges uses concatenation to form an SQL statement
  • Bug MDL-48750: Lesson incorrectly reports number of attempts to the teacher in the course overview block
  • New Feature MDL-48741: New behat formatter to get --rerun compatible list of scenarios
  • Bug MDL-48720: Retaining forum subscriptions on forum post move is problematic
  • Bug MDL-48685: Rework useragent tests to improve coverage
  • Bug MDL-48660: filter_user_list() should respect permission to view hidden activities
  • Bug MDL-48596: Lesson module: the editing interface won't expand to full screen when blocks are configured to "Display on page types: any page" and placed in the right-hand column
  • Bug MDL-48574: workflow_state_updated event not fired/logged when updating individual grade
  • Bug MDL-48491: Paypal plugin is sending welcome messages as admin not support contact.
  • Bug MDL-48477: Deleting the last category in a context gives an error - you should not be allowed to get that far
  • Bug MDL-48325: "Export to portfolio" button in database ignores capabilties
  • Bug MDL-47935: Autosave message covers text you are editing
  • Bug MDL-14730: Lesson: allow linking to pages inside a lesson
  • Bug MDL-48949: mod/lti/upgrade.txt has two === 2.8 === headings
  • Bug MDL-48765: Use of non-breaking space in enrol instances page causes alignment issue

New in Moodle 2.8.2 (Jan 12, 2015)

  • Highlights:
  • MDL-40241 - Default Manager and Teacher role are able to manually mark course as completed
  • MDL-46442 - Notifications about assignment re-submissions are sent
  • MDL-43462 - EditPDF correctly shows landscape PDFs
  • MDL-43679 - Clicking link to Moodle in MS Word no longer results "You are already logged in" message
  • Functional changes:
  • MDL-42717 - Ensure automated backup files are deleted when an error occurs because of directory permissions
  • MDL-47601 - Ensure old automated backups are deleted including the case when file name is renamed from language string
  • MDL-48023 - Changed "Cache-control: private" to "public" on public static files to increase performance
  • MDL-48224 - In the Task API, each adhoc and scheduled task now has it's own SMTP buffer, and the legacy cron has one buffer for all tasks. Previously scheduled tasks had no buffer, and the legacy cron had a buffer only for tasks of activity modules.
  • MDL-33606 - Make distinction between all section course view and a single section course view log entry
  • API changes:
  • MDL-44657 - No more Javascript error when the form class is namespaced
  • MDL-22309 - get_role_users() works correctly when a user is assigned more than one role
  • MDL-48697 - Completion directory is recognized by Moodle as a valid component directory
  • MDL-48495 - Limit protocols supported by curl by default
  • UI changes:
  • MDL-35078 - End date for self enrolment on the bulk enrolment form now also contains time
  • MDL-42501 - Added help about deleting grades in the course reset form
  • MDL-48206 - Wider textarea for the comments in the comments block
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.
  • Fixes and improvements:
  • MDL-40097 - Course completion role criteria no longer causes fatal error
  • MDL-35494 - User is able to restore an activity even when they own only one course
  • MDL-20304 - Practice lesson does not appear in Gradebook [Patch]
  • MDL-45324 - Grading notifications are not sent before the grades are released to students
  • MDL-47133 - Keyboard shortcuts in Atto do not interfere with regional keyboard settings
  • MDL-37704 - Possible to lock Description field in users' profiles
  • MDL-36240 - Calendar events from activities are restored even without user data
  • MDL-14908 - Parent Role can view courses for students that are in groups
  • MDL-46472 - Fixed upgrade loop caused by undeletable themes
  • MDL-31822 - Non-default section name is shown at the site level
  • MDL-47475 - PDF annotation is visible by all students in the team and not only by the one who made a submission
  • MDL-47993, MDL-48088 - Correctly parse dates with timezones when importing from Microsoft calendar
  • MDL-48150 - Fixed a bug whereby only the first post in a forum was sent with the correct headers on each run of cron
  • MDL-48288, MDL-48191 - Grader report's floating headers work correctly when email or average row is hidden
  • MDL-48179 - Backup progress no longer times out when compressing large backup
  • MDL-48164 - 'Reply to email' does not result in out-of-office replies posted in forum

New in Moodle 2.8.1 (Nov 15, 2014)

  • Regression fixes:
  • MDL-48204 - Syntax error in mod/wiki/admin.php -- Note: this is the regression that lead to Moodle 2.8.1 being released a few days after 2.8.
  • MDL-48168 - It should be possible to edit the overall max grade after a quiz has been attempted
  • MDL-48156 - Schedule task manager misinterprets core\plugininfo\base::is_enabled()
  • Other fixes:
  • MDL-48093 - HTML 5 video: Firefox now supports .mp4
  • MDL-47391 - Default profile page uses page-layout "mydashboard" instead of "mypublic"
  • MDL-39692 - Letter boundary cannot be deleted
  • MDL-39376 - performance problem while calling admin setting page in case of large amount of categories
  • MDL-30968 - Group hyper-link in Forum view links to list of all participants

New in Moodle 2.7.2 (Sep 9, 2014)

  • Highlights:
  • MDL-45780 - Atto now working with form change checker and quiz autosave
  • MDL-46748 - Mathjax address that changed, that caused Atto to fail to load, has been updated in Moodle
  • MDL-35984 - Gradebook Sum of grades shows correct total if items are hidden
  • Functional changes:
  • MDL-45724 - Warning given when the same memcached instance is used for both sessions and MUC
  • MDL-46681 - For Multiple choices questions in the quiz / question bank, the options "Clear incorrect responses" and "Show the number of correct responses" did not make sense for "One answer only" questions. It is now impossible to select that combination of options on the form.
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.
  • Fixes and improvements:
  • MDL-37509 - Description of assignment hidden in calendar if "always show description" = NO
  • MDL-46545 - Weekly stats now working again
  • MDL-46589 - Automatic emails now sent after users import from CSV
  • MDL-43197 - Parent role only sees course total and no longer individual grades
  • MDL-46236 - Start New Attempt option is now followed if SCORM is set to appear in a popup

New in Moodle 2.7.1 (Jul 30, 2014)

  • Highlights:
  • MDL-41383 - File picker works when zooming in and out of browser
  • MDL-45580 - PDF Annotations working with multiple attempts
  • Functional changes:
  • MDL-43274 - Course logs can no longer be deleted when course is reset
  • API changes:
  • MDL-44871 - Behat tests written for Atto functionality
  • MDL-43669 - Configuration option added so that mail can be sent from noreply address exclusively
  • UI changes:
  • MDL-45599 - The term 'add-on' is changed to 'plugin'
  • Security issues:
  • MSA-14-0021 Code injection in Repositories
  • MSA-14-0022 XML External Entity vulnerability in LTI module
  • MSA-14-0023 XML External Entity vulnerability in IMSCC and IMSCP
  • MSA-14-0024 Cross-site scripting vulnerability in profile field
  • MSA-14-0025 Remote code execution in Quiz
  • MSA-14-0026 Information leak in profile and notes pages
  • MSA-14-0027 Forum group posting issue
  • MSA-14-0028 Cross-site scripting possible in external badges
  • MSA-14-0029 Cross-site scripting vulnerability in exception dialogues
  • MSA-14-0030 Cross-site scripting through logs of failed logins
  • MSA-14-0031 Cross-site scripting though scheduled task error messages
  • MSA-14-0032 Cross-site scripting in advanced grading methods
  • Fixes and improvements:
  • MDL-44124 - iCal import recurrence rules working consistently
  • MDL-45579 - Duplicate group enrollment keys for the same course are no longer allowed
  • MDL-45682 - Can now insert images using Chrome
  • MDL-43848 - New message popup no longer shows sender or contents of message

New in Moodle 2.7 (May 12, 2014)

  • HEADLINE FEATURES:
  • Interface:
  • MDL-42964 - Themes clean-up - Moodle is focussed on Bootstrap and improved responsive design. Clean is now the default theme and most other old themes have been removed from core (still available from Plugins directory). Many small improvements have been made all through the interface.
  • MDL-43786 - More theme - A completely new theme called More that provides easy configuration though the UI, while retaining the efficiency of LESS and the responsiveness of Bootstrap.
  • MDL-43841 - New text editor, Atto - Tightly integrated in Moodle and focussing on usability and accessibility (TinyMCE still available as an option).
  • MDL-44070 - Improved conditional activities - Complex boolean combinations are now supported, with a conditions plugin API and a better interface...and it's faster!
  • MDL-43855 - New mathematical equation editor for Atto, producing TeX using a GUI without needing Java. Works everywhere, even tablets and phones.
  • MDL-43856 - New MathJax filter for displaying mathematical equations without needing binaries on the server.
  • MDL-44637 - New report listing all events possible on a site.
  • Platform:
  • MDL-37658 - Logging - a new logging subsystem with plugins allowing Moodle logs to be very detailed and external. Log reports have been updated too. Many new events have been added which developers can take advantage of. These advancements will support better analytics in future as well as reporting standards like TinCan.
  • MDL-25499 - Scheduled Tasks - an improved scheduling system (like Unix cron) that allows precise scheduling of tasks even on complex clustered servers.
  • Performance - With improvements to logging and scheduled tasks, as well as many other small improvements, overall performance will be improved, particularly on large sites.
  • Long-term support (LTS) until May 2017:
  • Most of our releases receive 1 year of backported general bug fixes and 1.5 years of security and dataloss fixes from Moodle HQ.
  • Due to popular demand, we are committing to giving Moodle 2.7 extended support for security and dataloss fixes for 3 years (that's an extra 1.5 years support for this version).
  • If you have been stuck on an old version like Moodle 1.9 then this might be the perfect time to join us in the future!
  • MUCH MUCH MORE:
  • Administration:
  • MDL-26680 - My home reset to default button
  • MDL-42932 - Calendar type choice at system level
  • MDL-43526 - Option to restore a course from the course management pages
  • MDL-43497 - New capability moodle/site:forcelanguage to allow the course language to be overridden
  • MDL-18633 - New capability moodle/user:viewlastip for viewing a last IP field on user profile pages
  • MDL-36141 - New capability moodle/course:reviewotherusers for restricting access to the other users page
  • MDL-44505 - Subject line of forum notifications is configurable.
  • MDL-43682, MDL-43681 Log reports - User interfaces for the Live logs and Log reports have been improved, with more information and filtering support.
  • MDL-35597 - Plugin types are now ordered in Plugins menu.
  • MDL-43117 - A release column has been added to the Plugins Overview page.
  • MDL-40939 - Mimetex binary path is configurable.
  • Quiz & Question bank:
  • MDL-41727 - Quiz reports improved:
  • Responses from all tries are available for analysis when using or "Adaptive", "Interactive with multiple tries" or similar behaviours.
  • Break-down by question variant, for question types like Calculated, STACK and Variable-numeric, which one question can have different random variants.
  • Progress bar during long calculations to prevent time-outs.
  • Low-level calculation code moved into the question component, where it could potentially be reused by other activities.
  • Much more automated testing of this complex area of code.
  • Some minor improvements to the usability of the question bank - Some of MDL-40987:
  • MDL-33653 - To duplicate a question, you now start by clicking the x2 icon, like for activities.
  • MDL-33839 - The various different ways to move questions in the question bank have been rationalised.
  • MDL-33653 - There is now a 'Save changes and continue editing' button when editing questions. Useful when you are working on a complex question with the preview open in another window.
  • MDL-32729 - The interface of the question type selector has been updated
  • MDL-40313 & MDL-40457 - New plugin point, so that plugins can add columns to the question bank, or new search conditions.
  • MDL-39756 - Essay questions can now require an attachment, with the text optional, rather than the other way around.
  • MDL-27414 - Random short-answer matching question type brought back from the dead. (This was in stable branches, but worth mentioning again.)
  • MDL-43478 - Option to show all tries in responses report.
  • Assignment:
  • MDL-33952 - The old Assignment (2.2) module has been removed from core. It has been replaced by a stub to support transparently remapping urls and restoring course backups from the old module to the new one. If you are still using the old assignment module - all instances of the old assignment module will be hidden after upgrading to Moodle 2.7. Once the upgrade tool is run on those assignments they will become visible again. It is recommended to upgrade, and then convert any remaining assignments because logic has been added to the assignment upgrade code for Moodle 2.7 to transparently map urls from the old assignment module to the new one. If you really, really need to keep using the old module, you should update the code to Moodle 2.7, and then replace the "mod/assignment" folder with the one from https://github.com/moodlehq/moodle-mod_assignment/releases before completing the upgrade.
  • MDL-28448 - A new capability mod/assign:editothersubmission can be given to teachers to allow them to edit or delete student submissions.
  • MDL-33600 - 'Notify students' is available to control when to send feedback during the grading process.
  • MDL-34432 - Teachers can comment directly on students' work on online text assignments
  • MDL-42585 - New capability mod/assign:viewgrades to allow grades to be viewed but not changed
  • MDL-44268 - Assignment grading table filters
  • MDL-35373 - Word limit feature added to online assignments.
  • MDL-44629 - Assignment plugins can display an introduction.
  • Database:
  • MDL-42842 - Availability can be set with a time as well as a date.
  • Forum:
  • MDL-44505 - Subject line of forum notifications can now be configured through language string customisation
  • Cron:
  • MDL-25499 - Cron has received a major update and now has support for both scheduled and adhoc tasks.
  • Badges:
  • MDL-40551 - Badges can be deleted
  • MDL-44264 - Badges are displayed on course profile pages
  • Authentication:
  • MDL-42816 - Manual account authentication can now have password expiry enabled.
  • MDL-41115 - Users can log in with either their username or their email address.
  • MDL-33925 - Support for self-signed certificate without SSL in auth IMAP
  • Gradebook:
  • MDL-32888 - Gradebook search allows for filtering by student name.
  • MDL-31679 - The top of the grader report now also has a horizontal scrollbar.
  • MDL-22999 - Maximum marks in standard activities can now exceed 100.
  • Course and pages:
  • MDL-38923 - Blocks can be docked while using the Clean theme.
  • MDL-44269 - Breadcrumbs moved below the logo image in Clean.
  • Mobile:
  • MDL-44342 - Airnotifier allows notifications to be sent to MoodleMobile app.
  • MDL-30085, MDL-30106 Web services added for grades and forums.
  • Developer Notes:
  • Logging and events: All plugins should convert their logging and triggering of events to the new API. See Migrating logging calls in plugins.
  • Reports: Reports that use log table should be updated to use the new logging framework. Old reports will continue to work as before as long as legacy logging is enabled in the site. See Migrating log access in reports for details.
  • Developers can now use the Lock_API to lock critical tasks (even across cluster nodes).
  • Plugins can now use the Task_API to schedule background tasks and developers are encouraged to convert to this API from legacy cron.
  • New plugin type for conditional availability. See Availability_conditions.
  • New plugin type for Atto editor. See Atto
  • New plugin type for Logging store.
  • API changes:
  • MDL-39952 - Core events: All core events have been converted to the new Events API. The list of all events is available for admin in report "Events list". Writing observers to the new events is easier but old-style observers will continue to work. Moodle plans to add missing validation to core events before release of 2.7.1 (it will not affect plugins unless they directly trigger core events).
  • MDL-43040 - Activity modules should use $plugin instead of $module in mod/*/version.php.
  • MDL-45250 - add_to_log() has been deprecated and now generates debugging warnings\
  • MDL-44510 - PHPUnit 4.x is now supported.
  • New API for raising php time limit core_php_time_limit::raise()
  • MDL-39337 - New html_writer::image() api

New in Moodle 2.6.2 (May 5, 2014)

  • Highlights:
  • MDL-43733 - Auto-saved responses are used when a quiz attempt is submitted automatically
  • MDL-43732 - Order and Paging controls are now more accessible
  • MDL-43969 - Improved accessibility of shortform collapsing
  • MDL-27414 - Random short answer matching question type now works again (with thanks to Jean-Michel Védrine)
  • Functional changes:
  • MDL-40821 - Language menu in Clean shows language used
  • API changes:
  • MDL-43882 - "Time spent waiting for the database" value added to performance info
  • MDL-43439 - Behat now has an option to take screenshots on failure
  • UI changes:
  • MDL-44425 - Skydrive, Box.net and Google Docs are renamed OneDrive, Box and Google Drive respectively to reflect these remote service name changes.
  • Security issues:
  • MSA-14-0004 Incorrect filtering in Quiz
  • MSA-14-0005 Access issue in Feedback activity
  • MSA-14-0006 Capability issue in Chat
  • MSA-14-0007 Access issue in Wiki
  • MSA-14-0008 Cross site scripting potential in Flowplayer
  • MSA-14-0009 Identity information leak in Forum and Quiz
  • MSA-14-0010 Identity information leak in Alfresco Repository
  • MSA-14-0011 Cross site request forgery potential in IMS enrolments
  • MSA-14-0012 Access issue in Badges
  • MSA-14-0013 Unfiltered data used in Assignment web services
  • Fixes and improvements:
  • MDL-43598 - Mod chooser no longer causes a jump in scroll position when first used.
  • MDL-43664 - JavaScript no longer breaks on IE8
  • MDL-40705 - Long course names are truncated in navigation menu
  • MDL-40205 - Long block titles are truncated in Clean
  • MDL-42882 - Performance improvement to missing root directory upgrade step
  • MDL-40849 - Assignment marking guide screen fixed in Clean
  • MDL-44217 - The link colour in Bootstrapbase (and Clean) is now WCAG compliant
  • MDL-44029 - Quiz user overrides no longer deleted by group event handler
  • MDL-44018 - Variant field of question_attempts is backed up by Moodle backup
  • MDL-42928 - Scrolling is locked behind full-screen dialogues
  • MDL-43941 - Activity show/hide toggle fixed in hidden and orphaned sections
  • MDL-43306 - Backup no longer introduces duplicate gradeitem sortorders when restoring

New in Moodle 2.6 (Nov 5, 2013)

  • Major new features:
  • MDL-31776: Additional name fields
  • MDL-31830: Improved category and course management interface
  • MDL-13114: Bulk course creation tool
  • MDL-40121: New Single Activity Course Format (and removed SCORM course format MDL-40122)
  • MDL-30740: Microsoft Skydrive repository
  • MDL-17081: Roles import and export
  • MDL-40493: Users may select preferred text editor
  • MDL-37565: Toolbar switching in TinyMCE editor (one or multiple lines)
  • MDL-41866, MDL-18375: Support for multiple calendars
  • MDL-23692: Simplified recovery of forgotten username and password reset
  • MDL-39851: Popups become full-screen on small screens
  • Assignment activity:
  • MDL-38359: New marker allocation and grading workflow settings
  • MDL-37621: Admins can set assignment setting defaults
  • MDL-42023: Edit PDF plugin
  • MDL-37148: Lots more web services
  • MDL-41131: Assignment plugins can be on automatically
  • Forum activity:
  • MDL-29663: Forum read tracking options now Off, Optional, and Forced.
  • MDL-41933: Option to set default read tracking option.
  • MDL-4908: Per-forum digest settings
  • Quiz and question bank:
  • MDL-32188: Big improvements to how certainty-based marking (CBM) works. There is now much better feedback for students about how they have done, and what they need to do to improve in future.
  • MDL-9873: Question text is now a required field when creating and editing questions.
  • MDL-39155: Option for what size user picture to show during quiz attempts.
  • SCORM activity:
  • MDL-28579 / MDL-41580: Allow use of file aliases and direct linking to imsmanifest.xml inside an extracted zip in the file system repository.
  • MDL-39910: Improved SCORM player with responsive design elements and better support for mobile devices.
  • MDL-39926: New objectives report
  • MDL-41290: Improved user level reporting with ability to export data.
  • MDL-41434: When updating a SCORM package we no longer delete and re-create the scorm_scoes table: we now use a sortorder field.
  • Performance:
  • MDL-41811: Admin settings menu is loaded only when necessary
  • MDL-38189: Restoring of large courses possible
  • MDL-40415: OPcache extension fully supported and recommended
  • MDL-31501: New session drivers supporting files, database and memcached storage
  • MDL-40545: New $CFG->localcachedir setting (intended for clustered servers)
  • MDL-40563: Improved theme resource caching (local cache compatible)
  • MDL-40546: Improved javascript caching (local cache compatible)
  • MDL-41019: Language caching improvements (local cache compatible)
  • MDL-41017: HTMLPurifier caching improvements (local cache compatible)
  • MDL-39474: Developer debug checks improvements
  • MDL-38570: Automatic temp directory cleanup
  • MDL-42206: Meta enrolments are not synchronised after every course edit
  • MDL-37761: File-less backup/restore when importing and duplicating
  • Other highlights:
  • MDL-40770, MDL-42102: New TinyMCE editor icons
  • MDL-39814: Improved edit icons for usability on all screens
  • MDL-11270: Significantly improved MS SQL Server compatibility (warning: upgrade step for MS SQL servers may take very long time)
  • MDL-39985: Full MariaDB support
  • MDL-19390: Email notification for new users added manually
  • MDL-33955: Support for open_basedir restriction
  • MDL-41245, MDL-41437, MDL-41086: Multiple installation and upgrade fixes and improvements
  • MDL-42078: Standardised plugin uninstallation and management.
  • MDL-37717: Teachers are warned before suspending own enrolment in course
  • MDL-38155: User enrolment may be suspended via CSV upload
  • MDL-16073: New test pages for external database authentication and enrolment plugins
  • MDL-41838: Backup and restore .mbz files now supports a new .tar.gz internal format (helps with very large courses)
  • MDL-41940: Option to prevent users from adding new files and directories to legacy course files
  • MDL-40874: Retire MyMobile as a standard theme
  • MDL-29069: Allow database and glossary entries to be unapproved
  • MDL-41845: Make default completion tracking selection an admin option
  • MDL-40871: Allow for bulk deletion of entries in the database module
  • MDL-40368: Improved capability overview tool
  • MDL-38192: Backup and restore: Allow selection by activity type
  • MDL-42110: Add-on installer is using parent directory permissions for new directories and files
  • MDL-23646: Improvement to TinyMCE editor resizing
  • MDL-36002: Move action for activities and course sections are keyboard accessible with JavaScript enabled
  • MDL-39813: Login page simplified for a mobile devices
  • MDL-39040: Database activity description is visible on all tabs
  • MDL-41305: Group forms improved
  • MDL-40550: It is now clearer if badges will be issued immediately on activation
  • MDL-40685: Improvements to the consistency of headings
  • MDL-12403: Backups no longer include unnecessary questions from the Question Bank.
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.
  • For developers: API changes:
  • MDL-39854: Automatic class loader
  • MDL-39797: New events infrastructure
  • MDL-41267: Support for sub-plugins in admin tool plugins
  • MDL-26943: Support for sub-plugins in local plugins
  • MDL-20045: Unofficial support for custom context levels
  • MDL-40359: 3rd party libraries updated to latest versions
  • MDL-40305, MDL-40940: PHPUnit testcase autoloader
  • MDL-23493: Support for including a font through theme CSS
  • MDL-40248: Better support for subplugins in Activity chooser
  • MDL-41953: Plugin name restrictions were relaxed, multiple trailing numbers are allowed
  • MDL-42040: New API for registration of shutdown handlers
  • MDL-42148: New admin page listing all third party libraries, thirdpartylibs.xml now supported in plugins
  • MDL-38197, MDL-41402: New large courses generators for testing and development
  • MDL-41421: New JMeter test plan generator
  • MDL-32188: As part of this issues, the question behaviour API was changed, and plugins will need to be updated, though this is not hard. As a result Behaviours can display summary information on the quiz review page. See CBM behaviours for an example.
  • MDL-22236: Files can be uploaded to web services.
  • MDL-39152, MDL-39153: web service functions no longer require context ID.
  • MDL-42407: new method of reporting HTML elements with zIndex value for consideration when presenting a Moodle Core Dialogue
  • MDL-39339: zip_archive ignores system files.
  • MDL-40103: Changes to temp table creation.
  • MDL-38019: Filter changes are logged
  • MDL-41438: Core renderer methods produce plain headings by default.
  • MDL-41806: Accessors added for scheme, host and port to moodle_url class.
  • MDL-41956: Attachments accepted in message_send() in email message provider.

New in Moodle 2.6 Dev (Sep 2, 2013)

  • Major new features:
  • MDL-31776 - Alternate name fields
  • MDL-13114 - Bulk course creation tool
  • MDL-40121 - New Single Activity Course Format (and removed SCORM course format MDL-40122)
  • MDL-30740 - Microsoft Skydrive repository
  • MDL-17081 - Roles import and export
  • Assignment activity:
  • MDL-38359 - New marker allocation and grading workflow settings
  • MDL-37621 - Admins can set assignment setting defaults
  • SCORM activity:
  • MDL-39926 - Objectives report
  • Other highlights:
  • MDL-19390 - Email notification for new users added manually
  • MDL-35434 - File picker available in themes settings

New in Moodle 2.5.2 (Sep 2, 2013)

  • Highlights:
  • MDL-30839 - Form validation and error recovery draws the user to where focus is needed.
  • MDL-27953 - Uploaded users can be added with authentication options other than Manual account or No login.
  • MDL-38707 - Folders displayed on course pages show their name.
  • Functional changes:
  • MDL-30839 - Form validation and error recovery draws the user to where focus is needed.
  • MDL-40854 - Links to course activities/resources do not appear to users without appropriate view capabilities.
  • MDL-35981 - Confirmation is no longer needed after deleting a comment.
  • MDL-38707 - Folders displayed on course pages show their name.
  • MDL-41036 - Question category info is now edited using the HTML editor.
  • API changes:
  • MDL-40176 - Mock form submission introduced for testing.
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.
  • Fixes and improvements:
  • MDL-37333 - Clicking "Clear theme caches" in Default theme selector redirects page to "Select theme for tablet device".
  • MDL-41106 - MUC session cache fixes were made.
  • MDL-36803 - TinyMCE editor now works better with iOS.
  • MDL-40891 - MUC cache purge works consistently when creating directories.
  • MDL-31487 - Grade items remain hidden if explicitly hidden via Gradebook (regardless of activity state).

New in Moodle 2.5.1 (Jul 5, 2013)

  • Highlights:
  • MDL-39824 - Simplification of themes
  • MDL-38434 - Functional tests added for the Chat activity
  • MDL-39723 - Two unnecessary course queries were removed from most pages
  • Functional changes:
  • MDL-39790 - My Latest badges block appears on the course page
  • API changes:
  • MDL-40137 - Correct naming of functions in theme/clean/lib.php
  • Security issues:
  • A number of security related issues were resolved. Details of these issues will be released after a period of approximately one week to allow system administrators to safely update to the latest version.
  • Fixes and improvements:
  • MDL-39778 - Course deletion now functions with badges.
  • MDL-40120 - Issue when recent PostgreSQL versions retrieve the number of records from course table fixed.
  • MDL-39697 - Bootstrap layouts now have 'Maintenance' layout and related options.
  • MDL-40065 - Bootstrap Theme only sends content to "side-pre" if necessary.
  • MDL-40088 - Can now edit course settings if course is in a hidden category.
  • MDL-39979 - Teachers no longer see errors when Show Activity Reports is set to yes.
  • MDL-39363 - SCORM pass/fail status is set for a grade of 0.
  • MDL-39227 - SCORM navigation panel is no longer hidden when a Bootstrap theme is active.
  • MDL-39177 - Overwriting files always observes the "alias" attribute.
  • MDL-33719 - When overwriting a copy of a file with an alias/shortcut of a file, the file thumbnail is refreshed.
  • MDL-40142 - No JavaScript error is caused by the navigation block in relation to course categories.
  • MDL-40289 - Badges capabilities now have correct risks, levels and archetypes. Note for sites which are upgrading from 2.5: See the section 'Upgrading from Moodle 2.5 to 2.5.1' in Upgrading for details of how to correctly set badge permissions for each role archetype.

New in Moodle 2.5 (May 14, 2013)

  • Bug fixes for general core bugs in 2.5.x will end May 2014 (12 months).
  • Bug fixes for serious security issues in 2.5.x will end November 2014 (18 months).

New in Moodle 2.4.3 (Mar 19, 2013)

  • Regression fix:
  • MDL-38474 - Teachers unable to access server files
  • Other fixes:
  • MDL-38303 - MUC: Session cache is adjusted accordingly when user logs in or out
  • MDL-38386 - Upgrade step for 24 and master adjusted
  • MDL-38332 - Browsing users paginates properly for multiples of 30 users
  • MDL-33424 - Images correctly restored from a 1.9 course quiz
  • MDL-34011 - Display of student attempts for Short Answer questions in Lessons is now correct