Commit graph

2093 commits

Author SHA1 Message Date
Nico Burns
e4ec84fad1
Rename 'cargo-clippy' mach command to just 'clippy' (#34481)
Signed-off-by: Nico Burns <nico@nicoburns.com>
2024-12-05 03:19:15 +00:00
Mukilan Thiyagarajan
c6d7c5785a
mach: fix logic to override paths for legacy layout (#34467)
wptrunner internally derives the path to the MANIFEST.json file from the
`metadata_path` passed via `test_paths`. The current logic overrides
only the `metadata_path`, leaving the manifest_path pointing at the
wrong (non-legacy) layout's MANIFEST.json.

In #34436 we observed that the recent WPT imports create a transient
`.cache` diretory that wptrunner logic uses for optimization. This has
not been observed until #34436 because a [recent bump in MANIFEST.json's
schema version][1] triggered the creation of the cache. Because of the
above issue with incorrect path and the fact that we *first* trigger
`mach update-wpt` for legacy layout during WPT import, the MANIFEST.json
of non-legacy layout gets incorrectly migrated during the invocation of
`update-wpt` for legacy layout but the cache is still created under
legacy-layout's path as it is not based on `manifest_path`. The
subsequent invocation of `mach update-wpt` for non-legacy finds the
MANIFEST.json already migrated so the `.cache` directory is not
constucted.

This change simply replaces the whole object using the wptrunner's
`TestRoot` class constructor so that all derived paths are calculated
correctly. We also add the `.cache` folders to gitignore as it seems
like they are expected to be created during such version migrations.

[1]: https://github.com/web-platform-tests/wpt/pull/49406

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2024-12-04 12:38:58 +00:00
Delan Azabani
67012a5091
Remove etc/shell.nix in favour of shell.nix (#34336)
Signed-off-by: Delan Azabani <dazabani@igalia.com>
2024-11-22 04:03:35 +00:00
Jonathan Schwender
80529ef358
Add medium profile for daily work scenario (#34035)
- The standard `dev` mode is often too slow for daily work on servo
- Increasing the optimization level to 2 improves the performance noticably.
- Build time for opt-level = 1 is slightly higher than 2 on my machine
- Reducing debug info to `line-tables-only` improves link and build times,
  while still keeping relevant info for backtraces.

Also extend .servobuild to allow setting custom cargo profiles instead
of just release and dev.

Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>
2024-11-21 11:28:15 +00:00
Jonathan Schwender
5113147f80
mach: Remove mach rustup (#34287)
We don't use the nightly toolchain anymore, so this command can be removed.

Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>
2024-11-19 12:20:56 +00:00
Mukilan Thiyagarajan
997b6411c0
mach: run linux unit tests for 'full' try jobs (#34272)
Windows and Mac have unit tests enabled when triggered via 'full'
alias but they are disabled on Linux which is confusing.

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
Co-authored-by: sagudev <16504129+sagudev@users.noreply.github.com>
2024-11-18 08:23:46 +00:00
Jonathan Schwender
f71f38bd3d
mach: Fix notifications on windows 11 (#34266)
Bumps notify-py to the latest version v0.3.43.
Release notes: https://github.com/ms7m/notify-py/releases/tag/v0.3.43
This fixes notifications on windows 11.

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2024-11-17 10:54:15 +00:00
Jonathan Schwender
0d2ce68d50
mach: ohos: Print error message when hvigor fails (#34267)
`hvigorw --version` might fail if some required environment variables
are not set. In this case we should print the output of the command,
so that the user can report what caused `hvigorw --version` to fail.

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2024-11-17 10:53:41 +00:00
Jonathan Schwender
538ac61a82
ohos: Add basic IME and keyboard support (#34188)
* 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>
2024-11-15 15:04:48 +00:00
Jonathan Schwender
c64d5e9d30
mach bootstrap: Lock cargo-deny to 0.16.1 (#34258)
As mentioned in https://github.com/servo/servo/pull/34257
we should also lock the cargo-deny version in mach bootstrap.

Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>
2024-11-15 12:57:40 +00:00
Samson
5423e622ed
Allow tidy to pass without support/crown/target (#34212)
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2024-11-11 16:07:05 +00:00
Samson
39ef61c324
Exclude crown from the root Cargo workspace (#34173)
* Exclude crown from workspace

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Update shell.nix and remove filterlock

Signed-off-by: Delan Azabani <dazabani@igalia.com>

---------

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
Signed-off-by: Delan Azabani <dazabani@igalia.com>
Co-authored-by: Delan Azabani <dazabani@igalia.com>
2024-11-08 10:08:49 +00:00
Delan Azabani
cbfcd68bcc
CI: use new intermittent-tracker deployment (#34068)
* 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>
2024-11-04 10:42:26 +00:00
Jonathan Schwender
0759dde11b
ohos: Fix mach build on windows hosts (#34113)
With the latest release (5.0) of the OpenHarmony SDK
libclang.dll is now available and we can support
building for OpenHarmony from windows hosts.

Other changes required for building OH on windows:
- We can't use the `<target_triple>-clang` wrappers, since
  those are bash scripts, which fails on windows when cc-rs
  tries to directly call them. However, we already pass all
  the required flags the wrapper script would set, so this
  is not an issue.
- We need to use posix paths, otherwise the sysroot parameter
  will not be applied correctly (by bindgen). It seems to only
  cause issues with bindgen in practice, possibly because
  bindgen interprets the path with
  [`shlex::split`](8a6d851318/bindgen/lib.rs (L312C27-L312C40))
  which presumably causes the issues with windows paths.
  To be consistent I decided to use posix paths for all paths.
- Fix checks for copying dlls. We need to check the target OS,
  not the host OS when determining what libraries to copy.

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2024-11-02 16:08:19 +00:00
Samson
cf66330978
Fix test-speedometer (#34072)
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2024-10-30 17:59:15 +00:00
Jonathan Schwender
bac1101163
Fix CMake issues on OpenHarmony (#34062)
- We should use the CMake version from the NDK
- ignore errors from unused commandline parameters,
  which can easily happen due to --gcc-toolchain, which is added by the
  default CMake code when compiling with Clang.
 - Previously servo didn't have any CMake dependency projects anymore,
   so these issues didn't surface.

Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>
2024-10-30 04:40:59 +00:00
tanishka
884732dfb2
mach try: Remove wpt-2013 from full and wpt (#34048)
* Remove wpt-2013 from full and wpt

Signed-off-by: taniishkaaa <tanishkasingh2004@gmail.com>

* Keep layout2020 without unit_tests

Signed-off-by: taniishkaaa <tanishkasingh2004@gmail.com>

---------

Signed-off-by: taniishkaaa <tanishkasingh2004@gmail.com>
2024-10-28 18:56:26 +00:00
Samson
f4ff067387
chore: Update WebGPU CTS (#33990)
* chore: Update WebGPU CTS

d473d09475
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Update expectations

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Allow multiple process testing for CTS

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

---------

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2024-10-26 09:47:31 +00:00
chickenleaf
1ae90dcd95
clippy: Fix a variety of clippy warnings in fonts, layout_2020 and the DOM code (#33894)
* fixed some clippy warnings

Signed-off-by: L Ashwin B <lashwinib@gmail.com>

* Delete extra file

Signed-off-by: chickenleaf <lashwinib@gmail.com>

* preserved newline in compositionevent.rs

Co-authored-by: Martin Robinson <mrobinson@igalia.com>
Signed-off-by: chickenleaf <lashwinib@gmail.com>

* removed the newline in PrototypeList

Signed-off-by: L Ashwin B <lashwinib@gmail.com>

* removed the trailing whitespace

Signed-off-by: L Ashwin B <lashwinib@gmail.com>

---------

Signed-off-by: L Ashwin B <lashwinib@gmail.com>
Signed-off-by: chickenleaf <lashwinib@gmail.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
2024-10-18 13:57:13 +00:00
Mukilan Thiyagarajan
febe7de0bf
ohos: publish nightly builds (#33801)
Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2024-10-11 10:11:51 +00:00
Gae24
bd27e64cd8
fix possible IndexError (#33750)
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
2024-10-10 09:49:24 +00:00
Jonathan Schwender
78370fa6d0
Fix mach run bustage (#33563)
Move `--flavor` to a new "Packaging options" group, so that
we can only apply the flavor option to the commands that support it.

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2024-09-27 06:11:57 +00:00
Jonathan Schwender
7fdaccde55
ohos: Support product flavors (#33512)
* ohos: Support product flavors

Support different product flavors (e.g. with different signing
configurations) by supporting --flavor on ohos.
The flavor influences the package path for OH packages, so
allow the flavor parameter on build + package + install

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>

* Fix smoketest

Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>

---------

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>
2024-09-26 06:58:30 +00:00
Jonathan Schwender
88ffe9f7a5
ohos: Bundle resource files in hap (#33513)
Bundle resource files into the .hap, so they are available
as files in the application sandbox, instead of included
into the shared library.
This should slightly reduce the binary size in debug and
release mode.

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>
2024-09-24 04:29:53 +00:00
Mukilan Thiyagarajan
157e28c59b
openharmony: add servoshell for ohos (#33295)
* openharmony: add servoshell for ohos

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

* ohos: handle missing signing config on forks

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

---------

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2024-09-20 08:20:27 +00:00
Mukilan Thiyagarajan
ea109d5490
android: publish nightly builds for aarch64 (#33435)
* android: publish nightly builds for aarch64

Publish the aarch64 apk and aar packages to both Github Releases
and S3 so that it can be linked from servo.org.

The focus is on getting a working version of the APK on the homepage,
so few issues are resolved with temporary solutions:
1) We publish the "release" profile instead of "production" since the
   latter will need changes in the gradle configuration (the changes
   required was previously blocked on #32720 which is now closed).
2) The scheme for the version code is simple and doesn't consider
   other factors such as API level and product variants discussed in the
   Android docs (https://developer.android.com/google/play/publishing/multiple-apks#VersionCodes)
   This should be fine for now as we don't publish to any store yet.

The change also makes it so that the 'Release nightly' workflow will
endup building all 4 variants for the Android target, but only aarch64
is uploaded. This is because GH Actions doesn't have a good way to skip
a specific job in a matrix and the additionally code complexity needed
to acheive it (either generating a JSON dynamically in a new job and using
`fromJSON` in the matrix definition or skipping each individual step
based on matrix.target and `inputs.upload`) didn't seem worth the cost
saved (this is executed only once a day).

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

* android: add attestation for nightly build artifacts

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

---------

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2024-09-16 11:45:04 +00:00
Jonathan Schwender
f8ca5c3194
Fix packaging when cross compiling (#33454)
We need to check the compilation target,
not the host platform.

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2024-09-14 08:42:03 +00:00
Jonathan Schwender
b42f5eaa17
mach: remove python2 compatibility code (#33410)
* util.py: Remove six

We don't need to support python2 anymore, so we can just use
`str(x)` instead of `six.ensure_str(x)`

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>

* config.py: Remove six

We don't need to support python2 anymore, so we can just use
`str(x)` instead of `six.ensure_str(x)`

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>

* main.py: Remove six

We don't need to support python2 anymore, so we can just use
`str(x)` instead of `six.ensure_str(x)`

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>

* main.py: Fix `--settings` being ignored

Previously `paths` was unused in this function,
and the usage for the settings_file would have no effect.

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>

* terminal.py: Remove `six`

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>

* registrar.py: Remove `six`

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>

* mach/util.py: Remove `six`

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>

* mach: Remove python2 from the list of programming languages

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>

---------

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2024-09-11 18:25:25 +00:00
Gae24
68246df89e
fix clean-cargo-cache command (#33408)
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
2024-09-11 17:32:01 +00:00
Mukilan Thiyagarajan
52a447b1e3
android: make aarch64 the default target (#33379)
Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2024-09-09 14:38:01 +00:00
Martin Robinson
e70507ca40
tidy: Fix rustdoc warnings and add a tidy check for a common URL issue (#33366)
This change fixes all rustdoc errors and also adds a tidy check for a
very common rustdoc URL issue. Eventually rustdoc warnings should likely
cause the build to fail, but this catches those issues sooner in order
to not waste so much developer time.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2024-09-08 15:04:19 +00:00
Jonathan Schwender
c9548d82ef
bootstrap: Avoid needless sudo when pkgs are installed (#33281)
- Previously on fedora `./mach bootstrap` would always detect it needs to
  reinstall packages and require root permissions.
- use custom queryformat for `rpm -qa` to to just get the package name
  (e.g. `openssl-libs` instead of `openssl-libs-3.2.2-3.fc40.i686`
- Use a list to store the output result instead of one string
- Fedora (40) installs `zlib-ng` instead of `zlib` and `libjpeg-turbo` instead
  of `libjpeg`, meaning that `rpm` / dnf commands report `zlib` as not installed.
  Specifying the actually installed package avoids this problem.

Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>
2024-09-02 06:56:38 +00:00
Jonathan Schwender
35ca050bfb
android: Fix install (#33277)
self.config["android"]["target"] is unset, causing an exception.
We can just use self.target.triple() instead.

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2024-09-01 20:17:34 +00:00
Samson
8dd40ed2bd
mach: Add test-speedometer command and --bmf-output to speedometer and dromaeo (#33247)
* Allow exporting Dromaeo results as BMF JSON

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Add speedometer runner

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

---------

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2024-08-29 15:58:57 +00:00
Martin Robinson
65c2e75379
ci: Fix the WPT export job after the repository change (#33228)
The GitHub search API is a bit sensitive. There isn't a great way to
search for the repository organization and the branch name when looking
for open PRs. Instead use the bot username as the author name, which
should likely have been having before. This fixes the WPT export job.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2024-08-29 09:26:04 +00:00
Samson
fe44010000
mach: Extract binary select into common_command_arguments (#33205)
* Extract binary select into common_command_arguments

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* fixups

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Small English edit

Signed-off-by: Martin Robinson <mrobinson@igalia.com>

---------

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
2024-08-28 12:07:02 +00:00
Martin Robinson
b29b614775
ci: Use Servo's wpt repository for WPT export (#33224)
This switches the WPT export script to use Servo's fork the `wpt`
upstream repository. The reasoning is that Servo developers's can fix
issues with branches there. This isn't possible because no one has
permissions to the servo-wpt-sync fork of the repository.

I have given `servo-wpt-sync` write persmissions to `servo/wpt`.

This also updates the tests a bit to reflect the new default repository.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2024-08-28 11:29:51 +00:00
Ben
fef44620cc
Fixed build error on macos (#33200)
This was due to uname reporting the architecture as arm64
instead of aarch64 on macos

Signed-off-by: Benjamin Vincent Schulenburg <bennyschulenburg@gmx.de>
2024-08-27 08:31:26 +00:00
Martin Robinson
bb5926b329
mach: Do not manually install toolchain for non-cross builds (#33190)
* mach: Do not manually install toolchain for non-cross builds

This fixes the Apple Silicon build where the installed toolchain does
not match the host triple. We only install toolchains manually for cross
builds, because cargo and friends will do this automatically when
executing.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>

* fix lints

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

---------

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2024-08-27 05:30:43 +00:00
Mukilan Thiyagarajan
b6d5ac09b0
mach: introduce BuildTarget abstraction (#33114)
Introduce a new `BuildTarget` abstraction to centralize the code for
supporting different ways of choosing the build target (e.g --android,
--target x86_64-linux-android , --target aarch64-linux-ohos). This
is currently handled in an adhoc fashion in different commands (
mach package, install, run) leading to a proliferation of keyword
parameters for the commands and duplicated logic.

The patch introduces a new `allow_target_configuration` decorator to
do the validation and parsing of these parameters into the appropriate
`BuildTarget` subclass, which is now stored as an instance attribute
of the CommandBase class. All the code that previously relied on
`self.cross_compile_target` has been switched to use the BuildTarget.

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2024-08-26 13:08:21 +00:00
Samson
e0e562137c
Add fallback value for data['message'] (#33185)
Signed-off-by: Samson <16504129+sagudev@users.noreply.github.com>
2024-08-25 21:54:51 +00:00
Samson
ebdae6094e
CI: Add separate Lint&Tidy check and remove test-tidy from linux (#33150)
* Create separate Lint&Tidy check

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Remove quick-check as it's not longer relevant

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Add clippy to rust-toolchain

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* fix try parser test expectations

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* use lint in result

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Lint & Tidy -> Lint

Co-authored-by: Martin Robinson <mrobinson@igalia.com>
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>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
2024-08-23 08:58:12 +00:00
Josh Matthews
0afcb83e9f
Print reason when tests are skipped. (#33077)
* Print reason when tests are skipped.

Signed-off-by: Josh Matthews <josh@joshmatthews.net>

* Print reason tests are skipped in Servo's WPT formatter

Signed-off-by: Martin Robinson <mrobinson@igalia.com>

---------

Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2024-08-23 08:39:39 +00:00
Samson
94ff89a5e4
webgpu: Sync various parts of spec (#33009)
* Sync `GPUObjectDescriptorBase` (label is not option anymore)

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Sync `GPUFeatureName`

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* shader_f16 feature is not usable in wgpu so disable it

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* sync `GPUTextureFormat`

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* `validate_texture_format_required_features`

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Sync `GPUTexture` attributes

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Make `entryPoint` in `GPUProgrammableStage` optional

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Set good expectations

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Bad expectations because naga does not support cons declarations

Also fail on firefox, where skipped before due to missing device features

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Bad expectation, also fails on firefox

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Bad expectations, because naga does not support `let pos = positions[vertex_index];`

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Set expectation

external texture does not work in firefox too (again naga)

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* set bad expectations, because naga does not support `enable`

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Set bad expectations for, `Texture with '' label has been destroyed`

also fails in firefox with same reason

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* one bad expectation

also on firefox

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* expect that also matches firefox

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* more expect

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* Use only 1 proc for _webgpu

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

* better doc comment

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>

---------

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2024-08-19 14:06:30 +00:00
Samson
b5fe99ba5d
wpt-tests-to-run -> wpt-args and make them last so they can override already provide (#33115)
d options

Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
2024-08-19 07:29:40 +00:00
Mukilan Thiyagarajan
d44c0f7e5d
mach: remove unused maven packaging code (#33083)
This code is unused and unmaintained. We can bring it back from version
control if needed in the future.

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2024-08-16 11:59:05 +00:00
Jonathan Schwender
3aef023368
ohos: Fix x86_64-unknown-linux-ohos (#33029)
* ohos: Fix compilation for x86_64

Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>

* ohos: Use the SDK compiler-wrapper

When compiling for x86_64-unknown-linux-ohos without the compiler
wrapper, for some reason mozjs_sys will be refercing a wrong mangled symbol
resulting in the following error when loading the .so at runtime:

```
_ZNSt3__111this_thread9sleep_forERKNS_6chrono8durationIxNS_5ratioILl1ELl1000000000EEEEE: symbol not found
```

This problem does not occur when compiling for aarch64 or when using the compiler wrapper.
In this case the correct symbol
`_ZNSt4__n111this_thread9sleep_forERKNS_6chrono8durationIxNS_5ratioILl1ELl1000000000EEEEE`
is referenced.
It's unclear why manually passing the flags via CFLAGS / CXXFLAGS does not work.

Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>

---------

Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>
2024-08-14 01:30:04 +00:00
Josh Matthews
1a58dba03e
Use correct feature name for JS backtraces. (#32998)
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
2024-08-10 04:56:53 +00:00
hatoo
28430bad0e
Fix visual_studio.py to call vswhere with -utf8 (#32949)
In Japanese Windows, `vswhere` puts cp932 string in default and fails to
load json in Pyhton.
This fixes it by adding `-utf8` option

Signed-off-by: hatoo <hato2000@gmail.com>
2024-08-06 09:35:05 +00:00
Mukilan Thiyagarajan
0ce9ce8dc0
mach: Add support for paths with spaces on Windows (#32936)
The default user name in Windows installations is of the form "FirstName
LastName", so it seems likely that there will be spaces in the user's
path. Based on my testing on Windows 11, the only Servo's bootstrap
script has trouble dealing with spaces in paths. This patch fixes that
by quoting such paths correctly. Our direct and indirect dependencies
seem to handle these without issue and Servo does build and run
correctly with this patch.

In this patch, the logic for gstreamer bootstrap now uses powershell
instead of directly invoking msiexec.exe via cmd.exe as I was unable to
get the installer to run correctly, even with quoting. Some extra hacks
were necessary to propagate the exit code correctly to mach.

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2024-08-05 14:42:21 +00:00