Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 17:01

    jcelerier on master

    Fix build issue in NodeTest.cpp (compare)

  • 16:59

    jcelerier on master

    Fix build of name_validation.cp… (compare)

  • 13:54

    jcelerier on master

    [code] Last round of clang-form… (compare)

  • 10:47

    jcelerier on master

    [code] Various code fixes, add … [code] Fix incorrect code style… (compare)

  • Aug 10 14:13

    jcelerier on master

    [node] Fix a deeper sorting iss… (compare)

  • Aug 10 09:03

    jcelerier on master

    [ctre] Only really works in c++… (compare)

  • Aug 10 08:05

    jcelerier on master

    [msvc]ci fixes (compare)

  • Aug 09 21:49

    jcelerier on master

    [node] Replace static regexes w… (compare)

  • Aug 09 19:04

    jcelerier on master

    [ci] Fix issues due to formating (compare)

  • Aug 09 17:23

    jcelerier on master

    [ci] Fix issues due to formating (compare)

  • Aug 09 14:29

    jcelerier on master

    [code] Further clang-tidy fixes (compare)

  • Aug 09 14:00

    jcelerier on master

    [ci] build fix due to clang-for… [code] Fix many issues found th… (compare)

  • Aug 09 13:17

    jcelerier on master

    [code] Clang-format (compare)

  • Aug 09 12:32

    jcelerier on master

    [code] Clang-format (compare)

  • Aug 09 12:14

    jcelerier on master

    [cmake] Fix useless static libr… (compare)

  • Aug 09 11:15

    jcelerier on master

    [ci] More fixes, reinstate OSSI… (compare)

  • Aug 09 10:30

    jcelerier on master

    [ci] More fixes, reinstate OSSI… (compare)

  • Aug 08 22:51

    jcelerier on master

    [ci] Custom build of re2 to fix… (compare)

  • Aug 08 20:00

    jcelerier on master

    [ci] Use GH action for coverall… (compare)

  • Aug 08 18:44

    jcelerier on master

    [ci] Fixes for coverage build (compare)

djiamnot
@djiamnot:matrix.org
[m]
very cool!
djiamnot
@djiamnot:matrix.org
[m]
thank @thibaudk ! It all works as expected!
Thibaud Keller
@thibaudk
cool, hope it suits you needs !
djiamnot
@djiamnot:matrix.org
[m]
(almost: I get an empty window when call gui() on a OSSIA_Node)
yes, it's a good start! getting my feet wet but I'm very enthusiastic about the potential
Thibaud Keller
@thibaudk

(almost: I get an empty window when call gui() on a OSSIA_Node)

the gui method will create widgets for the node's children, if the node is empty, the window will be too

I should probably prevent this tho, thanks for pointing it out
djiamnot
@djiamnot:matrix.org
[m]
oh, good point. I did not pay attention to this detail! Of course, it makes sense! Thanks for the clarification
Jean-Michaël Celerier
@jcelerier
hi @x37v, actually the echo thing should be fixed in feature/async_protocols
(sorry about the lag with the PR, I had a lot of bugfixes to push on score, now I'm on libossia until the end of the week !)
I'll try to make another round of testing
but if you can try this example, I think that it maps to what you want : https://github.com/ossia/libossia/blob/feature/async_protocols/examples/Network/OSCQuery_bridge.cpp
@thibaudk for the SC patches I think that you should rebase on top of current SC master branch prior to anything
git remote add supercollider  https://github.com/supercollider/supercollider
git fetch supercollider
git rebase supercollider/master
should do the trick (hopefully you won't have conflicts :))
Thibaud Keller
@thibaudk
thanks @jcelerier , I should it's been a while
Alex Norman
@x37v
@jcelerier oh great, so you have oscquery in async_protocols now! Last week I think you said it wasn't in there. I'll give this a go! thanks
Jean-Michaël Celerier
@jcelerier
well, it's only partially there
Alex Norman
@x37v
oh, whats missing?
Jean-Michaël Celerier
@jcelerier
it's not yet been refactored to use the new socket mechanism (which allows to choose udp, unix domain sockets, and other transport-level protocols) indepedently
(and this part has not been tested at all also)
Alex Norman
@x37v
okay, as far as OSCQuery goes, I only care about the HTTP, WS i/o and UDP OSC in.. but I want to be able to add additional UDP OSC out..
should that all work or should I wait?
and.. is there anything i can do to help?
Jean-Michaël Celerier
@jcelerier
testing and reporting any issues / weird behaviour you'd see would be great :) thanks !
Alex Norman
@x37v
great!
Alex Norman
@x37v
BTW, i thought part of this refactor was being able to expose a poll method or something that controlled what thread the callbacks/processing happened in? is there an example of that?
Jean-Michaël Celerier
@jcelerier
Yep, the protocols now take a network_context argument
Which can then be polled / run / ...
It uses asio behind the hood
Alex Norman
@x37v
great!
Alex Norman
@x37v
@jcelerier have you all considered conan for managing dependencies? I put together a basic recipe and pushed a branch, it uses conan to get/build boost there are a number of other libossia deps that could go this way too..
here is an example cmake file that shows the usage of a version of libossia i packaged with conan: https://github.com/Cycling74/libossia/blob/xnor/conan/examples/Conan/CMakeLists.txt
the branch https://github.com/Cycling74/libossia/tree/xnor/conan
Jean-Michaël Celerier
@jcelerier
hi ! yes, and I had opted out against it when I tried for the following reasons (my notes are from 2019 so it could be time to revisit though):
  • not possible to parallelize the download of dependencies (when I had tried to port ossia it took something like 10x longer than git clone --recursive -j16 which is really not good for CI)
  • multi-configuration builds seemed complicated
  • made it hard to "just" clone the repo, open the CMakeLists.txt in the IDE we use (QtCreator) and be ready to go, in particular I quite often have students doing internships, group projects, etc... on the code and from experience every additional step makes it much harde for them to get started with the actual work. Though https://docs.conan.io/en/latest/howtos/cmake_launch.html could alleviate that a bit.
Jean-Michaël Celerier
@jcelerier
packaging libossia itself would be very nice, likely we can reuse your example. Do you think it'd be easy to update the conan repo automatically from, say, GH actions ?
Alex Norman
@x37v
yeah, packaging is as easy as conan create . user/channel the issue is publishing though. you need to have a conan repo you can write to.
We're planning to make a public repo for our shared work, which is where i was planning to put libossia when I create the package.. but you'd need to get your own or access to some other public one for automating publishing for your organization
jfrog provides a free tier for conan repos.. i'm using that right now, but they require activity every 2 weeks or so, download or upload, which sometimes is unreasonable, if you don't release often you mostly just used cached installs
but, publishing is also easy once you have a place to put your packages
Alex Norman
@x37v
yeah, my example build doesn't require a user do anything other than mkdir build && cd build && cmake .. && make but they do have to have both cmake and conan installed.. so that is an additional hurdle.
I do get the multi-config thing too, i'm not sure how to delay the conan download/build/install until after a configuration is selected.. so maybe migrating more deps to conan doesn't make sense for this project, but boost (as I already did) considering its a requirement for all the builds, might.
once nice thing on that though, conan downloads binaries if there are binaries for your configuration already published (for instance, static boost library for clang8 macos), and the packages are cached in their own place so you take a hit the first time you do a build but after that, if you don't change versions or configurations, things move pretty fast
Alex Norman
@x37v
on another note, so far that feature/async_protocols echo is working great! need to get some others to test on it but I believe this has solved the thing I wanted with OSC out.
I will have a small PR enabling a no local input OSC protocol
Alex Norman
@x37v
Jean-Michaël Celerier
@jcelerier
super, thanks !
@avilleret do you think we could :
  • merge the github-actions branch
  • rebase async_protocols on it (I'll do it)
  • merge that one into master (I just have a couple commits to push before that but it should be done soon)
  • tag a new major version :D

.. but you'd need to get your own or access to some other public one for automating publishing for your organization

yep, I used to have a jfrog one but it seems it has been deleted with their recent change heh

hosting one should not be a problem though
Alex Norman
@x37v
yeah, they ditched bintray but have another conan thing you can do.. its all a little confusing to me but seems like hosting is the best route considering those limitations anyway
Jean-Michaël Celerier
@jcelerier
@x37v just in case : the latest commit may break api depending on which classes you were using if you're on feature/async_protocols
Alex Norman
@x37v
okay, i'm working on my own forked branch but i'd like to keep up with your branch so i'll try to merge soon and check, thanks for the heads up @jcelerier
Jean-Michaël Celerier
@jcelerier
alright, keep in mind that I'm also rebasing it on master so if you have some work, the easiest would be to go on origin/feature/async_protocols, cherry-pick your new commits and set your work branch to that