Releases: chamilo/chamilo-lms
v2.0.0 Alpha 2
This is an alpha release, not meant for production use, only for testing and contributing to the development of Chamilo 2.
Visual design is not final.
Database structure should be frozen until Chamilo 2.0 stable 🤞, so external developers are welcome to start contributing extensions to current feature set while using the existing database structure or adding to it through plugins.
The following is an automatically-generated changelog. For a slightly better human-readable changelog, please check public/documentation/changelog.html inside the package, or load "/documentation/changelog.html" in your browser once you have configured it.
Please refer to the install process in README.md (Chamilo's main project page on Github) for installing. This version still requires Redis (or similar) for sessions management.
What's Changed
- Internal: Fix tool translations in course view - refs BT#21888 by @christianbeeznest in #5689
- Internal: Fix subfolder navigation, file display, and thumbnail consistency in File Manager - refs BT#21647 by @christianbeeznest in #5690
- Internal: Fix user-selected locale in registration email and confirmation message - refs BT#21596 by @christianbeeznest in #5688
- Social: Fix friends list, update requests, add notifications - refs BT#21101 by @christianbeeznest in #5692
- Internal: Fix icon alignment in lesson items - refs BT#21588 by @christianbeeznest in #5693
- Display: Fix duplicated app container + remove unnecessary from_vue value by @AngelFQC in #5691
- Message: Fix message status update on deletion for sender and receiver - refs BT#21887 by @christianbeeznest in #5695
- Message: Fix message read/unread update - refs BT#21902 by @christianbeeznest in #5701
- Internal: Add CSS reset for TinyMCE editor content - refs BT#21876 by @christianbeeznest in #5696
- Internal: Fix language selection for user registration notifications - refs BT#21751 by @christianbeeznest in #5699
- Internal: Add missing sender entries in message_rel_user migration - refs BT#21887 by @christianbeeznest in #5700
- Course: Filter courses by access URL if multiple URLs enabled by @christianbeeznest in #5694
- Internal: Improve font between TinyMCE editor and page view - refs BT#21876 by @christianbeeznest in #5703
- Internal: Fix missing course association in CourseRelUser by @christianbeeznest in #5704
- Message: Fix missing sender records in message_rel_user for legacy message sends - refs BT#21887 by @christianbeeznest in #5705
- Internal: Ensure consistent font between TinyMCE editor and course home page - refs BT#21876 by @christianbeeznest in #5707
- Internal: Fix error when importing gradebook in session course addition - refs BT#21911 by @christianbeeznest in #5708
- Internal: Fix duplicate entry error in session_rel_user table - refs BT#21913 by @christianbeeznest in #5709
- Message: Refactor message deletion and status update logic with entity listeners - refs BT#21887 by @christianbeeznest in #5710
- Internal: Update session course permissions and visibility indicators - refs BT#21604 by @christianbeeznest in #5698
- Gradebook: Remove user_id from gradebook tables, ensure event tracking - refs BT#21911 by @christianbeeznest in #5718
- Internal: Add migration file to remove user in gradebook links and evaluations. by @christianbeeznest in #5719
- Internal: Add course settings permission and improve table layout - refs #5644 by @christianbeeznest in #5723
- Forum: Fix forum visibility issue for course session in student view - refs BT#21926 by @christianbeeznest in #5724
- Internal: Fix email notification for student boss in follow-up messages - refs BT#21924 by @christianbeeznest in #5726
- Course: Fix non-authenticated course 'about' page error and add subscription validation - refs BT#21805 by @christianbeeznest in #5727
- Session: Integrated Asset URL Handling for API Image Display - refs BT#21551 by @christianbeeznest in #5728
- Gradebook: Fix undefined user_id in Evaluation for edit - refs BT#21911 by @christianbeeznest in #5733
- Internal: Fix ImageURL Handling for Session Entity by @christianbeeznest in #5735
- Internal: Fix Coach Assignment Logic in Course Session by @christianbeeznest in #5736
- Internal: Fix session visibility and assignment import issues - refs BT#21604 by @christianbeeznest in #5737
- Internal: Fix course visibility in My Sessions page - refs BT#21604 by @christianbeeznest in #5738
- Internal: Fix chat emoji handling and user ID references - refs #5712 by @christianbeeznest in #5739
- Internal: Improve user creation and update logic for CSV sync script - refs BT#21895 by @christianbeeznest in #5742
- Social: Hide social groups menu item based on config setting - refs BT#21572 by @christianbeeznest in #5745
- Social: Replace text field with TinyMCE editor for post creation - refs BT#21938 by @christianbeeznest in #5746
- Internal: Fix cursor visibility in TinyMCE on Firefox - refs BT#21943 by @christianbeeznest in #5747
- Internal: Fix file manager pagination and tab visibility issues - refs BT#21647 by @christianbeeznest in #5748
- Internal: Fix SQL query error in user language report and address missing graphs issue - refs BT#21957 by @christianbeeznest in #5750
- Migration: Check schema differences post-migration - refs BT#20968 by @christianbeeznest in #5720
- Internal: Set default false for ExtraField boolean fields by @christianbeeznest in #5754
- Internal: Set default visibilty true some extrafields required by @christianbeeznest in #5755
- Internal: Migrate and improve settings from configuration.php to .env and hosting_limits.yml - refs #5702 by @christianbeeznest in #5756
- OAuth2 by @AngelFQC in #5753
- Internal: Add variable settings to .env.dist and plugin.yaml import - refs #5316 by @christianbeeznest in #5759
- Internal: Improve plugin.yaml parameter by @christianbeeznest in #5760
- Internal: Rename hosting_limits.yml and change default value by @christianbeeznest in #5761
- Internal: Add new variables from old configuration to .env for install by @christianbeeznest in #5762
- Internal: Refactor global.inc.php for CLI compatibility by @christianbeeznest in #5768
- Internal: Fix foreign key constraint on user deletion by @christianbeeznest in #5779
- Internal: Improve migration process from install page by @christianbeeznest in #5771
- Migration: Fix issue with foreign key and index removal by @christianbeeznest in #5782
- Internal: Fix CLI error when retrieving settings with api_get_setting - refs BT#21987 by @christianbeeznest in #5788
- Internal: Fix date and time format in datepickers by locale - refs BT#21592 by @christianbeeznest in #5789
- Revert "Internal: Fix CLI error when retrieving settings with api_get_setting - refs BT#21987" by @AngelFQC in #5791
- Include session when running cli by @AngelFQC in #5790
- Internal: Enhance tables and charts: spacing, alignment, titles, Excel export - refs BT#21957 by @christianbeeznest in #5792
- Internal: Align table headers and data to the left for stats page - refs BT#21957 by @christianbeeznest in #5794
- Internal: Add TinyMCE and Uppy localization support - refs BT#21979 by @christianbeeznest in #5793
- Internal: Fix search placeholder translation issue - refs BT#22000 by @christianbeeznest in #5797
- Internal: Fix broken user list page in class administration - refs #5721 by @christianb...
v1.11.28
What it is
Chamilo 1.11.28 is a security fix release on top of 1.11.26. See security issues at https://github.com/chamilo/chamilo-lms/wiki/security-issues
What's new
For teachers and Chamilo admins
- [2023-10-24] (a12dae74 - BT#21146) Admin: Statistics: Add list of duplicated users by e-mail
- [2023-10-25] (989cc07a - BT#20691) Exercise: Add export all results with date filter
- [2023-11-05] (2d993de8 - BT#21146) System: Inactive users will no longer receive e-mails
- [2023-11-05] (c92ea791 - BT#21146) Admin: Add checkbox to ask for new password on users update through CSV import
- [2024-01-15] (76f88c7c - BT#21353) Course settings: add parameter to enable student to be assigned as course teacher
- [2024-01-22] (fa4b551e - BT#21354) Plugin: Zoom: Add option to enable presenters for meetings
- [2024-01-31] (54d32efd - BT#21387) User: Plugin: Justification: add option to send notification to creator of the user
- [2024-03-08] (400f7a4b - BT#21441) Admin: Add update courses through CSV/XML
- [2024-03-18] (503d9d0e - BT#21415) Admin: Add visibility to course import/export/update through CSV/XML
- [2024-03-26] (91f98230 - BT#21224) Gradebook: Add a global page for the user to be able to see all the requirement in all its courses where a gradebook is set
- [2024-04-09] (e5ccf4d6 - BT#21424) Document: add MathJax script in all HTML document before returning the document for download (optional)
- [2024-08-29] (994244bb - BT#21930) Plugin: Azure: Add option to set the verification order for existing user
- [2024-09-03] (7df53955 - BT#21930) Plugin: Azure: Add script to sync groups from Azure
- [2024-09-03] (331d9fac - BT#21930) Plugin: Azure: Add option to deactivate non-existing users in Azure when running sync_users script
- [2024-09-03] (6949a076 - BT#21930) Plugin: Azure: Add script to sync users from Azure
- [2024-09-03] (dc27ce5f - BT#21930) Plugin: Azure: Add option to update existing users
- [2024-09-17] (41af8870 - BT#21977) Maintenance: Add MBZ file generation for Moodle 3/4 backups
- [2024-09-25] (de5623b2 - BT#22048) Internal: Add button to show last 10 registered users in user group and session pages
- [2024-10-18] (0f32994d - GH#5395) Learnpath: Add support for OnlyOffice viewer in learning paths for ppt(x), odp, xls(x), ods, csv, doc(x), odt and pdf formats
For developers and sysadmins
Although most features here will be used by teachers or Chamilo admins, they require sysadmin privileges to enable them on the server.
- [2023-11-03] (eb6e4d30 - GH#4954) Admin: Learnpath: Add configuration setting 'lp_ios_hide_open_in_new_window_button' to remove button in lp on iOS
- [2023-11-06] (d4872441 - BT#21146) Admin: Security: Add configuration setting 'security_password_rotate_days' to enable password rotation requirement
- [2024-01-07] (329e2085 - BT#21312) Admin: User: add option to show first connection date in the admin user list
- [2024-03-06] (80df5b7d - BT#21445) Script: Cron: add possibility to empty an extra field when anonymizing a user
- [2024-04-19] (4728002c - GH#5347) Admin: Exercise: Add configuration setting 'quiz_question_description_open_by_default' to open the description for the quiz by default during the test
- [2024-06-02] (2f816642 - BT#21755) Display: Add configuration setting 'email_logo' to allow for a different logo to be used only for e-mail communication
- [2024-06-26] (ef1e71f1 - BT#21709) Maintenance: CommonCartridge: Add configuration setting 'commoncartridge_path_token' to allow for the previously recommended special path token when exporting to Common Cartridge packages
- [2024-10-04] (0c18776f - BT#21982) Session: Learnpath: Document: add 3 options to limit edition and modification of content in session context session_hide_lp_copy session_hide_lp_creation session_hide_document_upload
- [2024-10-13] (5e9f2f0b - GH#4242) Admin: Add configuration setting 'quiz_question_edit_open_advanced_params_by_default' to show questions advanced settings by default
- [2024-10-19] (c8748f86 - GH#5543) Admin: Add configuration setting 'session_visibility_after_end_date_options_configuration' to limit the visible session-visibility options
- [2024-10-19] (4fb383d0 - GH#5191) Admin: Add configuration setting 'hide_my_progress_tab' to hide the 'My Progress' tab
- [2024-10-21] (615a5068) Internal: Bump PHP version from 7.2 to 7.4 in composer.json
New Contributors
Full Changelog: https://github.com/chamilo/chamilo-lms/compare/v1.11.26...v1.11.28##
v2.0.0 Alpha 1
This is an ALPHA release, meaning it is not finished and is meant for testing and development only. It should NOT be used in production unless you have a full-time dedicated IT team behind it.
An alpha version, to us, means that (except for unforeseen issues) the database structure is fixed and the files structure is fixed (although some files could still be added/removed before the beta release).
Chamilo 2.0 will be a major release, a new branch for the Chamilo software. It is based on Chamilo 1.11.10 and includes tons of backend changes that will make developing Chamilo more "mainstream" and (hopefully) faster in the future, by adopting more widely-known libraries, with the notable inclusions of Symfony as a main controller and framework (except for some legacy tools not yet converted), VueJS as our main frontend framework and TailwindCSS as our CSS framework.
For the first time in almost 15 years (since its launch in 2010), Chamilo considerably changes appearance, with a new, foldable, left menu (meant to improve space usage on mobile devices) and a streamlined (and open source) set of icons, and a design that will allow more flexibility and speed across devices.
Check the installation guide here: https://2.chamilo.org/documentation/installation_guide.html
Major changes in this alpha release:
Added
- Web services: Added API Platform endpoint "/api". See wiki.
- Messages: Messaging can now be made to several people at once from the messages interface (and replies can be made to the same users).
- Messages: Added tag-based filtering your inbox/outbox.
- Admin: Extra fields now have a description field, which allows you to show what you expect from users filling those.
- CMS: Added CMS-type management of additional pages, including contact forms. A default install will add empty Home, FAQ, Demo and Contact pages)(16429423 - BT#20918).
- Course homepage: Added possibility to re-order tools on course homepage.
- Install: Added installation logs for better debug capabilities on install/migrations. Migrations can now be executed step by step if needed (f986f77d)
- Admin: Added the roots of a role-based permissions system. Not functional yet but should be done by stable. Load through /permissions (not the definitive path) to get a sneak peak.
- Calendar: Added collective events management in calendar (invite other users as participants to the event) [2021-07-14] (026d1163 - BT#18894)
- Admin: Added pre-deletion of users as safeguard against user mistakes (7e917caf - GH#5097).
- Admin: Privacy: Add auto-remove option to delete extra fields when anonymizing users (ff4ef19f - GH#5211).
- Messages: Added search feature in message tool (2cf10c51 - BT#21705)
- Announcement: Add event reminders to event created from announcement (b5e86d12 - BT#21582).
- Admin: Added "News from Chamilo" and "Support" blocks (can be disabled) in the admin section. This will allow us to communicate with admins about updates, security updates and global events, between others, in a non-intrusive way.
Changed
- Display: Completely changed the design (left menu, reduced top header) and icon set (harder to change but vectorial, color-editable and using one single open library: Material Design Icons).
- Display: "My courses" and "My sessions" are now split into 2 different pages. If you only use one, only one appears, highly reducing confusion and increasing speed for portals with many courses/sessions.
- Admin: All settings previously found in app/config/configuration.php have been moved to the platform settings interface or (for only a few ones) to .env in your Chamilo's root folder. There are now 720+ settings available to you through the admin interface. Not all settings are implemented yet. Most optional database changes related to those settings have been added to the database by default.
- Install: Installation in sub-folders is not possible anymore. Using virtual hosts has become pain-free and cost-free compared to how it was 15 years ago. You will have to use vhosts or another LMS.
- Install: When installing, you now need to point your DocumentRoot to the public/ directory, otherwise Chamilo will not work. However, .htaccess file support is now optional.
- WYSIWYG: We have moved to TinyMCE (from CKEditor) due to CKEditor removing the possibility to edit HTML source (which we consider necessary) (53207cf9.
- Language: Translations now use Gettext. New translation platform at translation.chamilo.org.
- Internal: cidReq/sessionId/gidReq have been replaced by more sensible cid/sid/gid in URLs.
- Internal: Documents are now referenced by id instead of path, which provides for more reliability.
- Sessions: Sessions can now have multiple general coaches (including the possibility to have none).
- Internal: Files management is now done through a wrapper and in a single writeable directory "var/" (will enable usage with cloud storage services in the future)
- Database: All "name" fields have been renamed "title" for consistency across the system.
- Install: Updated minimum PHP version required to PHP 8.2
- Calendar: Merged all calendar tools (global, course and personal events) for mainstream management.
- Messages: Message attachment are no longer replicated the number of times they are received (for example through an announcement). This saves considerable space on large portals.
- Admin: Remove courses/sessions icons from users list (very seldom used). Cut e-mail address shorter and add icon for full e-mail info on hover.
- Database: As much as possible, tables containing records of objects that had been previously deleted in Chamilo 1.* are migrated without such records. This means less "ghost" content, but also that the content deleted that way in Chamilo 1.* now has become completely unrecoverable.
- Internal: Resources (documents, tests, forums, etc) are now global and fully shareable between course contexts, which will allow us (in future versions) to have a central repository of resources to search and share reusable items.
- Quiz: Add new generated audio file link in exercise notifications (dcc44158 - BT#21575).
- Plugins: xAPI: xAPI plugin and LRS tables integrated into core entities (37aede9d - GH#2001).
- Global: Added 'duration' field to many item types (course, learning paths, tests, attendances, assignments, ...). This will enable better reporting when activities must be based on "estimated time of completion" rather than tracked time.
- Admin: The Multi-URL feature is now enabled by default on the admin page.
Fixed
- Forum: Included all coaches in session notifications (f1c16adf - BT#21550).
- Survey: Allowed tutors to access doodle past end date (e457b0e2 - BT#21622)
Known issues
- Customizations of in-course tools (titles, icons, etc) at the course level are lost in migration.
- Multi-URL does not work (fully) yet in this alpha release.
- Wiki: The wiki tool is not available yet. It will be included again in future versions, but there were too many changes required to include it in v2.0.
- Course chat: The course chat tool is not available yet. It will be included again in future versions, but there were too many changes required to include it in v2.0.
- Plugins: Many plugins that seemed either unused or were not maintained by their maintainers were removed. They could be included again later on, and their tables have not been removed in the database if they had been installed in your 1.11.*, but they are not available in the list of plugins.
- Plugins: Installing plugins is disabled in this alpha release. This should be fixed before beta 1.
- Display: The Bootstrap (CSS) library has been removed. Some code might still use it. Should be fixed before stable.
- Blogs: The blogs tool is not available. It might be included again in future versions, but there were too many changes required to include it in v2.0.
- Dropbox: The dropbox tool is not available. It might be included again in future versions, but there were too many changes required to include it in v2.0.
- Display: Upon migration, the stylesheets are reset to the default Chamilo stylesheet. You will have to redesign your stylesheets using the stylesheets tool in the admin UI.
- Courses list: Removed the ability to sort your own courses in a s...
v1.11.26
v1.11.24
v1.11.22
v1.11.20
Chamilo 1.11.20 is a minor bug fix release on top of 1.11.18.
It contains security fixes with one critical issue, so we highly recommend all our users to upgrade as soon as possible.
New features include:
- the possibility to generate lessons (learning paths) with the help of generative AI (ChatGPT 3 for now) in many languages in a wide range of topics
- a new report to find duplicated users
- new REST web services to manage sessions
- subscription to course events
- careers hierarchy
Chamilo 1.11.18
Chamilo 1.11.18 is a minor security and bug fix release on top of 1.11.16.
Some vulnerabilities have been reported to us (see our security page) and swiflty and safely fixed. We reiterate our thanks to all white hat hackers for working with us on making Chamilo the safest LMS ever. We actively encourage all Chamilo administrators to update their system to this version as soon as possible.
Notable new features
- Assisted generation of exam questions by artificial intelligence systems (ChatGPT in this first iteration)
- Comments, absence types, durations and signatures in attendances
- Portfolio tool to be completed by students as evidence of their development
- Wiki page categories
- Much improved import from Moodle .mbz course exports
- Increased support for xAPI
- Support of LTI Provider mode
- Stripe gateway added to sales plugin
- Webinars allowed through Zoom plugin, schedule meetings in advance, attendance signatures and preparation for authentication method change in June
- New question types
- Option to "ping" connexion when taking a test to avoid disconnecting in the middle
... and about 150 more features (see https://11.chamilo.org/documentation/changelog.html for a complete list).
Some of these features might require activation through specific files and databases operations. Make sure you check main/install/configuration.dist.php for options or ask on https://forum.chamilo.org/ for details on how to enable them.
In the assets attached to this release, the default ones have been prepared to work with PHP 7.2 and above, while the ones marked -php74
have been specifically prepared to work on PHP no lower than 7.4.
Although we do not officially support PHP 8.0, 8.1 or 8.2 with the 1.11 branch of Chamilo, we tested it relatively thoroughly with the -php74
package and it worked well, to the minor exception of the edition of learning paths which is visually a bit broken.
We recommend using PHP 7.4 while we are running to deliver Chamilo 2.0 with full support for PHP 8.2 or superior.
Chamilo 1.11.16
Chamilo 1.11.16 is a minor security and bug fix release on top of 1.11.14.
Many vulnerabilities (more than in any previous version) have been reported to us (see our security page) and swiflty and safely fixed. We reiterate our thanks to all white hat hackers for working with us on making this version the safest Chamilo version ever. We actively encourage all Chamilo administrators to update their system to this version as soon as possible.
Notable new features
- Plugin: OnlyOffice: Add OnlyOffice plugin v1.1.1 (9da9fba3a2) from the OnlyOffice team
- Exercise: Add "file upload" question type
- Plugin: BuyCourses: Add discount coupons feature
- Announcement: Add scheduled announcements for base courses
- Admin: Add CSV user import history
- Plugin: LTIProvider: Add support for LTI as provider (experimental)
- Learnpath: Offline courses: Generate index page when exporting backup
- Exercise: Add group comparison report page
- Tracking: Add student follow page in student tracking
- Plugin: TopLinks: New plugin to add links to all courses
- Exercise: Add "questions saved" counter next to the "Finish test" button
- Gradebook: Score UI display changes. Add option to export only numbers
- Exercises: add 'HideCorrectAnsweredQuestions' option to hide the correct answers from the feedback report
- Learnpath: Allow the creation of a learning path in a session inside a base course category. The configuration setting "allow_session_lp_category" is required.
- xAPI: Manage portfolio events
- Survey: Add multiply survey question options by_class/by_user
- Plugin: RemedialCourse: Add plugin to allow for complex sequencing of tests and courses
- Course copy: Add page to move users from a base course to a session
- Learning path: Add progress check to avoid saving if progress is lower than before, only when 'score as progress' option is enabled
Chamilo 1.11.14
Chamilo 1.11.14 is a minor security- and bug-fix release on top of 1.11.12.
It includes a fix for a critical security issue, so upgrading is highly recommended.
It adds the following features:
- New information section about usage of a question in other contexts
- New Positioning plugin for pre-course and post-course tests
- New radar type report in exercises
- Rebranded portfolio fields in social profile
- Possibility to delete a question completely (not orphaned)
- New Exercise Signature plugin to get some official confirmation that an exam was taken by the user
- Possibility to use user data to customize the course introduction
- New exercises reports and improved reports
- Possibility to replace a document by another with the same name
- PDF export of surveys