Philipp Wolfer
142d38e9db
Release 0.6.0
2025-05-23 10:10:08 +02:00
Philipp Wolfer
3b9d07e6b5
Implemented ScrobblerLog.ParseIter
2025-05-23 10:00:22 +02:00
Philipp Wolfer
15755458e9
Fixed iterProgress not stopping if yield returns false
2025-05-23 09:59:34 +02:00
Philipp Wolfer
5927f41a83
Revert "jspf/scrobblerlog: return results in batches"
...
This reverts commit a8ce2be5d7
.
2025-05-23 08:52:23 +02:00
Philipp Wolfer
b7ce09041e
Fix potential zero division error in iterProgress
2025-05-23 08:12:37 +02:00
Philipp Wolfer
a8ce2be5d7
jspf/scrobblerlog: return results in batches
...
This allows the importer to start working while export is still in progress
2025-05-23 07:48:42 +02:00
Philipp Wolfer
c7af90b585
More granular progress report for JSPF and scrobblerlog
2025-05-23 07:47:52 +02:00
Philipp Wolfer
83eac8c801
Import progress shows actual number of processed items
2025-05-23 07:40:52 +02:00
Philipp Wolfer
12eb7acd98
Update changelog
2025-05-22 18:56:49 +02:00
Philipp Wolfer
e9768c0934
Upgrade musicbrainzws2
2025-05-22 18:45:39 +02:00
Philipp Wolfer
dacfb72f7d
Upgrade dependencies
2025-05-22 17:09:26 +02:00
Philipp Wolfer
20853f7601
Simplify context cancellation checks
2025-05-22 14:13:31 +02:00
Philipp Wolfer
4a66e3d432
Pass context to import backends
2025-05-22 11:53:08 +02:00
Philipp Wolfer
26d9f5e840
Pass context to export backends
2025-05-22 11:53:05 +02:00
Philipp Wolfer
b5bca1d4ab
Use context aware musicbrainzws2
2025-05-22 11:51:53 +02:00
Philipp Wolfer
d1642b7f1f
Make web service clients context aware
2025-05-22 11:51:53 +02:00
Philipp Wolfer
adfe3f5771
Use the transfer context also for the progress bars
2025-05-22 11:51:52 +02:00
Philipp Wolfer
3b545a0fd6
Prepare using a context for export / import
...
This will allow cancelling the export if the import fails
before the export finished.
For now the context isn't passed on to the actual export functions,
hence there is not yet any cancellation happening.
2025-05-22 11:51:51 +02:00
Philipp Wolfer
536fae6a46
ScrobblerLog.ReadHeader now accepts io.Reader
2025-05-22 11:51:23 +02:00
Philipp Wolfer
97600d8190
Update dependencies
2025-05-09 07:38:28 +02:00
Philipp Wolfer
a42b5d784d
Added short doc string to ratelimit package
2025-05-08 07:40:12 +02:00
Philipp Wolfer
a87c42059f
Use a WaitGroup to wait for both export and import goroutine to finish
2025-05-05 17:49:44 +02:00
Philipp Wolfer
17cee9cb8b
For import progress show actually processed and total count
2025-05-05 17:39:47 +02:00
Philipp Wolfer
b8e6ccffdb
Initial implementation of unified export/import progress
...
Both export and import progress get updated over a unified channel.
Most importantly this allows updating the import total from latest
export results.
2025-05-05 11:38:29 +02:00
Philipp Wolfer
1f48abc284
Fixed timestamp displayed after import not being the updated one
2025-05-04 15:18:14 +02:00
Philipp Wolfer
54fffce1d9
Update translation files
2025-05-04 13:31:44 +02:00
Philipp Wolfer
cb6a534fa1
Translated using Weblate (German)
...
Currently translated at 100.0% (55 of 55 strings)
Co-authored-by: Philipp Wolfer <phw@uploadedlobster.com>
Translate-URL: https://translate.uploadedlobster.com/projects/scotty/app/de/
Translation: Scotty/app
2025-05-04 11:25:07 +00:00
Philipp Wolfer
05f0e8d172
Change string for aborted progress bar
2025-05-04 13:24:12 +02:00
Philipp Wolfer
a8517ea249
funkwhale: fix progress abort on error
2025-05-04 13:22:51 +02:00
Philipp Wolfer
dfe6773744
Update translations
2025-05-04 13:07:02 +02:00
Philipp Wolfer
aae5123c3d
Show progress bars as aborted on export / import error
2025-05-04 13:06:48 +02:00
Philipp Wolfer
15d939e150
Update changelog
2025-05-04 12:56:50 +02:00
Philipp Wolfer
55ac41b147
If import fails still save the last reported timestamp
...
This allows continuing a partially failed import run.
2025-05-04 11:53:46 +02:00
Philipp Wolfer
069f0de2ee
Call "FinishImport" even on error
...
This gives the importer the chance to close connections
and free resources to ensure already imported items are
properly handled.
2025-05-04 11:53:45 +02:00
Philipp Wolfer
3b1adc9f1f
Fix duplicate calls to handle import errors
...
This fixes the import process hanging on error
2025-05-04 11:53:43 +02:00
Philipp Wolfer
1c3364dad5
Close export results channel in generic implementation
...
This removes the need for every implementation to handle this case.
2025-05-04 11:53:42 +02:00
Philipp Wolfer
9480c69cbb
Handle wait group for progress bar centrally
...
This does not need to be exposed and caller only
needs to wait for the Progress instance.
2025-05-04 11:53:35 +02:00
Philipp Wolfer
b3136bde9a
jspf: add MB extension, if it does not exist
2025-05-04 11:52:45 +02:00
Philipp Wolfer
8885e9cebc
Fix scrobblerlog timezone not being set from config
2025-05-02 21:35:14 +02:00
Philipp Wolfer
bd7a35cd68
Update dependencies
2025-05-02 16:28:54 +02:00
Philipp Wolfer
d757129bd7
jspf: also set username and recording MSID in exports
2025-05-01 15:20:37 +02:00
Philipp Wolfer
a645ec5c78
JSPF: Implemented export as loves and listens
2025-05-01 15:10:00 +02:00
Philipp Wolfer
cfc3cd522d
scrobblerlog: fix listen export not considering latest timestamp
2025-05-01 14:09:12 +02:00
Philipp Wolfer
443734e4c7
jspf: write duration to exported JSPF
2025-05-01 13:48:21 +02:00
Philipp Wolfer
588a6cf96f
Document the scrobblerlog package
2025-05-01 13:22:20 +02:00
Philipp Wolfer
91c28bac0c
Release 0.5.2
2025-05-01 12:53:32 +02:00
Philipp Wolfer
21d757e37c
listenbainz: fixed loves export not considering timestamp
2025-05-01 12:32:02 +02:00
Philipp Wolfer
c305b6c7e3
Simplify timestamp comparisons
2025-05-01 12:27:24 +02:00
Philipp Wolfer
389c7c6ec1
Release 0.5.1
2025-05-01 11:53:09 +02:00
Philipp Wolfer
e973e72bbe
scrobblerlog: fixed timezone offset calculation
...
The timezone offset must be substracted to get the actual time in UTC.
2025-05-01 11:51:02 +02:00