diff --git a/.github/ISSUE_TEMPLATE/bug.yaml b/.github/ISSUE_TEMPLATE/bug.yaml
index 371cd2e..d065fb3 100644
--- a/.github/ISSUE_TEMPLATE/bug.yaml
+++ b/.github/ISSUE_TEMPLATE/bug.yaml
@@ -5,7 +5,7 @@ body:
id: version
attributes:
label: Version
- value: "25.10"
+ value: "25.12"
validations:
required: true
- type: dropdown
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 19fb6c8..455397b 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -3,7 +3,7 @@ name: build
on: [push, pull_request]
env:
- CACHE_VERSION: 12
+ CACHE_VERSION: 14
CARDINAL_UNDER_WINE: 1
CIBUILD: true
DEBIAN_FRONTEND: noninteractive
@@ -158,7 +158,7 @@ jobs:
*.tar.xz
macos:
- runs-on: macos-13
+ runs-on: macos-14
steps:
- uses: actions/checkout@v4
with:
diff --git a/Makefile b/Makefile
index 080bd4d..28ac96c 100644
--- a/Makefile
+++ b/Makefile
@@ -15,7 +15,7 @@ include $(ROOT)/Makefile.base.mk
# src/CardinalPlugin.cpp `getVersion`
# utils/macOS/Info_{JACK,Native}.plist
# .github/ISSUE_TEMPLATE/bug.yaml src/CardinalCommon.cpp src/CardinalPlugin.cpp utils/macOS/Info_{JACK,Native}.plist
-VERSION = 25.10
+VERSION = 25.12
# ---------------------------------------------------------------------------------------------------------------------
# Build targets
diff --git a/docs/OSC-REMOTE-CONTROL.md b/docs/OSC-REMOTE-CONTROL.md
index 6867317..ccdede8 100644
--- a/docs/OSC-REMOTE-CONTROL.md
+++ b/docs/OSC-REMOTE-CONTROL.md
@@ -23,6 +23,17 @@ If all went well opening the "Engine" menu again should show a checkmark, indica
For the moment there is no error dialog or information in case things go wrong.
If you are unable to connect, make sure your OS network firewall settings allows opening port 2228.
+### Automatic startup on headless builds
+
+If you do a headless build there is no UI to click on to enable remote control, so for this reason the headless builds (standalone, not plugins) will have OSC remote control enabled by default.
+
+To change the port for the OSC server use the `CARDINAL_REMOTE_HOST_PORT` environment variable, for example:
+```sh
+env CARDINAL_REMOTE_HOST_PORT=2228 CardinalNative
+```
+
+This can be useful for starting Cardinal where no mouse/keyboard are attached but you want remote control.
+
## TouchOSC example setup
A TouchOSC compatible file is available [here](https://github.com/DISTRHO/Cardinal/raw/main/patches/touchosc/24-direct-fader-params.tosc).
diff --git a/plugins/Cardinal/plugin.json b/plugins/Cardinal/plugin.json
index 1765211..003ff9f 100644
--- a/plugins/Cardinal/plugin.json
+++ b/plugins/Cardinal/plugin.json
@@ -171,6 +171,7 @@
"description": "Converts a monophonic audio signal to CV pitch",
"manualUrl": "https://github.com/DISTRHO/Cardinal/blob/main/docs/CARDINAL-MODULES.md#audio-to-cv-pitch",
"tags": [
+ "Tuner",
"Utility"
]
},
diff --git a/plugins/Sapphire b/plugins/Sapphire
index ef10da4..191fbee 160000
--- a/plugins/Sapphire
+++ b/plugins/Sapphire
@@ -1 +1 @@
-Subproject commit ef10da4e2578162b2db2f6534857d6504491daf4
+Subproject commit 191fbee21a6be7d9c18eacc6f3a1804455d5358d
diff --git a/plugins/Venom b/plugins/Venom
index 1dc0e06..ba95ede 160000
--- a/plugins/Venom
+++ b/plugins/Venom
@@ -1 +1 @@
-Subproject commit 1dc0e0612b75fcf4849f28cb6e569e3b6f13981a
+Subproject commit ba95ede2370d340e0f7143dd897ff7e089bda336
diff --git a/plugins/plugins.cpp b/plugins/plugins.cpp
index ee9c2b0..7e6fe56 100644
--- a/plugins/plugins.cpp
+++ b/plugins/plugins.cpp
@@ -1069,10 +1069,17 @@ struct StaticPluginLoader {
return;
}
- // force ABI, we use static plugins so this doesnt matter as long as it builds
- json_t* const version = json_string((APP_VERSION_MAJOR + ".0").c_str());
- json_object_set(rootJ, "version", version);
- json_decref(version);
+ std::string version;
+ if (json_t* const versionJ = json_object_get(rootJ, "version"))
+ version = json_string_value(versionJ);
+
+ if (!string::startsWith(version, APP_VERSION_MAJOR + "."))
+ {
+ // force ABI, we use static plugins so this doesnt matter as long as it builds
+ json_t* const versionJ = json_string((APP_VERSION_MAJOR + ".0").c_str());
+ json_object_set(rootJ, "version", versionJ);
+ json_decref(versionJ);
+ }
// Load manifest
p->fromJson(rootJ);
@@ -3526,6 +3533,7 @@ static void initStatic__Venom()
p->addModel(modelVenomMousePad);
p->addModel(modelVenomMultiMerge);
p->addModel(modelVenomMultiSplit);
+ p->addModel(modelVenomSVF);
p->addModel(modelVenomOscillator);
p->addModel(modelVenomNORS_IQ);
p->addModel(modelVenomNORSIQChord2Scale);
diff --git a/src/CardinalCommon.cpp b/src/CardinalCommon.cpp
index 415e9d8..5fa78a9 100644
--- a/src/CardinalCommon.cpp
+++ b/src/CardinalCommon.cpp
@@ -99,7 +99,7 @@ void destroyStaticPlugins();
}
}
-const std::string CARDINAL_VERSION = "25.10";
+const std::string CARDINAL_VERSION = "25.12";
// -----------------------------------------------------------------------------------------------------------
diff --git a/src/CardinalPlugin.cpp b/src/CardinalPlugin.cpp
index dfe19a7..2b39c60 100644
--- a/src/CardinalPlugin.cpp
+++ b/src/CardinalPlugin.cpp
@@ -414,7 +414,7 @@ protected:
uint32_t getVersion() const override
{
- return d_version(0, 25, 10);
+ return d_version(0, 25, 12);
}
int64_t getUniqueId() const override
diff --git a/utils/macOS/Info_JACK.plist b/utils/macOS/Info_JACK.plist
index 8071faf..b5f832a 100644
--- a/utils/macOS/Info_JACK.plist
+++ b/utils/macOS/Info_JACK.plist
@@ -11,7 +11,7 @@
CFBundleIdentifier
studio.kx.distrho.cardinal.jack
CFBundleShortVersionString
- 25.10
+ 25.12
LSMinimumSystemVersion
10.15
NSHumanReadableCopyright
diff --git a/utils/macOS/Info_Native.plist b/utils/macOS/Info_Native.plist
index 73bfbe8..f7ac992 100644
--- a/utils/macOS/Info_Native.plist
+++ b/utils/macOS/Info_Native.plist
@@ -11,7 +11,7 @@
CFBundleIdentifier
studio.kx.distrho.cardinal.native
CFBundleShortVersionString
- 25.10
+ 25.12
LSMinimumSystemVersion
10.15
NSHumanReadableCopyright