Fix incorrect timezone on some devices; bump version #251
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The timezone dependency Anki uses recently changed the way they gather timezone info. They used to rely on a libc call, which could cause crashes if env vars happened to be modified in another thread at the same, so they decided to reimplement the functionality in Rust instead to address a CVE: chronotope/chrono#602
Android appeared to be supported (https://github.com/chronotope/chrono/releases/tag/v0.4.21), but it seems that this only applies to some devices, or was not tested. On a Pixel 2/API 31 sim, the /system/usr/share/zoneinfo path it refers to exists, but it does not have the individual timezone files that the library expects to find.
Until a better solution can be found, this commit reverts to an earlier version of the library where TZ lookup was working. It depends on ankidroid/anki#7
Edit: issue reported on chronotope/chrono#922