Glagan / SyncDex

Automatically sync what you read on MangaDex across many services like MyAnimeList, Anilist, Kitsu and more.
Mozilla Public License 2.0
46 stars 0 forks source link

[BUG] When the next volume starts counting from ch.1, tracking breaks #28

Closed Jerrk closed 3 years ago

Jerrk commented 3 years ago

IIRC this was also a problem in MMD

Describe the bug If a manga ends at "vol. 60 ch.15" and you read up to "vol.1 ch.15" the manga is tracked as Completed

To Reproduce Steps to reproduce the behavior:

  1. Read a manga that ends at a volume with the same or lower chapter count as an earlier volume.
  2. read the # of the ending chapter in an earlier volume
  3. the manga should now be tracked as being completed

Expected behavior (optional) To be fair i'm not sure what the correct tracking behavior should be since not all manga number their chapters like this. It is nonetheless an issue when one of them shows up, and it should definitely not be tracked as completed.

Screenshots

Browser Firefox 86.0a1 (2021-01-11) (64-bit)

Options and logs

{"import":1610373217736,"lastSync":1610384484000,"logs":[{"d":1610369998215,"msg":"Installation version 0.1.9"},{"d":1610370508026,"msg":"Importing lists"},{"d":1610370508027,"msg":"Importing Kitsu"},{"d":1610370520981,"msg":"Imported Kitsu in 12953ms"},{"d":1610370520983,"msg":"Importing MangaUpdates"},{"d":1610370524790,"msg":"TypeError: can't access property \"textContent\", name is null\nStack: MangaUpdatesImport/this.execute@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/background/SyncDex_background.js:4635:29\n"},{"d":1610370524806,"msg":"Could not import MangaUpdates | Status: 5"},{"d":1610370524808,"msg":"Importing MyAnimeList"},{"d":1610370543232,"msg":"Imported MyAnimeList in 18423ms"},{"d":1610370543233,"msg":"Importing Anilist"},{"d":1610370546229,"msg":"Could not import Anilist | Status: 4"},{"d":1610370546283,"msg":"Done Importing lists"},{"d":1610371593468,"msg":"Obtained Dropbox token"},{"d":1610371595224,"msg":"No external lastSync or not forced, uploading save."},{"d":1610371600944,"msg":"Uploaded Local Save to Dropbox"},{"d":1610371600948,"msg":"Synced your save with Dropbox"},{"d":1610371621873,"msg":"Uploaded Local Save to Dropbox"},{"d":1610372448079,"msg":"No external lastSync or forced, uploading save."},{"d":1610372454697,"msg":"Uploaded Local Save to Dropbox"},{"d":1610372454713,"msg":"Synced your save with Dropbox"},{"d":1610372757867,"msg":"No external lastSync or forced, uploading save."},{"d":1610372761599,"msg":"Uploaded Local Save to Dropbox"},{"d":1610372761660,"msg":"Synced your save with Dropbox"},{"d":1610372829402,"msg":"No external lastSync or forced, uploading save."},{"d":1610372833367,"msg":"Uploaded Local Save to Dropbox"},{"d":1610372833395,"msg":"Synced your save with Dropbox"},{"d":1610373176730,"msg":"No external lastSync or forced, uploading save."},{"d":1610373180324,"msg":"Uploaded Local Save to Dropbox"},{"d":1610373180341,"msg":"Synced your save with Dropbox"},{"d":1610373213537,"msg":"Save already synced with Dropbox"},{"d":1610373213940,"msg":"Importing lists"},{"d":1610373213963,"msg":"Importing Anilist"},{"d":1610373217474,"msg":"Could not import Anilist | Status: 4"},{"d":1610373254305,"msg":"TypeError: can't access property \"textContent\", name is null\nStack: MangaUpdatesImport/this.execute@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:4784:29\n"},{"d":1610373270601,"msg":"TypeError: can't access property \"textContent\", name is null\nStack: MangaUpdatesImport/this.execute@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:4784:29\n"},{"d":1610373278080,"msg":"No external lastSync or forced, uploading save."},{"d":1610373281236,"msg":"Uploaded Local Save to Dropbox"},{"d":1610373281246,"msg":"Synced your save with Dropbox"},{"d":1610373317249,"msg":"TypeError: can't access property \"textContent\", name is null\nStack: MangaUpdatesImport/this.execute@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:4784:29\n"},{"d":1610373492893,"msg":"TypeError: can't access property \"textContent\", name is null\nStack: MangaUpdatesImport/this.execute@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:4784:29\n"},{"d":1610373607365,"msg":"TypeError: can't access property \"textContent\", name is null\nStack: MangaUpdatesImport/this.execute@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:4784:29\n"},{"d":1610373823309,"msg":"No external lastSync or forced, uploading save."},{"d":1610373826086,"msg":"Uploaded Local Save to Dropbox"},{"d":1610373826103,"msg":"Synced your save with Dropbox"},{"d":1610373959770,"msg":"No external lastSync or forced, uploading save."},{"d":1610373963556,"msg":"Uploaded Local Save to Dropbox"},{"d":1610373963570,"msg":"Synced your save with Dropbox"},{"d":1610374223606,"msg":"No external lastSync or forced, uploading save."},{"d":1610374226751,"msg":"Uploaded Local Save to Dropbox"},{"d":1610374226767,"msg":"Synced your save with Dropbox"},{"d":1610374963138,"msg":"No external lastSync or forced, uploading save."},{"d":1610374966205,"msg":"Uploaded Local Save to Dropbox"},{"d":1610374966220,"msg":"Synced your save with Dropbox"},{"d":1610375639251,"msg":"No external lastSync or forced, uploading save."},{"d":1610375644739,"msg":"Uploaded Local Save to Dropbox"},{"d":1610375644744,"msg":"Synced your save with Dropbox"},{"d":1610375705182,"msg":"No external lastSync or forced, uploading save."},{"d":1610375715177,"msg":"Uploaded Local Save to Dropbox"},{"d":1610375715190,"msg":"Synced your save with Dropbox"},{"d":1610375759729,"msg":"No external lastSync or forced, uploading save."},{"d":1610375762836,"msg":"Uploaded Local Save to Dropbox"},{"d":1610375762859,"msg":"Synced your save with Dropbox"},{"d":1610376091015,"msg":"No external lastSync or forced, uploading save."},{"d":1610376093861,"msg":"Uploaded Local Save to Dropbox"},{"d":1610376093877,"msg":"Synced your save with Dropbox"},{"d":1610376294623,"msg":"No external lastSync or forced, uploading save."},{"d":1610376298205,"msg":"Uploaded Local Save to Dropbox"},{"d":1610376298220,"msg":"Synced your save with Dropbox"},{"d":1610376444825,"msg":"No external lastSync or forced, uploading save."},{"d":1610376449081,"msg":"Uploaded Local Save to Dropbox"},{"d":1610376449094,"msg":"Synced your save with Dropbox"},{"d":1610376607523,"msg":"No external lastSync or forced, uploading save."},{"d":1610376611144,"msg":"Uploaded Local Save to Dropbox"},{"d":1610376611156,"msg":"Synced your save with Dropbox"},{"d":1610376799418,"msg":"No external lastSync or forced, uploading save."},{"d":1610376802920,"msg":"Uploaded Local Save to Dropbox"},{"d":1610376802926,"msg":"Synced your save with Dropbox"},{"d":1610376861875,"msg":"No external lastSync or forced, uploading save."},{"d":1610376865075,"msg":"Uploaded Local Save to Dropbox"},{"d":1610376865089,"msg":"Synced your save with Dropbox"},{"d":1610381203340,"msg":"No external lastSync or forced, uploading save."},{"d":1610381207008,"msg":"Uploaded Local Save to Dropbox"},{"d":1610381207024,"msg":"Synced your save with Dropbox"},{"d":1610382152188,"msg":"No external lastSync or forced, uploading save."},{"d":1610382155500,"msg":"Uploaded Local Save to Dropbox"},{"d":1610382155513,"msg":"Synced your save with Dropbox"},{"d":1610382343265,"msg":"No external lastSync or forced, uploading save."},{"d":1610382347520,"msg":"Uploaded Local Save to Dropbox"},{"d":1610382347535,"msg":"Synced your save with Dropbox"},{"d":1610382589980,"msg":"No external lastSync or forced, uploading save."},{"d":1610382593392,"msg":"Uploaded Local Save to Dropbox"},{"d":1610382593407,"msg":"Synced your save with Dropbox"},{"d":1610384264675,"msg":"No external lastSync or forced, uploading save."},{"d":1610384268034,"msg":"Uploaded Local Save to Dropbox"},{"d":1610384268048,"msg":"Synced your save with Dropbox"},{"d":1610384433901,"msg":"Error on request [https://graphql.anilist.co]: TypeError: NetworkError when attempting to fetch resource."},{"d":1610384482665,"msg":"No external lastSync or forced, uploading save."},{"d":1610384486406,"msg":"Uploaded Local Save to Dropbox"},{"d":1610384486420,"msg":"Synced your save with Dropbox"},{"d":1610384754258,"msg":"TypeError: can't access property \"textContent\", name is null\nStack: MangaUpdatesImport/this.execute@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:4784:29\n"},{"d":1610384855164,"msg":"TypeError: can't access property \"textContent\", name is null\nStack: MangaUpdatesImport/this.execute@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:4784:29\n"},{"d":1610385023137,"msg":"TypeError: can't access property \"textContent\", name is null\nStack: MangaUpdatesImport/this.execute@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:4784:29\nasync*ImportModule/this.run@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:3322:43\nasync*Module/this.bindInterface/<@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:3168:58\nModuleInterface/this.bindFormSubmit/<@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:5672:21\nEventListener.handleEvent*ModuleInterface/this.bindFormSubmit@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:5665:23\nModule/this.bindInterface@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:3168:32\nImportModule@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:3418:14\nMangaUpdatesImport@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:4741:9\nModules/</constructor.importModule@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:2308:9\nServiceCard/this.bind/<@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:5966:51\n"},{"d":1610385128984,"msg":"TypeError: can't access property \"textContent\", name is null\nStack: MangaUpdatesImport/this.execute@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:4784:29\nasync*ImportModule/this.run@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:3322:43\nasync*Module/this.bindInterface/<@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:3168:58\nModuleInterface/this.bindFormSubmit/<@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:5672:21\nEventListener.handleEvent*ModuleInterface/this.bindFormSubmit@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:5665:23\nModule/this.bindInterface@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:3168:32\nImportModule@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:3418:14\nMangaUpdatesImport@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:4741:9\nModules/</constructor.importModule@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:2308:9\nServiceCard/this.bind/<@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:5966:51\n"},{"d":1610385162032,"msg":"TypeError: can't access property \"textContent\", name is null\nStack: MangaUpdatesImport/this.execute@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:4784:29\nasync*ImportModule/this.run@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:3322:43\nasync*Module/this.bindInterface/<@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:3168:58\nModuleInterface/this.bindFormSubmit/<@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:5672:21\nEventListener.handleEvent*ModuleInterface/this.bindFormSubmit@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:5665:23\nModule/this.bindInterface@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:3168:32\nImportModule@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:3418:14\nMangaUpdatesImport@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:4741:9\nModules/</constructor.importModule@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:2308:9\nServiceCard/this.bind/<@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:5966:51\nEventListener.handleEvent*ServiceCard/this.bind@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:5963:31\nServiceCard@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:6036:14\nServiceManager@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:6215:26\nOptionsManager@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:8869:31\n@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:9036:31\nasync*@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:9081:3\n"},{"d":1610386407258,"msg":"TypeError: can't access property \"textContent\", name is null\nStack: MangaUpdatesImport/this.execute@moz-extension://c8581ea9-3358-4295-bcfe-b62095dc0b13/options/SyncDex_options.js:4784:29\n"},{"d":1610386654109,"msg":"Updating from version 0.1.9 to 0.2.0"},{"d":1610386959116,"msg":"Anilist::get ~ Execution time: 1077ms"},{"d":1610386961439,"msg":"MangaUpdates::get ~ Execution time: 3402ms"},{"d":1610386961945,"msg":"Kitsu::get ~ Execution time: 3908ms"},{"d":1610386964131,"msg":"AnimePlanet::get ~ Execution time: 6094ms"},{"d":1610386969827,"msg":"Anilist::get ~ Execution time: 1307ms"},{"d":1610386972212,"msg":"MangaUpdates::get ~ Execution time: 3695ms"},{"d":1610386973665,"msg":"Kitsu::get ~ Execution time: 5146ms"},{"d":1610386974857,"msg":"AnimePlanet::get ~ Execution time: 6338ms"},{"d":1610387082884,"msg":"Anilist::get ~ Execution time: 927ms"},{"d":1610387085561,"msg":"MyAnimeList::get ~ Execution time: 3605ms"},{"d":1610387086234,"msg":"MangaUpdates::get ~ Execution time: 4279ms"},{"d":1610387790064,"msg":"MangaUpdates::get ~ Execution time: 1616ms"},{"d":1610387868315,"msg":"Anilist::get ~ Execution time: 915ms"},{"d":1610387870038,"msg":"MangaUpdates::get ~ Execution time: 2644ms"},{"d":1610387873052,"msg":"Kitsu::get ~ Execution time: 5657ms"},{"d":1610387929001,"msg":"Anilist::get ~ Execution time: 1375ms"},{"d":1610387930328,"msg":"MangaUpdates::get ~ Execution time: 2703ms"},{"d":1610387943925,"msg":"Kitsu::get ~ Execution time: 16301ms"},{"d":1610387962643,"msg":"Anilist::get ~ Execution time: 1562ms"},{"d":1610387963792,"msg":"MangaUpdates::get ~ Execution time: 2712ms"},{"d":1610387965216,"msg":"Kitsu::get ~ Execution time: 4135ms"},{"d":1610387991939,"msg":"Anilist::get ~ Execution time: 1222ms"},{"d":1610387993293,"msg":"MangaUpdates::get ~ Execution time: 2585ms"},{"d":1610387997209,"msg":"Kitsu::get ~ Execution time: 6501ms"},{"d":1610388031750,"msg":"MangaUpdates::get ~ Execution time: 912ms"},{"d":1610388099220,"msg":"MyAnimeList::get ~ Execution time: 1581ms"},{"d":1610388114768,"msg":"MyAnimeList::get ~ Execution time: 1371ms"},{"d":1610388133034,"msg":"MyAnimeList::get ~ Execution time: 1176ms"},{"d":1610388175792,"msg":"Anilist::get ~ Execution time: 1095ms"},{"d":1610388177623,"msg":"MyAnimeList::get ~ Execution time: 2928ms"},{"d":1610388178875,"msg":"MangaUpdates::get ~ Execution time: 4179ms"},{"d":1610388191998,"msg":"AnimePlanet::get ~ Execution time: 17302ms"},{"d":1610388230373,"msg":"Anilist::get ~ Execution time: 1134ms"},{"d":1610388232160,"msg":"MangaUpdates::get ~ Execution time: 2924ms"},{"d":1610388248316,"msg":"Kitsu::get ~ Execution time: 19078ms"},{"d":1610388278298,"msg":"Anilist::get ~ Execution time: 236ms"},{"d":1610388279830,"msg":"MangaUpdates::get ~ Execution time: 1768ms"},{"d":1610388295333,"msg":"Kitsu::get ~ Execution time: 17271ms"},{"d":1610388313368,"msg":"Anilist::get ~ Execution time: 1390ms"},{"d":1610388314890,"msg":"MangaUpdates::get ~ Execution time: 2917ms"},{"d":1610388326297,"msg":"Kitsu::get ~ Execution time: 14324ms"},{"d":1610388326588,"msg":"Anilist::get ~ Execution time: 284ms"},{"d":1610388327899,"msg":"MangaUpdates::get ~ Execution time: 1594ms"},{"d":1610388331996,"msg":"Anilist::get ~ Execution time: 1344ms"},{"d":1610388333609,"msg":"MangaUpdates::get ~ Execution time: 2958ms"},{"d":1610388336447,"msg":"Kitsu::get ~ Execution time: 5797ms"},{"d":1610388346486,"msg":"Anilist::get ~ Execution time: 214ms"},{"d":1610388352587,"msg":"Anilist::get ~ Execution time: 1136ms"},{"d":1610388354164,"msg":"MangaUpdates::get ~ Execution time: 2715ms"},{"d":1610388360896,"msg":"Kitsu::get ~ Execution time: 9447ms"},{"d":1610388397528,"msg":"Anilist::get ~ Execution time: 262ms"},{"d":1610388398861,"msg":"MangaUpdates::get ~ Execution time: 1595ms"},{"d":1610388412362,"msg":"Kitsu::get ~ Execution time: 15096ms"},{"d":1610389242846,"msg":"Anilist::get ~ Execution time: 828ms"},{"d":1610389244019,"msg":"MangaUpdates::get ~ Execution time: 2001ms"},{"d":1610389248058,"msg":"Anilist::get ~ Execution time: 1425ms"},{"d":1610389249249,"msg":"MangaUpdates::get ~ Execution time: 2618ms"},{"d":1610389250642,"msg":"Kitsu::get ~ Execution time: 4011ms"},{"d":1610389453256,"msg":"Anilist::get ~ Execution time: 649ms"},{"d":1610389455474,"msg":"MangaUpdates::get ~ Execution time: 2869ms"},{"d":1610389459830,"msg":"Kitsu::get ~ Execution time: 7223ms"},{"d":1610389476608,"msg":"Anilist::get ~ Execution time: 201ms"},{"d":1610389477998,"msg":"MangaUpdates::get ~ Execution time: 1591ms"},{"d":1610389479630,"msg":"Kitsu::get ~ Execution time: 3224ms"},{"d":1610389489543,"msg":"Anilist::get ~ Execution time: 309ms"},{"d":1610389491103,"msg":"MyAnimeList::get ~ Execution time: 1868ms"},{"d":1610389492169,"msg":"MangaUpdates::get ~ Execution time: 2934ms"},{"d":1610389499200,"msg":"Kitsu::get ~ Execution time: 9965ms"},{"d":1610389643489,"msg":"Anilist::get ~ Execution time: 1066ms"},{"d":1610389645412,"msg":"MangaUpdates::get ~ Execution time: 2993ms"},{"d":1610389646737,"msg":"Kitsu::get ~ Execution time: 4319ms"},{"d":1610390485859,"msg":"MyAnimeList::get ~ Execution time: 2271ms"},{"d":1610390487096,"msg":"MangaUpdates::get ~ Execution time: 3508ms"},{"d":1610390488745,"msg":"Kitsu::get ~ Execution time: 5157ms"},{"d":1610390495068,"msg":"MangaUpdates::get ~ Execution time: 2392ms"},{"d":1610390496336,"msg":"Anilist::get ~ Execution time: 3671ms"},{"d":1610390499722,"msg":"Kitsu::get ~ Execution time: 7056ms"},{"d":1610390840572,"msg":"Anilist::get ~ Execution time: 553ms"},{"d":1610390842385,"msg":"MyAnimeList::get ~ Execution time: 2366ms"},{"d":1610390843544,"msg":"MangaUpdates::get ~ Execution time: 3524ms"},{"d":1610390849737,"msg":"Kitsu::get ~ Execution time: 9716ms"},{"d":1610390860108,"msg":"Anilist::get ~ Execution time: 824ms"},{"d":1610390861667,"msg":"MangaUpdates::get ~ Execution time: 2385ms"},{"d":1610390865434,"msg":"Kitsu::get ~ Execution time: 6152ms"},{"d":1610390929611,"msg":"Anilist::get ~ Execution time: 1140ms"},{"d":1610390931415,"msg":"MangaUpdates::get ~ Execution time: 2944ms"},{"d":1610390934795,"msg":"AnimePlanet::get ~ Execution time: 6324ms"},{"d":1610390936675,"msg":"Kitsu::get ~ Execution time: 8205ms"},{"d":1610391297201,"msg":"Anilist::get ~ Execution time: 967ms"},{"d":1610391299262,"msg":"MangaUpdates::get ~ Execution time: 3028ms"},{"d":1610391301993,"msg":"Kitsu::get ~ Execution time: 5760ms"},{"d":1610391302050,"msg":"AnimePlanet::get ~ Execution time: 5814ms"},{"d":1610391353572,"msg":"AnimePlanet::get ~ Execution time: 2864ms"},{"d":1610391360040,"msg":"Kitsu::get ~ Execution time: 9334ms"},{"d":1610391416069,"msg":"Anilist::get ~ Execution time: 1092ms"},{"d":1610391417992,"msg":"MangaUpdates::get ~ Execution time: 3015ms"},{"d":1610391419044,"msg":"Kitsu::get ~ Execution time: 4068ms"},{"d":1610391420515,"msg":"AnimePlanet::get ~ Execution time: 5538ms"},{"d":1610391556136,"msg":"Anilist::get ~ Execution time: 2350ms"},{"d":1610391558127,"msg":"MangaUpdates::get ~ Execution time: 4345ms"},{"d":1610391560758,"msg":"AnimePlanet::get ~ Execution time: 6974ms"},{"d":1610391560821,"msg":"Kitsu::get ~ Execution time: 7039ms"},{"d":1610391904194,"msg":"Anilist::get ~ Execution time: 2367ms"},{"d":1610391906032,"msg":"MangaUpdates::get ~ Execution time: 4207ms"},{"d":1610391908945,"msg":"AnimePlanet::get ~ Execution time: 7120ms"},{"d":1610391909999,"msg":"Kitsu::get ~ Execution time: 8173ms"},{"d":1610391960928,"msg":"Anilist::get ~ Execution time: 2525ms"},{"d":1610391962702,"msg":"MangaUpdates::get ~ Execution time: 4301ms"},{"d":1610391963771,"msg":"Kitsu::get ~ Execution time: 5369ms"},{"d":1610392072905,"msg":"Anilist::get ~ Execution time: 2477ms"},{"d":1610392074564,"msg":"MangaUpdates::get ~ Execution time: 4136ms"},{"d":1610392080323,"msg":"Kitsu::get ~ Execution time: 9896ms"},{"d":1610392114816,"msg":"Anilist::get ~ Execution time: 2857ms"},{"d":1610392116013,"msg":"MangaUpdates::get ~ Execution time: 4058ms"},{"d":1610392120709,"msg":"Kitsu::get ~ Execution time: 8752ms"},{"d":1610392573814,"msg":"Anilist::get ~ Execution time: 2350ms"},{"d":1610392575562,"msg":"MangaUpdates::get ~ Execution time: 4100ms"},{"d":1610392577886,"msg":"Kitsu::get ~ Execution time: 6425ms"},{"d":1610392769564,"msg":"Anilist::get ~ Execution time: 1752ms"},{"d":1610392770771,"msg":"MangaUpdates::get ~ Execution time: 2960ms"},{"d":1610392779458,"msg":"Kitsu::get ~ Execution time: 11647ms"},{"d":1610392796438,"msg":"Anilist::get ~ Execution time: 2414ms"},{"d":1610392797772,"msg":"MangaUpdates::get ~ Execution time: 3748ms"},{"d":1610392799489,"msg":"Kitsu::get ~ Execution time: 5465ms"},{"d":1610393255819,"msg":"Anilist::get ~ Execution time: 2181ms"},{"d":1610393257192,"msg":"MangaUpdates::get ~ Execution time: 3555ms"},{"d":1610393264609,"msg":"Kitsu::get ~ Execution time: 10970ms"},{"d":1610393274724,"msg":"Anilist::get ~ Execution time: 2686ms"},{"d":1610393276074,"msg":"MangaUpdates::get ~ Execution time: 4038ms"},{"d":1610393283726,"msg":"Kitsu::get ~ Execution time: 11689ms"}],"options":{"hideHigher":false,"hideLower":true,"hideLast":true,"highlight":true,"groupTitlesInLists":true,"thumbnail":true,"originalThumbnail":true,"progressInThumbnail":true,"thumbnailMaxHeight":80,"separateLanguages":true,"favoriteLanguage":"all","saveOpenedChapters":true,"chaptersSaved":100,"saveOnlyHigher":true,"saveOnlyNext":false,"confirmChapter":false,"updateOnlyInList":true,"iconsSilentAfterSync":false,"linkToServices":true,"overviewMainOnly":true,"autoSync":true,"mdUpdateSyncDex":true,"biggerHistory":false,"chapterStatus":false,"notifications":false,"errorNotifications":true,"useMochi":true,"acceptLowScore":false,"updateMD":false,"checkOnStartup":true,"checkOnStartupMainOnly":true,"checkOnStartupCooldown":30,"silentUpdate":false,"services":["al","mal","mu","ku","ap"],"noReloadStatus":true,"tokens":{"anilistToken":"set","kitsuToken":"set","kitsuUser":"set"},"colors":{"highlights":["rgba(22, 65, 87, 0.8)","rgba(28, 103, 141, 0.8)","rgba(28, 135, 141, 0.8)"],"nextChapter":"rgba(199, 146, 2, 0.9)","higherChapter":"rgba(199, 146, 2, 0.1)","lowerChapter":"rgba(180, 102, 75, 0.4)","openedChapter":"rgba(28, 135, 141, 0.4)"},"version":0.2,"subVersion":0,"mainService":"al"},"saveSync":{"service":"Dropbox","token":"set","expires":1610385992449,"refresh":"set"}}

Additional context A manga where this is an issue can be found here https://mangadex.org/title/3680/k-on-anthology-comic

As i said, not quite sure if it is feasible to track 2 separate systems. i suppose something like: if volume number is higher than 1 and the chapter number is 1 AND there exists a chapter with volume number 1 and chapter 1. treat the chapter with the higher volume number as the latest chapter.

but you could probably figure out a more elegant solution😁

Glagan commented 3 years ago

Related to #21.

I'm aware of this, and like I said in #21 in my opinion it's a really bad way to count chapters, but I'm fixing this and was actually working on it.
I'm going to add an offset that will be 0 by default and I will try to detect when there is chapters like Volume 2 Chapter 1 and increment the offset by the amount of chapters there was in the previous volume, it will probably not be perfect for every situations but that's the idea I have for the moment.

cpiber commented 3 years ago

I think you'll run into problems with that approach if someone goes back. Maybe if you expanded that to a list of chapter for each volume (and a current running total for unfinished volumes), it should hold better against that.

Glagan commented 3 years ago

Duplicate of #21.