Skip to content

docs: add Signed commits section to CONTRIBUTING #191

docs: add Signed commits section to CONTRIBUTING

docs: add Signed commits section to CONTRIBUTING #191

Workflow file for this run

# SPDX-License-Identifier: MPL-2.0
# Build and test the Zig cryptographic FFI (ffi/zig).
#
# This is the only CI job that compiles the Zig FFI, so it is what actually
# verifies the BLAKE3 / SHA-256 / SHA3-256 / Ed25519 implementations in
# ffi/zig/src/main.zig (the grep-based E2E job only checks source strings).
name: Zig FFI
on:
push:
branches: [main, master]
pull_request:
# Estate guardrail: scope push to default branches so a PR fires once (not
# push+PR), and cancel superseded runs. Safe — read-only PR-triggered check.
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
zig-ffi:
name: Zig FFI build + test
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: User-local Zig installer boundary tests (offline)
run: bash tests/toolchain/install_zig_test.sh
- name: Set up Zig 0.15.2
uses: mlugg/setup-zig@d1434d08867e3ee9daa34448df10607b98908d29 # v2.2.1
with:
version: 0.15.2
- name: Build (libochrance.so + libochrance.a)
working-directory: ffi/zig
run: zig build
- name: Test (hash known-answer vectors + Ed25519 round-trip)
working-directory: ffi/zig
run: zig build test
- name: Runtime link test (C ABI via dlopen — the contract Idris2's FFI uses)
working-directory: ffi/zig
run: bash test/run_link_test.sh