[GH-ISSUE #349] Failed to compile on 1a038865 #184

Closed
opened 2026-03-02 23:45:17 +03:00 by kerem · 7 comments
Owner

Originally created by @sewnie on GitHub (Jan 26, 2024).
Original GitHub issue: https://github.com/aome510/spotify-player/issues/349

$ cargo install --git 'https://github.com/aome510/spotify-player' --no-default-features --features pulseaudio-backend,lyric-finder,clipboard,media-control,notify
...
   Compiling config_parser2 v0.1.5
error[E0446]: private type `ServiceState` in public interface
  --> /home/meow/.local/share/cargo/registry/src/index.crates.io-6f17d22bba15001f/souvlaki-0.7.0/src/platform/mpris/dbus/interfaces.rs:19:1
   |
19 | / pub fn register_methods<F>(
20 | |     state: &Arc<Mutex<ServiceState>>,
21 | |     event_handler: &Arc<Mutex<F>>,
22 | |     friendly_name: String,
...  |
25 | | where
26 | |     F: Fn(MediaControlEvent) + Send + 'static,
   | |______________________________________________^ can't leak private type
   |
  ::: /home/meow/.local/share/cargo/registry/src/index.crates.io-6f17d22bba15001f/souvlaki-0.7.0/src/platform/mpris/dbus/mod.rs:54:1
   |
54 |   struct ServiceState {
   |   ------------------- `ServiceState` declared as private

For more information about this error, try `rustc --explain E0446`.
error: could not compile `souvlaki` (lib) due to previous error
warning: build failed, waiting for other jobs to finish...
error: failed to compile `spotify_player v0.16.3 (https://github.com/aome510/spotify-player#1a038865)`, intermediate artifacts can be found at `/tmp/cargo-installpP5ipQ`.
To reuse those artifacts with a future compilation, set the environment variable `CARGO_TARGET_DIR` to that path.
Originally created by @sewnie on GitHub (Jan 26, 2024). Original GitHub issue: https://github.com/aome510/spotify-player/issues/349 ``` $ cargo install --git 'https://github.com/aome510/spotify-player' --no-default-features --features pulseaudio-backend,lyric-finder,clipboard,media-control,notify ... Compiling config_parser2 v0.1.5 error[E0446]: private type `ServiceState` in public interface --> /home/meow/.local/share/cargo/registry/src/index.crates.io-6f17d22bba15001f/souvlaki-0.7.0/src/platform/mpris/dbus/interfaces.rs:19:1 | 19 | / pub fn register_methods<F>( 20 | | state: &Arc<Mutex<ServiceState>>, 21 | | event_handler: &Arc<Mutex<F>>, 22 | | friendly_name: String, ... | 25 | | where 26 | | F: Fn(MediaControlEvent) + Send + 'static, | |______________________________________________^ can't leak private type | ::: /home/meow/.local/share/cargo/registry/src/index.crates.io-6f17d22bba15001f/souvlaki-0.7.0/src/platform/mpris/dbus/mod.rs:54:1 | 54 | struct ServiceState { | ------------------- `ServiceState` declared as private For more information about this error, try `rustc --explain E0446`. error: could not compile `souvlaki` (lib) due to previous error warning: build failed, waiting for other jobs to finish... error: failed to compile `spotify_player v0.16.3 (https://github.com/aome510/spotify-player#1a038865)`, intermediate artifacts can be found at `/tmp/cargo-installpP5ipQ`. To reuse those artifacts with a future compilation, set the environment variable `CARGO_TARGET_DIR` to that path. ```
kerem 2026-03-02 23:45:17 +03:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@aome510 commented on GitHub (Jan 26, 2024):

@LucasFA can you take a look into this issue? Otherwise, I can take a look this weekend.

<!-- gh-comment-id:1912423780 --> @aome510 commented on GitHub (Jan 26, 2024): @LucasFA can you take a look into this issue? Otherwise, I can take a look this weekend.
Author
Owner

@LucasFA commented on GitHub (Jan 26, 2024):

Mmh. It could be Sinono3/souvlaki#46. What Rust version and OS are you on? I'll do a check on CI Windows and MacOS.

The error message is the exact same, so I am pretty confident that's it

<!-- gh-comment-id:1912460844 --> @LucasFA commented on GitHub (Jan 26, 2024): Mmh. It could be Sinono3/souvlaki#46. What Rust version and OS are you on? I'll do a check on CI ~~Windows and MacOS.~~ The error message is the exact same, so I am pretty confident that's it
Author
Owner

@LucasFA commented on GitHub (Jan 26, 2024):

Yep, it seems that's the case. It breaks on 1.73 and older. Want to establish a MSRV policy for spotify-player?

Relatedly, I'm going to raise an issue and start trying to implement a more comprehensive CI suite, to avoid issues like this.

<!-- gh-comment-id:1912548247 --> @LucasFA commented on GitHub (Jan 26, 2024): Yep, it seems that's the case. It breaks on 1.73 and older. Want to establish a MSRV policy for spotify-player? Relatedly, I'm going to raise an issue and start trying to implement a more comprehensive CI suite, to avoid issues like this.
Author
Owner

@aome510 commented on GitHub (Jan 26, 2024):

Yep, it seems that's the case. It breaks on 1.73 and older. Want to establish a MSRV policy for spotify-player?

Relatedly, I'm going to raise an issue and start trying to implement a more comprehensive CI suite, to avoid issues like this.

MSRV sounds good. Also thanks for taking on this, really appreciate ur contribution to the project ❤️ .

@apprehensions can you upgrade ur rust and try again?

<!-- gh-comment-id:1912551802 --> @aome510 commented on GitHub (Jan 26, 2024): > Yep, it seems that's the case. It breaks on 1.73 and older. Want to establish a MSRV policy for spotify-player? > > Relatedly, I'm going to raise an issue and start trying to implement a more comprehensive CI suite, to avoid issues like this. MSRV sounds good. Also thanks for taking on this, really appreciate ur contribution to the project ❤️ . @apprehensions can you upgrade ur `rust` and try again?
Author
Owner

@sewnie commented on GitHub (Jan 27, 2024):

I am on Alpine, and the maintainer of rust still has not updated to 1.75.0.

Edit: i am on rust cargo 1.72.1, so i cannot use the latest master of spotify_player - a tagged release works fine.

<!-- gh-comment-id:1913023062 --> @sewnie commented on GitHub (Jan 27, 2024): I am on Alpine, and the maintainer of rust still has not updated to 1.75.0. Edit: i am on rust `cargo 1.72.1`, so i cannot use the latest master of spotify_player - a tagged release works fine.
Author
Owner

@LucasFA commented on GitHub (Jan 28, 2024):

I just got a notification: the souvlaki maintainer apparently has managed to reduce the MSRV! I think cargo install doesn't use the Cargo.lock, so it should theoretically compile now

https://github.com/Sinono3/souvlaki/issues/46#issuecomment-1913677248

<!-- gh-comment-id:1913684284 --> @LucasFA commented on GitHub (Jan 28, 2024): I just got a notification: the souvlaki maintainer apparently has managed to reduce the MSRV! I think cargo install doesn't use the Cargo.lock, so it should theoretically compile now https://github.com/Sinono3/souvlaki/issues/46#issuecomment-1913677248
Author
Owner

@LucasFA commented on GitHub (Feb 15, 2024):

Just as a heads up, turns out Souvlaki is by far not the only dependency requiring rather new Rust versions. Current MSRV is 1.74

<!-- gh-comment-id:1947455802 --> @LucasFA commented on GitHub (Feb 15, 2024): Just as a heads up, turns out Souvlaki is by far not the only dependency requiring rather new Rust versions. Current MSRV is 1.74
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/spotify-player#184
No description provided.