Skip to content

Attempt to implement WebAssembly errors #8772

Attempt to implement WebAssembly errors

Attempt to implement WebAssembly errors #8772

Workflow file for this run

name: CI
on: [push, pull_request]
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || format('{0}-{1}', github.ref, github.run_number) }}
cancel-in-progress: true
jobs:
# Look at changed paths in the commit or PR to determine whether we need to run the complete CI job. If only
# documentation or .md files were changed, we wouldn't need to compile and check anything here.
path-changes:
runs-on: ubuntu-24.04
permissions:
pull-requests: read
outputs:
source_excluding_docs: ${{ steps.filter.outputs.source_excluding_docs }}
steps:
# Only need a checkout if we're not running as part of a PR
- uses: actions/checkout@v4
if: github.event_name != 'pull_request'
# FIXME: change into `dorny/paths-filter@v3` when https://github.com/dorny/paths-filter/pull/226 is merged
- uses: petermetz/paths-filter@5ee2f5d4cf5d7bdd998a314a42da307e2ae1639d
id: filter
with:
predicate-quantifier: every # all globs below must match
filters: |
source_excluding_docs:
- '**'
- '!Documentation/**'
- '!*.md'
# CI matrix - runs the job in lagom-template.yml with different configurations.
Lagom:
needs: path-changes
if: github.repository == 'LadybirdBrowser/ladybird' && needs.path-changes.outputs.source_excluding_docs == 'true'
strategy:
fail-fast: false
matrix:
os_name: ['Linux']
os: [ubuntu-24.04]
fuzzer: ['NO_FUZZ']
toolchain: ['GNU']
clang_plugins: [false]
include:
- os_name: 'Linux'
os: ubuntu-24.04
fuzzer: 'NO_FUZZ'
toolchain: 'Clang'
clang_plugins: true
- os_name: 'macOS'
os: macos-15
fuzzer: 'NO_FUZZ'
toolchain: 'Clang'
clang_plugins: false
- os_name: 'Linux'
os: ubuntu-24.04
fuzzer: 'FUZZ'
toolchain: 'Clang'
clang_plugins: false
uses: ./.github/workflows/lagom-template.yml
with:
toolchain: ${{ matrix.toolchain }}
os_name: ${{ matrix.os_name }}
os: ${{ matrix.os }}
fuzzer: ${{ matrix.fuzzer }}
clang_plugins: ${{ matrix.clang_plugins }}