diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a08fe74..e0c2d6c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,7 +16,9 @@ jobs: matrix: os: - ubuntu-24.04 - - macos-15-intel + - ubuntu-24.04-arm + - macos-26 + - macos-26-intel - windows-2025 defaults: run: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9958069..5c28782 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -28,7 +28,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Install Zig uses: mlugg/setup-zig@d1434d08867e3ee9daa34448df10607b98908d29 # 2.2.1 @@ -65,7 +65,7 @@ jobs: echo "bundle_filename=$BUNDLE_FILENAME" >> "$GITHUB_OUTPUT" - name: Upload package bundle artifact - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: package-bundle path: dist/${{ steps.bundle.outputs.bundle_filename }} @@ -80,7 +80,9 @@ jobs: matrix: os: - ubuntu-24.04 - - macos-15-intel + - ubuntu-24.04-arm + - macos-26 + - macos-26-intel - windows-2025 defaults: run: @@ -88,7 +90,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Install Zig uses: mlugg/setup-zig@d1434d08867e3ee9daa34448df10607b98908d29 # 2.2.1 @@ -103,7 +105,7 @@ jobs: version: nightly-new-compiler - name: Download package bundle artifact - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: package-bundle path: dist @@ -126,10 +128,10 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Download package bundle artifact - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: package-bundle path: dist diff --git a/examples/headers.roc b/examples/headers.roc index c2ee92f..f5b40a0 100644 --- a/examples/headers.roc +++ b/examples/headers.roc @@ -21,13 +21,11 @@ main! : List(Str) => Try({}, [Exit(I32), StdoutErr(Str), ..]) main! = |_args| { request = Request.from_method(GET) .with_uri("https://api.example.com/items") - .with_headers( - [ - { name: "Accept", value: "application/json" }, - { name: "X-Trace-Id", value: "demo-123" }, - { name: "X-Trace-Id", value: "demo-456" }, - ], - ) + .with_headers([ + { name: "Accept", value: "application/json" }, + { name: "X-Trace-Id", value: "demo-123" }, + { name: "X-Trace-Id", value: "demo-456" }, + ]) Stdout.line!(Str.inspect(request.headers()))? @@ -46,7 +44,15 @@ expect { } ## Header parsing reports missing required fields. -expect parse_headers("content-length: 42\r\nx-trace-id: demo-123\r\n") == Err(Encoding.HttpHeader.MissingRequired) +expect + match parse_headers("content-length: 42\r\nx-trace-id: demo-123\r\n") { + Err(Encoding.HttpHeader.MissingRequired) => Bool.True + _ => Bool.False + } ## Header parsing reports invalid field values. -expect parse_headers("accept: application/json\r\ncontent-length: nope\r\nx-trace-id: demo-123\r\n") == Err(Encoding.HttpHeader.BadHeader) +expect + match parse_headers("accept: application/json\r\ncontent-length: nope\r\nx-trace-id: demo-123\r\n") { + Err(Encoding.HttpHeader.BadHeader) => Bool.True + _ => Bool.False + }