mirror of
https://github.com/Suwayomi/Suwayomi-Server.git
synced 2026-06-30 09:24:34 -05:00
Implement SyncYomi (#1813)
* Implement SyncYomi
* Add ability to select what to sync
* Properly fix default category bug
* Add periodic sync
* Add PostgreSQL support
* Deschedule previous task
* Check if SyncYomi is enabled in syncData function
* Don't allow multiple syncs at the same time
* Convert SyncYomiSyncService to object
* Make startSync non-suspend
* Return a result from startSync
* Sync before library update
* Improvements
* Use NetworkHelper client
* Lint
* Use measureTime
* Database improvements
- Move entire sync operation into a single transaction
- Stop loading all manga to memory
* Revert "Database improvements"
This reverts commit bee8d214c3.
* Actual database improvements
* Remove runBlocking
* Remove title check
* Update updateNonFavorites function
* Update timeout code
* Improve PostgreSQL query
* Create lastSyncState variable
* Create lastSyncStatus query
* Convert lastSyncState to StateFlow
* Create lastSyncStatusChange subscription
* Replace backupRestoreStatus with backupRestoreId
* Add startDate and endDate
* Add logs for sync start and end
* Handle all errors in syncData
* Change category restore function to match Mihon's behavior
* Fix comment
* Remove duplicate BackupMangaHandler.backup call
* Remove duplicated log
* Rename subscription to syncStatusChanged
* Use same flags for restoring
* Update syncInterval config to use DurationSetting
* Update sync scheduling logic
* Reorder conditions to reduce database calls
* Prevent deleted ghost chapters from reappearing during sync
jobobby04/TachiyomiSY#1575
* Improve sync merging categories
jobobby04/TachiyomiSY#1559
* Make columns not null
* Improve H2 triggers
* Add documentation
This commit is contained in:
@@ -276,6 +276,28 @@ server.useHikariConnectionPool = true
|
||||
- `server.databasePassword` the username with which to authenticate at the PostgreSQL instance.
|
||||
- `server.useHikariConnectionPool` use Hikari Connection Pool to connect to the database.
|
||||
|
||||
### SyncYomi
|
||||
```
|
||||
server.syncYomiEnabled = false
|
||||
server.syncYomiHost = ""
|
||||
server.syncYomiApiKey = ""
|
||||
server.syncDataManga = true
|
||||
server.syncDataChapters = true
|
||||
server.syncDataTracking = true
|
||||
server.syncDataHistory = true
|
||||
server.syncDataCategories = true
|
||||
server.syncInterval = "0s"
|
||||
```
|
||||
- `server.syncYomiEnabled` controls whether SyncYomi is enabled.
|
||||
- `server.syncYomiHost` base URL of the SyncYomi server instance. e.g. `http://localhost:8282`
|
||||
- `server.syncYomiApiKey` API key to authenticate with SyncYomi. You must use the same API key in both Suwayomi and SyncYomi.
|
||||
- `server.syncDataManga` enables syncing manga.
|
||||
- `server.syncDataChapters` enables syncing chapters.
|
||||
- `server.syncDataTracking` enables syncing tracking data.
|
||||
- `server.syncDataHistory` enables syncing reading history.
|
||||
- `server.syncDataCategories` enables syncing categories.
|
||||
- `server.syncInterval` interval between automatic sync operations. Use `0s` to disable.
|
||||
|
||||
**Note:** The example [docker-compose.yml file](https://github.com/Suwayomi/Suwayomi-Server-docker/blob/main/docker-compose.yml) contains everything you need to get started with Suwayomi+PostgreSQL. Please be aware that PostgreSQL support is currently still in beta.
|
||||
|
||||
**Note:** These settings are excluded from backups, so a backup can be used to easily switch database installations by setting up the connection first, then restoring the backup.
|
||||
|
||||
Reference in New Issue
Block a user