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

CI "check-bans" check fails due to duplicate dependencies on raw-window-handle #11917

Closed
ekropotin opened this issue Feb 17, 2024 · 4 comments · Fixed by #12309
Closed

CI "check-bans" check fails due to duplicate dependencies on raw-window-handle #11917

ekropotin opened this issue Feb 17, 2024 · 4 comments · Fixed by #12309
Labels
A-Build-System Related to build systems or continuous integration C-Dependencies A change to the crates that Bevy depends on

Comments

@ekropotin
Copy link
Contributor

Bevy version

Commit e6e25de

What went wrong

CI's check-bans check fails with the following error:

error[duplicate]: found 2 duplicate entries for crate 'raw-window-handle'
    ┌─ /home/runner/work/bevy/bevy/Cargo.lock:341:1
    │  
341 │ ╭ raw-window-handle 0.5.2 registry+https://github.com/rust-lang/crates.io-index
342 │ │ raw-window-handle 0.6.0 registry+https://github.com/rust-lang/crates.io-index
    │ ╰─────────────────────────────────────────────────────────────────────────────^ lock entries
    │  
    = raw-window-handle v0.5.2
      └── ndk v0.7.0
          ├── cpal v0.15.2
          │   └── rodio v0.17.3
          │       └── bevy_audio v0.12.0
          │           └── bevy_internal v0.12.0
          │               ├── bevy v0.12.0
          │               └── bevy_dylib v0.12.0
          │                   └── bevy v0.12.0 (*)
          └── oboe v0.5.0
              ├── bevy_audio v0.12.0 (*)
              └── cpal v0.15.2 (*)
    = raw-window-handle v0.6.0
      ├── accesskit_winit v0.17.0
      │   └── bevy_winit v0.12.0
      │       ├── bevy_asset v0.12.0
      │       │   ├── bevy_animation v0.12.0
      │       │   │   ├── bevy_gltf v0.12.0

Possible solutions

1

Add version 0.5.2 of raw-window-handle into skip list in deny.toml:

skip = [
  {name = "raw-window-handle", version = "0.5.2" }
]

2

Remove raw-window-handle crate from deny list in deny.toml

@ekropotin ekropotin added C-Bug An unexpected or incorrect behavior S-Needs-Triage This issue needs to be labelled labels Feb 17, 2024
@alice-i-cecile alice-i-cecile added A-Build-System Related to build systems or continuous integration C-Dependencies A change to the crates that Bevy depends on and removed C-Bug An unexpected or incorrect behavior S-Needs-Triage This issue needs to be labelled labels Feb 17, 2024
@ekropotin
Copy link
Contributor Author

ekropotin commented Feb 17, 2024

I'm also pretty confused by the fact that cpal v0.15.2 and oboe v0.5.0 are bringing NDK version 0.7, as per repos https://github.com/RustAudio/cpal/blob/master/Cargo.toml#L76 https://github.com/katyo/oboe-rs/blob/master/Cargo.toml#L26, these crates depend on NDK version 0.8
I'm new to Rust, so I'd appreciate if anyone could explain it to me.

@alice-i-cecile
Copy link
Member

This was introduced in the winit 0.29 update. Related: #11052

@ekropotin ekropotin changed the title CI "check-bans" check fails with duplicate dependencies on raw-window-handle CI "check-bans" check fails due to duplicate dependencies on raw-window-handle Feb 17, 2024
@ameknite
Copy link
Contributor

ameknite commented Feb 20, 2024

@ekropotin the problem is that even when they updated ndk to 0.8 in the Cargo.toml, they haven't released a new version to crates.io, so it can't be used.

I hope they publish a new versions to Crates.io.
RustAudio/cpal#841
katyo/oboe-rs#59

@mockersf
Copy link
Member

@ekropotin the problem is that even when they updated ndk to 0.8 in the Cargo.toml, they haven't released a new version to crates.io, so it can't be used.

I hope they publish a new versions to Crates.io. RustAudio/cpal#841 katyo/oboe-rs#59

It needs to happen in steps:

  1. oboe gets published
  2. cpal use the new oboe version
  3. coal gets published

github-merge-queue bot pushed a commit that referenced this issue Mar 1, 2024
# Objective

Cargo-deny has being updated and now some keys are being deprecated.
Fix these warnings:
<details>

```rs
warning[deprecated]: this key will be removed in a future update, see EmbarkStudios/cargo-deny#611 for details
  ┌─ /Users/ameknite/code/rust/repos/bevy/deny.toml:6:1
  │
6 │ vulnerability = "deny"
  │ ^^^^^^^^^^^^^

warning[deprecated]: this key will be removed in a future update, see EmbarkStudios/cargo-deny#611 for details
  ┌─ /Users/ameknite/code/rust/repos/bevy/deny.toml:7:1
  │
7 │ unmaintained = "deny"
  │ ^^^^^^^^^^^^

warning[deprecated]: this key will be removed in a future update, see EmbarkStudios/cargo-deny#611 for details
  ┌─ /Users/ameknite/code/rust/repos/bevy/deny.toml:9:1
  │
9 │ notice = "deny"
  │ ^^^^^^

warning[deprecated]: this key will be removed in a future update, see EmbarkStudios/cargo-deny#611 for details
   ┌─ /Users/ameknite/code/rust/repos/bevy/deny.toml:13:1
   │
13 │ unlicensed = "deny"
   │ ^^^^^^^^^^

warning[deprecated]: this key will be removed in a future update, see EmbarkStudios/cargo-deny#611 for details
   ┌─ /Users/ameknite/code/rust/repos/bevy/deny.toml:14:1
   │
14 │ copyleft = "deny"
   │ ^^^^^^^^

warning[deprecated]: this key will be removed in a future update, see EmbarkStudios/cargo-deny#611 for details
   ┌─ /Users/ameknite/code/rust/repos/bevy/deny.toml:15:1
   │
15 │ default = "deny"
   │ ^^^^^^^

warning[deprecated]: this key has been moved to [graph]
  ┌─ /Users/ameknite/code/rust/repos/bevy/deny.toml:1:1
  │
1 │ all-features = true
  │ ^^^^^^^^^^^^
```
</details>

This also fix ci by temporarily skipping the check for cpal
dependencies.
#11917 (comment)



## Solution

- Remove keys deprecated.
- Update the list of licenses allowed. (All these licenses are already
being use for some dependencies)
- Skip cpal dependencies to avoid falining in CI, while we wait for new
releases
#11917 (comment)
github-merge-queue bot pushed a commit that referenced this issue Mar 5, 2024
# Objective

cpal has been updated to [0.15.3](https://crates.io/crates/cpal/0.15.3).
we can remove the skip to avoid check for cpal 0.15.2 dependencies in
deny.toml

cpal now uses ndk 8.0 and Oboe 6.0, so we only have a version for
raw-window-handle, version 0.6

## Solution

- Remove temporal fix that skipped the check for the cpal dependency.
- Update oboe to 0.6

Fixes #11917
spectria-limina pushed a commit to spectria-limina/bevy that referenced this issue Mar 9, 2024
# Objective

Cargo-deny has being updated and now some keys are being deprecated.
Fix these warnings:
<details>

```rs
warning[deprecated]: this key will be removed in a future update, see EmbarkStudios/cargo-deny#611 for details
  ┌─ /Users/ameknite/code/rust/repos/bevy/deny.toml:6:1
  │
6 │ vulnerability = "deny"
  │ ^^^^^^^^^^^^^

warning[deprecated]: this key will be removed in a future update, see EmbarkStudios/cargo-deny#611 for details
  ┌─ /Users/ameknite/code/rust/repos/bevy/deny.toml:7:1
  │
7 │ unmaintained = "deny"
  │ ^^^^^^^^^^^^

warning[deprecated]: this key will be removed in a future update, see EmbarkStudios/cargo-deny#611 for details
  ┌─ /Users/ameknite/code/rust/repos/bevy/deny.toml:9:1
  │
9 │ notice = "deny"
  │ ^^^^^^

warning[deprecated]: this key will be removed in a future update, see EmbarkStudios/cargo-deny#611 for details
   ┌─ /Users/ameknite/code/rust/repos/bevy/deny.toml:13:1
   │
13 │ unlicensed = "deny"
   │ ^^^^^^^^^^

warning[deprecated]: this key will be removed in a future update, see EmbarkStudios/cargo-deny#611 for details
   ┌─ /Users/ameknite/code/rust/repos/bevy/deny.toml:14:1
   │
14 │ copyleft = "deny"
   │ ^^^^^^^^

warning[deprecated]: this key will be removed in a future update, see EmbarkStudios/cargo-deny#611 for details
   ┌─ /Users/ameknite/code/rust/repos/bevy/deny.toml:15:1
   │
15 │ default = "deny"
   │ ^^^^^^^

warning[deprecated]: this key has been moved to [graph]
  ┌─ /Users/ameknite/code/rust/repos/bevy/deny.toml:1:1
  │
1 │ all-features = true
  │ ^^^^^^^^^^^^
```
</details>

This also fix ci by temporarily skipping the check for cpal
dependencies.
bevyengine#11917 (comment)



## Solution

- Remove keys deprecated.
- Update the list of licenses allowed. (All these licenses are already
being use for some dependencies)
- Skip cpal dependencies to avoid falining in CI, while we wait for new
releases
bevyengine#11917 (comment)
spectria-limina pushed a commit to spectria-limina/bevy that referenced this issue Mar 9, 2024
# Objective

cpal has been updated to [0.15.3](https://crates.io/crates/cpal/0.15.3).
we can remove the skip to avoid check for cpal 0.15.2 dependencies in
deny.toml

cpal now uses ndk 8.0 and Oboe 6.0, so we only have a version for
raw-window-handle, version 0.6

## Solution

- Remove temporal fix that skipped the check for the cpal dependency.
- Update oboe to 0.6

Fixes bevyengine#11917
mtsr pushed a commit to mtsr/bevy that referenced this issue Mar 15, 2024
# Objective

cpal has been updated to [0.15.3](https://crates.io/crates/cpal/0.15.3).
we can remove the skip to avoid check for cpal 0.15.2 dependencies in
deny.toml

cpal now uses ndk 8.0 and Oboe 6.0, so we only have a version for
raw-window-handle, version 0.6

## Solution

- Remove temporal fix that skipped the check for the cpal dependency.
- Update oboe to 0.6

Fixes bevyengine#11917
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Build-System Related to build systems or continuous integration C-Dependencies A change to the crates that Bevy depends on
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants