From 183639dc8c817fbd3211a87c67bcb983db4050ed Mon Sep 17 00:00:00 2001 From: Billy Chan Date: Mon, 23 May 2022 23:24:07 +0800 Subject: [PATCH] Migration without depending on async-std (#758) * Migration without depending on async-std runtime * Update examples * Fixup --- examples/actix3_example/migration/Cargo.toml | 6 ++++++ examples/actix_example/migration/Cargo.toml | 6 ++++++ examples/axum_example/migration/Cargo.toml | 6 ++++++ examples/graphql_example/migration/Cargo.toml | 6 ++++++ examples/jsonrpsee_example/migration/Cargo.toml | 6 ++++++ examples/poem_example/migration/Cargo.toml | 6 ++++++ examples/rocket_example/migration/Cargo.toml | 6 ++++++ examples/tonic_example/migration/Cargo.toml | 6 ++++++ sea-orm-migration/Cargo.toml | 4 +++- sea-orm-migration/src/lib.rs | 1 - sea-orm-migration/src/prelude.rs | 1 - 11 files changed, 51 insertions(+), 3 deletions(-) diff --git a/examples/actix3_example/migration/Cargo.toml b/examples/actix3_example/migration/Cargo.toml index 6a1b3c9f..883afc81 100644 --- a/examples/actix3_example/migration/Cargo.toml +++ b/examples/actix3_example/migration/Cargo.toml @@ -10,7 +10,13 @@ path = "src/lib.rs" [dependencies] entity = { path = "../entity" } +async-std = { version = "^1", features = ["attributes", "tokio1"] } [dependencies.sea-orm-migration] path = "../../../sea-orm-migration" # remove this line in your own project version = "^0.8.0" +features = [ + # Enable following runtime and db backend features if you want to run migration via CLI + # "runtime-async-std-native-tls", + # "sqlx-mysql", +] diff --git a/examples/actix_example/migration/Cargo.toml b/examples/actix_example/migration/Cargo.toml index 6a1b3c9f..2655a479 100644 --- a/examples/actix_example/migration/Cargo.toml +++ b/examples/actix_example/migration/Cargo.toml @@ -10,7 +10,13 @@ path = "src/lib.rs" [dependencies] entity = { path = "../entity" } +async-std = { version = "^1", features = ["attributes", "tokio1"] } [dependencies.sea-orm-migration] path = "../../../sea-orm-migration" # remove this line in your own project version = "^0.8.0" +features = [ + # Enable following runtime and db backend features if you want to run migration via CLI + # "runtime-actix-native-tls", + # "sqlx-mysql", +] diff --git a/examples/axum_example/migration/Cargo.toml b/examples/axum_example/migration/Cargo.toml index 6a1b3c9f..d22b708a 100644 --- a/examples/axum_example/migration/Cargo.toml +++ b/examples/axum_example/migration/Cargo.toml @@ -10,7 +10,13 @@ path = "src/lib.rs" [dependencies] entity = { path = "../entity" } +async-std = { version = "^1", features = ["attributes", "tokio1"] } [dependencies.sea-orm-migration] path = "../../../sea-orm-migration" # remove this line in your own project version = "^0.8.0" +features = [ + # Enable following runtime and db backend features if you want to run migration via CLI + # "runtime-tokio-native-tls", + # "sqlx-postgres", +] diff --git a/examples/graphql_example/migration/Cargo.toml b/examples/graphql_example/migration/Cargo.toml index b3432a96..78729b11 100644 --- a/examples/graphql_example/migration/Cargo.toml +++ b/examples/graphql_example/migration/Cargo.toml @@ -11,7 +11,13 @@ path = "src/lib.rs" [dependencies] dotenv = "0.15.0" entity = { path = "../entity" } +async-std = { version = "^1", features = ["attributes", "tokio1"] } [dependencies.sea-orm-migration] path = "../../../sea-orm-migration" # remove this line in your own project version = "^0.8.0" +features = [ + # Enable following runtime and db backend features if you want to run migration via CLI + # "runtime-tokio-native-tls", + # "sqlx-sqlite", +] diff --git a/examples/jsonrpsee_example/migration/Cargo.toml b/examples/jsonrpsee_example/migration/Cargo.toml index 6a1b3c9f..82e155f9 100644 --- a/examples/jsonrpsee_example/migration/Cargo.toml +++ b/examples/jsonrpsee_example/migration/Cargo.toml @@ -10,7 +10,13 @@ path = "src/lib.rs" [dependencies] entity = { path = "../entity" } +async-std = { version = "^1", features = ["attributes", "tokio1"] } [dependencies.sea-orm-migration] path = "../../../sea-orm-migration" # remove this line in your own project version = "^0.8.0" +features = [ + # Enable following runtime and db backend features if you want to run migration via CLI + # "runtime-tokio-native-tls", + # "sqlx-sqlite", +] diff --git a/examples/poem_example/migration/Cargo.toml b/examples/poem_example/migration/Cargo.toml index 6a1b3c9f..82e155f9 100644 --- a/examples/poem_example/migration/Cargo.toml +++ b/examples/poem_example/migration/Cargo.toml @@ -10,7 +10,13 @@ path = "src/lib.rs" [dependencies] entity = { path = "../entity" } +async-std = { version = "^1", features = ["attributes", "tokio1"] } [dependencies.sea-orm-migration] path = "../../../sea-orm-migration" # remove this line in your own project version = "^0.8.0" +features = [ + # Enable following runtime and db backend features if you want to run migration via CLI + # "runtime-tokio-native-tls", + # "sqlx-sqlite", +] diff --git a/examples/rocket_example/migration/Cargo.toml b/examples/rocket_example/migration/Cargo.toml index db890058..8e51eed6 100644 --- a/examples/rocket_example/migration/Cargo.toml +++ b/examples/rocket_example/migration/Cargo.toml @@ -11,7 +11,13 @@ path = "src/lib.rs" [dependencies] entity = { path = "../entity" } rocket = { version = "0.5.0-rc.1" } +async-std = { version = "^1", features = ["attributes", "tokio1"] } [dependencies.sea-orm-migration] path = "../../../sea-orm-migration" # remove this line in your own project version = "^0.8.0" +features = [ + # Enable following runtime and db backend features if you want to run migration via CLI + # "runtime-tokio-native-tls", + # "sqlx-postgres", +] diff --git a/examples/tonic_example/migration/Cargo.toml b/examples/tonic_example/migration/Cargo.toml index 6a1b3c9f..a78ca8eb 100644 --- a/examples/tonic_example/migration/Cargo.toml +++ b/examples/tonic_example/migration/Cargo.toml @@ -10,7 +10,13 @@ path = "src/lib.rs" [dependencies] entity = { path = "../entity" } +async-std = { version = "^1", features = ["attributes", "tokio1"] } [dependencies.sea-orm-migration] path = "../../../sea-orm-migration" # remove this line in your own project version = "^0.8.0" +features = [ + # Enable following runtime and db backend features if you want to run migration via CLI + # "runtime-tokio-rustls", + # "sqlx-postgres", +] diff --git a/sea-orm-migration/Cargo.toml b/sea-orm-migration/Cargo.toml index e92e56b4..f1b4cb7a 100644 --- a/sea-orm-migration/Cargo.toml +++ b/sea-orm-migration/Cargo.toml @@ -18,7 +18,6 @@ name = "sea_orm_migration" path = "src/lib.rs" [dependencies] -async-std = { version = "^1", features = ["attributes", "tokio1"] } async-trait = { version = "^0.1" } clap = { version = "^2.33" } dotenv = { version = "^0.15" } @@ -28,6 +27,9 @@ sea-schema = { version = "^0.8.0" } tracing = { version = "0.1", features = ["log"] } tracing-subscriber = { version = "0.3", features = ["env-filter"] } +[dev-dependencies] +async-std = { version = "^1", features = ["attributes", "tokio1"] } + [features] sqlx-mysql = ["sea-orm/sqlx-mysql"] sqlx-postgres = ["sea-orm/sqlx-postgres"] diff --git a/sea-orm-migration/src/lib.rs b/sea-orm-migration/src/lib.rs index c9f2dc85..b5d440fe 100644 --- a/sea-orm-migration/src/lib.rs +++ b/sea-orm-migration/src/lib.rs @@ -7,7 +7,6 @@ pub mod seaql_migrations; pub use manager::*; pub use migrator::*; -pub use async_std; pub use async_trait; pub use sea_orm; pub use sea_orm::sea_query; diff --git a/sea-orm-migration/src/prelude.rs b/sea-orm-migration/src/prelude.rs index dfce2d6a..c8047658 100644 --- a/sea-orm-migration/src/prelude.rs +++ b/sea-orm-migration/src/prelude.rs @@ -2,7 +2,6 @@ pub use super::cli; pub use super::manager::SchemaManager; pub use super::migrator::MigratorTrait; pub use super::{MigrationName, MigrationTrait}; -pub use async_std; pub use async_trait; pub use sea_orm; pub use sea_orm::sea_query;