Skip to content

Latest commit

 

History

History
63 lines (52 loc) · 4.85 KB

File metadata and controls

63 lines (52 loc) · 4.85 KB

Changelog

All notable changes to this project will be documented in this file.

[0.2.9] - 2026-02-19

  • Removed redundant server-status caching layer from FFI state, eliminating stale-cache UI inconsistencies.
  • Removed blocking "server unavailable" banners from service registration, client connection, and status monitoring views so pages remain fully operable regardless of server reachability.
  • Simplified client connection view to allow manual service key input alongside dropdown selection.
  • Cleaned up automatic server-status retry loops that caused unnecessary background network traffic on mobile.

[0.2.8] - 2026-02-19

  • Fixed mobile UI status check instability where server showed as unreachable intermittently despite correct configuration.
  • Added synchronous forceRefreshServerStatus FFI endpoint that waits for actual network result instead of returning stale cache.
  • Parallelized dual TCP status queries (Keys + RemoteId) with tokio::join! to halve round-trip time.
  • Increased background status refresh timeout from 800ms to 3000ms to accommodate mobile network latency.
  • Fixed Flutter parallel loading race in client connection and service registration views by sequencing config load before status check.
  • Upgraded MSG_HEADER_KEY atomic hash operations from Ordering::Relaxed to Release/Acquire for cross-thread visibility.

[0.2.7] - 2026-02-15

  • Added one-click configuration export in UI Config page with JSON payload encoded as Base64.
  • Added one-click configuration import in UI Config page from Base64-encoded JSON, including validation and immediate apply/save flow.
  • Included clipboard-friendly export dialog and import dialog to simplify cross-device/shareable configuration transfer.

[0.2.6] - 2026-02-15

  • Fixed Android UI release verification on armeabi-v7a by preferring NDK LLVM ELF tools instead of host objcopy/readelf that could not parse the artifact format.
  • Added an exported-symbol hash fallback check in the Android UI release workflow to preserve FFI provenance validation when raw and stripped hashes differ.
  • Rerolled 0.2.5 as a patch release to unblock end-to-end UI artifact publishing.

[0.2.5] - 2026-02-15

  • Fixed Android UI release workflow false failures when APK-packaged libpb_mapper_ffi.so differs at raw byte level from staged FFI output.
  • Kept strict FFI provenance checks by adding ELF Build ID and debug-stripped hash fallback verification before upload.
  • Rerolled 0.2.4 runtime MSG_HEADER_KEY synchronization fixes as a new patch release after CI pipeline stabilization.

[0.2.4] - 2026-02-15

  • Fixed runtime MSG_HEADER_KEY propagation so UI-configured key changes take effect immediately without process restart.
  • Replaced one-time static header-key snapshot with mutable runtime key state used by checksum and default codec creation.
  • Wired UI FFI config application to the shared key setter to keep Linux/Windows behavior consistent.
  • Resolved cross-platform mismatch where Windows UI failed against keyed server while Linux appeared to ignore UI key changes.

[0.2.3] - 2026-02-15

  • Fixed clippy::needless_as_bytes in ui/native/pb_mapper_ffi/src/state.rs to restore strict CI lint pass (-D warnings).
  • No runtime behavior change; release is a CI/lint hotfix on top of 0.2.2.

[0.2.2] - 2026-02-15

  • Added full Flutter UI + FFI support for MSG_HEADER_KEY configuration, including config persistence, validation, and runtime propagation.
  • Made MSG_HEADER_KEY optional in UI config: empty value now falls back to the default header key behavior.
  • Updated service registration/client connection setup guidance in UI to explicitly include MSG_HEADER_KEY consistency checks.
  • Hardened UI release build flow to enforce FFI-first build order per platform (Windows/Linux/macOS/Android/iOS).
  • Added workflow-level FFI integrity checks (hash verification between staged FFI artifacts and packaged UI outputs).

[0.2.1] - 2026-02-09

  • Added pb-mapper-server --use-machine-msg-header-key to derive MSG_HEADER_KEY from machine hostname + MAC addresses.
  • Persisted the derived key to /var/lib/pb-mapper-server/msg_header_key for operator reuse in pb-mapper-server-cli and pb-mapper-client-cli.
  • Added fallback MAC collection paths (/sys/class/net, ip link, ifconfig) to improve portability.
  • Updated user guides (English and Chinese) with setup and usage instructions for machine-derived key mode.
  • Added/expanded code documentation for public key-related APIs and derivation rationale.

[0.1.1] - 2026-01-17

  • Extracted stream/UDP logic into deps/uni-stream and switched core networking to use it.
  • Fixed UDP forwarding by preserving datagram boundaries and adding explicit datagram APIs.
  • Added into_split() owned halves for spawn-friendly IO split.
  • Updated UI Rust bridge to pass correct UDP datagram mode to server/client.
  • Added deep-dive docs on async Send/Sync/Pin and UDP datagram forwarding.