Re: [PATCH] ci: run `make sparse` as a GitHub workflow
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Jul 14, 2021, 09:09 UTC
- Message-ID
- <nycvar.QRO.7.76.6.2107141052350.76@tvgsbejvaqbjf.bet>
- In-Reply-To
- <f305f586-c3ac-a2ef-8769-5468a4c3e539@gmail.com>
Hi Philippe,
On Tue, 13 Jul 2021, Philippe Blain wrote:
Show 12 quoted lines
> Le 2021-07-13 à 07:51, Johannes Schindelin via GitGitGadget a écrit : > > From: Johannes Schindelin <johannes.schindelin@gmx.de> > > > > Occasionally we receive reviews after patches were integrated, where > > `sparse` identified problems such as file-local variables or functions > > being declared as global. > > > > By running `sparse` > > maybe here, we could add a link to https://sparse.docs.kernel.org/en/latest/, > so interested readers who do not know about "sparse" can go and learn > about it ?
Good point.
Show 20 quoted lines
> > as part of our Continuous Integration, we can catch > > such things much earlier. Even better: developers who activated GitHub > > Actions on their forks can catch such issues before even sending their > > patches to the Git mailing list. > > > > This addresses https://github.com/gitgitgadget/git/issues/345 > > > > Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> > > > + - name: Download the `sparse` package > > + uses: git-for-windows/get-azure-pipelines-artifact@v0 > > + with: > > + repository: git/git > > + definitionId: 10 > > + artifact: sparse-20.04 > > + - name: Install the `sparse` package > > + run: sudo dpkg -i sparse-20.04/sparse_*.deb > > Out of curiosity, why is this necessary (as opposed to using > the Ubuntu package, i.e. 'sudo apt-get -q -y sparse') ?
This is actually a historical curiosity: years ago, I created an Azure Pipeline that builds the `sparse` Debian package for the specific purpose of using it in our CI builds (if you care to look at the issue 345 I linked above, you will see how long ago that idea was in the making). Now, the historical curiosity is that back then, there was no current `sparse` package available for Ubuntu, and Ramsay mentioned that a newer version would be required to run `make sparse`.
And when I implemented this patch yesterday, I did not even question this, I was just happy that I had come up with the GitHub Action `get-azure-pipelines-artifact` (to help with the `vcpkg` part of our CI builds).
I was already writing a detailed paragraph in the commit message to explain all that when it occurred to me that two years might make a big difference and an up to date `sparse` might be available. And lo and behold, this is the case!
Therefore, v2 will no longer jump through that hoop.
Ciao, Dscho