On Tue, Aug 12, 2025 at 10:41:46AM -0400, Taylor Blau wrote: > On Tue, Aug 12, 2025 at 02:52:41PM +0200, Patrick Steinhardt wrote: > > > * ps/commit-graph-wo-globals (2025-08-07) 10 commits > > > - commit-graph: stop passing in redundant repository > > > - commit-graph: stop using `the_repository` > > > - commit-graph: stop using `the_hash_algo` > > > - commit-graph: refactor `parse_commit_graph()` to take a repository > > > - commit-graph: store the hash algorithm instead of its length > > > - commit-graph: stop using `the_hash_algo` via macros > > > - commit-graph: fix sign comparison warnings > > > - commit-graph: fix type for some write options > > > - commit-graph: stop using signed integers to count Bloom filters > > > - trace2: introduce function to trace unsigned integers > > > > > > Remove dependency on the_repository and other globals from the > > > commit-graph code, and other changes unrelated to de-globaling. > > > > > > Will merge to 'next'? > > > source: <20250807-b4-pks-commit-graph-wo-the-repository-v3-0-82edef830a1e@xxxxxx> > > > > I don't intend to reroll this series for now. As long as you are happy > > with the signedness-related patches I think this should be ready. > > I am still not sold on the first four of these patches, and I share > Junio's concern[1] that the "int -> unsigned int" changes are not well > justified. > > As a practical concern, the "max_commits" and "size_mult" values should > never come even close to INT_MAX, so I am not sure that the wider range > is giving us all that much. I am a little more convinced by the Bloom > filter changes, but since they are purely for debugging and also > exceedingly unlikely to exceed the signed INT_MAX, I do not think they > are absolutely necessary. > > That said, I don't feel strongly enough about the lack of justification > here to hold up this series[^2], so I am fine with it moving forward if > both you and Junio are happy with it as-is. But I am left wanting a > stronger justification for the first half of the changes. Fair. I don't want to spend too much time on this signedness topic, either. So I'd go with either: - Taking the signedness patches as-is. They don't regress the status quo and allow us to warn about future unintentional signedness bugs, even though the fixes are mostly of theoretical value. - I drop the signedness-conversion patches altogether. The more important part for me is to get the second half of patches merged anyway. So while I think that the first half of patches are nice to have, I can live with dropping them. Let me know which of these options you prefer. Patrick