From 5ef1fc8746ebae455e120caf9acc5fc9b9c3becb Mon Sep 17 00:00:00 2001 From: falkTX Date: Sat, 20 Aug 2022 22:23:05 +0100 Subject: [PATCH 1/6] Fix Bidoo crashes, print self-test action each time being run Signed-off-by: falkTX --- plugins/Bidoo | 2 +- src/CardinalUI.cpp | 16 +++++++++++----- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/plugins/Bidoo b/plugins/Bidoo index 5d2f572..b88130f 160000 --- a/plugins/Bidoo +++ b/plugins/Bidoo @@ -1 +1 @@ -Subproject commit 5d2f5721e2701f747d0410fc407e6b1e782f16dc +Subproject commit b88130f6b6311c8cd58669c20cc9842f2ea81575 diff --git a/src/CardinalUI.cpp b/src/CardinalUI.cpp index 425975c..667fef6 100644 --- a/src/CardinalUI.cpp +++ b/src/CardinalUI.cpp @@ -469,38 +469,44 @@ public: const ScopedContext sc(this); context->patch->clear(); - context->window->step(); app.idle(); const rack::math::Vec mousePos(getWidth()/2,getHeight()/2); context->event->handleButton(mousePos, GLFW_MOUSE_BUTTON_LEFT, GLFW_RELEASE, 0x0); context->event->handleHover(mousePos, rack::math::Vec(0,0)); - context->window->step(); app.idle(); for (rack::plugin::Plugin* p : rack::plugin::plugins) { for (rack::plugin::Model* m : p->models) { + d_stdout(">>>>>>>>>>>>>>>>> LOADING module %s : %s", p->slug.c_str(), m->slug.c_str()); rack::engine::Module* const module = m->createModule(); DISTRHO_SAFE_ASSERT_CONTINUE(module != nullptr); rack::CardinalPluginModelHelper* const helper = dynamic_cast(m); DISTRHO_SAFE_ASSERT_CONTINUE(helper != nullptr); + d_stdout(">>>>>>>>>>>>>>>>> LOADING moduleWidget %s : %s", p->slug.c_str(), m->slug.c_str()); rack::app::ModuleWidget* const moduleWidget = helper->createModuleWidget(module); DISTRHO_SAFE_ASSERT_CONTINUE(moduleWidget != nullptr); + d_stdout(">>>>>>>>>>>>>>>>> ADDING TO ENGINE %s : %s", p->slug.c_str(), m->slug.c_str()); context->engine->addModule(module); + + d_stdout(">>>>>>>>>>>>>>>>> ADDING TO RACK VIEW %s : %s", p->slug.c_str(), m->slug.c_str()); context->scene->rack->addModuleAtMouse(moduleWidget); for (int i=5; --i>=0;) app.idle(); + d_stdout(">>>>>>>>>>>>>>>>> REMOVING FROM RACK VIEW %s : %s", p->slug.c_str(), m->slug.c_str()); context->scene->rack->removeModule(moduleWidget); - context->engine->removeModule(module); - context->window->step(); - delete module; + app.idle(); + + d_stdout(">>>>>>>>>>>>>>>>> DELETING module + moduleWidget %s : %s", p->slug.c_str(), m->slug.c_str()); + delete moduleWidget; + app.idle(); } } From 69cd61d9ae28ca147d4fe52837f83c01e07104f2 Mon Sep 17 00:00:00 2001 From: falkTX Date: Sat, 20 Aug 2022 23:11:59 +0100 Subject: [PATCH 2/6] Run lv2lint through xvfb-run Signed-off-by: falkTX --- .github/workflows/build.yml | 9 ++++++++- dpf | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 5d018cb..ce42029 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1066,6 +1066,13 @@ jobs: make NOOPT=true SKIP_STRIPPING=true -j $(nproc) - name: Run Cardinal self-tests run: | + #xvfb-run valgrind \ + #--gen-suppressions=all \ + #--exit-on-first-error=yes \ + #--error-exitcode=255 \ + #--leak-check=no \ + #--track-origins=yes \ + #--suppressions=./dpf/utils/valgrind-dpf.supp xvfb-run ./bin/Cardinal selftest - name: Validate LV2 ttl syntax run: | @@ -1082,7 +1089,7 @@ jobs: cp -r bin/CardinalFX.lv2 bin/CardinalSynth.lv2 \ /usr/lib/lv2/{atom,buf-size,core,data-access,kx-control-input-port-change-request,kx-programs,instance-access,midi,mod,parameters,port-groups,port-props,options,patch,presets,resize-port,state,time,ui,units,urid,worker}.lv2 \ ${LV2_PATH} - lv2lint -s lv2_generate_ttl -l ld-linux-x86-64.so.2 -M nopack $(lv2ls) + xvfb-run lv2lint -s lv2_generate_ttl -l ld-linux-x86-64.so.2 -M nopack $(lv2ls) - name: Test LV2 plugin run: | export LV2_PATH=/tmp/lv2-path diff --git a/dpf b/dpf index 71b1797..7b8eefb 160000 --- a/dpf +++ b/dpf @@ -1 +1 @@ -Subproject commit 71b17971f63dc9def67faea500dcbaced979efb4 +Subproject commit 7b8eefb59f62dd51e08cdda5c33478781eccb072 From 9cd4ff11777c5500f042ed7c241efc4ef0e82ca3 Mon Sep 17 00:00:00 2001 From: falkTX Date: Sun, 21 Aug 2022 18:39:08 +0100 Subject: [PATCH 3/6] Skip lv2lint validation for now Signed-off-by: falkTX --- .github/workflows/build.yml | 8 ++++---- dpf | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ce42029..290090c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1089,13 +1089,13 @@ jobs: cp -r bin/CardinalFX.lv2 bin/CardinalSynth.lv2 \ /usr/lib/lv2/{atom,buf-size,core,data-access,kx-control-input-port-change-request,kx-programs,instance-access,midi,mod,parameters,port-groups,port-props,options,patch,presets,resize-port,state,time,ui,units,urid,worker}.lv2 \ ${LV2_PATH} - xvfb-run lv2lint -s lv2_generate_ttl -l ld-linux-x86-64.so.2 -M nopack $(lv2ls) + #xvfb-run lv2lint -s lv2_generate_ttl -l ld-linux-x86-64.so.2 -M nopack $(lv2ls) - name: Test LV2 plugin run: | export LV2_PATH=/tmp/lv2-path for p in $(lv2ls); do \ env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \ - valgrind \ + xvfb-run valgrind \ --error-exitcode=255 \ --leak-check=no \ --track-origins=yes \ @@ -1106,7 +1106,7 @@ jobs: run: | for p in $(ls bin/*.vst/*.so); do \ env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \ - valgrind \ + xvfb-run valgrind \ --error-exitcode=255 \ --leak-check=no \ --track-origins=yes \ @@ -1117,7 +1117,7 @@ jobs: run: | for p in $(ls bin/ | grep vst3); do \ env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \ - valgrind \ + xvfb-run valgrind \ --error-exitcode=255 \ --leak-check=no \ --track-origins=yes \ diff --git a/dpf b/dpf index 7b8eefb..6cf523a 160000 --- a/dpf +++ b/dpf @@ -1 +1 @@ -Subproject commit 7b8eefb59f62dd51e08cdda5c33478781eccb072 +Subproject commit 6cf523adada34df242dc1bf4b33bfb025284c631 From 5700074e61127e6faa6b402936ff5c0a96047804 Mon Sep 17 00:00:00 2001 From: falkTX Date: Sun, 21 Aug 2022 19:52:50 +0100 Subject: [PATCH 4/6] Try with updated lv2lint Signed-off-by: falkTX --- .github/workflows/build.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 290090c..b0da94b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1044,8 +1044,8 @@ jobs: - name: Set up dependencies run: | # custom repos - wget https://launchpad.net/~kxstudio-debian/+archive/kxstudio/+files/kxstudio-repos_10.0.3_all.deb - sudo dpkg -i kxstudio-repos_10.0.3_all.deb + wget https://launchpad.net/~kxstudio-debian/+archive/kxstudio/+files/kxstudio-repos_11.1.0_all.deb + sudo dpkg -i kxstudio-repos_11.1.0_all.deb sudo apt-get update -qq # build-deps sudo apt-get install -yqq libdbus-1-dev libgl1-mesa-dev liblo-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev @@ -1089,7 +1089,7 @@ jobs: cp -r bin/CardinalFX.lv2 bin/CardinalSynth.lv2 \ /usr/lib/lv2/{atom,buf-size,core,data-access,kx-control-input-port-change-request,kx-programs,instance-access,midi,mod,parameters,port-groups,port-props,options,patch,presets,resize-port,state,time,ui,units,urid,worker}.lv2 \ ${LV2_PATH} - #xvfb-run lv2lint -s lv2_generate_ttl -l ld-linux-x86-64.so.2 -M nopack $(lv2ls) + xvfb-run lv2lint -s lv2_generate_ttl -l ld-linux-x86-64.so.2 -M nopack $(lv2ls) - name: Test LV2 plugin run: | export LV2_PATH=/tmp/lv2-path From ad1834cf65b36473b1092cfefe4a8eca24db7e38 Mon Sep 17 00:00:00 2001 From: falkTX Date: Sun, 21 Aug 2022 20:37:23 +0100 Subject: [PATCH 5/6] Cache pluginval builds, add missing lv2 extension packages Signed-off-by: falkTX --- .github/workflows/build.yml | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b0da94b..6eab653 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1041,6 +1041,21 @@ jobs: - uses: actions/checkout@v2 with: submodules: recursive + - name: Set up cache + id: cache + uses: actions/cache@v2 + with: + path: | + src/Rack/dep/bin + src/Rack/dep/include + src/Rack/dep/lib + src/Rack/dep/share + src/Rack/dep/jansson-2.12 + src/Rack/dep/libarchive-3.4.3 + src/Rack/dep/libsamplerate-0.1.9 + src/Rack/dep/speexdsp-SpeexDSP-1.2rc3 + src/Rack/dep/zstd-1.4.5 + key: pluginval-v${{ env.CACHE_VERSION }} - name: Set up dependencies run: | # custom repos @@ -1050,7 +1065,7 @@ jobs: # build-deps sudo apt-get install -yqq libdbus-1-dev libgl1-mesa-dev liblo-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev # runtime testing - sudo apt-get install -yqq carla-git lilv-utils lv2-dev lv2lint valgrind xvfb + sudo apt-get install -yqq carla-git lilv-utils lv2-dev lv2lint kxstudio-lv2-extensions mod-lv2-extensions valgrind xvfb - name: Set up ccache uses: hendrikmuhs/ccache-action@v1.2 with: From 32dadb10bfdce2bb6b400d9934f036eb000cbd60 Mon Sep 17 00:00:00 2001 From: falkTX Date: Tue, 23 Aug 2022 00:28:05 +0100 Subject: [PATCH 6/6] Make Audio2 consume a tiny bit less cpu --- plugins/Cardinal/src/plugin.hpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/plugins/Cardinal/src/plugin.hpp b/plugins/Cardinal/src/plugin.hpp index 204e822..96a5a9b 100644 --- a/plugins/Cardinal/src/plugin.hpp +++ b/plugins/Cardinal/src/plugin.hpp @@ -70,6 +70,9 @@ float d_findMaxNormalizedFloat(const float floats[], const std::size_t count) for (std::size_t i=1; i maxf2)