Model RealTime 10.0 2016.23

138735: Hidden merge conflict

This was fixed indirectly as part of other C/M improvements.

138449: Unexpected merge conflict

Implemented Git-like text diff algorithm. Now similar scenarios should not cause unexpected conflicts.

138192: UehUeCtxtC doesn’t get indexed

The reason why this file "is not indexed" from user point of view is because CDT editor enables scalability mode for large files. Preference page where these options are defined is: "Window -> Preferences ->C/C++ -> Editor -> Scalability". Preferences which user (creator of TR) are using: "Alert me when scalability mode will be turned on" -off, "Enable scalability…" - 30000 lines; "Disable editor live parsing (Outline view, semantic highlighting and folding..)" -on. It means that when the user opens the CEditor, it silently applies scalability mode, and the presentation of the file is not complete. Since notifications are turned off, it is not obvious for user. The size of the UehUeCtxtC.cpp file is 60000 lines (with the set limit of 30000). Recommendation would be to turn on alerting of scalability mode. Not using this mode at all may influence tool performance.

131145: Out of heap space while processing compilation errors

Several fixes have been done to solve this problem:
- Build job and marker processing job are now separated, so build won't fail if there are a lot of markers
- Previous solution created one job per a marker which caused memory overhead. With introduced changes we reduced memory usage for marker processing, e.g. we can handle more markers.
- Limit for 50000 markers has been set for processing job. When the number would exceed this limit, then the warning message "Number of problem markers exceeded 50K limit. Marker processing job is cancelled" would appear.
- Limit for processing can be also set with system property "com.ibm.xtools.umldt.core.markerLimit". At this case the info message would use number of markers set via system property value.

130416: setting of breakpoint in choice point code snippet does not work

This problem cannot be reproduced in Model RealTime 10. It was probably resolved indirectly by no longer allowing code for outgoing transitions of a choice point to be edited in the code view or code editor when the choice point is selected.

129698: Strange method icon - can't be found in documentation

The documentation about Model RealTime icons has been updated here: [Model RealTime documentation: Model RealTime Icons.pdf](https://Model RealTime.hcldoc.com/help/topic/com.ibm.xtools.rsarte.webdoc/Releases/attachments/ModelRealTime%20Icons.pdf)

129601: Import of preferences no longer working

Eclipse Mars SR2 contains a fix which makes export/import of preference functional again.

126064: Building executable for testing classes with Google Test

Model RealTime now supports a C++ Test Executable TC. It's also possible to use file artifacts in C++ Library TCs (just make sure to enable the TC setting "Enable support for file artifacts").

122783: org.eclipse.osgi and org.eclipse.core.runtime causes disk full errors

Can no longer be reproduced.

119625: Guard body in project explorer

1) In case of a multi-line label the first line will be displayed only followed by the ellipsis
2) If label exceeds 100 characters it will be truncated and ellipsis will be added at the end
Also, the opaque expression node is not displayed for guards anymore and guard condition node label contains the first line of code.

115226: Entry operation in capsule and passive statemachine

Added support for class-scoped state entry operation for capsules and passive statemachines. To define class-scoped state-entry actions, you should add an operation void rtgStateEntry() to the class/capsule. For capsules it is important to mark it as Polymorphic so it will be generated as virtual (otherwise it will not work as intended). This operation can be inherited or redefined as a normal UML operation. For capsules, rtgStateEntry() is called from Target Run-Time library; for passive classes, the call to this operation is added to the generated code for passive state-machines.

114618: RSARTE: TC editor: Main tab is too wide.

This problem is no longer seen with Model RealTime 10

112405: RSARTE: FileNotFoundException: .settings.com.ibm.xtools.umldt.core.prefs

In Model RealTime 10 the Oracle JVM is used. The UI Performance Monitor functionality was specific for the IBM JVM and is therefore no longer part of Model RealTime. Latest version of Eclipse provides a similar feature called "UI Responsiveness Monitoring".

112316: RSARTE: Error reading help table of contents file

These errors were solved by including missing content in the built-in help.

109603: RSARTE: Preference lack keyword make difficutl to find the preferences

In Model RealTime 10 it's now possible to use certain keywords for finding RT preferences. Currently the following keywords can be used for searching "code view", "global filtering", "highlight connections", "load models". They correspond to groups of preferences within larger preference pages. To avoid ambiguities and too many keywords, we have so far not assigned keywords for individual preferences.

108941: RSARTE: Documentation Update:

The RT Services Library documentation has been updated with a section about classes and functions in the TargetRTS.

107866: Compare : Changes to operation parameters several issues in presentation

Now this change is more clearly described. For example: Modify type of property 'b' from "int" to "class 'CLZ'"

106647: Compare Merge: Add doesn't show the value

The value is now shown in this change description. Here is an example:
Add 14 <literalinteger> to property 'attribute2'

106646: RFE: Save List of Changes in Compare Merge Editor doesn't give enough info

This works better now. Both the capsule/class and attribute name is now mentioned and the format of the change is also improved. Here is an example:
Unresolved | Model View
Unresolved | Changes related to package 'TrafficLights'
Unresolved | Changes related to class 'ABC'
Unresolved | Modify abbcd<opaqueexpression> from "abbcd" to "abbc"

105680: Compare: Add Property Set Text show the full text of the change on the top pane

This change now looks like this:
Add properties '[Header Preface]' to capsule 'C'
And when the change is selected the Code view shows the added code snippet.

105678: Compare: Adding a new operation show as two changes / one for OpaqueBehaviour and one for the operation itself

Now only one change is reported for this case. It looks like this:
Add operation 'clean' to capsule 'C'

105676: Compare: Changes in capsule members are reported as Changes related to the parent package

Changes to a capsule attribute are now by default grouped under a node which tells which capsule the attribute belongs to. The change description was also improved to be shorter and more precise. Now the text is
Modify visibility of property 'NAME' from "private" to "protected"

102404: Problem with setting breakpoints

The context menu of the code editor can now be used for toggling breakpoints.

83033: TR1044: Control nodes in a partition in activity diagrams can be removed from diagram only

"Delete from Diagram" is always disabled for ControlNodes now.