mirror of
https://github.com/ankitects/anki.git
synced 2025-09-25 01:06:35 -04:00
Anki is a smart spaced repetition flashcard program
![]() Rust requires all methods of impl Trait to be in a single file, which means we had a giant backend/mod.rs covering all exposed methods. By using separate service definitions for the separate areas, and updating the code generation, we can split it into more manageable chunks - this commit starts with the scheduling code. In the long run, we'll probably want to split up the protobuf file into multiple files as well. Also dropped want_release_gil() from rsbridge, and the associated method enum. While it allows us to skip the thread save/restore and mutex unlock/ lock, it looks to only be buying about 2.5% extra performance in the best case (tested with timeit+format_timespan), and the majority of the backend methods deal with I/O, and thus were already releasing the GIL. |
||
---|---|---|
.buildkite | ||
.github/ISSUE_TEMPLATE | ||
cargo | ||
docs | ||
ftl | ||
pip | ||
platforms | ||
pylib | ||
qt | ||
rslib | ||
scripts | ||
ts | ||
.bazelignore | ||
.bazelrc | ||
.bazelversion | ||
.gitattributes | ||
.gitignore | ||
bazel.bat | ||
BUILD.bazel | ||
Cargo.lock | ||
Cargo.toml | ||
CONTRIBUTORS | ||
defs.bzl | ||
late_deps.bzl | ||
LICENSE | ||
pkgkey.asc | ||
protobuf.bzl | ||
python.bzl | ||
README.md | ||
repos.bzl | ||
run | ||
run.bat | ||
WORKSPACE |
Anki
This repo contains the source code for the computer version of Anki.
If you'd like to try development builds of Anki but don't feel comfortable building the code, please see https://betas.ankiweb.net/#/
For more information on building, please see Development.