Skip to content

Latest commit

 

History

History
54 lines (34 loc) · 1.43 KB

File metadata and controls

54 lines (34 loc) · 1.43 KB

Release testing process

We run the following before a release:

Full CI matrix

Pull requests build only the oldest and newest compilers. Before a release, trigger the full matrix for the Build / test workflow:

  • Actions tab -> Build / test -> Run workflow -> branch master.

Or with the gh CLI:

gh workflow run "Build / test" --ref master

It also runs automatically every Saturday at 03:00 UTC.

The Meson build / test and Foreign architectures workflows still run their full matrix on every push, so they need no manual trigger.

Windows x86 host

run_tests.bat

Linux x86 host

Clang, GCC; Arm, PPC cross-compile: ./run_tests.sh

Manual test of WASM and WASM_EMU256 targets.

Check libjxl build actions at libjxl/libjxl#2269. (As of 2025-08-14 this is currently paused and requires a token update)

Version updates

Prepend to debian/changelog and update mentions of the current version in:

  • base.h
  • CMakeLists.txt
  • meson.build
  • MODULE.bazel
  • g3doc/faq.md

Signing the release

  • git archive --prefix=highway-X.Y.Z/ -o highway-X.Y.Z.tar.gz X.Y.Z
  • gpg --armor --detach-sign highway-X.Y.Z.tar.gz
  • Edit release and attach the resulting highway-X.Y.Z.tar.gz.asc and .gz.

(See https://wiki.debian.org/Creating%20signed%20GitHub%20releases and to obtain the key, search hkps://keys.openpgp.org for janwas@google.com or since 1.3.0 jan.wassenberg@gmail.com)