Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
90f9032
Migrate to 0.16.0
mattnite May 23, 2026
e9d609a
Remove unused imports/decls
mattnite May 28, 2026
1ac5a02
Reorganize drivers
mattnite May 28, 2026
4f4c979
Some CI updates
mattnite May 28, 2026
e79d5cb
Skip over 0.16.0 to master
mattnite May 29, 2026
292e250
Clone HEAD of zigimports
mattnite May 30, 2026
c3ba3ac
Get rid of messy linter CI logic
mattnite May 30, 2026
36ab375
Freertos and objcopy format from bin to binary
mattnite May 31, 2026
8610d1b
Most of the @typeInfo changes
mattnite Jun 3, 2026
c44874c
Translate c package in libxml
mattnite Jun 5, 2026
01c12ff
More updates for master
mattnite Jun 6, 2026
60b0a14
My branch isn't merged yet
mattnite Jun 9, 2026
6734e30
Include vendored header
mattnite Jun 9, 2026
a5c9b6e
Handle DW_FORM_indirect in printer
mattnite Jun 13, 2026
b698b67
Add self-validation to the CI
mattnite Jun 4, 2026
4abe6a1
Update to latest
mattnite Jun 13, 2026
5673fd2
Remove switch on pointers (it's getting axed eventually)
mattnite Jun 13, 2026
dca6c97
Run all unit tests in CI
mattnite Jun 13, 2026
d37c635
Rename interface field
mattnite Jun 14, 2026
39d8f0e
Implement std.Io.Writer for usb jtag example
mattnite Jun 14, 2026
c772d4e
Replace commented out panic code with a TODO
mattnite Jun 14, 2026
9e6d252
Remove uneeded TODO
mattnite Jun 14, 2026
eec9d5a
Add usage
mattnite Jun 14, 2026
2d778d3
Add a way to disable microzig_main assert
mattnite Jun 21, 2026
e70bb2b
Updates
mattnite Jun 22, 2026
3b00fc3
Fix boot meta for new packed struct limitations
mattnite Jun 24, 2026
21da565
Update code for new @bitCast semantics
mattnite Jun 29, 2026
60c8f50
Fix crc changes
mattnite Jul 1, 2026
78e2aec
Revert zine, update docs
mattnite Jul 3, 2026
980a52e
Fix version
mattnite Jul 3, 2026
b61078b
Use main build.zig.zon file to control zig version
mattnite Jul 4, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
153 changes: 50 additions & 103 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,6 @@ on:
branches: [main, zig-master]
workflow_dispatch:

env:
ZIG_VERSION: 0.15.1

jobs:
formatting-check:
name: Formatting check
Expand All @@ -18,11 +15,51 @@ jobs:
uses: actions/checkout@v4
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: ${{ env.ZIG_VERSION }}
- name: Run zig fmt
run: zig fmt --check .

# Make sure that we are building examples and invoking tests for each port.
# Some may need to be skipped, but that's okay because then it's explicitly
# listed instead of forgotten.
validate-ports-checks:
name: Validate Port Checks
continue-on-error: true
runs-on: ubuntu-latest
steps:
- run: sudo apt install -y yq
- name: Checkout
uses: actions/checkout@v4
- run: |
set -e

find port -mindepth 2 -maxdepth 2 -type d | sed 's|^port/||' | sort > ports
yq -r '.jobs["unit-test"].steps[] | select(.run == "zig build test") | .["working-directory"]' .github/workflows/ports.yml | sed 's|^port/||' | sort > unit_tested_ports
yq -r '.jobs.build.steps[] | select(.run == "zig build -Doptimize=ReleaseSmall") | .["working-directory"]' .github/workflows/ports.yml | grep -v no_hal | sed 's|^examples/||' | sort > exampled_ports

comm -23 ports unit_tested_ports > missing_unit_tests
comm -23 ports exampled_ports > missing_examples

EXIT_CODE=0
if [ -s missing_unit_tests ]
then
EXIT_CODE=1
echo "These ports are not running unit tests in CI:" >&2
echo "" >&2
cat missing_unit_tests >&2
echo "" >&2
fi

if [ -s missing_examples ]
then
EXIT_CODE=1
echo "These ports are not building examples in CI:" >&2
echo "" >&2
cat missing_examples >&2
echo "" >&2
fi

exit $EXIT_CODE

unit-test-regz:
name: Unit Test Regz
continue-on-error: true
Expand All @@ -35,8 +72,6 @@ jobs:
uses: actions/checkout@v4
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: ${{ env.ZIG_VERSION }}
- name: Unit Test Regz
run: zig build test
working-directory: tools/regz
Expand All @@ -53,8 +88,6 @@ jobs:
uses: actions/checkout@v4
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: ${{ env.ZIG_VERSION }}
- name: Unit Test UF2
run: zig build test
working-directory: tools/uf2
Expand All @@ -71,8 +104,6 @@ jobs:
uses: actions/checkout@v4
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: ${{ env.ZIG_VERSION }}
- name: Unit Test ESP Image
run: zig build test
working-directory: tools/esp-image
Expand All @@ -89,8 +120,6 @@ jobs:
uses: actions/checkout@v4
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: ${{ env.ZIG_VERSION }}
- name: Build Printer
run: zig build
working-directory: tools/printer
Expand All @@ -113,8 +142,6 @@ jobs:
uses: actions/checkout@v4
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: ${{ env.ZIG_VERSION }}
- name: Build Sorcerer
run: zig build
working-directory: tools/sorcerer
Expand All @@ -131,10 +158,8 @@ jobs:
uses: actions/checkout@v3
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: ${{ env.ZIG_VERSION }}
- name: Generate Code
run: zig build generate
run: zig build -Dgenerate
working-directory: port/stmicro/stm32
- name: Check for code diffs
run: |
Expand All @@ -159,63 +184,12 @@ jobs:
uses: actions/checkout@v4
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: ${{ env.ZIG_VERSION }}
- name: Build
run: zig build -Doptimize=ReleaseSmall

unit-test-ports:
name: Unit Test Ports
continue-on-error: true
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
port_dir: [gigadevice/gd32, espressif/esp, raspberrypi/rp2xxx, stmicro/stm32, wch/ch32v]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: ${{ env.ZIG_VERSION }}
- name: Unit Test Ports
run: zig build test
working-directory: port/${{ matrix.port_dir }}

build-examples:
name: Build Examples
continue-on-error: true
runs-on: ubuntu-latest
strategy:
matrix:
example_dir: [
espressif/esp,
gigadevice/gd32,
microchip/atmega,
microchip/samd51,
nordic/nrf5x,
nxp/lpc,
nxp/mcx,
stmicro/stm32,
texasinstruments/msp430,
raspberrypi/rp2xxx,
wch/ch32v,
no_hal/stm32_l031,
]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: ${{ env.ZIG_VERSION }}
- name: Build Examples
run: zig build -Doptimize=ReleaseSmall --summary all
working-directory: examples/${{ matrix.example_dir }}

validate-foundation-libc:
name: Validate Foundation Libc
name: Test Foundation Libc
if: false # TODO: fix foundation libc
continue-on-error: true
runs-on: ${{ matrix.os }}
strategy:
Expand All @@ -226,52 +200,25 @@ jobs:
uses: actions/checkout@v4
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: ${{ env.ZIG_VERSION }}
- name: Generate and validate packages
working-directory: modules/foundation-libc
- name: Generate and test packages
working-directory: modules/foundation-libc/test
run: |
zig build validate
zig build test

build-website:
name: Build Website
continue-on-error: true
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
os: [ubuntu-latest]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: 0.15.1
version: 0.15.2
- name: Build Website
run: zig build
working-directory: website

dry-run-packaging:
name: Dry Run Packaging
continue-on-error: true
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: ${{ env.ZIG_VERSION }}
- name: Dry Run Packaging
run: |
MICROZIG_VERSION=$(zig build package -- get-version)
echo microzig version: $MICROZIG_VERSION
zig build package -- http://localhost:8000
python3 -m http.server --directory boxzer-out &
sleep 5

cd tools/package-test
zig fetch --save=microzig http://localhost:8000/${MICROZIG_VERSION}/microzig.tar.gz
zig build -Doptimize=ReleaseSmall

jobs -p | xargs kill
2 changes: 1 addition & 1 deletion .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: 0.15.1
version: master

- name: Extract version
run: echo "MICROZIG_VERSION=$(zig build package -- get-version)" >> $GITHUB_ENV
Expand Down
4 changes: 1 addition & 3 deletions .github/workflows/drivers.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: drivers
name: Drivers
on:
push:
branches: [main]
Expand All @@ -19,8 +19,6 @@ jobs:

- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: 0.15.1

- name: Run Test Suite
working-directory: drivers
Expand Down
Loading
Loading