Skip to content

BAS-IP Gate Manager 2.0.2 «Kronos»

Latest

Choose a tag to compare

@paulmann paulmann released this 10 Oct 00:40
· 6 commits to main since this release

BAS-IP Gate Manager 2.0.2 «Kronos»

Защита от неполной конфигурации PHP и понятная диагностика.

Исправлено

  • Фатальная ошибка заменена понятным сообщением. UpdateService::makeZip()
    и extract() создавали ZipArchive без проверки наличия расширения zip.
    Если расширение отключено, автообновление падало с
    Error: Class "ZipArchive" not found — теперь обе функции проверяют
    class_exists(ZipArchive::class), как это уже было в BackupService.
    Поведение подтверждено запуском PHP с выключенным zip: обе функции сообщают
    «Расширение PHP zip не установлено — снимок версии создать невозможно»
    и «…распаковка обновления невозможна».

Проверено

  • 217 тестов / 930 проверок — зелёные на PHP 8.5 (SQLite).
  • /health.json → 200, status: ok, все обязательные расширения
    (curl, pdo, mbstring, json, openssl, sodium, zip) загружены.

Требования к окружению (проверьте на своём сервере)

Расширение Зачем
pdo, pdo_mysql доступ к БД (MySQL/MariaDB — по умолчанию)
pdo_pgsql, pdo_sqlite PostgreSQL и SQLite (демо, тесты)
mbstring, json, curl, openssl, fileinfo ядро, HTTP, загрузки
sodium шифрование секретов, Argon2id для паролей
zip резервные копии, снимки версий, обновления
intl форматирование дат и чисел (в коде используется опционально)

Без zip приложение работает, но не сможет ни создать бэкап, ни обновиться —
это первый пункт, который стоит проверить (php bin/bas-ip doctor).

Контрольные суммы

sha256sum -c bas-ip-2.0.2.zip.sha256

Автообновление

Канал stable → /releases/latest. Обновление с 2.0.1 на 2.0.2 проходит
штатно. С 2.0.0 на PHP 8.5 обновиться не получится (в 2.0.0 сломан HTTP-слой) —
скачайте архив вручную и распакуйте поверх, затем php bin/bas-ip migrate.

Документация