Closed hackel closed 4 years ago
Ah tanks for reporting. That’s a bad one, I’ll try to get back to it rapidly.
~100KB seems to be the upper bound indeed. For reference it is explained here:
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/storage/sync
The easiest way is to handle this issue is to fall back to local storage whenever this happens. Other approaches (that could also be complements to this approach):
How do you see the size of the add-on in about:sync
? I can’t seem to find it. 100KB seems very high anyway, as we only store 3 keys (configuration, rules, default_rules) and key-value pairs each have a maximal size of 8KB. As default rules are around 3KB right now, it is much more likely that we are running into the single-key 8KB limit.
While that makes things a little easier to manage (we don’t need to reserve change in the sync storage for potential configuration changes for example), it also makes compressing a less likely option.
Apologies for bringing up this old issue, but this is happening when I try to use CleanLinks in Firefox.
Thanks for reporting @nattofriends. We’re using local storage now, at least as backup, so it shouldn’t be the exact same issue. Can you open a new one with:
jq -c . clean_links_rules.json | wc -c
which counts the bytes in the file after stripping whitespace. (Or alternately something like paste -s clean_links_rules.json | tr -d ' \t' | wc -c
.) For me this is currently around 32K.about:debugging
, then “This Firefox” on the left, and then click the “Inspect” button from the CleanLinks extension box.Sorry, I can create rules fine, but I can't sync them.
Yes so that would mean you probably hit one of the size limits, not sure which though. The requested info above would be useful to figure that out.
I am unable to create new CleanLinks rules (Firefox 79). The browser log shows a QuotaExceededError. I checked
about:sync
and discovered that CleanLinks is only using 10352 bytes. I wasn't able to discover much current information about what the limits are, but I remember uBlock Origin citing this as a reason it only implements manual syncing.In any case, it would be better if the extension still allowed exceptions to be added locally and warned the user that syncing would no longer succeed. Currently I have no choice but to disable it entirely.
This is what I see whenever I click on the add to whitelist button: