rigless 0.0.5

Virtual hardware-in-the-loop runtime: run unmodified firmware on an emulated MCU with every peripheral, chip model, and unit of virtual time in Rust; a fork of QEMU is built in and executes the instructions
Documentation
# The emulator this tree pairs with.
#
# A checkout builds the submodule at `qemu/` and never reads this file. A published crate has no
# submodule — 169 MB of emulator source is far past what a package may carry — so `build.rs` fetches
# the tarball named here and checks it against `sha256` before it unpacks a byte of it.
#
# `commit` is the same commit the submodule points at, and `sha256` is what `ci/package-emulator.sh`
# produces from it. The `pin` job checks both on every pipeline and the release publishes the tarball
# from the same script, so one tag of this tree carries a whole release: the submodule already names
# the emulator exactly, and nothing has to be released in the fork first.
#
# The pipeline checks this file rather than writing it. A pipeline that rewrites a tracked file
# mid-build makes a checkout unreproducible and races the commit it came from.
#
# To move the emulator, in one merge request: bump the submodule, run `sh ci/package-emulator.sh out`
# and paste the commit and digest it prints. The script packs what git tracks with every source of
# variation nailed down, so the same commit gives the same bytes wherever it is packed — which is
# what makes pinning a digest honest rather than a guess about one machine.
#
# The URL names this project by id, 86154871, which is `rigless-labs/rigless`. An id rather than a
# URL-encoded path, because `%2F` in a path segment is the kind of thing a proxy or a client
# helpfully normalises and a build that fetches an emulator is not where that should be discovered.

commit = 876529c3d5488391b316e83273801ccbf2289a80
url    = https://gitlab.com/api/v4/projects/86154871/packages/generic/emulator/876529c3d5488391b316e83273801ccbf2289a80/qemu-876529c3d5488391b316e83273801ccbf2289a80.tar.gz
sha256 = bf70d37a84d62c70c286589fce02b6ad91ae7f801617dda736ea55bc1c406f5c