October brought a rewritten solver and parallel downloads, and the lock file format changed in a way that produces a confusing diff when two people are on different majors.
$ composer --version
Composer version 2.0.2
$ composer install
Lock file operations: 0 installs, 0 updates, 0 removals
Installing dependencies from lock file (including require-dev)
- Downloading 84 packages ← in parallel. this is the change.
Generating optimized autoload files
# before: 94s. after: 21s.
Composer 1 reads a Composer 2 lock file and vice versa, so nothing breaks outright — but the file is rewritten on every update and the diff between the two formats is large and meaningless. Agreeing a date and upgrading together is the only version of this that does not waste review time. The plugin API changed as well, so any project with Composer plugins needs those checked before the date rather than on it.