Releases: PasarGuard/panel
Releases · PasarGuard/panel
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)
v3.0.2
v3.0.1...v3.0.2
🩹 Fixes
- xhttp: Read x-padding related params from inbound (23066e5e)
- authentication: Enhance admin retrieval with metrics and refactor related functions (31951186)
- action-buttons: Remove isActionsMenuOpen from modal state and manage it locally (3f26a73c)
- client-template-actions-menu: Remove conditional class names from AlertDialog components for cleaner markup (4d7b8027)
- locales: Add bulk action messages for nodes, admins, user templates, client templates, cores, hosts, and groups in multiple languages (55f143fc)
- host-modal: Improve xray template selection logic and update placeholder handling (25c95cf2)
- host-modal: Reset form with default values on modal close and update VariablesPopover usage (158e0ec2)
💅 Refactors
- index.html: Replace Google Fonts links with local stylesheet for improved performance (dfbf68fe)
🏡 Chore
- skeleton: Update Skeleton component for improve styling (41d06160)
❤️ Contributors
- x0sina <@x0sina>
- Mohammad <@ImMohammad20000>
v3.0.1
v3.0.0...v3.0.1
🚀 Enhancements
- subscription-modal: Add QR code format toggle for wireguard links (69740be0)
- action-buttons: Add isActionsMenuOpen state to manage actions menu visibility (69b98956)
🔥 Performance
- Wg peer ips validation (a8d0145e)
🩹 Fixes
- migrations: Enhance client_templates table creation with existence checks and default rows insertion (b8943e80)
- Postgresql extract peer ips jsonb query (4e669080)
- subscription: Ensure finalmask is only applied if present in inbound data (17beeb7f)
- dashboard: Streamline subscription URL handling and improve QR code generation in subscription modal (5dff49c5)
- subscription-rule-advanced-sheet: Optimize response header update logic and improve key handling in rendering (6ac18833)
- subscription-modal: Adjust layout for improved alignment of QR code and configuration options (15aacd86)
- Add security=none for trojan (4f5cc955)
🏡 Chore
- deps-dev: Bump ruff from 0.15.10 to 0.15.11 (#392)
❤️ Contributors
- Mohammad <@ImMohammad20000>
- X0sina <@x0sina>
- M03ED <@M03ED>
v3.0.0
v2.2.0...v3.0.0 Add Support For Hysteria & Wireguard, Move Client Templates To Panel & Multi Selections Operations
🚀 Enhancements
- admins: Add note field to admin model and update related functionality (c6c0120c)
- admin: Enhance sudo admin permissions to allow self-modification and restrict modifications to other sudo accounts (4238cb8e)
- admin: Restrict creation of sudo admins via API to enhance security (15fc5f2b)
- ui: Refine user modal actions/details, locale keys, and toast behavior (63e76fea)
- hosts: Add ECH query strategy support across models, forms, and UI components (734299f6)
- user-template-modal: Implement custom status select component for improved user interaction (3656824c)
- telegram: Implement NATS-backed memory storage for FSM synchronization (#299)
- user-modal: Integrate dropdown menu for user actions and streamline button layout for enhanced usability (572124af)
- advance-search: Add 'Show created by' toggle for sudo users and persist preference in local storage (537223ee)
- admins: Prevent sudo admins from disabling their own accounts and enhance admin action controls in the UI (c89b5ff4)
- chart-view: Implement area chart option and enhance chart view preferences across the dashboard (273a8903)
- subscription-modal: Implement fetch links with timeout fallback and enhance error handling for improved reliability (1889af03)
- core-config-modal: Integrate Ace Editor for JSON editing in mobile and enhance validation logic (4c0e0dfa)
- sort: Implement compact sorting options in admin and user filters with enhanced UI for better usability (8987de4e)
- statistics-charts: Add BarChart3 icon to enhance visual representation in system statistics section (5a6a2e78)
- links: Implement finalmask application for vmess, vless, and trojan transports (b1538634)
- Announcement in sub page (94c0abde)
- Implement client template management system (#286)
- xray: Add hysteria protocol support and related settings across multiple components (#333)
- Add rand_range field to XrayNoiseSettings and update related components and translations (00251662)
- Add KCP transport configuration parameters tti and mtu to links (955fe69f)
- subscription: Add xhttp support for Clash Meta subscriptions (#347)
- dashboard: Align client template cards and modal with dashboard standards (d056c571)
- subscription: Add subscription rule response headers (26211427)
- subscription: Improve subscription rule card UX and remove unused locale strings (c4dc886b)
- core: Add WireGuard core management support (#350)
- ui: Add pencil icon for edit mode in dialog titles (c3fbd305)
- ui: Standardize icons through sidebar and dialogs (44e04fd1)
- ui: Replace emoji icons with official client icons for subscription links (38246fd2)
- wireguard: Support plain text format for non-browser subscription requests (3e0a65f3)
- subscription: Add fromat variables to extra-headers (be93e5e0)
- Add xtls-rprx-vision-udp443 flow support (#335)
- hosts: Xray subscription template per host (40d8e9de)
- wireguard: Generate peer ips from inbound local addresses (68c50d51)
- subscription: Enhance settings management by adding user ID for dynamic allocation (a41856e2)
- operation: Add header sanitization method to validate and normalize HTTP response headers (6d284eb9)
- wireguard: Add DNS server configuration to WireGuard host and subscription models (8900c87d)
- dashboard: Add hover effect for data table rows to enhance user interaction (26e70565)
- core: Add sorting options for created_at field in core configurations (481b3c97)
- dashboard: Implement log buffer size limit and enhance log filtering logic (4708be90)
- dashboard: Add Link2 icon and update download logic for wireguard protocol (ef463552)
- dashboard: Enhance NodeModal and NodeActionsMenu with improved UI elements and logic (7ec55f90)
- wireguard: Bulk peer IP reallocation, pool validation, Peer-IPs Bulk and dashboard UI (#365)
- dashboard: Enhance date picker and modal components with forced Persian locale support (e25e1a5e)
- bulk: Implement dry run functionality for bulk operations, allowing users to preview affected counts without modifying data (20737169)
- dashboard: Update service worker registration to dynamically infer base path for improved asset resolution (bfbd14be)
- core-config-modal: Replace default WireGuard config with dynamic key pair generation and improve layout for better responsiveness (4b4bfd99)
- bulk: Date range filters for expired users in bulk operations (#367)
- subscriptions: Enhance application and rule management with new sortable components and configuration options (cff88fe1)
- dashboard: Enhance mobile web app capabilities and improve loading experience with fallback elements (1e5541c3)
- subscription: Align sing-box generation and defaults with latest schema (#369)
- users: Add bulk user actions APIs and improve table selection UX (ccc1b573)
- deps: Update monaco-editor to version 0.55.1 and add new dependencies (6a6ec433)
- users-table: Add QR code button to default view of action buttons and adjust layout for improved user experience (b3ab2a78)
- Implement bulk removal functionality for admins, client templates, cores, groups, hosts, nodes, and user templates (1838c68b)
- dashboard: Implement bulk selection and deletion for admins and cores (cc50d2ba)
- api: Add bulk state actions for admins, groups, hosts, nodes, and templates (a590091d)
- dashboard: Add bulk actions across admins, nodes, groups, hosts, and templates (5b5a6e97)
- api: Add bulk enable and disable user actions (ddd81498)
- dashboard: Implement bulk enable and disable actions for users (98d1db3c)
- authentication: Enhance admin details retrieval by including total users and traffic usage metrics (80f1a777)
- dashboard: Implement bulk apply template action for users with modal and API integration (b73c0b6c)
- dashboard: Add clock icon to status badge for improved visual indication of user status (e8a0bd54)
🩹 Fixes
- user: Normalize expire timezone to UTC when setting expiration (5299bb45)
- date-picker, user-modal, dateFormatter: Streamline date handling and improve time left calculations ([b667b9...