Veranstaltungen-APP/vendor/phpunit/phpunit/ChangeLog-12.5.md

8.6 KiB

Changes in PHPUnit 12.5

All notable changes of the PHPUnit 12.5 release series are documented in this file using the Keep a CHANGELOG principles.

12.5.17 - 2026-04-08

Changed

  • #4793: Exit with non-zero exit code when exit was called from some test

Fixed

  • #5881: colors="true" in XML configuration file does not unconditionally enable colored output
  • #6019: --migrate-configuration does not update schema location when XML content already validates against current schema
  • #6372: Assertion failure inside willReturnCallback() is silently swallowed when code under test catches exceptions
  • #6464: Process isolation template unconditionally calls set_include_path()
  • #6571: Static analysis errors for TestDoubleBuilder method chaining

12.5.16 - 2026-04-03

Added

  • #6547: Support for %r...%r in EXPECTF section

Fixed

  • #6025: FILE_EXTERNAL breaks __DIR__
  • #6351: No warning when the same test runner extension is configured more than once
  • #6433: Logic in TestSuiteLoader is brittle and causes "Class FooTest not found" even for valid tests in valid filenames
  • #6463: Process Isolation fails on non-serializable globals and quietly ignore closures

12.5.15 - 2026-03-31

Changed

  • #4440: Improve error when configured code coverage file list is empty
  • #6549: Allow to stub both hooks of non-virtual properties

Fixed

  • #6529: Git "detached HEAD state" in Open Test Reporting (OTR) XML logger not handled properly
  • #6545: Stubbing a class with set property hook leaves property uninitialized by default
  • The RegularExpression and StringMatchesFormatDescription did not handle preg_match() errors such as Compilation failed: regular expression is too large

12.5.14 - 2026-02-18

Fixed

  • #6521: Performance regression in PHPUnit 11.5.54, PHPUnit 12.5.13, and PHPUnit 13.0.4

12.5.13 - 2026-02-18

Fixed

  • #6489: Classification of self/direct/indirect deprecation triggers is not aligned with Symfony's bridge for PHPUnit

12.5.12 - 2026-02-16

Fixed

  • #6511: TestDox variables out of order with named arguments
  • #6514: <ini /> can silently fail

12.5.11 - 2026-02-10

Deprecated

  • #6510: Deprecate using with*() on test stubs

Fixed

  • #6503: Temporary file used by SourceMapper may be deleted prematurely when multiple PHPUnit processes run in parallel
  • #6509: "No expectations were configured for the mock object ..." notice is emitted when with() is used without expects()

12.5.10 - 2026-02-08

Fixed

  • #6495: Source map for issue trigger identification is regenerated in process isolation child processes

12.5.9 - 2026-02-05

Added

  • #6488: Allow disabling issue trigger identification for improved performance

Fixed

  • #6486: Incorrect file name reported for errors for test methods declared in traits
  • #6490: Incorrect test count when tests are skipped in before-class method

12.5.8 - 2026-01-27

Changed

  • To prevent Poisoned Pipeline Execution (PPE) attacks using prepared .coverage files in pull requests, a PHPT test will no longer be run if the temporary file for writing code coverage information already exists before the test runs

12.5.7 - 2026-01-24

Fixed

  • #6362: Manually instantiated test doubles are broken since PHPUnit 11.2
  • #6470: Infinite recursion in Count::getCountOf() for unusal implementations of Iterator or IteratorAggregate

12.5.6 - 2026-01-16

Changed

12.5.5 - 2026-01-15

Changed

  • PHPUnit\Framework\MockObject exceptions are now subtypes of PHPUnit\Exception

Deprecated

  • #6461: any() matcher (soft deprecation)

Fixed

  • #6470: Mocking a class with a property hook setter accepting more types than the property results in a fatal error

12.5.4 - 2025-12-15

Changed

  • The #[AllowMockObjectsWithoutExpectations] attribute can now be used on the method level

Fixed

  • #6446: Test runner crashes with Timer::start() has to be called before Timer::stop()

12.5.3 - 2025-12-11

Changed

  • The message emitted when a test method creates a mock object but does not configure any expectations for it has been improved

12.5.2 - 2025-12-08

Added

  • Attribute #[AllowMockObjectsWithoutExpectations] for excluding tests from the check that emits the notice for test methods that create a mock object but do not configure an expectation for it

12.5.1 - 2025-12-06

Added

  • TestCase::getStubBuilder() (analogous to TestCase::getMockBuilder()) for creating (partial) test stubs using a fluent API

12.5.0 - 2025-12-05

Added

  • #6376: --all CLI option to ignore test selection configured in XML configuration file
  • #6422: Make <source> element in XML code coverage report optional

Changed

  • #6380: Allow Throwable in expectExceptionObject()
  • A PHPUnit notice is now emitted for test methods that create a mock object but do not configure an expectation for it