From 7243febca9ca2d35769b4c810b944e128465017e Mon Sep 17 00:00:00 2001 From: Avery Harnish Date: Fri, 6 Dec 2019 14:59:51 -0600 Subject: [PATCH 1/2] Addresses clippy warnings --- src/commands/build/mod.rs | 2 +- src/commands/build/watch/mod.rs | 4 ++-- src/commands/build/wranglerjs/mod.rs | 2 +- src/commands/generate/mod.rs | 2 +- src/commands/init/mod.rs | 2 +- src/commands/kv/bucket/mod.rs | 15 ++++++--------- src/commands/kv/bucket/sync.rs | 2 +- src/commands/kv/bucket/upload.rs | 6 ++---- src/commands/kv/bulk/delete.rs | 2 +- src/commands/kv/bulk/put.rs | 2 +- src/commands/kv/key/delete.rs | 2 +- src/commands/kv/key/get.rs | 2 +- src/commands/kv/key/key_list.rs | 2 +- src/commands/kv/key/list.rs | 2 +- src/commands/kv/key/put.rs | 2 +- src/commands/kv/mod.rs | 4 ++-- src/commands/kv/namespace/create.rs | 2 +- src/commands/kv/namespace/delete.rs | 2 +- src/commands/kv/namespace/list.rs | 2 +- src/commands/kv/namespace/site.rs | 2 +- src/commands/preview/mod.rs | 2 +- src/commands/preview/upload.rs | 2 +- src/commands/publish/mod.rs | 4 ++-- src/commands/publish/route.rs | 15 +++++++-------- src/commands/publish/upload_form/mod.rs | 2 +- .../publish/upload_form/project_assets.rs | 2 +- src/commands/subdomain/mod.rs | 2 +- src/http.rs | 2 +- src/main.rs | 18 +++++++++--------- src/settings/environment.rs | 2 +- src/settings/global_user.rs | 2 +- src/settings/mod.rs | 2 +- src/settings/{target => toml}/environment.rs | 0 src/settings/{target => toml}/kv_namespace.rs | 0 src/settings/{target => toml}/manifest.rs | 8 +++----- src/settings/{target => toml}/mod.rs | 0 src/settings/{target => toml}/site.rs | 0 src/settings/{target => toml}/target.rs | 0 src/settings/{target => toml}/target_type.rs | 0 src/settings/{target => toml}/tests/mod.rs | 0 .../{target => toml}/tests/tomls/default.toml | 0 .../tests/tomls/environments.toml | 0 .../tests/tomls/invalid_environments.toml | 0 .../tests/tomls/kv_namespaces.toml | 0 .../tests/tomls/no_default.toml | 0 tests/fixture/mod.rs | 6 ++++++ 46 files changed, 64 insertions(+), 66 deletions(-) rename src/settings/{target => toml}/environment.rs (100%) rename src/settings/{target => toml}/kv_namespace.rs (100%) rename src/settings/{target => toml}/manifest.rs (98%) rename src/settings/{target => toml}/mod.rs (100%) rename src/settings/{target => toml}/site.rs (100%) rename src/settings/{target => toml}/target.rs (100%) rename src/settings/{target => toml}/target_type.rs (100%) rename src/settings/{target => toml}/tests/mod.rs (100%) rename src/settings/{target => toml}/tests/tomls/default.toml (100%) rename src/settings/{target => toml}/tests/tomls/environments.toml (100%) rename src/settings/{target => toml}/tests/tomls/invalid_environments.toml (100%) rename src/settings/{target => toml}/tests/tomls/kv_namespaces.toml (100%) rename src/settings/{target => toml}/tests/tomls/no_default.toml (100%) diff --git a/src/commands/build/mod.rs b/src/commands/build/mod.rs index d5fe334ee..9fad728ee 100644 --- a/src/commands/build/mod.rs +++ b/src/commands/build/mod.rs @@ -3,7 +3,7 @@ pub mod wranglerjs; mod watch; pub use watch::watch_and_build; -use crate::settings::target::{Target, TargetType}; +use crate::settings::toml::{Target, TargetType}; use crate::terminal::message; use crate::{commands, install}; diff --git a/src/commands/build/watch/mod.rs b/src/commands/build/watch/mod.rs index c30fe05d0..0f1aeef06 100644 --- a/src/commands/build/watch/mod.rs +++ b/src/commands/build/watch/mod.rs @@ -4,7 +4,7 @@ use ignore::WalkBuilder; pub use watcher::wait_for_changes; use crate::commands::build::{command, wranglerjs}; -use crate::settings::target::{Target, TargetType}; +use crate::settings::toml::{Target, TargetType}; use crate::terminal::message; use crate::{commands, install}; @@ -18,7 +18,7 @@ const JAVASCRIPT_PATH: &str = "./"; const RUST_PATH: &str = "./"; // Paths to ignore live watching in Rust Workers -const RUST_IGNORE: &'static [&str] = &["pkg", "target", "worker/generated"]; +const RUST_IGNORE: &[&str] = &["pkg", "target", "worker/generated"]; // watch a project for changes and re-build it when necessary, // outputting a build event to tx. diff --git a/src/commands/build/wranglerjs/mod.rs b/src/commands/build/wranglerjs/mod.rs index 81b7e0886..5b168576c 100644 --- a/src/commands/build/wranglerjs/mod.rs +++ b/src/commands/build/wranglerjs/mod.rs @@ -23,7 +23,7 @@ use crate::commands::build::watch::wait_for_changes; use crate::commands::build::watch::COOLDOWN_PERIOD; use crate::commands::publish::package::Package; use crate::install; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::message; use crate::util; diff --git a/src/commands/generate/mod.rs b/src/commands/generate/mod.rs index 3efe39f86..10e9f0cfd 100644 --- a/src/commands/generate/mod.rs +++ b/src/commands/generate/mod.rs @@ -2,7 +2,7 @@ use std::path::PathBuf; use std::process::Command; use crate::commands::validate_worker_name; -use crate::settings::target::{Manifest, Site, TargetType}; +use crate::settings::toml::{Manifest, Site, TargetType}; use crate::{commands, install}; pub fn generate( diff --git a/src/commands/init/mod.rs b/src/commands/init/mod.rs index 755ca3060..2cbf9a6af 100644 --- a/src/commands/init/mod.rs +++ b/src/commands/init/mod.rs @@ -1,7 +1,7 @@ use std::path::{Path, PathBuf}; use crate::commands::validate_worker_name; -use crate::settings::target::{Manifest, Site, TargetType}; +use crate::settings::toml::{Manifest, Site, TargetType}; use crate::terminal::message; pub fn init( diff --git a/src/commands/kv/bucket/mod.rs b/src/commands/kv/bucket/mod.rs index c1b05f218..5a0e5acf9 100644 --- a/src/commands/kv/bucket/mod.rs +++ b/src/commands/kv/bucket/mod.rs @@ -19,7 +19,7 @@ use cloudflare::endpoints::workerskv::write_bulk::KeyValuePair; use ignore::overrides::{Override, OverrideBuilder}; use ignore::{Walk, WalkBuilder}; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::message; pub const KEY_MAX_SIZE: usize = 512; @@ -133,14 +133,11 @@ const NODE_MODULES: &str = "node_modules"; fn get_dir_iterator(target: &Target, directory: &Path) -> Result { // The directory provided should never be node_modules! - match directory.file_name() { - Some(name) => { - if name == NODE_MODULES { - failure::bail!("Your directory of files to upload cannot be named node_modules."); - } + if let Some(name) = directory.file_name() { + if name == NODE_MODULES { + failure::bail!("Your directory of files to upload cannot be named node_modules."); } - _ => (), - } + }; let ignore = build_ignore(target, directory)?; Ok(WalkBuilder::new(directory).overrides(ignore).build()) @@ -260,7 +257,7 @@ mod tests { use std::fs; use std::path::{Path, PathBuf}; - use crate::settings::target::{Site, Target, TargetType}; + use crate::settings::toml::{Site, Target, TargetType}; fn make_target(site: Site) -> Target { Target { diff --git a/src/commands/kv/bucket/sync.rs b/src/commands/kv/bucket/sync.rs index 3a5b7764a..31ee9a673 100644 --- a/src/commands/kv/bucket/sync.rs +++ b/src/commands/kv/bucket/sync.rs @@ -11,7 +11,7 @@ use crate::commands::kv::bucket::upload::upload_files; use crate::commands::kv::bulk::delete::delete_bulk; use crate::commands::kv::key::KeyList; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::message; pub fn sync( diff --git a/src/commands/kv/bucket/upload.rs b/src/commands/kv/bucket/upload.rs index ce364b46a..abd66360b 100644 --- a/src/commands/kv/bucket/upload.rs +++ b/src/commands/kv/bucket/upload.rs @@ -7,7 +7,7 @@ use std::path::Path; use crate::commands::kv; use crate::commands::kv::bucket::directory_keys_values; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::message; use cloudflare::endpoints::workerskv::write_bulk::KeyValuePair; use cloudflare::framework::apiclient::ApiClient; @@ -167,15 +167,13 @@ mod tests { fn check_kv_pairs_equality(expected: Vec, actual: Vec) { assert!(expected.len() == actual.len()); - let mut idx = 0; - for pair in expected { + for (idx, pair) in expected.into_iter().enumerate() { // Ensure the expected key and value was returned in the filtered pair list // Awkward field-by-field comparison below courtesy of not yet implementing // PartialEq for KeyValuePair in cloudflare-rs :) // TODO: (gabbi) Implement PartialEq for KeyValuePair in cloudflare-rs. assert!(pair.key == actual[idx].key); assert!(pair.value == actual[idx].value); - idx += 1; } } } diff --git a/src/commands/kv/bulk/delete.rs b/src/commands/kv/bulk/delete.rs index 9138dd9b1..661b64d03 100644 --- a/src/commands/kv/bulk/delete.rs +++ b/src/commands/kv/bulk/delete.rs @@ -11,7 +11,7 @@ use cloudflare::framework::apiclient::ApiClient; use crate::commands::kv; use crate::commands::kv::bulk::MAX_PAIRS; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::message; pub fn delete( diff --git a/src/commands/kv/bulk/put.rs b/src/commands/kv/bulk/put.rs index a4cf91d27..e401b1d62 100644 --- a/src/commands/kv/bulk/put.rs +++ b/src/commands/kv/bulk/put.rs @@ -12,7 +12,7 @@ use cloudflare::framework::response::{ApiFailure, ApiSuccess}; use crate::commands::kv; use crate::commands::kv::bulk::MAX_PAIRS; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::message; pub fn put( diff --git a/src/commands/kv/key/delete.rs b/src/commands/kv/key/delete.rs index 6d4d82cb6..0cfe9a044 100644 --- a/src/commands/kv/key/delete.rs +++ b/src/commands/kv/key/delete.rs @@ -3,7 +3,7 @@ use cloudflare::framework::apiclient::ApiClient; use crate::commands::kv; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::message; pub fn delete( diff --git a/src/commands/kv/key/get.rs b/src/commands/kv/key/get.rs index 094dba3e9..e56c0404e 100644 --- a/src/commands/kv/key/get.rs +++ b/src/commands/kv/key/get.rs @@ -8,7 +8,7 @@ use cloudflare::framework::response::ApiFailure; use crate::commands::kv; use crate::http; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; pub fn get(target: &Target, user: &GlobalUser, id: &str, key: &str) -> Result<(), failure::Error> { kv::validate_target(target)?; diff --git a/src/commands/kv/key/key_list.rs b/src/commands/kv/key/key_list.rs index 6f96eb939..c6be3519a 100644 --- a/src/commands/kv/key/key_list.rs +++ b/src/commands/kv/key/key_list.rs @@ -10,7 +10,7 @@ use crate::settings::global_user::GlobalUser; use serde_json::value::Value as JsonValue; -use crate::settings::target::Target; +use crate::settings::toml::Target; pub struct KeyList { keys_result: Option>, diff --git a/src/commands/kv/key/list.rs b/src/commands/kv/key/list.rs index e42585bb0..b20705fd5 100644 --- a/src/commands/kv/key/list.rs +++ b/src/commands/kv/key/list.rs @@ -3,7 +3,7 @@ extern crate serde_json; use crate::commands::kv; use crate::commands::kv::key::KeyList; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; // Note: this function only prints keys in json form, given that // the number of entries in each json blob is variable (so csv and tsv diff --git a/src/commands/kv/key/put.rs b/src/commands/kv/key/put.rs index 2c3cf5297..09087efca 100644 --- a/src/commands/kv/key/put.rs +++ b/src/commands/kv/key/put.rs @@ -11,7 +11,7 @@ use url::Url; use crate::commands::kv; use crate::http; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::message; pub struct KVMetaData { diff --git a/src/commands/kv/mod.rs b/src/commands/kv/mod.rs index 932a8a581..d9e0723c4 100644 --- a/src/commands/kv/mod.rs +++ b/src/commands/kv/mod.rs @@ -7,7 +7,7 @@ use cloudflare::framework::{HttpApiClient, HttpApiClientConfig}; use percent_encoding::{percent_encode, PATH_SEGMENT_ENCODE_SET}; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::http; @@ -143,7 +143,7 @@ fn url_encode_key(key: &str) -> String { #[cfg(test)] mod tests { use crate::commands::kv; - use crate::settings::target::{KvNamespace, Target, TargetType}; + use crate::settings::toml::{KvNamespace, Target, TargetType}; #[test] fn it_can_detect_duplicate_bindings() { diff --git a/src/commands/kv/namespace/create.rs b/src/commands/kv/namespace/create.rs index edec70c4b..a3918cf64 100644 --- a/src/commands/kv/namespace/create.rs +++ b/src/commands/kv/namespace/create.rs @@ -6,7 +6,7 @@ use cloudflare::framework::response::{ApiFailure, ApiSuccess}; use crate::commands::kv; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::message; use regex::Regex; diff --git a/src/commands/kv/namespace/delete.rs b/src/commands/kv/namespace/delete.rs index 712f672af..241255b50 100644 --- a/src/commands/kv/namespace/delete.rs +++ b/src/commands/kv/namespace/delete.rs @@ -3,7 +3,7 @@ use cloudflare::framework::apiclient::ApiClient; use crate::commands::kv; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::message; pub fn delete(target: &Target, user: &GlobalUser, id: &str) -> Result<(), failure::Error> { diff --git a/src/commands/kv/namespace/list.rs b/src/commands/kv/namespace/list.rs index 19ba2b252..eb486a6d8 100644 --- a/src/commands/kv/namespace/list.rs +++ b/src/commands/kv/namespace/list.rs @@ -8,7 +8,7 @@ use cloudflare::framework::response::{ApiFailure, ApiSuccess}; use crate::commands::kv; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; const MAX_NAMESPACES_PER_PAGE: u32 = 100; const PAGE_NUMBER: u32 = 1; diff --git a/src/commands/kv/namespace/site.rs b/src/commands/kv/namespace/site.rs index 0f5f56b7b..b2b8c2d16 100644 --- a/src/commands/kv/namespace/site.rs +++ b/src/commands/kv/namespace/site.rs @@ -4,7 +4,7 @@ use cloudflare::framework::response::ApiFailure; use crate::commands::kv; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::message; pub fn site( diff --git a/src/commands/preview/mod.rs b/src/commands/preview/mod.rs index 7cb6416bd..e1f97e742 100644 --- a/src/commands/preview/mod.rs +++ b/src/commands/preview/mod.rs @@ -17,7 +17,7 @@ use log::info; use crate::http; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::message; use std::sync::mpsc::channel; diff --git a/src/commands/preview/upload.rs b/src/commands/preview/upload.rs index 2bdfbbc17..fb309b39e 100644 --- a/src/commands/preview/upload.rs +++ b/src/commands/preview/upload.rs @@ -2,7 +2,7 @@ use crate::commands::kv::bucket::AssetManifest; use crate::commands::publish; use crate::http; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::message; use reqwest::Client; use serde::Deserialize; diff --git a/src/commands/publish/mod.rs b/src/commands/publish/mod.rs index 44e4ac321..176ec0e0a 100644 --- a/src/commands/publish/mod.rs +++ b/src/commands/publish/mod.rs @@ -17,7 +17,7 @@ use crate::commands::subdomain::Subdomain; use crate::commands::validate_worker_name; use crate::http; use crate::settings::global_user::GlobalUser; -use crate::settings::target::{KvNamespace, Site, Target}; +use crate::settings::toml::{KvNamespace, Site, Target}; use crate::terminal::{emoji, message}; pub fn publish( @@ -37,7 +37,7 @@ pub fn publish( if let Some(site_config) = target.site.clone() { if let Some(route) = &target.route { - if !route.ends_with("*") { + if !route.ends_with('*') { message::warn(&format!("The route in your wrangler.toml should have a trailing * to apply the Worker on every path, otherwise your site will not behave as expected.\nroute = {}*", route)); } } diff --git a/src/commands/publish/route.rs b/src/commands/publish/route.rs index 434380d74..8d736ae08 100644 --- a/src/commands/publish/route.rs +++ b/src/commands/publish/route.rs @@ -1,6 +1,6 @@ use crate::http; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::emoji; use reqwest::header::CONTENT_TYPE; use serde::{Deserialize, Serialize}; @@ -98,21 +98,20 @@ fn create(user: &GlobalUser, target: &Target, route: &Route) -> Result<(), failu .send()?; if !res.status().is_success() { - let msg; - if res.status().as_u16() == 10020 { - msg = format!( + let msg = if res.status().as_u16() == 10020 { + format!( "{} A worker with a different name was previously deployed to `{}`. If you would like to overwrite that worker, you will need to change `name` in your `wrangler.toml` to match the currently deployed worker, or navigate to https://dash.cloudflare.com/workers and rename or delete that worker.\n", emoji::WARN, serde_json::to_string(&route)? - ); + ) } else { - msg = format!( + format!( "{} There was an error creating your route.\n Status Code: {}\n Msg: {}", emoji::WARN, res.status(), res.text()? - ); - } + ) + }; failure::bail!(msg) } diff --git a/src/commands/publish/upload_form/mod.rs b/src/commands/publish/upload_form/mod.rs index e9c7a7b19..01b422d55 100644 --- a/src/commands/publish/upload_form/mod.rs +++ b/src/commands/publish/upload_form/mod.rs @@ -11,7 +11,7 @@ use crate::commands::build::wranglerjs; use crate::commands::kv::bucket::AssetManifest; use crate::settings::binding; use crate::settings::metadata::Metadata; -use crate::settings::target::{Target, TargetType}; +use crate::settings::toml::{Target, TargetType}; use project_assets::ProjectAssets; use text_blob::TextBlob; diff --git a/src/commands/publish/upload_form/project_assets.rs b/src/commands/publish/upload_form/project_assets.rs index d17414ef8..e930102c7 100644 --- a/src/commands/publish/upload_form/project_assets.rs +++ b/src/commands/publish/upload_form/project_assets.rs @@ -7,7 +7,7 @@ use super::filename_from_path; use super::text_blob::TextBlob; use super::wasm_module::WasmModule; -use crate::settings::target::KvNamespace; +use crate::settings::toml::KvNamespace; #[derive(Debug)] pub struct ProjectAssets { diff --git a/src/commands/subdomain/mod.rs b/src/commands/subdomain/mod.rs index 602bf0422..1d549cd01 100644 --- a/src/commands/subdomain/mod.rs +++ b/src/commands/subdomain/mod.rs @@ -1,6 +1,6 @@ use crate::http; use crate::settings::global_user::GlobalUser; -use crate::settings::target::Target; +use crate::settings::toml::Target; use crate::terminal::{emoji, message}; use serde::{Deserialize, Serialize}; diff --git a/src/http.rs b/src/http.rs index b74ac786c..8250644fe 100644 --- a/src/http.rs +++ b/src/http.rs @@ -52,7 +52,7 @@ pub fn auth_client(feature: Option<&str>, user: &GlobalUser) -> Client { add_auth_headers(&mut headers, user); builder() - .default_headers(headers.to_owned()) + .default_headers(headers) .redirect(RedirectPolicy::none()) .build() .expect("could not create authenticated http client") diff --git a/src/main.rs b/src/main.rs index d926a9fd4..03f18bec6 100644 --- a/src/main.rs +++ b/src/main.rs @@ -16,7 +16,7 @@ use wrangler::commands::kv::key::KVMetaData; use wrangler::installer; use wrangler::settings; use wrangler::settings::global_user::GlobalUser; -use wrangler::settings::target::TargetType; +use wrangler::settings::toml::TargetType; use wrangler::terminal::emoji; use wrangler::terminal::message; @@ -479,7 +479,7 @@ fn run() -> Result<(), failure::Error> { Some(TargetType::Webpack) } else { match matches.value_of("type") { - Some(s) => Some(settings::target::TargetType::from_str(&s.to_lowercase())?), + Some(s) => Some(settings::toml::TargetType::from_str(&s.to_lowercase())?), None => None, } }; @@ -487,13 +487,13 @@ fn run() -> Result<(), failure::Error> { commands::init(name, target_type, site)?; } else if let Some(matches) = matches.subcommand_matches("build") { log::info!("Getting project settings"); - let manifest = settings::target::Manifest::new(config_path)?; + let manifest = settings::toml::Manifest::new(config_path)?; let env = matches.value_of("env"); let target = &manifest.get_target(env)?; commands::build(&target)?; } else if let Some(matches) = matches.subcommand_matches("preview") { log::info!("Getting project settings"); - let manifest = settings::target::Manifest::new(config_path)?; + let manifest = settings::toml::Manifest::new(config_path)?; let env = matches.value_of("env"); let target = manifest.get_target(env)?; @@ -529,7 +529,7 @@ fn run() -> Result<(), failure::Error> { } log::info!("Getting project settings"); - let manifest = settings::target::Manifest::new(config_path)?; + let manifest = settings::toml::Manifest::new(config_path)?; let env = matches.value_of("env"); let mut target = manifest.get_target(env)?; @@ -538,7 +538,7 @@ fn run() -> Result<(), failure::Error> { commands::publish(&user, &mut target, verbose)?; } else if let Some(matches) = matches.subcommand_matches("subdomain") { log::info!("Getting project settings"); - let manifest = settings::target::Manifest::new(config_path)?; + let manifest = settings::toml::Manifest::new(config_path)?; let env = matches.value_of("env"); let target = manifest.get_target(env)?; @@ -553,7 +553,7 @@ fn run() -> Result<(), failure::Error> { commands::subdomain::get_subdomain(&user, &target)?; } } else if let Some(kv_matches) = matches.subcommand_matches("kv:namespace") { - let manifest = settings::target::Manifest::new(config_path)?; + let manifest = settings::toml::Manifest::new(config_path)?; let user = settings::global_user::GlobalUser::new()?; match kv_matches.subcommand() { @@ -586,7 +586,7 @@ fn run() -> Result<(), failure::Error> { _ => unreachable!(), } } else if let Some(kv_matches) = matches.subcommand_matches("kv:key") { - let manifest = settings::target::Manifest::new(config_path)?; + let manifest = settings::toml::Manifest::new(config_path)?; let user = settings::global_user::GlobalUser::new()?; // Get environment and bindings @@ -649,7 +649,7 @@ fn run() -> Result<(), failure::Error> { _ => unreachable!(), } } else if let Some(kv_matches) = matches.subcommand_matches("kv:bulk") { - let manifest = settings::target::Manifest::new(config_path)?; + let manifest = settings::toml::Manifest::new(config_path)?; let user = settings::global_user::GlobalUser::new()?; // Get environment and bindings diff --git a/src/settings/environment.rs b/src/settings/environment.rs index b1b826031..2c2978cad 100644 --- a/src/settings/environment.rs +++ b/src/settings/environment.rs @@ -50,7 +50,7 @@ impl Source for Environment { let uri: String = "env".into(); for key in &self.whitelist { - if let Some(value) = env::var(key).ok() { + if let Ok(value) = env::var(key) { // remove the `CF` prefix before adding to collection let key = if key.starts_with(PREFIX_PATTERN) { &key[PREFIX_PATTERN.len()..] diff --git a/src/settings/global_user.rs b/src/settings/global_user.rs index cb19d345b..089800d35 100644 --- a/src/settings/global_user.rs +++ b/src/settings/global_user.rs @@ -269,6 +269,6 @@ mod tests { File::create(&tmp_config_path)?; } - Ok(tmp_config_path.to_path_buf()) + Ok(tmp_config_path) } } diff --git a/src/settings/mod.rs b/src/settings/mod.rs index 7323e34f0..5e2285e4c 100644 --- a/src/settings/mod.rs +++ b/src/settings/mod.rs @@ -2,6 +2,6 @@ pub mod binding; mod environment; pub mod global_user; pub mod metadata; -pub mod target; +pub mod toml; pub use environment::{Environment, QueryEnvironment}; diff --git a/src/settings/target/environment.rs b/src/settings/toml/environment.rs similarity index 100% rename from src/settings/target/environment.rs rename to src/settings/toml/environment.rs diff --git a/src/settings/target/kv_namespace.rs b/src/settings/toml/kv_namespace.rs similarity index 100% rename from src/settings/target/kv_namespace.rs rename to src/settings/toml/kv_namespace.rs diff --git a/src/settings/target/manifest.rs b/src/settings/toml/manifest.rs similarity index 98% rename from src/settings/target/manifest.rs rename to src/settings/toml/manifest.rs index 0059c8f35..5fa35a1d9 100644 --- a/src/settings/target/manifest.rs +++ b/src/settings/toml/manifest.rs @@ -2,7 +2,7 @@ use super::environment::Environment; use super::kv_namespace::KvNamespace; use super::site::Site; use super::target_type::TargetType; -use crate::settings::target::Target; +use crate::settings::toml::Target; use std::collections::{HashMap, HashSet}; use std::env; @@ -326,10 +326,8 @@ impl Manifest { if let Some(env) = &self.env { for (env_name, env) in env { let mut current_env_fields: Vec = Vec::new(); - if let Some(_) = &env.account_id { - if !account_id_env { - current_env_fields.push("account_id".to_string()); - } + if env.account_id.is_some() && !account_id_env { + current_env_fields.push("account_id".to_string()); } if let Some(kv_namespaces) = &env.kv_namespaces { for kv_namespace in kv_namespaces { diff --git a/src/settings/target/mod.rs b/src/settings/toml/mod.rs similarity index 100% rename from src/settings/target/mod.rs rename to src/settings/toml/mod.rs diff --git a/src/settings/target/site.rs b/src/settings/toml/site.rs similarity index 100% rename from src/settings/target/site.rs rename to src/settings/toml/site.rs diff --git a/src/settings/target/target.rs b/src/settings/toml/target.rs similarity index 100% rename from src/settings/target/target.rs rename to src/settings/toml/target.rs diff --git a/src/settings/target/target_type.rs b/src/settings/toml/target_type.rs similarity index 100% rename from src/settings/target/target_type.rs rename to src/settings/toml/target_type.rs diff --git a/src/settings/target/tests/mod.rs b/src/settings/toml/tests/mod.rs similarity index 100% rename from src/settings/target/tests/mod.rs rename to src/settings/toml/tests/mod.rs diff --git a/src/settings/target/tests/tomls/default.toml b/src/settings/toml/tests/tomls/default.toml similarity index 100% rename from src/settings/target/tests/tomls/default.toml rename to src/settings/toml/tests/tomls/default.toml diff --git a/src/settings/target/tests/tomls/environments.toml b/src/settings/toml/tests/tomls/environments.toml similarity index 100% rename from src/settings/target/tests/tomls/environments.toml rename to src/settings/toml/tests/tomls/environments.toml diff --git a/src/settings/target/tests/tomls/invalid_environments.toml b/src/settings/toml/tests/tomls/invalid_environments.toml similarity index 100% rename from src/settings/target/tests/tomls/invalid_environments.toml rename to src/settings/toml/tests/tomls/invalid_environments.toml diff --git a/src/settings/target/tests/tomls/kv_namespaces.toml b/src/settings/toml/tests/tomls/kv_namespaces.toml similarity index 100% rename from src/settings/target/tests/tomls/kv_namespaces.toml rename to src/settings/toml/tests/tomls/kv_namespaces.toml diff --git a/src/settings/target/tests/tomls/no_default.toml b/src/settings/toml/tests/tomls/no_default.toml similarity index 100% rename from src/settings/target/tests/tomls/no_default.toml rename to src/settings/toml/tests/tomls/no_default.toml diff --git a/tests/fixture/mod.rs b/tests/fixture/mod.rs index 69f26f7ce..7013afad3 100644 --- a/tests/fixture/mod.rs +++ b/tests/fixture/mod.rs @@ -21,6 +21,12 @@ pub struct Fixture { dir: ManuallyDrop, } +impl Default for Fixture { + fn default() -> Self { + Self::new() + } +} + impl Fixture { pub fn new() -> Fixture { let dir = TempDir::new().unwrap(); From e086d56984ca9e23e08f9f8d5966a49a3118b9a9 Mon Sep 17 00:00:00 2001 From: Ashley Michal Lewis Date: Mon, 9 Dec 2019 14:44:26 -0600 Subject: [PATCH 2/2] update toml test fixture path --- src/settings/toml/tests/mod.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/settings/toml/tests/mod.rs b/src/settings/toml/tests/mod.rs index 6c18a56d6..766c7804b 100644 --- a/src/settings/toml/tests/mod.rs +++ b/src/settings/toml/tests/mod.rs @@ -82,7 +82,7 @@ fn base_fixture_path() -> PathBuf { Path::new(¤t_dir) .join("src") .join("settings") - .join("target") + .join("toml") .join("tests") .join("tomls") }