Closed ErwanDouaille closed 2 years ago
@fredroy any link to your current python investigations ?
Hi, great work there!
Just to mention that since the python plugin got proper GIL handling, it is also possible to implement communication all on the python side: just start a python thread and do the message dispatch from there using the python package of your choice. From there it's fairly easy to exchange data using a Queue
between the communication thread and e.g. a script controller (in fact that was the main reason behind implementing GIL handling).
[ci-build][with-scene-tests]
Hello Erwan & @guparan
Was zmq installed on the CI ? I installed it on centos3 and ubuntu but not on macos & windows. It seems there is also a dependency on liboscpack that also needs to be installed Am I wrong ?
AFAIK, @bcarrez installed zmq on CI ubuntu (or maybe not, just before vacations).
For liboscpack it requires a specific version : https://github.com/SofaDefrost/sofa/blob/sofaCommunication/applications/plugins/Communication/README.md If you install liboscpack from the repository there is some bugs in it.
About windows and mac I never tested on it. Plus, I have to write a liboscpack cmake find :/
Thanks for the details. So It is consistent with what the CI is returning.
[ci-build]
[ci-build]
[ci-build][with-scene-tests]
Hi @ErwanDouaille
Could you update us about the status of this PR shall it be pursued, cleaned and merged ? Cheers Hugo
Hey,
This PR will be pursued, by the gsoc. I will chat with Rupesh tonight
I think there is some issues with the CI as the communication plugin ran fine on my MacOS. What do you say @ErwanDouaille ?
Hi @ErwanDouaille
How are you doing? It's been some time since your last update. Any news on the Communication plugin? @tgaugry did you use this work on Communication for your own purposes ?
Best!
Hey @hugtalbot,
As I remember, the communication plugin is imo ready to merge. It still need some polish like, code cleaning, avoid some useless copy, use some boost things ... but it´s working.
On CI, AFAIK only the core communication plugin is compiled. We don´t want to install libs for all the protocols implemented.
What you need to know is, there is still pending PR (https://github.com/SofaDefrost/sofa/pull/20 with another one) for this plugin. But they are not working and I don´t have any news from the contributor (Rupesh gsoc). This is not a big deal because the content of the PR is an addon for the plugin Qt serial protocol.
Let me know if you have any question :)
All scene examples in the Communication plugin crash, I guess the plugin is not activating thus generating these errors/crashes right @guparan ?
[ci-build][with-all-tests][force-full-build]
[ci-build][with-all-tests][force-full-build]
One warning added : CommunicationSubscriber.inl:36 (-Wreorder)
Two scene tests failing:
and several others on CentOS
Two scenes are related to network: maybe a socket is not properly closed?
[ci-build][with-all-tests]
[ci-build][with-all-tests]
Updated one last time and moved to https://github.com/sofa-framework/Communication Feel free to open issues and pull-requests there.
Here is a plugin communication The purpose of this plugin is to add ability to the users to simply send/receive data´s from sofa. Instead of creating many plugins for each implementation/hardware, we propose to regroup all of them in one communication plugin.
Actually there is two network protocol implemented :
Improvements :
This PR:
Reviewers will merge only if all these checks are true.