On Wed, Aug 16, 2023 at 5:01 AM Andrew Nelson <andyfaff@gmail.com> wrote:

On Wed, 16 Aug 2023 at 10:51, Andrew Nelson <andyfaff@gmail.com> wrote:
There's a scipy issue on this that discusses how to reduce usage, https://github.com/scipy/scipy/issues/19006.

Main points:

- at the moment CI is run on PR and on Merge. Convert to only running on PR commits. I've just submitted a PR to do this for numpy.

Thanks! We shouldn't be running any CI on merge commits, other than for building and deploying new versions of the docs to https://numpy.org/devdocs/.
 
- add a manual trigger. Simple to achieve, but requires input from a maintainer.

I'd like to avoid that, things that require more actions from maintainers tend to be counterproductive.
 
- reduce wheel build frequency. At the moment I believe they're made every week. However, that decision has to factor in the increased frequency that may be desired as numpy2.0 is worked on.

We're doing the x86-64 wheel builds in GHA daily now, which is necessary. The aarch64/arm64 ones can be done less frequently, but once a week seems good at least in the run-up to 2.0.
 
Also, it's significantly more expensive to test on macOS M1 compared to linux_aarch64. The latter isn't tested on cirrus. However, you could use linux_aarch64 as a proxy for general ARM testing, and only run macOS when necessary.

That sounds like a good idea to me. Or at least checking linux_aarch64 first. I like how you configured that for SciPy.

Also, now that we're on the topic of CI: I opened https://github.com/numpy/numpy/issues/24410 for a larger overhaul of our GitHub Actions jobs. I put that on the agenda for today's community meeting, but folks interested in CI may also want to comment on that issue.

Cheers,
Ralf