GET_CATEGORIES_LIBRARY, GET_CATEGORIES_SETTINGS share the same query key in the cache. However, both select different fields.
When cleaning up the database in the library settings, the SETTINGS query is active and refetches due to the cache eviction.
This then wrote the query back into the cache pointing to the existing CategoryType fragments in the cache.
The problem was that the SETTINGS query selects fewer fields than the LIBRARY query.
Due to the query now existing again in the cache, the LIBRARY query was not refetched.
Instead, it used the cached category fragments, which still included the outdated LIBRARY fields from before the eviction
In case clearing the download queue caused the subscription to omit items, the received items did not get removed from the cache.
This resulted in the DownloadStateIndicator to show outdated download info.
The potential partial response wasn't handled properly which resulted in apollo not updating the cache for the successful part.
E.g., chapter reload failed, and manga refresh succeeded. The manga data of the response should have updated the manga in the cache.
The native language code returned by the browser could be a code that is not included in the defined ISOLanguages object. E.g. "en-GB" while the object only has "en".
This caused the "English" browse language to not be able to get selected as an allowed language.
* show only the last chapter red
* fix : case when a load has not enough different manga
* fix : problems with the load of chapters
* Fix "filteredOutAllItemsOfFetchedPage" determination
* Remove logic to load until scrollbar appears
`Virtuoso` (list) doesn't have the same issue as `GridVirtuoso`, i.e. `endReached` gets called on initial render in case there weren't enough items
* Increase history page size (50 -> 150)
Due to the new filtering, it can take forever to load the initial pages/next pages
* Use lodash "uniqBy" for filtering
* Update changelog
---------
Co-authored-by: schroda <50052685+schroda@users.noreply.github.com>
With 4f4ca98290 the chapter queries are getting evicted to trigger a refetch. This caused the reader to enter the loading state, which messed up the current reading position.
When resuming a migration search, it was possible that an entry search was partially done.
In this case, when retrying, the sources with search results were not retried.
If all retried source searches failed, it was incorrectly treated as if all source searches failed, since it only considers the actually executed search sources, which only included failed/pending sources.