plantuml / backlog

Contains all issues for plantuml that are not currently working-in-progress
0 stars 0 forks source link

Bug in calculating lifeline length #9

Open sarg opened 8 years ago

sarg commented 8 years ago

Lifeline should be long enough to cover returning arrow in that case:

@startuml
activate a
a -> a : put
deactivate actor
@enduml

pl1

mgeorge commented 7 years ago

+1 this one annoys me on a regular occasion.

mgeorge commented 7 years ago

Poking around on the PlantUML Q&A board I found the following:

http://plantuml.sourceforge.net/qa/?qa=4135/strange-life-line-for-self-reference-in-sequence-diagram

Basically you can force the teoz engine to render the lifeline correctly by adding a zero length space before the deactivation:

@startuml
!pragma teoz true
activate a
a -> a : put
||0||
deactivate a
@enduml

Not ideal, but produces the desired output at least.

I have been using teoz with some fairly complicated diagrams, and from what I have seen it seems be pretty reliable.

georgexsh commented 6 years ago

@mgeorge thanks for posting the workaround reference, it works for me.

xygahs0801 commented 4 years ago

+1 this one annoys me on a regular occasion.

hlwz5735 commented 2 years ago

+1 I's soo annoying.

laserpez commented 2 years ago

+1 same here, and the "teoz" solution somehow messes up my diagram.

jhoehle commented 2 years ago

Perhaps the self-referential icon should simply be changed to end at the starting point?

The current icon (U-turn arrow) causes semantic trouble when used with "&" to have multiple arrows emitted at the same instant. Some users' arrows would like to start at the top of this U-turn, others at the bottom, to reflect their intention and code. Deactivation obviously should obviously happen at the bottom. So the problem is that the current icon suggests that there are two distinct times (emission and arrival), when in fact there shall be only one (instantaneous transmission). The idea is not new. Peter Lobog wrote more about this topic in QA-3756 in 2015.

Oh my, the poor U-turn is probably standardized in UML and SysM... IMHO, it is an imaging bug that the ending side of the arrow is not at the same height as the starting point!

Feature Request: Can I change the icon myself in diagrams I create? skinparam AtomicSelf true

jubr commented 1 year ago

@jhoehle I nowadays use a procedure:

@startuml
!pragma teoz true

!unquoted procedure _msg2self($actor, $msg)
   $actor -[#Transparent]>? : ↩ $msg
!endprocedure

activate a

_msg2self(a, put)

deactivate a

@enduml