mirror of
https://github.com/ankitects/anki.git
synced 2025-09-24 08:46:37 -04:00

* avoid repinning Rust deps by default
* add id_tree dependency
* Respect intermediate child limits in v3
* Test new behaviour of v3 counts
* Rework v3 queue building to respect parent limits
* Add missing did field to SQL query
* Fix `LimitTreeMap::is_exhausted()`
* Rework tree building logic
https://github.com/ankitects/anki/pull/1638#discussion_r798328734
* Add timer for build_queues()
* `is_exhausted()` -> `limit_reached()`
* Move context and limits into `QueueBuilder`
This allows for moving more logic into QueueBuilder, so less passing
around of arguments. Unfortunately, some tests will require additional
work to set up.
* Fix stop condition in new_cards_by_position
* Fix order gather order of new cards by deck
* Add scheduler/queue/builder/burying.rs
* Fix bad tree due to unsorted child decks
* Fix comment
* Fix `cap_new_to_review_rec()`
* Add test for new card gathering
* Always sort `child_decks()`
* Fix deck removal in `cap_new_to_review_rec()`
* Fix sibling ordering in new card gathering
* Remove limits for deck total count with children
* Add random gather order
* Remove bad sibling order handling
All routines ensure ascending order now.
Also do some other minor refactoring.
* Remove queue truncating
All routines stop now as soon as the root limit is reached.
* Move deck fetching into `QueueBuilder::new()`
* Rework new card gather and sort options
https://github.com/ankitects/anki/pull/1638#issuecomment-1032173013
* Disable new sort order choices ...
depending on set gather order.
* Use enum instead of numbers
* Ensure valid sort order setting
* Update new gather and sort order tooltips
* Warn about random insertion order with v3
* Revert "Add timer for build_queues()"
This reverts commit c9f5fc6ebe
.
* Update rslib/src/storage/card/mod.rs (dae)
* minor wording tweaks to the tooltips (dae)
+ move legacy strings to bottom
+ consistent capitalization (our leech action still needs fixing,
but that will require introducing a new 'suspend card' string as the
existing one is used elsewhere as well)
99 lines
2.5 KiB
TOML
99 lines
2.5 KiB
TOML
[package]
|
|
name = "anki"
|
|
version = "0.0.0"
|
|
edition = "2021"
|
|
authors = ["Ankitects Pty Ltd and contributors"]
|
|
license = "AGPL-3.0-or-later"
|
|
description = "Anki's Rust library code"
|
|
build = "build/main.rs"
|
|
|
|
[lib]
|
|
name = "anki"
|
|
path = "src/lib.rs"
|
|
|
|
[features]
|
|
bench = ["criterion"]
|
|
|
|
[[bench]]
|
|
name = "benchmark"
|
|
harness = false
|
|
required-features = ["bench"]
|
|
|
|
# After updating anything below, run ../cargo/update.py
|
|
|
|
[build-dependencies]
|
|
prost-build = "0.9.0"
|
|
|
|
[dev-dependencies]
|
|
env_logger = "0.9.0"
|
|
tokio = { version = "1.12.0", features = ["macros"] }
|
|
|
|
[dependencies]
|
|
# pinned as any changes could invalidate sqlite indexes
|
|
unicase = "=2.6.0"
|
|
|
|
anki_i18n = { path="i18n" }
|
|
|
|
criterion = { version = "0.3.5", optional = true }
|
|
|
|
nom = "7.0.0"
|
|
proc-macro-nested = "0.1.7"
|
|
slog-term = "2.8.0"
|
|
blake3 = "1.0.0"
|
|
bytes = "1.1.0"
|
|
chrono = "0.4.19"
|
|
coarsetime = "0.1.19"
|
|
flate2 = "1.0.22"
|
|
fluent = "0.16.0"
|
|
fluent-bundle = "0.15.1"
|
|
futures = "0.3.17"
|
|
hex = "0.4.3"
|
|
htmlescape = "0.3.1"
|
|
intl-memoizer = "0.5.1"
|
|
itertools = "0.10.1"
|
|
lazy_static = "1.4.0"
|
|
num_enum = "0.5.4"
|
|
num-integer = "0.1.44"
|
|
once_cell = "1.8.0"
|
|
pin-project = "1.0.8"
|
|
prost = "0.9.0"
|
|
rand = "0.8.4"
|
|
regex = "1.5.4"
|
|
reqwest = { git="https://github.com/ankitects/reqwest.git", rev="7591444614de02b658ddab125efba7b2bb4e2335", default-features=false, features=[
|
|
"json",
|
|
"socks",
|
|
"stream",
|
|
"multipart",
|
|
# the Bazel build scripts separate these out by platform
|
|
"native-tls",
|
|
"rustls-tls",
|
|
"rustls-tls-webpki-roots",
|
|
"rustls-tls-native-roots",
|
|
] }
|
|
rusqlite = { version = "0.26.1", features = ["trace", "functions", "collation", "bundled"] }
|
|
scopeguard = "1.1.0"
|
|
serde = "1.0.130"
|
|
serde_derive = "1.0.130"
|
|
serde_json = "1.0.68"
|
|
serde_repr = "0.1.7"
|
|
serde_tuple = "0.5.0"
|
|
serde-aux = "3.0.1"
|
|
sha1 = "0.6.0"
|
|
slog = { version = "2.7.0", features = ["max_level_trace", "release_max_level_debug"] }
|
|
slog-async = "2.7.0"
|
|
slog-envlogger = "2.2.0"
|
|
tempfile = "3.2.0"
|
|
tokio = { version = "1.12.0", features = ["fs", "rt-multi-thread"] }
|
|
unic-langid = { version = "0.9.0", features = ["macros"] }
|
|
unicode-normalization = "0.1.19"
|
|
utime = "0.3.1"
|
|
zip = { version = "0.5.13", default-features = false, features = ["deflate", "time"] }
|
|
async-trait = "0.1.51"
|
|
ammonia = "3.1.2"
|
|
pulldown-cmark = "0.8.0"
|
|
fnv = "1.0.7"
|
|
strum = { version = "0.23.0", features = ["derive"] }
|
|
tokio-util = { version = "0.6.8", features = ["io"] }
|
|
pct-str = { git="https://github.com/timothee-haudebourg/pct-str.git", rev="4adccd8d4a222ab2672350a102f06ae832a0572d" }
|
|
unic-ucd-category = "0.9.0"
|
|
id_tree = "1.8.0"
|