aboutsummaryrefslogtreecommitdiffstats
path: root/.github
Commit message (Collapse)AuthorAgeFilesLines
* Update to rust 1.85 (#35628)Simon Wülker2025-02-241-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* ci: Always install crown, even on self-hosted (#35637)Samson2025-02-241-2/+6
| | | Signed-off-by: Samson <16504129+sagudev@users.noreply.github.com>
* Prevent lint job from trying to use incompatible cargo-deny version (#35632)Oriol Brufau2025-02-241-0/+2
| | | | | | | | | 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>
* Rebase and squash (#35567)Xiaocheng Hu2025-02-211-1/+1
| | | Signed-off-by: Xiaocheng Hu <xiaochengh.work@gmail.com>
* ci: Free some disc space on GitHub hosted runners (#35181)Samson2025-02-041-0/+7
| | | | | Speculative fix for #35179 Signed-off-by: Samson <16504129+sagudev@users.noreply.github.com>
* CI: temporarily stop running libservo builds by default (#35180)Delan Azabani2025-01-271-1/+1
| | | Signed-off-by: Delan Azabani <dazabani@igalia.com>
* Add minimal libservo example using winit (#35118)Delan Azabani2025-01-233-6/+9
| | | | | | | | | | | | | | | | | | | | | * 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>
* Fix building libservo with `cargo build -p libservo` (#35116)Delan Azabani2025-01-237-1/+43
| | | | | | | | | | | | | | | | | | | * Fix building libservo with `cargo build -p libservo` Signed-off-by: Delan Azabani <dazabani@igalia.com> * Test the libservo build in CI Signed-off-by: Delan Azabani <dazabani@igalia.com> * Work around build issue on macOS (#34517) 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>
* ci: Fix ohos test artifact name (#35143)Jonathan Schwender2025-01-231-0/+1
| | | | | | | | I'm not quite sure why a workflow run would have a duplicate artifact name for test_output, but hopefully this patch should fix upload failures such as in https://github.com/servo/servo/actions/runs/12922254914/job/36037850582 Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* ci: remove explicit `permissions` block in bencher.yml (#35142)Mukilan Thiyagarajan2025-01-231-4/+0
| | | | | | | | | | | | | | | | | | | | | This is causing a validation error because Github's static analysis sees nightly.yml is calling bencher.yml but the latter requires permissions that are more relaxed than the former (for android & ohos). Since other workflows are not failing validation, they presumably already run with default permissions that are satisfy bencher.yml's requirements (bencher.yml is not relaxing the parent workflow's permissions as that would defeat the usefulness of the validation that Github is enforcing). In the long run we should move to default-restrictive permissions and then have the top-level workflows declare the required permissions. The permissions in bencher.yml seems to serve only as machine-checked documentation, but as it is causing issues with nested calls that are not possible at runtime, it seems like we have to either pass additional permissions in top-level workflows (that are not needed, so that is bad) or not declare them in nested workflows. Fixes #35141. Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* CI: Test ohos on HarmonyOS device (#35006)Jonathan Schwender2025-01-231-1/+91
| | | | | | | | | | | | | | | | | | | | | | * ohos: Add event for page loaded We can use this to check if we succeeded. Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com> * CI: Test OpenHarmony on self-hosted runner Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com> * fix typo Co-authored-by: Mukilan Thiyagarajan <mukilanthiagarajan@gmail.com> Signed-off-by: Jonathan Schwender <55576758+jschwe@users.noreply.github.com> --------- Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com> Signed-off-by: Jonathan Schwender <55576758+jschwe@users.noreply.github.com> Co-authored-by: Mukilan Thiyagarajan <mukilanthiagarajan@gmail.com>
* fix: ohos workflow expression error (#35109)DK Liao2025-01-211-3/+3
| | | Signed-off-by: DK Liao <dklassic@gmail.com>
* Create servo-media Dependabot group (#35098)Alex Touchet2025-01-201-0/+3
| | | Signed-off-by: Alex Touchet <26315797+atouchet@users.noreply.github.com>
* feat: Track the binary size for all the different platforms (#34744)DK Liao2025-01-209-100/+276
| | | | | | | | | | | | | | | | | | | * feat: Track the binary size for all the different platforms Signed-off-by: DK Liao <dklassic@gmail.com> * Add target to bencher job name Signed-off-by: DK Liao <dklassic@gmail.com> * Update .github/workflows/bencher.yml Co-authored-by: Martin Robinson <mrobinson@igalia.com> Signed-off-by: DK Liao <dklassic@gmail.com> --------- Signed-off-by: DK Liao <dklassic@gmail.com> Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* CI: use new self-hosted runner servers (#35002)Delan Azabani2025-01-151-21/+23
| | | Signed-off-by: Delan Azabani <dazabani@igalia.com>
* CI: use new API for taking a runner (#34983)Delan Azabani2025-01-141-1/+1
| | | Signed-off-by: Delan Azabani <dazabani@igalia.com>
* CI: disable self-hosted runners for nightly.yml (#34982)Delan Azabani2025-01-141-0/+1
| | | Signed-off-by: Delan Azabani <dazabani@igalia.com>
* CI: use self-hosted runners for macOS build jobs (#34868)Delan Azabani2025-01-071-7/+50
| | | Signed-off-by: Delan Azabani <dazabani@igalia.com>
* chore: Update wgpu (#34795)Samson2025-01-021-1/+0
| | | | | | | | | | | | | | | | | | | | * Update wgpu https://github.com/gfx-rs/wgpu/commit/0f5f0580e4cb2fd2feac0e8ed7e8d3050e4d9c93 Most notable change is https://github.com/gfx-rs/wgpu/pull/6785 Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Remove silencing of wgpu logs I fixed this in upstream: https://github.com/gfx-rs/wgpu/pull/6817 Signed-off-by: Samson <16504129+sagudev@users.noreply.github.com> --------- Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> Signed-off-by: Samson <16504129+sagudev@users.noreply.github.com>
* ci: Do not run bencher in MQ (#34732)Samson2024-12-211-1/+1
| | | | | Fixes #34731 Signed-off-by: Samson <16504129+sagudev@users.noreply.github.com>
* Update wgpu for supporting TextureView.usage (#34721)Samson2024-12-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Update wgpu and add support for TextureView.usage https://github.com/gfx-rs/wgpu/commit/53f40794f275329a48efc7d1c637c91b8e51327d Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Update expect Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Disable wgpu logging Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * remove unused wgpu features Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * new expect Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * re Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Update deny.toml Signed-off-by: Samson <16504129+sagudev@users.noreply.github.com> --------- Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> Signed-off-by: Samson <16504129+sagudev@users.noreply.github.com>
* ci: explictly install Clang 14 on Linux runners (#34718)Mukilan Thiyagarajan2024-12-201-1/+8
| | | | | | | | | | | | | | The nightly build jobs run on Ubuntu 20.04 to ensure the glibc version is compatible with WPT.fyi runners. But this version of Ubuntu has an older clang version (12) that is not compatible with mozjs. This patch makes the nightly job for Linux explicity install Clang 14 using the KyleMayes/install-llvm-action@v2 action. The regular Linux job still uses system Clang installation as there are failures when using the github action. Fixes #34713. Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* mach: recreate .venv when .python-version changes (#34712)Mukilan Thiyagarajan2024-12-2010-41/+38
| | | | | | | | | | The new images published in servo/ci-runners#12 should have `uv` installed already and the initial build of servo triggered during the base image construction will force the installation of the Python version mentioned at the time of the image construction (3.12). When .python-version changes, we can no longer use the .venv baked into the image and must recreate the it to avoid activating the environment. Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* Disable sccache in CI (#34692)Jonathan Schwender2024-12-185-41/+0
| | | | | | | | | | | | | | We have been having intermittent issues with sccache since around the recent v0.9 release of sccache which only appear when building mozjs from source. Due to recent changes with readablestreams, we are not using the prebuilt mozjs artifacts anymore and always building from source, causing these problems to regularly block the merge queue. Bumping SCCACHE_GHA_VERSION helps but has been observed to only be a temporary solution until the next breakage. Closes #34571 Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* CI: simplify self-hosted check (#34682)Jonathan Schwender2024-12-182-24/+24
| | | | | | | | | | | | | | | | | | * CI: simplify self-hosted check See also the official documentation on the runner context: https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/accessing-contextual-information-about-workflow-runs#runner-context Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com> * Fix runner-timeout Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com> --------- Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* ci: purge MacOS specific caches (#34684)Mukilan Thiyagarajan2024-12-181-1/+1
| | | | | To check if this helps with https://github.com/servo/servo/pull/34629 Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* ci: increment SCCACHE_GHA_VERSION to purge caches (#34673)Mukilan Thiyagarajan2024-12-185-5/+5
| | | | | | | | There are build failures again with similar errors seen in #34571. Incrementing the SCCACHE_GHA_VERSION should purge the cache for now, but this is just a temporary fix. If this happens again, we'll need to look into disabling sccache until #34571 is resolved. Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* Set CCACHE only for github hosted runner (#34670)Samson2024-12-171-1/+3
| | | | | I believe this should fix https://github.com/servo/servo/issues/34603#issuecomment-2544621524 Signed-off-by: Samson <16504129+sagudev@users.noreply.github.com>
* ci: fix wpt export job (#34640)Mukilan Thiyagarajan2024-12-162-1/+7
| | | | | | | | | The path to `.python-version` used by our setup-python action is relative to the current working directory, which is not the servo repo when WPT Export job runs. Fixes #34639. Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* mach: adopt `uv` and avoid system python (#34632)Mukilan Thiyagarajan2024-12-1616-46/+65
| | | | | | | | | | | | | | | | This allows us to use `uv` for: 1. Installing a pinned Python version 2. Installing the dependency packages using `uv`'s pip compatible interface. 4. Bootstrapping `mach` without a Python installion on the host, using `uv run` This change also introduces a new 'composite' GitHub action to setup python in the different CI workflows. There is no support for externally managed python installations and virtual environments. These could be added in the future. Fixes #34095, #34547 Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* Bump bindgen to 0.71.1 (#34562)Jonathan Schwender2024-12-165-7/+15
| | | | | | | | | | | | | | | | | | | * Bump bindgen to 0.71.1 Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com> * Set SCCACHE_GHA_VERSION to allow purging cache changing the version allows us to purge the cache. Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com> * android CI: Enable sccache again Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com> --------- Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* ci: add retries and caching for `gradle` installation (#34619)Mukilan Thiyagarajan2024-12-141-0/+8
| | | | | | | | | | | | This change uses Gradle's official `setup-gradle` action to allow the caching of the downloaded gradle distribution and java dependencies in the GitHub Actions cache. However, since the initial download of gradle distribution is still handled by the `gradlew` wrapper script which doesn't retry on network failures, this change also adds a simple retry mechanism using shell scripting. Fixes #34600 Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* build: upgrade rustc to 1.81.0 (#34270)Mukilan Thiyagarajan2024-12-121-2/+0
| | | Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* ci: disable caches on Android CI for testing (#34577)Mukilan Thiyagarajan2024-12-111-5/+7
| | | | | | This is to see if #34571 is related to caching in anyway. There is no easy way to delete all Github Action caches using Github UI or cli. Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* Revert "mach: switch to `uv` for managing python venv (#34504)" (#34548)Mukilan Thiyagarajan2024-12-1015-63/+45
| | | | | This reverts commit 4103421ba5dc401817128661d759bb18b0aec8f1. Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* mach: switch to `uv` for managing python venv (#34504)Mukilan Thiyagarajan2024-12-0915-45/+63
| | | | | | | | | | | | | This patch switches servo to use `uv` for both installing a pinned Python version as well as installing the dependency packages using `uv`'s pip compatible interface. It also introduces a new 'composite' GitHub action to setup python in the different CI workflows. There is no support for externally managed python installations and virtual environments. These could be added in the future. Fixes #34095 Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* Add linux-pref job (#33261)Samson2024-12-066-0/+110
| | | | | | Job will do some performance benchmarks (Dromeo, Speedometer) and mesure binary size and will report results to bencher.dev Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> Co-authored-by: DK Liao <dklassic@gmail.com>
* Rename 'cargo-clippy' mach command to just 'clippy' (#34481)Nico Burns2024-12-051-1/+1
| | | Signed-off-by: Nico Burns <nico@nicoburns.com>
* ohos: Specify SDK version more accurately. (#34431)Jonathan Schwender2024-11-291-1/+1
| | | | | | | | | SDK Version 5.0.1 was recently released and bumps the API-version to 13. This means hvigor will refuse to package the app, since we currently specify that our app targets API 12. Hence, we clarify our version by also specifying the patch level. Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* Add nicoburns to CODEOWNERS (#34351)Nico Burns2024-11-231-2/+2
| | | Signed-off-by: Nico Burns <nico@nicoburns.com>
* Add @atbrakhi to the CODEOWNERS file (#34334)atbrakhi2024-11-221-0/+3
| | | Signed-off-by: atbrakhi <atbrakhi@igalia.com>
* Disable layout-2013 feature by default (#34290)Jonathan Schwender2024-11-211-1/+1
| | | | | | | | | | | | | Most of the time layout-2013 is not needed and just wastes build time. Disable the optional feature by default and require users to specify the feature at compile time if they wish to use the legacy layout. In CI we enable the feature by default for Linux, since that we need it for wpt tests with the legacy layout and CI should ensure that the legacy code continues to compile. Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* Add @Loirooriol to the `CODEOWNERS` file (#34316)Oriol Brufau2024-11-201-2/+2
| | | Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* Add @mrobinson to the `CODEOWNERS` file (#34308)Martin Robinson2024-11-201-3/+8
| | | Signed-off-by: Martin Robinson <mrobinson@igalia.com>
* Use try-parser in main workflow (#34146)Samson2024-11-201-47/+38
| | | | | this allows us to have fail-fast in MQ Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
* Update CODEOWNERS (#34304)Jonathan Schwender2024-11-201-0/+6
| | | | | Add myself as a reviewer for OpenHarmony related code Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* ohos: Add basic IME and keyboard support (#34188)Jonathan Schwender2024-11-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ohos: Add basic IME and keyboard support - Add extremely basic support for keyboard events - Add basic IME support - Showing and hiding the IME - inserting text - deleting characters - very basic configuration of the IME Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> * Apply suggestions from code review Improve the log message Co-authored-by: Josh Matthews <josh@joshmatthews.net> Signed-off-by: Jonathan Schwender <55576758+jschwe@users.noreply.github.com> * Update ports/servoshell/egl/ohos.rs Co-authored-by: Mukilan Thiyagarajan <mukilanthiagarajan@gmail.com> Signed-off-by: Jonathan Schwender <55576758+jschwe@users.noreply.github.com> * ohos: Bump the minimum required SDK version to 5.0 Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> * ohos: Remove pub from callbacks The callbacks don't need to be public, as we will be registering them. Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> * Rename composition event Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> * ohos: clippy in log Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> * ohos: address some clippy warnings Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> * ohos: Raise Error in mach if unsupported SDK version is used. Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> * Add keyboard-types dependency for android Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> --------- Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> Signed-off-by: Jonathan Schwender <55576758+jschwe@users.noreply.github.com> Co-authored-by: Josh Matthews <josh@joshmatthews.net> Co-authored-by: Mukilan Thiyagarajan <mukilanthiagarajan@gmail.com>
* CI: Fix lint job (#34257)Jonathan Schwender2024-11-151-0/+2
| | | | | cargo-deny 0.16.2 requires Rust 1.81, so we install the previous version Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>
* build(deps): bump napi-ohos related crates (#34227)Jonathan Schwender2024-11-121-0/+4
| | | | | | | | | | | | | * bump napi-ohos* crates to 1.0.2 Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com> * dependabot: group napi-ohos related updates Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com> --------- Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* CI: use new intermittent-tracker deployment (#34068)Delan Azabani2024-11-041-0/+2
| | | | | | | | | | | | | | | | | * CI: use new intermittent-tracker deployment Signed-off-by: Delan Azabani <dazabani@igalia.com> * Plumb new secrets into linux-wpt.yml environment Signed-off-by: Delan Azabani <dazabani@igalia.com> * Print effective dashboard URL in WPT runner Signed-off-by: Delan Azabani <dazabani@igalia.com> --------- Signed-off-by: Delan Azabani <dazabani@igalia.com>