Skip to content

Conversation

@kbirken
Copy link
Member

@kbirken kbirken commented Jan 19, 2026

Details:

  • Labels for tree nodes will not break due to double double quotes now.
  • Before generating a new svg file, an old one will be deleted. Thus, if the generation does not work, the old one will not be shown instead.
  • Errors from graphviz execution are now detected, handled and reported (in log, but also in messages view).
  • A superfluous stderr output on isApplicable has been removed.

CHANGELOG has been updated.

Note that an IllegalStateException is thrown on the first few executions of "Show Skeleton Tree". But this seems to be a problem in MPS (actually, how the action opens the viewer tool, and some kotlinx coroutine magic). No application code is involved, so I could not fix it. Despite of the exception everything works fine.

This is a bit hard to test, as the generation of SkeletonTree graphs is usually quite stable. In order to try the error handling and reporting one could change the code of SkeletonTreeViewer like this:

image

Then the file specifying the graph is broken in the first line and the error reporting kicks in.

This solves #1601.

Details:
- Labels for tree nodes will not break due to double double quotes now.
- Before generating a new svg file, an old one will be deleted. Thus, if the generation does not work, the old one will not be shown instead.
- Errors from graphviz execution are now detected, handled and reported (in log, but also in messages view).
- A superfluous stderr output on isApplicable has been removed.
- CHANGELOG has been updated.
@kbirken kbirken self-assigned this Jan 19, 2026
@kbirken kbirken added the variability Variability-related tickets label Jan 19, 2026
@kbirken kbirken enabled auto-merge January 19, 2026 20:27
@dbinkele
Copy link
Member

@kbirken looks good, but what problem are you solving? Is it possible to add a TestCase where the 'old code' failed?

@dbinkele
Copy link
Member

@kbirken We have a lot of tests in iets3.core who test the structure of created SkeletonTrees. How can we e sure they do not break with these changes once we update the iets3.os dependency?

@kbirken
Copy link
Member Author

kbirken commented Jan 20, 2026

@kbirken looks good, but what problem are you solving? Is it possible to add a TestCase where the 'old code' failed?

The problems being solved are listed in the description of this PR. I couldn't provide any test cases because I don't now how to test a view/tool. Any ideas?

@kbirken
Copy link
Member Author

kbirken commented Jan 20, 2026

@kbirken We have a lot of tests in iets3.core who test the structure of created SkeletonTrees. How can we e sure they do not break with these changes once we update the iets3.os dependency?

The PR does not change th structure of skeleton trees. The only code changes are in the creation of the dot-files and the file handling in the view tool. So I do not expect any problems in iets3.core.

@kbirken kbirken merged commit bfa2b1a into maintenance/mps20241 Jan 20, 2026
2 checks passed
@kbirken kbirken deleted the bugfix/improve_stability_of_skeltree_viewer_1601 branch January 20, 2026 15:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

variability Variability-related tickets

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants