Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix multiple issues on wasm32, and runs url tests in CI #886

Merged
merged 1 commit into from
Apr 4, 2024

Conversation

micolous
Copy link
Contributor

@micolous micolous commented Nov 28, 2023

This fixes multiple issues on wasm32-unknown-unknown:

  • Remove Url::socket_addrs() on wasm32-unknown-unknown. That function will never work – those platform API calls are not supported.
  • Disable unit tests which won't work on wasm32-unknown-unknown.
  • Run tests using wasm_bindgen_test on wasm32-unknown-unknown.
  • Remove panic::catch_unwind from wpt tests, as that conflicts with wasm-bindgen-test's panic handler.
  • Run url tests on wasm32-unknown-unknown in CI.

Copy link

codecov bot commented Nov 28, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

❗ No coverage uploaded for pull request base (main@a4dd58b). Click here to learn what that means.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #886   +/-   ##
=======================================
  Coverage        ?   81.88%           
=======================================
  Files           ?       20           
  Lines           ?     3545           
  Branches        ?        0           
=======================================
  Hits            ?     2903           
  Misses          ?      642           
  Partials        ?        0           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@micolous micolous changed the title Fix multiple issues on wasm32, and runs Url tests in CI Fix multiple issues on wasm32, and runs url tests in CI Nov 28, 2023
@micolous
Copy link
Contributor Author

micolous commented Apr 3, 2024

Any updates?

* remove `Url::socket_addrs` on wasm32-unknown-unknown (it won't work, those
  platform API calls are not supported)

* disable unit tests which won't work on wasm32-unknown-unknown

* run tests in `wasm_bindgen_test` on wasm32-unknown-unknown

* remove `panic::catch_unwind` from wpt tests, as that conflicts with
  wasm-bindgen's panic handler

* run the tests in CI
Copy link
Collaborator

@valenting valenting left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@valenting valenting added this pull request to the merge queue Apr 4, 2024
Merged via the queue into servo:main with commit 49eea1c Apr 4, 2024
14 checks passed
Boshen pushed a commit to oxc-project/oxc that referenced this pull request Jun 17, 2024
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [criterion2](https://bheisler.github.io/criterion.rs/book/index.html) ([source](https://github.com/Boshen/criterion2.rs)) | workspace.dependencies | minor | `0.10.0` -> `0.11.0` |
| [memchr](https://github.com/BurntSushi/memchr) | workspace.dependencies | patch | `2.7.2` -> `2.7.4` |
| [oxc-browserslist](https://github.com/oxc-project/oxc-browserslist) | workspace.dependencies | patch | `0.17.0` -> `0.17.1` |
| [url](https://github.com/servo/rust-url) | workspace.dependencies | patch | `2.5.0` -> `2.5.1` |

---

### Release Notes

<details>
<summary>Boshen/criterion2.rs (criterion2)</summary>

### [`v0.11.0`](https://github.com/Boshen/criterion2.rs/blob/HEAD/CHANGELOG.md#0110---2024-06-14)

[Compare Source](https://github.com/Boshen/criterion2.rs/compare/v0.10.0...v0.11.0)

##### Added

-   \[**breaking**] remove csv_output ([#&#8203;33](https://github.com/Boshen/criterion2.rs/pull/33))
-   rm crate `criterion-macro`

##### Other

-   *(deps)* update dependency rust to v1.79.0 ([#&#8203;35](https://github.com/Boshen/criterion2.rs/pull/35))
-   *(deps)* update rust crates ([#&#8203;32](https://github.com/Boshen/criterion2.rs/pull/32))
-   *(deps)* lock file maintenance rust crates ([#&#8203;31](https://github.com/Boshen/criterion2.rs/pull/31))
-   check unused dependencies

</details>

<details>
<summary>BurntSushi/memchr (memchr)</summary>

### [`v2.7.4`](https://github.com/BurntSushi/memchr/compare/2.7.3...2.7.4)

[Compare Source](https://github.com/BurntSushi/memchr/compare/2.7.3...2.7.4)

### [`v2.7.3`](https://github.com/BurntSushi/memchr/compare/2.7.2...2.7.3)

[Compare Source](https://github.com/BurntSushi/memchr/compare/2.7.2...2.7.3)

</details>

<details>
<summary>oxc-project/oxc-browserslist (oxc-browserslist)</summary>

### [`v0.17.1`](https://github.com/oxc-project/oxc-browserslist/blob/HEAD/CHANGELOG.md#0171---2024-06-17)

[Compare Source](https://github.com/oxc-project/oxc-browserslist/compare/oxc-browserslist-v0.17.0...oxc-browserslist-v0.17.1)

##### Other

-   *(deps)* update npm packages ([#&#8203;45](https://github.com/oxc-project/oxc-browserslist/pull/45))

</details>

<details>
<summary>servo/rust-url (url)</summary>

### [`v2.5.1`](https://github.com/servo/rust-url/releases/tag/v2.5.1)

[Compare Source](https://github.com/servo/rust-url/compare/v2.5.0...v2.5.1)

#### What's Changed

-   Be more detailed in documentation of set_query by [@&#8203;philippeitis](https://github.com/philippeitis) in [servo/rust-url#737
-   perf(punycode): avoid double allocation in decode_to_string by [@&#8203;bishopcheckmate](https://github.com/bishopcheckmate) in [servo/rust-url#894
-   Use SPECIAL_PATH_SEGMENT when encoding path in from_file_path by [@&#8203;valenting](https://github.com/valenting) in [servo/rust-url#902
-   Add dependabot by [@&#8203;oriontvv](https://github.com/oriontvv) in [servo/rust-url#903
-   Bump codecov/codecov-action from 3 to 4 by [@&#8203;dependabot](https://github.com/dependabot) in [servo/rust-url#904
-   Bump actions/upload-artifact from 2 to 4 by [@&#8203;dependabot](https://github.com/dependabot) in [servo/rust-url#905
-   Bump actions/checkout from 3 to 4 by [@&#8203;dependabot](https://github.com/dependabot) in [servo/rust-url#906
-   Fix non-base64 data URLs with % characters not followed by hex digits by [@&#8203;SmaugPool](https://github.com/SmaugPool) in [servo/rust-url#797
-   Rename `master` branch to `main` by [@&#8203;mrobinson](https://github.com/mrobinson) in [servo/rust-url#914
-   Add bench for to_ascii on an already-Punycode name by [@&#8203;hsivonen](https://github.com/hsivonen) in [servo/rust-url#915
-   Update URLs by [@&#8203;atouchet](https://github.com/atouchet) in [servo/rust-url#916
-   Fix lint by [@&#8203;valenting](https://github.com/valenting) in [servo/rust-url#920
-   Fix multiple issues on wasm32, and runs url tests in CI by [@&#8203;micolous](https://github.com/micolous) in [servo/rust-url#886
-   Non-special URLs can have their paths erased by [@&#8203;DylanOToole2](https://github.com/DylanOToole2) in [servo/rust-url#921
-   docs: document SyntaxViolation variants, remove bare URLs by [@&#8203;aatifsyed](https://github.com/aatifsyed) in [servo/rust-url#924
-   docs: Document possible replacements of the base URL by [@&#8203;mo8it](https://github.com/mo8it) in [servo/rust-url#926
-   Reimplement idna on top of ICU4X by [@&#8203;hsivonen](https://github.com/hsivonen) in [servo/rust-url#923

#### New Contributors

-   [@&#8203;philippeitis](https://github.com/philippeitis) made their first contribution in [servo/rust-url#737
-   [@&#8203;bishopcheckmate](https://github.com/bishopcheckmate) made their first contribution in [servo/rust-url#894
-   [@&#8203;oriontvv](https://github.com/oriontvv) made their first contribution in [servo/rust-url#903
-   [@&#8203;dependabot](https://github.com/dependabot) made their first contribution in [servo/rust-url#904
-   [@&#8203;SmaugPool](https://github.com/SmaugPool) made their first contribution in [servo/rust-url#797
-   [@&#8203;hsivonen](https://github.com/hsivonen) made their first contribution in [servo/rust-url#915
-   [@&#8203;micolous](https://github.com/micolous) made their first contribution in [servo/rust-url#886
-   [@&#8203;DylanOToole2](https://github.com/DylanOToole2) made their first contribution in [servo/rust-url#921
-   [@&#8203;aatifsyed](https://github.com/aatifsyed) made their first contribution in [servo/rust-url#924
-   [@&#8203;mo8it](https://github.com/mo8it) made their first contribution in [servo/rust-url#926

**Full Changelog**: servo/rust-url@v2.5.0...v2.5.1

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 10am on monday" in timezone Asia/Shanghai, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/oxc-project/oxc).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zOTMuMCIsInVwZGF0ZWRJblZlciI6IjM3LjM5My4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
bors added a commit to rust-lang/cargo that referenced this pull request Jul 2, 2024
chore(deps): update compatible

[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [annotate-snippets](https://github.com/rust-lang/annotate-snippets-rs) | workspace.dependencies | patch | `0.11.3` -> `0.11.4` |
| [clap](https://github.com/clap-rs/clap) | workspace.dependencies | patch | `4.5.6` -> `4.5.8` |
| [curl-sys](https://github.com/alexcrichton/curl-rust) | workspace.dependencies | patch | `0.4.72+curl-8.6.0` -> `0.4.73` |
| [libloading](https://github.com/nagisa/rust_libloading) | workspace.dependencies | patch | `0.8.3` -> `0.8.4` |
| [memchr](https://github.com/BurntSushi/memchr) | workspace.dependencies | patch | `2.7.2` -> `2.7.4` |
| [proptest](https://proptest-rs.github.io/proptest/proptest/index.html) ([source](https://github.com/proptest-rs/proptest)) | workspace.dependencies | minor | `1.4.0` -> `1.5.0` |
| [serde_json](https://github.com/serde-rs/json) | workspace.dependencies | patch | `1.0.117` -> `1.0.120` |
| [snapbox](https://github.com/assert-rs/trycmd/tree/main/crates/snapbox) ([source](https://github.com/assert-rs/trycmd)) | workspace.dependencies | patch | `0.6.9` -> `0.6.10` |
| [url](https://github.com/servo/rust-url) | workspace.dependencies | patch | `2.5.0` -> `2.5.2` |

---

### Release Notes

<details>
<summary>rust-lang/annotate-snippets-rs (annotate-snippets)</summary>

### [`v0.11.4`](https://github.com/rust-lang/annotate-snippets-rs/blob/HEAD/CHANGELOG.md#0114---2024-06-15)

[Compare Source](https://github.com/rust-lang/annotate-snippets-rs/compare/0.11.3...0.11.4)

##### Fixes

-   Annotations for `\r\n` are now correctly handled [#&#8203;131](https://github.com/rust-lang/annotate-snippets-rs/pull/131)

</details>

<details>
<summary>clap-rs/clap (clap)</summary>

### [`v4.5.8`](https://github.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#458---2024-06-28)

[Compare Source](https://github.com/clap-rs/clap/compare/v4.5.7...v4.5.8)

##### Fixes

-   Reduce extra flushes

### [`v4.5.7`](https://github.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#457---2024-06-10)

[Compare Source](https://github.com/clap-rs/clap/compare/v4.5.6...v4.5.7)

##### Fixes

-   Clean up error message when too few arguments for `num_args`

</details>

<details>
<summary>alexcrichton/curl-rust (curl-sys)</summary>

### [`v0.4.73`](https://github.com/alexcrichton/curl-rust/compare/curl-sys-0.4.72...curl-sys-0.4.73)

[Compare Source](https://github.com/alexcrichton/curl-rust/compare/curl-sys-0.4.72...curl-sys-0.4.73)

</details>

<details>
<summary>nagisa/rust_libloading (libloading)</summary>

### [`v0.8.4`](https://github.com/nagisa/rust_libloading/compare/0.8.3...0.8.4)

[Compare Source](https://github.com/nagisa/rust_libloading/compare/0.8.3...0.8.4)

</details>

<details>
<summary>BurntSushi/memchr (memchr)</summary>

### [`v2.7.4`](https://github.com/BurntSushi/memchr/compare/2.7.3...2.7.4)

[Compare Source](https://github.com/BurntSushi/memchr/compare/2.7.3...2.7.4)

### [`v2.7.3`](https://github.com/BurntSushi/memchr/compare/2.7.2...2.7.3)

[Compare Source](https://github.com/BurntSushi/memchr/compare/2.7.2...2.7.3)

</details>

<details>
<summary>proptest-rs/proptest (proptest)</summary>

### [`v1.5.0`](https://github.com/proptest-rs/proptest/compare/v1.4.0...v1.5.0)

[Compare Source](https://github.com/proptest-rs/proptest/compare/v1.4.0...v1.5.0)

</details>

<details>
<summary>serde-rs/json (serde_json)</summary>

### [`v1.0.120`](https://github.com/serde-rs/json/releases/tag/v1.0.120)

[Compare Source](https://github.com/serde-rs/json/compare/v1.0.119...v1.0.120)

-   Correctly specify required version of `indexmap` dependency ([#&#8203;1152](https://github.com/serde-rs/json/issues/1152), thanks [`@&#8203;cforycki](https://github.com/cforycki))`

### [`v1.0.119`](https://github.com/serde-rs/json/releases/tag/v1.0.119)

[Compare Source](https://github.com/serde-rs/json/compare/v1.0.118...v1.0.119)

-   Add `serde_json::Map::shift_insert` ([#&#8203;1149](https://github.com/serde-rs/json/issues/1149), thanks [`@&#8203;joshka](https://github.com/joshka))`

### [`v1.0.118`](https://github.com/serde-rs/json/releases/tag/v1.0.118)

[Compare Source](https://github.com/serde-rs/json/compare/v1.0.117...v1.0.118)

-   Implement Hash for serde_json::Value ([#&#8203;1127](https://github.com/serde-rs/json/issues/1127), thanks [`@&#8203;edwardycl](https://github.com/edwardycl))`

</details>

<details>
<summary>assert-rs/trycmd (snapbox)</summary>

### [`v0.6.10`](https://github.com/assert-rs/trycmd/compare/snapbox-v0.6.9...snapbox-v0.6.10)

[Compare Source](https://github.com/assert-rs/trycmd/compare/snapbox-v0.6.9...snapbox-v0.6.10)

</details>

<details>
<summary>servo/rust-url (url)</summary>

### [`v2.5.2`](https://github.com/servo/rust-url/releases/tag/v2.5.2)

[Compare Source](https://github.com/servo/rust-url/compare/v2.5.1...v2.5.2)

#### What's Changed

-   fix panic on `xn--55555577` by [`@&#8203;Byron](https://github.com/Byron)` in [servo/rust-url#940
-   Update idna to 1.0.1 by [`@&#8203;valenting](https://github.com/valenting)` in [servo/rust-url#945
-   Revert "Reimplement idna on top of ICU4X" by [`@&#8203;valenting](https://github.com/valenting)` in [servo/rust-url#946

This release reverts recent IDNA changes and the MSRV back to rust 1.56
The idna v1.0.1 crate now lives on the [idna-v1x](https://github.com/servo/rust-url/tree/idna-v1x) branch.

**Full Changelog**: servo/rust-url@v2.5.1...v2.5.2

### [`v2.5.1`](https://github.com/servo/rust-url/releases/tag/v2.5.1)

[Compare Source](https://github.com/servo/rust-url/compare/v2.5.0...v2.5.1)

#### What's Changed

-   Be more detailed in documentation of set_query by [`@&#8203;philippeitis](https://github.com/philippeitis)` in [servo/rust-url#737
-   perf(punycode): avoid double allocation in decode_to_string by [`@&#8203;bishopcheckmate](https://github.com/bishopcheckmate)` in [servo/rust-url#894
-   Use SPECIAL_PATH_SEGMENT when encoding path in from_file_path by [`@&#8203;valenting](https://github.com/valenting)` in [servo/rust-url#902
-   Add dependabot by [`@&#8203;oriontvv](https://github.com/oriontvv)` in [servo/rust-url#903
-   Bump codecov/codecov-action from 3 to 4 by [`@&#8203;dependabot](https://github.com/dependabot)` in [servo/rust-url#904
-   Bump actions/upload-artifact from 2 to 4 by [`@&#8203;dependabot](https://github.com/dependabot)` in [servo/rust-url#905
-   Bump actions/checkout from 3 to 4 by [`@&#8203;dependabot](https://github.com/dependabot)` in [servo/rust-url#906
-   Fix non-base64 data URLs with % characters not followed by hex digits by [`@&#8203;SmaugPool](https://github.com/SmaugPool)` in [servo/rust-url#797
-   Rename `master` branch to `main` by [`@&#8203;mrobinson](https://github.com/mrobinson)` in [servo/rust-url#914
-   Add bench for to_ascii on an already-Punycode name by [`@&#8203;hsivonen](https://github.com/hsivonen)` in [servo/rust-url#915
-   Update URLs by [`@&#8203;atouchet](https://github.com/atouchet)` in [servo/rust-url#916
-   Fix lint by [`@&#8203;valenting](https://github.com/valenting)` in [servo/rust-url#920
-   Fix multiple issues on wasm32, and runs url tests in CI by [`@&#8203;micolous](https://github.com/micolous)` in [servo/rust-url#886
-   Non-special URLs can have their paths erased by [`@&#8203;DylanOToole2](https://github.com/DylanOToole2)` in [servo/rust-url#921
-   docs: document SyntaxViolation variants, remove bare URLs by [`@&#8203;aatifsyed](https://github.com/aatifsyed)` in [servo/rust-url#924
-   docs: Document possible replacements of the base URL by [`@&#8203;mo8it](https://github.com/mo8it)` in [servo/rust-url#926
-   Reimplement idna on top of ICU4X by [`@&#8203;hsivonen](https://github.com/hsivonen)` in [servo/rust-url#923

#### New Contributors

-   [`@&#8203;philippeitis](https://github.com/philippeitis)` made their first contribution in [servo/rust-url#737
-   [`@&#8203;bishopcheckmate](https://github.com/bishopcheckmate)` made their first contribution in [servo/rust-url#894
-   [`@&#8203;oriontvv](https://github.com/oriontvv)` made their first contribution in [servo/rust-url#903
-   [`@&#8203;dependabot](https://github.com/dependabot)` made their first contribution in [servo/rust-url#904
-   [`@&#8203;SmaugPool](https://github.com/SmaugPool)` made their first contribution in [servo/rust-url#797
-   [`@&#8203;hsivonen](https://github.com/hsivonen)` made their first contribution in [servo/rust-url#915
-   [`@&#8203;micolous](https://github.com/micolous)` made their first contribution in [servo/rust-url#886
-   [`@&#8203;DylanOToole2](https://github.com/DylanOToole2)` made their first contribution in [servo/rust-url#921
-   [`@&#8203;aatifsyed](https://github.com/aatifsyed)` made their first contribution in [servo/rust-url#924
-   [`@&#8203;mo8it](https://github.com/mo8it)` made their first contribution in [servo/rust-url#926

**Full Changelog**: servo/rust-url@v2.5.0...v2.5.1

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 5am on the first day of the month" (UTC), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/rust-lang/cargo).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MjEuMCIsInVwZGF0ZWRJblZlciI6IjM3LjQyMS4wIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbXX0=-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants