mirror of
https://github.com/ankitects/anki.git
synced 2025-09-19 14:32:22 -04:00
![]() The stats table was how the early non-SQL versions of Anki kept track of statistics, before there was a revision log. It is being removed because: - it's not possible to show the statistics for a subset of the deck - it can't meaningfully be copied on import/export - it makes it harder to implement sync merging Implications: - graphs and deck stats roughly 1.5-3x longer than before, but we'll have the ability to generate stats for subsections of the deck, and it's not time critical code - people who've been using anki since the very early days may notice a drop in statistics, as early repetitions were recorded in the stats table but the revlog didn't exist at that point. - due bugs in old syncs and imports/exports, the stats and revlog may not match numbers exactly To remove it, the following changes have been made: - the graphs and deck stats now generate their data entirely from the revlog - there are no stats to keep track of how many cards we've answered, so we pull that information from the revlog in reset() - we remove _globalStats and _dailyStats from the deck - we check if a day rollover has occurred using failedCutoff instead - we remove the getStats() routine - the ETA code is currently disabled - timeboxing routines use repsToday instead of stats - remove stats delete from export - remove stats table and index in upgrade - remove stats syncing and globalStats refresh pre-sync - remove stats count check in fullSync check, which was redundant anyway - update unit tests Also: - newCountToday -> newCount, to bring it in line with revCount&failedCount which also reflect the currently due count - newCount -> newAvail - timeboxing routines renamed since the old names were confusingly similar to refreshSession() which does something different Todo: - update newSeenToday & repsToday when answering a card - reimplement eta |
||
---|---|---|
.. | ||
deck | ||
importing | ||
syncing/media-tests | ||
__init__.py | ||
shared.py | ||
test_deck.py | ||
test_exporting.py | ||
test_importing.py | ||
test_media.py | ||
test_sync.py | ||
test_utils.py |