Release 3.0 of GeneSEZ Framework available

07/03/2013 00:00

Since today, we are proud to present our new version 3.0. You can get it from our Eclipse Repository into your installed and running Eclipse. Further information about installation process can be found at our Eclipse Repository page.

Release Notes:

The main effort of the release was refactoring to split and discontinue the project org.genesez.platforms.common. Following there are some highlights of the new release:

  • A new eclipse wizard to create new GeneSEZ projects and to place example projects into the workspace
  • New Content Preserving Component (see org.genesez.m2t project)
    • Import Preserver now preserves the imports rather than take over
  • Revised workflow components
  • Gcore meta model
    • removed all deprecated features
      • returnType reference from MOperation to MType (use return reference instead)
      • MPrimitiveType (primitive types are now external types)
      • uniform handling of multiplicity properties with the new element MMultiplicity storing lower + upper bound, unique, ordered
    • added support for dependencies
  • UML adapter
    • now supports default template parameters and constraining classifiers for template parameters
    • supports dependencies
    • UML models with version 4.x are now supported
  • Java Generator now able to exclude specific packages and specific package contents
  • Java Platform
    • supports generation of annotation definitions
    • suppresses generation of @author javadoc tag per default
    • suppresses generation of section comments per default (use aop template org::genesez::platform::java::m2t::aop::SectionComments to enable)
    • completely revised native association handling (supports single + multi-valued bidirectional associations)
    • by default associations are now implemented natively rather then using the association library (use the aop script and template to use the association library)

Due to a thorough refactoring and time constraints we were not able to release all of our platforms with its features. We focused our work on the features used mostly. In particular the following platforms are not part of the current release:

  • C++
  • PHP
  • dotnet

For these platforms you have to use the last release 2.1.

Java Enterprise specific technologies are alike. They are part of the release but remain in beta status until we ensured their functionality by tests. Please see review the GeneSEZ feature overview tables in our documentation.

Migration Overview:

The most extensive change was the abandoning of the project org.genesez.platforms.common. Its functionality found some several new places:

  • org.genesez.m2t - A project for model to text transformation features: file and folder deletion, content preserving framework
  • org.genesez.mapping - The new home for the type mapping facility as well as the name mapping
  • org.genesez.statistic - A project to count generated and manually implemented source lines of code with report creation
  • org.genesez.util - A new place for basic functionality without further dependencies like logging, file system access, access to environment variables
  • org.genesez.workflow - The base of our new workflow infrastructure and its integration with MWE and MWE2
  • org.genesez.workflow.xpand - The place for XPand specific workflow components
  • org.genesez.metamodel.core.util - The home for platform independent but gcore meta model specific model transformations and utility scripts
  • org.genesez.metamodel.traceability.util - The new home for the requirements traceability dashboard, navigation between core and requirements models and requirements traceability information embedding in Java source code

Please see our example projects on what changes have to be made in the workflow. If you have previously used XML based workflows with MWE you should consider to use MWE2 as it offers an editor with code completion to edit workflow files.