s-ui v1.5.6-beta6
Pre-releaseRelease Notes: v1.5.6-beta6
Release date: 2026-06-02
Hardening for the built-in 3x-ui migration (migrate-xui) and backup restore.
Follow-up to v1.5.6-beta5. No schema migrations; existing data is preserved.
What changed
- No more runaway re-import — importing a large 3x-ui database can take
longer than the web server's 30s write timeout, which severed the HTTP
response mid-import. The import itself completed server-side, but the client
never saw success and resubmitted, so each retry ran a full import and wrote
another pre-import backup. The import endpoints now lift the read/write
deadline — only after the request is authenticated, scope-checked and
rate-limited, and the deadline stays finite; the work itself remains bounded by
the 10-minute request context. The client now receives the result and stops
resubmitting. - Bounded pre-import backups — only the newest 10
s-ui-pre-xui-import-*.db
files are kept; older ones are pruned. A slow or retried import can no longer
fill the database directory. - Clear restore rejection — restoring a 3x-ui/x-ui database (which has no
s-ui schema) now fails fast with "use Migrate from 3x-ui" instead of the
crypticno such table: changes. Schema migration also tolerates a missing
changestable, so a genuinely old s-ui backup still restores. - Clearer Backup & Restore dialog — Restore is labelled as s-ui-backup-only,
and the quick 3x-ui import is distinguished from the full review wizard.
Upgrade
No manual migration; existing data is preserved. When importing a large 3x-ui
database, run it once and let it finish (it may take a while) — you no longer
need to retry, and the panel will not accumulate backup files. The CLI
s-ui import-xui also works and bypasses the web timeout entirely.
Примечания к релизу: v1.5.6-beta6
Дата релиза: 2026-06-02
Усиление встроенной миграции 3x-ui (migrate-xui) и восстановления из бэкапа.
Продолжение v1.5.6-beta5. Без миграций схемы; существующие данные сохраняются.
Что изменилось
- Больше нет цикла повторного импорта — импорт большой базы 3x-ui может
длиться дольше 30‑секундного write‑таймаута веб‑сервера, из‑за чего HTTP‑ответ
обрывался на середине. Сам импорт на сервере завершался, но клиент не видел
успех и слал запрос заново — и каждый повтор выполнял полный импорт и писал ещё
один pre‑import бэкап. Эндпоинты импорта теперь снимают read/write‑дедлайн —
только после аутентификации, проверки scope и rate‑limit, и сам дедлайн
остаётся конечным; работа по‑прежнему ограничена 10‑минутным контекстом
запроса. Теперь клиент получает результат и не повторяет. - Ограничение pre‑import бэкапов — хранятся только 10 свежих файлов
s-ui-pre-xui-import-*.db, старые удаляются. Медленный или повторный импорт
больше не забивает каталог базы. - Понятный отказ восстановления — восстановление базы 3x-ui/x-ui (в ней нет
схемы s-ui) теперь сразу падает с «используйте Migrate from 3x-ui» вместо
непонятногоno such table: changes. Миграция схемы также терпит отсутствие
таблицыchanges, поэтому реально старый бэкап s-ui всё равно восстановится. - Понятнее окно «Резервное копирование и восстановление» — Restore помечен
как «только для бэкапов s-ui», а быстрый импорт 3x-ui отделён от полного
мастера с разбором.
Обновление
Ручная миграция не нужна, данные сохраняются. При импорте большой базы 3x-ui
запустите один раз и дайте завершиться (может занять время): повторять больше не
нужно, и каталог не будет копить бэкапы. CLI s-ui import-xui тоже работает и
полностью обходит веб‑таймаут.