Bug at Adding assistant feature

GoJS v1.7.26

Here is an example how to add Assistant to node - Org Chart Editor with Assistants
But it has a bug, please look carefully to init animation and of animation. You will see that link comes through an assistant and only at the end of animation link changes their position. (Link from top parent)


https://drive.google.com/file/d/0BywlVSJDF9VYdHhYbWRhNlZkS1U/view?usp=sharing
I write about it because I’ve got the same bug, BUT sometimes link doesn’t rerender and stay over the assistant.
How to fix it?

I’m using Windows 10, Chrome 61.0.3163.100

Are you able to give us more information about the cases where the link stays over the assistant? What browser are you using, what type of machine are you running on, etc. I haven’t been able to reproduce a problem on any of the major browsers.

I’m using Windows 10, Chrome 61.0.3163.100

Reload page and take a look at link form top parent. It happens only when animation going. After animation it is OK

Ok, so there’s not really a problem with the link, it’s just the animation you don’t want.

You can set AnimationManager.isEnabled to false in your diagram initialization.

Thanks,
when AnimationManager.isEnabled is false it works fine, but Unfortunately I can’t switch off animation it is important for my app.
I prepared an example for you based on your assistant sample Plunker - Untitled
Toggle any node to Assistant and back and you will see that links above jump during animation - this looks bad.
Also you can see this bug at this video https://drive.google.com/file/d/0BywlVSJDF9VYX2RkQWc0b21LSDA/view
Could you improve it at your sample?

I don’t think that would be easy to accomplish, because animating an orthogonal link as the nodes are moving cannot be done by tweening all of the points of the route except in simple cases.

But you could set layerName: "Background" in your Link template, so that links do not cross “over” any nodes.

layerName: “Background” - doesn’t help.

I found reason of such behaviour.
I use Nodes and Groups. Group has Placeholder. So if I remove Placeholder it works pretty well, but with Placeholder it has bug.

I prepared the example for you http: //plnkr.co/edit/EYxMkvGAheYGje9q5Zes?p=preview
At script.js there is variable REMOVE_PLACEHOLDER set it to true or false and you will see the difference.
Also I prepared the video https: //drive.google.com/file/d/0BywlVSJDF9VYTjh2RnU5V3puWWs/view

Main bug is wrong Links position after init diagram. Is it bug at gojs or there is a mistake in code?

So you want these results, yes?
with Placeholder:


without Placeholder:

I see now what you mean – you were not talking about how during animation the link routes would appear to go through some nodes, but that they did so after the initial animation finished. And in fact the problem has nothing to do with animation. We’ll have to look at this.

By the way, in looking at your code, your Binding conversion functions really should not be having any side-effects.

What do you mean here?

Have you got ideas how to fix it?

What is our next step?

In general one cannot depend on the order or frequency in which Bindings are evaluated. That’s part of why having side-effects is a bad idea, as well as wanting to keep them simple and fast.

Why do you need to have any side-effects?

What is side-effects mean? describe please or provide a link where I can read about it
And if it is bad idea how to avoid it?

programming languages - What is a "side effect?" - Software Engineering Stack Exchange

Thanks for link.

This example copied from my project, so this is the reason of existing a lot of useless code including side-effects.

What about main bug? Do you know how to fix it?

We have discovered a bug associated with this and it will be fixed in the next release, probably in a week or so.

Try 1.7.28 which is currently at GoJS - Build Interactive Diagrams for the Web.

Thank you!
It works =) You are one of the greatest developers who answer and fix bugs very quick!

In this case Simon deserves the credit. Thanks for testing it promptly.