Commit graph

1838 commits

Author SHA1 Message Date
eladyn
9836db2c2c
update jack to match alsa requirement 2023-03-22 13:35:15 +01:00
Roderick van Domburg
1186a95497
Merge pull request #1135 from shatteringlass/patch-1
Update rodio to 0.17.1 and cpal to 0.15.1 #1191
2023-03-22 12:53:47 +01:00
Federico
a50d0d4510
Update rodio to 0.17.1 and cpal to 0.15.1 #1191
Inherit upstream fix https://github.com/RustAudio/cpal/pull/648
2023-03-17 14:57:40 +01:00
Roderick van Domburg
a211ff94c6
Merge pull request #1117 from librespot-org/dependabot/cargo/tokio-1.24.2
Bump tokio from 1.23.1 to 1.24.2
2023-02-06 20:44:16 +01:00
dependabot[bot]
e6830bd09f
Bump tokio from 1.23.1 to 1.24.2
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.23.1 to 1.24.2.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/commits)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-04 00:55:05 +00:00
Roderick van Domburg
e68bbbf731
Merge pull request #1115 from GeorgeHahn/fix-uri-encoding
Fix `NamedSpotifyId::to_uri`
2023-01-28 11:41:31 +01:00
George Hahn
e8f93c44fd Fix NamedSpotifyId::to_uri 2023-01-28 02:56:09 -07:00
Roderick van Domburg
4610bd6f99
Merge pull request #1113 from ptesarik/clippy
Fix newly reported clippy errors
2023-01-28 09:37:20 +01:00
Petr Tesarik
c600297f52 Fix newly reported clippy errors
- Use variables directly in format strings.
  As reported by clippy, variables can be used directly in the
  `format!` string.
- Use rewind() instead of seeking to 0.
- Remove superfluous & and ref.

Signed-off-by: Petr Tesarik <petr@tesarici.cz>
2023-01-27 23:15:51 +01:00
Roderick van Domburg
e9dbdfed25
Merge pull request #1108 from Ovenoboyo/dev
Add back pow_response and crypto_response
2023-01-21 18:08:10 +01:00
Ovenoboyo
7a4807eb8a
Add back pow_response and crypto_response
Probably was accidentally removed in
3662302196

Signed-off-by: Ovenoboyo <ovenoboyo@gmail.com>
2023-01-21 21:56:50 +05:30
Roderick van Domburg
4a4596feb2
Merge pull request #1105 from librespot-org/dependabot/cargo/libgit2-sys-0.13.51.4.5
Bump libgit2-sys from 0.13.4+1.4.2 to 0.13.5+1.4.5
2023-01-21 08:49:14 +01:00
Roderick van Domburg
a7b1da8072
Merge pull request #1104 from librespot-org/dependabot/cargo/bumpalo-3.12.0
Bump bumpalo from 3.11.0 to 3.12.0
2023-01-21 08:44:59 +01:00
dependabot[bot]
c1f232f15d
Bump libgit2-sys from 0.13.4+1.4.2 to 0.13.5+1.4.5
Bumps [libgit2-sys](https://github.com/rust-lang/git2-rs) from 0.13.4+1.4.2 to 0.13.5+1.4.5.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/libgit2-sys-0.13.4...libgit2-sys-0.13.5)

---
updated-dependencies:
- dependency-name: libgit2-sys
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-20 23:45:21 +00:00
dependabot[bot]
6c1030e820
Bump bumpalo from 3.11.0 to 3.12.0
Bumps [bumpalo](https://github.com/fitzgen/bumpalo) from 3.11.0 to 3.12.0.
- [Release notes](https://github.com/fitzgen/bumpalo/releases)
- [Changelog](https://github.com/fitzgen/bumpalo/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fitzgen/bumpalo/compare/3.11.0...3.12.0)

---
updated-dependencies:
- dependency-name: bumpalo
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-20 22:22:11 +00:00
Lukáš Tyrychtr
3662302196
Update protobuf and related crates to 3.x (#1092) 2023-01-17 21:46:14 +01:00
Roderick van Domburg
8941495b80
Merge pull request #1091 from librespot-org/dependabot/cargo/tokio-1.23.1
Bump tokio from 1.21.2 to 1.23.1
2023-01-07 14:00:28 +01:00
dependabot[bot]
64603f651e
Bump tokio from 1.21.2 to 1.23.1
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.21.2 to 1.23.1.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.21.2...tokio-1.23.1)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-06 21:47:45 +00:00
Lukáš Tyrychtr
14ace17967
Update sysinfo, fixing a future incompatibility warning (#1090) 2023-01-04 20:39:30 +01:00
Roderick van Domburg
7a01a3e442
Merge pull request #1089 from GeorgeHahn/microsecond-timestamps
Handle microsecond timestamps
2023-01-04 20:37:56 +01:00
Roderick van Domburg
61ae66b998
Merge pull request #1088 from GeorgeHahn/support-named-playlist-ids
Parse playlist URIs with named IDs
2023-01-04 20:36:16 +01:00
Roderick van Domburg
c14c22a5ef
Merge pull request #1084 from gdesmott/lyrics
[dev] core: spclient: parse lyrics
2023-01-04 20:25:26 +01:00
George Hahn
ce4be71719 fix timestamp heuristic (year 2200+) 2023-01-03 22:39:07 -07:00
George Hahn
c2c31247b5 changelog 2023-01-03 22:28:36 -07:00
George Hahn
512c799266 Handle microsecond timestamps 2023-01-03 22:26:58 -07:00
Guillaume Desmottes
7f2cb684c9 fix clippy warnings 2023-01-03 00:36:35 +01:00
George Hahn
7a259ccc4b Parse named ID URIs 2023-01-02 16:27:40 -07:00
Guillaume Desmottes
f72048e5e1 metadata: add lyrics
Save users from doing all the parsing themselves.
2023-01-02 19:00:10 +01:00
Oliver Cooper
edf646d4bb
Add activate and load functions to Spirc (#1075) 2022-12-03 12:25:27 +01:00
Roderick van Domburg
98c985ffab
Merge pull request #1079 from ealasu/feature/local-spotify-id
Fix bug where playlists containing a local track would fail to load
2022-12-03 08:47:13 +01:00
ealasu
7d00881dcd Fix build error due to GitHub Actions updating to Ubuntu 22.04
https://github.com/actions/runner-images/issues/6399#issuecomment-1286050292
2022-12-02 17:38:39 -07:00
ealasu
5cfdb8c9dd Parse local file IDs 2022-12-02 17:24:02 -07:00
setime
bf7cbbaadd
Add an option to specify IPs that zeroconf will bind to (#1071)
* added an option to specify ip addresses to which mDNS should bind (ignored by `DNS-SD`)
* changed command line option to `zeroconf-interface` to be consistent with `zeroconf-port`
use builder pattern to DRY up the code
used macro to print warning message
* fixing register error
* renamed `bind_ip` variables to match the option to `zeroconf_ip`, to be more consistent
* Changed user help
Modified comments
Added block for condition to clean the code
Added new modification to the change log

Co-authored-by: setime <timeframe1@gmx.de>
2022-11-25 09:57:14 +01:00
Roderick van Domburg
b0db6502b5
Merge pull request #1076 from kingosticks/fix-latest-clippy
Fix latest clippy warnings
2022-11-24 12:43:15 +01:00
Nick Steel
68bbb4fbbc Fix latest clippy and fmt warnings 2022-11-22 13:38:02 +00:00
Roderick van Domburg
2c20669a5c
Merge pull request #1070 from wholivesinapineappleunderthesea/dev
Fix play track item_type in the examples folder
2022-11-04 07:58:11 +01:00
killahtree
b15490714d
Update play.rs 2022-11-03 20:21:39 -04:00
killahtree
39b37d344f
Update play.rs 2022-11-03 20:10:49 -04:00
Roderick van Domburg
b1e1e61a94
Merge pull request #1066 from gdesmott/send-workaround
core: workaround for Session::connect() future being !Send
2022-10-26 22:20:33 +02:00
Guillaume Desmottes
1a48bc87c8 core: workaround for Session::connect() future being !Send
rsa::padding::PaddingScheme is !Send, making it impossible to call
Session::connect() with an executor requiring Send futures, such as
Rocket.

Fix #1065
2022-10-20 17:22:00 +02:00
Roderick van Domburg
29ec49b74c
Merge pull request #1062 from JasonLG1979/fix-fmt-lint
Fix fmt lint
2022-10-02 11:06:05 +02:00
JasonLG1979
ce9eb42469 Fix fmt lint from 05dcb652a0 2022-10-01 19:51:55 -05:00
Roderick van Domburg
05dcb652a0
Fix example 2022-10-02 00:08:36 +02:00
Roderick van Domburg
bae304fdb0
Update zeroconf fields and publish active user 2022-10-02 00:00:30 +02:00
Roderick van Domburg
f10b8f69f8
Improvements towards supporting pagination
Not there yet, as Apollo stations always return autoplay
recommendations even if you set autoplay to false. Along the way
as an effort to bring the protocol up to spec:

- And support for and use different Apollo station scopes depending
  on whether we are using autoplay or not. For autoplay, get a
  "stations" scope and follow the "tracks" pages from there. Otherwise
  use "tracks" immediately for the active scope (playlist, album).

- For the above point we only need the fields from `PageContext`
  so use that instead of a `StationContext`.

- Add some documentation from API reverse engineering: things seen
  in the wild, some of them to do, others documented for posterity's
  sake.

- Update the Spirc device state based on what the latest desktop
  client puts out. Unfortunately none of it seems to change the
  behavior necessary to support external episodes, shows, but
  at least we're doing the right thing.

- Add a salt to HTTPS queries to defeat any caching.

- Add country metrics to HTTPS queries.

- Fix `get_radio_for_track` to use the right Spotify ID format.

- Fix a bug from the previous commit, where the playback position
  might not advance when hitting next and the autoplay context
  is loaded initially.
2022-10-01 23:01:17 +02:00
Roderick van Domburg
bfb7d5689c
Retrieve autoplay contexts over HTTPS and fix repeat/prev/next
Repeat, previous and next used to start playback regardless of
the actual playback state. They now start playback only if we
were already playing.
2022-09-30 21:36:20 +02:00
Roderick van Domburg
6dc7a11b09
Re-introduce autoplay command-line option as an override 2022-09-28 22:59:03 +02:00
Roderick van Domburg
d07f58e6df
Update crates 2022-09-28 22:17:55 +02:00
Roderick van Domburg
cc1fb5a406
Update changelog 2022-09-28 22:17:43 +02:00
Roderick van Domburg
eb1472c713
Various loading improvements
- Improve responsiveness by downloading the smallest possible chunk
  size when seeking or first loading.

- Improve download time and decrease CPU usage by downloading the
  largest possible chunk size as throughput allows, still allowing
  for reasonable seek responsiveness (~1 second).

- As a result, take refactoring opportunities: simplify prefetching
  logic, download threading, command sending, and some ergonomics.

- Fix disappearing controls in the Spotify mobile UI while loading.

- Fix handling of seek, pause, and play commands while loading.

- Fix download rate calculation (don't use the Mercury rate).

- Fix ping time calculation under lock contention.
2022-09-28 21:25:56 +02:00