Skip to content

Rivet 0.11.0

Latest

Choose a tag to compare

@github-actions github-actions released this 13 Oct 17:11
· 5 commits to main since this release
  • Drop the IsolatedDeinit experimental feature from the released SwiftPM
    packages. Released Xcode toolchains reject experimental features outright,
    so package consumers could not compile RivetSystem away from trunk
    compilers; the clipboard change-observation teardown now uses a plain
    deinit over a nonisolated stored Timer, which every toolchain accepts.
  • Open the Windows taskboard reference window at a size that keeps every
    layout region usable. At the WinUI default window size the timing-chart
    row squeezed the task list into a virtualizing sliver whose row
    containers never realized — invisible in the UI and to UI Automation —
    and the native-UI end-to-end wait timed out waiting for the RPC-created
    row even though the RPC itself had succeeded.
  • Make packaging a clean native provenance boundary (#235). Windows package
    builds use MSBuild Rebuild, macOS recreates the SwiftPM scratch tree, and
    Linux already recreates its CMake tree; incremental caches can no longer
    produce a valid-looking distributable from older native objects.
  • Finish the shared host-side update story on Windows and Linux (#237) without
    duplicating the engine's security-critical Ed25519/parser/downloader stack.
    Signed release feeds now carry portable ZIP plus MSI on Windows and portable
    ZIP plus AppImage on Linux; make-updater selects explicit portable, msi,
    or appimage install shapes. The released Windows library adds a bounded,
    failure-reporting msiexec quit/install/relaunch handoff with stale-attempt
    cleanup and lease release, while the Linux library adds install-shape and
    post-commit AppImage relaunch helpers around the existing atomic adapter.
  • Complete released-package consumption (#238). Generated macOS hosts resolve
    Rivet from its tagged root SwiftPM package rather than a checkout path;
    Windows and Linux hosts link the released package's platform targets; the
    old Linux source fragment is now explicitly private to rivet::platform.
    Both Windows static-library projects now declare ARM64 configurations.
  • Preserve the clean release output contract from #236: the unpacked staging
    bundle is removed after installers, portable archives, manifests, SBOM, and
    notices are produced. The canonical Linux source manifest and anti-drift
    guard from #234 remain internal implementation details of the linkable
    package rather than an invitation for downstream source compilation.
  • Fix the linkable Windows and Linux chart packages to carry the shared
    chart batch codec/model implementation. The pre-release embedded roundtrip
    caught the prior compile-green/link-red package before 0.11.0 shipped.
  • Isolate NuGet restore state for the sibling Windows host and chart library
    projects. Both libraries now participate in the transitive restore graph,
    so clean downstream builds receive the WinUI/C++/WinRT projection headers;
    canonical directory-valued MSBuild output paths also remove the old MSB8004
    warning from referenced-library builds.
  • Make the Windows host template's CRT selection explicit and consistent.
    Self-contained packages use MT/MTd while development builds use MD/MDd,
    and the selected mode is applied to the executable and forwarded to every
    released static library, preventing clean-package LNK2038 failures.
  • Make the Windows chart library independent of downstream precompiled
    headers by declaring its C++/WinRT dependencies directly, avoiding Win32
    macro leakage, and using the correct Windows.UI.Color type.
  • Update the Windows reference consumer to use the released rivet::win_ui
    namespace and the chart control's public default-construction contract.
  • Keep post-release verification compatible with the clean output contract.
    When the unpacked staging package is gone, raco rivet verify now validates
    the portable ZIP through an isolated temporary extraction with strict root
    layout checks and unconditional cleanup.