[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Regarding "Use Invoke" or "Return a boolean from phase" commits
From: |
Ludovic Courtès |
Subject: |
Re: Regarding "Use Invoke" or "Return a boolean from phase" commits |
Date: |
Mon, 04 Jun 2018 13:29:24 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
Hello Mark,
Mark H Weaver <address@hidden> skribis:
> Furthermore, it will be important for a static code analyzer to be able
> to infer that phases and snippets always return #t, so let's try not to
> be too clever about it. We'll need a static analyzer to gain confidence
> that we can start ignoring the return values without losing failure
> reports.
>
> Quite a while ago, I hacked up a preliminary static analyzer to do this.
> Obviously it would be good to integrate something like this into our
> linter, but I haven't gotten around to it yet. In the meantime, I've
> attached my preliminary code below. Here's how it's used:
Nice! It’ll greatly help gain confidence that the code is correct when
we decide to switch. IIUC it only works for ‘gnu-build-system’, right?
If the analyzer doesn’t cover 100% of the packages, we’ll rely on manual
testing as we rebuild everything anyway—pretty much like when we do a
regular ‘core-updates’ cycle.
It’s possible but unlikely that packages that include a phase returning
#false would succeed if we ignore that return value, so hopefully we’ll
catch residual issues when we build things.
Thoughts?
Ludo’.
- Re: Regarding "Use Invoke" or "Return a boolean from phase" commits,
Ludovic Courtès <=