What's new since 2.5.0
Highlights
-
Aligned the documentation with the code, tidied source comments, and added a security policy. @AlexSkrypnyk (#267)
Copying the documentedfilename_patterndefault produced colliding filenames, because the README andbehat.yml.distshowed lowercase{datetime:u}(microseconds, which render as000000for an integer timestamp) instead of the real{datetime:U}Unix timestamp, and the custom-information example called anaddInfo()method that does not exist rather thanappendInfo(). Theinfo_typesdefault, the{step_name}casing rule and the URL token examples are also corrected to match what the code actually produces, the documented Chromium debugging endpoint now binds to127.0.0.1instead of the whole local network, and the project gains aSECURITY.mdreporting policy. -
[#264] Added a tag and an environment variable to disable animated screenshots. @AlexSkrypnyk (#266)
Withanimation.enabled: truethere was no way to exempt an individual scenario, and animation roughly doubles wall time because it forces a full-page capture after every passed step - one 215-step scenario measured 1m53s without animation against 3m43s with it, producing a 58MB GIF. A scenario or feature can now carry@screenshots:animated:skipto opt out, andBEHAT_SCREENSHOT_ANIMATION_SKIPdisables animation for an entire run without touching feature files or configuration. Scopes resolve most-specific first, so a feature-level opt-out can be overridden by a scenario-level opt-in. -
Updated scaffold to 1.2.0 and fixed the untested dependency lower bounds. @AlexSkrypnyk (#263)
The declared lower bounds had never been installed or tested, so CI's newlowestdependency dimension - now running both dependency sets across PHP 8.2 to 8.5 - failed immediately on floors that could not resolve. The runtime floors are raised to versions the suite actually passes on, most notablybehat/behatfrom^3.13.0to^3.32.0, andbehat/minkis now declared inrequirerather than relied on arriving transitively throughfriends-of-behat/mink-extension. Contributor setup also moves out ofREADME.mdinto a newCONTRIBUTING.md, with the documented unit-test command corrected tocomposer testand the headless browser instructions installing Chromium rather than ChromeDriver.
Other changes
-
Update all dependencies @renovate[bot] (#265)
-
Capped 'dvdoug/behat-code-coverage' below 5.4 to keep PHP 8.2 support. @AlexSkrypnyk (#268)
dvdoug/behat-code-coverage5.4.0 raised its own requirements to PHP^8.3andphpunit/php-code-coverage ^12.3, so all 8 CI jobs failed atcomposer installbefore a single test ran. Because that was a semver MINOR bump it slipped past the existing major-update guard, sorenovate.jsonnow caps the package at<5.4to keep PHP 8.2 support. It is a development dependency, so nothing changes for consumers of the package.
Full Changelog: 2.5.0...2.6.0