summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan Dahl <ry@tinyclouds.org>2020-03-25 17:24:26 -0400
committerGitHub <noreply@github.com>2020-03-25 17:24:26 -0400
commitfd432e234691cfc660028f4873eef9c3bf70acee (patch)
treeabc5853085954b25379f4c400f7ead7003b01c8a
parent5d7bcf86fdb2bfcee0bfac24aeb7aeecb8b3faca (diff)
upgrade: dprint 0.9.5 (#4491)
-rw-r--r--Cargo.lock13
-rw-r--r--cli/Cargo.toml2
-rw-r--r--cli/fmt.rs65
3 files changed, 41 insertions, 39 deletions
diff --git a/Cargo.lock b/Cargo.lock
index c42b86cf6..cdf06abc5 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -552,24 +552,25 @@ checksum = "52ba6eb47c2131e784a38b726eb54c1e1484904f013e576a25354d0124161af6"
[[package]]
name = "dprint-core"
-version = "0.11.0"
+version = "0.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37d1aa8ea00ca5fb5a92278a6596b14b0f8336c3d0b6c6cbde4b46817dcd2ed0"
+checksum = "8fb2332f10c6acf94b5d469ed993cf52ed7a1369b80523fb9cb21fa10c6b6887"
dependencies = [
"serde",
]
[[package]]
name = "dprint-plugin-typescript"
-version = "0.8.1"
+version = "0.9.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6dcf2ac362cb71dac70767cd23fba63063fb47bdb84ccef8b42ba03e17c0451d"
+checksum = "b40a2ed665c9cb3192b689bcfc6934a1dbe16009e363c84b6db19ce1c36ef274"
dependencies = [
"dprint-core",
"serde",
"swc_common",
"swc_ecma_ast",
"swc_ecma_parser",
+ "swc_ecma_parser_macros",
]
[[package]]
@@ -2207,9 +2208,9 @@ dependencies = [
[[package]]
name = "swc_ecma_parser"
-version = "0.21.5"
+version = "0.21.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9519ab89ac37f65eb7d58f892f89aaa4dc64979b660a029025dbb9ee2a2b2903"
+checksum = "701e681b7783c5b9d3df9e18592494ca3cba7a2fa8fc98d4d4f423ae993df155"
dependencies = [
"either",
"enum_kind",
diff --git a/cli/Cargo.toml b/cli/Cargo.toml
index c7a2fbf75..1a7a8db8c 100644
--- a/cli/Cargo.toml
+++ b/cli/Cargo.toml
@@ -33,7 +33,7 @@ byteorder = "1.3.4"
clap = "2.33.0"
dirs = "2.0.2"
dlopen = "0.1.8"
-dprint-plugin-typescript = "0.8.1"
+dprint-plugin-typescript = "0.9.5"
futures = { version = "0.3.4", features = ["compat", "io-compat"] }
glob = "0.3.0"
http = "0.2.0"
diff --git a/cli/fmt.rs b/cli/fmt.rs
index 8d2f982df..edfc27730 100644
--- a/cli/fmt.rs
+++ b/cli/fmt.rs
@@ -37,15 +37,23 @@ fn is_supported(path: &Path) -> bool {
fn get_config() -> dprint::configuration::Configuration {
use dprint::configuration::*;
- ConfigurationBuilder::new()
- .line_width(80)
- .indent_width(2)
- .next_control_flow_position(NextControlFlowPosition::SameLine)
- .binary_expression_operator_position(OperatorPosition::SameLine)
- .brace_position(BracePosition::SameLine) // default is NextLineIfHanging
- .comment_line_force_space_after_slashes(false)
- .construct_signature_space_after_new_keyword(true)
- .build()
+ ConfigurationBuilder::new().prettier().build()
+}
+
+// TODO(ry) dprint seems to panic unnecessarally sometimes. Until it matures
+// we'll use a catch_unwind to avoid passing it on to our users.
+fn format_text_ignore_panic(
+ file_path_str: &str,
+ file_contents: &str,
+ config: &dprint::configuration::Configuration,
+) -> Result<Option<String>, String> {
+ let catch_result = std::panic::catch_unwind(|| {
+ dprint::format_text(file_path_str, file_contents, config)
+ });
+ match catch_result {
+ Ok(dprint_result) => dprint_result,
+ Err(e) => Err(format!("dprint panic '{}' {:?}", file_path_str, e)),
+ }
}
fn check_source_files(
@@ -57,7 +65,7 @@ fn check_source_files(
for file_path in paths {
let file_path_str = file_path.to_string_lossy();
let file_contents = fs::read_to_string(&file_path).unwrap();
- match dprint::format_text(&file_path_str, &file_contents, &config) {
+ match format_text_ignore_panic(&file_path_str, &file_contents, &config) {
Ok(None) => {
// nothing to format, pass
}
@@ -101,30 +109,23 @@ fn format_source_files(
for file_path in paths {
let file_path_str = file_path.to_string_lossy();
let file_contents = fs::read_to_string(&file_path)?;
- // TODO(ry) dprint seems to panic unnecessarally sometimes. Until it matures
- // we'll use a catch_unwind to avoid passing it on to our users.
- let catch_unwind_result = std::panic::catch_unwind(|| {
- dprint::format_text(&file_path_str, &file_contents, &config)
- });
- if let Ok(dprint_result) = catch_unwind_result {
- match dprint_result {
- Ok(None) => {
- // nothing to format, pass
- }
- Ok(Some(formatted_text)) => {
- if formatted_text != file_contents {
- println!("{}", file_path_str);
- fs::write(&file_path, formatted_text)?;
- not_formatted_files.push(file_path);
- }
- }
- Err(e) => {
- eprintln!("Error formatting: {}", &file_path_str);
- eprintln!(" {}", e);
+ let dprint_result =
+ format_text_ignore_panic(&file_path_str, &file_contents, &config);
+ match dprint_result {
+ Ok(None) => {
+ // nothing to format, pass
+ }
+ Ok(Some(formatted_text)) => {
+ if formatted_text != file_contents {
+ println!("{}", file_path_str);
+ fs::write(&file_path, formatted_text)?;
+ not_formatted_files.push(file_path);
}
}
- } else {
- eprintln!("dprint panic {}", file_path_str);
+ Err(e) => {
+ eprintln!("Error formatting: {}", &file_path_str);
+ eprintln!(" {}", e);
+ }
}
}