1.5.2. Migration to 7.12.5

1.5.2.1. Dashboard

Windows service now runs under a user account

On Windows®, dashserver install used to register the Dashboard service to run as LocalSystem, granting it far more privileges than an HTTP server needs. Its --user switch had no effect.

The switch now works, and defaults to the user invoking dashserver install. Since Windows® does not let a service log on as a named account without a password, and dashserver never stores one, a freshly installed service cannot be started until the password is supplied in the Windows services console (services.msc); otherwise starting it fails with The service did not start due to a logon failure (error 1069). See Microsoft Windows®.

Existing installations are affected only when the service is reinstalled.

1.5.2.2. Architecture Verification

Linkage names of reengineered architectures

The architecture reengineering rules (Architecture-Reengineering and the other rules whose names start with it) no longer derive the linkage name of a generated architecture element from its position in the architecture hierarchy, but take over the linkage name of the underlying code entity where available. Previously, distinct elements could receive identical linkage names (for example a directory and a module sharing a name), which broke exports to Enterprise Architect.

Consequences:

  • With the default File hierarchy view, header and implementation files having the same file name prefix are no longer merged into one component; they share their name and are distinguished by their linkage names. The Module hierarchy view is not affected.

  • The EA exporters attach the linkage name to every exported element as the editable tagged value Axivion.LinkageName, and the EA importers import it by default. When checking against an external architecture, elements sharing name and type are disambiguated via this tagged value.

  • Externally stored architecture models (GXL or EA) created with earlier versions carry the old linkage names and no tagged value, so elements sharing name and type in the generated architecture cannot be matched against them. Regenerate and re-export the model, or set the tagged value manually on the affected elements.

Option import_tagged_values of Architecture-QEAImporter replaced

The boolean option import_tagged_values, which imported all tagged values of the EA model, has been replaced by the option imported_tagged_values, a list of the names of the tagged values to import. It defaults to ["Axivion.LinkageName"], see above.

Configurations that set import_tagged_values keep loading; the option is dropped automatically. If you set it to true, list the names of the tagged values you need in imported_tagged_values instead.

1.5.2.3. Stylechecks

MisraC++2023-9.4.2

The default of option allow_empty_default_case has changed from false to true to better match the rule description. If you did not explicitly set this option in your configuration and want the old behavior back, you have to set this option to false in your configuration now.