Skip to content

v1.4.0 — quality + forward-compat hardening

Choose a tag to compare

@parisek parisek released this 26 May 13:11
· 75 commits to main since this release

Quality + forward-compat release. No behavioural changes for callers — focus is hardening of the v1.3.0 surface, static-analysis ratcheting, and closing deferred test gaps.

Highlights

  • PHPStan 1.x → 2.x at level 5 with mglaman/phpstan-drupal (#45)
  • menu.language_tree_manipulator made optional — no longer hard-depends on the contrib-or-patched service (#43)
  • Resizer reduced to static utility — service registration dropped, Resizer::resizer() called directly (#44)
  • Deferred kernel coverage closed — remote-video URL extraction, Lottie file path, DisplayBase __call delegation, contrib-gated getters behind markTestSkipped (#47)
  • DDEV pinned as canonical local environment — PHP 8.3 matches CI + production; ddev coverage custom command bundled
  • README polish — 6 badges, PORTA caps, Drupal links (#50)
  • Brittle entity_reference walker tests removed (#46)

Coverage

53.71% (789 / 1469 lines), measured under PHP 8.3 / DDEV with xdebug coverage driver. MIN_COVERAGE floor unchanged at 53 — v1.4.0 is hardening, not a coverage push. See CHANGELOG.md for the per-class breakdown that seeds v1.5.0 planning.

BC

None. No public-API changes. The only consumer-visible change is the documented Resizer call shape, which was already a static-style call in practice (the service had no state).