What's new in Ariadne 9.0
Jul 29, 2015
- Upgrade notes
- all loaders now use lib/bootstrap.php for global initialisation
- if you have custom loaders look at the bin/skeleton.php for how to adapt your loaders
- minimal php version is now 5.4
- installing php5-mcrypt is recommended
- after upgrading the code, you must run the upgrade script or some sites may have broken files/images
- we removed the "persistent connections by default" for the mysqlstore, this can be reenabled by adding 'p:' in front of the database server name in lib/configs/ariadne.phtml
- to reenable persistent connections for mysql add 'p:' infront of the database hostname
- Features
- new inline WYSIWYG editor by Vedor
- added closure support in pinp templates, added numerous php functions to the whitelist that use callbacks, though we support only closures as a callback method
- added ar/files api for interaction with the filestore
- reworked the caching layer, this makes it possible to clear all cache images interacting with a template or object this also installs another store in the current database data storage
- added ar\formats\markdown
- added ar\formats\less, supercedes ar\beta\lessc which is now deprecated
- the muze.js libraries now have support for dynamic loading of dependencies using muze.require()
- parse errors in templates are correctly shown when using xdebug
- Upgraded ace library for chrome >=38 support
- added parsing and minimal function support for cache-control request headers,
- added seperate client-side and server-side caching options in the cache dialog
- ar('pinp') allows you to check if a library is loaded and/or if a template exists.
- added scaffolds to quickly start new projects.
- added the muze CMS libraries in /system/lib/muze/
- added onbeforecall/oncall events
- added target object and path to all events by default, as $event->target and $event->path
- ARnls id now initialized in bootstrap.php, and is thus always an object
- Changes
- Introduced a new Ariadne logo
- files are no longer stored in duplicate: the _file entry in the filestore is removed, just the _$defaultnls_file is left.
- properties are now quoted by the store instead by the caller of save
- added php-unit and a first set of unit-tests
- session cookies now use json encoding. To prevent upgrade problems we also renamed the session cookie
- added optional cookie encryption for, enabled by default for new installs running 'php www/install/conf/session.conf' will give you a config snippet with a random generated encryption key
- the MySQL store now uses mysqli internally.
- added a 'fixed' scenario and display for newspaper articles
- added array_column and key_exists to allowed function calls in pinp
- the default typetree.ini template now keeps any typetree information already set
- tidy is renamed to ARtidy
- removed the persistent connections by default for the mysqlstore
- Bugfixes
- fixed support for sub-method calling of xmlrpc methods ( method name is x.y or x.y.z )
- synced function definitions between loaders
- fixed typo in error reporting when running an ax import from the commandline
- made mfu.save.html overrideable by pinp templates
- fixed ar\html\menu menubar links to point to the correct parent
- fixed formSecret handling
- fixed saving user/groups where the group isn't a pgroup but implements it
- set the responseheader in ar/http/Client even when the result of the request is empty
- fixed loadtext(): now correctly supports 'current:template.nls' where multiple libraries provide the same template.nls
- fixed a parse error in mod_pinp
- fixed a usecase where psite would lose it's site url
- typo fixes in im/export.wddx
- fixed a timing issue in the backend with the fade-in / fade-out code
- synced/corrected function definitions between loaders
- Fixed buttons in dialog.browse.php
- Automatic formsecrets in ar/html/form have been improved
- improved handling of relative paths in dialog.browse.php
- corrected check for implements user/group it now also support subtypes
- added saving of an emailadres in mod_rcas
- You don't need add rights to display the userinterface of the add dialog anymore
- Private templates in libraries are now actually private, no longer accessiable through the browser.
- fixed saving of properties in the workspace store
- fixed incorrect cleaning of HTML in the YUI WYSIWYG editor which turned into
- fixed error display for SVN updates, errors from previous files were displayed again for each next file
- fixed event listeners which filter on specific subtypes
- break template lookup's on psection subtypes
- also reset pinpcache when calling resetconfig
New in Ariadne 8.2 (Dec 19, 2013)
- This version fixes two templates that used PHP short open tags - which aren't supported everywhere - and fixes the copy and rename dialogs.
New in Ariadne 8.1 (Nov 23, 2013)
- This version adds native support for Edge Side Includes, Post Processing using output buffering (enabled by default), and some minor user interface improvements.
- It also fixes a number of minor bugs.
New in Ariadne 2.7.9 (Feb 2, 2013)
- This version is mostly about fixing a few bugs, but also adds a new muze dialog loader to create crossbrowser dialogs as a replacement of showmodeldialog.
- It also adds support for cross-protocol domains to psite objects.
New in Ariadne 2.7.8 (Dec 28, 2012)
- This version adds many, fixes, and new features within the ar() structure.
- Site rewrites allow you to automatically rewrite URLs and references within sites to make it easier to work with development versus live environments.
- Remote authentication allows the use of frameworks like OAuth or even authentication against other CMSes.
New in Ariadne 2.7.7 (Jan 23, 2012)
- This version fixes a number of small bugs and adds one major new feature: Automatic Cross Site Scripting (XSS) Detection.
- This change may impact your own code, so read the explanation on the Web site carefully.
- With this change, all your old code is immune to XSS attacks.
New in Ariadne 2.7.6 (Sep 8, 2011)
- New features:
- Added new dynamic form functionality. See www/js/form.js.
- Added the option to post the Ariadne session check key when cookies are not available (in flash applications).
- Experimental template editor with syntax highlighting: ace. Configurable through preferences dialog.
- New demo project (optional install).
- Try/catch now supported in pinp templates.
- Added support for debugging with firePHP.
- Added mod_recaptcha module.
- Changes to existing features:
- Removed most of the ereg calls, replaced with preg.
- Added NOFOLLOW meta tags for the default ariadne view.
- Updated the portuguese, french and dutch translations.
- Improved the installer, removed all warnings.
- Made the mod_captcha module more robust.
- Caching will be disabled when debuging is on.
- Allow shortcuts to users/groups to be selected from the grants dialog.
- Added 'delete_empty_containers' option to htmlcleaner which removes empty container tags.
- More robust htmlcleaner (attributes).
- Improved handling within the management view for large object sets.
- count_find() has now its own store handling for better performance.
- Improved the ariadne error handler. It will only display errors in the page when display_errors(php.ini) is set to on.
- ar/xml and ar/html have been made more robust and consistent.
- Numerous bugfixes in ar/connect/ftp.
- ar/html/menu has been refactored to be more consistent and flexible.
- Added ar/html/form::findField.
- Improved ar/events performance, added the event name in the event object.
- Added a large number of events to ariadne, see ar/events documentation.
- Bugfixes:
- ar/form: password fields no longer shows passwords value in the input.
- Fixed upgrade from 2.4rc2 (ariadne base package was renamed).
- Non-default templates are not saved within the unnamed library cache anymore.
- Fixed ar\http\client get requests with form data. Parameters are now encoded in the url.
- Chrome is no longer too eager in caching ariadne pages.
- Fixed an allnls bug; templates will not be shown anymore when allnls is not set and the object doesn't have the requested language.
- We now skip language check for config.ini.
- Fixed named library lookup for non-existing libraries.
- Fixed several browsing bugs within the ariadne backend.
- Fixed the user-account disable option.
- Fulltext properties will not get imported via ax files.
New in Ariadne 2.7.5 (Apr 15, 2011)
- New features:
- Added get_content_type function to mod_mimemagic
- Added upgrade script for newer myqsl database which adds defaults to table fields
- Mod_htmlcleaner now has the option to remove empty tags
- Added error reporting support for Fatal errors
- Added ar/connect/multigate, a connector to Multigate to allow easy messaging from Ariadne. Only supports IRC for now but multigate will allow a broad choice in messaging protocols.
- Users no longer require hardlinks in groups, but can be shortcut items now.
- Changes to existing features:
- rewrote the mysqlstore to do all query's with the internal store_run_query function, and replaced mysql_db_query because it is deprecated
- Fixed iterator support for ARnls
- Changed arSuperContext from a switch to an array which keeps score of seen templates. This resolves conflicts created by loading the same unnamed library on multiple paths.
- Index.html now also allowed on ppage
- Added default setting for ARBasedir in ariadne config to prevent problems with symlinks
- Refactored the database init code;
- Upgraded YUI to version 2.8.2
- Fixes in the whole codebase to use $AR instead of $ariadne
- sgBegin can be used in php-based scripts without a key to make it easier to get the correct grants.
- Improved error reporting
- Added wrappers for the store upgrade functions
- Showing all types now uses the names in arTypeNames (all available types) instead of the ones used in the typetree
- Compiled PINP templates no longer contain comments, resulting in a speedup.
- Added specific dialog for customdata on shortcuts
- ar/html/form: Added getNameValue and validate to fieldset class
- call_super() will now also follow shortcut redirects
- Bugfixes:
- fixed NLS problem with file uploads
- removed some unused code
- FTP filenames now get the correct data for name info
- Added missing case for Ariadne upgrade scripts
- Fixes in mod_keepurl: make_real_path and get()
- Removed magic marker that detected .pps and .xls files as msword
- Fixed copy functions to check for illegal filenames
- Fixed caching of library templates
- Fixed endless loop when call_super()ing on an baseType::function.html call
- ar/html/menu: fixed root() to return the correct value
- ar/connect/soap: Fixed header instantiation and __soapCall methods
- ar/xml: Fixed indenting when a nodelist contains another nodelist
- Fixed config handling
- Fixed saving grants on groups
- Added correct use of htmlentities in user.notfound
- Fixed owners on shortcuts
- Saving grants on groups/users now works
- Fixed sgEnd() to release the grants
New in Ariadne 2.7.4 (Jan 24, 2011)
- This version has a number of small improvements and fixes, as well as a greatly expanded and improved version of the new API.
- It adds a new object type, pproject, that is intended to ease management of projects with their sites, users, and libraries.
- The new Ariadne API has been extensively tested and expanded.
- It is now complete enough to build entire projects with.
- It has been checked for consistency, correctness, ease-of-use, and expandibility.
- It adds easy XML and HTML parsing, XML data binding, an event system, OpenAuth, RSS, SOAP, and Twitter support.
New in Ariadne 2.7.3 (Nov 18, 2010)
- empty strings are nolonger tainted
- Labels in forms are now optional, set the label to false to skip the label.
- Return errors with the name of the fields as the key instead of the label, this makes it easier to show the correct error messages in multilingual forms.
- Added getHTML() method, which returns the ar_html dom object, allowing you to manipulate the form output.
- muze javascript libraries updated
- added capabilities checking, with muze.env
- muze.event no longer automatically attaches a cleanup routine onunload. It no longer needs it. The event library doesn't generate circular references. With this change browser fast history navigation feature works again.
- muze.js base lib has been updated:
- the namespace() method now has an optional function argument, the return value of this method will be stored as the namespace object.
- the require() method also has an optional function argument. This method will only be called if the requirements are met.
- include() and load() return a loader object, which allows you to set callback methods using loader.onload() and load.ontimeout(). You can clear these method using loader.clear().
- pphoto
- Added a new shadow() method.
- Bugfixes:
- Fixed a bug in the handling of pfile objects, you can now put() an ariadne pfile object.
- pasv() now returns an error if switching to or from passive mode fails.
- Fixed parsing of the url in ar_connect_ftpClient::__construct, now parses paths not ending on a '/' correctly.
- Fixed form validation: empty strings are now also flagged as incorrect for required fields.
- Fixed the html input type, was broken in previous release
- Fixed autoloading sections that do not exist, they are now flagged as missing instead of trying to load them every time.
- Fixed file downloads for internet explorer. Cache-control is now set to private, which fixes intermittent problems with downloading.
- Fixed a bug which made it impossible to save a template through the ftp loader.
- Fixed opacity in IE8 so the fades on the sidebar of the yui interface work.
- Fix the installer to properly set the ariadne webroot
- Fixed the old install script to set the admin password since the base.ax no longer has an admin password.
- Fixed locking when starting the edit dialog
- Fixed a problem in the sql compiler (used by find()) which broke multiline queries.
- Fixed a javascript error in the template editor when restoring the cursor position.
- Fixed the mogrify feature to set the correct vtype for subtypes (e.g. ppage.subtype now sets the vtype correctly to ppage).
- Fixed the pinp interface for mod_page:compile - added a missing language option
- Fixes in the authentication system. It now properly initializes Ariadne with the public user before trying to authenticate the given user account.
- Logging into an active session with another user now works with custom user folders.
- The loader now automatically redirects to a url with a sesssion id after a user logs in on a page
- Fix the grants dialog textmode button to be clickable in internet explorer
- Copying an object will now set the owner of the copied object to the user doing the copying
- Fixed a problem with custom data fields in the edit object dialog when the custom data contains the tag.
- Fixed workflows (user.workflow.pre.html and user.workflow.post.html) so they are now always executed even when the requested language is not set on that object.
- Guard against errors reading captcha files that no longer exist.
- Minor cosmetic changes to the yui interface
New in Ariadne 2.7.2 (Aug 21, 2010)
- The most important change is the speed; this release is between 2 and 6 times faster.
- It queues image manipulation commands to prevent DoS attacks.
- It has an FTP client API, improved gettext/loadtext methods, allows user groups to be created anywhere, and no longer allows creation of a config.ini that breaks the Ariadne backend.
- Numerous bugs have been quashed.
New in Ariadne 2.7.1 (Jun 12, 2010)
- Faster, more polished and all reported bugs fixed.
New in Ariadne 2.7.0 (Jan 30, 2010)
- Major work (more about this below):
- All new user interface
- New installer
- New naming scheme on disk
- Templates can have SU-style abilities
- Muze Javascript library
- Changes in multi-language support
- Improvements in:
- SVN support
- Library support
- Third party authentication
- PINP functionality
- Bugfixes:
- Native language support
- TinyMCE editor handling
- lots of others minor bugfixes!
New in Ariadne 2.6.1 (Dec 20, 2008)
- This is the first PHP 5 version.
- It also has optional password expiry and SMB authentication.
- There is a new HTML editor that works with IE7 and 8 under Vista.
- Finally, there is a new style store interface (mod_ar).