Skip to content

Releases: PasarGuard/panel

v5.0.0

05 Jun 18:23

Choose a tag to compare

v4.0.2...v5.0.0

compare changes

🚀 Enhancements

  • XHTTPTransportConfig: Add field validator to normalize numeric fields (74bb1c34)
  • admin-rbac: Implement role-based admin permissions, limits, and owner setup flow (#507)
  • owner-upgrade: Implement admin to owner upgrade functionality and fix delete owner request to accept query instad of body (579c1ee7)
  • owner-upgrade: Add owner existence check before upgrading admin to owner (85b1cf91)
  • user: Add user retrieval by usernames and IDs, enforce admin quota during bulk creation (a9123ae4)
  • setup: Add OwnerDeleteRequest model and update delete_owner endpoint to use request body (6cce71f0)
  • admin-role: Add HWID policy to admin roles (#521)
  • models: Implement CreatedAtUTCMixin for automatic timestamping in Admin, User, and related models (872ab4c5)
  • admin-roles: Add HWID policy inheritance and update role terminology (8a4cbb22)
  • user-modal: Replace DecimalInput with native Input for HWID limit field (01c4d9c4)
  • admin: Add role eager loading and admin details helper for usage warnings (baf28748)
  • setup: Add admin-to-owner promotion functionality (a55c3443)
  • core-editor: Improve xray outbound editing with observation filtering and state preservation (b41dfb48)
  • core-editor: Upgrade core-kit and xray-config-kit with observation filtering (a942bf66)
  • core-editor: Expand VLESS Vision flow support to include xHTTP with TLS (4a4a8262)
  • core-editor: Add intelligent random inbound port generation (b80937bc)
  • core-editor: Add VLESS reverse proxy support with validation (d26d6794)
  • admin: Enhance admin modification security and add password change notifications (e5ae7dee)
  • core-editor: Enhance shadowsocks password generation validation (6c351664)
  • dashboard: Enforce RBAC across resource actions and templates (740ddcc9)
  • nodes: Show update indicators in list view (2aee4275)
  • admin-roles: Add duplicate role action (7c6c7a52)
  • core-editor: Add Hysteria Salamander obfuscation support (09b4fc94)
  • xray: Add Unix socket detection for inbound listeners (c3143772)
  • group: Convert inbound_ids and inbound_tags to hybrid properties with expressions (db132e37)
  • user: Send notifications for created users in bulk user creation (df3c77db)
  • xray: Restrict shadowsocks encryption methods in core editor (4ab1d0e4)
  • admin, user, sync: Enhance admin role loading and user sync logic (55443560)
  • user: Enforce role-based restrictions for manual user creation and modification (09deac7e)
  • dashboard: Add documentation routing for template pages (97b162b4)
  • dashboard: Improve string tag picker popover layout and scrolling (c3219b4b)
  • users: Add regenerate all proxy credentials functionality (a0ec9f1a)
  • user: Add user status toggle functionality and endpoints (b6d1e304)
  • users: Add user disabled status toggle API and update user modal logic (1c9a93e4)

🩹 Fixes

  • record_usages: Streamline upsert parameter construction and enhance user filtering logic (10c010af)
  • Block unlimited users for admins with max limits (a0be261f)
  • admin: Prevent admins from modifying their own accounts and enforce role-based restrictions (2221939b)
  • Remove users params (5538735b)
  • subscription: Mihomo xHTTP options (#509)
  • models: Enforce string type for numeric range fields in xHTTP and xMux settings (9179f527)
  • subscription: Simplify HWID limit check logic (afd61c9a)
  • node: Handle default core config and refresh cache before sync (b84c347e)
  • dashboard: Align HWID switches inline with setting cards (d4c52ef6)
  • Node user email format (4abd3d26)
  • Prevent telegram_id=0 check in modify (5fa60087)
  • node: Avoid reconnecting nodes on transient xray stats failures (fa1709cb)
  • core-editor: Drop key on empty field (536a10f5)
  • dashboard: Normalize empty HWID limit fields (21b74e88)
  • users: Copy numeric user ID from actions menu (c6d2191c)
  • admin: Use permissions instead of role IDs for admin edits (ba4cd1e6)
  • dashboard: Hide separators for single-action menus (abd9a2eb)
  • admin-roles: Sort admin roles by created date (e4ca5806)
  • migration: Use explicit false values for operator permissions (c4877a34)
  • dashboard: Show unlimited template limits clearly (d53f974e)
  • dashboard: Refine modal loading skeletons (3fd02a91)
  • admin-roles: Prevent delete dialog clicks reopening role modal (64ded6a7)
  • bulk: Batch bulk group inserts to avoid asyncpg 32767 param limit (3e10bd1c)
  • hosts: Assign unique priority to duplicated hosts and improve permission handling (3aa6a54d)
  • xray: Improve port validation for Unix socket listeners (6cb0d038)
  • telegram: Add admin context to group operations in user handlers (1ceeed12)
  • dashboard: Correct owner delete setup flow (1e719f7d)
  • record usages: Skip stale users when recording node usage (0307259b)
  • record usages: Insert node usage only for existing users (2948b55f)
  • Cast node usage upsert values for postgres (e058972c)
  • Build node usage upsert with sqlalchemy (3468ebe5)
  • Handle cases where admin may be None in user sync logic (beeae403)
  • record usages: Mysql deprecated values usage in record usages upsert (8351e5e5)
  • migrations: Enable transaction per migration and transactional DDL (e33d5c8f)
  • tests: Update usernames in user sync tests for clarity (45a3d488)
  • notification: Format used traffic for admin creation and modification messages (a0702955)
  • hosts: Error for sni ip objecets (88bdd6a5)
  • admins: Update role assignment logic for sudo admins based on count (92424be1)
  • jobs: Improve mysql error handling for deadlocks and lock timeouts (b371964b)
  • sync: Enhance admin sync logic to handle blocked users more effec...
Read more

v5.0.0-rc.2

02 Jun 21:23

Choose a tag to compare

v5.0.0-rc.2 Pre-release
Pre-release

v5.0.0-rc.1...v5.0.0-rc.2

compare changes

🩹 Fixes

  • dashboard: Correct owner delete setup flow (1e719f7d)
  • record usages: Skip stale users when recording node usage (0307259b)
  • record usages: Insert node usage only for existing users (2948b55f)
  • Cast node usage upsert values for postgres (e058972c)
  • Build node usage upsert with sqlalchemy (3468ebe5)
  • Handle cases where admin may be None in user sync logic (beeae403)
  • record usages: Mysql deprecated values usage in record usages upsert (8351e5e5)
  • migrations: Enable transaction per migration and transactional DDL (e33d5c8f)

💅 Refactors

  • Add scope_action parameter to get_validated_user_by_id for HWID and User operations (54ed934a)
  • Simplify remove expired users condition checks (c927c54b)
  • Remove IdMixin from multiple models for cleaner inheritance (56d126fe)

❤️ Contributors

v5.0.0-rc.1

31 May 15:16

Choose a tag to compare

v5.0.0-rc.1 Pre-release
Pre-release

v4.0.2...v5.0.0-rc.1 Add Admins RBAC System & Admin Ownership System

compare changes

🚀 Enhancements

  • XHTTPTransportConfig: Add field validator to normalize numeric fields (74bb1c34)
  • admin-rbac: Implement role-based admin permissions, limits, and owner setup flow (#507)
  • owner-upgrade: Implement admin to owner upgrade functionality and fix delete owner request to accept query instad of body (579c1ee7)
  • owner-upgrade: Add owner existence check before upgrading admin to owner (85b1cf91)
  • user: Add user retrieval by usernames and IDs, enforce admin quota during bulk creation (a9123ae4)
  • setup: Add OwnerDeleteRequest model and update delete_owner endpoint to use request body (6cce71f0)
  • admin-role: Add HWID policy to admin roles (#521)
  • models: Implement CreatedAtUTCMixin for automatic timestamping in Admin, User, and related models (872ab4c5)
  • admin-roles: Add HWID policy inheritance and update role terminology (8a4cbb22)
  • user-modal: Replace DecimalInput with native Input for HWID limit field (01c4d9c4)
  • admin: Add role eager loading and admin details helper for usage warnings (baf28748)
  • setup: Add admin-to-owner promotion functionality (a55c3443)
  • core-editor: Improve xray outbound editing with observation filtering and state preservation (b41dfb48)
  • core-editor: Upgrade core-kit and xray-config-kit with observation filtering (a942bf66)
  • core-editor: Expand VLESS Vision flow support to include xHTTP with TLS (4a4a8262)
  • core-editor: Add intelligent random inbound port generation (b80937bc)
  • core-editor: Add VLESS reverse proxy support with validation (d26d6794)
  • admin: Enhance admin modification security and add password change notifications (e5ae7dee)
  • core-editor: Enhance shadowsocks password generation validation (6c351664)
  • dashboard: Enforce RBAC across resource actions and templates (740ddcc9)
  • nodes: Show update indicators in list view (2aee4275)
  • admin-roles: Add duplicate role action (7c6c7a52)
  • core-editor: Add Hysteria Salamander obfuscation support (09b4fc94)
  • xray: Add Unix socket detection for inbound listeners (c3143772)
  • group: Convert inbound_ids and inbound_tags to hybrid properties with expressions (db132e37)
  • user: Send notifications for created users in bulk user creation (df3c77db)
  • xray: Restrict shadowsocks encryption methods in core editor (4ab1d0e4)

🩹 Fixes

  • record_usages: Streamline upsert parameter construction and enhance user filtering logic (10c010af)
  • Block unlimited users for admins with max limits (a0be261f)
  • admin: Prevent admins from modifying their own accounts and enforce role-based restrictions (2221939b)
  • Remove users params (5538735b)
  • subscription: Mihomo xHTTP options (#509)
  • models: Enforce string type for numeric range fields in xHTTP and xMux settings (9179f527)
  • subscription: Simplify HWID limit check logic (afd61c9a)
  • node: Handle default core config and refresh cache before sync (b84c347e)
  • dashboard: Align HWID switches inline with setting cards (d4c52ef6)
  • Node user email format (4abd3d26)
  • Prevent telegram_id=0 check in modify (5fa60087)
  • node: Avoid reconnecting nodes on transient xray stats failures (fa1709cb)
  • core-editor: Drop key on empty field (536a10f5)
  • dashboard: Normalize empty HWID limit fields (21b74e88)
  • users: Copy numeric user ID from actions menu (c6d2191c)
  • admin: Use permissions instead of role IDs for admin edits (ba4cd1e6)
  • dashboard: Hide separators for single-action menus (abd9a2eb)
  • admin-roles: Sort admin roles by created date (e4ca5806)
  • migration: Use explicit false values for operator permissions (c4877a34)
  • dashboard: Show unlimited template limits clearly (d53f974e)
  • dashboard: Refine modal loading skeletons (3fd02a91)
  • admin-roles: Prevent delete dialog clicks reopening role modal (64ded6a7)
  • bulk: Batch bulk group inserts to avoid asyncpg 32767 param limit (3e10bd1c)
  • hosts: Assign unique priority to duplicated hosts and improve permission handling (3aa6a54d)
  • xray: Improve port validation for Unix socket listeners (6cb0d038)
  • telegram: Add admin context to group operations in user handlers (1ceeed12)

💅 Refactors

  • record_usages: Improve code readability by restructuring parameter handling and formatting (e88037fd)
  • setup: Remove OwnerDeleteRequest model and update delete_owner endpoint to use query parameters (9837acba)
  • system: Update admin retrieval logic for clarity (87337dfe)
  • models: Replace id_column function with IdMixin for primary key management (d105bfcc)
  • models: Remove IdMixin from ClientTemplate and define primary key directly (dc28aa64)
  • system: Extract admin details conversion to helper function (e020488e)
  • admin: Extract admin details conversion to helper function (43a3d0c7)
  • node: Replace username with user_id in user stats and IP list endpoints (5656e5e4)
  • dashboard: Replace username with user_id in user IP and stats endpoints (4d0d8ac3)
  • users: Optimize filter state updates and fix URL encoding (7ac572c3)
  • admin: Remove discord_id field from admin model (b0cab45a)

🏡 Chore

  • deps-dev: Bump watchfiles from 1.1.1 to 1.2.0 (#497)
  • deps-dev: Bump pymysql from 1.1.3 to 1.2.0 (#512)
  • deps-dev: Bump ruff from 0.15.13 to 0.15.14 (#514)
  • deps-dev: Bump pytest-asyncio from 1.3.0 to 1.4.0 (#534)
  • .env.example: Remove duplicate ENABLE_RECORDING_NODES_STATS configuration (0f4f0215)
  • deps-dev: Bump ruff from 0.15.14 to 0.15.15 (#541)
  • Replace TUI with deprecation notice in Docker image (8670bad4)

🎨 Styles

  • user-modal: Simplify className conditional logic in ExpiryDateField (85081441)
  • dashboard: Replace space-y utility with gap-y and flex-col ([809a07c](https://githu...
Read more

v4.0.2

17 May 10:28

Choose a tag to compare

v4.0.1...v4.0.2

compare changes

🚀 Enhancements

  • core-editor: Add WireGuard inbound protocol support with i18n (b881f26c)
  • dashboard: Add node grouping and period counting to user statistics (17ef1a7d)
  • core-editor: Add REALITY xver field support to inbound configuration (50f7f944)
  • core-editor: Improve WireGuard address handling (9ee1db92)
  • core-editor: Preserve inbound clients across protocol rebuilds (d9b20c6c)
  • core-editor: Simplify validation and config persistence logic (e3e43c00)

🩹 Fixes

  • hwid: Refactor register_user_hwid to upsert HWID and update last_used_at (7ff9677b)
  • host: Add field validators to normalize numeric fields in XMuxSettings and XHttpSettings (831446a3)
  • dashboard: Improve sidebar version badge layout and spacing (84724f23)
  • user-template: Add HWID limit support to user templates (e7c28d65)
  • core: Improve VLESS flow serialization logic for security configurations (56f16921)
  • user: Sync users after bulk creation (aa1cde6f)
  • cli-system: Improve async handling of system stats and enhance CLI output (1e460670)
  • cli-system: Remove uptime display and enhance disk usage information in system status (ba42df22)

💅 Refactors

  • subscription: Remove flow_enabled field and simplify flow handling (3443a0fc)
  • github-notifications: Simplify workflow by removing redundant steps and renaming job (e7ac34f7)

🏡 Chore

  • dashboard: Upgrade core-kit and xray-config-kit dependencies (b8a979af)

✅ Tests

  • user: Add validation for HWID limit during user modification from template (8ee76dc6)

❤️ Contributors

v4.0.1

16 May 17:36

Choose a tag to compare

v4.0.0...v4.0.1

compare changes

🚀 Enhancements

  • workflows: Add workflow_dispatch trigger to build and test workflows (9f025c25)

🩹 Fixes

  • build: Refactor workflow for changelog generation and dashboard build process (fb695f45)
  • core-editor: Exclude non-observable protocols from xray balancer observation (beda9036)
  • build: Optimize previous tag retrieval in changelog generation (fd301fb7)
  • dashboard: Improve sidebar version badge layout and text overflow handling (9241750a)
  • core-editor: Refactor VLESS advanced settings modal layout and styling (6c4155f0)
  • core-editor: Make inbound port optional and improve VLESS encryption handling (5a65d402)

💅 Refactors

  • subscription: Streamline user_subscription_raw parameters and improve readability (70dd67f3)

🏡 Chore

  • outbound-latency-test: Add "never" translation and improve RTL support in latency dialog (d7e90082)
  • dashboard: Upgrade pasarguard dependencies (4fbd30a9)

❤️ Contributors

v4.0.0

16 May 14:32

Choose a tag to compare

HWID Support & Visual Core Editor

v4.0.0-rc.1...v4.0.0

compare changes

🚀 Enhancements

  • latency: Add outbound latency tracking and API endpoint (37462a07)
  • core-editor: Add WireGuard outbound protocol support (ed8e30cd)
  • core-editor: Add outbound latency testing dialog (089f85dd)
  • core-editor: Add tabbed filtering for xray advanced config editor (99b95852)

🩹 Fixes

  • Return real count in get_users_count_metric (c09d9241)
  • Russian typo (0b420860)
  • subscription: Adjust HWID registration logic for subscription page requests (845a01d2)
  • Validation and remove XTLSFlow usage (08e2222b)
  • code-editor: Update dialog close button selector for fullscreen mode (48396765)
  • string-array-popover: Update add button alignment and responsive classes (89cc0d2c)
  • subscription-rules: Update overflow and spacing for drag-and-drop layout (f2a00120)
  • dependencies: Update pasarguard-node-bridge to version 0.8.1 (cdbd2466)
  • core-editor-data-table: Adjust index column width and padding (1998955f)
  • api: Make count_during_period optional in UserCountMetricStatsList (60539eab)
  • user: Remove int type constraint from user_id path parameter (c4bb0385)
  • code-editor-panel: Update header layout alignment (87761a45)
  • core-editor: Improve xray advanced tabs layout and scrolling (e7fe6244)
  • core-editor: Adjust sticky save bar bottom margin spacing (e3ee3a16)

🏡 Chore

  • localizations: Update master node label terminology across locales (e9f90470)

❤️ Contributors

v4.0.0-rc.1

15 May 17:59

Choose a tag to compare

v4.0.0-rc.1 Pre-release
Pre-release

HWID Support & Visual Core Editor

v3.2.1...v4.0.0-rc.1

compare changes

🚀 Enhancements

  • Introduce ProxyProtocol enum and update related classes to utilize it (138eae80)
  • /raw path for 3rd-party apps (66eb6e28)
  • Update subscription user agent on raw request (2e7bfe90)
  • Add core-kit dependencies and core geneartor ui (fdf9914a)
  • Add zustand dependency to dashboard (e2f47a31)
  • core-editor: Improve socket options UI and localization (23a8139e)
  • core-editor: Enhance xray balancer configuration with advanced settings (58a3cecc)
  • core-editor: Refactor xray balancer strategy settings management (93e48932)
  • core-editor: Implement precise change detection for core configurations (7d1b054b)
  • Implement HWID management models, API, and UI features (#481)
  • core-editor: Add localization strings and UI enhancements for routing and balancer features (674eeca4)
  • core-editor: Enhance validation, localization, and WireGuard configuration (9e2ce2dc)
  • core-editor: Enhance localization and improve validation error paths (8d925444)
  • dashboard: Improve layout overflow handling and responsive design (590cf4f6)
  • core-editor: Refactor VLESS inbound flow validation logic (9cab9181)
  • core-config-modal: Add unsaved changes confirmation dialog (f08d1c4f)
  • code-editor-panel: Replace portal-based fullscreen with Radix Dialog (5ec161ed)
  • localization: Add outbound configuration and validation strings (a6f5a424)
  • subscription: Add response_headers field and method to format subscription response headers (a12e44fe)
  • subscriptions: Add response headers configuration section (20bc1129)
  • wireguard: Add shared IP allocator for bulk user creation (2f4468cf)

🔥 Performance

  • Remove fetch ip for faster startup (2662e45a)

🩹 Fixes

  • Update uplink_chunk_size type to support string and int with validation pattern (ca4ac7ee)
  • Update ProxyValidator to return None for falsy values (4a40ea9d)
  • telegram: Update group retrieval to use GroupListQuery for consistency (fae4f95d)
  • variables-popover: Remove deprecated server IP and IPv6 variables (5de0dc79)

💅 Refactors

  • Restructure dashboard application by making featured based folder struc (29051e9e)
  • proxy-settings: Remove flow attribute (#472)
  • subscription: Rename payload building methods for clarity and add request URL to user_subscription_raw (4c737b9d)

🏡 Chore

  • deps-dev: Bump ruff from 0.15.12 to 0.15.13 (#480)

🎨 Styles

  • form: Replace flex gap utility with space-y for consistent spacing (cda4e72f)

❤️ Contributors

v3.2.1

11 May 20:59

Choose a tag to compare

v3.2.0...v3.2.1

compare changes

🩹 Fixes

  • Update sorting logic to use value prefix for direction (f2e7f3fc)
  • Orval query param generation (032656eb)
  • Double validation run (838d18cb)
  • Admin query param parsing (228e0a45)

❤️ Contributors

v3.2.0

11 May 18:48

Choose a tag to compare

v3.1.0...v3.2.0

compare changes

🚀 Enhancements

  • subscription: Add dynamic variable support for announcement formatting (6c633f11)
  • subscription: Add IP address support to user subscription updates (94502dce)
  • subscription: Add IP address display and copy functionality in user subscription clients modal (a3bf671c)
  • wireguard: Add global WireGuard disable option (#444)
  • config: Add statsUserOnline policy setting to default Xray configuration (2463dbf3)
  • Add filters for user data limits and expiration dates (ea74f6ad)
  • dashboard: Enhance static file handling and caching strategies (a93c1a8d)
  • users: Add online user filters to user retrieval and dashboard (603416aa)
  • users: Refine data limit filtering in user retrieval (d5831a31)
  • statistics: Add user count activity chart (#452)
  • user-usage: Add clean chart data option for user data resets (4e56e383)
  • query: Add support for filtering by ids and usernames in various list queries (b930c5db)
  • Secure IP detection and configurable reverse proxy support (eff49dbb)

🩹 Fixes

  • subscription-modal: Include MIME type in download payload for WireGuard configuration (bd7d91ac)
  • host-modal: Update xray template selection logic and add default value for inbound template (d986dc6d)
  • subscription: DNS support to WireGuard configuration and hosts list (28ae0f2e)
  • modals: Adjust spacing in FormItem components for improved layout consistency (7aff141e)
  • node: Handle null proxy_url in modify_node function to ensure proper data handling (c2bc74a8)
  • subscription: Simplify IP address retrieval in subscription functions (3dde4715)
  • subscription: Enhance WireGuard URI parsing to include DNS support and clean up source parameter (331c332f)
  • dashboard: Tighten modal and sidebar UI spacing (bb91ad0a)
  • subscription: Improve layout and drag-and-drop functionality in subscription rules section (17ab8a88)
  • user-modal: Integrate general settings query in user modal (48c64532)
  • advance-search-modal: Adjust spacing in form items for improved layout (c15d9572)
  • templates: Implement sandboxed environment for safer template rendering (e31fc40e)
  • Allow only sudo admin to perform bulk group actions (12d4e0e0)
  • Node job (e90ed6ff)
  • Send notification warning (90be72e2)
  • node-actions-menu: Remove unused actions menu state and simplify dropdown handling (8e675861)
  • settings: Update general settings handling and improve loading/error states (db17e03b)
  • nodes-list: Improve loading state handling and add placeholder data for refetching (ee7295a3)
  • settings: Optimize general settings form handling using useMemo for improved performance (84847295)
  • manager, worker: Update get_core_configs and get_nodes to use CoreListQuery and NodeListQuery for improved querying (767e9ea7)
  • middleware, node: Refactor request logging middleware and improve error handling in node log streaming (1a52a77e)
  • middleware: Enhance error handling in request logging middleware to manage connection closure (b6d1a887)
  • Add pymysql for tests (f745f1a9)

💅 Refactors

  • Configuration management to use Pydantic settings (#434)
  • node: Improve node health check and background connection handling (d891dcb9)
  • date-picker: Streamline date serialization and normalization functions (077af77a)
  • users: Streamline user cache management in action buttons and users table (1c6b474e)
  • dialogs: Streamline input handling and improve component structure (34f745cf)
  • Configuration management to use Pydantic settings and update dependencies (#455)

🏡 Chore

  • dashboard: Update gap spacing for list components based on view mode (50bb2a2a)
  • Migrate to python v3.14 (#439)

❤️ Contributors

v3.1.0

03 May 05:45

Choose a tag to compare

v3.0.2...v3.1.0 Add Up Time & Proxy Support For Nodes

compare changes

🚀 Enhancements

  • Add ID-based user and admin API routes (#410)
  • client-template: Add functionality to clear host subscription template overrides on deletion (f2550d26)
  • migrations: Add check-migrations target to Makefile and integrate into CI workflow (9bba0ebe)
  • db: Introduce SqliteCompatibleBigInteger type and refactor ID column handling (c6cfd99e)
  • dashboard: Add skeleton shimmer animation and enhance page transition handling (aafc89b2)
  • user: Optimize expired user cleanup deletion path (458b3290)
  • dashboard: Implement stable random username generation for preview users in bulk creation (be128e4f)
  • dashboard: Enhance loading states with skeleton components for user and admin data tables (35ef830a)
  • subscription: Add user subscription retrieval API by user ID and client type (a1788b6d)
  • dashboard: Replace loading placeholders with Skeleton components across various pages and components (49650ec9)
  • jwt: Update subscription token versioning and enhance payload validation for backward compatibility (ec7e1a5b)
  • bulk: Enhance data limit input handling and UI adjustments for better user experience (b0294521)
  • filters: Add subscription URL handling and enhance search functionality with username resolution (fb101c59)
  • subscription: Enhance application editing with undo functionality and improved UI elements (323a4157)
  • wireguard: Implement stateful peer IP allocator and optimize bulk reallocation (87e2a7bf)
  • system: Add uptime tracking and display in dashboard statistics (7aae547e)
  • Update initial pattern for clash meta (54186eeb)
  • nodes: Add version indicators to node lists (52095904)
  • xray: Show prerelease update options (aa7bc3e2)
  • Node uptime (c662f92b)
  • dashboard: Add uptime display for node statistics (dea8a63a)
  • bulk: Add function to retrieve WireGuard peer IP users for bulk operations (83d888ee)
  • dashboard: Introduce TimeUnitSelect component and refactor bulk flow and user modals to utilize time units for expiration settings (97d4ee44)
  • node: Proxy support (de185ff0)
  • node-modal: Add proxy URL field and update related components for proxy support (65fb5cf8)
  • node: Implement core version update dialog and enhance proxy URL handling (4ecd73eb)
  • dashboard: Add grid selection toolbar with select all functionality and visible row count display (5d4d697e)
  • dashboard: Add DNS field to wireguard overrides in HostModal component (d77cf437)

🩹 Fixes

  • platforms: Correct Windows spelling, enhance user agent parsing for new platforms, and update OS detection logic (72c810d4)
  • host-modal: Add form reset functionality with default values and improve modal behavior on open (a631aee5)
  • host-modal: Enhance ArrayInput styling and scroll behavior for better user experience (4fb88290)
  • bulk: Apply expire date range filters independently from expired status (ee87487a)
  • subscription: Refactor subscription fetching DOWNLOAD_ONLY_PROTOCOLS logic to use new URL building and fetching methods (2302abf5)
  • filters: Implement ignore flag for debounced search updates to improve filter responsiveness (2a3feacd)
  • Clash template dns (7373c2d0)
  • sortable-application: Prevent event propagation on button clicks to enhance user interaction (7751311c)
  • locales: Update application descriptions and link terminology for clarity across multiple languages (a096fdf4)
  • Separate semaphore (c0e20bb3)
  • Make Semaphore block smaller (1c6de10e)
  • system: Include uptime in system stats retrieval (70038b8d)
  • Asyncio.ensure_future to get ips (6d1f250b)
  • dashboard: Clean up admin and core config modals (058e3647)
  • wireguard: Reallocate duplicate peer IPs in bulk repair (99b1f628)
  • Test dependency (d0c7fbe9)
  • Node test (052b20d5)
  • Comparing different enum values (1f212c39)
  • dashboard: Simplify core configuration handling in node component (4fc9f2a9)
  • dashboard: Improve node statistics to include non connected nodes and list status UI (4e010951)
  • crud: Ensure consistent ordering by adding CoreConfig.id to order_by clause (a40652b2)
  • system: Update IP retrieval methods to handle asyncio context correctly (9b9a4383)
  • advanced-search-modal: Enhance advance search functionality with timeout reset (fba7ae77)
  • Remove the gap between label and input in admin dialog (018b8ef0)
  • node: None as default for proxy url (820cda83)
  • clash: Ws host (e63af03c)
  • node: Limit status transitions after usage reset and modify (8e739b42)
  • dashboard: Update type annotations for better clarity and consistency across components (2b2b8f4b)
  • Clash headers (068da98b)
  • clash: Refine HTTP headers handling by excluding 'Host' and ensuring correct assignment (210d438b)
  • subscription: Remove unused extension parameter from SubscriptionOperation (dc8f9f3d)
  • nodes: Preserve node dialogs during auto refresh (4b6f4d58)

💅 Refactors

  • bulk: Replace BulkUser with BulkUserFilter and adjust filtering logic for user attributes (a0b1455e)
  • wireguard: Optimize user group and inbound loading for bulk reallocation (8f712f4d)
  • dashboard: Improve layout and spacing in AreaCostumeChart and AdminModal components (69cd28bb)

🏡 Chore

  • dashboard: Update button styles to use rounded corners for improved UI consistency (ff194d83)
  • dashboard: Update node actions menu to use WifiSync icon for reconnect (4d2fa802)
  • Replace httpx with Aiohttp (#419)
  • deps-dev: Bump ruff from 0.15.11 to 0.15.12 (#425)
  • Use urllib for sync fetch functions (cbe72288)

❤️ Contributors