Commit graph

392 commits

Author SHA1 Message Date
Jerens Lensun
36f1a373e3
ci: Automatically cancel bootstrap step after 1 hour in wpt linux/mach (#38358)
Introduces a timeout for each WPT run chunk job, set to 1 hour, after
which it will be automatically canceled.

Testing: 
Fixes: #38348

---------

Signed-off-by: Jerens Lensun <jerensslensun@gmail.com>
2025-07-31 07:24:23 +00:00
Narfinger
d9f8fc505f
ohos CI: Add the build profile to speedometer results (#38231)
OHOS CI now has the build profile before the test cases to distringuish
dev, release, production and similar.

Testing: Tested on CI with a run here:
https://github.com/Narfinger/servo/actions/runs/16465984131/job/46543984398
Fixes: Same name in speedometer CI will have very different speeds
because of different profiles. This will fix this behaviour.

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
2025-07-23 10:09:46 +00:00
Jonathan Schwender
6417d3077b
ohos CI: Simplify getting the model name (#38219)
Same output, but much easier and faster than sifting through the whole
output of hdc bugreport.

Testing: CI change: `./mach try`
[run](https://github.com/servo/servo/actions/runs/16460283107)

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2025-07-23 04:25:53 +00:00
sagudev
9b63854cd0
CI: remove i686-linux-android (#38118)
As discussed in [#general > Help solving android bindgen failure @
💬](https://servo.zulipchat.com/#narrow/channel/263398-general/topic/Help.20solving.20android.20bindgen.20failure/near/529091066)

Testing: Not needed, becuase we just remove from CI
Will help with #37077.

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2025-07-16 17:07:24 +00:00
Jonathan Schwender
f7e49c788f
Re-enable HOS-CI (#38019)
The self-hosted runners should be up and running again, so we can
re-enable.

Testing: If CI passes, it shows that the runners are there again.

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2025-07-13 07:58:58 +00:00
Alex Touchet
d4528e84b9
Use consistent spacing and alphabetize dependabot.yml (#38012)
This uses consistent spacing for indentation. I'm not sure if it was
causing any issues but it has been a problem before (#36642). Also
reorder categories to be in alphabetical order.

Testing: No testing for Dependabot file.

Signed-off-by: Alex Touchet <26315797+atouchet@users.noreply.github.com>
2025-07-12 10:37:26 +00:00
sagudev
12d262ec23
chore: Fix expectation of dom/xslt/large-cdata.html and disable HOS in CI (#38016)
I've seen two multiple runs failing that reported this test as stable
FAIL (and in worst case it's intermittent TIMEOUT, but it does not look
like it). We also disable HOS in CI, because they currently do not work:
[#general > CI runners @
💬](https://servo.zulipchat.com/#narrow/channel/263398-general/topic/CI.20runners/near/528443964)

Testing: Just expectation fix.

---------

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2025-07-12 09:40:34 +00:00
Narfinger
4615464388
OHOS CI allow profile (#37963)
OHOS CI: We now allow a profile flag. The profile name will be prepended
to all measurements.
This allows us to distinguish different build profiles in bencher.
Additionally we are more robust on duplicated entries for some
measurements.

Testing: Tested on CI with a run here:
https://github.com/Narfinger/servo/actions/runs/16168150429/job/45635086884
Fixes: https://github.com/servo/servo/issues/37890

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
2025-07-10 00:58:15 +00:00
Narfinger
c3f441d7ab
OHOS CI: Allow benchmarking of files and show smaps (#37881)
OHOS CI: Now we can benchmark specific files. These files need to be in
the runs.json and in the supprt/hitrace-bench folder.
A simple testcase of parsing html from string is included (taken from
https://github.com/servo/servo/issues/37223).
We copy all files in
support/hitrace-bench into the hap of the phone.
These files can use the console.log javascript command to get their
measured output.

Additionally, this now supports reporting resident-accordings-to-smaps
which is a slightly different memory than resident.

This needs update to hitrace-bench 0.7 which will be completed once the
PR is marked ready.

Testing: On action runner here:
https://github.com/Narfinger/servo/actions/runs/16118101025/job/45477031813

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
2025-07-08 11:01:02 +00:00
Narfinger
8d4988f288
OHOS CI: Install the required hitrace-bench version (#37915)
OHOS CI: Install the required hitrace-bench version if it is not already
installed. This allows us to see the hitrace-bench version in the commit
history without it being reinstalled on CI all the time.
This does not change the version of hitrace-bench in this PR.

This needs another update of the docker images to get the correct build
tools installed.

Succesful run:
https://github.com/Narfinger/servo/actions/runs/16115943664/job/45469959328
And here a run where it installs the given version:
https://github.com/Narfinger/servo/actions/runs/16116949656/job/45473231784
Testing: Tested on CI.

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
2025-07-08 08:30:07 +00:00
Narfinger
afdd9778e5
OHOS CI: Robustness of speedometer (#37830)
OHOS CI: If speedometer does not finish we currently abort the whole
job.
This fixes this behaviour by adding an emtpy file and continuing the
job.

Runs with errors will now look like this. Notice annotation.
https://github.com/Narfinger/servo/actions/runs/16026933009

Successful run:
https://github.com/Narfinger/servo/actions/runs/16027530625

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>

Testing: Tested on CI.

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
2025-07-02 14:48:47 +00:00
Narfinger
64ebde2277
OHOS: Run speedometer in CI (#37666)
OHOS: Run speedometer in CI for OHOS.
This also adds the forgotten flag to disable jit for HarmonyOs devices.

Need https://github.com/servo/servo/pull/37636 to be merged first and CI
updated which will be done when this PR is marked ready.

Testing: Custom run:
https://github.com/Narfinger/servo/actions/runs/15927927047/job/44929872906
Bencher output:
https://bencher.dev/perf/servo-ci/reports/4f778f61-699e-4e70-8994-bd526733eab1?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr%2Bcomments&utm_term=servo-ci
No other tests available because CI.

---------

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
Signed-off-by: Jonathan Schwender <55576758+jschwe@users.noreply.github.com>
Co-authored-by: Jonathan Schwender <55576758+jschwe@users.noreply.github.com>
2025-06-28 11:00:53 +00:00
Jonathan Schwender
12faf09331
CI: Add commit hash to HOS bencher reports (#37757)
Since we don't checkout servo in this job, bencher can't infer the
commit hash and we need to pass it manually.
Bencher documentation for --hash:

02034b83de/services/console/src/chunks/docs-explanation/branch-selection/en/hash.mdx

Testing: No testing. This could cause the HOS CI to fail, but wouldn't
block the MQ. This kind of CI change is quite difficult to test without
a lot of setup overhead. The change itself is trivial though, and the
expected damage would also be low (merge queue would still work).

Issue with the missing commit was:
Reported by @webbeef

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2025-06-28 00:21:21 +00:00
Mukilan Thiyagarajan
5fdd8ee277
ci: copy resources to C:\ drive on GH hosted runners (#37627)
This logic was removed in #37311. However, based on the recent failures
identified in #37626, it seems like GH hosted runners sometimes do use
the `D:` drive for checkouts. It is unclear if this is always the case
or not, so this patch adds the logic back but with a conditional check
on the workspace path.

Testing: This patch has been tested on a fork.
Fixes: #37626

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2025-06-23 09:33:58 +00:00
Jerens Lensun
877010c5f6
Mach clippy & test-tidy github inline annotation (#37294)
When the --report-ci flag is passed to ./mach clippy or ./mach
test-tidy, the commands emit CI-friendly output to files in the tempy
directory. These files can later be used by [GitHub Workflow
Commands](https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/workflow-commands-for-github-actions#setting-an-error-message)
for annotations. If the flag is not provided, the default behavior
remains unchanged. Both clippy and test-tidy will limit have 10 limit
annotation

⚠️ Note: For ./mach clippy --report-ci to work correctly, the Clippy
command must use --message-format=json. If it's not specified, CI output
will not be generated, and no warning or error will be shown.

Example PR: https://github.com/jerensl/servo/pull/1/files

Fixes: #37231

---------

Signed-off-by: Jerens Lensun <jerensslensun@gmail.com>
2025-06-22 15:30:19 +00:00
Narfinger
ea5a20ab8d
OHOS: update ci to use api-14 and newer action (#37395)
Update the CI to use api version 14 and 5.0.2 sdk. Additionally, update
the action. This is required because of
https://github.com/servo/servo/pull/37392.

Testing: CI does not have tests.

---------

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
Co-authored-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2025-06-11 19:34:09 +00:00
sagudev
89977c0e63
CI: fix windows CI (#37321)
GitHub-hosted runners do not check out to D: drive, apparently.

Testing: Manual CI run:
https://github.com/sagudev/servo/actions/runs/15506836392/job/43662762580
Fixes: #37311

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2025-06-07 11:32:05 +00:00
sagudev
6cc3e2934c
CI: Limit concurency of WPT Export (#37257)
In https://github.com/servo/servo/pull/37255 I discovered that editing
PR title to soon will not take into affect until I manually rerun WPT
export (because first run that actually created PR hasn't done yet). We
can somehow resolve this by forbidding concurrent runs of WPT Export for
same PR and hope that first queued run is also firstly run.

docs:
https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/control-the-concurrency-of-workflows-and-jobs

Testing: This is CI

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2025-06-05 08:33:53 +00:00
Narfinger
2353c0089f
OHOS CI: Allow run.json to be overwritten in upload action. (#37083)
The CI does multiple build runs so we need to handle it being
overwritten.

Multiple different build of OHOS servoshell would fight for who is first
to upload run.json and the other would error out.
Now we allow both to succeed by overwrite the run.json

Testing: Testrun:
https://github.com/Narfinger/servo/actions/runs/15180797189/job/42689748807

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
2025-05-23 02:17:41 +00:00
Narfinger
4c1a09e17b
Improved OHOS Benchmarking to use different websites (#37055)
Workflow changes includes to allow a given runs.json file to be read by
hitrace-bench and perform the benchmarks.
It depends on the updated CI tools. Requires CI modification in
https://github.com/servo/ci-runners/pull/36.

Testing: This change was tested on the CI.
https://github.com/Narfinger/servo/actions/runs/15157760046/job/42616776563
A corresponding bencher output is here:
https://bencher.dev/console/projects/servo-ci/reports/99a369f7-e6c3-4141-83f9-0ecddac484a5?back=L2NvbnNvbGUvcHJvamVjdHMvc2Vydm8tY2kvcmVwb3J0cz9wZXJfcGFnZT04JnBhZ2U9MQ%3D%3D

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
2025-05-22 01:31:35 +00:00
Narfinger
d8837e4a52
Allow OHOS bencher to get the model name for testbed. (#37026)
Allow OHOS bencher to get the model name for testbed.

Currently we rely on simple `hdc bugreport` and awk. `hdc bugreport`
spits out a lot of information so it is kind of slow. But that should be
ok.
Working run (with the usual caveats of removing the checks in the file)
can be found here:
https://github.com/Narfinger/servo/actions/runs/15069652902

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
2025-05-19 10:21:34 +00:00
Narfinger
3af0992ead
Added a new workflow that benchmarks simple startup and loading of servo.org on HarmonyOS. (#36878)
Added a new workflow that benchmarks simple startup and loading of
servo.org on HarmonyOS.
Needs https://github.com/servo/ci-runners/pull/34 to be merged and
applied to the runners.

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
2025-05-15 12:52:33 +00:00
Oriol Brufau
1499e2a874
Remove some references to layout 2013 vs layout 2020 (#37007)
We no longer have both layout systems.

Testing: not needed (no behavior change)

Signed-off-by: Oriol Brufau <obrufau@igalia.com>
2025-05-14 19:53:48 +00:00
Narfinger
bbb2b82aee
Use servoshell custom logging domain for OHOS workfloew (#36979)
Use the introduced logging domain on OHOS to get the log on the
workflow. This improves the reliability of getting the logs if
servoshell crashed.

Testing: This was tested on the CI Runner

Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
2025-05-12 16:03:06 +00:00
sagudev
c0339dd360
CI: add build-args (#36947)
Add `build-args` input in CI and try_parser job definition so we can
pass own build args to `./mach build`

Testing: There are tests for try parser and I tested CI in my fork.
Fixes: partial fix #36823

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2025-05-12 07:41:12 +00:00
sagudev
34e21157de
Fixup dependabot.yml (#36642)
fixups https://github.com/servo/servo/pull/36641, as yaml was not valid
(one ` ` to many).

Testing: No testing for bot config.

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2025-04-22 05:44:47 +00:00
sagudev
a69efed6e9
dependabot: group objc2 crates (#36641)
or else their PRs will fail in tidy:
https://github.com/servo/servo/pull/36637
https://github.com/servo/servo/pull/36635

Testing: It's bot config so no testing is possible.

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2025-04-22 04:39:36 +00:00
sagudev
bd9242acfa
CI: Add number_of_chunks (#36584)
This allows changing number of chunks used for WPT testing (sometimes
useful for WebGPU).

Testing: Manual try runs
Fixes: #30062

---------

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2025-04-18 06:38:28 +00:00
Mukilan Thiyagarajan
3c4a4d53dd
ci: use Ubuntu 22.04 for nightly jobs (#36377)
The upstream PR (web-platform-tests/wpt#51084) to update the WPT.fyi
docker image to 22.04 landed a few days back. No new issues have been
discovered so far in wpt.fyi, so it should be safe for us to move to
22.04 for the nightly builds.

Fixes #35747.

---------

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2025-04-07 11:32:32 +00:00
Alex Touchet
5a5e49ce47
Update Dependabot stylo crates again (#36154)
Signed-off-by: Alex Touchet <26315797+atouchet@users.noreply.github.com>
2025-03-25 18:03:47 +00:00
sagudev
f65b697a5a
Update names of stylo crates in dependabot.yml (#36137)
This is response to https://github.com/servo/servo/pull/36128 that is caused by renames that happened in upstream https://github.com/servo/stylo/pull/150.

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2025-03-25 12:16:02 +00:00
MDCODE247
3b293f4949
Remove references to 2020 layout in try_parser.py (#36047)
* Remove references to 2020 layout in try_parser.py

Signed-off-by: MDCODE247 <ammedabubakard500@gmail.com>

* Removed all references to CHANGE

Signed-off-by: MDCODE247 <ammedabubakard500@gmail.com>

* Updated .yml workflow files

Signed-off-by: MDCODE247 <ammedabubakard500@gmail.com>

* update more references

Signed-off-by: MDCODE247 <ammedabubakard500@gmail.com>

* fixed right hand argument

Signed-off-by: MDCODE247 <ammedabubakard500@gmail.com>

* Fixing more references

Signed-off-by: MDCODE247 <ammedabubakard500@gmail.com>

* mach: remove unused import in try_parser.py

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* ci: update reference to wpt_layout in try.yml

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

---------

Signed-off-by: MDCODE247 <ammedabubakard500@gmail.com>
Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2025-03-25 11:19:48 +00:00
sagudev
8b8b447ef0
Fix WPT Import (#36101)
Log files were renamed in #36037

related https://github.com/servo/servo/pull/36098

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2025-03-23 10:39:34 +00:00
sagudev
b641c7be96
ci: Fix WPT import (#36098)
Log files were renamed in https://github.com/servo/servo/pull/36037

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2025-03-23 08:21:49 +00:00
Richard Dushime
cb5dd3172a
[New]Simplify mac-wpt workflow. (#36068)
* [New]Simplify mac-wpt workflow

Signed-off-by: richarddushime <mudaherarich@gmail.com>

* Fix Requested changes

Signed-off-by: richarddushime <mudaherarich@gmail.com>

* Remove wpt-layout in mac.yml

Signed-off-by: richarddushime <mudaherarich@gmail.com>

---------

Signed-off-by: richarddushime <mudaherarich@gmail.com>
2025-03-22 03:28:22 +00:00
Kelechi Ebiri
2e3e092f19
chore: simplify linux workflow (#36037)
* chore: simplify linux workflow

Signed-off-by: TG <ebiritg@gmail.com>

* chore: remove occurances of wpt-layout

Signed-off-by: TG <ebiritg@gmail.com>

* chore: remove invalid workflow in main.yml file

Signed-off-by: TG <ebiritg@gmail.com>

* chore: retain wpt-layout workflow as requested

Signed-off-by: TG <ebiritg@gmail.com>

---------

Signed-off-by: TG <ebiritg@gmail.com>
2025-03-20 10:52:19 +00:00
Oriol Brufau
84a1b7d4a5
Fix WPT importer (#36018)
In #35946 I accidentally removed a necessary line of code.

Signed-off-by: Oriol Brufau <obrufau@igalia.com>
2025-03-18 02:15:36 +00:00
Oriol Brufau
e2daeeaceb
Change github workflows to not compile legacy layout (#35946)
Since it will be removed in #35943

Signed-off-by: Oriol Brufau <obrufau@igalia.com>
2025-03-12 22:09:21 +00:00
Samson
ae2c9090cc
Allow try runs to all users with label permissions (#35911)
https://servo.zulipchat.com/#narrow/channel/263398-general/topic/Contributors.20do.20not.20seem.20to.20have.20try.20job.20permissions/with/504859292

Signed-off-by: Samson <16504129+sagudev@users.noreply.github.com>
2025-03-11 18:10:01 +00:00
Alex Touchet
e928697982
Add epaint_default_fonts to egui Dependabot group (#35823)
Signed-off-by: Alex Touchet <26315797+atouchet@users.noreply.github.com>
2025-03-07 12:14:21 +00:00
Jonathan Schwender
fc891fff11
hos CI: fix checking success (#35807)
In #35804 we fixed the bundlename, but I assumed the servoshell in
the grep expression was referring to the libraryname.
As it turns out the tracelines start with the bundlename,
so we need to update this name too.
This is the last line in the hos CI, and the grep
expression works locally so this time CI should really be fixed.
As already mentioned in the previous PR, we can't really test this
well, since this job only runs on self-hosted runners, which check out
the github action yaml version from the main branch.

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2025-03-06 07:36:33 +00:00
Jonathan Schwender
32078a2a5a
hos CI: fix app bundlename (#35804)
In 78f7d525cc we
renamed the app bundle. This adapts the CI job
to use the same name.

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2025-03-06 03:16:04 +00:00
Samson
b56a3caea0
Generate Try Configuration use ubuntu-22.04 (#35746)
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2025-03-02 14:21:22 +00:00
Simon Wülker
be6765447d
Update to rust 1.85 (#35628)
* Update to rust 1.85

This is needed for cargo-deny

Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>

* Upgrade crown

Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>

* Clippy fixes

Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>

* Re-upgrade cargo-deny to 0.18

Keeping it locked to 0.18 just in case they
update their required rustc version again

Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>

---------

Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
2025-02-24 17:44:35 +00:00
Samson
d78f7b2d78
ci: Always install crown, even on self-hosted (#35637)
Signed-off-by: Samson <16504129+sagudev@users.noreply.github.com>
2025-02-24 17:15:46 +00:00
Oriol Brufau
e74bb8de15
Prevent lint job from trying to use incompatible cargo-deny version (#35632)
Lint jobs were failing because they would try to install the latest
version of cargo-deny (0.18.0), which requries rustc 1.85.0 or newer,
while the currently active rustc version is 1.83.0.

Therefore this makes it install version 0.17 instead.

Signed-off-by: Oriol Brufau <obrufau@igalia.com>
2025-02-24 12:47:51 +00:00
Xiaocheng Hu
2b0d2ecc73
Rebase and squash (#35567)
Signed-off-by: Xiaocheng Hu <xiaochengh.work@gmail.com>
2025-02-21 11:54:25 +00:00
Samson
0d51578cc3
ci: Free some disc space on GitHub hosted runners (#35181)
Speculative fix for #35179

Signed-off-by: Samson <16504129+sagudev@users.noreply.github.com>
2025-02-04 06:55:13 +00:00
Delan Azabani
5a0a60efc1
CI: temporarily stop running libservo builds by default (#35180)
Signed-off-by: Delan Azabani <dazabani@igalia.com>
2025-01-27 08:44:52 +00:00
Delan Azabani
2db828f0c7
Add minimal libservo example using winit (#35118)
* Add minimal libservo example using winit

Signed-off-by: Delan Azabani <dazabani@igalia.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>

* CI: include examples in libservo compile test

Signed-off-by: Delan Azabani <dazabani@igalia.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>

* CI: build libservo with `continue-on-error`

Signed-off-by: Delan Azabani <dazabani@igalia.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>

---------

Signed-off-by: Delan Azabani <dazabani@igalia.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
2025-01-23 12:15:53 +00:00