Published June 5, 2026
| Version v3.2.2
Software
Open
Isurwars/Correlation: Correlation v3.2.2
Authors/Creators
Description
[3.2.2] - 2026-06-04
Changed
- Static Third-Party Builds: Configured
nativefiledialog-extended(nfd),Slint,HDF5, andArrow/Parquetto compile statically when built from source (FetchContent). This resolves dynamic library loading issues for target deployment platforms (such as AUR and macOS bundles). - macOS App Bundling: Integrated CMake's standard
BundleUtilities(fixup_bundle) during macOS installation to copy and bundle TBB, HDF5, and Slint libraries from Homebrew or local paths, rewriting library load paths to relative@executable_pathreferences for completely standalone DMG execution. - Dynamic Link RPATH on macOS: Changed macOS
INSTALL_RPATHfrom Linux-style$ORIGINto macOS-native@loader_pathin CMake targets.
Added
- Release Dependency Verification: Integrated automated post-build checks into the GitHub Actions release workflow (
release.yml), asserting static linking oflibnfdon Linux vialddand verifying dynamic library relocation on macOS usingotool -Lto prevent release packages with broken library paths.
[3.2.1] - 2026-06-03
Added
- Dynamic Plot Format Switch: Removed the hardcoded
.svgextension from the default filename in the plot save dialog, allowing the dialog's native filter selection to automatically append either.svgor.pdfto the output file path.
Changed
- Modern Dialog Integration: Migrated the desktop dialog backend from the patched header-only
portable-file-dialogsto the native, cross-platform librarynativefiledialog-extended. - Synchronous UX: Converted the file open/save dialog interactions from a polled asynchronous model (using a 100ms UI timer) to a synchronous blocking model.
- UI Code Cleanup: Removed the polling
Timerand thecheck_file_dialog_statuscallback declaration from the frontend Slint UI.
Fixed
- Linux Dependency Binding: Configured automatic installation of GTK3 development headers (
libgtk-3-dev) in GitHub Actions workflows to ensure cross-platform GUI builds compile successfully. - CMake GUI Build Guards: Wrapped GUI-specific target installation and desktop setup settings inside
if(BUILD_GUI)conditions, allowing CLI-only or documentation-only workflows (such asdocs.yml) to configure and run without GTK/GUI package dependencies.
[3.2.0] - 2026-06-01
Added
- Comprehensive Bounds and Cross-Validation Guards: Added strict parameter validation to both the CLI and Backend to fail early on invalid inputs:
- Validates that bin widths are strictly less than their respective maximum bounds (
r_bin_width < r_maxandq_bin_width < q_max). - Limits angular bin widths (
angle_bin_width <= 180.0°anddihedral_bin_width <= 360.0°). - Ensures frame limits are valid (
max_frame >= -1) and cross-validates frame ranges (min_frame <= max_frame). - Rejects zero-value smoothing bandwidths (
smoothing_sigma > 0.0) when post-processing smoothing is enabled. - Ensures at least one export format (CSV, HDF5, or Parquet) is enabled when running calculations.
- Validates that bin widths are strictly less than their respective maximum bounds (
- Robust Parameter Validation Tests: Added 18 new unit tests verifying all parameter boundary conditions and validation failure paths.
- Restructured GUI Layout: Reorganized the Slint-based Graphical User Interface into a modern, stable 3-column dashboard:
- Consolidates file loading, metadata summary, and analysis run/save triggers into a single control card on the left.
- Groups all settings into a central tabbed card (Trajectory options, calculator parameters, file export formats, and preset/analyses setup).
- Places a stable, always-visible plot preview panel on the right.
- Implements state-based opacity transitions and overlay blocking to disable the options and preview panels until their prerequisites (loading a file and running an analysis) are completed.
Fixed
- Path Separation and Normalization: Applied
lexically_normal()to all default output base path generation logic to prevent platform/standard library separator and trailing slash discrepancies (e.g., resolving duplicate slashes like//in paths). - CLI11 Slash Options parsing on Windows: Disabled Windows-style option prefixes (
/) in CLI11 to prevent absolute paths starting with/(such as/data/...) from being parsed as options, correcting test failures on Windows CI.
Full Changelog: https://github.com/Isurwars/Correlation/compare/v3.2.1...v3.2.2
Files
Isurwars/Correlation-v3.2.2.zip
Files
(41.3 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:0438b351a4a5f2cf2a0f4055df6d9a9e
|
41.3 MB | Preview Download |
Additional details
Related works
- Is supplement to
- Software: https://github.com/Isurwars/Correlation/tree/v3.2.2 (URL)
Software
- Repository URL
- https://github.com/Isurwars/Correlation