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] Service export does not work reliably and/or doesn't acknowledge errors. #53

Open Jerrk opened 3 years ago

Jerrk commented 3 years ago

Describe the bug I was looking through some lists on anilist to find new stuff to read when i came over a bunch of manga that i am 100% that i've already read.

I then went to their MD title page and sure enough the history on MD seems correct. As i entered the title page syncdex then updated anilist correctly. The thing is i know that i've imported mangadex to my local save, and i know that i've exported that local save to anilist without any obvious errors. And that should mean that my anilist progress should be the same as the MD one right?

I then did another service export to anilist and this time a couple more titles were synced over but i still found multiple that have a status on MD that was not exported to anilist

To Reproduce Steps to reproduce the behavior: import mangadex to local save export to anilist service see titles on local save missing from anilist

Expected behavior (optional) The export should reliably keep the service up to date, and if an update fails for some reason an error message should appear.

Screenshots

Shows up under local save and as you can see anilist entry is missing. even though as soon as i enter the title page on MD it gets added to anilist.

has a status on MD

No errors during export

missing in anilist

Browser Firefox 88.0a1 (2021-03-15) (64-bit)

Options and logs

{"import":1615879559914,"lastSync":1615895939000,"logs":[{"d":1615802821054,"msg":"Forced, uploading save."},{"d":1615802824168,"msg":"Synced your save with Dropbox"},{"d":1615802894822,"msg":"Forced, uploading save."},{"d":1615802897263,"msg":"Synced your save with Dropbox"},{"d":1615803002334,"msg":"Forced, uploading save."},{"d":1615803005306,"msg":"Synced your save with Dropbox"},{"d":1615803078477,"msg":"Forced, uploading save."},{"d":1615803080341,"msg":"Synced your save with Dropbox"},{"d":1615803172532,"msg":"Forced, uploading save."},{"d":1615803175356,"msg":"Synced your save with Dropbox"},{"d":1615803265501,"msg":"Forced, uploading save."},{"d":1615803268224,"msg":"Synced your save with Dropbox"},{"d":1615805356230,"msg":"Forced, uploading save."},{"d":1615805359454,"msg":"Synced your save with Dropbox"},{"d":1615805849255,"msg":"Forced, uploading save."},{"d":1615805852163,"msg":"Synced your save with Dropbox"},{"d":1615806188794,"msg":"Forced, uploading save."},{"d":1615806191730,"msg":"Synced your save with Dropbox"},{"d":1615806684003,"msg":"Forced, uploading save."},{"d":1615806686797,"msg":"Synced your save with Dropbox"},{"d":1615811193808,"msg":"Applied patch version 0.3.4"},{"d":1615811193823,"msg":"Updated from version 0.3.3 to 0.3.4"},{"d":1615811255561,"msg":"Forced, uploading save."},{"d":1615811258327,"msg":"Synced your save with Dropbox"},{"d":1615811431648,"msg":"Forced, uploading save."},{"d":1615811435291,"msg":"Synced your save with Dropbox"},{"d":1615811748038,"msg":"Forced, uploading save."},{"d":1615811750949,"msg":"Synced your save with Dropbox"},{"d":1615811986217,"msg":"Forced, uploading save."},{"d":1615811988972,"msg":"Synced your save with Dropbox"},{"d":1615812433396,"msg":"Forced, uploading save."},{"d":1615812436664,"msg":"Synced your save with Dropbox"},{"d":1615812590536,"msg":"Forced, uploading save."},{"d":1615812593654,"msg":"Synced your save with Dropbox"},{"d":1615813838761,"msg":"Forced, uploading save."},{"d":1615813842084,"msg":"Synced your save with Dropbox"},{"d":1615814343423,"msg":"Forced, uploading save."},{"d":1615814345814,"msg":"Synced your save with Dropbox"},{"d":1615814431143,"msg":"Forced, uploading save."},{"d":1615814434148,"msg":"Synced your save with Dropbox"},{"d":1615814694113,"msg":"Forced, uploading save."},{"d":1615814696946,"msg":"Synced your save with Dropbox"},{"d":1615815097545,"msg":"Forced, uploading save."},{"d":1615815101098,"msg":"Synced your save with Dropbox"},{"d":1615815372268,"msg":"Forced, uploading save."},{"d":1615815375158,"msg":"Synced your save with Dropbox"},{"d":1615819251271,"msg":"Forced, uploading save."},{"d":1615819254178,"msg":"Synced your save with Dropbox"},{"d":1615819987906,"msg":"Forced, uploading save."},{"d":1615819990867,"msg":"Synced your save with Dropbox"},{"d":1615820253618,"msg":"Forced, uploading save."},{"d":1615820257357,"msg":"Synced your save with Dropbox"},{"d":1615820413817,"msg":"Forced, uploading save."},{"d":1615820416731,"msg":"Synced your save with Dropbox"},{"d":1615820830584,"msg":"Forced, uploading save."},{"d":1615820833433,"msg":"Synced your save with Dropbox"},{"d":1615821017583,"msg":"Forced, uploading save."},{"d":1615821020470,"msg":"Synced your save with Dropbox"},{"d":1615821142276,"msg":"Forced, uploading save."},{"d":1615821145031,"msg":"Synced your save with Dropbox"},{"d":1615821202275,"msg":"Forced, uploading save."},{"d":1615821204810,"msg":"Synced your save with Dropbox"},{"d":1615821551376,"msg":"Forced, uploading save."},{"d":1615821554524,"msg":"Synced your save with Dropbox"},{"d":1615821675386,"msg":"Forced, uploading save."},{"d":1615821678621,"msg":"Synced your save with Dropbox"},{"d":1615821860736,"msg":"Save already synced with Dropbox"},{"d":1615821861685,"msg":"Importing lists"},{"d":1615821861739,"msg":"Importing Anilist"},{"d":1615821866747,"msg":"Imported Anilist in 5008ms"},{"d":1615821866774,"msg":"Done Importing lists"},{"d":1615821927204,"msg":"Forced, uploading save."},{"d":1615821936412,"msg":"Synced your save with Dropbox"},{"d":1615825627909,"msg":"Forced, uploading save."},{"d":1615825630750,"msg":"Synced your save with Dropbox"},{"d":1615826064661,"msg":"Forced, uploading save."},{"d":1615826068672,"msg":"Synced your save with Dropbox"},{"d":1615826846788,"msg":"Forced, uploading save."},{"d":1615826849809,"msg":"Synced your save with Dropbox"},{"d":1615827074208,"msg":"Forced, uploading save."},{"d":1615827077335,"msg":"Synced your save with Dropbox"},{"d":1615827229315,"msg":"Forced, uploading save."},{"d":1615827232311,"msg":"Synced your save with Dropbox"},{"d":1615827415074,"msg":"Forced, uploading save."},{"d":1615827417960,"msg":"Synced your save with Dropbox"},{"d":1615827561041,"msg":"Forced, uploading save."},{"d":1615827564183,"msg":"Synced your save with Dropbox"},{"d":1615827628724,"msg":"Forced, uploading save."},{"d":1615827631994,"msg":"Synced your save with Dropbox"},{"d":1615827702374,"msg":"Forced, uploading save."},{"d":1615827704868,"msg":"Synced your save with Dropbox"},{"d":1615829541403,"msg":"Forced, uploading save."},{"d":1615829544339,"msg":"Synced your save with Dropbox"},{"d":1615829615930,"msg":"Forced, uploading save."},{"d":1615829618862,"msg":"Synced your save with Dropbox"},{"d":1615829686312,"msg":"Forced, uploading save."},{"d":1615829689332,"msg":"Synced your save with Dropbox"},{"d":1615829756897,"msg":"Forced, uploading save."},{"d":1615829759920,"msg":"Synced your save with Dropbox"},{"d":1615829820130,"msg":"Forced, uploading save."},{"d":1615829822799,"msg":"Synced your save with Dropbox"},{"d":1615832555478,"msg":"Forced, uploading save."},{"d":1615832558337,"msg":"Synced your save with Dropbox"},{"d":1615832638354,"msg":"Forced, uploading save."},{"d":1615832641523,"msg":"Synced your save with Dropbox"},{"d":1615879553497,"msg":"Save already synced with Dropbox"},{"d":1615879553913,"msg":"Importing lists"},{"d":1615879553923,"msg":"Importing Anilist"},{"d":1615879559893,"msg":"Imported Anilist in 5970ms"},{"d":1615879559931,"msg":"Done Importing lists"},{"d":1615879620381,"msg":"Forced, uploading save."},{"d":1615879623359,"msg":"Synced your save with Dropbox"},{"d":1615879908601,"msg":"Forced, uploading save."},{"d":1615879911515,"msg":"Synced your save with Dropbox"},{"d":1615879969326,"msg":"Forced, uploading save."},{"d":1615879971937,"msg":"Synced your save with Dropbox"},{"d":1615881515072,"msg":"Forced, uploading save."},{"d":1615881517461,"msg":"Synced your save with Dropbox"},{"d":1615881831292,"msg":"Forced, uploading save."},{"d":1615881834192,"msg":"Synced your save with Dropbox"},{"d":1615882091201,"msg":"Forced, uploading save."},{"d":1615882094469,"msg":"Synced your save with Dropbox"},{"d":1615882287494,"msg":"Forced, uploading save."},{"d":1615882290279,"msg":"Synced your save with Dropbox"},{"d":1615882459810,"msg":"Forced, uploading save."},{"d":1615882462637,"msg":"Synced your save with Dropbox"},{"d":1615883532958,"msg":"Forced, uploading save."},{"d":1615883535886,"msg":"Synced your save with Dropbox"},{"d":1615883837846,"msg":"Forced, uploading save."},{"d":1615883840886,"msg":"Synced your save with Dropbox"},{"d":1615884003653,"msg":"Forced, uploading save."},{"d":1615884006836,"msg":"Synced your save with Dropbox"},{"d":1615884178236,"msg":"Forced, uploading save."},{"d":1615884181200,"msg":"Synced your save with Dropbox"},{"d":1615889481523,"msg":"Forced, uploading save."},{"d":1615889484748,"msg":"Synced your save with Dropbox"},{"d":1615889972813,"msg":"Forced, uploading save."},{"d":1615889975706,"msg":"Synced your save with Dropbox"},{"d":1615890261880,"msg":"Forced, uploading save."},{"d":1615890264604,"msg":"Synced your save with Dropbox"},{"d":1615890372586,"msg":"Forced, uploading save."},{"d":1615890375680,"msg":"Synced your save with Dropbox"},{"d":1615890434802,"msg":"Forced, uploading save."},{"d":1615890437664,"msg":"Synced your save with Dropbox"},{"d":1615890633895,"msg":"Forced, uploading save."},{"d":1615890636863,"msg":"Synced your save with Dropbox"},{"d":1615890848439,"msg":"Forced, uploading save."},{"d":1615890851465,"msg":"Synced your save with Dropbox"},{"d":1615890908626,"msg":"Forced, uploading save."},{"d":1615890911748,"msg":"Synced your save with Dropbox"},{"d":1615890977494,"msg":"Forced, uploading save."},{"d":1615890980448,"msg":"Synced your save with Dropbox"},{"d":1615891078543,"msg":"Forced, uploading save."},{"d":1615891081501,"msg":"Synced your save with Dropbox"},{"d":1615891163065,"msg":"Forced, uploading save."},{"d":1615891166886,"msg":"Synced your save with Dropbox"},{"d":1615891230866,"msg":"Forced, uploading save."},{"d":1615891233765,"msg":"Synced your save with Dropbox"},{"d":1615891312631,"msg":"Forced, uploading save."},{"d":1615891316344,"msg":"Synced your save with Dropbox"},{"d":1615891392889,"msg":"Forced, uploading save."},{"d":1615891396089,"msg":"Synced your save with Dropbox"},{"d":1615891455249,"msg":"Forced, uploading save."},{"d":1615891459371,"msg":"Synced your save with Dropbox"},{"d":1615891544737,"msg":"Forced, uploading save."},{"d":1615891547539,"msg":"Synced your save with Dropbox"},{"d":1615892410674,"msg":"Forced, uploading save."},{"d":1615892413271,"msg":"Synced your save with Dropbox"},{"d":1615892494844,"msg":"Forced, uploading save."},{"d":1615892498293,"msg":"Synced your save with Dropbox"},{"d":1615892628143,"msg":"Forced, uploading save."},{"d":1615892630757,"msg":"Synced your save with Dropbox"},{"d":1615892690949,"msg":"Forced, uploading save."},{"d":1615892694017,"msg":"Synced your save with Dropbox"},{"d":1615892951063,"msg":"Forced, uploading save."},{"d":1615892954216,"msg":"Synced your save with Dropbox"},{"d":1615893036264,"msg":"Forced, uploading save."},{"d":1615893039446,"msg":"Synced your save with Dropbox"},{"d":1615893110530,"msg":"Forced, uploading save."},{"d":1615893113287,"msg":"Synced your save with Dropbox"},{"d":1615893179737,"msg":"Forced, uploading save."},{"d":1615893182639,"msg":"Synced your save with Dropbox"},{"d":1615893252024,"msg":"Forced, uploading save."},{"d":1615893254844,"msg":"Synced your save with Dropbox"},{"d":1615893326948,"msg":"Forced, uploading save."},{"d":1615893329874,"msg":"Synced your save with Dropbox"},{"d":1615893858418,"msg":"Forced, uploading save."},{"d":1615893861225,"msg":"Synced your save with Dropbox"},{"d":1615894014037,"msg":"Forced, uploading save."},{"d":1615894015949,"msg":"Synced your save with Dropbox"},{"d":1615894599658,"msg":"Forced, uploading save."},{"d":1615894602531,"msg":"Synced your save with Dropbox"},{"d":1615894831590,"msg":"Forced, uploading save."},{"d":1615894834531,"msg":"Synced your save with Dropbox"},{"d":1615895568033,"msg":"Forced, uploading save."},{"d":1615895571027,"msg":"Synced your save with Dropbox"},{"d":1615895744980,"msg":"Forced, uploading save."},{"d":1615895748223,"msg":"Synced your save with Dropbox"},{"d":1615895936122,"msg":"Forced, uploading save."},{"d":1615895939713,"msg":"Synced your save with Dropbox"}],"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":true,"confirmChapter":true,"updateOnlyInList":true,"iconsSilentAfterSync":false,"saveOnLastPage":true,"linkToServices":true,"overviewMainOnly":false,"mdUpdateSyncDex":true,"biggerHistory":true,"chapterStatus":false,"notifications":false,"displaySyncStart":false,"displayProgressUpdated":false,"errorNotifications":false,"errorDuration":1000,"infoDuration":4000,"successDuration":4000,"useMochi":false,"acceptLowScore":false,"updateMD":true,"updateMDProgress":true,"checkOnStartup":true,"checkOnStartupMainOnly":true,"checkOnStartupCooldown":10,"silentUpdate":false,"logLevel":0,"services":["al","mal","ku","mu"],"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.3,"subVersion":4,"autoSync":true,"mainService":"al"},"saveSync":{"service":"Dropbox","token":"set","expires":1615908412720,"refresh":"set"}}

Additional context it feels like a super weird error because i know i read solo leveling every week on MD but even it was missing from anilist before i did another export.

And im again 100% sure i read "The New Gate" on MD in the past week and i know that i am caught up on it. but neither reading it earlier in the week or exporting to anilist has added it to my list on anilist

It even missed out on Naruto which i completed reading years ago but somehow didn't get exported as completed to anilist.

Would this perhaps be a problem with Mochi? i know i turned it off couple days/weeks ago because it just kept throwing me the wrong service id for multiple titles and tagging them as complete when they were not.

if you need me to do any more testing i'm all ears

Glagan commented 3 years ago

Hum this totally seems like a problem with Mochi.
The Import/Export rely entirely on it, even when disabled, since I can't make a request to MangaDex to try to get the Service IDs, because it would be slow and send a lot of requests.

If you only do MangaDex Import > Anilist Export, the only source of IDs is Mochi, and for Dr. Stone for example, you can see that Mochi only find 2: image And Anilist isn't in here, so it would never be exported.
When you visit the Title page it merge the MangaDex links with Mochi (if enabled, if not it just take the MangaDex one).

I'm going to look if I don't erase MangaDex links when doing an Import/Export with the "Mochi" option enabled before starting it.
Did you enable it when you Imported/Exported ?

Also, If I understand correctly, you read somewhere else that updates MangaDex and then Import it sometimes ?
If so, that's not really how I intended the feature to work, I made this more as a one time thing to "start" your save, or if you're reading on Tachiyomi with sync enabled on it, and the save should always be up to date without needing to Import/Export manually sometimes.

Also this could just be a bug, but if it is it's a silent one since if a request failed it would probably log it, hum, maybe not on a bad request. Error logging still need a few improvements.

Anyway, for Mochi, I still need to make (a lot of) improvements but I'm busy working on other things and I can't do everything I want to, but it will come.

Jerrk commented 3 years ago

I'm going to look if I don't erase MangaDex links when doing an Import/Export with the "Mochi" option enabled before starting it. Did you enable it when you Imported/Exported ?

I would hazard a guess that my MD import was indeed using mochi since it was enabled by default.

On the "the New Gate" example though i actually read the latest chapter 5 days ago and got redirected to the title page. Shouldn't the anilist tracking have been updated at that point since anilist does have an entry in the default md title page even if i was using mochi (since they wouldve been combined since mochi is missing the "The New Gate" entry.)?

Seems like there is still an issue there. I know that i went to the title page since when the release showed up in my follows i hadn't read the latest 3-4 chapters so i navigated to the title page. Unless ofc anilist was down in this situation

Also, If I understand correctly, you read somewhere else that updates MangaDex and then Import it sometimes ? If so, that's not really how I intended the feature to work, I made this more as a one time thing to "start" your save, or if you're reading on Tachiyomi with sync enabled on it, and the save should always be up to date without needing to Import/Export manually sometimes.

When the functionality was added to import/export the "local save" reading progress to mangadex i did that once. i'm not doing it regularly. I'm using the Neko fork to read on mobile and the syncing seems to work somewhat but that will probably be a separate issue when i get around to going through it if it starts annoying me too much 😁. though the "set latest" option in the follows page mostly takes care of that for me 🙂

cpiber commented 3 years ago

I noticed a similar problem. Yesterday I imported from Kitsu on a new device and chapters from random manga over at least the last month were either not synced at all or not up-to-date. At least one title I set to dropped but apparently that wasn't synced.

Glagan commented 3 years ago

There must be a silent error somewhere then, I will try to log the Bad Requests and we will see, because it didn't happen to me yet...

Are you sure the requests actually completed, sometimes for Anime-Planet and Kitsu the request completly hangs for a solid 20-30 seconds before completing or failing, this error is catched since if it fails it fails completly.
If the request did fail it won't retry, it's also a another feature I have yet to implement...

Anyway I'll do some more tests and try to figure out what's happening.