Acceleo 2.3.0 - New and Noteworthy


The initial roadmap has been changed and it's a new 2.3.0 release which will bring the Ganymede compatibility and not the 3.0 release which was originally planned.

The 3.0.0 release planned for July has not yet the level of quality we are expecting, as such it has been postponed to the end of the summer. This release will be "standalone" and won't require Eclipse, you'll then be able to start an Acceleo code generation from the command line.

The 2.3.0 release brings some new features, both in the core engine and in the generation modules.

All these news are added to the Acceleo 2.2.0 new and noteworthy notes.

Eclipse 3.4 / Ganymede compatibility

Acceleo 2.3.0 is compatible with all the Eclipse releases of the last 3 years, named Eclipse Ganymede (June 2008), Eclipse Europa (June 2007) and Eclipse Callisto (June 2006).

Acceleo installed in Eclipse 3.4
Figure : Acceleo installed in Eclipse 3.4

Acceleo's wiki opening !

A brand new wiki is now available for the community, it's aim is to aggregate the Acceleo tips and tricks and at some point to host the modules web pages.

Contribute on the wiki !

EOperations calls from scripts

It is now possible to call from an Acceleo template an operation defined on the metamodel. This new feature allows you to call for instance "getAssociations()" on an UML2 class without using a Java service. Note that this feature is only available for EOperations without parameter.

EOperations completion
Figure : EOperation's completion

Acceleo does not require the modelers compatibility bridge anymore

With Acceleo you get a model converter useful when you use "non-Eclipse" UML modelers like Poseidon, ArgoUML or Umbrello (and many more !). You may now choose to install or not the bridge depending on whether you need it or not.

Independent Acceleo bridge
Figure : Independent compatibility bridge

Enterprise Architect 7.1 Compatibility

Acceleo 2.3.0 brings the Enterprise Architect 7.1 (UML 2.1 export) compatibility, you are now able to produce code from the class diagram, component diagram and UML profiles from Enterprise Architect 7.1 .

If you need more information concerning the Acceleo compatibility with other modelers, have a look on the compatibility page.

Show references : "CTRL+MAJ+G"

The template editor gained the ability to identify the calls of a given template in other templates. You can use this feature using the "CTRL+MAJ+G" shortcut from the template editor.

Searching references
Figure : Searching references

Please note that as Acceleo is dynamically typed this feature may brings you a few false positive results.

Dolibarr Module

Dolibarr

A new module arrived in the modules repository and is included in the Acceleo bundles : you can now generate a Dolibarr component from an UML2 model. The current version supports:

  • SQL requests
  • Dolibarr component descriptor
  • DAO classes
  • services
  • localization files
  • screens
  • box's structure
  • the component configuration page
  • lists for UML enumerations

JEE Module

Java

The JEE module has been updated and brings many new features as:

  • Architecture
    • The JEE profile has been refactored and it's now using pathmaps
    • Some common services have been refactored
    • Every part of the JEE module now uses on of the following profiles : Acceleo::Business and Acceleo::Ui
    • "Organize Import" support
    • You may now customize the generation target directories
  • Compatibility
    • An area dedicated to modelers compatibility has been opened on the SVN.
    • A new compatibility demo using MagicDraw
  • Hibernate Hibernate
    • Java interfaces support
    • "valueObject" pattern support
    • Persisted interfaces support !
    • Explicit PK support (experimental)
    • Generation layout is now compatible with "maven"
    • The generated code is passing most of the checkstyle rules
    • Better support of the "Organize Import" action
  • Spring Spring

PHP Module

PHP
  • CSS integration( see org.acceleo.demo.php.weblog/WebContent )
  • The PHP module now uses the same profile as JEE
  • You may now customize your stereotype names
  • Better layers organization
  • Various fixes

Module Ecore2Python

Python
  • The Ecore annotations are now used to generate the pydoc.
  • It is now possible to specify a license file which will gets added on the header of the generated files.
  • It is now possible to generate a .egg

BUG fixes

The following bugs have been corrected :

308304An ArrayOutOfBoundException on save
308514Modules with no category cause CCE with module launcher
308521Several bugs with alternative syntax [%%] since Acceleo 2.2
308522Several bugs with alternative syntax [%%] since Acceleo 2.2
308225Warning after a Generator Project is created
308272auto completion broken with alternate syntax
308153Impossible to get value from an EEnumLiteral
307502Acceleo Debuger throw a NullPointerException in AcceleoStackFrame
307477Services with the same name but with different parameters are not visible
308814Problem with EObjet script when specific metamodel is used
308996AcceleoSelectMetamodelDialog.registry.label key not in english
309032Incompatibility with Bouml's XMI
310388Double type not managed in SQL generator
306468Marker resolution and eclipse 3.2, not stable
306873The internalionalization support
306880Keep the current selection when the model change
310461ArrayOutOfBoundException in init of SpecificScript
310460Compiling/Saving Concurrent modification
308997Acceleo's wizards don't have title
307282Chain editor ClassCastException when opening file in svn repository

The following patches have been integrated:

309050ModelSet in chain file should have an optional filter on extension(s)
309852Add a references search command
309673Add support for EOperation in Acceleo templates