Commit Graph

107 Commits

Author SHA1 Message Date
arkon 259b8f383f Move more things to domain module
(cherry picked from commit f816196df29ee9744e93470df48b2f7f24ae18f7)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/history/interactor/GetNextChapters.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/MigrationFlags.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
2023-03-05 15:05:35 -05:00
arkon 8146e1181a Move some interactors to domain module
(cherry picked from commit f2c48480b687d4e01350e580a5648ae52bd5d107)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
2023-02-09 18:15:16 -05:00
arkon eecf7fd1fb Move more repositories to domain module
(cherry picked from commit 14500ba4f8ecaa852ca121bcdd91a3da5cea5093)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/history/interactor/GetNextChapters.kt
#	app/src/main/java/eu/kanade/domain/manga/interactor/GetManga.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
2023-02-09 13:54:12 -05:00
arkon ce67eb9de3 Move more models to domain module
(cherry picked from commit 345e9c2a9a61f1f3b814db52eddbb42681499854)

# Conflicts:
#	app/src/main/java/eu/kanade/data/manga/MangaMapper.kt
#	app/src/main/java/eu/kanade/domain/chapter/interactor/SyncChaptersWithSource.kt
#	app/src/main/java/eu/kanade/domain/chapter/model/ChapterFilter.kt
#	app/src/main/java/eu/kanade/domain/history/interactor/GetNextChapters.kt
#	app/src/main/java/eu/kanade/domain/library/service/LibraryPreferences.kt
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/presentation/browse/MigrateSearchScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceDialogs.kt
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/MigrationFlags.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/history/HistoryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/chapter/ChapterGetNextUnread.kt
2023-02-09 13:44:38 -05:00
arkon eb3e928e67 Move more models to domain module
(cherry picked from commit b53e24e0dbd4affd6066a03ce543c3ecc88bdb99)

# Conflicts:
#	app/src/main/java/eu/kanade/data/history/HistoryRepositoryImpl.kt
#	app/src/main/java/eu/kanade/data/updates/UpdatesMapper.kt
#	app/src/main/java/eu/kanade/domain/category/interactor/SetDisplayModeForCategory.kt
#	app/src/main/java/eu/kanade/domain/category/interactor/SetSortModeForCategory.kt
#	app/src/main/java/eu/kanade/domain/history/repository/HistoryRepository.kt
#	app/src/main/java/eu/kanade/domain/library/service/LibraryPreferences.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	domain/src/main/java/tachiyomi/domain/history/model/HistoryWithRelations.kt
#	domain/src/main/java/tachiyomi/domain/updates/model/UpdatesWithRelations.kt
2023-02-09 13:00:07 -05:00
Ivan Iskandar 82fdbad6bf Update WorkManager (#8772)
(cherry picked from commit 8552838bda)

# Conflicts:
#	.github/renovate.json
2022-12-20 15:44:35 -05:00
Jobobby04 33d5c08597 Minor cleanup 2022-12-17 23:33:56 -05:00
Jobobby04 a280a5ed77 Simplify EHentaiUpdateHelper 2022-12-15 21:06:24 -05:00
Jobobby04 0752790690 Update E-Hentai tags 2022-11-16 14:29:05 -05:00
arkon d3f4f63f52 Adjust read next history logic
Closes #8454

(cherry picked from commit 8749be518f)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/DomainModule.kt
#	app/src/main/java/eu/kanade/domain/history/interactor/GetNextUnreadChapters.kt
#	app/src/main/java/eu/kanade/domain/history/interactor/RemoveHistory.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-11-10 22:37:36 -05:00
Ivan Iskandar 57dcd16cb9 Full Compose settings (#8201)
* Uses Voyager for navigation.
* Replaces every screen inside settings except category editor screen since it's
called from several places.

(cherry picked from commit 890f1a3c7b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsMainController.kt
2022-10-16 21:53:23 -04:00
Andreas 1f4bfc4764 Split the rest of the preferences in PreferencesHelper (#8074)
* Split the reset of the preferences in PreferencesHelper

* Capitalize ThemeMode

(cherry picked from commit 29fa93e829)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceValues.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionGithubApi.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/delegate/SecureActivityDelegate.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
2022-09-25 20:41:19 -04:00
Jobobby04 3562816e89 SY linting 2022-09-11 19:43:45 -04:00
stevenyomi 39e0d7f4e8 Remove 1.x source models (#7781)
(cherry picked from commit e36e9d9d5c)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/interactor/UpdateManga.kt
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/Source.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/model/SManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-08-18 15:44:31 -04:00
AntsyLich 0b1afc1b94 Change return value of SyncChaptersWithSource.await() (#7715)
* Change return value of `SyncChaptersWithSource.await()`

`updatedToAdd.subtract(reAdded).toList()` never worked as at this point `updatedToAdd` contained ids from db where `reAdded` had default one. Was the same case before the rewrite.

Removed `toDelete` from return value as it was not being used anywhere

* Add doc string

* Use HashSet

Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>

Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>
(cherry picked from commit 11f640cfee)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-08-13 15:00:32 -04:00
Jobobby04 05f2f79e0d Update EHTags list 2022-08-05 16:34:00 -04:00
Jobobby04 392b3c040e Remove useless check 2022-07-11 19:42:53 -04:00
Jobobby04 6954c299b5 Use domain layer for almost all SY code 2022-07-04 18:45:39 -04:00
arkon d48427152e More domain model usage
(cherry picked from commit a3ab8746bf)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCategoryAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCategoryView.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-07-03 16:51:08 -04:00
arkon 268911a7c9 More domain model usage
(cherry picked from commit b3dd8b7355)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/MangaCategory.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/MigrationFlags.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-07-03 16:22:08 -04:00
Andreas ea38ffc53e Use SQLDelight for all Manga related queries (#7447)
(cherry picked from commit 17951cfd68)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/DomainModule.kt
#	app/src/main/java/eu/kanade/domain/manga/repository/MangaRepository.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DatabaseHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DbExtensions.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DbProvider.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/ChapterTypeMapping.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaCategoryTypeMapping.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaTypeMapping.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/RawQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterProgressPutResolver.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/LibraryMangaGetResolver.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaFlagsPutResolver.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/CategoryTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/ChapterTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/MangaCategoryTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/MangaTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-07-03 15:58:26 -04:00
Jobobby04 d88c769d3b Use SQLDelight for more SY specific things 2022-07-03 13:37:27 -04:00
Jobobby04 664f9b1484 Use SQLDelight for most SY specific things 2022-07-02 23:52:03 -04:00
AntsyLich d1d9c53af3 Make syncChaptersWithSource use sqldelight (#7263)
* Make `syncChaptersWithSource` use sqldelight

Will break chapter list live update on current ui

Co-Authored-By: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>

* Review Changes

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit 120943a8b3)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/AbstractBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/chapter/ChapterSourceSync.kt
#	app/src/main/sqldelight/data/mangas.sq
2022-06-11 12:51:49 -04:00
arkon 24c5563a02 Update linter
(cherry picked from commit ae7df4fb7f)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/domain/source/model/Source.kt
#	app/src/main/java/eu/kanade/presentation/source/MigrateSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/source/SourceFilterScreen.kt
#	app/src/main/java/eu/kanade/presentation/source/SourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourceFilterPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcePresenter.kt
2022-05-14 10:45:26 -04:00
Jobobby04 c51e8c7ab4 Separate EHTags into multiple files 2022-04-23 20:43:02 -04:00
arkon e98567a86b Update linter
(cherry picked from commit f0eb42e72d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/FullBackupRestore.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/Backup.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/BackupManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/legacy/models/Backup.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/model/Extension.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/changehandler/OneWayFadeChangeHandler.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/SelectionHeader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourceItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceFilterSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryListHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPageSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/HttpPageLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/model/ReaderPage.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/view/ViewExtensions.kt
2022-04-09 19:11:54 -04:00
Jobobby04 bc1274008d Delete duplicate history on merge 2022-03-04 12:27:18 -05:00
Jobobby04 b98dc6e1a5 Improve/Fix E-H redirect, add history handling, fix redirect and library handling 2022-02-08 19:48:00 -05:00
Jobobby04 1dd010e733 Minor cleanup 2022-02-01 17:09:41 -05:00
Jobobby04 849add02ad Use more performant getAllTags function 2022-01-20 22:50:37 -05:00
Jobobby04 464f343e4a Update EHTags using updated Scraper 2022-01-20 22:19:57 -05:00
Jobobby04 9e9fa80450 Migrate EHentaiThrottleManager from Longs to durations 2021-12-25 12:07:09 -05:00
Jobobby04 999e944c34 Move to official duration extensions 2021-12-25 12:05:06 -05:00
arkon b19c178eae Combine global update item restrictions
(cherry picked from commit 818fe50f77)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsLibraryController.kt
2021-12-18 11:48:18 -05:00
Jobobby04 f2c881cb42 Update WI-FI restriction for EXH update worker 2021-10-23 14:25:10 -04:00
Jobobby04 e9e3340c08 Convert EH Gallery Updater from a JobService to WorkManager 2021-07-02 17:50:22 -04:00
Jobobby04 57dde4c922 Refactor show history and updates buttons 2021-06-02 14:12:57 -04:00
Jobobby04 aeaf52cb58 Handle more deprecated items 2021-06-02 00:10:36 -04:00
Jobobby04 91ca176c28 When throttling E-Hentai, suspend the thread instead of sleeping it 2021-05-21 17:06:40 -04:00
Jobobby04 367d95c825 Logging fixes and lint 2021-03-31 14:29:27 -04:00
Jobobby04 12962b3486 Minor cleanup 2021-03-22 20:25:46 -04:00
Jobobby04 d64a8907eb Many small changes
- Remove unused gridlayout dependency
- Add RECIEVE_BOOT permission for EH updater
- Some suspending db IO calls
2021-03-07 02:47:48 -05:00
Jobobby04 7e91ae02f1 Upgrade logging, now maps timber to XLog, new logging functions 2021-03-07 00:23:23 -05:00
Jobobby04 d7eac12eee Use some core ktx 2021-02-06 19:02:35 -05:00
Jobobby04 dc6aa11bc7 Revert "Run more db queries inside the IO pool, convert some RxJava references to Coroutines"
This reverts commit 18f02a85ac.

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsEhController.kt
2021-01-26 23:36:03 -05:00
Jobobby04 295af5306b Handle delegated source id lists better using a LisenterMutableMap
Better source id comparisons
2021-01-26 13:31:22 -05:00
Jobobby04 18f02a85ac Run more db queries inside the IO pool, convert some RxJava references to Coroutines 2021-01-26 13:31:20 -05:00
Jobobby04 0a4fcb480d Small cleanup and optimizations, add a coroutine version of insertFlatMetadata 2021-01-20 21:00:23 -05:00
Jobobby04 a0ac2daad1 Deal with SY for the coroutine function changes 2021-01-10 19:36:24 -05:00