older clients require 'separate' on filtered decks

the deckconf['new']['separate' property is unused, but older code
assumes filtered['separate'] exists, even though it doesn't do anything
with it

https://anki.tenderapp.com/discussions/beta-testing/1868-anki-2124-beta#comment_48240796
This commit is contained in:
Damien Elmes 2020-04-15 15:02:12 +10:00
parent b55742509a
commit f18f4e387b
2 changed files with 5 additions and 7 deletions

View File

@ -55,10 +55,6 @@ pub struct NewConf {
#[serde(deserialize_with = "default_on_invalid")] #[serde(deserialize_with = "default_on_invalid")]
pub(crate) per_day: u32, pub(crate) per_day: u32,
// unused, can remove in the future
#[serde(default)]
separate: bool,
#[serde(flatten)] #[serde(flatten)]
other: HashMap<String, Value>, other: HashMap<String, Value>,
} }
@ -165,7 +161,6 @@ impl Default for NewConf {
ints: NewCardIntervals::default(), ints: NewCardIntervals::default(),
order: NewCardOrder::default(), order: NewCardOrder::default(),
per_day: 20, per_day: 20,
separate: true,
other: Default::default(), other: Default::default(),
} }
} }

View File

@ -55,8 +55,7 @@ mod dynfix {
); );
} }
// remove some obsolete keys // remove an obsolete key
map.remove("separate");
map.remove("return"); map.remove("return");
let rest = Value::Object(map); let rest = Value::Object(map);
@ -116,6 +115,10 @@ pub struct FilteredDeck {
resched: bool, resched: bool,
terms: Vec<FilteredSearch>, terms: Vec<FilteredSearch>,
// unused, but older clients require its existence
#[serde(default)]
separate: bool,
// old scheduler // old scheduler
#[serde(default, deserialize_with = "default_on_invalid")] #[serde(default, deserialize_with = "default_on_invalid")]
delays: Option<Vec<f32>>, delays: Option<Vec<f32>>,