If you are using CodeGen in conjunction with Symphony Framework then it is important that you do not upgrade to this version of CodeGen until you also upgrade to Symphony Framework V22.214.171.124.
Changes in this release include:
- The CodeGen installation on Windows now supports upgrading from a previously installed version. We use Windows Installers "major upgrade" mechanism, which essentially performs an automatic uninstall of a previous version before installing the new version. The earliest version that can be upgraded in this way is V4.1.0 which was released on 6th June 2012. If you are running a version older than 4.1.0 then you will need to manually remove that version one final time before installing this version. You can determine the version of CodeGen that you have installed via the command codegen -version.
- Added support for custom expressions in all loop structures where expressions can be used.
- Added two sets of counters that developers can use in template files.
- Added several counter expressions. Currently, despite the fact that counters can be used anywhere in a template, counter expressions can only be used within one of the existing loop structures. We are investigating the possibility of supporting the use of counter expressions, as well as some other expressions, outside of a loop structure.
- Changed the API for adding custom tokens for consistency with the new custom expressions support.
- Fixed a problem where unnecessary blank lines were being written to output files. Now if a template line contains a template comment (;//) which does not start in column 1 and is the only thing in the line, or if a template line contains a token but after token replacement the line is blank, blank lines will no longer be output.
- Fixed a problem in RepositoryAPI which was preventing structures containing nested explicit groups from loading. Also added more developer debug mode logging code in the CodeGenLauncher and CheckStructure routines.
- Fixed a problem which occurred if the entire content of a template file was delimited by a level 1 loop (for example a field loop) then the final line of output code could be duplicated in some rare cases. Also fixed an issue where in some cases an output file could include an incorrect additional blank line at the end of the file.
- Changed the location where the sample templates are installed on Windows systems. On Windows systems sample templates are now installed in the folder <system_drive>:\ProgramData\Synergex\CodeGen\Templates.
- Improved the code in several of the example templates. Various internal enhancements and code cleanup also took place for this release.