3 Online. Join themUsers

Search

New Features

  1. Sections can now be added to any navigation group using the input field in the Blueprints > Section > Create/Edit form. Consult the README for update instructions.
  2. ?debug area is now a separate component to Symphony called, DevKit. This allows extensions to enhance this area with new functionality.
  3. We are supporting IE8 with 2.0.3 and onwards.
  4. The Javascript library has been switched over to JQuery 1.3.2.
  5. Pages XSLT editor has been split out into its own area. The page overview now has two columns, one that links to the page configuration and another that links to the XSLT.

Improvements

  • Added display of total queries for each data source and event in ‘Page Profiler’ DevKit.
  • Added ‘system:date’ to the allowed included elements for data sources. This however is not represented in the DS editor.
  • Added pageData() getter method. Useful for grabbing the current working page. Use like so ‘Frontend::Page()->pageData()’.
  • Added support for extensions to add items to existing nav groups via the ‘name of the group’ instead of requiring the specific numeric Location Index value.
  • Added support for upload field to handle empty mimetypes.
  • Added support for comma-separated filter field names.
  • Added delegate ‘FrontendProcessEvents’. Maniulate the events array and event element wrapper.
  • Added delegate ‘FrontendParamsResolve’. Executes before data source output parameters have been created and once the entire param pool has been resolved.
  • Added delegate ‘FieldPostCreate’.
  • Added delegate ‘FieldPostEdit’.
  • Added success message to Preferences page.
  • Added Debug and Profile DevKits as submodules.
  • Added Symphony::Database() static accessor method.
  • Added FrontendInitialised delegate.
  • Added queue for system messages.
  • Added ‘Navigation Group’ column to the Sections index table.
  • Added a static class variable called ‘_page’ and a static getter method. Page object can be grabbed with ‘Frontend::Page()’.
  • Added ‘500 Server Error’ header to built in ‘database’, ‘XSLT’ and ‘generic’ type error pages.
  • Added ‘Deletion of all entries’ within a Section from the Blueprints > Sections page.
  • Added field-specific validation error in event XML. Particularly useful for file uploads where ‘invalid’ isn’t descriptive enough.
  • Removed dependency on 3rd party XMLParser class. Replaced with SimpleXMLElement.
  • Removed depreciated Bitter HTML library.
  • Removed class.xmldoc.php include from Frontend class.
  • Improved multi-select (arrayed) fields in forms return their post-values if Event fails.
  • Improved uploading which now works with ‘Allow Multiple’ event flag.
  • Improved (simplified) DOMContentLoaded handling.
  • Improved (cleaned up) Info page for custom Data Sources. Uses fieldset grouping for consistency.
  • Improved suggestion list behaviour.
  • Improved use of Symphony::Database() intead of _Parent->Database. Fixes errors when some Extensions use EntryManager or SectionManager and _Parent goes out of scope.
  • Improved data source editor “edit” view. Checks whether it can parse a DS and prevents accidental browsing to previously-visited edit pages if a DS is later changed.
  • Improved the emptyXMLSet() function, making it easier to call.
  • Improved the code responsible for checking that a session has been started.
  • Implemented param-limit that details the number of bytes the server and/or symphony will allow.
  • Enforce check for PHP 5.2.0 on install.
  • Made DevKits only available when logged in, removed old debug and profile page.
  • Keep order of languages when they have the same priority.
  • Update database schema for both clean install and install with default workspace.
  • Prevent hiding of password fields if there is some error there.

Bugs

  • #6: “Unknown Entry” after saving when sort column value is empty
  • #11: data source with a Group By field value selected = ERROR: 256
  • #15: Publish: default values not set if ?prepopulate is used
  • #24: Events folder in workspace folder.
  • #27: Difference in parameter notation of current-path and parent-path
  • #30: Event fails when optional text field is the first in the section.
  • #128: Maintenance mode setting in config file without effect
  • #178: Make default implementation of getToggleStates to return array().
  • #180: buildLocationSelect third parameter did not have default value set.
  • #185: Cannot have an optional date field
  • #191: Select Box drop down does not persist value
  • #194: ‘Create another?’ event link incorrect
  • #196: Data Source Editor: JS bug with ‘filter by …’
  • #203: post_values are not appended to result if PreSaveFilter fails
  • #219: Bug in RSS generated from default template
  • #267: Long titles/handles break filters
  • Fixed issue where sorting table columns, null data fields would dissapear.
  • Fixed issue with validation of page types.
  • Fixed issue with Date field not pre-populating correctly.
  • Fixed issue with XMLElement forgetting to close opening tag when tag was empty but require an end tag.
  • Fixed conflict resolution for HTMLPage::addElementToHead.
  • Fixed rendering total time of events and datasources on ‘Full Page Render Statistics’ profile page.
  • Fixed user password DOM manipulation.
  • Fixed the re-introduction of the session bug that caused session rows to never expire.
  • Fixed problems with uploading when no MIME type is sent from browser. E.G. Flash (.flv) in Safari.
  • Fixed problem with checkboxes losing their state, on the front end.
  • Fixed spelling, Maniulate => Manipulate.
  • Fixed logic bug in garbage collection that caused expired sessions to remain in the database.
  • Fixed tag handling in JavaScript (it was trying to use li.title instead of li.className).
  • Fixed references to Symphony class object. Should be more stable when Fields try to do complex interactions.
  • Fixed select box option generation bugs.
  • Fixed cursor styles for subsection links.
  • Fixed Field::processRawFieldData() function signature so it does not break compatibility.
  • Fixed session expiration problem.
  • Fixed issue with select field and values containing ampersands.
  • Fixed issue where forgotpass token wasn’t being cleaned up correctly.
  • Fixed issue where renaming a parent page would not update the path of any children.
  • Fixed case where mysql->query() returning empty array, fetch() was returning NULL.
  • Fixed General::array_find_available_index() so it can accept 0 for a seed value. Seed is tested with is_null() instead of a simple boolean match.
  • Fixed issue where entries created via the frontend didn’t have their creation date set correctly.

Minor fixes and improvements

  • Changed default navigation group for Sections to ‘Content’ instead of ‘Publish’.
  • Added alternation to utility rows for consistency with table rows.
  • Added autofocus to login pages.
  • Removed js from debug page.
  • Removed CSS3 dependency.
  • Removed legacy styles.
  • Removed page configure drawer button/animation.
  • Removed JS includes from login page.
  • Stopped messing with cursor styles.
  • Set monospace fonts to browser.default.
  • Increased XSLT textarea rows.
  • Misc IE8 CSS compatibility improvements.
  • Addressed form element by name instead of index since Gecko considers fieldsets to be form elements.
  • Disabled tab access to hidden fields in page config draw.
  • Circumvented jQuery+IE+replaceWith bug.
  • Desaturated syntax colours.
  • Restored logo.
  • Minor optimisations.
  • additional fix for zebra tables with none selected.
  • use correct class name ‘odd’ for tables.
  • Ported admin JS to jQuery API.
  • Various CSS updates.
  • Eliminated redundancy.
  • Small update to error style.
  • Fixed IE bug.
  • Fixed incorrect reordering delta reporting.
  • Fixed navigation alignment IE bug.
  • Fixed login button style breakage.
  • Fixed IE selection bug.
  • Fixed minor subsection bugs.
  • Fixed HTML grouping bug.
  • Fixed <optgroup> filtering bug.
  • Fixed IE bug with subsection <option>s.
  • Fixed Layout bugs for IE.
  • Fixed upload field DOM insertion.
  • Fixed row alternation and overrides.

Default workspace has been updated with bug fixes and style changes:

  • Includes the two DevKits by default.
  • Improved to allow for multiple entries on the homepage.
  • Fixes an XPath referencing issue when adding images to multiple entries.
  • Various Style fixes and updates.

What a glorious day!

Allen and team, this is absolutely classy! Bravo!

Oh, so not many bug fixes or improvements from 2.0.2 then ;-) Well done all!

FYI when you go to update.php the message says

This script will update your existing Symphony 2.0.2 installation to version 2.0.2

minor mistake!

I’ve successfully updated my installation, no problems so far.

I would love to see the database-updates (file upload fields and navigation groups) done by update.php as well though. :-)

Added ‘500 Server Error’ header to built in ‘database’, ‘XSLT’ and ‘generic’ type error pages.

Finally no more of this!

WTG guys, congrats!

That’s an impressive list of features, improvements and fixes. The open source release to Github is working out very well. Thanks to everyone who helped out with the effort!

The Javascript library has been switched over to JQuery 1.3.2.

I like this particularly.

Very nice. Allen, thanks for laying out the changes. Thanks to all who made 2.03 a reality. Y’all are awesome!

Well done, folks :)

I embrace 2.0.3. Thanks to the team!

?debug area is now a separate component to Symphony called, DevKit. This allows extensions to enhance this area with new functionality.

Great! for separation of core and contributed extensions.

It’s probably well time I upgraded my site to use Symphony 2. Sounds like a lot of the initial niggles are ironed out now :)

Thanks for the great update. I have two questions though:

  1. Why have the database changes not been integrated into updater.php. This is a source of mistakes or misunderstandings and in my understanding an updater is made for this kind of changes.
  2. If there is a new Symphony release there are a lot of last minute changes and updates on github. Is there a reason why there isn’t an open community test period? Something like: “We think this is the final upcoming release. If there are no bug reports until {$your-date-here} it will be pushed to master.” This way missed bugs could be fixed before and not after a release.

Re: #2, this is nice idea Nils and something that will definitely be considered for future releases.

Login to Comment

Symphony • Open Source XSLT CMS

Server Requirements
  • PHP 5.2 or above
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 4.1 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts