This patch adds `clang-format` as only linter for now. This replaces the
previously used script from `auxil/run-clang-format` which we remove.
This requires the Python program `pre-commit`
(https://pypi.org/project/pre-commit/). With that one can then run
`clang-format` on the whole codebase with
$ pre-commit run -a clang-format
or on just the staged files
# Explicitly selecting linter.
$ pre-commit run clang-format
# Run all linters (currently just `clang-format`).
$ pre-commit
`pre-commit` supports managing Git commit hooks so that linters are run
on commit. Linters can be installed with
$ pre-commit install
The documentation at https://pre-commit.com/ covers these topics in
addition to more information.
The initialization of the private testsuite currently fails builds run in
forks. Cirrus's encrypted variables won't work outsize of the Zeek project, so
skip that setting altogether.
Homebrew apparently requires you to now specify the version of the package
you're updating. We previously could just run `brew update openssl` and it
would work. Now we must run `brew update openssl@1.1` for the command to
succeed.
Using `brew update-reset` causes homebrew to reset to homebrew's HEAD commit, which may
be buggy and broken. It appears whatever Cirrus was doing previously on their Catalina
VM is no longer a problem, and so update-reset isn't required anymore. Switch to
`brew update` to make sure we still get newer versions of the packages, but is
actually a versioned release of homebrew.
This oversubscribes our cores 2x, which testing shows we actually
run with at times: speedup is around a third on average for builds,
and a bit more than that for testing.
Also some light Bashification in ci/build.sh, for consistency.
This fixes some issues with the Catalina builds when it prepares the image
and the base Cirrus image has old recipes for Homebrew. The VM then has
to build a bunch of packages it shouldn't need to.
- Upgrade the Big Sur VM to use the Xcode 12.5 version. This has a newer
version of brew installed on it that fixes an issue with an EOL package host
that finally shut down for good recently.
- Use 'brew upgrade' for openssl and cmake, since those are both present on the
base VM. This prevents 'brew install' from printing an error if the package
exists but is out of date.
* origin/topic/jsiwek/python2-eol:
Update CentOS CI Dockerfiles to fix git/diff dependencies
Update CI scripts to remove `python` vs `python3` workarounds
Remove Python 2 compatibility logic in httpd test script
Update Python invocations to explicit `python3`
Update CMake logic to enforce Python >= 3.5
Update documentation for Python >= 3.5 requirement
Update all submodules that have Python 2 EOL changes
Fedora 30 is EOL. For Fedora 32, we need to add the diffutils RPM to
the installation list, since cmp and diff aren't automatically
available in the base image. (Also, sort the RPMs alphabetically.)