Skip to content

chore(release): 1.14.0-beta1 - #777

Open
biz87 wants to merge 1 commit into
betafrom
release/1.14.0-beta1
Open

biz87 wants to merge 1 commit into
betafrom
release/1.14.0-beta1

Conversation

@biz87

@biz87 biz87 commented Sep 23, 2026

Copy link
Copy Markdown
Member

Описание

Подготовка релиза 1.14.0-beta1.

  • Версия поднята в _build/config.inc.php (version + release) и core/components/minishop3/src/MiniShop3.php.
  • CHANGELOG.md — развёрнутая запись на русском, обновлена навигация по месяцам.
  • core/components/minishop3/docs/changelog.txt — блок релиза на английском по разделам Added / Changed / Fixed. Размер блока 5.8 КБ, то есть в metadata транспортного пакета он укладывается с запасом.

С предыдущего тега v1.13.0-beta1 (13 августа) влито 103 коммита.

Состав релиза

Коммерческий жизненный цикл заказа. Складской учёт с атомарным журналом резервов (#603, #763), попытки оплаты с идемпотентными вебхуками (#604), отгрузки с трек-номерами и синхронизацией статуса (#605), управляемая смена статуса заказа с проверкой переходов и доменными портами внутри транзакции (#596). Всё опционально и по умолчанию выключено.

Доменные события и исходящие вебхуки (#772, #774): событие order.status_changed с полезной нагрузкой только из идентификаторов и сумм, подпись HMAC-SHA256, заглушка вместо HTTP по умолчанию, регистрация слушателей через addListener().

ACL групп ресурсов на всей витрине (#666, #677, #681, #757): публичный каталог, Fenom-сниппеты и корзина, member-каталог для залогиненного покупателя, модель msCustomerGroup.

Публичный Web API: Category API, фасеты, расширенные фильтры, галерея товара, резолв по alias (#578, #580, #597, #598, #644), SEO-блок каталога с картой TV (#599, #715).

Vue-менеджер под MODX 3: тема из VueTools через getActiveTheme(), выравненные тулбары, единый размер кнопок (#621, #702, #738, #761, #768).

Поведенческие изменения, заметные владельцу магазина

  1. Неуспешная оплата больше не отменяет заказ по умолчаниюms3_payment_on_failed_status теперь 0, повторная оплата не упирается в 409. При включённом складском учёте резерв остаётся за заказом до отмены; чтобы остаток освобождался, укажите в настройке статус отмены. Для нетронутых установок дефолт правит миграция.
  2. Уведомления отправляются даже при ошибке плагина на msOnChangeOrderStatus — статус уже зафиксирован, покупатель не остаётся без письма.
  3. {$payment} в msGetOrder урезан до белого списка (id, name, description, price, logo) — учётные данные шлюза больше не попадают в HTML. Кастомный чанк, использовавший {$payment.class} или {$payment.properties}, нужно переписать.
  4. &sortby в msProducts проверяется по белому списку — произвольный SQL в ORDER BY больше не проходит, отброшенные части пишутся в журнал.

Тип изменений

  • Исправление бага (non-breaking change)
  • Новая функциональность (non-breaking change)
  • Breaking change (изменение, ломающее обратную совместимость)
  • Рефакторинг (без изменения функциональности)
  • Документация
  • Другое: подготовка релиза (версия + changelog)

Как это было протестировано?

cd core/components/minishop3
php vendor/bin/phpunit --no-coverage          # 738 tests, 2630 assertions, OK
for t in tests/*Test.php; do php "$t"; done   # 117/117
php vendor/bin/phpstan analyse -c phpstan.neon --memory-limit=1G   # No errors
php -l _build/config.inc.php && php -l core/components/minishop3/src/MiniShop3.php

Проверено, что блок текущей версии из changelog.txt корректно вычитывается сборщиком (readLatestChangelogEntry) и что строк 1.13.0 в коде не осталось.

  • Автоматические тесты
  • Ручное тестирование
  • Тестирование на разных версиях PHP/MODX

Чеклист

  • Версия поднята в обоих местах и синхронна
  • CHANGELOG.md и docs/changelog.txt дополнены
  • PHPStan проходит без новых ошибок
  • Пройден релизный чеклист сверки с документацией

Дополнительные заметки

Релизная сверка с документацией выполнена, расхождения зафиксированы отдельно и в этот PR не входят: не описаны шесть новых таблиц, тринадцать событий, десять настроек, эндпойнт платёжного вебхука и контракт исходящих вебхуков; часть страниц устарела фактически. Документация по складу, отгрузкам и попыткам оплаты выйдет отдельным обновлением — это отмечено в обоих changelog.

Сверка также выявила в коде две регрессии сортировки, они исправлены до релиза отдельным PR (#776).

Версия поднята в _build/config.inc.php и src/MiniShop3.php.
CHANGELOG.md и docs/changelog.txt дополнены блоком релиза: складской учёт,
жизненный цикл оплаты и отгрузки, доменные события с исходящими вебхуками,
ACL групп ресурсов на витрине, белый список sortby. Отдельно отмечено, что
документация по складу, отгрузкам и попыткам оплаты выйдет позже.
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