Skip to content

Remove cache_format from the manager system settings UI - #15

Open
Ibochkarev wants to merge 1 commit into
3.xfrom
fix/issue-15105-remove-cache-format-ui
Open

Remove cache_format from the manager system settings UI#15
Ibochkarev wants to merge 1 commit into
3.xfrom
fix/issue-15105-remove-cache-format-ui

Conversation

@Ibochkarev

@Ibochkarev Ibochkarev commented Aug 21, 2026

Copy link
Copy Markdown
Member

Что сделано

Изменение cache_format в System Settings крашит менеджер и сайт. Настройки грузятся из кэша, поэтому новый формат не может прочитать файлы, записанные старым. Мейнтейнеры согласились убрать настройку из UI менеджера и задокументировать override через $config_options в config.inc.php (modxcms#15105).

Этот PR убирает cache_format из transport установки (новые сайты) и удаляет строку при апгрейде для существующих установок, тот же паттерн, что cache_disabled (modxcms#14022). Runtime-поддержка через xPDO::OPT_CACHE_FORMAT / $config_options не меняется.

Как проверить

  1. Чистая установка с этой ветки: System Settings → Caching не должен содержать cache_format.
  2. Апгрейд с 3.2.x: запустите setup upgrade, подтвердите, что строка cache_format исчезла из system_settings и из грида менеджера.
  3. Опциональный override: задайте $config_options['cache_format'] в core/config/config.inc.php, очистите каталог кэша, подтвердите, что сайт грузится.

Gate E:

  • php -l setup/includes/upgrades/common/3.3.0-remove-cache-format.php — exit 0
  • php -l setup/includes/upgrades/mysql/3.3.0-pl.php — exit 0
  • php -l _build/data/transport.core.system_settings.php — exit 0
  • Локальный прогон скрипта апгрейда удалил строку из БД; getOption(OPT_CACHE_FORMAT) по-прежнему резолвится

Связанные

Refs modxcms#15105
Refs modxcms#13832 (убран cache_system_settings только из transport)
Refs modxcms#14022 (cache_disabled transport + upgrade remove)

Совместимость

Универсально для 3.3.0. Сайты, правившие cache_format в менеджере, должны использовать $config_options['cache_format'] в config.inc.php и чистить каталог кэша при смене значения.

Совместимость

Без изменения сигнатур публичных методов. Настройка исчезает из UI менеджера и из таблицы system_settings после апгрейда. Config-file override продолжает работать. Безопасно для 3.3.0; не silent behavior change для сайтов, не трогавших настройку (дефолт остался 0 / PHP).

Оригинал: modxcms#16994

Changing it in the manager crashes the site because settings are
loaded from cache. Keep overrides via config_options; drop the
setting on upgrade for existing installs.
@Ibochkarev Ibochkarev changed the title Убрать cache_format из UI системных настроек менеджера Remove cache_format from the manager system settings UI Aug 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant