3x-ui/database
MHSanaei 80173b1b1d
fix(db): make password-hash migration idempotent to prevent lock-out (#4612)
The UserPasswordHash seeder bcrypt-hashed user.Password unconditionally, assuming plaintext. If it ran on an already-bcrypt value (DB restore, SQLite<->Postgres switch, history_of_seeders inconsistency on upgrade) it double-hashed the password, locking the admin out with both old and new passwords rejected. Skip any password that is already a bcrypt hash.
2026-06-01 20:48:12 +02:00
..
model fix(model): accept tun protocol in inbound validation 2026-06-01 02:23:57 +02:00
db.go fix(db): make password-hash migration idempotent to prevent lock-out (#4612) 2026-06-01 20:48:12 +02:00
db_seed_test.go test: name temp sqlite db x-ui.db to match the real db filename 2026-05-31 15:25:05 +02:00
dialect.go fix(nodes): use GREATEST for last_online merge on PostgreSQL 2026-05-29 02:04:02 +02:00
migrate_data.go fix(postgres): resync id sequences so adding clients no longer collides 2026-05-31 23:44:57 +02:00