From 5dc4daf010a97f613b13895e72c13ac9c3eebe9a Mon Sep 17 00:00:00 2001 From: Nathan Boiron Date: Sat, 7 Feb 2026 10:06:36 +0100 Subject: [PATCH] Remplacement de `beberlei/assert` par `webmozart/assert` MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit L'ancienne librairie n'est plus maintenue et l'autre est beaucoup plus souvent utilisée. --- composer.json | 5 +- composer.lock | 185 ++++++------------ sources/Afup/Association/Cotisations.php | 6 +- .../Repository/CompanyMemberRepository.php | 6 +- .../Model/Repository/UserRepository.php | 6 +- .../Controller/Admin/GetMenuAction.php | 4 +- .../Members/GeneralMeeting/ListAction.php | 6 +- .../Members/GeneralMeeting/ListingAction.php | 4 +- .../Controller/Admin/Speaker/ExportAction.php | 4 +- .../Admin/Speaker/SpeakerAddAction.php | 4 +- .../Admin/Speaker/SpeakerEditAction.php | 6 +- .../Admin/Speaker/SpeakerListAction.php | 6 +- .../Controller/Legacy/LegacyEventAction.php | 10 +- .../Website/Membership/Fee/DownloadAction.php | 6 +- .../Website/Membership/Fee/IndexAction.php | 4 +- .../Membership/GeneralMeeting/IndexAction.php | 8 +- .../Model/Repository/EventStatsRepository.php | 4 +- .../Model/Repository/SpeakerRepository.php | 6 +- sources/AppBundle/Slack/MessageFactory.php | 4 +- sources/PlanetePHP/FeedArticleRepository.php | 6 +- sources/PlanetePHP/FeedRepository.php | 4 +- 21 files changed, 117 insertions(+), 177 deletions(-) diff --git a/composer.json b/composer.json index 6d6e0e5e1..14761a361 100644 --- a/composer.json +++ b/composer.json @@ -13,7 +13,6 @@ "ext-pdo": "*", "ext-zip": "*", "algolia/algoliasearch-client-php": "^3.4", - "beberlei/assert": "^2.9", "captioning/captioning": "^2.6", "ccmbenchmark/ting_bundle": "^3.8", "cocur/slugify": "^2.3", @@ -66,6 +65,7 @@ "twig/intl-extra": "^3.21", "twig/string-extra": "^3.21", "twig/twig": "^3.21", + "webmozart/assert": "^2.1", "znk3r/html_common": "*", "znk3r/html_quickform": "4.0.2" }, @@ -157,8 +157,7 @@ "symfony/json-path": "7.3.*", "symfony/web-profiler-bundle": "7.3.*", "symplify/vendor-patches": "^11.4", - "tomasvotruba/type-coverage": "^2.1", - "webmozart/assert": "^2.0" + "tomasvotruba/type-coverage": "^2.1" }, "repositories": [ { diff --git a/composer.lock b/composer.lock index f46142809..b10a6bddf 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "db1e2f66b63744b8f523154cb74c66ed", + "content-hash": "a55bcfd2a0998e8ea473bd3f6dc52e40", "packages": [ { "name": "algolia/algoliasearch-client-php", @@ -147,65 +147,6 @@ }, "time": "2023-04-25T13:21:16+00:00" }, - { - "name": "beberlei/assert", - "version": "v2.9.9", - "source": { - "type": "git", - "url": "https://github.com/beberlei/assert.git", - "reference": "124317de301b7c91d5fce34c98bba2c6925bec95" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/beberlei/assert/zipball/124317de301b7c91d5fce34c98bba2c6925bec95", - "reference": "124317de301b7c91d5fce34c98bba2c6925bec95", - "shasum": "" - }, - "require": { - "ext-mbstring": "*", - "php": ">=5.3" - }, - "require-dev": { - "friendsofphp/php-cs-fixer": "^2.1.1", - "phpunit/phpunit": "^4.8.35|^5.7" - }, - "type": "library", - "autoload": { - "files": [ - "lib/Assert/functions.php" - ], - "psr-4": { - "Assert\\": "lib/Assert" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-2-Clause" - ], - "authors": [ - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de", - "role": "Lead Developer" - }, - { - "name": "Richard Quadling", - "email": "rquadling@gmail.com", - "role": "Collaborator" - } - ], - "description": "Thin assertion library for input validation in business models.", - "keywords": [ - "assert", - "assertion", - "validation" - ], - "support": { - "issues": "https://github.com/beberlei/assert/issues", - "source": "https://github.com/beberlei/assert/tree/v2.9.9" - }, - "time": "2019-05-28T15:27:37+00:00" - }, { "name": "cakephp/chronos", "version": "3.1.0", @@ -10592,6 +10533,68 @@ ], "time": "2025-05-03T07:21:55+00:00" }, + { + "name": "webmozart/assert", + "version": "2.1.2", + "source": { + "type": "git", + "url": "https://github.com/webmozarts/assert.git", + "reference": "ce6a2f100c404b2d32a1dd1270f9b59ad4f57649" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/ce6a2f100c404b2d32a1dd1270f9b59ad4f57649", + "reference": "ce6a2f100c404b2d32a1dd1270f9b59ad4f57649", + "shasum": "" + }, + "require": { + "ext-ctype": "*", + "ext-date": "*", + "ext-filter": "*", + "php": "^8.2" + }, + "suggest": { + "ext-intl": "", + "ext-simplexml": "", + "ext-spl": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-feature/2-0": "2.0-dev" + } + }, + "autoload": { + "psr-4": { + "Webmozart\\Assert\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + }, + { + "name": "Woody Gilk", + "email": "woody.gilk@gmail.com" + } + ], + "description": "Assertions to validate method input/output with nice error messages.", + "keywords": [ + "assert", + "check", + "validate" + ], + "support": { + "issues": "https://github.com/webmozarts/assert/issues", + "source": "https://github.com/webmozarts/assert/tree/2.1.2" + }, + "time": "2026-01-13T14:02:24+00:00" + }, { "name": "willdurand/geocoder", "version": "5.0.0", @@ -15168,68 +15171,6 @@ } ], "time": "2025-12-05T16:38:02+00:00" - }, - { - "name": "webmozart/assert", - "version": "2.0.0", - "source": { - "type": "git", - "url": "https://github.com/webmozarts/assert.git", - "reference": "1b34b004e35a164bc5bb6ebd33c844b2d8069a54" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webmozarts/assert/zipball/1b34b004e35a164bc5bb6ebd33c844b2d8069a54", - "reference": "1b34b004e35a164bc5bb6ebd33c844b2d8069a54", - "shasum": "" - }, - "require": { - "ext-ctype": "*", - "ext-date": "*", - "ext-filter": "*", - "php": "^8.2" - }, - "suggest": { - "ext-intl": "", - "ext-simplexml": "", - "ext-spl": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-feature/2-0": "2.0-dev" - } - }, - "autoload": { - "psr-4": { - "Webmozart\\Assert\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" - }, - { - "name": "Woody Gilk", - "email": "woody.gilk@gmail.com" - } - ], - "description": "Assertions to validate method input/output with nice error messages.", - "keywords": [ - "assert", - "check", - "validate" - ], - "support": { - "issues": "https://github.com/webmozarts/assert/issues", - "source": "https://github.com/webmozarts/assert/tree/2.0.0" - }, - "time": "2025-12-16T21:36:00+00:00" } ], "aliases": [], diff --git a/sources/Afup/Association/Cotisations.php b/sources/Afup/Association/Cotisations.php index 04c5d3931..fa2dfa576 100644 --- a/sources/Afup/Association/Cotisations.php +++ b/sources/Afup/Association/Cotisations.php @@ -19,9 +19,9 @@ use AppBundle\Email\Mailer\MailUser; use AppBundle\Email\Mailer\MailUserFactory; use AppBundle\Email\Mailer\Message; -use Assert\Assertion; use DateInterval; use DateTime; +use Webmozart\Assert\Assert; define('AFUP_COTISATIONS_REGLEMENT_ESPECES', 0); define('AFUP_COTISATIONS_REGLEMENT_CHEQUE', 1); @@ -509,7 +509,7 @@ public function envoyerFacture($id_cotisation, Mailer $mailer, UserRepository $u if ($personne['type_personne'] == MemberType::MemberCompany->value) { $company = $this->companyMemberRepository ? $this->companyMemberRepository->get($personne['id_personne']) : null; - Assertion::notNull($company); + Assert::notNull($company); $contactPhysique = [ 'nom' => $company->getLastName(), 'prenom' => $company->getFirstName(), @@ -517,7 +517,7 @@ public function envoyerFacture($id_cotisation, Mailer $mailer, UserRepository $u ]; } else { $user = $userRepository->get($personne['id_personne']); - Assertion::notNull($user); + Assert::notNull($user); $contactPhysique = [ 'nom' => $user->getLastName(), 'prenom' => $user->getFirstName(), diff --git a/sources/AppBundle/Association/Model/Repository/CompanyMemberRepository.php b/sources/AppBundle/Association/Model/Repository/CompanyMemberRepository.php index 68f0c9b91..af6ab4208 100644 --- a/sources/AppBundle/Association/Model/Repository/CompanyMemberRepository.php +++ b/sources/AppBundle/Association/Model/Repository/CompanyMemberRepository.php @@ -6,7 +6,6 @@ use AppBundle\Association\MemberType; use AppBundle\Association\Model\CompanyMember; -use Assert\Assertion; use Aura\SqlQuery\Common\SelectInterface; use CCMBenchmark\Ting\Driver\Mysqli\Serializer\Boolean; use CCMBenchmark\Ting\Repository\CollectionInterface; @@ -17,6 +16,7 @@ use CCMBenchmark\Ting\Repository\Repository; use CCMBenchmark\Ting\Serializer\SerializerFactoryInterface; use InvalidArgumentException; +use Webmozart\Assert\Assert; /** * @extends Repository @@ -71,12 +71,12 @@ public function loadAll() */ public function search($sort = 'name', $direction = 'asc', $filter = null, $onlyDisplayActive = true) { - Assertion::inArray($direction, ['asc', 'desc']); + Assert::inArray($direction, ['asc', 'desc']); $sorts = [ 'name' => ['raison_sociale'], 'status' => ['etat', 'raison_sociale'], ]; - Assertion::keyExists($sorts, $sort); + Assert::keyExists($sorts, $sort); $queryBuilder = $this->getQueryBuilderWithCompleteCompanyMember() ->orderBy(array_map(static fn($field): string => $field . ' ' . $direction, $sorts[$sort])); diff --git a/sources/AppBundle/Association/Model/Repository/UserRepository.php b/sources/AppBundle/Association/Model/Repository/UserRepository.php index 644aaaf4f..7fe8e663c 100644 --- a/sources/AppBundle/Association/Model/Repository/UserRepository.php +++ b/sources/AppBundle/Association/Model/Repository/UserRepository.php @@ -8,7 +8,6 @@ use AppBundle\Association\Model\CompanyMember; use AppBundle\Association\Model\User; use AppBundle\Event\Model\Badge; -use Assert\Assertion; use Aura\SqlQuery\Common\SelectInterface; use CCMBenchmark\Ting\Driver\Mysqli\Serializer\Boolean; use CCMBenchmark\Ting\Repository\CollectionInterface; @@ -26,6 +25,7 @@ use Symfony\Component\Security\Core\User\PasswordUpgraderInterface; use Symfony\Component\Security\Core\User\UserInterface; use Symfony\Component\Security\Core\User\UserProviderInterface; +use Webmozart\Assert\Assert; /** * @extends Repository @@ -176,13 +176,13 @@ public function search( $isCompanyManager = null, $needsUptoDateMembership = null, ) { - Assertion::inArray($direction, ['asc', 'desc']); + Assert::inArray($direction, ['asc', 'desc']); $sorts = [ 'lastname' => ['nom', 'prenom'], 'firstname' => ['prenom', 'nom'], 'status' => ['etat','nom', 'prenom'], ]; - Assertion::keyExists($sorts, $sort); + Assert::keyExists($sorts, $sort); $queryBuilder = $this->getQueryBuilderWithCompleteUser() ->orderBy(array_map(static fn($field): string => $field . ' ' . $direction, $sorts[$sort])); diff --git a/sources/AppBundle/Controller/Admin/GetMenuAction.php b/sources/AppBundle/Controller/Admin/GetMenuAction.php index 3314049d1..9568c400b 100644 --- a/sources/AppBundle/Controller/Admin/GetMenuAction.php +++ b/sources/AppBundle/Controller/Admin/GetMenuAction.php @@ -4,11 +4,11 @@ namespace AppBundle\Controller\Admin; -use Assert\Assertion; use Symfony\Component\DependencyInjection\Attribute\Autowire; use Symfony\Component\HttpFoundation\RequestStack; use Symfony\Component\HttpFoundation\Response; use Twig\Environment; +use Webmozart\Assert\Assert; class GetMenuAction { @@ -23,7 +23,7 @@ public function __construct( public function __invoke(): Response { $masterRequest = $this->requestStack->getMainRequest(); - Assertion::notNull($masterRequest); + Assert::notNull($masterRequest); $page = $masterRequest->query->get('page'); $route = $masterRequest->get('_route'); diff --git a/sources/AppBundle/Controller/Admin/Members/GeneralMeeting/ListAction.php b/sources/AppBundle/Controller/Admin/Members/GeneralMeeting/ListAction.php index 692c21ef9..c38e74517 100644 --- a/sources/AppBundle/Controller/Admin/Members/GeneralMeeting/ListAction.php +++ b/sources/AppBundle/Controller/Admin/Members/GeneralMeeting/ListAction.php @@ -6,10 +6,10 @@ use AppBundle\Association\Model\Repository\UserRepository; use AppBundle\GeneralMeeting\GeneralMeetingRepository; -use Assert\Assertion; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Twig\Environment; +use Webmozart\Assert\Assert; class ListAction { @@ -27,8 +27,8 @@ public function __invoke(Request $request): Response $latestDate = $this->generalMeetingRepository->getLatestAttendanceDate(); $sort = $request->query->get('sort', 'nom'); $direction = $request->query->get('direction', 'asc'); - Assertion::inArray($sort, self::VALID_SORTS); - Assertion::inArray($direction, self::VALID_DIRECTIONS); + Assert::inArray($sort, self::VALID_SORTS); + Assert::inArray($direction, self::VALID_DIRECTIONS); $dates = $this->generalMeetingRepository->getAllDates(); $convocations = count($this->userRepository->getActiveMembers()); $nbAttendeesAndPowers = $nbAttendees = $quorum = $validAttendeeIds = null; diff --git a/sources/AppBundle/Controller/Admin/Members/GeneralMeeting/ListingAction.php b/sources/AppBundle/Controller/Admin/Members/GeneralMeeting/ListingAction.php index c03194961..65353da80 100644 --- a/sources/AppBundle/Controller/Admin/Members/GeneralMeeting/ListingAction.php +++ b/sources/AppBundle/Controller/Admin/Members/GeneralMeeting/ListingAction.php @@ -6,11 +6,11 @@ use Afup\Site\Utils\PDF_AG; use AppBundle\GeneralMeeting\GeneralMeetingRepository; -use Assert\Assertion; use DateTimeImmutable; use Symfony\Component\HttpFoundation\BinaryFileResponse; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\ResponseHeaderBag; +use Webmozart\Assert\Assert; class ListingAction { @@ -19,7 +19,7 @@ public function __construct(private readonly GeneralMeetingRepository $generalMe public function __invoke(Request $request): BinaryFileResponse { $latestDate = $this->generalMeetingRepository->getLatestAttendanceDate(); - Assertion::notNull($latestDate); + Assert::notNull($latestDate); $selectedDate = $latestDate; if ($request->query->has('date')) { $selectedDate = DateTimeImmutable::createFromFormat('d/m/Y', (string) $request->query->get('date')); diff --git a/sources/AppBundle/Controller/Admin/Speaker/ExportAction.php b/sources/AppBundle/Controller/Admin/Speaker/ExportAction.php index 592365e43..614149e4f 100644 --- a/sources/AppBundle/Controller/Admin/Speaker/ExportAction.php +++ b/sources/AppBundle/Controller/Admin/Speaker/ExportAction.php @@ -6,11 +6,11 @@ use AppBundle\Event\Model\Repository\EventRepository; use AppBundle\Event\Speaker\ExportGenerator; -use Assert\Assertion; use SplFileObject; use Symfony\Component\HttpFoundation\BinaryFileResponse; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\ResponseHeaderBag; +use Webmozart\Assert\Assert; class ExportAction { @@ -26,7 +26,7 @@ public function __invoke(Request $request): BinaryFileResponse } else { $event = $this->eventRepository->getNextEvent(); } - Assertion::notNull($event); + Assert::notNull($event); $file = new SplFileObject(sys_get_temp_dir() . DIRECTORY_SEPARATOR . uniqid('speaker_', true), 'w+'); $this->exportGenerator->export($event, $file); $response = new BinaryFileResponse($file, BinaryFileResponse::HTTP_OK, ['Content-Type' => 'text/html; charset=utf-8']); diff --git a/sources/AppBundle/Controller/Admin/Speaker/SpeakerAddAction.php b/sources/AppBundle/Controller/Admin/Speaker/SpeakerAddAction.php index 7d84e6db6..2ee2e8ecb 100644 --- a/sources/AppBundle/Controller/Admin/Speaker/SpeakerAddAction.php +++ b/sources/AppBundle/Controller/Admin/Speaker/SpeakerAddAction.php @@ -11,10 +11,10 @@ use AppBundle\Event\Model\Repository\EventRepository; use AppBundle\Event\Model\Repository\SpeakerRepository; use AppBundle\Event\Model\Speaker; -use Assert\Assertion; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; +use Webmozart\Assert\Assert; class SpeakerAddAction extends AbstractController { @@ -28,7 +28,7 @@ public function __construct( public function __invoke(Request $request): Response { $event = $this->eventRepository->get($request->query->get('eventId')); - Assertion::notNull($event); + Assert::notNull($event); $data = new SpeakerFormData(); $form = $this->createForm(SpeakerType::class, $data, [ SpeakerType::OPT_USER_GITHUB => true, diff --git a/sources/AppBundle/Controller/Admin/Speaker/SpeakerEditAction.php b/sources/AppBundle/Controller/Admin/Speaker/SpeakerEditAction.php index 3e4f22827..8b85eee0a 100644 --- a/sources/AppBundle/Controller/Admin/Speaker/SpeakerEditAction.php +++ b/sources/AppBundle/Controller/Admin/Speaker/SpeakerEditAction.php @@ -13,9 +13,9 @@ use AppBundle\Event\Model\Repository\SpeakerRepository; use AppBundle\Event\Model\Repository\TalkRepository; use AppBundle\Event\Model\Talk; -use Assert\Assertion; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; +use Webmozart\Assert\Assert; class SpeakerEditAction extends AbstractController { @@ -33,9 +33,9 @@ public function __construct( public function __invoke(Request $request) { $speaker = $this->speakerRepository->get($request->query->get('id')); - Assertion::notNull($speaker); + Assert::notNull($speaker); $event = $this->eventRepository->get($speaker->getEventId()); - Assertion::notNull($event); + Assert::notNull($event); $data = $this->speakerFormDataFactory->fromSpeaker($speaker); $form = $this->createForm(SpeakerType::class, $data, [ SpeakerType::OPT_PHOTO_REQUIRED => null === $speaker->getPhoto(), diff --git a/sources/AppBundle/Controller/Admin/Speaker/SpeakerListAction.php b/sources/AppBundle/Controller/Admin/Speaker/SpeakerListAction.php index 7a552375d..1af33a6e9 100644 --- a/sources/AppBundle/Controller/Admin/Speaker/SpeakerListAction.php +++ b/sources/AppBundle/Controller/Admin/Speaker/SpeakerListAction.php @@ -10,10 +10,10 @@ use AppBundle\Event\Model\Repository\SpeakerRepository; use AppBundle\Event\Model\Repository\TalkRepository; use AppBundle\Event\Model\Talk; -use Assert\Assertion; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Twig\Environment; +use Webmozart\Assert\Assert; class SpeakerListAction { @@ -31,8 +31,8 @@ public function __invoke(Request $request, AdminEventSelection $eventSelection): { $sort = $request->query->get('sort', 'name'); $direction = $request->query->get('direction', 'asc'); - Assertion::inArray($sort, self::VALID_SORTS); - Assertion::inArray($direction, self::VALID_DIRECTIONS); + Assert::inArray($sort, self::VALID_SORTS); + Assert::inArray($direction, self::VALID_DIRECTIONS); $filter = $request->query->get('filter'); $event = $eventSelection->event; diff --git a/sources/AppBundle/Controller/Legacy/LegacyEventAction.php b/sources/AppBundle/Controller/Legacy/LegacyEventAction.php index 862aa83b9..090f76afe 100644 --- a/sources/AppBundle/Controller/Legacy/LegacyEventAction.php +++ b/sources/AppBundle/Controller/Legacy/LegacyEventAction.php @@ -4,13 +4,13 @@ namespace AppBundle\Controller\Legacy; -use Assert\Assertion; -use Assert\AssertionFailedException; +use InvalidArgumentException; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Twig\Environment; use Twig\Error\LoaderError; +use Webmozart\Assert\Assert; class LegacyEventAction { @@ -21,10 +21,10 @@ public function __invoke(Request $request): Response $year = $request->attributes->getInt('year'); $page = str_replace('.php', '', $request->attributes->get('page')); try { - Assertion::inArray($year, [2005, 2006, 2007, 2008, 2009]); - Assertion::regex($page, '/[a-z0-9_]+/'); + Assert::inArray($year, [2005, 2006, 2007, 2008, 2009]); + Assert::regex($page, '/[a-z0-9_]+/'); $template = $this->twig->load(sprintf('legacy/forumphp%d/%s.html.twig', $year, $page)); - } catch (AssertionFailedException|LoaderError) { + } catch (InvalidArgumentException|LoaderError) { throw new NotFoundHttpException('Page introuvable'); } diff --git a/sources/AppBundle/Controller/Website/Membership/Fee/DownloadAction.php b/sources/AppBundle/Controller/Website/Membership/Fee/DownloadAction.php index 98c945198..61090b571 100644 --- a/sources/AppBundle/Controller/Website/Membership/Fee/DownloadAction.php +++ b/sources/AppBundle/Controller/Website/Membership/Fee/DownloadAction.php @@ -12,11 +12,11 @@ use AppBundle\Association\Model\Repository\UserRepository; use AppBundle\Association\Model\User; use AppBundle\AuditLog\Audit; -use Assert\Assertion; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\BinaryFileResponse; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; +use Webmozart\Assert\Assert; final class DownloadAction extends AbstractController { @@ -44,11 +44,11 @@ public function __invoke(Request $request): BinaryFileResponse if ($cotisation['type_personne'] == MemberType::MemberCompany->value) { $company = $this->companyMemberRepository->get($cotisation['id_personne']); - Assertion::isInstanceOf($company, CompanyMember::class); + Assert::isInstanceOf($company, CompanyMember::class); $patternPrefix = $company->getCompanyName(); } else { $user = $this->userRepository->get($cotisation['id_personne']); - Assertion::isInstanceOf($user, User::class); + Assert::isInstanceOf($user, User::class); $patternPrefix = $user->getLastName(); } diff --git a/sources/AppBundle/Controller/Website/Membership/Fee/IndexAction.php b/sources/AppBundle/Controller/Website/Membership/Fee/IndexAction.php index 8b7738cad..919b5e514 100644 --- a/sources/AppBundle/Controller/Website/Membership/Fee/IndexAction.php +++ b/sources/AppBundle/Controller/Website/Membership/Fee/IndexAction.php @@ -16,9 +16,9 @@ use AppBundle\Payment\PayboxBilling; use AppBundle\Payment\PayboxFactory; use AppBundle\Twig\ViewRenderer; -use Assert\Assertion; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; +use Webmozart\Assert\Assert; final class IndexAction extends AbstractController { @@ -38,7 +38,7 @@ public function __invoke(): Response $identifiant = $this->droits->obtenirIdentifiant(); $user = $this->userRepository->get($identifiant); - Assertion::notNull($user); + Assert::notNull($user); $cotisation = $userService->getLastSubscription($user); $now = new \DateTime('now'); $isSubjectedToVat = Vat::isSubjectedToVat($now); diff --git a/sources/AppBundle/Controller/Website/Membership/GeneralMeeting/IndexAction.php b/sources/AppBundle/Controller/Website/Membership/GeneralMeeting/IndexAction.php index 138553d69..6e442eca4 100644 --- a/sources/AppBundle/Controller/Website/Membership/GeneralMeeting/IndexAction.php +++ b/sources/AppBundle/Controller/Website/Membership/GeneralMeeting/IndexAction.php @@ -15,14 +15,14 @@ use AppBundle\GeneralMeeting\ReportListBuilder; use AppBundle\Security\Authentication; use AppBundle\Twig\ViewRenderer; -use Assert\Assertion; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; use Symfony\Component\Form\Extension\Core\Type\SubmitType; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; -use Symfony\Component\Validator\Constraints as Assert; +use Symfony\Component\Validator\Constraints; use Symfony\Component\Validator\Context\ExecutionContextInterface; +use Webmozart\Assert\Assert; final class IndexAction extends AbstractController { @@ -45,7 +45,7 @@ public function __invoke(Request $request): Response $title = 'Présence prochaine AG'; $generalMeetingRepository = $this->generalMeetingRepository; $latestDate = $generalMeetingRepository->getLatestAttendanceDate(); - Assertion::notNull($latestDate); + Assert::notNull($latestDate); $generalMeetingPlanned = $generalMeetingRepository->hasGeneralMeetingPlanned(); $cotisation = $userService->getLastSubscription($user); @@ -72,7 +72,7 @@ public function __invoke(Request $request): Response $form = $this->createFormBuilder($data, [ 'constraints' => [ - new Assert\Callback(callback: static function (array $data, ExecutionContextInterface $context): void { + new Constraints\Callback(callback: static function (array $data, ExecutionContextInterface $context): void { if ($data['presence'] === 1 && $data['id_personne_avec_pouvoir']) { $context ->buildViolation("Vous ne pouvez pas donner votre pouvoir et indiquer que vous participez en même temps.") diff --git a/sources/AppBundle/Event/Model/Repository/EventStatsRepository.php b/sources/AppBundle/Event/Model/Repository/EventStatsRepository.php index 1bcc0f2a5..0493793a4 100644 --- a/sources/AppBundle/Event/Model/Repository/EventStatsRepository.php +++ b/sources/AppBundle/Event/Model/Repository/EventStatsRepository.php @@ -9,10 +9,10 @@ use AppBundle\Event\Model\EventStats; use AppBundle\Event\Model\EventStats\DailyStats; use AppBundle\Event\Model\Ticket; -use Assert\Assertion; use Datetime; use Doctrine\DBAL\ArrayParameterType; use Doctrine\DBAL\Connection; +use Webmozart\Assert\Assert; class EventStatsRepository { @@ -86,7 +86,7 @@ public function getStatsForTicketTypes(int $eventId, ?Datetime $from): TicketTyp private function getStatsForDay(int $eventId, string $day, ?Datetime $from = null): DailyStats { - Assertion::inArray($day, self::DAYS); + Assert::inArray($day, self::DAYS); $baseQueryBuilder = $this->connection->createQueryBuilder() ->select('COUNT(*) AS c') ->from('afup_inscription_forum', 'aif') diff --git a/sources/AppBundle/Event/Model/Repository/SpeakerRepository.php b/sources/AppBundle/Event/Model/Repository/SpeakerRepository.php index 0b9eac65c..61027bce9 100644 --- a/sources/AppBundle/Event/Model/Repository/SpeakerRepository.php +++ b/sources/AppBundle/Event/Model/Repository/SpeakerRepository.php @@ -8,7 +8,6 @@ use AppBundle\Event\Model\Speaker; use AppBundle\Event\Model\Talk; use AppBundle\Ting\JoinHydrator; -use Assert\Assertion; use CCMBenchmark\Ting\Driver\Mysqli\Serializer\Boolean; use CCMBenchmark\Ting\Repository\CollectionInterface; use CCMBenchmark\Ting\Repository\HydratorSingleObject; @@ -16,6 +15,7 @@ use CCMBenchmark\Ting\Repository\MetadataInitializer; use CCMBenchmark\Ting\Repository\Repository; use CCMBenchmark\Ting\Serializer\SerializerFactoryInterface; +use Webmozart\Assert\Assert; /** * @extends Repository @@ -146,8 +146,8 @@ public function searchSpeakers(Event $event, $sort = 'name', $direction = 'asc', 'name' => 'c.nom', 'company' => 'c.societe', ]; - Assertion::keyExists($sorts, $sort); - Assertion::inArray($direction, ['asc', 'desc']); + Assert::keyExists($sorts, $sort); + Assert::inArray($direction, ['asc', 'desc']); $params = ['eventId' => $event->getId()]; $filterCondition = ''; if ($filter) { diff --git a/sources/AppBundle/Slack/MessageFactory.php b/sources/AppBundle/Slack/MessageFactory.php index 44676dd84..7978760f7 100644 --- a/sources/AppBundle/Slack/MessageFactory.php +++ b/sources/AppBundle/Slack/MessageFactory.php @@ -13,9 +13,9 @@ use AppBundle\Event\Model\Talk; use AppBundle\Event\Model\Vote; use AppBundle\GeneralMeeting\GeneralMeetingRepository; -use Assert\Assertion; use Symfony\Component\Routing\Generator\UrlGeneratorInterface; use Symfony\Contracts\Translation\TranslatorInterface; +use Webmozart\Assert\Assert; class MessageFactory { @@ -151,7 +151,7 @@ public function createMessageForMemberNotification(string $membersToCheckCount): public function createMessageForGeneralMeeting(GeneralMeetingRepository $generalMeetingRepository, UserRepository $userRepository, UrlGeneratorInterface $urlGenerator): Message { $latestDate = $generalMeetingRepository->getLatestAttendanceDate(); - Assertion::notNull($latestDate); + Assert::notNull($latestDate); $nombrePersonnesAJourDeCotisation = count($userRepository->getActiveMembers()); $message = new Message(); diff --git a/sources/PlanetePHP/FeedArticleRepository.php b/sources/PlanetePHP/FeedArticleRepository.php index 2b24bdfed..e5853c66c 100644 --- a/sources/PlanetePHP/FeedArticleRepository.php +++ b/sources/PlanetePHP/FeedArticleRepository.php @@ -4,9 +4,9 @@ namespace PlanetePHP; -use Assert\Assertion; use Doctrine\DBAL\Connection; use Doctrine\DBAL\ParameterType; +use Webmozart\Assert\Assert; class FeedArticleRepository { @@ -45,8 +45,8 @@ public function search(string $sort, string $direction, int $limit = 20): array 'content' => 'b.contenu', 'status' => 'b.etat', ]; - Assertion::keyExists($sorts, $sort); - Assertion::inArray($direction, ['asc', 'desc']); + Assert::keyExists($sorts, $sort); + Assert::inArray($direction, ['asc', 'desc']); $qb = $this->connection->createQueryBuilder(); $qb->from('afup_planete_billet', 'b') ->select('b.*') diff --git a/sources/PlanetePHP/FeedRepository.php b/sources/PlanetePHP/FeedRepository.php index f963883da..523345730 100644 --- a/sources/PlanetePHP/FeedRepository.php +++ b/sources/PlanetePHP/FeedRepository.php @@ -4,8 +4,8 @@ namespace PlanetePHP; -use Assert\Assertion; use Doctrine\DBAL\Connection; +use Webmozart\Assert\Assert; class FeedRepository { @@ -37,7 +37,7 @@ public function find($sort = 'name', $direction = 'asc', $filter = null): array 'url' => 'f.url', 'status' => 'f.etat', ]; - Assertion::keyExists($sorts, $sort); + Assert::keyExists($sorts, $sort); $qb = $this->connection->createQueryBuilder() ->select('f.id', 'f.nom', 'f.url', 'f.feed', 'f.etat', 'f.id_personne_physique') ->from('afup_planete_flux', 'f')