Commit graph

716 commits

Author SHA1 Message Date
dependabot[bot]
94eed3d708 CI: Bump dawidd6/action-download-artifact from 19 to 20
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 19 to 20.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v19...v20)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-version: '20'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-08 11:22:44 -04:00
Jelle Raaijmakers
80517124a4 CI: Make input variables to cache actions mandatory
Cache variables should always be explicit, and we already pass them in
everywhere. This makes it easier to spot errors in our cache setup.
2026-04-08 09:24:39 -04:00
Jelle Raaijmakers
b2e169efc6 CI: Remove non-existent download_cache_path from web benchmarks job 2026-04-08 09:24:39 -04:00
Jelle Raaijmakers
27c4a2e439 CI: Always pass in toolchain to cache actions
It doesn't make a whole lot of sense leaving out this variable. We use
the toolchain to construct the main cache key for our ccache and vcpkg
caches, and the JS+WASM artifacts build defaulted to 'GNU' for their
toolchain which got really confusing.
2026-04-08 09:24:39 -04:00
Jelle Raaijmakers
3003930c8d CI: Remove runner_labels from custom cache actions
These were originally introduced to make it possible to discern between
GitHub's and Blacksmith's caches. This is no longer necessary since
Blacksmith resolved some issues _and_ switched to transparently
proxying GitHub cache actions to their own caches.
2026-04-08 09:24:39 -04:00
Jelle Raaijmakers
84a977d5f0 CI: Remove ccache_version input from cache-restore action
This went unused. Its intention is to bust our caches, but we can simply
restore this whenever we need that. No need to keep it around for now.
2026-04-08 09:24:39 -04:00
dependabot[bot]
7b0121e206 CI: Bump actions/upload-artifact from 6 to 7
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 6 to 7.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-31 22:21:19 +02:00
Zaggy1024
5063507fbb CI: Start PulseAudio for Linux tests 2026-03-30 20:57:04 -05:00
Sam Atkins
1438efa3e2 CI: Update "Upload LibWeb Test Artifact" test-dumps path
Regressed in 829d112327
2026-03-30 21:04:34 +02:00
Undefine
829d112327 Meta: Move Lagom CMakeLists stuff to the top level CMakeLists
This allows us to get rid of the annoying Build/.../Lagom directory
and helps to deduplicate a bunch of logic while also drastically
simplifying everything.
2026-03-29 13:59:11 -06:00
Undefine
fbbcc73fea Meta: Refactor the way the GUI framework is picked
This is largely based of off the work done by Andrew Kaster in #5918.
Having this toggle makes much more sense, especially if there will be
more UIs in the future.

Co-authored-by: Andrew Kaster <andrew@ladybird.org>
2026-03-29 13:59:11 -06:00
Tim Ledbetter
9824194ddf CI: Add web-benchmarks job 2026-03-24 14:25:55 +01:00
dependabot[bot]
f8a7f3cdae CI: Bump dawidd6/action-download-artifact from 18 to 19
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 18 to 19.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v18...v19)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-version: '19'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-24 11:07:13 +01:00
dependabot[bot]
5938b754ac CI: Bump gradle/actions from 5 to 6
Bumps [gradle/actions](https://github.com/gradle/actions) from 5 to 6.
- [Release notes](https://github.com/gradle/actions/releases)
- [Commits](https://github.com/gradle/actions/compare/v5...v6)

---
updated-dependencies:
- dependency-name: gradle/actions
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-24 11:06:54 +01:00
dependabot[bot]
0c55f4e217 CI: Bump dawidd6/action-download-artifact from 16 to 18
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 16 to 18.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v16...v18)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-version: '18'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-17 08:50:37 +01:00
dependabot[bot]
e362362cb2 CI: Bump docker/login-action from 3 to 4
Bumps [docker/login-action](https://github.com/docker/login-action) from 3 to 4.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-10 07:57:10 -04:00
dependabot[bot]
cc2daa2821 CI: Bump actions/upload-artifact from 6 to 7
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 6 to 7.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-03 10:33:17 +01:00
dependabot[bot]
081f7619ad CI: Bump dawidd6/action-download-artifact from 15 to 16
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 15 to 16.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v15...v16)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-version: '16'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-03 09:46:07 +01:00
Timothy Flynn
a238894e53 CI: Move the flatpak build steps to their own job
This is entirely a GitHub limitation. But I have found myself wanting to
rerun flaky CI tests, but have to wait some time for the flatpak builder
to complete. Moving this to its own job means we don't need to wait to
restart other CI jobs.
2026-02-26 10:33:10 -05:00
InvalidUsernameException
8c57fa780f CI: Remove redundant set -e calls
Shell scripts running in GitHub Actions workflows have `set -e` enabled
by default:
https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_idstepsshell

To avoid confusion, remove the redundant calls present in some of the
workflow script steps.
2026-02-25 10:08:23 +01:00
InvalidUsernameException
0c5684f7ff CI: Do not run multiple note-pushing workflow runs in parallel
In 1d03944a9c failures from pushing notes were ignored entirely due to
the command failing sporadically. Looking at the original commit message
this was almost certainly due to the fact that multiple runs of the
workflow could happend simulaneously if PRs were merged in quick
succession:

1. PR 1 gets merged.
2. Workflow run 1 gets triggered for newly pushed `master` commit from
   PR 1 and fetches notes ref at `aaaaaaa`.
3. PR 2 gets merged.
4. Workflow run 2 gets triggered for newly pushed `master` commit from
   PR 2 and fetches notes ref at `aaaaaaa` as well.
5. Workflow run 1 finishes its work and pushes `bbbbbbb` to the notes
   ref.
6. Workflow run 2 finishes as well, tries to push `ccccccc` to the notes
   ref, but gets rejected. This is because its changes are based on
   `aaaaaaa` and cannot be fast-forwarded due to workflow run 1 having
   pushed different notes in the meantime.

This sequence of events could also be observed after bbad346add got
merged, which caused the first couple workflow runs after to be very
slow as they were processing a large backlog of missing notes.

Instead of silencing the error when it happens and relying on the fact
that the next run will correct it, let's just prevent the conflict from
happening in the first place by disallowing parallel runs of the
workflow. This avoids unnecessary workflow runs and allows detection of
other, unexpected errors happening when pushing.
2026-02-25 10:08:23 +01:00
InvalidUsernameException
5f70d40feb CI: Make failure to fetch git-gloss a fatal error
bbad346add corrected a URL that broke several weeks ago. This problem
went unnoticed for a while partially because the workflow runs were all
still passing. A failure of a command in an &&-list is only considered
an error if it occurred in the last command of the list, even with `set
-e` being active (set automatically in GitHub actions).

From the Bash Reference Manual, 4.3.1 The Set Builtin:

> The shell does not exit if the command that fails is [...] part of any
> command executed in a && or || list except the command following the
> final && or ||.

Let's make download failures easier to disover by failing the workflow.
Every master-push getting marked with a red x-sign would probably have
been caught earlier.
2026-02-25 10:08:23 +01:00
dependabot[bot]
e803c381a9 CI: Bump dawidd6/action-download-artifact from 14 to 15
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 14 to 15.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v14...v15)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-version: '15'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-24 21:47:10 -05:00
dependabot[bot]
37454ec9e9 CI: Bump actions/stale from 10.1.1 to 10.2.0
Bumps [actions/stale](https://github.com/actions/stale) from 10.1.1 to 10.2.0.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](997185467f...b5d41d4e1d)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-version: 10.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-24 21:46:55 -05:00
Timothy Flynn
5224eb8db6 CI: Switch back to Linux for code linting
We switched to macOS since it was easier to install swift-format in CI.
With that removed, let's switch back to Linux, as macOS runners tend to
have higher contention.

To do so, this makes more use of the setup action. This way, the setup
action is the only place that needs to know how to install the apt repos
we need (LLVM in particular).
2026-02-24 14:33:22 -05:00
xnacly
f3da3c03e8 CI: Add 'cargo fmt --check' and setup rust toolchain to lint-ci 2026-02-24 16:35:51 +01:00
Andreas Kling
c736c4adb5 CI: Install Rust toolchain in setup action
The Rust-based LibJS codegen is now enabled by default on non-Windows
platforms, so CI runners need rustc and cargo available. Add the
dtolnay/rust-toolchain action to install a stable Rust toolchain.
2026-02-24 09:39:42 +01:00
Timothy Flynn
fe4c22e4e2 CI: Run test262 on blacksmith runners and on PRs
On GitHub runners (which are much slower than blacksmith runners),
test262 only takes ~6 minutes nowadays. So let's try running it on
blacksmith. It's generally been a headache to make changes to the
test262 workflow on our dedicated runner, so this will alleviate
that.
2026-02-18 12:22:04 -05:00
Timothy Flynn
5a916940e2 Revert "CI: Ensure lsb-release is installed on Ubuntu"
This reverts commit c813505450.

This did not work on the dedicated test262 runner. And we are looking
into switching to blacksmith runners instead.
2026-02-18 12:22:04 -05:00
Timothy Flynn
85c6264323 CI: Remove download_cache_path argument from cache restore action
It used to be for CLDR, UCD, etc. downloads. But it is now unused.
2026-02-18 12:22:04 -05:00
Timothy Flynn
53bcbe411f CI: Use the setup action on the test262 runner 2026-02-18 10:10:07 -05:00
Timothy Flynn
81d5ad9777 CI: Use setup-python@v6 in the setup action 2026-02-18 10:10:07 -05:00
Timothy Flynn
a2515c0705 CI: Ensure pip itself is up to date
Our test262 runner already does this, and we do see out-of-date messages
in users of the setup action.
2026-02-18 10:10:07 -05:00
Timothy Flynn
c813505450 CI: Ensure lsb-release is installed on Ubuntu
Our test262 runner does not have it.
2026-02-18 10:10:07 -05:00
Timothy Flynn
415625d398 Meta: Switch to clang-format-21 as the standard formatter 2026-02-18 08:02:45 -05:00
Timothy Flynn
372c7b9822 CI: Update the Clang pipeline to Clang 21 2026-02-18 08:02:45 -05:00
Timothy Flynn
f200920a6c CI: Simplify upgrading toolchain versions in CI
Set the gcc and llvm versions as variables, and use them anywhere we
install a specific version. We then export these as outputs so that any
interested caller can retrieve the installed versions.

Our check for llvm.list also will have prevented us from upgrading llvm
versions. We now check that it contains the exact version we expect.
2026-02-18 08:02:45 -05:00
Andreas Kling
e87f889e31 Everywhere: Abandon Swift adoption
After making no progress on this for a very long time, let's acknowledge
it's not going anywhere and remove it from the codebase.
2026-02-17 10:48:09 -05:00
Salman Chishti - SalmanMKC
0eab25b710 CI: Switch back to actions/stale now that upstream issue is fixed
Replace itchyny/actions-stale with actions/stale v10.1.1, as the
upstream issue (actions/stale#1136) has been resolved.

Remove the workaround comment that referenced the issue.
2026-02-08 22:46:36 +01:00
CountBleck
bbad346add CI: Update stale URL for git-gloss
The notes-push.yml script was silently failing since the previous URL
now 404s, causing notes to remain unupdated since January 18. This new
URL should work for as long as the git-gloss repository exists.
2026-02-06 10:28:31 +00:00
Rocco Corsi
59be47f188 CI: Allow clang_plugins to be used in more CI jobs
Due to the name used to upload the test-web artificats missing the
'arch' value, a duplicate name could be generated if multiple CI
jobs use clang_plugins set to true causing artifact upload failure.

Currently not possible to use clang_plugins for these at the same time:

Linux, x86_64, Sanitizer, Clang
Linux, arm64, Sanitizer, Clang

As more CI jobs are added, more possibility of a conflict if using
clang_plugins in more situations.

If the name conflicts the following may by reported:

Error: Failed to CreateArtifact: Received non-retryable error:
Failed request: (409)
Conflict: an artifact with this name already exists on the workflow run
2026-02-05 10:12:46 +01:00
dependabot[bot]
cddb0e7b4e CI: Bump dawidd6/action-download-artifact from 12 to 14
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 12 to 14.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v12...v14)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-version: '14'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-03 10:41:31 +01:00
Timothy Flynn
4e18acfc98 CI: Install CMake from a .tar.gz similar to wasm-tools
The apt-key method is not working on the runner.
2026-01-28 15:55:33 -05:00
Timothy Flynn
a1383f7623 CI: Install gnupg2 instead of gnupg
This is what the GitHub runners have:
https://github.com/actions/runner-images/blob/ubuntu24/20260119.4/images/ubuntu/Ubuntu2404-Readme.md#installed-apt-packages
2026-01-28 14:11:28 -05:00
Timothy Flynn
a661ba996b CI: Install gnupg before adding Kitware's PPA with apt-key 2026-01-28 12:51:21 -05:00
Timothy Flynn
df8f05e205 CI: Add Kitware's PPA to install a newer CMake version
The latest CMake version available on Ubuntu 24.04 is 3.28. We require
3.30 or later for our CMake presets. We can get a newer version from
Kitware's PPA.
2026-01-28 10:42:02 -05:00
dependabot[bot]
9b2db8142a CI: Bump actions/checkout from 6.0.1 to 6.0.2
Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.1 to 6.0.2.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v6.0.1...v6.0.2)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-27 10:06:17 +01:00
dependabot[bot]
2f40939aee CI: Bump dawidd6/action-download-artifact from 11 to 12
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 11 to 12.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v11...v12)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-version: '12'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-27 09:16:16 +01:00
Jelle Raaijmakers
c059c6a2f5 CI: Update prettier to 3.8.1
This matches the current available version on Homebrew.
2026-01-22 07:46:48 -05:00
dosisod
bc823878c7 LibJS: Add bytecode IR regression tests
This adds a new `test-js-bytecode` target which ensures that codegen
changes do not impact emitted bytecode IR, or if it does, it is known
and the tests are updated accordingly.

Similar to the LibWeb tests, the tests are stored in the following
format:

* `Libraries/LibJS/Bytecode/Tests/input`: Input `.js` files
* `Libraries/LibJS/Bytecode/Tests/expected`: Expected `.txt` bytecode
* `Libraries/LibJS/Bytecode/Tests/output`: Emitted `.txt` bytecode

The `output` dir is git-ignored, but stores the output so you can diff
and inspect failed tests more easily.

There is only one test so far, which is a baseline test that should not
change dramatically unless we change the bytecode output format.
2026-01-22 08:44:24 +01:00
Andrew Kaster
f294427d3d CI: Install CMake in test262 runner workflow
It's unclear what the version is supposed to be on this runner, but
work around any ambiguity by installing CMake explicitly. Previously,
the version was less than 3.30, as a CMake preset update requiring at
least 3.30 caused the workflow to fail.
2026-01-17 13:20:38 -07:00
Andrew Kaster
f71b909bed CMake+CI: Use the same preset names on every platform
Starting with CMake 3.30 and CMakePresets version 9, the include field
supports interesting macro expansions. We can now define platform
specific presets in separate files and include them in the top-level
CMakePresets.json, while keeping the same preset names across all
platforms. This avoids some preset explosion at the cost of some mostly
empty json files for each unix platform.

The CMake minimum required in the top-level and Lagom CMakeLists.txt
have not been adjusted in this patch, as that would have the effect of
changing the default policy versions and is a bit out of scope.
2026-01-17 12:18:46 -07:00
ayeteadoe
5279e0ce73 CMake: Remove ENABLE_WINDOWS_CI option and adjust presets to match Unix
ENABLE_WINDOWS_CI and the *_CI presets were initially added back when
the AK library and all the AK Test* executables were the only targets
that supported building and running in CI. Since then, almost all the
targets in the codebase are built on Windows besides the following:
    - LibLine
    - test-262-runner

Since these targets above are not required to actually run or test the
browser on Windows in its current experimental state, fully disabling
them should be fine for now.

ENABLE_WINDOWS_CI was also used to exclude test-web from ctest. This
can be fully disabled on Windows for now until proper runtime support
is added.

The remaining locations were all using ENABLE_WINDOWS_CI as a proxy for
ENABLE_ADDRESS_SANITIZER, so we can just be explicit instead.

The new presets map much more directly to the unix Release, Debug, and
Sanitizer presets which should make setting up ladybird on Windows less
confusing.

We also make the new Windows_Experimental_Release preset the default in
ladybird.py to match Unix.
2026-01-16 11:15:16 -07:00
dependabot[bot]
cc4f7375ae CI: Bump JamesIves/github-pages-deploy-action from 4.7.6 to 4.8.0
Bumps [JamesIves/github-pages-deploy-action](https://github.com/jamesives/github-pages-deploy-action) from 4.7.6 to 4.8.0.
- [Release notes](https://github.com/jamesives/github-pages-deploy-action/releases)
- [Commits](https://github.com/jamesives/github-pages-deploy-action/compare/v4.7.6...v4.8.0)

---
updated-dependencies:
- dependency-name: JamesIves/github-pages-deploy-action
  dependency-version: 4.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-13 16:20:50 +01:00
Timothy Flynn
3bdb79c870 Meta: Allow a couple of extra characters in long URLs in commit messages
This allows the number sign (for anchors) and semi-colons.
2026-01-10 20:25:16 +01:00
Jelle Raaijmakers
323baf7a01 CI: Make Flatpak build part of regular CI builds
This means the Flatpak build will now execute as part of PRs and pushes
to our `master` branch.
2026-01-10 19:42:33 +01:00
Jelle Raaijmakers
45ab134de9 CI: Use self-hosted macOS runners for nightly builds
These have been broken for a while now. Add the `self-hosted` tag so we
at least use the same runners we already use for PR checks.
2025-12-30 17:10:16 +01:00
Jelle Raaijmakers
2bd6bf69ac CI: Select Xcode version 26.2
This is the version we have installed on our macOS runners.
2025-12-22 20:19:25 -05:00
Jelle Raaijmakers
48c6208846 CI: Switch to Blacksmith runners for our Flatpak builds 2025-12-19 14:25:29 +01:00
Jelle Raaijmakers
2cc2992011 CI: Make the Windows nightly build use Blacksmith runners 2025-12-18 12:19:36 +01:00
Jelle Raaijmakers
c8d797797d CI: Move Windows build to ci.yml using new Blacksmith runners 2025-12-18 12:19:36 +01:00
Jelle Raaijmakers
6c6fdad47a CI: Support wasm-tools download for Windows and arm64
We don't use wasm-tools there yet, but let's at least not do weird
things like download the aarch64 macOS version on Windows x86_64.
2025-12-16 15:18:21 +01:00
Jelle Raaijmakers
04c1cff918 CI: Add Linux arm64 build to ci.yml
We already ran the distribution preset build in our nightly action, and
this adds it to the jobs we run for PRs as well.
2025-12-16 06:49:39 -05:00
Jelle Raaijmakers
765fecdd3f CI: Always override PKG_CONFIG_EXECUTABLE on Linux arm64
This seems to be necessary regardless of whether we use clang plugins,
otherwise we fail the build because we're not able to see libdrm.
2025-12-16 06:49:39 -05:00
Jelle Raaijmakers
27918262e1 CI: Use correct input variable for LibWeb artifact upload 2025-12-16 12:26:28 +01:00
dependabot[bot]
2405c796f9 CI: Bump actions/upload-artifact from 5 to 6
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 5 to 6.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-16 09:25:00 +01:00
Timothy Flynn
367f73cd30 CI: Use correct wasm tools version variable in test262 setup 2025-12-13 12:55:55 -05:00
Ali Mohammad Pur
cdf47d29c0 Meta: Install wasm-tools for the test262 CI step too 2025-12-13 10:53:26 -05:00
Ali Mohammad Pur
0d097e1d6a Meta: Pull wasm-tools in CI instead of wabt
We'll be using wasm-tools for Wasm testsuite generation in the next few
commits.
2025-12-12 19:12:53 +01:00
Timothy Flynn
01856e36e7 CI: Set persist-credentials to false in the test262 checkout step
The new guidance from JamesIves/github-pages-deploy-action is to set
this to false to enable cross-repo deployments with a token.
2025-12-10 10:34:50 -05:00
Timothy Flynn
b1f672de81 CI: Pin the checkout action to version 6.0.1
If we pin to only v6, we will have a harder time catching breakage due
to minor version updates. This happened recently with the test262 CI
workflow.
2025-12-10 07:43:33 -05:00
Timothy Flynn
f3be3d9ce3 CI: Update github-pages-deploy-action to version 4.7.5
This contains a fix for cross-repo deployments.
2025-12-10 07:43:33 -05:00
Timothy Flynn
44fa3e866e CI: Remove LADYBIRD_BOT_TOKEN from the Ladybird checkout step
We discovered the issue with failed deployments was due to an update to
the checkout action that did not interact well with the deploy action.
There is a fix in the deploy action already. See:

1d137fdcc7

However, a tagged release for the deploy action is not yet available,
and pulling the action at a specific commit hash does not work.

For now, let's pin the checkout action at a known-good version. We can
update both actions when the deploy action has a tagged release. In the
meantime, this just removes the token with write-permissions from the
Ladybird checkout.
2025-12-09 17:16:06 +01:00
Timothy Flynn
46ce9b0775 CI: Set the PAT on the main test262 checkout step
In the deploy step, git commands are run from the main directory, so
that is where the PAT must be set.
2025-12-03 11:29:19 -05:00
Timothy Flynn
61d9d6bebb CI: Set the Ladybird token when checking out libjs-data
According to: https://github.com/orgs/community/discussions/26694
We need to set the token when checking out the repo as well.
2025-12-03 10:06:20 -05:00
Timothy Flynn
0c9d15788e CI: Give the test262 runner write permissions
Shot in the dark to fix our ability to push changes to the libjs-data
repo.
2025-12-03 08:27:11 -05:00
dependabot[bot]
5fa3b48a57 CI: Bump actions/checkout from 5 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-25 08:44:55 +01:00
dependabot[bot]
8002c06c13 CI: Bump JamesIves/github-pages-deploy-action from 4.7.3 to 4.7.4
Bumps [JamesIves/github-pages-deploy-action](https://github.com/jamesives/github-pages-deploy-action) from 4.7.3 to 4.7.4.
- [Release notes](https://github.com/jamesives/github-pages-deploy-action/releases)
- [Commits](https://github.com/jamesives/github-pages-deploy-action/compare/v4.7.3...v4.7.4)

---
updated-dependencies:
- dependency-name: JamesIves/github-pages-deploy-action
  dependency-version: 4.7.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-11 00:28:42 +01:00
Timothy Flynn
583164e412 Meta: Upgrade prettier to version 3.6.2
This version is installed by default nowadays and has slight differences
from 3.3.3.
2025-10-31 19:55:50 -04:00
Timothy Flynn
b7ecdad685 CI: Use same versions of wabt on Linux and macOS 2025-10-31 18:10:45 -04:00
dependabot[bot]
32cfb4e7d8 CI: Bump actions/upload-artifact from 4 to 5
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 5.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-28 21:41:38 -07:00
Rocco Corsi
73b01a975a CI: Add All_Debug CI job 2025-10-27 08:46:02 -04:00
Jelle Raaijmakers
ba78e3d4be CI+Meta: Synchronize commit linting rules
Our CI commit linter now evaluates commit messages line by line, similar
to `Meta/lint-commit.sh`.

The URL rule was updated to allow any freestanding URL, optionally
prefixed by whitespace.
2025-10-24 13:09:46 +02:00
Jelle Raaijmakers
e3a56ef913 CI: Move commit message line rule down in list
This synchronizes the order of rules between `Meta/lint-commit.sh` and
this workflow. No functional changes.
2025-10-24 13:09:46 +02:00
Jelle Raaijmakers
e197ab8ff6 CI: Ignore CR in commit message linting patterns
We already check if CR is present in the first rule, and although it
would be nice to see all errors at once, we expect people to run
`Meta/lint-commit.sh` before pushing as well. This simplifies our
patterns a bit.
2025-10-24 13:09:46 +02:00
Jelle Raaijmakers
27cb5d8c1e CI: Switch Flatpak builds back temporarily to GitHub runners
Until Blacksmith runners enable redirect_dir, the flatpak builder
container is unable to install updates for packages in its system dirs.
2025-10-16 14:26:19 +02:00
Jelle Raaijmakers
188384710a CI: Remove options with default values from Flatpak build
No functional changes.
2025-10-16 14:26:19 +02:00
Jelle Raaijmakers
373b2838db CI: Don't run merge conflict labeler on forks 2025-10-15 10:36:07 +02:00
Jelle Raaijmakers
980e715668 CI: Run js-benchmarks with optional wasm binary
If we run js-benchmarks against older builds that did not yet include
the wasm repl, make sure we skip extracting the file and passing the
`--wasm-executable` argument.
2025-10-15 10:36:07 +02:00
Jelle Raaijmakers
21932661c2 CI: Update .github/actions/ folder to latest when building older commits
Older commits also have older setup code, such as requiring older XCode
versions - which fails on newer macOS systems. Let's always use the
latest custom actions so we can retroactively support these older
builds.
2025-10-14 14:19:22 +02:00
Jelle Raaijmakers
d349e91339 CI: Inject COMMIT file into archives when missing
This allows us to run js-benchmarks against older commits and have the
workflow correctly identify the commit used to build the binaries. In
order to actually build commits where the wasm binary was not yet built,
we have to account for missing archives as well.
2025-10-14 12:47:25 +02:00
Jelle Raaijmakers
5153b9ef45 CI: Trigger Flatpak CI builds with 'flatpak' PR label
Similar to the 'windows' label, this triggers Flatpak builds for x86_64
and aarch64.
2025-10-10 09:28:38 +02:00
dependabot[bot]
52009170da CI: Bump gradle/actions from 4 to 5
Bumps [gradle/actions](https://github.com/gradle/actions) from 4 to 5.
- [Release notes](https://github.com/gradle/actions/releases)
- [Commits](https://github.com/gradle/actions/compare/v4...v5)

---
updated-dependencies:
- dependency-name: gradle/actions
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-09 17:46:22 +02:00
Jelle Raaijmakers
a91031e1f3 CI: Use COMMIT file in JS repl archive to determine build commit hash
The upstream workflow `head_sha` contains the wrong hash in case the
workflow was run manually against a provided commit hash. We use the
COMMIT file that cpack adds to the archive to determine the actual
commit hash that was used to build the binaries.

Note that this will only work for builds since the introduction of that
file, so we cannot process benchmarks for older commits, unfortunately.
2025-10-08 14:42:09 +02:00
Jelle Raaijmakers
d696f107be CI: Add js-benchmarks commit hash to webhook payload 2025-10-07 15:12:21 +02:00
Jelle Raaijmakers
5e9d2461f3 CI: Always run latest version of js-benchmarks
Currently we default to GITHUB_REF for the checkout of js-benchmarks,
and if we've built up a large backlog of benchmark jobs to run, this can
mean we're running against a severely outdated version of js-benchmarks.

This new behavior allows us to see a failed js-benchmarks job, fix the
bug, and restart the failed job. This is important since we're testing a
specific commit and build from the upstream JS/WASM workflow.
2025-10-07 14:32:11 +02:00
Jelle Raaijmakers
988c7bb758 CI: Run js-benchmarks with --continue-on-failure for manual builds
If we ever want to rerun benchmarks for an older commit, e.g. if we
added new benchmarks that we would want historical performance data on,
we need to consider that some benchmarks might fail because of a bug or
missing feature. For manual runs of the upstream build, pass
`--continue-on-failure` so we simply skip these failing benchmarks.
2025-10-06 21:33:06 +02:00
Jelle Raaijmakers
5f12c091ac CI: Add manual workflow dispatch to JS/WASM artifacts build
This allows us to manually kick off jobs for the JS/WASM artifacts
build with an explicit reference to build, which is useful if we want to
generate benchmark results for older commits.

Note that this workflow does not actually produce benchmark results -
that's the job of another workflow. The webhook storing the benchmark
results only appends new benchmarks; existing ones will be kept.

Also note that the GitHub checkout action defaults to the default
reference if `inputs.reference_to_build` is not provided, such as in the
case of a push to the master branch.
2025-10-06 16:17:32 +02:00
Jelle Raaijmakers
941cfd8026 Revert "CI: Pin js-benchmarks to current master"
This reverts commit 8d46a11748.

The updated webhook supports the newer output format of our
js-benchmarks tool, allowing us to store multiple result types per
benchmark and subtest combination.
2025-10-06 14:15:47 +02:00
Pavel Shliak
fb97fde15b Meta: Fix libjs-test262 CI workflow
libtool is required to build gperf
2025-09-28 11:22:55 -04:00