Commit graph

244 commits

Author SHA1 Message Date
Jarrett Ye
9b7ff46fb2 Fix/ignore revlogs before Forget entry (#3002)
* Fix/ignore revlogs before Forget entry

* Update weights.rs
2024-02-12 16:09:39 +10:00
Abdo
739e0196e9 Keep previous FSRS parameters if they get worse when optimizing (#2996)
* Update to fsrs-rs 0.3.0

* Keep previous FSRS parameters if they get worse when optimizing
2024-02-11 16:26:04 +10:00
Abdo
c828c8d1e6 Do not reset original_due when card stays in filtered deck (#2988) 2024-02-07 13:27:54 +10:00
Jarrett Ye
f76763b10e update FSRS to v0.2.0 (#2977)
* update FSRS to v0.2.0

* update comments

* ./ninja fix:minilints

* 1000 -> 400 in translation (dae)
2024-01-30 16:27:12 +10:00
Damien Elmes
6709e022fc Use card.reps - 1 when calculating fuzz (#2933)
https://github.com/open-spaced-repetition/fsrs4anki-helper/issues/343#issuecomment-1879584562

https://forums.ankiweb.net/t/reschedule-is-inconsistent-with-normal-schedule-in-fuzz/39363
2024-01-09 12:26:46 +10:00
Damien Elmes
ee05094e57 Check review count up front
https://forums.ankiweb.net/t/inconsistent-number-of-reviews-when-clicking-optimize/39275/7
2024-01-08 14:05:09 +10:00
Damien Elmes
f1009d8d44 Update to Rust 1.75 2024-01-05 14:28:23 +10:00
Damien Elmes
bb71e9b18c Work around test failure on Windows 2023-12-28 18:43:28 +10:00
Damien Elmes
f94a129f5e Pull in FSRS fix for pretrain 2023-12-28 18:15:44 +10:00
RumovZ
9bebe2d72d Fix new cards from parent decks being gathered (#2907)
Fixes #2906.
2023-12-24 20:04:28 +10:00
Jarrett Ye
9af073cd0e Update to FSRS-4.5 (#2901) 2023-12-22 16:17:40 +10:00
Damien Elmes
08a7b3ccab Update FSRS
We're on the commit prior to
https://github.com/open-spaced-repetition/fsrs-rs/pull/141, as that is
going to require work that will need to wait until after 23.12
2023-12-22 14:02:39 +10:00
Damien Elmes
e5fa4791a7 Use seconds instead of minutes for preview delay
Since this is not compatible with older clients, preview_delay has been
brought back so the configured value will still sync.
2023-12-21 11:02:29 +10:00
Damien Elmes
3b3d9444b8 Calculate elapsed days for intraday learning cards
https://forums.ankiweb.net/t/anki-23-12-beta/37771/109
2023-12-13 10:18:29 +10:00
Damien Elmes
935f50cfff Don't use SM2 memory state when cards are manually introduced
https://github.com/open-spaced-repetition/fsrs4anki/issues/540#issuecomment-1848833376
2023-12-12 09:40:31 +10:00
Damien Elmes
f4acaa17cd Update FSRS for new default weights 2023-12-08 13:54:31 +10:00
Damien Elmes
629ff330a2 Allow user to configure hard/good buttons when rescheduling off
Closes #2858
2023-12-08 11:04:34 +10:00
Damien Elmes
a1c2009c0e Treat cards with no reps like new cards
https://github.com/open-spaced-repetition/fsrs4anki/issues/540#issuecomment-1837780217
2023-12-07 14:56:39 +10:00
Damien Elmes
75681810b0 Update to latest fsrs-rs
The extra entries in Cargo.lock and licenses.json are mostly spurious,
and caused by https://github.com/tracel-ai/burn/pull/1025#issuecomment-1842006690
2023-12-07 14:13:58 +10:00
Gustaf-C
908f77ca53 Include elapsed_secs in learning card state (#2862)
* Include elapsed_time in learning card state

* Suggested updates, elapsed_time -> elapsed_secs

* Remove outdated comment
2023-12-06 16:40:22 +10:00
Jarrett Ye
c54ae4bee1 skip revlog with time = 0 when calc recall cost (#2870)
* skip revlog with time = 0 when calc recall cost

* Update retention.rs
2023-12-05 13:08:34 +10:00
Damien Elmes
cb39d40f9f Remove some v3 checks 2023-11-28 14:06:49 +10:00
Damien Elmes
ff3cdaa4cf Suppress manual revlog entry if the previous entry was also manual
Means we lose some detail in the history, but should reduce the
collection bloat caused by a user experimenting with reschedule multiple
times in a short period, when they don't restore from backup afterwards.

https://forums.ankiweb.net/t/possible-syncing-limitation-by-fsrs-manual-scheduling-data-accumulation/37610
2023-11-27 11:24:31 +10:00
Damien Elmes
1021502377 Add option to calculate all weights at once 2023-11-27 11:24:31 +10:00
Damien Elmes
91d2822358 Update to latest FSRS 2023-11-27 11:24:31 +10:00
Jarrett Ye
e88866acc3 don't convert from sm2 when ivl = 0 (#2849) 2023-11-26 13:14:31 +10:00
Damien Elmes
a64624a3d6 Use note order when previewing
https://forums.ankiweb.net/t/card-in-disorder/37534/2
2023-11-24 15:01:14 +10:00
Damien Elmes
89fe5f710c Include next_day timestamp in revlog export 2023-11-23 14:46:48 +10:00
Damien Elmes
70900e91d0 Add a method for exporting revlogs in binary 2023-11-22 11:57:40 +10:00
Damien Elmes
e6a7a8ff4a When training with the whole collection, include deleted card history 2023-11-22 10:53:08 +10:00
Damien Elmes
c97205a535 Fix FSRS retrievability sorting issues
- We must use interval, not stability to infer days_elapsed
- We must use original due date in a filtered deck
- Use retrievability in filtered deck sorting, not just regular sorting
2023-11-20 13:59:45 +10:00
Damien Elmes
2da97e4720 Fix cards showing up due in the past in a filtered deck
Caused by using due instead of original_due when card was in learning.
I think the original goal of that code was to ignore the learning timestamp
and show the next review date instead, but it's both simpler and more
intuitive to show the learning date instead.
2023-11-20 10:52:13 +10:00
Abdo
fc5b38567b Fix filtered deck ordering of intraday learning cards and reviews (#2828)
* Fix filtered deck ordering of intraday learning cards and reviews

* Handle rollover correctly
2023-11-14 15:08:36 +10:00
RumovZ
134793835f Allow applying limits of inactive parents (#2824)
* Allow applying limits of inactive parents

* Tweak label/help text (dae)
2023-11-13 14:30:19 +10:00
Damien Elmes
b989c98639 Update fsrs-rs 2023-11-13 10:13:20 +10:00
Damien Elmes
a2adbf0bf2 Expose fuzz delta for FSRS add-on 2023-11-06 12:27:53 +10:00
Damien Elmes
4cbb9a36d2 Remove redundant FSRS revlog code
Closes https://github.com/open-spaced-repetition/fsrs-rs/issues/113
2023-11-06 09:44:07 +10:00
Gustaf-C
5ff618b7ac Allow creation of empty filtered decks (#2788)
* Add new button to UI

* Add bool to allow creating empty filtered in back end

* Implement logic into front end for passing on bool

* Hide option on old decks

* Show option again if any settings are changed

* Revert "Show option again if any settings are changed"

This reverts commit 094acd9c65936823fa206594da5c1f3e4eb09248.

* Revert "Hide option on old decks"

This reverts commit d20a9a240b4fd85d080e8cc52d94318416ca753f.

* Update string

* Update ftl/core/decks.ftl

---------

Co-authored-by: Damien Elmes <dae@users.noreply.github.com>
2023-11-05 12:23:14 +10:00
Damien Elmes
aa5ccad26e Fix panic when enabling FSRS with add-on-rescheduled cards
https://forums.ankiweb.net/t/error-upon-fsrs-activation-on-anki-23-10/36488
2023-11-03 10:07:47 +10:00
Damien Elmes
695bb9e291 Update to latest fsrs 2023-10-18 09:03:23 +10:00
Damien Elmes
e41e7cc508 Fix stuttering in FSRS progress display 2023-10-14 14:03:20 +10:00
Abdo
10966394fd Remove v1/v2 support from the backend (#2727)
* Remove v1/v2 support from deck list

* Remove v1/v2 support from most routines and show error

* Remove scheduler_version from preferences

* Fix formatting

* Remove v1/v2 conditionals from Python code

* Fix legacy importer

* Remove legacy hooks

* Add missing scheduler checks

* Remove V2 logic from deck options screen

* Remove the review_did_undo hook

* Restore ability to open old options with shift (dae)
2023-10-14 10:50:59 +10:00
Damien Elmes
ec8990dc11 Use sm2 retention when deriving memory state
Closes #2702
2023-10-13 10:37:35 +10:00
Damien Elmes
bd6f0d2d92 Fix 'PanicException: command requires weights to be set' 2023-10-09 18:39:18 +10:00
Damien Elmes
6394a449bc Fix 'Expression tree is too large' when user has many decks
+ Allow 'did:' searches to match multiple decks at once
2023-10-09 18:39:18 +10:00
Damien Elmes
5977937800 Use 0 when there are no relearning steps; ensure not NaN 2023-10-05 09:55:05 +10:00
Damien Elmes
c4d00bce05 When the user has no relearning steps, synthesize the value 2023-10-03 13:50:29 +10:00
Damien Elmes
e8154d8678 Ensure fuzz doesn't go backwards
Closes #2694
2023-10-03 13:23:27 +10:00
Damien Elmes
32ca7d237f When learning steps are missing, start from the SM-2 state
Closes https://github.com/open-spaced-repetition/fsrs-rs/issues/87
2023-10-03 12:20:10 +10:00
Damien Elmes
9168e33ac6 Update FSRS crate 2023-10-03 11:28:56 +10:00