An application resolved against PHP 7.4 and deployed to a 7.3 server used to fail at some arbitrary point inside a library, with an error nobody connects to…
Forty gigabytes of logs a day and no answer to “is checkout slow”. Metrics, logs and traces answer different questions, and logs were doing all three badly.
PHP’s sorts were unstable before 8.0, so two elements the comparator called equal came out in an order that could differ between runs and between array sizes. The…
Autowiring resolves by type, and a string has no type to resolve — so every service with a configuration value needs an explicit argument, which is the thing…
Every framework had an event dispatcher and none of them shared an interface, so a library wanting to emit events either picked one or invented its own. The…
Ninety-four percent coverage and a suite that passes with the comparison inverted, because coverage measures execution rather than verification. The three numbers say different things: MSI is over…
Eleven custom blocks that exist to produce one layout. 5.5 added patterns, which is the feature the blocks were being used for — and it needs no build…