Re: [PATCH v2] ci(win+Meson): build in Release mode
On Mon, May 05, 2025 at 09:27:10AM +0200, Johannes Schindelin wrote:
Show 24 quoted lines
> Hi Patrick,
>
> On Mon, 5 May 2025, Patrick Steinhardt wrote:
>
> > On Sat, May 03, 2025 at 02:25:46PM +0000, Johannes Schindelin via GitGitGadget wrote:
> > > From: Johannes Schindelin <johannes.schindelin@gmx.de>
> > > Changes since v1:
> > >
> > > * Rewrote the commit message to reflect that this patch is still
> > > needed, even if the symptom that originally motivated the patch was
> > > addressed in a different manner, because it was merely a symptom of
> > > the underlying root cause that CI builds should not let Visual C
> > > build Git in debug mode.
> >
> > Ok, makes sense. I think we should ideally address this issue
> > strategically, e.g. by getting rid of asserts completely in our
> > codebase. But for now I agree that we should just build Git in release
> > mode on Windows.
>
> I am afraid that getting rid of asserts in Git's codebase won't ever be
> able to address the challenge that Git -- despite much reluctance --
> relies on a couple of external dependencies that might at any point in
> time cause `assert()` to be called, e.g. due to unexpected changes in the
> CI runner images.
Good point indeed, I haven't considered this.
Show 8 quoted lines
> In essence, we will need both: CI builds in release mode _and_ converting
> `assert()`s to `BUG()` calls (the latter, however, for different reasons
> than to proactively address CI hangs: Git can convey better information in
> `BUG()` calls than in `assert()` calls).
>
> There are more reasons to use release mode builds in CI, too, but we
> already have a compelling reason to do so, therefore there is no need for
> me to spend more time assembling an exhaustive list.