-
Notifications
You must be signed in to change notification settings - Fork 20
ChangeLog
Paul edited this page Oct 11, 2024
·
16 revisions
The clap wrapper is still an undergoing project, and we are not yet at a 1.0 release.
In August 2023, we started the process of tagging checkpoint versions either as we reached internal milestones or before we began new substantial development
0.11.0 is under preparation; this draft changelog entry is as-of next f898db307fd81500b130088b2668bc2b5800ea07
-
Windows Standalone substantial improvements
- The Windows Standalone has a complete refactor
- An audio/midi settings screen is in place
- builds with various compilers and compiler versions
- Properly defines unicode, handles UTF16 files
- correctly factor CMake to not leak NOMINMAX, etc..
- complies without warning even at high warning levels
-
VST3
- Test the VST3 extensively with linux hosts, and adjust
- Implement several API points required for the VST3 in Ardour
- Implement Steinberg::IPlugViewContentScaleSupport properly for scaling on Linux/Win
- Implement SingleComponentEffect::getBusInfo to respond earlier, fixing an Ardour crash
- clap param_refresh forces accurate VST3 parameter refresh
- Correctly convert UTF8/UTF16 for internal strings, allowing clap parameter names with extended charsets to work in VST3
- Fix an off-by-one error in stepped value conversions reflecting as VST3 stepped parameters
-
AUV2
- Allow a user specified INSTRUMENT_TYPE
- Allow several strategies for constructing the AUV2 state stream, including one which allows compatibility with ausdk examples and another allowing compatibility with JUCE AUv2
- Make the host name reported by the plugin consistent with the VST3
- Fix a memory double-free in host get name.
- clap param_refresh forces accurate AUv2 parameter refresh
- AUv2 request resize makes host window resize
- the MACOSX_EMBEDDED_CLAP option also uses that clap for plist creation
-
Other wrapper fixes
- request_resize doesn't block on can_resize
- Mac standalone timer halts properly avoiding a crash-on-exit
-
CMake and C++ infrastructure
- Update CPM to 0.40.2
- Update fmt to 11.0
- Set flags correctly for C++ 20 builds
- Change clap wrapper private/public flags to avoid Werror etc leaking to upstream targets
- Support CMAKE_UNITY builds
- All stand-alonee accurately set OUTPUT_NAME cmake property
- Include one ARA cleanup commit for the VST3
- Only set
CMAKE_MSVC_RUNTIME_LIBRARY
(to static) if it is not set, allowing parentCMakeLists
to make their own choice - Include
timer.cpp
on Linux for VST3 SDK versions 3.7.9 or newer - Update the version in CMakeLists.txt (in 0.10.0 it was still 0.9.2; now it is 0.10.1)
- Add ARA support to the VST3 wrapper. If your underlying CLAP implements the ARA extension, your wrapped VST3 will correctly wrap the ARA API
- Add a small example of a clap plugin which builds self contained VST3, AUv2, etc...; build this in our CI pipeline as a test.
- Fix an off-by-one error in VST3 stepped params
- Fix a set of AUv2 crashes for plugins which do not implement the
gui
extension - Add a build time option for the wrapper to statically locate
clap_entry
as opposed to viadlopen
on self or remote clap.
- Fixed to support VST3 program changes
- Implement offline processing for clap
- Implement the IsRecording flag for AUv2
- Allow child NSView to resize wrapper in AUv2
- VST3 wrapper feature complete (Context menu support added)
- AUv2 wrapper feature complete
- Standalone working, in progress
- Check active state before querying latency. Issue 229 by @Schroedingers-Cat
- VST3 programs / MIDI Program Changes
- fixed release build issues
- CMake Project Version reflected in version struct for CLAP host
- IMIDIMapping wasn't correctly used in VST3 wrapper
- Audio Unit v2 (AUv2) wrapper is completed
- Uses CLAP 1.2.0 now
- Hostnames for different wrapper flavors are fixed
- fixed Cocoa namespaces clashes
- better unicode path handling on Windows
- Standalone App on Windows is now a proper application
- Various small bugfixes and improvements
- A substantial rework of the CMake infrastructure, making the code more library like, able to download dependencies, and more
- Changes to allow operation as a top-level or subordinate cmake.
- Support for a variety of linking modes, including co-linked single products, included bundles, and standalone plugins
- A shell for AUv2 work
- Allow builds back to macOS 10.11; Set the default build target to 10.13
- Implement linux Timer and FD support, allowing full linux implementation of many test cases
- Turn on
-Wall -Wextra -Wpedantic -Werror
on linux - Suppress CLAP Param Change events for parameters under edit
- Implement param to/from string VST3 API
- Output note ports in CLAP become output event queues in VST3; CLAP_EVENT_NOTE_* is transmitted out (but note expressions and MIDI are not yet)
- Several small crash and lifecycle fixes on various OSes
- 0.4.0 is the first tagged release.
- It can create a win/mac VST3 with a subset of the spec which runs with a remote clap.
- It implements the entire clap host API required to proxy to multiple formats.