async fn upsert_exercise_tasks(
conn: &mut PgConnection,
remapped_slides: &HashMap<Uuid, CmsPageExerciseSlide>,
existing_task_specs: &[ExerciseTaskIdAndSpec],
task_updates: &[CmsPageExerciseTask],
retain_exercise_ids: bool,
spec_fetcher: impl SpecFetcher,
fetch_service_info: impl Fn(Url) -> BoxFuture<'static, ModelResult<ExerciseServiceInfoApi>>,
) -> ModelResult<Vec<CmsPageExerciseTask>>
Expand description
Remaps ids from updates to exercise tasks that may have their ids changed.