Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch from dotenv to dotenvy #3085

Merged
merged 2 commits into from Mar 14, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion diesel/Cargo.toml
Expand Up @@ -39,7 +39,7 @@ path = "../diesel_derives"

[dev-dependencies]
cfg-if = "1"
dotenv = "0.15"
dotenvy = "0.15"
ipnetwork = ">=0.12.2, <0.19.0"
quickcheck = "1.0.3"

Expand Down
2 changes: 1 addition & 1 deletion diesel/src/doctest_setup.rs
@@ -1,5 +1,5 @@
use diesel::prelude::*;
use dotenv::dotenv;
use dotenvy::dotenv;

cfg_if::cfg_if! {
if #[cfg(feature = "postgres")] {
Expand Down
4 changes: 2 additions & 2 deletions diesel/src/mysql/connection/mod.rs
Expand Up @@ -164,13 +164,13 @@ impl MysqlConnection {

#[cfg(test)]
mod tests {
extern crate dotenv;
extern crate dotenvy;

use super::*;
use std::env;

fn connection() -> MysqlConnection {
dotenv::dotenv().ok();
dotenvy::dotenv().ok();
let database_url = env::var("MYSQL_UNIT_TEST_DATABASE_URL")
.or_else(|_| env::var("MYSQL_DATABASE_URL"))
.or_else(|_| env::var("DATABASE_URL"))
Expand Down
2 changes: 1 addition & 1 deletion diesel/src/mysql/types/date_and_time.rs
Expand Up @@ -259,7 +259,7 @@ impl FromSql<Date, Mysql> for NaiveDate {
#[cfg(all(test, feature = "chrono"))]
mod tests {
extern crate chrono;
extern crate dotenv;
extern crate dotenvy;

use self::chrono::{Duration, NaiveDate, NaiveTime, Utc};

Expand Down
2 changes: 1 addition & 1 deletion diesel/src/pg/connection/mod.rs
Expand Up @@ -255,7 +255,7 @@ extern "C" fn noop_notice_processor(_: *mut libc::c_void, _message: *const libc:

#[cfg(test)]
mod tests {
extern crate dotenv;
extern crate dotenvy;

use super::*;
use crate::dsl::sql;
Expand Down
2 changes: 1 addition & 1 deletion diesel/src/pg/expression/extensions/interval_dsl.rs
Expand Up @@ -243,7 +243,7 @@ impl IntervalDsl for f64 {

#[cfg(test)]
mod tests {
extern crate dotenv;
extern crate dotenvy;
extern crate quickcheck;

use self::quickcheck::quickcheck;
Expand Down
6 changes: 3 additions & 3 deletions diesel/src/pg/transaction.rs
Expand Up @@ -377,7 +377,7 @@ impl QueryFragment<Pg> for Deferrable {

#[test]
fn test_transaction_builder_generates_correct_sql() {
extern crate dotenv;
extern crate dotenvy;

macro_rules! assert_sql {
($query:expr, $sql:expr) => {
Expand All @@ -388,8 +388,8 @@ fn test_transaction_builder_generates_correct_sql() {
};
}

let database_url = dotenv::var("PG_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
let database_url = dotenvy::var("PG_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests");
let mut conn = PgConnection::establish(&database_url).unwrap();

Expand Down
2 changes: 1 addition & 1 deletion diesel/src/pg/types/date_and_time/chrono.rs
Expand Up @@ -125,7 +125,7 @@ impl FromSql<Date, Pg> for NaiveDate {
#[cfg(test)]
mod tests {
extern crate chrono;
extern crate dotenv;
extern crate dotenvy;

use self::chrono::naive::MAX_DATE;
use self::chrono::{Duration, FixedOffset, NaiveDate, NaiveTime, TimeZone, Utc};
Expand Down
2 changes: 1 addition & 1 deletion diesel/src/pg/types/date_and_time/std_time.rs
Expand Up @@ -58,7 +58,7 @@ fn duration_to_usecs(duration: Duration) -> u64 {

#[cfg(test)]
mod tests {
extern crate dotenv;
extern crate dotenvy;

use std::time::{Duration, SystemTime, UNIX_EPOCH};

Expand Down
2 changes: 1 addition & 1 deletion diesel/src/sqlite/types/date_and_time/chrono.rs
Expand Up @@ -101,7 +101,7 @@ impl ToSql<Timestamp, Sqlite> for NaiveDateTime {
#[cfg(test)]
mod tests {
extern crate chrono;
extern crate dotenv;
extern crate dotenvy;

use self::chrono::{Duration, NaiveDate, NaiveDateTime, NaiveTime, Timelike, Utc};

Expand Down
10 changes: 5 additions & 5 deletions diesel/src/test_helpers.rs
@@ -1,4 +1,4 @@
extern crate dotenv;
extern crate dotenvy;

use crate::prelude::*;

Expand Down Expand Up @@ -37,8 +37,8 @@ cfg_if! {
}

pub fn database_url() -> String {
dotenv::var("MYSQL_UNIT_TEST_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::var("MYSQL_UNIT_TEST_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests")
}
} else {
Expand All @@ -65,7 +65,7 @@ pub fn pg_connection_no_transaction() -> PgConnection {

#[cfg(feature = "postgres")]
pub fn pg_database_url() -> String {
dotenv::var("PG_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::var("PG_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests")
}
4 changes: 2 additions & 2 deletions diesel_bench/Cargo.toml
Expand Up @@ -10,7 +10,7 @@ autobenches = false
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
dotenv = "0.15"
dotenvy = "0.15"
criterion = "0.3.2"
sqlx = {version = "0.5.0", features = ["runtime-tokio-rustls"], optional = true}
tokio = {version = "1", optional = true}
Expand All @@ -34,7 +34,7 @@ features = []
[build-dependencies]
diesel = { path = "../diesel", default-features = false }
diesel_migrations = { path = "../diesel_migrations" }
dotenv = "0.15"
dotenvy = "0.15"


[[bench]]
Expand Down
12 changes: 6 additions & 6 deletions diesel_bench/benches/diesel_async_benches.rs
Expand Up @@ -116,9 +116,9 @@ pub struct NewComment<'a>(

#[cfg(feature = "mysql")]
async fn connection() -> TestConnection {
dotenv::dotenv().ok();
let connection_url = dotenv::var("MYSQL_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::dotenv().ok();
let connection_url = dotenvy::var("MYSQL_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests");
let mut conn = diesel_async::AsyncMysqlConnection::establish(&connection_url)
.await
Expand All @@ -143,9 +143,9 @@ async fn connection() -> TestConnection {

#[cfg(feature = "postgres")]
async fn connection() -> TestConnection {
dotenv::dotenv().ok();
let connection_url = dotenv::var("PG_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::dotenv().ok();
let connection_url = dotenvy::var("PG_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests");
let mut conn = diesel_async::AsyncPgConnection::establish(&connection_url)
.await
Expand Down
14 changes: 7 additions & 7 deletions diesel_bench/benches/diesel_benches.rs
Expand Up @@ -111,9 +111,9 @@ pub struct NewComment<'a>(

#[cfg(feature = "mysql")]
fn connection() -> TestConnection {
dotenv::dotenv().ok();
let connection_url = dotenv::var("MYSQL_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::dotenv().ok();
let connection_url = dotenvy::var("MYSQL_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests");
let mut conn = MysqlConnection::establish(&connection_url).unwrap();
diesel::sql_query("SET FOREIGN_KEY_CHECKS = 0")
Expand All @@ -136,9 +136,9 @@ fn connection() -> TestConnection {

#[cfg(feature = "postgres")]
fn connection() -> TestConnection {
dotenv::dotenv().ok();
let connection_url = dotenv::var("PG_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::dotenv().ok();
let connection_url = dotenvy::var("PG_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests");
let mut conn = PgConnection::establish(&connection_url).unwrap();
diesel::sql_query("TRUNCATE TABLE comments CASCADE")
Expand All @@ -155,7 +155,7 @@ fn connection() -> TestConnection {

#[cfg(feature = "sqlite")]
fn connection() -> TestConnection {
dotenv::dotenv().ok();
dotenvy::dotenv().ok();
let mut conn = diesel::SqliteConnection::establish(":memory:").unwrap();
for migration in super::SQLITE_MIGRATION_SQL {
diesel::sql_query(*migration).execute(&mut conn).unwrap();
Expand Down
6 changes: 3 additions & 3 deletions diesel_bench/benches/mysql_benches.rs
Expand Up @@ -24,9 +24,9 @@ pub struct Comment {
}

fn connection() -> Conn {
dotenv::dotenv().ok();
let connection_url = dotenv::var("MYSQL_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::dotenv().ok();
let connection_url = dotenvy::var("MYSQL_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests");
let opts = Opts::from_url(&connection_url).unwrap();
let mut conn = Conn::new(opts).unwrap();
Expand Down
6 changes: 3 additions & 3 deletions diesel_bench/benches/postgres_benches.rs
Expand Up @@ -26,9 +26,9 @@ pub struct Comment {
}

fn connection() -> Client {
dotenv::dotenv().ok();
let connection_url = dotenv::var("POSTGRES_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::dotenv().ok();
let connection_url = dotenvy::var("POSTGRES_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests");
let mut client = Client::connect(&connection_url, NoTls).unwrap();

Expand Down
14 changes: 7 additions & 7 deletions diesel_bench/benches/quaint_benches.rs
Expand Up @@ -39,18 +39,18 @@ pub struct UserWithPost {
}

fn connect(rt: &mut Runtime) -> Quaint {
dotenv::dotenv().ok();
dotenvy::dotenv().ok();
let db_url = if cfg!(feature = "sqlite") {
dotenv::var("SQLITE_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::var("SQLITE_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests")
} else if cfg!(feature = "postgres") {
dotenv::var("POSTGRES_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::var("POSTGRES_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests")
} else if cfg!(feature = "mysql") {
dotenv::var("MYSQL_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::var("MYSQL_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests")
} else {
unimplemented!()
Expand Down
14 changes: 7 additions & 7 deletions diesel_bench/benches/rust_orm_benches.rs
Expand Up @@ -79,21 +79,21 @@ mod for_load {

fn connect() -> EntityManager {
let mut pool = Pool::new();
dotenv::dotenv().ok();
dotenvy::dotenv().ok();

let db_url = if cfg!(feature = "sqlite") {
let url = dotenv::var("SQLITE_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
let url = dotenvy::var("SQLITE_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests");

url.replace("sqlite:", "sqlite://")
} else if cfg!(feature = "postgres") {
dotenv::var("POSTGRES_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::var("POSTGRES_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests")
} else if cfg!(feature = "mysql") {
dotenv::var("MYSQL_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::var("MYSQL_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests")
} else {
unimplemented!()
Expand Down
14 changes: 7 additions & 7 deletions diesel_bench/benches/sea_orm_benches/mod.rs
Expand Up @@ -18,9 +18,9 @@ fn connection() -> (sqlx::PgPool, DatabaseConnection, Runtime) {

let rt = Runtime::new().expect("Failed to start runtime");

dotenv::dotenv().ok();
let connection_url = dotenv::var("PG_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::dotenv().ok();
let connection_url = dotenvy::var("PG_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests");
let (pool, db) = rt.block_on(async {
use sqlx::Executor;
Expand All @@ -45,9 +45,9 @@ fn connection() -> (sqlx::MySqlPool, DatabaseConnection, Runtime) {

let rt = Runtime::new().expect("Failed to start runtime");

dotenv::dotenv().ok();
let connection_url = dotenv::var("MYSQL_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::dotenv().ok();
let connection_url = dotenvy::var("MYSQL_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests");
let (pool, db) = rt.block_on(async {
use sqlx::Executor;
Expand All @@ -74,7 +74,7 @@ fn connection() -> (sqlx::SqlitePool, DatabaseConnection, Runtime) {
use sea_orm::SqlxSqliteConnector;

let rt = Runtime::new().expect("Failed to start runtime");
dotenv::dotenv().ok();
dotenvy::dotenv().ok();

let (pool, db) = rt.block_on(async {
use sqlx::Executor;
Expand Down
12 changes: 6 additions & 6 deletions diesel_bench/benches/sqlx_benches.rs
Expand Up @@ -72,9 +72,9 @@ fn connection() -> (Runtime, Connection) {

let runtime = Runtime::new().expect("Failed to create runtime");

dotenv::dotenv().ok();
let connection_url = dotenv::var("POSTGRES_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::dotenv().ok();
let connection_url = dotenvy::var("POSTGRES_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests");

let conn = runtime.block_on(async {
Expand Down Expand Up @@ -103,9 +103,9 @@ fn connection() -> (Runtime, Connection) {

let runtime = Runtime::new().expect("Failed to create runtime");

dotenv::dotenv().ok();
let connection_url = dotenv::var("MYSQL_DATABASE_URL")
.or_else(|_| dotenv::var("DATABASE_URL"))
dotenvy::dotenv().ok();
let connection_url = dotenvy::var("MYSQL_DATABASE_URL")
.or_else(|_| dotenvy::var("DATABASE_URL"))
.expect("DATABASE_URL must be set in order to run tests");

let conn = runtime.block_on(async {
Expand Down
4 changes: 2 additions & 2 deletions diesel_bench/build.rs
@@ -1,8 +1,8 @@
extern crate diesel;
extern crate diesel_migrations as migrations;
extern crate dotenv;
extern crate dotenvy;
use self::diesel::*;
use self::dotenv::dotenv;
use self::dotenvy::dotenv;
use std::env;

#[cfg(not(any(feature = "mysql", feature = "sqlite", feature = "postgres")))]
Expand Down
2 changes: 1 addition & 1 deletion diesel_cli/Cargo.toml
Expand Up @@ -22,7 +22,7 @@ doc = false
chrono = { version = "0.4.19", default-features = false, features = ["clock", "std"] }
clap = "3.1"
clap_complete = "3.1"
dotenv = "0.15"
dotenvy = "0.15"
heck = "0.3.1"
serde = { version = "1.0.0", features = ["derive"] }
toml = "0.5"
Expand Down
4 changes: 2 additions & 2 deletions diesel_cli/src/infer_schema_internals/information_schema.rs
Expand Up @@ -383,9 +383,9 @@ pub fn load_foreign_key_constraints(

#[cfg(all(test, feature = "postgres"))]
mod tests {
extern crate dotenv;
extern crate dotenvy;

use self::dotenv::dotenv;
use self::dotenvy::dotenv;
use super::*;
use std::env;

Expand Down
2 changes: 1 addition & 1 deletion diesel_cli/src/main.rs
Expand Up @@ -46,7 +46,7 @@ use self::database_error::{DatabaseError, DatabaseResult};
pub static TIMESTAMP_FORMAT: &str = "%Y-%m-%d-%H%M%S";

fn main() {
use dotenv::dotenv;
use dotenvy::dotenv;
dotenv().ok();

let matches = cli::build_cli().get_matches();
Expand Down