Skip to content

Commit 43832e0

Browse files
authored
Merge branch 'main' into fix-pending-reboot
2 parents 71ae8fe + 8a7c3a3 commit 43832e0

File tree

16 files changed

+160
-168
lines changed

16 files changed

+160
-168
lines changed

dsc/Cargo.lock

Lines changed: 6 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dsc/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "dsc"
3-
version = "3.1.0-preview.6"
3+
version = "3.1.0-preview.7"
44
edition = "2021"
55

66
[profile.release]

dsc/locales/en-us.toml

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -55,14 +55,16 @@ Press any key to close this window"""
5555
[resolve]
5656
processingInclude = "Processing Include input"
5757
invalidInclude = "Failed to deserialize Include input"
58-
failedToReadFile = "Failed to read file"
59-
failedToOpenFile = "Failed to open included file"
60-
invalidFileContent = "Invalid UTF-8 sequence in included file"
61-
invalidFile = "Failed to read the configuration file as YAML or JSON"
58+
failedToReadFile = "Failed to read file '%{path}': %{error}"
59+
failedToOpenFile = "Failed to open included file '%{path}': %{error}"
60+
invalidFileContent = "Invalid UTF-8 sequence in included file '%{path}': %{error}"
61+
invalidFile = "Failed to read the configuration file as YAML or JSON '%{path}': %{error}"
62+
invalidContent = "Invalid content provided, expected JSON or YAML: %{error}"
6263
resolvingParameters = "Resolving parameters from file"
63-
failedParseParametersFile = "Failed to parse parameters file or content to JSON"
64-
couldNotReadParametersFile = "Could not read parameters file"
65-
invalidPath = "Include path must not contain '..'"
64+
failedParseParametersFile = "Failed to parse parameters file '%{path}'or content to JSON: %{error}"
65+
couldNotReadParametersFile = "Could not read parameters file '%{path}': %{error}"
66+
invalidParametersContent = "Invalid parameters content provided, expected JSON or YAML: %{error}"
67+
invalidPath = "Include path '%{path}' must not contain '..'"
6668
failedGetCurrentDirectory = "Failed to get current directory"
6769
noParameters = "No parameters specified"
6870

dsc/src/resolve.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -77,34 +77,34 @@ pub fn get_contents(input: &str) -> Result<(Option<String>, String), String> {
7777
match file.read_to_end(&mut buffer) {
7878
Ok(_) => (),
7979
Err(err) => {
80-
return Err(format!("{} '{include_path:?}': {err}", t!("resolve.failedToReadFile")));
80+
return Err(t!("resolve.failedToReadFile", path = include_path.to_string_lossy(), error = err.to_string()).to_string());
8181
}
8282
}
8383
},
8484
Err(err) => {
85-
return Err(format!("{} '{include_path:?}': {err}", t!("resolve.failedToOpenFile")));
85+
return Err(t!("resolve.failedToOpenFile", path = include_path.to_string_lossy(), error = err.to_string()).to_string());
8686
}
8787
}
8888
// convert the buffer to a string
8989
let include_content = match String::from_utf8(buffer) {
9090
Ok(input) => input,
9191
Err(err) => {
92-
return Err(format!("{} '{include_path:?}': {err}", t!("resolve.invalidFileContent")));
92+
return Err(t!("resolve.invalidFileContent", path = include_path.to_string_lossy(), error = err.to_string()).to_string());
9393
}
9494
};
9595

9696
match parse_input_to_json(&include_content) {
9797
Ok(json) => json,
9898
Err(err) => {
99-
return Err(format!("{} '{include_path:?}': {err}", t!("resolve.invalidFile")));
99+
return Err(t!("resolve.invalidFile", path = include_path.to_string_lossy(), error = err.to_string()).to_string());
100100
}
101101
}
102102
},
103103
IncludeKind::ConfigurationContent(text) => {
104104
match parse_input_to_json(&text) {
105105
Ok(json) => json,
106106
Err(err) => {
107-
return Err(format!("{}: {err}", t!("resolve.invalidFile")));
107+
return Err(t!("resolve.invalidContent", error = err.to_string()).to_string());
108108
}
109109
}
110110
}
@@ -120,21 +120,21 @@ pub fn get_contents(input: &str) -> Result<(Option<String>, String), String> {
120120
let parameters_json = match parse_input_to_json(&parameters) {
121121
Ok(json) => json,
122122
Err(err) => {
123-
return Err(format!("{} '{parameters_file:?}': {err}", t!("resolve.failedParseParametersFile")));
123+
return Err(t!("resolve.failedParseParametersFile", path = parameters_file.to_string_lossy(), error = err.to_string()).to_string());
124124
}
125125
};
126126
Some(parameters_json)
127127
},
128128
Err(err) => {
129-
return Err(format!("{} '{parameters_file:?}': {err}", t!("resolve.couldNotReadParametersFile")));
129+
return Err(t!("resolve.couldNotReadParametersFile", path = parameters_file.to_string_lossy(), error = err.to_string()).to_string());
130130
}
131131
}
132132
},
133133
Some(IncludeParametersKind::ParametersContent(text)) => {
134134
let parameters_json = match parse_input_to_json(&text) {
135135
Ok(json) => json,
136136
Err(err) => {
137-
return Err(format!("{}: {err}", t!("resolve.failedParseParametersFile")));
137+
return Err(t!("resolve.invalidParametersContent", error = err.to_string()).to_string());
138138
}
139139
};
140140
Some(parameters_json)
@@ -154,7 +154,7 @@ fn normalize_path(path: &Path) -> Result<PathBuf, String> {
154154
} else {
155155
// check that no components of the path are '..'
156156
if path.components().any(|c| c == std::path::Component::ParentDir) {
157-
return Err(format!("{}: {path:?}", t!("resolve.invalidPath")));
157+
return Err(t!("resolve.invalidPath", path = path.to_string_lossy()).to_string());
158158
}
159159

160160
// use DSC_CONFIG_ROOT env var as current directory

dsc/tests/dsc_discovery.tests.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ Describe 'tests for resource discovery' {
9696
Set-Content -Path "$testdrive/test.dsc.resource.json" -Value $manifest
9797
$out = dsc resource list 2>&1
9898
write-verbose -verbose ($out | Out-String)
99-
$out | Should -Match 'WARN.*?Validation.*?Invalid manifest.*?version'
99+
$out | Should -Match 'WARN.*?Validation.*?invalid version' -Because ($out | Out-String)
100100
}
101101
finally {
102102
$env:DSC_RESOURCE_PATH = $oldPath

dsc_lib/Cargo.lock

Lines changed: 5 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dsc_lib/Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "dsc_lib"
3-
version = "3.0.0"
3+
version = "3.1.0"
44
edition = "2021"
55

66
[profile.release]
@@ -38,7 +38,7 @@ tracing-indicatif = { version = "0.3" }
3838
tree-sitter = "0.25"
3939
tree-sitter-rust = "0.24"
4040
tree-sitter-dscexpression = { path = "../tree-sitter-dscexpression" }
41-
uuid = { version = "1.16", features = ["v4"] }
41+
uuid = { version = "1.17", features = ["v4"] }
4242
which = "7.0"
4343

4444
[dev-dependencies]

dsc_lib/locales/en-us.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ invalidManifest = "Invalid manifest for resource '%{resource}'"
8989
extensionResourceFound = "Extension found resource '%{resource}'"
9090
callingExtension = "Calling extension '%{extension}' to discover resources"
9191
extensionFoundResources = "Extension '%{extension}' found %{count} resources"
92+
invalidManifestVersion = "Manifest '%{path}' has invalid version: %{err}"
9293

9394
[dscresources.commandResource]
9495
invokeGet = "Invoking get for '%{resource}'"

dsc_lib/src/discovery/command_discovery.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -619,7 +619,7 @@ pub fn load_manifest(path: &Path) -> Result<ImportedManifest, DscError> {
619619
let manifest = match serde_yaml::from_str::<ExtensionManifest>(&contents) {
620620
Ok(manifest) => manifest,
621621
Err(err) => {
622-
return Err(DscError::Validation(format!("Invalid manifest {path:?} version value: {err}")));
622+
return Err(DscError::Validation(t!("discovery.commandDiscovery.invalidManifestVersion", path = path.to_string_lossy(), err = err).to_string()));
623623
}
624624
};
625625
let extension = load_extension_manifest(path, &manifest)?;
@@ -628,7 +628,7 @@ pub fn load_manifest(path: &Path) -> Result<ImportedManifest, DscError> {
628628

629629
fn load_resource_manifest(path: &Path, manifest: &ResourceManifest) -> Result<DscResource, DscError> {
630630
if let Err(err) = validate_semver(&manifest.version) {
631-
return Err(DscError::Validation(format!("Invalid manifest {path:?} version value: {err}")));
631+
return Err(DscError::Validation(t!("discovery.commandDiscovery.invalidManifestVersion", path = path.to_string_lossy(), err = err).to_string()));
632632
}
633633

634634
let kind = if let Some(kind) = manifest.kind.clone() {
@@ -693,7 +693,7 @@ fn load_resource_manifest(path: &Path, manifest: &ResourceManifest) -> Result<Ds
693693

694694
fn load_extension_manifest(path: &Path, manifest: &ExtensionManifest) -> Result<DscExtension, DscError> {
695695
if let Err(err) = validate_semver(&manifest.version) {
696-
return Err(DscError::Validation(format!("Invalid manifest {path:?} version value: {err}")));
696+
return Err(DscError::Validation(t!("discovery.commandDiscovery.invalidManifestVersion", path = path.to_string_lossy(), err = err).to_string()));
697697
}
698698

699699
let mut capabilities: Vec<dscextension::Capability> = vec![];

dscecho/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ split-debuginfo = "packed" # generates a seperate *.dwp/*.dSYM so the binary ca
1313
strip = "symbols" # See split-debuginfo - allows us to drop the size by ~65%
1414

1515
[dependencies]
16-
clap = { version = "4.1", features = ["derive"] }
16+
clap = { version = "4.5", features = ["derive"] }
1717
rust-i18n = { version = "3.1" }
1818
schemars = { version = "0.8" }
1919
serde = { version = "1.0", features = ["derive"] }

0 commit comments

Comments
 (0)