• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

api-platform / core / 28175508905

25 Jun 2026 01:58PM UTC coverage: 29.335% (-0.2%) from 29.551%
28175508905

push

github

web-flow
feat(symfony): api:upgrade-filter codemod + filter fixture migration (#8344)

* feat(symfony): add api:upgrade-filter codemod

Add an `api:upgrade-filter` command that rewrites legacy `#[ApiFilter]`
attributes into parameter-based filters via a php-parser visitor. Includes
the mapper/resolver/visitor pipeline, collision/skip/name-conversion
handling, DI wiring, service config and unit tests. CI runs the codemod
with --force before the functional suite.

* test: migrate #[ApiFilter] fixtures to parameter filters + legacy suite

Run api:upgrade-filter over the test fixtures to move them onto parameter
filters, and relocate the un-migrated #[ApiFilter] fixtures (Boolean,
Numeric, Enum, Order, Search, Date/Range/Exists, ExceptionToStatus) into a
Legacy/ suite that keeps covering the deprecated path.

* feat(metadata): deprecate #[ApiFilter] and Operation::$filters

Emit a deprecation for the #[ApiFilter] attribute and for Operation::$filters
consumption, surfaced through the metadata factory and OpenAPI factory with
de-duplication. Baseline the resulting deprecations.

* fix(state): cast empty/null scalar params, reject bad scalars with 400

ValueCaster now casts empty/null boolean params to false and empty/null
numeric params consistently, and rejects empty values cast to a scalar
native type with a 400 via BadRequestException (wired through the Laravel
error renderer).

* Apply suggestions from code review

Co-authored-by: Antoine Bluchet <soyuka@users.noreply.github.com>

25 of 670 new or added lines in 20 files covered. (3.73%)

7 existing lines in 3 files now uncovered.

19846 of 67653 relevant lines covered (29.33%)

165.08 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

98.81
/src/Serializer/Filter/PropertyFilter.php


Source Not Available

STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc