Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
83 commits
Select commit Hold shift + click to select a range
129bad8
Migrate uf2 to 0.16.0
mattnite May 23, 2026
c0c4cf7
regz updated for 0.16.0
mattnite May 24, 2026
c28a3eb
Remove port cache
mattnite May 24, 2026
3313973
Aviron moved to 0.16.0
mattnite May 25, 2026
bca5d4f
Foundation libc on 0.16.0
mattnite May 25, 2026
4268a34
Freertos for 0.16.0
mattnite May 25, 2026
5a74290
lwip 0.16.0
mattnite May 25, 2026
9ce7ba0
msp430 examples on 0.16.0
mattnite May 25, 2026
7be1b88
flags library and esp compiling for 0.16.0
mattnite May 26, 2026
8bf8ab0
stm32 compiling on 0.16.0
mattnite May 26, 2026
ada78c9
rp2xxx and ch32v compiling on 0.16.0
mattnite May 28, 2026
85cef6e
Examples that don't depend on libc building on 0.16.0
mattnite May 28, 2026
5aaa097
Linter building on 0.16.0
mattnite May 28, 2026
d392bd1
Update CI
mattnite May 28, 2026
3452805
dfu compiles on 0.16.0
mattnite May 28, 2026
172e4d5
esp-image compile and tests on 0.16.0
mattnite May 28, 2026
71c9ce2
Remove package-test
mattnite May 28, 2026
d93e079
printer compiling with 0.16.0
mattnite May 28, 2026
8f2bfc9
Remove unused imports/decls
mattnite May 28, 2026
9fc7dad
Reorganize drivers
mattnite May 28, 2026
156aaec
Fix examples from driver cleanup
mattnite May 28, 2026
8fd0848
Some CI updates
mattnite May 28, 2026
8ca14f6
Update zine
mattnite May 28, 2026
fee300b
Fix foundation libc CI
mattnite May 28, 2026
75f7a51
Only build website on linux
mattnite May 28, 2026
5fabc62
Fix foundation-libc CI
mattnite May 28, 2026
7245b0a
Add workaround
mattnite May 28, 2026
d076513
check cache dir
mattnite May 28, 2026
e56006e
try again
mattnite May 28, 2026
0833aae
try again
mattnite May 29, 2026
ca43e99
try again
mattnite May 29, 2026
ef6cfa1
Skip over 0.16.0 to master
mattnite May 29, 2026
9b5b8bf
most of the **'s to @splat
mattnite May 29, 2026
3b5257a
regz compiling on master
mattnite May 29, 2026
86c8f93
Pass regz tests
mattnite May 29, 2026
e403728
dfu compiles and tests
mattnite May 29, 2026
4a859cf
drivers compiling and testing
mattnite May 29, 2026
bf3a57c
Some fixes for aviron, nrfx examples building
mattnite May 29, 2026
00e448e
Examples building, minus any depending on foundation-libc
mattnite May 30, 2026
fca9a87
foundation-libc using TranslateC step
mattnite May 30, 2026
849c802
TranslateC for lwip
mattnite May 30, 2026
7410c70
Remove last **
mattnite May 30, 2026
3112083
Cleanup CI
mattnite May 30, 2026
bdd7f37
Fix code generation
mattnite May 30, 2026
8360b88
Fix libxml2
mattnite May 30, 2026
88c848a
update libxml2
mattnite May 30, 2026
b250c63
Fix windows issues in CI
mattnite May 30, 2026
7f65c8c
More fixes
mattnite May 30, 2026
f14c914
esp examples building
mattnite May 30, 2026
655f7ab
Update serial
mattnite May 30, 2026
a7abb3d
Try vfs workaround on windows
mattnite May 30, 2026
6fbc520
Pass thru args and printer test updates for master churn
mattnite May 30, 2026
477eef1
typo and cleanup
mattnite May 30, 2026
d61492d
Remove unused file
mattnite May 30, 2026
ac0a9a9
Update libxml2
mattnite May 30, 2026
a9d8b0f
Consider keeping website on 0.15.2 for now
mattnite May 30, 2026
3010c3b
revert zine
mattnite May 30, 2026
9940c0b
Clone HEAD of zigimports
mattnite May 30, 2026
9a9a1bc
Get rid of messy linter CI logic
mattnite May 30, 2026
1d9dd4a
Freertos and objcopy format from bin to binary
mattnite May 31, 2026
19750cc
Fix ch32v examples build.zig
mattnite May 31, 2026
f71aba0
Most of the @typeInfo changes
mattnite Jun 3, 2026
07ae16d
More typeInfo fixes
mattnite Jun 3, 2026
ea55448
Try to generate port names
mattnite Jun 4, 2026
b554613
Translate c package in libxml
mattnite Jun 5, 2026
99dc392
Fix find invocation
mattnite Jun 6, 2026
54ecf48
Try again
mattnite Jun 6, 2026
2ebea37
Update tests
mattnite Jun 6, 2026
db1c576
More updates for master
mattnite Jun 8, 2026
91a3347
Cleanup
mattnite Jun 9, 2026
01b40bd
My branch isn't merged yet
mattnite Jun 9, 2026
b17d254
Include vendored header
mattnite Jun 9, 2026
5e9cea7
update zine
mattnite Jun 12, 2026
dc1a505
Handle DW_FORM_indirect in printer
mattnite Jun 13, 2026
c67a028
Add self-validation to the CI
mattnite Jun 13, 2026
29733f7
Update to latest
mattnite Jun 13, 2026
4018a5a
Fix script
mattnite Jun 13, 2026
5aee49b
Fix findProgram usage
mattnite Jun 13, 2026
b46c2ee
Remove switch on pointers (it's getting axed eventually)
mattnite Jun 13, 2026
ce8058c
Run all unit tests in CI
mattnite Jun 13, 2026
ee92300
Skip atmega examples
mattnite Jun 13, 2026
77e73ec
Try running all unit tests in one job
mattnite Jun 14, 2026
4889259
Move file, rename job
mattnite Jun 14, 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
129 changes: 82 additions & 47 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:
workflow_dispatch:

env:
ZIG_VERSION: 0.15.1
ZIG_VERSION: master

jobs:
formatting-check:
Expand All @@ -23,6 +23,48 @@ jobs:
- 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-ports"].strategy.matrix.port_dir.[]' .github/workflows/ci.yml | sort > unit_tested_ports
yq -r '.jobs["build-examples"].strategy.matrix.example_dir.[]' .github/workflows/ci.yml | grep -v no_hal | 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 Down Expand Up @@ -134,7 +176,7 @@ jobs:
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 Down Expand Up @@ -171,7 +213,21 @@ jobs:
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
port_dir: [gigadevice/gd32, espressif/esp, raspberrypi/rp2xxx, stmicro/stm32, wch/ch32v]
port_dir: [
espressif/esp,
gigadevice/gd32,
microchip/atmega,
microchip/attiny,
microchip/samd51,
nordic/nrf5x,
nxp/lpc,
nxp/mcx,
raspberrypi/rp2xxx,
stmicro/stm32,
texasinstruments/msp430,
texasinstruments/tm4c,
wch/ch32v
]
steps:
- name: Checkout
uses: actions/checkout@v4
Expand All @@ -190,19 +246,23 @@ jobs:
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,
]
espressif/esp,
gigadevice/gd32,
microchip/atmega,
microchip/attiny,
microchip/samd51,
nordic/nrf5x,
nxp/lpc,
nxp/mcx,
raspberrypi/rp2xxx,
stmicro/stm32,
texasinstruments/msp430,
texasinstruments/tm4c,
wch/ch32v,

no_hal/stm32_l031,
]
if: ${{ matrix.example_dir != 'microchip/atmega' }}
steps:
- name: Checkout
uses: actions/checkout@v4
Expand All @@ -215,7 +275,7 @@ jobs:
working-directory: examples/${{ matrix.example_dir }}

validate-foundation-libc:
name: Validate Foundation Libc
name: Test Foundation Libc
continue-on-error: true
runs-on: ${{ matrix.os }}
strategy:
Expand All @@ -228,50 +288,25 @@ jobs:
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: master
- 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
42 changes: 0 additions & 42 deletions .github/workflows/deploy.yml

This file was deleted.

2 changes: 1 addition & 1 deletion .github/workflows/drivers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
- name: Setup Zig
uses: mlugg/setup-zig@v2
with:
version: 0.15.1
version: master

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