anki/rslib
Damien Elmes b3b40933c2 switch 'set due date' to leaving the interval alone for now
The previous approach worked when the user pushes their due date back,
or moves it forward a little bit, but breaks down if they reschedule
shortly after the previous answer - a card that was only just answered
will have had an effective delay of 0, causing the interval to be
reset, which is not great.

I thought about limiting interval reductions, but that means the
behaviour is inconsistent when sending a card forward and moving it
back again.

We could apply a cap to the amount of interval we'll reduce, but that
will either doing something like dividing by 2 (which breaks down when
the action is performed repeatedly), or or looking up the review log
to try and determine the previous interval we should not go below.

One other option we might want to consider in the future is using
the revlog to calculate the actual elapsed time at answer time instead
of reschedule time, falling back to existing behaviour when the revlog
doesn't match or is missing.
2021-02-12 11:19:58 +10:00
..
.cargo initial Bazel conversion 2020-11-01 14:26:58 +10:00
build NF: add AGPL licence missing in some file 2021-01-31 21:50:21 +01:00
cargo render deck description with markdown; strip images 2021-02-06 15:02:40 +10:00
src switch 'set due date' to leaving the interval alone for now 2021-02-12 11:19:58 +10:00
templates migrate card stats to backend 2020-06-15 17:22:16 +10:00
tests/support initial Bazel conversion 2020-11-01 14:26:58 +10:00
.clang-format add .clang-format so VS Code preserves formatting style on .proto save 2021-01-12 18:47:08 +10:00
.gitignore initial Bazel conversion 2020-11-01 14:26:58 +10:00
backend.proto tweak search wording and tidy up API 2021-02-11 19:57:19 +10:00
BUILD.bazel render deck description with markdown; strip images 2021-02-06 15:02:40 +10:00
Cargo.toml render deck description with markdown; strip images 2021-02-06 15:02:40 +10:00
clang_format.bzl NF: add AGPL licence missing in some file 2021-01-31 21:50:21 +01:00
proto_format.py NF: add AGPL licence missing in some file 2021-01-31 21:50:21 +01:00
README.md add some code editing/completion docs 2020-12-16 14:16:08 +10:00
rustfmt.bzl NF: add AGPL licence missing in some file 2021-01-31 21:50:21 +01:00

Anki's Rust code.

backend.proto stores the interfaces used to communicate backend messages between Rust, Python and TypeScript.