Skip to content

Удалить deprecated pass-through OrderService/Customer - #489

Merged
biz87 merged 2 commits into
betafrom
refactor/issue-357-remove-deprecated-passthrough
Aug 9, 2026
Merged

Удалить deprecated pass-through OrderService/Customer#489
biz87 merged 2 commits into
betafrom
refactor/issue-357-remove-deprecated-passthrough

Conversation

@Ibochkarev

Copy link
Copy Markdown
Member

Описание

Удалены тонкие @deprecated обёртки без собственной логики после аудита callers в репозитории (0 внутренних вызовов):

  • OrderService::handleOrderSave() → канон: msOrder::save()
  • OrderService::removeOrder() → канон: msOrder::remove()
  • Customer::getId() → канон: Customer::getOrCreate()

Добавлен smoke-тест DeprecatedPassThroughRemovedTest, который не допускает возврат pass-through в core.

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

  • Исправление бага
  • Новая функциональность
  • Breaking change (для внешних add-on, вызывавших deprecated API напрямую)
  • Рефакторинг / tech-debt

Связанные Issues

Closes #357

Аудит callers

Метод In-repo callers Действие
handleOrderSave 0 удалён
removeOrder 0 удалён
Customer::getId 0 (только changelog/комментарии) удалён

Внешние extras: если вызывали эти методы — мигрировать на канонические API выше.

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

cd core/components/minishop3
php tests/DeprecatedPassThroughRemovedTest.php  # exit 0
composer ci:php  # exit 0 (php -l + smoke 21 + phpunit 39)
php -l src/Services/Order/OrderService.php src/Controllers/Customer/Customer.php  # exit 0
  • Ручное тестирование
  • Автоматические тесты
  • Тестирование на разных версиях PHP/MODX

Конфигурация: PHP 8.4.17, branch refactor/issue-357-remove-deprecated-passthrough

Чеклист

  • Pass-through удалены (audit: 0 core callers)
  • Канонические пути — единственный путь в core
  • Smoke-тест против регрессии wrappers
  • CHANGELOG — по политике репозитория не обновлялся

@Ibochkarev Ibochkarev added priority: low Низкий приоритет, когда будет время enhancement New feature or request tech-debt Maintainability / refactor / architecture debt labels Jul 29, 2026
@Ibochkarev
Ibochkarev requested a review from biz87 July 29, 2026 17:02
@Ibochkarev
Ibochkarev force-pushed the refactor/issue-357-remove-deprecated-passthrough branch 4 times, most recently from 9506f38 to 3094f25 Compare August 7, 2026 18:44
Drop handleOrderSave/removeOrder and Customer::getId wrappers after
confirming zero in-repo callers; core uses msOrder::save/remove and
Customer::getOrCreate directly.

Closes #357
Move tests/DeprecatedPassThroughRemovedTest.php into
tests/Unit/Regression/ as a PHPUnit class and narrow assertions to
method_exists + ReflectionClass::hasMethod on OrderService and Customer,
dropping the full-tree grep that was prone to false positives.
@Ibochkarev
Ibochkarev force-pushed the refactor/issue-357-remove-deprecated-passthrough branch from 3094f25 to 462bb8a Compare August 9, 2026 09:42
@biz87
biz87 merged commit 34a4fb2 into beta Aug 9, 2026
3 checks passed
@Ibochkarev
Ibochkarev deleted the refactor/issue-357-remove-deprecated-passthrough branch August 9, 2026 18:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request priority: low Низкий приоритет, когда будет время tech-debt Maintainability / refactor / architecture debt

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature] Удалить deprecated pass-through OrderService/Customer после audit callers

2 participants