Release notes
## What's New in v3.5.3
We’re excited to present version 3.5.3 of live-backgroundremoval-lite! This release brings powerful improvements to the build system, added tooling for developers, and enhanced cross-platform support. Here’s a friendly overview of what’s new:
### 🚀 Build System & Tooling Enhancements
- **AddressSanitizer (ASan) & UndefinedBehaviorSanitizer (UBSan) Support**
You can now easily enable ASan and UBSan during builds with the new `ENABLE_ASAN` and `ENABLE_UBSAN` CMake options. This makes it much easier to identify bugs and potential issues across all platforms (with built-in checks for non-MSVC environments)!
- **CMake Presets Update**
All build presets are now consistent and include the latest sanitizer options, improving out-of-the-box experience on macOS, Windows, and Linux. There’s also a dedicated macOS development preset just for sanitizer builds.
- **Robust Dependency Resolution**
Dependency finding for core libraries (`CURL`, `fmt`, `ncnn`) now prefers the CMake config route, only falling back to PkgConfig as needed, and provides clearer errors if packages are missing. The old `USE_PKGCONFIG` option has been removed, making configuration simpler and more reliable.
- **Universal Binary Script for macOS**
New script (`scripts/install-vcpkg-macos-asan.sh`) allows building vcpkg dependencies for both Apple Silicon (`arm64`) and Intel (`x64`), then combining them into universal binaries using `lipo`. This streamlines development for macOS users who want to take advantage of ASan/UBSan.
### 🐞 Early Win: ASan Catches a Startup Crash!
The just-added AddressSanitizer support has already proven valuable—ASan detected a serious crash bug on startup during testing. This rapid feedback highlights the importance of sanitizer-enabled builds. We encourage developers and contributors to make use of these new options to catch and resolve issues early!
### 🧩 New Library Integration
- **exprtk**
The `exprtk` library is now included, enabling more powerful and flexible mathematical expression handling in the future.
---
Thanks for using live-backgroundremoval-lite! These enhancements make development and debugging even smoother, particularly on macOS and for contributors working with multiple platforms. Happy coding!
— The live-backgroundremoval-lite Team