github Leadaxe/LxBox v2.0.2
LxBox v2.0.2

latest releases: v2.25.20, v2.25.19, v2.25.19-rc.3...
4 months ago

L×Box v2.0.2

Patch-релиз: §107 — изменения правил роутинга (и других настроек) не применялись к туннелю. Если после правки правил у тебя «нет трафика», и не помогает даже выключить/включить VPN — это чинит ровно это. Регрессия жила с v1.9.0 (lazy-persist §076) и доехала до всех в v2.0.x; спасибо за репорт на 4PDA.

Quick links:
🐛 Fixes ·
🗑 Removed ·
📲 Install ·
🇷🇺 На русском


🐛 Fixes

§107 — Изменения настроек не попадали в конфиг (нет трафика после правки правил)

Task spec.

С v1.9.0 editing-экраны (Routing, DNS, Tunnel Applications, Core vars) сохраняют изменения «лениво» — при выходе с экрана. Пересборка конфига при этом стартует в момент нажатия «назад», а отложенная запись происходит только после анимации перехода (~300 мс позже). Итог: конфиг детерминированно собирался из состояния «до последней правки» — хронически отставал на один визит экрана. Рестарт туннеля не помогал: на диске уже лежал устаревший конфиг.

Симптом из полевого репорта: «поменял правила → подключаюсь — трафика нет; лечится только заходом в Tunnel Applications, выключить всё / включить обратно» — этот танец просто прогонял ещё два цикла пересборки и протаскивал застрявшую правку.

Теперь каждая мутация сразу попадает в in-memory кэш настроек (staged-запись), а на диск уезжает одним атомарным flush'ем при выходе с экрана, как и раньше. Любой читатель — пересборка, старт, bootstrap — видит свежие данные мгновенно. Дисковых записей больше не стало (на Core vars — стало меньше: один flush вместо записи на каждую переменную).

§107 — Start достраивает конфиг перед запуском

Нажатие Start при несобранных изменениях теперь сначала молча доводит конфиг до актуального (доли секунды), и только потом поднимает туннель — VPN всегда стартует со свежими правилами. Плашка «Config rebuilt — restart VPN to apply» осталась только для крайних случаев (ошибка сборки, config-lock через Debug API).

§107 — Честный баннер при ошибке пересборки

Если пересборка конфига упала, баннер «Settings changed» больше не гаснет — раньше флаг сбрасывался безусловно, и приложение делало вид, что всё применилось. Плюс: пересборка, отложенная из-за фонового обновления подписок, теперь догоняется автоматически, а не теряется.

§108 — Пикер приложений: системный «назад» больше не теряет выбор

Task spec.

В пикере приложений (Tunnel Applications → Add) выбор сохранялся только при выходе стрелкой в AppBar; системный «назад» или жест молча выкидывал отмеченное — добавить приложение в allow/deny-список жестом было невозможно. Баг жил с самого появления пикера. Теперь любой способ выхода возвращает выбор.


🗑 Removed

Настройка «Auto-rebuild config» удалена

App Settings → General → «Auto-rebuild config» (ключ auto_rebuild) упразднена. Пересборка на возврате к home теперь всегда автоматическая: корректность конфига на старте гарантирует гейт в Start, и режим «только баннер, пересоберу вручную» потерял смысл. У тех, кто держал тумблер в OFF, поведение изменится на автоматическое. Старый ключ вычищается из настроек сам.


🔬 Verified

  • flutter analyze clean; 917 тестов зелёные (+7 новых в settings_storage_staging_test.dart: staged-записи не трогают диск до flush, читатель видит staged-правила сразу — регрессионный сценарий §107; +2 в app_picker_pop_test.dart; обновлён lazy_persist_mixin_test.dart под staging-контракт).
  • Root cause подтверждён построчной трассировкой didPop → rebuild → dispose-flush; неверный race-анализ в спеке §076 исправлен (addendum).
  • Оба фикса проверены вручную на устройстве (release-сборка): пикер сохраняет выбор при системном «назад»; правила применяются сразу после Start, без перезахода в настройки.

📲 Install

adb install -r app-release.apk

Без uninstall! Поверх существующей установки. Все настройки и подписки сохранятся.


🇷🇺 L×Box v2.0.2 на русском

Patch — фикс применения настроек:

  • Правки правил теперь реально применяются: раньше конфиг собирался из состояния «до последней правки» (гонка ленивого сохранения, с v1.9.0), и не помогал даже рестарт VPN — отсюда «нет трафика, пока не потыкаешь Tunnel Applications». Теперь изменения подхватываются мгновенно.
  • Start сам достраивает конфиг: жмёшь Start при несохранённых изменениях — туннель поднимется уже с новыми правилами.
  • Баннер не врёт: при ошибке пересборки «Settings changed» остаётся висеть, а не гаснет молча.
  • Пикер приложений (Tunnel Applications): системный «назад» больше не теряет отмеченные приложения — раньше выбор сохранялся только через стрелку в AppBar.
  • Убрана настройка «Auto-rebuild config» — пересборка теперь всегда автоматическая, тумблер потерял смысл.

Предыдущий релиз: v2.0.1.

Don't miss a new LxBox release

NewReleases is sending notifications on new releases.