d308044690
RocksDB's install-shared writes a rocksdb.pc with both:
-isystem third-party/gtest-1.8.1/fused-src
-std=c++17
The previous PR fix scrubbed the bad include path but left -std=c++17.
pkg-config consumers inherit that flag via INTERFACE_COMPILE_OPTIONS,
which propagates to CMake imported targets as a compile option.
Result: Triangles' configure sets CXX_STANDARD 20, but the compile
command line ends up with '-std=c++20 ... -std=c++17' (rocksdb.pc's
flag comes last and wins). GCC reports:
error: defaulted 'bool operator!=...' only available with
'-std=c++20' or '-std=gnu++20'
Strip -std=c++17 from Cflags. Triangles sets its own standard via
CMake; the flag from rocksdb.pc was never useful anyway (consumers
should choose their own standard).
This bug only surfaced now because we replaced librocksdb-dev 6.11.4
with a locally-built RocksDB 8.9.1 — the system package's .pc didn't
have this -std flag, the freshly-built one does.
Version Bump Script
Updates the version number across all files in the repo from a single command.
Usage
Set a specific version:
bash scripts/bump-version.sh 5.7.0
Or edit src/clientversion.h first, then sync everything else:
bash scripts/bump-version.sh
What it updates
src/clientversion.h(source of truth)src/version.htriangles-qt.proDockerfile- All packaging manifests (Docker, Snap, Scoop, WinGet, RPM, Flatpak, Debian, AppImage)
What still needs manual review after running
packaging/appstream/...metainfo.xml— add a new<release>entryREADME.md— update header version if desired- Any documentation with download URLs