Regression bug in handling of includes within macros (1.2018.10 -> 1.2018.11)

0 votes
asked Nov 29, 2018 in Bug by mgrol (3,150 points)

Hi,

there is currently a bug in the handling of includes if they are defined within a macro (!definelong). I open this ticket for tracking purposes.

This is the discussion we previously had via email.

... Yes, it's a regression. I've somehow simplified your testcase in "regression1.zip" file attached.

However, it's not that simple to fix this one : the fact is !definelong management has slightly changed.

It's now interpreted when the inclusion is done, and not when the definition is done.

So when you are including !include Service1/ServiceDomain/method2.iuml in "example.puml", the line :
!include ../../common/common.iuml

is correctly excuted.

However, in Service1_ServiceDomain_method2 definition, the line !include ../../SampleApplication2/api/resource/res1.iuml is not executed yet.

Back to example.puml, it's when you are calling Service1_ServiceDomain_method2(fe) that the line is executed.

And at this point, ../../SampleApplication2/api/resource/res1.iuml path is not correct anymore.

If you change !include ../../SampleApplication2/api/resource/res1.iuml to !include SampleApplication2/api/resource/res1.iuml in methode2.iuml, it will work back.

At least that is the current logic ...

Best regards,

Michael

Your answer

Your name to display (optional):
Privacy: Your email address will only be used for sending these notifications.
Anti-spam verification:

[Antispam2 Feature: please please wait 1 or 2 minutes (this message will disappear) before pressing the button otherwise it will fail](--------)
To avoid this verification in future, please log in or register.
...