The maintenance of this document has been DISCONTINUED.
Please consult the commit history on GitHub instead.

2010-01-16	    1.1.2-beta

- new code layout in src folder that maps the library architecture to the sub-folders structure (core, editor, devices, plugins, filters, services)
- modularization of axel.css: it is now assembled from two files axel-core.css and axel-style.css in the stylesheets folder, the 'core' file containes CSS rules required for AXEL to function properly while the 'style' file contains look and feel rules you can customize
- renaming of all AXEL CSS rules so that they starts with "axel-"
- updated build.xml process, all the files to include in a library built are now configurable in
- many bug fixes in plugins
2010-08-26	    1.1.1-beta

- new layout manager component introduced in lensdevice.js to isolate lens insertion / positioning algorithm
- improved text device so that when clicked, the editing field "inherits" all of the visual style of the Handle (up to now it worked only for a few properties and not very well accross different browsers), as a consequence "float" layout with "parent" shape no longer appears at the parent left border, this is consistent with layout="placed" behavior, AXEL now uses the CSS "inherit" value that works on all browsers (including IE8) but not IE7                                            
- as a drawback the editing field will no longer inherit the font size / color / weight on IE7, we may try to restore this in the future if needed
- added a photo_URL parameter to the 'photo' plugin to give the address of the POST action that receives uploads

2010-06-30		1.1.0-beta (internal)

Core :    
- new service element (i.e. <xte:service>) available as an XTiger XML extension inside an "" namespace; you can create new services using a Delegation/Mixin design pattern for adding functionalities to templates, each service is a Javascript object that can react to editing events, potential future applications are automatic tables of content or automatic bibliographic reference sections (see docs/howto-services.txt)
- new filter architecture based on a Delegation/Mixin design pattern to allow chaining filters on primitive editor plugins (see docs/howto-services.txt); "documentid", "image" and "wiki" filters have been rewritten with this API
- new plugin standard API to write primitive editor plugins that can potentially share filters   (see howto-plugins.txt); "text", "video", "link" and "richtext" have been rewritten with this API and for instance "text" and "video" share the "servicefilter" filter which is used in the service architecture (we still need to align "string", "select" and "photo")
- rationalization of the test framework to simplify release process; automatic load / save tests are defined in test/(auto, data, templates) while interactive (GUI) tests are defined in test/gui
- corrected a bug in DOMDataSource that caused infinite loop in some rare case while loading XML data, some parenthesis where missing around a test expression in hasDataFor in the test that matches  that a pseudoLabel match is not just a prefix of a known label

Plugins, Filters, Services + Extras :  

- user experience improvements: "string" and "text" primitive editors select the whole input field content when it contains default content, if they are optional they also unselect themselves if the user enters empty content and then reset to the default content  
- fixed bugs in auto-checking of optional "text" editors and of the ancessor's optional repeaters after user input
- new autocomplete and suggestion services based on the service mechanism to simplify document authoring by reusing data stored in a database to complete and pre-fill document while editing; these services can be tested with scripts/server/server-auto.rb, opening test/auto/EventAutocomplete.xhtml and/or test/suggest/EventSuggest.xhtml)                                                                                                    
- demonstration services capitalize.js (shown in templates/Services.xhtml) and toc.js (uncomplete, but shown in templates/Services.xhtml) to illustrate the service architecture   
- new experimental "debugfilter" to log internal plugin API calls to the console
- PageWeb++.xhtml and contrib/cvmachine contains new kinds of templates that push the limits by directly generating an XHTML document with embedded semantic markup and CSS instructions which can directly displayed within a browser

- as "videofilter.js" and "layout" filters have not yet been rewritten with the new filter API, some demonstration templates are temporarily broken (Story.xhtml and YouTube.xhtml)    

2010-05-20		1.0.1-beta

Core :

- XML loading and serialization algorithms have been extracted from the generator; the default algorithms are in src/editor/classical/(xmlloader.js and xmlserializer.js)
- corrected a bug with flows in the default xmlloader.js, the point at the top of the stack was duplicated when returning from a flow                                                                                          
- a new xmlrobustserializer.js is available, it supports data migration in case of limited template evolutions that are documented elsewhere; to use this serializer instead of the default serializer, include xmlrobustloader.js instead of xmlloader.js in your project

Plugins + Extras :
- as an alternative to the "video" lens plugin, a videofilter for the "text" editor is also available (in src/plugins/videofilter); templates/YouTube.xhtml (and data/youtube.xml) allows to compare both
- a new contribs/schematize/schematize.xhtml tool to generate a simplified view of the XML target content model from  an XTiger XML template and to help compare two templates
- a new contribs/xmlschemas tool to generate an XML Schema from an XTiger XML template by Vincent Quint
- a new contribs/migration/migration_too.xhtml to provide a tool for those intending to make their templates evolve. The tool is straightforward to use. A documentation may follow.
- new OK button for the richtext editor
- fixed serialization/loading bug for the video plugin
- fixed save/cancel button behavior for the video plugin
- fix loading pb on IE for the richtext editor

2010-05-03			1.0.0-beta

Core :

- the generator now prints an alert 'Empty node in transformation, the template may contain XHTML errors, please correct it !' in case it encounters an empty node which is most probably caused by a <repeat> (no namespace) or a <span/> on IE
- font size computation in text editor converts from 'em' to pixels, this is required since at least IE8 returns font size in 'em'
- auto-selection of repeated components updwards the ancestors chain now works on IE for the text editor (and any editor that calls xtiger.editor.Repeat.autoSelectRepeatIter upon editing)

Plugins + Extras :

- all lens devices use a new positioning algorithm in display="above" mode resisting to scroll (except on Opera in some cases for the video lens); improved lens width computation
- rich text editor cleans up it's XML output (double quotes are now supported in attributes, entities are encoded correctly); pasted text is filtered to be compatible with the rich text editor's content model; single quotes are no more coded as double-quotes
- video editor displays the default content instead of "null" if it's content is empty; new Save and Cancel buttons, delete link operational, baseline alignment problem resolved with FF, width computation resolved with IE
- link editor now cross-browser. Autoselect implemented with consistency toward other plugins.

2010-04-02			1.0.0-preview

- Developer's preview initial version