Taylor Blau <me@xxxxxxxxxxxx> writes: > By factoring out a common > "deflate object to pack" that takes an abstract bulk_checkin_source as a > parameter, all of the earlier refactorings can be dropped since we > retain only a single caller instead of multiple. Ah, that is how we managed to lose the preparatory split of new helper functions. The names given to these functions that represent steps of checkpointing were well thought out, and they served their documentation purposes very well, but if they all have a single caller, then that is fine ;-). I _think_ I carefully followed the code/data flow of the new code to see that we do identical things when streaming from a file to a pack (in other words, this does not introduce regression), and nothing objectionable stood out. The order of presentation was a good way to let readers to do so, and the actual "now we have everything working as we want, let's teach the machinery to also read from an in-core buffer" step being very small gives us extra confidence with the result. Very nicely done.