Concrete 5 CMS v8.4.0 Release Notes

  • πŸ”‹ Feature Updates

    • βž• Added ability to specify custom thumbnail types per file sets (e.g. if a file is in the Header file set, the Header thumbnail type will be generated for it, otherwise it will not.) (thanks mlocati)
    • Calendar block has new agenda views for year list, month list, week and day (thanks MrKarldilkington)
    • βž• Added a System Email Addresses Dashboard page that lets you set the default email addresses – previously this had to be done in config code (thanks MrKarlDilkington)
    • βž• Added bulk user commands: activate, deactivate, delete, remove from group and add to gorup (thanks JeRoNZ)!
    • πŸ“¦ If a site is connected to the concrete5.org marketplace, any packages installed on the site will have their language files automatically downloaded from translate.concrete5.org (thanks mlocati)
    • βž• Adds search header to express entity selector for selecting express entities against pages, users, files, etc… (thanks sjorssnoeren)
    • βž• Added the ability to specify an end date for page publishing.
    • βž• Added the ability to delete individual Log entries (thanks marvinde, mlocati)
    • βž• Added new β€œStart Time” option to YouTube block; YouTube block will also respect β€œStart Time” if specified in the YouTube URL (thanks jlucki)
    • βž• Added a new Reset Edit Mode Dashboard page that allows all currently checked-out pages to be checked in and edit mode to be restored on them.
    • ⚑️ Updated CKEditor to 4.9.1 (thanks MrKarlDilkington)
    • βž• Added a new image slider navigation option in the image slider block: β€œNone” (thanks biplobice)
    • βž• Added the ability to edit topic tree names (thanks gutigrewal)
    • βž• Added the ability to unapprove an approved version through the versions menu.

    Behavioral Improvements

    • We now only set sessions when you attempt to login or use custom session code, in order to reduce the number of sites that set cookies for GDPR.
    • βž• Added a data collection notice to installation, added a banner to Dashboard for GDPR compliance.
    • Massive improvements to image handling in the core, (thanks mlocati!). Full details found here: https://github.com/concrete5/concrete5/pull/6415
    • ItemList: always included ordered-by columns in select statement (thanks mlocati)
    • Folded registration email notification preferences into the System Email Addresses Dashboard page (thanks biplobice)
    • 🌐 Much better localization and translation support in the newly introduced calendar components (thanks mlocati)
    • ⚑️ We will now inhibit the execution of automatic updates/installations if one is currently in progress (thanks mlocati).
    • πŸ‘Œ Improved support when using MySQL 8 (thanks mlocati)
    • πŸ‘Œ Improvements to the interactive installation process defaults (thanks mlocati)
    • πŸ›  Fixed errors when the update process may require long time, because of many migrations need to be executed or because a migration requires long time to be executed, and the PHP execution may reach its maximum time limit (thanks mlocati)
    • πŸ‘Œ Improvements to the coding of the installation process (thanks mlocati)
    • ⚑️ Automatically set maintenance mode during core updates (thanks mlocati)
    • Apply nowrap white space on private message box status column (https://github.com/concrete5/concrete5/pull/6350) (thanks biplobice)
    • Send 500 code instead of 200 on creating an error response (https://github.com/concrete5/concrete5/pull/6350) (thanks hissy)
    • Optimizations to UserList classes and group search (thanks deek87)
    • πŸ‘Œ Improvements and optimizations to the auto rotate image processor (thanks mlocati)
    • We now return. 404 response when requesting an invalid tool (thanks mlocati)
    • πŸ‘Œ Improvements to the update process when the calendar add-on was migrated to the new built-in calendar.
    • πŸ›  Fixed: Dashboard Sitemap Tree Deleting items should refresh Trash (thanks marvinde)
    • πŸ›  Fixed: In sitemap, when you delete a page, plus sign doesn't appear next to the trash can 'til after page reload (thanks marvinde)
    • ⬆️ Do not automatically upgrade the core in maintenance mode (thanks mlocati)
    • πŸ›  Fixed: When deleting a layout, the message "Are you sure you wish to delete this block?" is shown (https://github.com/concrete5/concrete5/issues/6289)
    • πŸ‘Œ Improvements to SNS authentication, Facebook authentication specifically (thanks biplobice, deek87). More details here: https://github.com/concrete5/concrete5/pull/6018
    • πŸ‘ Better database encoding when databases don’t use UTF-8 by default (thanks upline-pro)
    • πŸ‘‰ Use Selectize for Data Source element select multiple inputs (thanks MrKarlDilkington)
    • βœ‚ Removed old unused Newsflow code (thanks mlocati)
    • 0️⃣ Highlight Default Page Template in Defaults and Output for Page Type (thanks MrKarlDilkington)
    • πŸ›  Fixed exception filling logs on invalid file (https://github.com/concrete5/concrete5/issues/6449#issuecomment-366931290)
    • πŸ›  Fixed inability to use theme editor CSS classes in CKEditor when using in the Dashboard and non-pages (Thanks MrKarlDilkington)
    • Consider text/plain images as SVG images (thanks mlocati)
    • βž• Add block type name to delete block modal message (thanks MrKarlDilkington)
    • Actively discouraging certain CLI commands when run as root (thanks mlocati)
    • πŸ‘‰ Show different message when public profile option isn't changed (thanks biplobice)
    • βž• Added cache to core area layout block.
    • πŸ‘Œ Improve performance of file manager in certain editor configurations (thanks hissy)
    • πŸ‘ Allow layout presets to optionally have no container element defined (thanks MrKarlDilkington)
    • πŸ‘ Better ADA compliance: adding for=”” attributes to label tags in login forms, forgot password forms, all core attributes and express form attributes.
    • βž• Add aria attributes and title to Social Links block links and icons (thanks MrKarlDilkington)
    • The dropdown area on the Add Content menu is now clickable (thanks marvinde)
    • βœ‚ Removed useless 'More Details' link from package upgrade page (thanks a3020)
    • Help prevent block form and file manager modals from blending in with background page content (thanks MrKarlDilkington)
    • βž• Added a link to the concrete5.org privacy policy from the login page where backgrounds are pulled from concrete5.org.
    • πŸ›  Fixed some errors searching express objects in the Dashboard in some cases (https://github.com/concrete5/concrete5/pull/6601) (thanks hissy)
    • βž• Add alt attribute to generic thumbnail icons to increase accessibility in Document Library block (thanks MrKarlDilkington)
    • πŸ›  Fix handling of package dependency errors (Thanks mlocati)
    • Suggestion: Stays at draft page after "Save and Exit" on Composer (thanks marvinde)

    πŸ› Bug Fixes

    • πŸ›  Fixed multiple bugs that arose because actually removing a multilingual section via the Dashboard didn’t delete the pages in the site tree.
    • πŸ›  Fixed error where full page caching was still connecting to the database.
    • πŸ›  Fix block dragging in edit mode – it wasn’t scrolling the page in certain browsers (https://github.com/concrete5/concrete5/issues/6321) (}thanks mlocati)
    • πŸ›  Fixed: no longer using client side code for rating messages (https://github.com/concrete5/concrete5/pull/6337) (thanks mlocati)
    • πŸ›  Fixed bug in survey block where page the survey was on was missing (thanks marvinde)
    • πŸ›  Fix issue where updating page defaults on a multilingual site wouldn't push blocks out to all pages in all locales
    • πŸ›  Fixed: Adding file selector to form fails on element with special characters (thanks jneijt)
    • πŸ›  Fixed bug where pages duplicated would lose custom block cache settings on the resulting pages.
    • πŸ›  Fixes issue when a file with multiple versions is the cursor (thanks deek87)
    • πŸ›  Fixed: JS Cache combined with "use strict" breaks core javascript (thanks mlocati)
    • πŸ›  Fixed: z-index issue when selecting Calendar Events categories (thanks MrKarlDilkington)
    • πŸ›  Fixed bug where pages duplicated would lose custom grid container settings on the resulting pages.
    • βž• Add missing folder icon in Document Library block (thanks MrKarlDilkington)
    • Fixed Error in core_area_layout when activating block cache in 8.4RC2 (thanks mehl)
    • πŸ›  Fix error with folder item list returning too many items when filtering by multiple file sets
    • πŸ›  Fixed bug where replying to messages when logged in would cause replies to show up multiple times before a page refresh (thanks marvinde)
    • πŸ›  Fixed bug where applying custom styles to a global area’s blocks would not refresh those styles without a full browser reload.
    • πŸ›  Fixed: we now sanitize the alt text in avatars (https://github.com/concrete5/concrete5/pull/6339) (thanks Remo)
    • Sanitize output on folder names (https://github.com/concrete5/concrete5/pull/6341) (thanks Remo)
    • πŸ›  Fixed error running command line utilities when a concrete5 installation has been updated through the Dashboard.
    • πŸ›  Fix missing closing h3 tag in Calendar Event block (thanks hissy)
    • πŸ›  Fixed missing CSRF token when deleting a conversation message (https://hackerone.com/reports/87729)
    • ⚠ Warnings when attempting to install concrete5 on a database that will make the table names lowercase (thanks mlocati)
    • πŸ›  Fixed: Unmapping a locale page, removes the mapping for all locales (thanks Seanom)
    • πŸ›  Fixed: Wrong language used in a single page controller (thanks mlocati)
    • πŸ›  Fix H1 309466 (thanks mlocati)
    • πŸ‘ Better permissions checking on Express entry list results in custom Express objects and Express forms.
    • πŸ›  Fixed bug with queues and queueable jobs where one job running might start executing the jobs of another process (thanks ahukkanen)
    • πŸ›  Fixed bug where you couldn’t unset a β€œMore Details” calendar event page link in the calendar event edit popup.
    • πŸ›  Fixed: Google map - multiple API calls if Check API clicked multiple times (thanks MrKarlDilkington)
    • πŸ›  Fixed: Delete user attribute values on user delete (thanks marvinde)
    • βœ‚ Removed unnecessary paragraph tags in output of FAQ block (thanks djkazu)
    • πŸ›  Fix: https://www.concrete5.org/community/forums/customizing\_c5/8.3.1-symphony-error
    • πŸ›  Fixing some cases where exporting form results to CSV could result in a 404 error under advanced and custom permission use cases.
    • πŸ›  Fixed: Creating a page alias in another site tree does not modify the siteTreeID
    • Sanitize the link of external pages in the sitemap (https://github.com/concrete5/concrete5/pull/6346/) (thanks mlocati)
    • Fixed: PageList topic filtering MySQL error (mode ONLY_FULL_GROUP_BY) (thanks mlocati)
    • πŸ›  Fixed minor XSS vulnerability in unused $step GET parameter (thanks jordanlev)
    • πŸ›  Fixed: "Schedule Publishing" dialogs are not removed when adding page (thanks marvinde)
    • πŸ›  Fix locale and language of MultilingualPageRelations when site locale changes (thanks mlocati)
    • https://github.com/concrete5/concrete5/issues/6490 (thanks marvinde)
    • πŸ›  Fixed Minor Bug: "Move to Folder" in Filemanager and not selecting a target causes exception
    • πŸ›  Fixed: Deleting a File Leaves it Selected in Form (thanks marvinde)
    • πŸ›  Fixed: Applying a theme to a site in the Dashboard only does it to a single multilingual tree
    • πŸ›  Fixed: Unable to add new options to select attribute in composer under PHP 7.2
    • πŸ›  Fixed Access Denied bug when editing blocks with validation errors under certain conditions (https://github.com/concrete5/concrete5/issues/6425) (thanks marvinde)
    • πŸ›  Fixed: The file manager's breadcrumb appears on the full sitemap page (thanks marvinde)
    • πŸ›  Fixed: Possibility to crash calendar event list if number of events is not specified
    • Sanitize the output of page short description in the pages panel (https://github.com/concrete5/concrete5/pull/6347) (thanks mlocati)
    • πŸ›  Fix: area layout using preset not deleted after deleting area layout (thanks mlocati)
    • πŸ›  Fix migration to version 8 when MultilingualPageRelations contains invalid data (thanks mlocati)
    • πŸ›  Fixed: Unable to decode session object after updating profile information and using database sessions on certain multilingual installations.
    • πŸ›  Fix: The file manager's breadcrumb appears on the full sitemap page (thanks marvinde)
    • πŸ›  Fixed: Running an advanced search on Express forms can produce error in PHP 7.2.
    • πŸ›  Fixed error when upgrading from 5.7 with custom address attribute countries (thanks mlocati)

    ⚑️ Developer Updates

    • βž• Add support for the "media" attribute for CSS resources (thanks marvinde)
    • Added on_locale_add, on_locale_delete and on_locale_change events (thanks dimger)
    • Add on_block_before_render event (thanks a3020)
    • 🚚 Old page statistics code has been removed (thanks a3020)
    • Add on_block_duplicate event (thanks a3020)
    • βœ‚ Removed inline JavaScript from Google Maps block view layer (thanks Remo)
    • ⚑️ Updated to jQuery 1.12.4 (thanks MrKarlDilkington)
    • πŸ‘€ You can now specify default block templates by a particular page type (thanks haeflimi) (see details here: https://github.com/concrete5/concrete5/pull/6456)
    • βž• Added a console command to rerun certain migrations (thanks mlocati)
    • βž• Add a configuration key to set the Composer autosave idle timeout (thanks mlocati)
    • ⚑️ Update responsive-slides asset from 1.54 to 1.55 (thanks apaccou)
    • βž• Add c5:is-installed CLI command (thanks mlocati)
    • ⚑️ Updated the fullcalendar JavaScript library to version 3.8 (thanks MrKarlDilkington)
    • ⚑️ Updated Punic Unicode library to 3.0.1 (thanks mlocati)
    • dispatch a additional event when File Sets are deleted (thanks haeflimi)
    • βž• Added phpdoc comments for better API documentation (thanks mlocati, AdamBassett)
    • ⚑️ Updated Imagine image procesing library to 0.7 (thanks mlocati)
    • ⚑️ Updated Symfony components to 3.4.7
    • βœ… JavaScript is now fully testable (thanks mlocati)
    • Let FileFolderManager filter by file extensions, improve FileManager service (thanks mlocati)