"Good First Issues," in the Rust Codebase?

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 :slight_smile:

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