Commit Graph

69 Commits

Author SHA1 Message Date
Henrik Friedrichsen
1b0ac4d5cc migrate to futures 0.3 2020-03-28 23:31:27 +01:00
dann-merlin
9e68ed0ba6 Actually set volume when reading in from config 2020-03-18 20:45:14 +01:00
Henrik Friedrichsen
dccb36d8e7 update to rust edition 2018 + bump version 2020-03-15 11:06:24 +01:00
dann-merlin
45858df8a3 Volume configurable range 0-100 2020-03-03 18:05:03 +01:00
dann-merlin
56a178dcfd Added configuration option for initial shuffle, repeat, volume 2020-03-03 18:05:03 +01:00
Panagiotis Vasilopoulos
404ba65faf removed unnecessary parentheses 2020-02-29 17:15:10 +01:00
Henrik Friedrichsen
d2915316da various non-functional code cleanups 2020-02-21 23:33:08 +01:00
Henrik Friedrichsen
cea2cbb33e remove unused cfg parameters 2020-02-05 22:08:11 +01:00
Henrik Friedrichsen
90d19b1b2d drop broken proxy setting and rely on ENV['http_proxy'] instead
fixes #118
fixes #119
2020-02-05 21:50:46 +01:00
Henrik Friedrichsen
c6f70706fe ramp volume in logarithmic scale
see also:
6c6ba88590/connect/src/spirc.rs (L188)
https://www.dr-lex.be/info-stuff/volumecontrols.html#ideal2
2020-01-16 21:38:52 +01:00
Henrik Friedrichsen
a5da4897de implement software volume mixing
closes #115
2020-01-11 18:11:41 +01:00
Henrik Friedrichsen
e697b97d8c major dependency cleanup
- depend on specific librespot crates to remove clutter
- update versions

this should also help building on openbsd, as the unused librespot-connect
depended on the nix crate, which does not build on openbsd.
2019-11-24 16:38:15 +01:00
Henrik Friedrichsen
177c4893e0 add proxy configuration value
+ document possible configuration options

fixes #109
2019-11-21 22:45:09 +01:00
Henrik Friedrichsen
ed1dc2e22e implement saving selected tracks directly to playlists
closes #103
2019-11-02 23:19:12 +01:00
Henrik Friedrichsen
dc427e3ba2 formatting + clippy cleanups 2019-10-31 12:30:25 +01:00
Henrik Friedrichsen
4defded546 fix slicing of playlists when saving large lists
playlist updates need to be submitted in batches of max 100 previously, it would
submit the entire rest after submitting the first 100 via
user_playlist_replace_tracks, which was rejected by the server.

fixes #99
2019-10-12 19:28:18 +02:00
Henrik Friedrichsen
d01dad9a57 use spotify user id from librespot session for web api requests
fixes broken web api requests for users who logged in with their email address

fixes #98
2019-10-12 16:15:53 +02:00
Henrik Friedrichsen
82a199b5d2 update rspotify to 0.7.0 2019-10-12 16:15:07 +02:00
Henrik Friedrichsen
7aa70fcb6b fix deprecation warnings caused by old trait object syntax 2019-09-01 01:32:50 +02:00
Henrik Friedrichsen
cd80ace4a8 remove debug log spamming + log player events 2019-09-01 01:10:19 +02:00
KoffeinFlummi
eed3edfa59 Differentiate between followed and created playlists
Fix #56
2019-04-28 11:04:51 +02:00
Henrik Friedrichsen
eb2e8322e5 Merge remote-tracking branch 'origin/feature/new_rspotify' into develop 2019-04-24 21:01:15 +02:00
Henrik Friedrichsen
18c2f6466a fix most of the clippy linter warnings 2019-04-23 22:28:05 +02:00
KoffeinFlummi
eed218d0c3 Implement browsing for albums, artists, playlists 2019-04-23 01:40:00 +02:00
KoffeinFlummi
1a17860957 cargo fmt 2019-04-20 00:11:43 +02:00
KoffeinFlummi
f320b953d6 Implement following playlists 2019-04-19 23:50:36 +02:00
KoffeinFlummi
1e58ca9345 Implement (un)saving tracks, albums; (un)following artists 2019-04-18 15:43:51 +02:00
Henrik Friedrichsen
0de6ad2dfe adapt to new rspotify structures
these changes are necessary to handle playlists with local tracks properly
2019-04-17 18:25:00 +02:00
KoffeinFlummi
210c7d9f4e Implement saved tracks, albums, and artists 2019-04-16 19:52:22 +02:00
Henrik Friedrichsen
0bbba3c57d remove clippy from CI for now, as it's too strict 2019-04-15 22:07:54 +02:00
Henrik Friedrichsen
8738472e87 test login credentials before entering main program
closes #58

this is a bit messy, as librespot panics, when authentication fails. thus, we
test the credentials in a separate thread to handle the panic.

see also: https://github.com/librespot-org/librespot/issues/108
2019-04-15 21:59:19 +02:00
Henrik Friedrichsen
a6f96d86ba refactor search (lots of duplicate code) 2019-04-10 14:04:09 +02:00
Oscar Linderholm
0f0b2f3e2a Add methods for fetching Spotify URI items 2019-04-10 14:04:09 +02:00
Oscar Linderholm
de1062471f Add Spotify URI resource helpers 2019-04-10 14:04:09 +02:00
Henrik Friedrichsen
1c26c7bcee cargo fmt/clippy all the things + make them mandatory in CI 2019-04-03 14:13:40 +02:00
KoffeinFlummi
6971c8d431 Refresh token in main thread before search 2019-04-02 08:31:17 +02:00
KoffeinFlummi
d223aae9c7 Add album and artist searching 2019-04-02 08:31:17 +02:00
KoffeinFlummi
3c7b3e3618 Add tabview, add playlists to search 2019-04-02 08:30:42 +02:00
Henrik Friedrichsen
3d446ab942 enable librespot cache for audio data 2019-03-31 16:28:43 +02:00
Michael Edwards
d78e71871a Credentials helper if config not present or unparseable
Fixes #1
2019-03-30 22:40:42 +01:00
Henrik Friedrichsen
83a394790f implement deletion of playlists
closes #11
2019-03-26 22:24:20 +01:00
Henrik Friedrichsen
4f8342da83 refactorial spring cleaning (cargo fmt + clippy) 2019-03-26 20:51:39 +01:00
KoffeinFlummi
e6a7d8a693 Add seeking 2019-03-25 18:32:51 +01:00
Henrik Friedrichsen
43a1dc654f implement playlist saving interface 2019-03-24 16:27:36 +01:00
Henrik Friedrichsen
53255a48af implement playlist update on demand + prune stale playlists 2019-03-23 18:38:58 +01:00
Henrik Friedrichsen
4a5a38716f handle and renew expired web api tokens
closes #36
2019-03-22 16:01:05 +01:00
Henrik Friedrichsen
4b3a53ef74 remove leftover comment 2019-03-20 23:41:20 +01:00
Henrik Friedrichsen
c0e6f9ec34 cargo fmt 2019-03-20 23:38:17 +01:00
Henrik Friedrichsen
2b45778196 handle rate limiting imposed by spotify web api
closes #29
2019-03-20 23:12:58 +01:00
Henrik Friedrichsen
7aa6d49f3d move foreign SpotifyId struct out of Track model 2019-03-13 23:30:50 +01:00