Developers are encouraged to read Migration Guide to 2.4 for Developers and Symphony 2.4 User Interface Updates.

Please note that the Symphony master branch no longer contains any extensions. If you want to continue updating Symphony with all the default extensions, use the bundle branch.

New Features

  • Support for PHP5.4 and PHP5.5. Support for PHP5.2 has been dropped.
  • #1993 Addition of Publish Filtering to the core
  • #1874 XSRF support
  • #1046 Extensions can now provide Cache drivers through Providers
  • All new Datasource Editor offering Forbidden parameters (do not execute when this parameter is set)
  • New routing system for the Backend UI, as well as a Grunt build process has improved backend performance
  • Database connectivity has been updated to use MySQLi (and PDO is on the way)
  • Set your own admin path as /symphony is now optional
  • Removal of XSL Editors and Dynamic XML Datasources (existing Dynamic XML DS will still function)

Bug Fixes

  • #2027 Prevent extension resources from being deleted
  • #2012 Strip whitespace from the validateURL function.
  • #1994 Resolve extensions for the source column of Datasources/Events.
  • #1978 Make core fields' has-data check more consistent
  • #1956 Extensions: improved statuses, errors and author link
  • #1948 Allow Symphony to capture fatal errors, display them and log them
  • #1942 Make installation file permissions paragraph more explicit
  • #1939 Load XML more securely in XsltProcess
  • #1936 Update the token for the more secure password recovery
  • #1910 Improved remote file handling with attachments
  • #1901 Added better support for internationalized domain names
  • #1823 Remove '?' from query string
  • #1687 Removing full stop from transliterations
  • #1680 Add dd/mm/YYYY to default date formats now that PHP5.2 is not in the picture
  • #1572 Refactor of AJAXPage classes
  • #1416 Check validation regex when Section Editor is saved/created
  • Add Symphony version number to developer areas of the backend, not only to the extension overview
  • Fix the AppendEventFilterDocumentation delegate context, it was far too specific to be of any use
  • Error handler should unwrap CDATA to ensure message is displayed
  • Resolve full page titles for Datasource/Events Index

Minor Updates

  • #1922 Add file size in bytes to Upload Field's output
  • #1916 Ability to set handles for Sections
  • #1913 Add the ability to add DS and Events to pages from the DSE and EE
  • #1910 Abstract the TMP directory logic to use system temp directories
  • #1909 Improved permissions for changing Author details
  • #1873 Create Event Documentation AJAX page
  • #1803 Add full name handles to author field output
  • #1801 Simplified Author password reset process
  • #1700 Addition of ID's to event error messages for more flexible XSLT
  • #1628 Display source code of read-only resources
  • #1626 Integrate UTF-8 table conversion script into the updater
  • #1615 Change the FrontendOutputPreGenerate delegate to use XMLElement for the XML parameter instead of a string.
  • #1190 Add site name to login screen
  • #901 Updates to align with ATAG and WCAG 2.0 guidelines
  • Fix the XMLElement class to be more like DOMDocument by treating all nodes as children, not values & children. Allows for <p>hi <em>Brendan</em>.</p> which wasn't previously possible (without hack). Add some helper functions to XMLElement that help convert XML strings and DOMDocument objects to XMLElement
  • Add X-Frame-Options and Access-Control-Allow-Origin headers to the Frontend
  • Disallow "ID" as field label and element_name
  • Support Bcc via the EmailGateway (Cc is already supported)
  • Disable multiviews in .htaccess

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details