This was split in somewhere pre-2014 without the current infra which automates parts of this, in particular the output propagation.
From #12706, commits re-split by vcunat.