Go to file
RumovZ d55f080733
V3 parent limits (#1638)
* 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 c9f5fc6ebe87953c17a0c842990b009b5596c69c.

* 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)
2022-02-10 09:55:43 +10:00
.buildkite move wheel build test into mac CI; enable symlinks in Linux CI 2022-01-23 19:18:46 +10:00
.github/ISSUE_TEMPLATE update bug report template 2021-11-12 12:20:02 +10:00
.vscode switch convenience symlinks to .bazel/ 2022-01-24 11:06:02 +10:00
cargo V3 parent limits (#1638) 2022-02-10 09:55:43 +10:00
docs add file layout visualization from aracelix 2022-02-09 13:24:07 +10:00
ftl V3 parent limits (#1638) 2022-02-10 09:55:43 +10:00
platforms use x86 binaries for clang format/protobuf on Mac 2021-10-16 18:07:39 +10:00
proto V3 parent limits (#1638) 2022-02-10 09:55:43 +10:00
pylib V3 parent limits (#1638) 2022-02-10 09:55:43 +10:00
python update to (Py)Qt 6.2.3 2022-02-03 18:06:58 +10:00
qt Make dialogs non-blocking (#1650) 2022-02-10 09:53:13 +10:00
rslib V3 parent limits (#1638) 2022-02-10 09:55:43 +10:00
sass Fix button focus highlight on Windows (#1627) 2022-02-07 19:41:19 +10:00
scripts switch convenience symlinks to .bazel/ 2022-01-24 11:06:02 +10:00
ts V3 parent limits (#1638) 2022-02-10 09:55:43 +10:00
.bazelignore move node_modules into root folder [action required] 2021-10-07 11:42:27 +10:00
.bazelrc switch convenience symlinks to .bazel/ 2022-01-24 11:06:02 +10:00
.bazelversion update Bazel version 2021-10-01 20:54:48 +10:00
.gitattributes try again to improve GitHub's language stats 2021-01-20 13:20:45 +10:00
.gitignore switch convenience symlinks to .bazel/ 2022-01-24 11:06:02 +10:00
.prettierignore Improved add-on extension API (#1626) 2022-02-03 14:52:11 +10:00
.prettierrc Mathjax editor improvements (#1502) 2021-11-23 10:27:32 +10:00
.user.bazelrc move Bazel convenience symlinks outside of repo folder 2022-01-23 19:18:44 +10:00
bazel.bat initial Bazel conversion 2020-11-01 14:26:58 +10:00
BUILD.bazel Fix prettier after moving node_modules to repo dir (#1413) 2021-10-09 10:13:14 +10:00
Cargo.lock V3 parent limits (#1638) 2022-02-10 09:55:43 +10:00
Cargo.toml move linkchecker into separate crate 2021-12-20 17:27:43 +10:00
CONTRIBUTORS Add callback and non-blocking option to StudyDeck (#1643) 2022-02-07 22:05:59 +10:00
defs.bzl update to edition 2021 2021-11-18 20:51:10 +10:00
late_deps.bzl download wheels using rules_python 2021-10-15 16:02:26 +10:00
LICENSE move aqt_data into source folder; implement wheel building 2020-11-04 12:14:03 +10:00
package.json Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
pkgkey.asc add public key for release signing 2018-09-18 10:40:45 +10:00
pyrightconfig.json exclude .bazel and node_modules from Pylance indexing 2022-01-25 12:45:57 +10:00
README.md fix build badge 2021-06-24 09:21:56 +10:00
repos.bzl update translations 2022-02-07 22:25:35 +10:00
run get PyQt working directly with ./run on macOS 2021-10-16 18:07:29 +10:00
run.bat enable Python warnings when running 2020-12-16 14:59:04 +10:00
SECURITY.md add SECURITY.md 2021-09-22 22:55:19 +10:00
WORKSPACE move node_modules into root folder [action required] 2021-10-07 11:42:27 +10:00
yarn.lock Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00

Anki

Build status

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.