Commit graph

59 commits

Author SHA1 Message Date
Philipp Wolfer
14d944c7ad
Basic "scotty auth" implementation 2023-11-19 23:56:31 +01:00
Philipp Wolfer
8b227cb514
Better naming, distingiush between "service" and "backend" 2023-11-19 22:54:42 +01:00
Philipp Wolfer
6e330daf06
Implemented progressbar for export/import 2023-11-19 13:56:06 +01:00
Philipp Wolfer
ab04eb1123
Updated all import/export interfaces 2023-11-17 07:41:47 +01:00
Philipp Wolfer
729a3d0ed0
Add ImportResult.UpdateTimestamp method 2023-11-17 07:41:47 +01:00
Philipp Wolfer
298697dcfc
Run exporter in goroutine
Use channel to pass data from exporter to importer
2023-11-17 07:41:46 +01:00
Philipp Wolfer
1ba165a631
Ignore Lapce editor files and configure go workspace 2023-11-17 07:40:25 +01:00
Philipp Wolfer
3a76ec7988
Added basic documentation of backend interfaces 2023-11-15 10:06:35 +01:00
Philipp Wolfer
bae81d9b08
If import fails report the last timestamp 2023-11-15 09:20:52 +01:00
Philipp Wolfer
4e9f50b6b6
More resilient HTTP requests
Fixed rate limit check for ListenBrainz and Funkwhale. Also retry always
on server side errors.
2023-11-15 09:20:35 +01:00
Philipp Wolfer
240351dc3e
Example config file 2023-11-15 07:56:30 +01:00
Philipp Wolfer
36f8f3e311
Use nested map for service configs 2023-11-15 07:35:28 +01:00
Philipp Wolfer
c8146355c1
Database support to store the last processed timestamp 2023-11-14 17:19:01 +01:00
Philipp Wolfer
503449c43d
Removed unused CLI flag added by default implementation 2023-11-14 15:14:54 +01:00
Philipp Wolfer
5a85987476
Maloja listens import 2023-11-14 15:09:34 +01:00
Philipp Wolfer
ca745038e3
Simplified backend names 2023-11-14 07:49:43 +01:00
Philipp Wolfer
1f2d5f662d
JSPF loves export 2023-11-14 00:46:08 +01:00
Philipp Wolfer
dcb5e9c2c6
Models for marshalling JSPF playlists 2023-11-13 23:56:39 +01:00
Philipp Wolfer
27685d617a
Implemented "beam --timestamp {n}" 2023-11-13 23:55:47 +01:00
Philipp Wolfer
4d18a207ee
ListenBrainz: Support import of loves without recording MBID 2023-11-13 23:55:47 +01:00
Philipp Wolfer
1b5ea241b6
ListenBrainz: Harmonized code 2023-11-13 18:20:16 +01:00
Philipp Wolfer
bef482fd68
Funkwhale: Handle rate limit headers 2023-11-13 18:20:01 +01:00
Philipp Wolfer
9b5a087974
ListenBrainz: Skip importing existing loves 2023-11-13 18:11:18 +01:00
Philipp Wolfer
6dd67aedcb
Dump: Print recording ID 2023-11-13 11:43:51 +01:00
Philipp Wolfer
aa453e4dc2
ListenBrainz: Fix love import and rate limit check 2023-11-13 11:42:09 +01:00
Philipp Wolfer
161ada7aff
ListenBrainz: Handle rate limit 2023-11-13 09:48:16 +01:00
Philipp Wolfer
ebcec46d7a
ListenBrainz: Fixed loves pagination 2023-11-13 09:47:27 +01:00
Philipp Wolfer
719ef5b84b
Minor simplification of test cases 2023-11-13 09:23:35 +01:00
Philipp Wolfer
0020594ea3
ListenBrainz: Love export and basic import
Love import currently works only for tracks with existing recording MBID
2023-11-13 09:21:22 +01:00
Philipp Wolfer
ead323eaed
Import result can report total and processed items 2023-11-12 18:41:29 +01:00
Philipp Wolfer
516de905bd
Renamed interfaces ListenImport|Export to ListensImport|Export 2023-11-12 18:40:00 +01:00
Philipp Wolfer
baed52dacc
Implemented subsonic loves import 2023-11-12 18:27:50 +01:00
Philipp Wolfer
c4ae2eda48
Simple tests for Backend.FromConfig implementations 2023-11-12 17:51:15 +01:00
Philipp Wolfer
aa01ae1342
Unified code for backend clients and tests 2023-11-12 16:28:23 +01:00
Philipp Wolfer
9316838d59
Funkwhale: Implemented LovesExport 2023-11-12 15:57:18 +01:00
Philipp Wolfer
48c8843f91
Moved specifc backends into separate packages 2023-11-12 01:14:53 +01:00
Philipp Wolfer
dfaf21b234
Implemented beam loves command 2023-11-12 00:54:51 +01:00
Philipp Wolfer
238163cb05
Implemented loves export for dump backend 2023-11-12 00:48:19 +01:00
Philipp Wolfer
cae7d22a36
Implemented Funkwhale API listens export 2023-11-12 00:39:19 +01:00
Philipp Wolfer
3ac3fac317
Test ListenBrainz client 2023-11-11 23:03:23 +01:00
Philipp Wolfer
cf8a6d2ab6
Tests for reading / writing scrobbler log 2023-11-11 17:08:23 +01:00
Philipp Wolfer
9d97e324aa
Move models to separate package
This allows easier reuse and better separation of code without introducing
circular dependencies
2023-11-11 16:20:40 +01:00
Philipp Wolfer
cdddf89a3e
More tests 2023-11-10 18:55:22 +01:00
Philipp Wolfer
94be108e8b
Tests and fixed for LB additional data conversion 2023-11-10 18:31:47 +01:00
Philipp Wolfer
0ee53aaa4c
Cross compile binaries 2023-11-10 17:21:03 +01:00
Philipp Wolfer
0939748829
Simple CI task 2023-11-10 14:38:00 +01:00
Philipp Wolfer
c6331328d4
Use testify to simplify tests 2023-11-10 08:59:19 +01:00
Philipp Wolfer
f9ac0328a7
Implement "backends" command 2023-11-10 08:43:17 +01:00
Philipp Wolfer
153b1a0def
Initial interfaces fr love transfer 2023-11-10 00:57:25 +01:00
Philipp Wolfer
49cb2774e2
listenbrainz: Read data from newest first
Very low min_ts parameters lead to empty results from LB and there is no
easy way to determine the oldest valid timestamp.
2023-11-10 00:56:43 +01:00