3x-ui/web/service
MHSanaei 5df97c9313
refactor(node): restart remote xray after tx commit, not inside it
Move the remote RestartXray calls out of the addTraffic write
transaction. disableInvalidClients now returns the affected remote
node IDs instead of restarting their xray while the SQLite write lock
is held; AddTraffic performs the restart after the transaction commits
via restartRemoteNodesOnDisable. Avoids holding the serialized write
lock across slow per-node restart RPCs.
2026-06-05 00:02:19 +02:00
..
api_scale_postgres_test.go perf(clients): scale-audit remaining client/inbound endpoints to 200k 2026-06-04 21:32:15 +02:00
api_token.go fix(api-token): hash tokens at rest and show plaintext only once 2026-06-03 22:57:50 +02:00
bulk_clients_test.go perf(clients): batch bulk attach/detach to cut per-item DB work 2026-06-02 03:59:10 +02:00
bulk_traffic_test.go perf(clients): scale-audit remaining client/inbound endpoints to 200k 2026-06-04 21:32:15 +02:00
client.go perf(clients): scale-audit remaining client/inbound endpoints to 200k 2026-06-04 21:32:15 +02:00
client_email_validation_test.go fix(clients): reject spaces, '/', '\' and control chars in subscription ID 2026-05-30 23:28:58 +02:00
client_flow_isolation_test.go fix(clients): keep reverse tag clearable and preserve flow on attach 2026-06-02 23:47:03 +02:00
client_group_node_sync_test.go fix(clients): persist group for node-inbound clients 2026-05-31 15:25:21 +02:00
client_sync_multiprotocol_test.go test: name temp sqlite db x-ui.db to match the real db filename 2026-05-31 15:25:05 +02:00
client_test.go Feat/multi inbound clients (#4469) 2026-05-19 12:20:24 +02:00
config.json fix(xray): default freedom finalRules to allow-all so reverse egress works 2026-06-02 15:58:48 +02:00
custom_geo.go fix(panel-proxy): route custom geo and http(s) Telegram through panelProxy 2026-06-03 14:57:49 +02:00
custom_geo_test.go fix(panel-proxy): route custom geo and http(s) Telegram through panelProxy 2026-06-03 14:57:49 +02:00
fallback.go fix(fallbacks): allow free-form dest entries for external servers (#4748) 2026-06-02 00:17:21 +02:00
inbound.go refactor(node): restart remote xray after tx commit, not inside it 2026-06-05 00:02:19 +02:00
inbound_client_traffic_test.go fix(clients): use client_inbounds link to resolve inbound, not stale id 2026-06-03 13:42:32 +02:00
inbound_migration_test.go fix(postgres): commit client traffic backfill in migration 2026-06-01 00:43:42 +02:00
inbound_update_tag_test.go fix(inbound): re-derive auto tags on edit and keep node tags consistent 2026-06-01 05:08:29 +02:00
metric_history.go feat(dashboard): more System History metrics, persistence & localized labels 2026-06-03 12:16:31 +02:00
node.go fix(nodes): Set Cert from Panel uses the node's own web cert for node inbounds 2026-06-03 16:41:02 +02:00
node_client_traffic_sum_test.go fix(nodes): sum client traffic across nodes instead of overwriting 2026-06-01 22:54:56 +02:00
node_tag_sync_test.go fix(inbound): re-derive auto tags on edit and keep node tags consistent 2026-06-01 05:08:29 +02:00
node_test.go Feat/multi inbound clients (#4469) 2026-05-19 12:20:24 +02:00
nord.go feat(xray/nord): searchable server list + colored load tag, surface API errors 2026-05-11 10:06:01 +02:00
outbound.go fix(xray): test UDP outbounds via xray probe (#4657) + Vision testseed & Flow form fixes 2026-05-29 21:07:01 +02:00
panel.go feat(settings): panel network proxy for the panel's own outbound requests 2026-05-28 00:45:32 +02:00
panel_other.go feat: add panel update functionality via web GUI (#4117) 2026-04-28 18:46:55 +02:00
panel_proxy_test.go fix(panel-proxy): route custom geo and http(s) Telegram through panelProxy 2026-06-03 14:57:49 +02:00
panel_test.go feat: add panel update functionality via web GUI (#4117) 2026-04-28 18:46:55 +02:00
panel_unix.go feat: add panel update functionality via web GUI (#4117) 2026-04-28 18:46:55 +02:00
port_conflict.go fix(inbounds): drop listen address from auto-generated inbound tag 2026-06-01 09:33:49 +02:00
port_conflict_test.go fix(inbounds): drop listen address from auto-generated inbound tag 2026-06-01 09:33:49 +02:00
server.go feat(migrate-db): SQLite <-> .dump conversion and Download Migration in Overview 2026-06-04 15:32:22 +02:00
server_vlessenc_test.go Feat: clarify VLESS encryption auth selection (#4271) 2026-05-12 11:39:28 +02:00
setting.go feat(sub): modern xray JSON format with unified finalmask editor (#4912) 2026-06-04 23:51:48 +02:00
setting_security_test.go feat(api-tokens): manage multiple named tokens; add tab/section anchor URLs 2026-05-13 16:34:31 +02:00
sub_uri_base_test.go style: gofmt -s (doc-comment list separator, struct field alignment) 2026-06-02 03:58:58 +02:00
sync_scale_postgres_test.go perf(clients): chunk IN queries and de-quadratic bulk delete/group/list 2026-06-04 20:35:30 +02:00
tgbot.go fix(tgbot): ignore commands for other bots (#4894) 2026-06-04 21:45:44 +02:00
tgbot_test.go fix(tgbot): ignore commands for other bots (#4894) 2026-06-04 21:45:44 +02:00
traffic_writer.go Fix: traffic writer restart freeze (#4265) 2026-05-12 11:36:05 +02:00
traffic_writer_test.go Fix: traffic writer restart freeze (#4265) 2026-05-12 11:36:05 +02:00
url_safety.go Security hardening: sessions, SSRF, CSP nonce, CSRF logout, trusted proxies (#4275) 2026-05-13 12:52:52 +02:00
user.go fix(auth): invalidate sessions when 2FA is enabled, fix dev 401 loop 2026-05-13 14:08:16 +02:00
warp.go fix(warp): persist client_id so WARP outbound gets reserved bytes (#4781) 2026-06-01 23:14:40 +02:00
websocket.go v3 2026-05-10 02:13:42 +02:00
xray.go feat(fallbacks): add per-rule dest override 2026-05-28 21:17:49 +02:00
xray_metrics.go Security hardening: sessions, SSRF, CSP nonce, CSRF logout, trusted proxies (#4275) 2026-05-13 12:52:52 +02:00
xray_setting.go Feat/multi inbound clients (#4469) 2026-05-19 12:20:24 +02:00
xray_setting_test.go Feat/multi inbound clients (#4469) 2026-05-19 12:20:24 +02:00