mirror of
https://github.com/librespot-org/librespot.git
synced 2026-04-27 08:15:50 +03:00
[PR #574] [CLOSED] Migrate to futures 0.3 / tokio 1.0 #977
Labels
No labels
A-Alsa
SpotifyAPI
Tokio 1.0
audio
bug
can't reproduce
compilation
dependencies
duplicate
enhancement
good first issue
help wanted
high priority
imported
imported
invalid
new api
pull-request
question
reverse engineering
wiki
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/librespot#977
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/librespot-org/librespot/pull/574
Author: @Johannesd3
Created: 1/21/2021
Status: ❌ Closed
Base:
tokio_migration← Head:futures_migration📝 Commits (9)
40e6355Migrate core to tokio 1.06867ad0Added test424ba3aMigrated metadata crate to futures 0.380d384eMigrated audio crate to futures 0.390905b8Improved RangeSet implementation0895f17Migrated playback crate to futures 0.36c9d8c8Replace pin_project and updated dependenciesfe37186Make librespot_playback work91d7d04Preparing main crate for testing📊 Changes
32 files changed (+2465 additions, -3706 deletions)
View changed files
📝
Cargo.lock(+1366 -1788)📝
Cargo.toml(+13 -27)📝
audio/Cargo.toml(+6 -5)📝
audio/src/decrypt.rs(+2 -2)📝
audio/src/fetch.rs(+407 -366)📝
audio/src/lib.rs(+6 -3)📝
audio/src/range_set.rs(+8 -12)📝
core/Cargo.toml(+15 -14)📝
core/src/apresolve.rs(+47 -79)📝
core/src/audio_key.rs(+3 -19)📝
core/src/authentication.rs(+4 -6)📝
core/src/channel.rs(+53 -38)📝
core/src/component.rs(+0 -26)📝
core/src/connection/codec.rs(+3 -4)📝
core/src/connection/handshake.rs(+50 -123)📝
core/src/connection/mod.rs(+50 -72)📝
core/src/diffie_hellman.rs(+6 -6)📝
core/src/keymaster.rs(+6 -14)📝
core/src/lib.rs(+10 -14)📝
core/src/mercury/mod.rs(+55 -51)...and 12 more files
📄 Description
Here's an attempt to migrate librespot to futures 0.3 and tokio 1.0. I'm sorry if this is competing with #487, but I had already started, when I saw this PR (that has been inactive for a while). It's totally ok if you decide in favour of the other PR, but nonetheless I want to offer my help.
The crates core, metadata, audio and playback will compile, but of course that doesn't mean that they'll work correctly. (I was not sure how to test it before finishing everything). However, I had to remove the proxy support in apresolve.rs, since I wasn't able to get hyper-proxy to work with hyper 0.14.
The remaining crate librespot_connect seems to be the hardest, I wasn't able to make any progress here. I still hope my PR is of some help.
Edit: This tokio_migration branch is far behind dev, so the comparison to dev is perhaps better.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.