I’ve been working my way through https://doc.rust-lang.org/book/ and the rustlings and am wondering if there are any “good first issues,” for a Rust novice that I can try to tackle.
I can’t think of much in the way of low hanging fruit at the moment - there may be some but they don’t immediately come to mind
On the trivial side, some of the import prefixes could be de-duplicated. For example:
use crate::decks::{Deck, DeckID};
use crate::{
card::{Card, CardID, CardQueue, CardType},
collection::Collection,
config::SchedulerVersion,
err::Result,
prelude::AnkiError,
search::SortMode,
timestamp::TimestampSecs,
types::Usn,
};
where the first line can be merged into the other import.
Other files have multiple lines that could be merged, eg:
use crate::err::{AnkiError, Result, TemplateError};
use crate::i18n::{tr_args, tr_strs, I18n, TR};
use crate::{cloze::add_cloze_numbers_in_string, template_filters::apply_filters};
It would be nice to have, but is not a high priority.
In terms of changes that are a bit more involved, there is this one that was brought up recently, though I’m not sure how easy it would be to partition up the work: https://github.com/ankitects/anki/pull/807#issuecomment-720095077
2 Likes