Files
Easytier/.rust-analyzer.toml
T
fanyang 3464cb801a fix: eliminate unsafe code in packet construction and stats counters
Replace all UnsafeCell-based counters with safe alternatives:

- New ShardedCounter: per-thread TLS accumulation (thread_local crate)
  with periodic publish to static AtomicU64. Zero atomic RMW on hot path.
- ACL RuleStatsTracker: remove unsafe Arc<RuleStats> raw pointer
  mutation, use two ShardedCounter fields.
- ZCPacket: replace set_len on uninitialized BytesMut with
  write_bytes + copy_nonoverlapping before set_len.
- StatsManager UnsafeCounter/MetricData: remove UnsafeCell and
  unsafe impl Send/Sync, wrap ShardedCounter. last_updated uses
  AtomicU64 epoch millis.
- Throughput: replace UnsafeCell with AtomicU64.
- secure_datagram: fix grace-window test timestamp.
2026-06-28 13:19:52 +08:00

33 lines
786 B
TOML

# rust-analyzer config
# Skip the `easytier-gui` (Tauri) crate because its build scripts require
# system libraries webkit2gtk-4.1 / javascriptcoregtk-4.1 that are not
# installed on this host. Excluding it keeps rust-analyzer healthy for the
# rest of the workspace.
# Override the command used to run build scripts / collect build data.
[cargo.buildScripts]
overrideCommand = [
"cargo",
"check",
"--quiet",
"--workspace",
"--exclude",
"easytier-gui",
"--message-format=json",
"--all-targets",
"--keep-going",
]
# Override the command used for diagnostics-on-save.
[check]
overrideCommand = [
"cargo",
"check",
"--workspace",
"--exclude",
"easytier-gui",
"--message-format=json",
"--all-targets",
"--keep-going",
]