mirror of
https://github.com/Start9Labs/start-os.git
synced 2026-03-30 12:11:56 +00:00
fix async cycle
This commit is contained in:
@@ -1,7 +1,8 @@
|
|||||||
use std::cmp::Ordering;
|
use std::cmp::Ordering;
|
||||||
|
|
||||||
use color_eyre::eyre::eyre;
|
use color_eyre::eyre::eyre;
|
||||||
use futures::Future;
|
use futures::future::BoxFuture;
|
||||||
|
use futures::{Future, FutureExt};
|
||||||
use imbl_value::InternedString;
|
use imbl_value::InternedString;
|
||||||
|
|
||||||
use crate::prelude::*;
|
use crate::prelude::*;
|
||||||
@@ -86,11 +87,11 @@ where
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
fn migrate_from_unchecked<V: VersionT>(
|
fn migrate_from_unchecked<'a, V: VersionT>(
|
||||||
&self,
|
&'a self,
|
||||||
version: &V,
|
version: &'a V,
|
||||||
db: &PatchDb,
|
db: &'a PatchDb,
|
||||||
) -> impl Future<Output = Result<(), Error>> + Send {
|
) -> BoxFuture<'a, Result<(), Error>> {
|
||||||
async {
|
async {
|
||||||
let previous = Self::Previous::new();
|
let previous = Self::Previous::new();
|
||||||
if version.semver() < previous.semver() {
|
if version.semver() < previous.semver() {
|
||||||
@@ -109,12 +110,13 @@ where
|
|||||||
self.commit(db).await?;
|
self.commit(db).await?;
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
.boxed()
|
||||||
}
|
}
|
||||||
fn rollback_to_unchecked<V: VersionT>(
|
fn rollback_to_unchecked<'a, V: VersionT>(
|
||||||
&self,
|
&'a self,
|
||||||
version: &V,
|
version: &'a V,
|
||||||
db: &PatchDb,
|
db: &'a PatchDb,
|
||||||
) -> impl Future<Output = Result<(), Error>> + Send {
|
) -> BoxFuture<'a, Result<(), Error>> {
|
||||||
async {
|
async {
|
||||||
let previous = Self::Previous::new();
|
let previous = Self::Previous::new();
|
||||||
tracing::info!("{} -> {}", self.semver(), previous.semver(),);
|
tracing::info!("{} -> {}", self.semver(), previous.semver(),);
|
||||||
@@ -133,6 +135,7 @@ where
|
|||||||
}
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
.boxed()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user