Changes in this version:
- Stability improvements.
- Git integration.
- Easier integration with other VCS.
- Support for images and model documents.
Type of attributes not always read correctly
Enterprise Architect stores the type of an attribute in two places, depending on the type of the type.
For built-in types, it stores it in some field, but for classifiers, a reference to a classifier is stored. When changing the type of an attribute to a built-in type, the reference to the classifier is not deleted.
When reading a model, we give precedence to the classifier reference, resulting in a discrepancy between the displayed type in EA, and what we diff in LemonTree.
EA can fix this problem with the Project Integrity Check.
To remedy this issue, we'll do the following
- Add a model consistency check in LemonTree which warns the user when such a problem is encountered, giving advice on how to proceed (using Project Integrity Check).
- Reduce the impact of the problem by not giving precedence to the classifier reference. This might have other unintended consequences, but given the circumstances it's the lesser evil.
Model inconsistencies - unclear what measures should be taken
The model inconsistencies report shown in LemonTree can be a bit overwhelming. For one, it's not clear which issues present real problems which have effect on the semantics of the model, and which are cosmetic. Additionally, it's not obvious how to fix these issues since the inconsistency dialog does not give guidance on that.
Fixing this problem consists of separate tasks:
- Categorize model inconsistencies into severity classes (Info, Warning, Error are cood candidates).
- Give guidance on how to fix the issues on an issue-by-issue basis. This would be required for errors, and optional for the other classes.
- Provide a means in the UI to quickly filter by severity additional to the current filters.
- Don't show the model inconsistency dialog by default when no errors have been detected.