Release 8#

Lattix Release 8.5.2 (November 12, 2013)#


  • Localization for Japanese.

  • .NET module improved to recognize MDTExportedType construct.

Bug Fixes#

  • Clang module could leave temporary files created when input sources are parsed.

  • Clang module ignored filter options specified in Visual Studio Project file.

  • Hostid string was sometimes not displayed in the License Dialog

Lattix Release 8.5 (August 8, 2013)#


  • User Interface improvements to better support the Mac OS X platform.

  • Improved handling of manual dependencies for the Mac OS X platform.

  • Improved API for extracting information from atom database.

  • Script now allows exporting rules from one project to another.

Bug Fixes#

  • Fixed undesirable interaction between Undo and Manual Dependencies.

  • Incorrect behavior when creating Manual Dependencies in Tree View.

  • Update for multi-module did not allow the update of a single module.

  • Null pointer exception when updating elements without any properties or dependencies.

  • Exception in Clang Project Configurer when no file or directory is specified.

Lattix Release 8.4.1 (July 12, 2013)#


  • LDI and Excel projects can specify an unlimited number of dependency kinds.

  • Display performance when selecting dense intersections for large projects was improved.

  • A new command line option for lazy loading of properties was added. This further improves performance when dealing with large projects.

  • The unused JNDI option in the EJB module was removed from the user interface.

  • Manual dependencies can now be created by selecting multiple cells. Previously, this had to be done one cell at a time.

Bug Fixes#

  • Member Level Expand/Collapse did not work in some circumstances in the Clang module.

  • Repository Dialog had spurious text in tree widget.

  • An unnecessary blank line in .NET default rules was removed.

Lattix Release 8.4 (July 8, 2013)#


  • Option added to Clang module for coalescing atoms from multiple studio projects in a solution file into one data source.

  • Improved performance when creating subsystems for virtual partitions.

  • Improved performance for DSM context menu.

  • Additional Localization of resources for Japanese translation.

  • Added support to handle 128 dependency kinds.

Bug Fixes#

  • Manual dependency did not appear in some instances.

  • Member expansion could incorrectly report changed property values.

  • Clang: Detailed update report could sometimes show all atoms as missing or new.

  • Fixed infinite recursion with clang symbolic links.

Lattix Release 8.3 (June 11, 2013)#


  • There are new scripts for exporting and importing rules. These scripts can be run using ldcscript to allow for command line usage.

  • There is a new menu item that allows a Work Item to be created from a Violation.

  • iBatis Analyzer is a new additional tool that extracts dependencies from iBatis files.

  • Combine Source and Header Files script was improved so that if it is run twice, it will normally do nothing on the second run.

  • An example was added to the documentation to show how custom reports can also be run using ldcreport.

  • Improved error reporting when Klocwork module is run without the MySQL driver.

  • Better memory usage for projects with many duplicate atom names from different data sources.

  • Improved content and formatting of HTML reports.

  • Additional Localization of resources for Japanese translation.

Bug Fixes#

  • The layout of the buttons on the Clang Configurer Dialog could change unexpectedly.

  • Exception is generated when a Checker completes with null results.

  • You could not add another module to an existing project using ldcupdate.

  • The delimiter character in Options in the Excel module did not work correctly.

  • PL/SQL parser did not correctly parse sql ddl commands that contain user, role, tablespace or privilege.

Lattix Release 8.2.9 (May 19, 2013)#


  • Clang module now allows you to import data using Studio project files also. Previously, you could only load data from solution files.

  • XSD file for Lattix report is now provided in the config/reports directory.

  • Documentation for scripting has been improved further.

  • Additional Localization of resources for Japanese translation.

Bug Fixes#

  • When a file or directory is removed from the Clang Project Configurer, all instances of the file and directory identified by leaf name were removed.

  • Running checkers on a Lattix project created from Understand UDB files can throw ArrayOutofBoundException.

  • Fixed packaging of jar files so correct version of bcel is used when processing java classes on Linux

Lattix Release 8.2.8 (April 27, 2013)#


  • Export partial projects from an existing project. This also allows you to combine parts of different projects into a single new project.

  • Clang parser data extraction was improved significantly.

  • Significant enhancements for creating Clang projects from Visual Studio solution files.

  • Localization of resources for Japanese translation.

Bug Fixes#

  • If the Repository Track contains a space in the name, ldcget generated an exception.

  • Some of the dialogs were excessively large.

  • Repeatedly clicking on Options in Project Properties menu could cause the cpu utilization to increase.

  • Atoms in hidden subsystems were showing up in the deleted atom list.

  • Some of the metrics did not update correctly when the project is changed.

  • ldcupdate did not work correctly with Visual Studio solution files.

  • Delta metrics did not display correctly.

  • User Interface in the checker output panels for code and graph had minor fixes.

  • Update of multi-module projects did not retain the setting for “Create Subsytems for Modules”.

Lattix Release 8.2.7 (April 11, 2013)#


  • Clang parser supports new dependency kinds to distinguish between read and write of data.

  • Workitem now generates with login id as default owner name.

  • Localization of resources for Japanese translation.

Bug Fixes#

  • Materialized Views are now identified and parsed by the Oracle module.

  • For very large projects, member expansion would sometimes fail.

  • The Paste Into menu item was greyed out for $root.

  • Create Parent Partition on $root caused an exception. That option is now greyed out.

  • The scoping of structure element names in the Clang was incorrect.

  • ldcupdate threw an exception on multi-module projects.

  • ldcdiff threw an exception if you specified both “-report” and “-deltaviolations” option.

  • ldcreport threw an exception when generating an image (the image was generated correctly).

  • ldcreport threw an exception if no report type is specfied.

  • LDV does not let you save a project. Yet, it generated a dialog on closing a project asking the user if they wanted to save their project.

Lattix Release 8.2.6 (March 22, 2013)#


  • An early version of an Eclipse plugin for Script development has been released (this is different from the regular Lattix plugin for Eclipse).

Bug Fixes#

  • The API to expand members did not work.

  • When a project which is not member expanded is updated and a detailed report is produced, the tagging option for new and changed atoms did not work.

Lattix Release 8.2.5 (March 8, 2013)#


  • Checker Reports have been shortened and made easier to read

  • Checker Report navigation has been improved.

  • New Script to discover unused include files in C/C++ projects

  • API Improvements:

    • New API for accessing WorkItems

    • New API for accessing Violations

  • Script Improvements:

    • Scripts context enables menu items in context sensitive menus such as on Row Header, Cell, WorkItem, Violations

    • Scripts can define Preference Properties

  • Clang Module can read in Visual Studio solution files

  • Update Dialog has additional options to provide fine grained control what appears in the update report report.

  • Changes to support Veracode Certification

  • Klocwork and Clang module allow for wildcard matching in atom prefixes that are removed from atom names

Bug Fixes#

  • Some graphs in checker reports were tiny - the scaling has been fixed

  • Code/Graph tabs in checker reports did not always update when the context changed

Lattix 8.2.1 (February 18, 2013)#


  • A button has been provided to navigate to the Repository in the browser directly from the Repository Dialog in LDM.

  • Lattix display on Linux has been improved.

  • The new and improved Query Language has been documented in the Scripts Manual in the Knowledge Base.

Bug Fixes#

  • Update tags were not set even when atoms are changed but there are no new atoms.

  • Saving BuildSpec file could cause the Configurer to hang in the New Project Dialog for the Clang Plugin.

  • Graphical display in checker reports was not refreshed when selection was changed.

  • Without an active project, the API call getActiveProject() results in a stack overflow. Now it will throw an exception.

  • When a partitioning algorithm is applied to a large number of boxes in a Conceptual Architecture Diagram, a poor display could result.

  • Files excluded in the Clang Project Configurer were not being excluded.

  • Search did not work correctly when the search string had blank spaces or exclamation marks.

Lattix 8.2 (February 11, 2013)#


  • Checkers display source code.

  • Checkers display graphs.

  • Checker API and the Query Language have been improved.

  • New Checker for Java and .NET: Abstraction without Decoupling

  • Clang Report (Reports –> Clang Reports) provides following diagnostics:

    • Parse Diagnostics

    • Undefined Macros

    • Missing Include Files

    • Headers not Included

    • Headers Included but not Used

  • The About Box now also shows the Memory actually in use and the Memory that is currently committed, so that users can decide when to ask the JVM (Help –> Compact Memory) to run the garbage collector.

  • rlmhostid.exe binary is now shipped as part of Lattix install.

  • Increased JVM “PermGen” space to prevent “java.lang.OutOfMemoryError: PermGen space”.

  • A new API call was added to move a partition at a specified index in the parent partition.

  • Removed Hierarchical Cyclicality Metric.

Bug Fixes#

  • Error message generated by the Clang Report has been fixed.

  • Exception Message from Groovy scripts can be re-sized and expanded.

  • Bug fixes to Lattix API calls: model.newDependency(), model.newDependencyEdge(), model.getUsesEdges()

Lattix 8.0.6 (January 8, 2013)#


  • Changed *.sh and *.bat start-up scripts to give JVM better memory handling

Bug Fixes#

  • Dependency kind for manual dependencies could not be changed in “Edit Dependency” dialog

  • Edges could not be added to an existing tag

  • Regression that prevented Excel export script from working

Lattix 8.0.4 (December 17, 2012)#


  • Memory utilization has been improved significantly.

  • There is a new Compact Memory menu item under Help to allow users to notify the garbage collector to reclaim memory.

  • The tables displayed in the Lattix Web Application are now sortable.

  • As the Profile Dialog box became larger, a scroll bar was added to it.

Bug Fixes#

  • Reports saved in xls/xlsx format were limited to 32767 rows. The limit has now been doubled in a single sheet. Furthermore, multiple sheets will be generated if this limit is exceeded.

  • Edit Subsystem Work Item did not display Description in Report.

  • Memory utilization for reports has been improved further.

  • A packaging error was fixed for the Clang module on a 64-bit Unix system.

Lattix 8.0.3 (December 4, 2012)#


  • The Combine Source with Header Files script now works for Objective-C also.

  • Report Generation is now many times faster in Lattix.

  • LDC now reports better diagnostics when there is a licensing issue.

Bug Fixes#

  • Unused element report did not produce the correct results. This is a regression that was fixed.

  • There was a memory leak in the User Interface for the impact report. This becomes noticeable if the project is large.

  • All the scripts, including those intended for the Embedded Profile, showed under “Others” for the Embedded Profile.

  • All of the violations were not being displayed correctly in the repository.

Lattix 8.0.1 (November 21, 2012)#


  • New API call on ProjectModel to change the AtomKind of manually created atoms: changeAtomKind(Atom atom,AtomKind kind).

  • Improved documentation for the Clang Module in the Knowledge Base.

  • Reduced memory used by the Update Report.

Bug Fixes#

  • The 32-bit Linux version of Lattix had an incompletely packaged Clang module.

  • The memory associated with Update Report was not freed even after the Update Report was deleted.

  • Sometimes certain rule violations were not displayed in the repository.

  • Update of Clang Projects would show differences if the source file changed even if the atom name did not change.

  • Project Configurer did not show all directories.

Lattix 8.0 (November 16, 2012)#


New module to support C/C++/Objective-C using Clang

New and improved query language

Users can now create their own Architecture Checkers

An initial set of checkers for Java/.NET/SparxEA are provided with additional checkers to be added in subsequent point releases.

New Java/.NET Architecture Checkers:

  • Undesirable dependencies that produce cycles

  • Identify super class knows derived class

  • Identify attribute overrides

New SparxEA Architecture Checkers

  • Packages with missing dependencies

  • Packages with redundant dependencies

  • Cycles that do not involve diagrams

  • Cycles that involve packages

  • Undefined elements

Memory footprint was reduced for large SQL Server Projects.

Documentation improved for Eclipse based development of groovy scripts.

Additional localization for Japanese language.

Performance optimization to improve memory utilization.

There is a new script for users to reorganize a project through a specification in an external file.

API improvement to allow users to query the visual state of the project such as the order of display and value of cell.

Scripts can now render graphs in scripts using the Jgraph library.

The Coupling metric replaced the the Hierarchical Cyclicality metric in the LattixWeb.

Bug Fixes#

  • Parsing was improved for SQL Server projects to support some missing constructs

  • The visible state of expansion and collapse of subsystems is not saved when a project is loaded in certain circumstances.

  • Excel files can be imported. There was a regression in Lattix 7.7 and 7.8 which prevented this (a New Project could always be created using Excel files).

  • The text in About Box could sometimes loose its alignment.

  • SparxEA module could fail to load models that contained a certain type of sequence diagram.