Что нового в 4.0.1
Версия 4.0.1 собрана от 3.3.0. Версия 4.0.0 не публиковалась, поэтому отдельной записи о ней нет: ниже всё, что изменилось по сравнению с 3.3.0. В 4.0.1 дополнительно уточнены тексты интерфейса настроек — работа плагина при этом не менялась.
Версия в Webasyst Store. На момент подготовки этой страницы в Webasyst Store опубликована версия 3.3.0. Когда 4.0.1 появится в Store, это будет видно на странице плагина.
Если вы обновляетесь с 3.3.0
- Сделайте резервную копию базы данных и папок
wa-apps/shop/plugins/responsiveimagesиwa-data/public/shop/responsiveimages. Не удаляйте плагин «для чистой установки»: удаление стирает таблицы плагина и папку данных. - Проверьте PHP: поддерживаются 8.2–8.5. Установщик Webasyst обновление на более старом PHP не остановит, а библиотеки плагина на нём не загрузятся.
- Сбросьте кеш Webasyst (Настройки → Очистить кеш), иначе публичные адреса плагина отвечают ошибкой 500.
- Откройте настройки плагина и нажмите «Сохранить»: так обновятся скрипт витрины и новые настройки.
- После обновления ничего не включается само: режим обработки остаётся «При просмотре», как в 3.3.0. Фоновая обработка и cron не включаются и не устанавливаются.
Пошаговые инструкции по обновлению и откату — в разделе Установка и обновление.
Важно (безопасность)
В версии 3.3.0 публичный адрес плагина мог отдавать настройки хранилища и токен GigaChat: ключи S3 и токен. В 4.0.1 он отдаёт только список полей, нужных витрине. Установка обновления не делает прежние ключи безопасными. Если вы работали на 3.3.0 с S3 или генерацией alt через GigaChat:
- сначала обновитесь и выполните шаги выше;
- затем выпустите новые ключи S3 и новый токен GigaChat у провайдера, внесите их в настройки плагина и проверьте работу;
- после этого отзовите старые ключи у провайдера.
Подробности — в разделе Безопасность.
Дополнительно: секретный ключ S3 и токен GigaChat больше не передаются на страницу настроек (вместо них показано «Ключ задан»); запросы к GigaChat идут с проверкой TLS-сертификата (корневой сертификат НУЦ Минцифры входит в плагин); страница настроек, «Удалить все созданные изображения» и статистика требуют права на настройки Shop-Script.
Новое
- Три режима обработки для каждой витрины отдельно: «При просмотре», «Фоновый» и Smart Hybrid. Подробнее — в разделе Режимы обработки.
- Бюджет на запрос посетителя: время, число изображений и максимальный размер исходника. Что не уместилось, остаётся в очереди, а посетитель видит оригинал.
- Фоновая обработка через консоль. Плагин cron не устанавливает: расписание настраиваете вы. Запуск защищён от перегрузки (нагрузка сервера, свободное место, предел памяти) и может быть поставлен на паузу.
- Карантин: изображение, которое не удалось обработать три раза, откладывается на 24 часа.
- Приоритет по посещаемости (Smart Hybrid): самые посещаемые страницы обрабатываются первыми.
- Вкладка «Диагностика» (только чтение, обе редакции) и отчёт для поддержки без доменов, путей, ключей и адресов хранилищ. См. Диагностика.
- Версия в именах файлов: при замене оригинала адрес копии меняется, и браузер, CDN и кеш страниц не покажут старую картинку. Заменённые версии хранятся 30 дней по умолчанию. См. Кеши и CDN.
- S3: кнопка проверки подключения, настройка «Не отправлять ACL» и «Cache-Control файлов» для файлов с версией в имени. См. Хранилище S3.
- Retina по плотности экрана (DPR): при выключенной опции «Создать копию изображения в 2x» Retina-изображение темы не заменяется обычным.
Изменено и исправлено
- Генерация по запросу посетителя ограничена бюджетом; в 3.3.0 ограничения не было.
- Для нескольких витрин страницы записываются и обрабатываются настройками своей витрины, а не первого домена.
- WebP и AVIF: в одном теге не смешиваются форматы; клиент без поддержки формата не получает WebP или AVIF.
- Alt: сгенерированный текст добавляется только тегу без атрибута
alt; уже заданный alt (в том числе пустойalt="") не изменяется. - Скачивание внешних изображений по HTTPS идёт с проверкой сертификата по системному хранилищу сервера.
- Готовые изображения больше не перекодируются при каждом просмотре.
- Исправлены: заниженная оценка памяти при копиях 2x и 3x, повторная обработка на каждом прогоне, рост числа дублей в списке изображений,
srcsetна Retina-экранах, ошибки команд в S3, удаление устаревших производных файлов (в том числе в S3). - Обновлены библиотеки обработки изображений и работы с S3; устранены предупреждения PHP 8.4 и 8.5. Новая библиотека расходует больше памяти.
- 4.0.1: уточнены тексты интерфейса настроек, редакции называются «Базовая» и «Премиум»; поле «Максимальная ширина» переименовано в «Пропускать изображения шире».
Откат
Откат на 3.3.0 возвращает прежний код, но не исправляет утечку ключей 3.3.0: перед откатом удалите ключ S3 и токен GigaChat из настроек. Порядок отката описан в разделе Установка и обновление.