Notes de version de Moodle 4.0

De MoodleDocs

Remarque : la traduction de cette page n'est pas terminée. N'hésitez pas à traduire tout ou partie de cette page ou à la compléter. Vous pouvez aussi utiliser la page de discussion pour vos recommandations et suggestions d'améliorations.


Version 4.0

Sortie : 19 avril 2022

Vous pouvez consulter un survol des nouvelles fonctionnalités de Moodle 4.0 avec des copies d'écran, et une série de vidéos (en anglais)

Vous pouvez consulter la liste des détails sur les évolutions et corrections de bogues de cette version 4.0 (en anglais).

Vous pouvez consulter la liste de tous les développeurs qui ont travaillé sur les correctifs et les nouvelles fonctionnalités de cette version.

Prérequis serveur

Ces versions sont les versions minimales pour assurer un fonctionnement correct ; nous vous recommandons d'utiliser des versions de logiciels et système d'exploitation récentes et à jour.

  • Mise à jour : possible depuis Moodle 3.6 minimum (si vous avez une version plus ancienne, passez au moins à Moodle 3.6 d'abord)
  • Version PHP : 7.3.0 minimum ! La version a évolué depuis Moodle 3.10. PHP 7.4 est supporté, ainsi que PHP 8.0 (à partir de Moodle 4.0.2). Une version 64 bits est recommandée.
  • L'extension PHP sodium est recommandée. Elle sera requise dans Moodle 4.2. Pour plus de détails, voir Environnement - Extension PHP sodium
  • L'extension PHP exif est recommandée.
  • Le paramètre PHP max_input_vars devrait être réglé >= 5000 pour PHP 7.x. Ce réglage sera nécessaire pour PHP 8.x. Pour plus de détails, voir Environnement - max_input_vars

Prérequis de base de données

Moodle supporte les bases de données suivantes. Les versions minimales sont bien les minimales supportées, il est recommandé d'utiliser les dernières versions stables de chaque logiciel !

Base de données Version minimale Version recommandée
PostgreSQL 10 (augmenté depuis Moodle 3.11) Dernière
MySQL 5.7 (augmenté depuis Moodle 3.9) Dernière
MariaDB 10.2.29 (augmenté depuis Moodle 3.8) Dernière
Microsoft SQL Server 2017 (augmenté depuis Moodle 3.10) Dernière
Oracle 11.2 Dernière

Prérequis client

Navigateurs internet supportés

Moodle 4.0 est compatible avec les navigateurs internet récents respectant les standards du web. Nous testons régulièrement Moodle avec plusieurs navigateurs.

De bureau :

  • Google Chrome
  • Mozilla Firefox
  • Safari
  • Edge

Note : Internet Explorer 11 (et ses versions précédentes) n'est pas compatible avec Moodle 4.0.

Safari 7 et précédents ont des problèmes de compatibilité connus avec Moodle 4.0.

Pour mobile :

  • Safari Mobile
  • Google Chrome

Pour la meilleure expérience et une sécurité optimale, nous recommandons que vous gardiez votre navigateur internet à jour : https://www.whatismybrowser.com/ et https://www.whatsmybrowser.org/

Avant de mettre à jour

Pour pouvoir mettre à jour vers Moodle 4.0, Moodle 3.6 minimum est nécessaire (si vous avez une version plus ancienne, passez d'abord à Moodle 3.6 minimum).

Si vous n'installez pas une version neuve de Moodle 4.0, mais réalisez une mise à jour depuis une version existante, consultez impérativement les informations de Mise à jour à Moodle 4.0 !

Améliorations majeures de l'expérience utilisateur

Améliorations de navigation

  • 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

Index de cours

  • 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

Expérience de cours

  • 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

Page Mes cours et bloc Vue d'ensemble des cours

  • MDL-70801 - Implémentation de la page "Mes cours"
  • MDL-58579 - Allow searching / filtering of courses in myoverview
  • MDL-73231 - Option pour avoir Mes cours comme page par défaut

Bloc Chronologie

  • 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

Utilisabilité du calendrier

  • 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

Tableau de bord

  • MDL-72092 - Arrangement des blocs entre Mes cours et Mon tableau de bord
  • MDL-73114 - Affichage d'un titre dans le Tableau de bord
  • MDL-71964 - Message de bienvenue aux utilisateurs
  • MDL-73233 - Option pour désactiver le Tableau de bord
  • MDL-72116 - Suppression de certains blocs par défaut du Tableau de bord

Visites guidées

  • MDL-61674 - Permet de créer des visites guidées avec l'éditeur de texte Atto
  • MDL-72385 - Amélioration et simplification du design des visites guidées
  • MDL-71938 - Affichage du nombre d'étapes d'une visite guidée
  • MDL-72783 - Ajout de nouvelles visites guidées
  • MDL-72781 - Suppression des visites guidées précédentes
  • MDL-72557 - Implement customisable confirmation button for single step user tours
  • MDL-71931 - Update user tours to emit events

Autres améliorations d'utilisabilité et d'expérience utilisateur

  • MDL-69371 - Transformation de la page de connexion (voir aussi MDL-72928)
  • MDL-71457 - Mise à jour des icônes d'activités
  • MDL-71963 - Turn confirmation page into modals
  • MDL-71965 - Nouveau pied de page
  • 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 - Suppression du lien Retour en haut de page
  • 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)

Nouvelles fonctionnalités majeures

Intégration du générateur de rapports (de 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

Intégration BigBlueButton

  • MDL-70658 - Intégration du plugin BigBlueButton dans Moodle LMS

Test et questions

  • MDL-71516 - Création d'un nouveau type de plugin - Qbank (pour la liste complète des plugins qbank ajoutés au cœur, voir MDL-70329)
  • MDL-71679 - Modification de mod_quiz pour la nouvelle banque de questions
  • MDL-71636 - Add a columnsortorder settings page
  • MDL-71696 - Ajout des versions d'une question
  • MDL-72076 - Interface d'actions par lots pour la banque de questions
  • MDL-72553 - Ajout de champs personnalisés aux 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 - Ajout de qbank_history au cœur
  • MDL-71614 - Ajout de qbank_previewquestion au cœur

La fonctionnalité de fournisseur d'outils LTI prend en charge la version 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

Devoir

  • MDL-68913 - Per attempt timing now available in assignments

Préréglages de configuration administrateur

  • 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

Banque de contenu et 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

Améliorations d'accessibilité

  • 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

Autres améliorations principales

Changements fonctionnels

  • 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)

Pour les administrateurs

  • 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

Améliorations de sécurité

  • 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"

Pour les développeurs

  • 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

Nouveautés et évolutions des services web

  • MDL-71135 - Création du service web core_course_get_state
  • MDL-71165 - Création du service web core_course_update_course

Plugins supprimés du cœur

  • MDL-71473 - Jabber supprimé comme plugin de notification standard
  • MDL-58939 - Dépôt et portfolio Picasa supprimés du cœur
  • MDL-72335 - Tool_health supprimé du cœur
  • MDL-72615 - Plugins Boxnet supprimés du cœur
  • MDL-72616 - Bloc Résultats de Test supprimé du cœur
  • MDL-72348 - Dépôt Microsoft OneDrive (repository_skydrive, ancien) supprimé du cœur
  • MDL-72347 - Filtre Censure de mot (filter_censor) supprimé du cœur
  • MDL-72407 - Plugin VideoJS Flash supprimé du cœur
  • MDL-72042 - Lecteur d'animation Flash supprimé du cœur
  • MDL-72041 - Importation de question au format WebCT supprimé du cœur
  • MDL-72517 - Importation de question au format Examview supprimé du cœur

Dépréciations

  • MDL-53544 - Librairie Typo3 supprimée
  • MDL-72004 - Test 4.0 - renommage de classes et dépréciation
  • MDL-73756 - Dépréciation du paramètre $modinfo pour completion_info::get_data()
  • MDL-65799 - Phase 2 de la dépréciation de fonctions dans lib/deprecatedlib.php initiallement dépréciées en 3.8
  • MDL-71175 - Dépréciation de fonctions de plagiarism non utilisées, ou ayant des remplacements
  • MDL-66266 - Suppression des fonctions dépréciées dans messages/classes/api.php
  • MDL-72098 - Dépréciation de la méthode grade_grade::insert qui appelle simplement son parent
  • MDL-72433 - Dépréciation finale de get_grades() dans lib/classes/grades_external.php
  • MDL-71476 - Suppression de mysql_engine.php
  • MDL-65252 - Dépréciations finales de forum_count_replies et get_forum_discussion_posts
  • MDL-67412 - Suppression des fonctions dépréciées dans lib/setuplib.php
  • MDL-65801 - Suppression des chaînes dépréciées en 3.8

Mise à jour des APIs

Lisez les pages indiquées ci-dessous pour vérifier les éléments dépréciés et les changements dans les APIs générales, et assurez-vous de les appliquer à vos plugins. Notez que les entrées indiquées ne sont pas triées par priorité, mais par ordre alphabétique des dossiers.

Voir aussi