3x-ui/database
Sora39831 c94372a22c fix: address all code review issues for MariaDB support
- Prevent DBPassword from leaking to frontend (json:"-")
- Make migration direction explicit via --direction flag, set dbType only after success
- Use driver-appropriate DROP INDEX IF EXISTS for SQLite vs MariaDB
- Build DSN with mysql.Config.FormatDSN() to prevent injection with special chars
- Close DB before re-initialization in InitDB
- Add migration tests (5 tests using SQLite in-memory DBs)
- Parse JSON once in GetDBConfigFromJSON instead of 7 times
- Use Go binary for dbType in shell script instead of fragile grep
- Add rollback on failure in db_switch_to_sqlite
- Validate DB settings in CheckValid
2026-04-03 09:53:20 +08:00
..
model test: add unit tests for critical modules and fix flaky redirect middleware 2026-04-03 08:44:51 +08:00
db.go fix: address all code review issues for MariaDB support 2026-04-03 09:53:20 +08:00
db_test.go feat: refactor InitDB to be driver-agnostic with SQLite/MariaDB dispatch 2026-04-03 09:26:42 +08:00
migrate.go fix: address all code review issues for MariaDB support 2026-04-03 09:53:20 +08:00
migrate_test.go fix: address all code review issues for MariaDB support 2026-04-03 09:53:20 +08:00