Releases: PasarGuard/panel
Releases · PasarGuard/panel
v5.0.0
v4.0.2...v5.0.0
🚀 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...
v5.0.0-rc.2
v5.0.0-rc.1...v5.0.0-rc.2
🩹 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
- M03ED (@M03ED)
- X0sina (@X0sina )
- Mohammad immohammad20000@protonmail.com
v5.0.0-rc.1
v4.0.2...v5.0.0-rc.1 Add Admins RBAC System & Admin Ownership System
🚀 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...
v4.0.2
v4.0.1...v4.0.2
🚀 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
- M03ED (@M03ED)
- Mohammad immohammad20000@protonmail.com
- X0sina (@X0sina)
v4.0.1
v4.0.0...v4.0.1
🚀 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
- X0sina bulletsina77@gmail.com
- M03ED (@M03ED)
- Mohammad immohammad20000@protonmail.com
v4.0.0
HWID Support & Visual Core Editor
v4.0.0-rc.1...v4.0.0
🚀 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
- X0sina bulletsina77@gmail.com
- M03ED (@M03ED)
v4.0.0-rc.1
HWID Support & Visual Core Editor
v3.2.1...v4.0.0-rc.1
🚀 Enhancements
- Introduce ProxyProtocol enum and update related classes to utilize it (138eae80)
/rawpath 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
- M03ED (@M03ED)
- X0sina (@X0sina )
- Mohammad imMohammad20000@ProtonMail.com
v3.2.1
v3.2.0
v3.1.0...v3.2.0
🚀 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
- M03ED (@M03ED)
- Sina (@x0sina)
- Mohammad immohammad20000@protonmail.com
v3.1.0
v3.0.2...v3.1.0 Add Up Time & Proxy Support For Nodes
🚀 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_PROTOCOLSlogic 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
- X0sina
- M03ED (@M03ED)
- Mohammadmahdi Mohammadi
- Mohammad immohammad20000@protonmail.com
- Random Guy (@M03ED)