github PasarGuard/panel v5.5.0

4 hours ago

Add Xray WireGuard Inbounds & MASQUE, Major Bug Fixes & Performance Boost

v5.4.1...v5.5.0

compare changes

This release includes security fixes. Updating is recommended.

🚀 Enhancements

  • core: Apply routing, balancer and outbound edits without restarting nodes (#1030)
  • xray: Support Xray WireGuard inbounds using existing peer allocation (#996)
  • core-editor: MASQUE and XDrive forms for inbounds and outbounds (#1049)
  • xray: Add MASQUE transport and settings (#1025), MASQUE XMUX settings in subscriptions and MASQUE password in user proxy settings
  • xray: Add XDrive transport support (a7b10f31)
  • finalmask: Add Xray udphop UDP mask and exp noise type (#974), update xdns and xicmp masks
  • dashboard: Show the minimum Xray version for udphop and exp (#986)
  • admin: Passkey (WebAuthn) login for admins (98befb12)
  • statistics: Break traffic usage down by core and admin (#924)
  • nodes: Persistent node and core config ordering (#875)
  • users: Display and sort registered HWID counts (#951)
  • cleanup: Delete inactive users by last activity (#913)
  • settings: On-hold timeout action options (#901)
  • core: Optional WireGuard server interface MTU (#917)
  • subscription: Header placement option for CDN-blocked headers (#959)
  • dashboard: Select optional Xray API services in both core editors (#662)
  • wireguard: Faster allocation and subscription config caching (b606dbc2)

🔥 Performance

  • stats: Speed up usage charts and Clash subscriptions (#1060)
  • users: Honor bulk history loading and aggregate reloads (#1000)
  • group: Make group list, sync, bulk operations and delete scale to 50k+ users (#967)
  • groups: Add reverse group membership indexes (#772)
  • hosts: Batch manager updates for bulk enable and disable (#945)
  • templates: Avoid loading group members and batch list relations (#944)
  • statistics: Reduce query load on large installs (#865)
  • dashboard: Defer user dialogs and chart dependencies (#856)
  • admin: Avoid history loads and per-user inbound queries (#855)
  • nats: Avoid repeated serialization when sizing user batches (#853)
  • usage: Coalesce PostgreSQL history writes (#787)
  • usage: Reduce PostgreSQL write amplification (#778)
  • users: Avoid full-table sorts in list queries (#774)

🩹 Fixes

  • nodes: Add a keep-alive heartbeat and keep dead nodes from stalling the health check (#1069)
  • hosts: Isolate broken hosts and stale xHTTP download hosts (#1053)
  • dashboard: Users table selection and user dialog values (#1054)
  • users: Keep traffic recorded during usage resets, batch the SQL (#1059)
  • usage: Keep history writing after a node delete, faster on MySQL (#1058)
  • notification: Stop dropping rate-limited Telegram messages (#1057)
  • users: On-hold timeout action, bulk actions and input validation (#1056)
  • core-editor: Flag WireGuard remoteDNS "local" unless an older Xray is known (#1051)
  • core-editor: WireGuard inbound and outbound forms (#1048), manual WireGuard peers removed from the Xray editor
  • dashboard: Stop generating WireGuard user peer keys (f24fdb7d)
  • usage: Honor a zero node usage ratio in traffic accounting (db3ccde9)
  • finalmask: Unify FinalMask settings across hosts and the config generator, clearer noise field labels (7c06b92c)
  • hosts: Allow clearing KCP and WireGuard MTU fields (b34a797f)
  • hosts: Show MASQUE settings in the transport tab for all hosts (e38184f2)
  • hosts: Allow an empty fingerprint (13d5e677)
  • dashboard: Allow updating explicitly selected Xray pre-releases (#1035)
  • subscription: Stop XDrive hosts from breaking every subscription (#1011)
  • wireguard: Treat Xray inbounds as managed only with a client subnet (#1010)
  • node: Verify broken backend health before reattaching (#1009)
  • xray: Keep serveOnNode certificates in fallback chains (#1006)
  • templates: Preserve reset cycles in partial updates (#1003)
  • hosts: Validate bulk selections and save batches atomically (#999)
  • users: Preserve omitted next plans in partial updates (#998)
  • xray: WireGuard inbound validation and address handling (63f99151), address example (#1002)
  • node: Make large WireGuard edits and restarts reliable (#908)
  • node: Let lifecycle operations preempt user sync (#903)
  • node: Make user synchronization reliable and avoid redundant work (#896)
  • node: Debounce health failures and recovery (#950)
  • notification: Make notification delivery bounded and recoverable (#947)
  • dashboard: Restore typechecking and preserve host form values (#857)
  • users: Preserve on-hold next-plan activation (#948)
  • core: Restart affected nodes after core deletion (#934)
  • core-editor: Allow loopback tunnel targets (#905)
  • core-editor: Keep new header and attribute rows visible (#949)
  • finalmask: Support stable fragment schema (#864), fix maxSplit serialization (#965)
  • subscription: Build Hysteria2 hosts whose FinalMask has no udp mask (#993)
  • subscription: Strip / from subscription url_prefix (16ce46d8)
  • dashboard: Send chart ranges with one UTC offset across DST (#989)
  • dashboard: List the API section in the command menus (#995)
  • dashboard: Copy API keys and links over plain HTTP (#984, #907)
  • dashboard: Cancel obsolete API requests at the HTTP transport (#852)
  • charts: Use the app theme provider and distinguish series independently of the accent theme (#985, #952)
  • node: Give maintenance RPCs a timeout longer than node-serviced's, send core versions with a v prefix (926f4274)
  • db: Store node CPU usage as a float (8ece6944)

🏡 Chore

  • Bump pasarguard-node-bridge to 0.9.4 (#1065)
  • Update core-kit and xray-config-kit to 0.2.12 and 0.4.1
  • Dependency updates

⚠️ Notes

  • Update nodes to v0.5.5 first. Xray WireGuard inbounds and applying routing, balancer and outbound edits without a restart need node v0.5.5; older nodes restart as before.
  • New settings: NODE_HEALTH_PROBE_TIMEOUT (default 5 s) and NODE_HEALTH_MAX_BACKOFF (default 60 s, 0 turns the backoff off).
  • A node keep_alive below 20 s (40 s with several workers) now logs a warning. 120-300 s is recommended on unstable links.
  • The core save option is now labelled "Sync Nodes".

❤️ Contributors

Don't miss a new panel release

NewReleases is sending notifications on new releases.