From 2518a15e86d47edd27c4eb6f369da2adb458fa52 Mon Sep 17 00:00:00 2001 From: Steve Lee Date: Sat, 14 Mar 2026 18:19:45 -0700 Subject: [PATCH 1/2] Update to version 3.2-preview.13 --- Cargo.lock | 80 +++++++++---------- Cargo.toml | 12 +-- dsc-bicep-ext/Cargo.toml | 2 +- dsc/Cargo.toml | 4 +- dsc/src/mcp/mcp_server.rs | 12 +-- dsc/src/util.rs | 14 ++-- lib/dsc-lib-osinfo/Cargo.toml | 2 +- lib/dsc-lib-pal/Cargo.toml | 2 +- lib/dsc-lib-registry/Cargo.toml | 2 +- lib/dsc-lib-security_context/Cargo.toml | 2 +- lib/dsc-lib/Cargo.toml | 2 +- lib/dsc-lib/src/configure/mod.rs | 2 +- .../src/discovery/command_discovery.rs | 12 ++- .../src/dscresources/command_resource.rs | 4 +- lib/dsc-lib/src/dscresources/invoke_result.rs | 4 +- packaging/msix/AppxManifest.xml | 11 +++ resources/WindowsUpdate/Cargo.toml | 2 +- resources/dism_dsc/Cargo.toml | 2 +- resources/dscecho/Cargo.toml | 2 +- resources/osinfo/Cargo.toml | 2 +- resources/process/Cargo.toml | 2 +- resources/registry/Cargo.toml | 2 +- resources/runcommandonset/Cargo.toml | 2 +- resources/sshdconfig/Cargo.toml | 2 +- resources/sshdconfig/src/parser.rs | 2 +- tools/dsctest/Cargo.toml | 2 +- tools/test_group_resource/Cargo.toml | 2 +- y2j/Cargo.toml | 2 +- 28 files changed, 105 insertions(+), 86 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7c79a7e94..e43bffb6b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -48,9 +48,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.21" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a" +checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d" dependencies = [ "anstyle", "anstyle-parse", @@ -69,9 +69,9 @@ checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78" [[package]] name = "anstyle-parse" -version = "0.2.7" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2" +checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e" dependencies = [ "utf8parse", ] @@ -346,9 +346,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.48" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2134bb3ea021b78629caa971416385309e0131b351b25e01dc16fb54e1b5fae" +checksum = "b193af5b67834b676abd72466a96c1024e6a6ad978a1f484bd90b85c94041351" dependencies = [ "clap_builder", "clap_derive", @@ -356,9 +356,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.48" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2ba64afa3c0a6df7fa517765e31314e983f51dda798ffba27b988194fb65dc9" +checksum = "714a53001bf66416adb0e2ef5ac857140e7dc3a0c48fb28b2f10762fc4b5069f" dependencies = [ "anstream", "anstyle", @@ -368,18 +368,18 @@ dependencies = [ [[package]] name = "clap_complete" -version = "4.5.58" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75bf0b32ad2e152de789bb635ea4d3078f6b838ad7974143e99b99f45a04af4a" +checksum = "19c9f1dde76b736e3681f28cec9d5a61299cbaae0fce80a68e43724ad56031eb" dependencies = [ "clap", ] [[package]] name = "clap_derive" -version = "4.5.47" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbfd7eae0b0f1a6e63d4b13c9c478de77c2eb546fba158ad50b4203dc24b9f9c" +checksum = "1110bd8a634a1ab8cb04345d8d878267d57c3cf1b38d91b71af6686408bbca6a" dependencies = [ "heck", "proc-macro2", @@ -389,9 +389,9 @@ dependencies = [ [[package]] name = "clap_lex" -version = "0.7.5" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675" +checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9" [[package]] name = "colorchoice" @@ -723,7 +723,7 @@ dependencies = [ [[package]] name = "dsc" -version = "3.2.0-preview.12" +version = "3.2.0-preview.13" dependencies = [ "clap", "clap_complete", @@ -881,7 +881,7 @@ name = "dsc-lib-security_context" version = "0.1.0" dependencies = [ "is_elevated", - "nix 0.31.1", + "nix 0.31.2", ] [[package]] @@ -1747,9 +1747,9 @@ checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2" [[package]] name = "libc" -version = "0.2.180" +version = "0.2.183" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcc35a38544a891a5f7c865aca548a982ccb3b8650a5b06d0fd33a10283c56fc" +checksum = "b5b646652bf6661599e1da8901b3b9522896f01e736bad5f723fe7a3a27f899d" [[package]] name = "linked-hash-map" @@ -1759,9 +1759,9 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" [[package]] name = "linux-raw-sys" -version = "0.11.0" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" +checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53" [[package]] name = "litemap" @@ -1868,9 +1868,9 @@ dependencies = [ [[package]] name = "nix" -version = "0.31.1" +version = "0.31.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225e7cfe711e0ba79a68baeddb2982723e4235247aefce1482f2f16c27865b66" +checksum = "5d6d0705320c1e6ba1d912b5e37cf18071b6c2e9b7fa8215a1e8a7651966f5d3" dependencies = [ "bitflags 2.9.4", "cfg-if", @@ -2359,9 +2359,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.103" +version = "1.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ee95bc4ef87b8d5ba32e8b7714ccc834865276eab0aed5c9958d00ec45f49e8" +checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" dependencies = [ "unicode-ident", ] @@ -2451,9 +2451,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.42" +version = "1.0.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a338cc41d27e6cc6dce6cefc13a0729dfbb81c262b1f519331575dd80ef3067f" +checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" dependencies = [ "proc-macro2", ] @@ -2663,9 +2663,9 @@ dependencies = [ [[package]] name = "rmcp" -version = "0.16.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc4c9c94680f75470ee8083a0667988b5d7b5beb70b9f998a8e51de7c682ce60" +checksum = "ba6b9d2f0efe2258b23767f1f9e0054cfbcac9c2d6f81a031214143096d7864f" dependencies = [ "async-trait", "base64", @@ -2688,9 +2688,9 @@ dependencies = [ [[package]] name = "rmcp-macros" -version = "0.16.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90c23c8f26cae4da838fbc3eadfaecf2d549d97c04b558e7bd90526a9c28b42a" +checksum = "ab9d95d7ed26ad8306352b0d5f05b593222b272790564589790d210aa15caa9e" dependencies = [ "darling 0.23.0", "proc-macro2", @@ -2765,9 +2765,9 @@ dependencies = [ [[package]] name = "rustix" -version = "1.1.3" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "146c9e247ccc180c1f61615433868c99f3de3ae256a30a43b49f67c2d9171f34" +checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" dependencies = [ "bitflags 2.9.4", "errno", @@ -3037,9 +3037,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "syn" -version = "2.0.111" +version = "2.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "390cc9a294ab71bdb1aa2e99d13be9c753cd2d7bd6560c77118597410c4d2e87" +checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" dependencies = [ "proc-macro2", "quote", @@ -3103,9 +3103,9 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.25.0" +version = "3.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0136791f7c95b1f6dd99f9cc786b91bb81c3800b639b3478e561ddb7be95e5f1" +checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd" dependencies = [ "fastrand", "getrandom 0.4.1", @@ -3250,9 +3250,9 @@ dependencies = [ [[package]] name = "tokio" -version = "1.49.0" +version = "1.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72a2903cd7736441aac9df9d7688bd0ce48edccaadf181c3b90be801e81d3d86" +checksum = "27ad5e34374e03cfffefc301becb44e9dc3c17584f414349ebe29ed26661822d" dependencies = [ "bytes", "libc", @@ -3722,9 +3722,9 @@ checksum = "133bf74f01486773317ddfcde8e2e20d2933cc3b68ab797e5d718bef996a81de" [[package]] name = "uuid" -version = "1.21.0" +version = "1.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b672338555252d43fd2240c714dc444b8c6fb0a5c5335e65a07bba7742735ddb" +checksum = "a68d3c8f01c0cfa54a75291d83601161799e4a89a39e0929f4b0354d88757a37" dependencies = [ "getrandom 0.4.1", "js-sys", diff --git a/Cargo.toml b/Cargo.toml index 607dd58ff..d16c4be72 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -148,9 +148,9 @@ base64 = { version = "0.22" } # dsc-lib, sshdconfig chrono = { version = "0.4" } # dsc, dsc-lib, dsc-bicep-ext, dscecho, registry, runcommandonset, sshdconfig, dsctest, test_group_resource -clap = { version = "4.5", features = ["derive"] } +clap = { version = "4.6", features = ["derive"] } # dsc -clap_complete = { version = "4.5" } +clap_complete = { version = "4.6" } # dsc-lib const-str = {version = "1.1" } # dsc, registry, dsc-lib-registry, sshdconfig @@ -192,7 +192,7 @@ regex = { version = "1.12" } # registry, dsc-lib, dsc-lib-registry, dsctest registry = { version = "1.3" } # dsc -rmcp = { version = "0.16" } +rmcp = { version = "1.2" } # dsc_lib rt-format = { version = "0.3" } # dsc, dsc-lib, dsc-bicep-ext, dscecho, registry, dsc-lib-registry, runcommandonset, sshdconfig @@ -214,11 +214,11 @@ syntect = { version = "5.3", features = ["default-fancy"], default-features = fa # dsc, process sysinfo = { version = "0.38" } # sshdconfig -tempfile = { version = "3.25" } +tempfile = { version = "3.27" } # dsc, dsc-lib, registry, dsc-lib-registry, sshdconfig thiserror = { version = "2.0" } # dsc, dsc-lib, dsc-bicep-ext -tokio = { version = "1.49" } +tokio = { version = "1.50" } # dsc-bicep-ext tokio-stream = { version = "0.1" } # dsc @@ -244,7 +244,7 @@ tree-sitter-rust = { version = "0.24" } # registry, dsc-lib-registry, dsctest utfx = { version = "0.1" } # dsc-lib -uuid = { version = "1.21", features = ["v4"] } +uuid = { version = "1.22", features = ["v4"] } # dsc-lib, dsc-lib-jsonschema url = { version = "2.5" } # dsc-lib, dsc-lib-jsonschema diff --git a/dsc-bicep-ext/Cargo.toml b/dsc-bicep-ext/Cargo.toml index 6911edc6c..d930002af 100644 --- a/dsc-bicep-ext/Cargo.toml +++ b/dsc-bicep-ext/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dsc-bicep-ext" version = "0.1.0" -edition = "2021" +edition = "2024" [[bin]] name = "dsc-bicep-ext" diff --git a/dsc/Cargo.toml b/dsc/Cargo.toml index 2ede5aad1..fd8b0e082 100644 --- a/dsc/Cargo.toml +++ b/dsc/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dsc" -version = "3.2.0-preview.12" -edition = "2021" +version = "3.2.0-preview.13" +edition = "2024" [dependencies] # external dependencies diff --git a/dsc/src/mcp/mcp_server.rs b/dsc/src/mcp/mcp_server.rs index 4be9e0c44..7ac3b1dd1 100644 --- a/dsc/src/mcp/mcp_server.rs +++ b/dsc/src/mcp/mcp_server.rs @@ -39,13 +39,13 @@ impl Default for McpServer { #[tool_handler] impl ServerHandler for McpServer { fn get_info(&self) -> ServerInfo { - ServerInfo { - capabilities: ServerCapabilities::builder() + let mut info = ServerInfo::new( + ServerCapabilities::builder() .enable_tools() - .build(), - instructions: Some(t!("mcp.mod.instructions").to_string()), - ..Default::default() - } + .build() + ); + info.instructions = Some(t!("mcp.mod.instructions").to_string()); + info } async fn initialize(&self, _request: InitializeRequestParams, _context: RequestContext) -> Result { diff --git a/dsc/src/util.rs b/dsc/src/util.rs index 049a886fa..d691e8935 100644 --- a/dsc/src/util.rs +++ b/dsc/src/util.rs @@ -429,7 +429,9 @@ pub fn enable_tracing(trace_level_arg: Option<&TraceLevel>, trace_format_arg: Op } // set DSC_TRACE_LEVEL for child processes - env::set_var(DSC_TRACE_LEVEL, tracing_level.to_string().to_ascii_lowercase()); + unsafe { + env::set_var(DSC_TRACE_LEVEL, tracing_level.to_string().to_ascii_lowercase()); + } info!("Trace-level is {:?}", tracing_setting.level); } @@ -549,7 +551,9 @@ pub fn set_dscconfigroot(config_path: &str) -> String // Set env var so child processes (of resources) can use it debug!("{} '{config_root_path}'", t!("util.settingDscConfigRoot")); - env::set_var(DSC_CONFIG_ROOT, config_root_path); + unsafe { + env::set_var(DSC_CONFIG_ROOT, config_root_path); + } full_path.to_string_lossy().into_owned() } @@ -625,11 +629,11 @@ fn parse_input_to_json_value(input: &str, context: &str) -> Result Result, DscError> { let value = parse_input_to_json_value(params, context)?; - + let Some(map) = value.as_object().cloned() else { return Err(DscError::Parser(t!("util.parametersNotObject").to_string())); }; - + Ok(map) } @@ -653,7 +657,7 @@ fn params_to_map(params: &str, context: &str) -> Result Result { use serde_json::Value; - + // Convert both parameter inputs to maps let mut file_map = params_to_map(file_params, "FileParameters")?; let inline_map = params_to_map(inline_params, "InlineParameters")?; diff --git a/lib/dsc-lib-osinfo/Cargo.toml b/lib/dsc-lib-osinfo/Cargo.toml index 184993af9..8d9ce0135 100644 --- a/lib/dsc-lib-osinfo/Cargo.toml +++ b/lib/dsc-lib-osinfo/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dsc-lib-osinfo" version = "1.0.0" -edition = "2021" +edition = "2024" [lib] doctest = false diff --git a/lib/dsc-lib-pal/Cargo.toml b/lib/dsc-lib-pal/Cargo.toml index 8f64cd018..c248cc6e0 100644 --- a/lib/dsc-lib-pal/Cargo.toml +++ b/lib/dsc-lib-pal/Cargo.toml @@ -3,7 +3,7 @@ [package] name = "dsc-lib-pal" version = "0.1.0" -edition = "2021" +edition = "2024" [lib] doctest = false diff --git a/lib/dsc-lib-registry/Cargo.toml b/lib/dsc-lib-registry/Cargo.toml index cd38a3e3b..0bc2e34dd 100644 --- a/lib/dsc-lib-registry/Cargo.toml +++ b/lib/dsc-lib-registry/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dsc-lib-registry" version = "0.1.0" -edition = "2021" +edition = "2024" [package.metadata.i18n] available-locales = ["en-us"] diff --git a/lib/dsc-lib-security_context/Cargo.toml b/lib/dsc-lib-security_context/Cargo.toml index f409f83bd..f0098d0b3 100644 --- a/lib/dsc-lib-security_context/Cargo.toml +++ b/lib/dsc-lib-security_context/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dsc-lib-security_context" version = "0.1.0" -edition = "2021" +edition = "2024" [lib] doctest = false diff --git a/lib/dsc-lib/Cargo.toml b/lib/dsc-lib/Cargo.toml index b96169cb6..c4ef36de8 100644 --- a/lib/dsc-lib/Cargo.toml +++ b/lib/dsc-lib/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dsc-lib" version = "3.2.0" -edition = "2021" +edition = "2024" [lib] doctest = false diff --git a/lib/dsc-lib/src/configure/mod.rs b/lib/dsc-lib/src/configure/mod.rs index 424b9ac4d..bad5d7820 100644 --- a/lib/dsc-lib/src/configure/mod.rs +++ b/lib/dsc-lib/src/configure/mod.rs @@ -507,7 +507,7 @@ impl Configurator { }; match &mut get_result { - GetResult::Resource(ref mut resource_result) => { + GetResult::Resource(resource_result) => { self.context.references.insert(resource_id(&resource.resource_type, &evaluated_name), serde_json::to_value(&resource_result.actual_state)?); get_metadata_from_result(Some(&mut self.context), &mut resource_result.actual_state, &mut metadata, &mut execution_information)?; }, diff --git a/lib/dsc-lib/src/discovery/command_discovery.rs b/lib/dsc-lib/src/discovery/command_discovery.rs index 24d644eb1..cdb899744 100644 --- a/lib/dsc-lib/src/discovery/command_discovery.rs +++ b/lib/dsc-lib/src/discovery/command_discovery.rs @@ -171,7 +171,9 @@ impl CommandDiscovery { // when using custom path, intent is to isolate the search of manifests and executables to the custom path // so we replace the PATH with the custom path if let Ok(new_path) = env::join_paths(paths.clone()) { - env::set_var("PATH", new_path); + unsafe { + env::set_var("PATH", new_path); + } } else { return Err(DscError::Operation(t!("discovery.commandDiscovery.failedJoinEnvPath").to_string())); } @@ -186,7 +188,9 @@ impl CommandDiscovery { paths.push(exe_home_pb); if let Ok(new_path) = env::join_paths(paths.clone()) { - env::set_var("PATH", new_path); + unsafe { + env::set_var("PATH", new_path); + } } } } @@ -302,7 +306,7 @@ impl ResourceDiscovery for CommandDiscovery { }, ImportedManifest::Resource(resource) => { if regex.is_match(&resource.type_name) { - if let Some(ref manifest) = &resource.manifest { + if let Some(manifest) = &resource.manifest { if manifest.kind == Some(Kind::Adapter) { trace!("{}", t!("discovery.commandDiscovery.adapterFound", adapter = resource.type_name, version = resource.version)); insert_resource(&mut adapters, &resource); @@ -803,7 +807,7 @@ fn load_adapted_resource_manifest(path: &Path, manifest: &AdaptedDscResourceMani resource.path = resource_path; resource.directory = directory.to_path_buf(); resource.manifest = None; - resource.schema = Some(manifest.schema.clone()); + resource.schema = Some(manifest.schema.clone()); Ok(resource) } diff --git a/lib/dsc-lib/src/dscresources/command_resource.rs b/lib/dsc-lib/src/dscresources/command_resource.rs index c413ce77d..47341e8a7 100644 --- a/lib/dsc-lib/src/dscresources/command_resource.rs +++ b/lib/dsc-lib/src/dscresources/command_resource.rs @@ -622,7 +622,7 @@ pub fn get_schema(resource: &DscResource, target_resource: Option<&DscResource>) }; match schema_kind { - SchemaKind::Command(ref command) => { + SchemaKind::Command(command) => { let resource_type = match target_resource { Some(r) => r.type_name.clone(), None => resource.type_name.clone(), @@ -631,7 +631,7 @@ pub fn get_schema(resource: &DscResource, target_resource: Option<&DscResource>) let (_exit_code, stdout, _stderr) = invoke_command(&command.executable, args, None, Some(&resource.directory), None, manifest.exit_codes.as_ref())?; Ok(stdout) }, - SchemaKind::Embedded(ref schema) => { + SchemaKind::Embedded(schema) => { let json = serde_json::to_string(schema)?; Ok(json) }, diff --git a/lib/dsc-lib/src/dscresources/invoke_result.rs b/lib/dsc-lib/src/dscresources/invoke_result.rs index ace548892..fc65b150e 100644 --- a/lib/dsc-lib/src/dscresources/invoke_result.rs +++ b/lib/dsc-lib/src/dscresources/invoke_result.rs @@ -99,10 +99,10 @@ pub enum TestResult { #[must_use] pub fn get_in_desired_state(test_result: &TestResult) -> bool { match test_result { - TestResult::Resource(ref resource_test_result) => { + TestResult::Resource(resource_test_result) => { resource_test_result.in_desired_state }, - TestResult::Group(ref group_test_result) => { + TestResult::Group(group_test_result) => { for result in group_test_result { if !get_in_desired_state(&(result.result)) { return false; diff --git a/packaging/msix/AppxManifest.xml b/packaging/msix/AppxManifest.xml index cc6e0a1f2..be1ad6880 100644 --- a/packaging/msix/AppxManifest.xml +++ b/packaging/msix/AppxManifest.xml @@ -50,6 +50,17 @@ + + + + + + + + + + + diff --git a/resources/WindowsUpdate/Cargo.toml b/resources/WindowsUpdate/Cargo.toml index 24b57ebfb..d4cc78f89 100644 --- a/resources/WindowsUpdate/Cargo.toml +++ b/resources/WindowsUpdate/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dsc-resource-windows-update" version = "0.1.0" -edition = "2021" +edition = "2024" [[bin]] name = "wu_dsc" diff --git a/resources/dism_dsc/Cargo.toml b/resources/dism_dsc/Cargo.toml index 006dd1796..e21263db0 100644 --- a/resources/dism_dsc/Cargo.toml +++ b/resources/dism_dsc/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dism_dsc" version = "0.1.0" -edition = "2021" +edition = "2024" [[bin]] name = "dism_dsc" diff --git a/resources/dscecho/Cargo.toml b/resources/dscecho/Cargo.toml index 7a091a530..0fef946e3 100644 --- a/resources/dscecho/Cargo.toml +++ b/resources/dscecho/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dsc-resource-echo" version = "1.0.0" -edition = "2021" +edition = "2024" [[bin]] name = "dscecho" diff --git a/resources/osinfo/Cargo.toml b/resources/osinfo/Cargo.toml index ef588bec1..93d5319b9 100644 --- a/resources/osinfo/Cargo.toml +++ b/resources/osinfo/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dsc-resource-osinfo" version = "1.0.0" -edition = "2021" +edition = "2024" [[bin]] name = "osinfo" diff --git a/resources/process/Cargo.toml b/resources/process/Cargo.toml index e43a2f36e..bc9f37165 100644 --- a/resources/process/Cargo.toml +++ b/resources/process/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dsc-resource-process" version = "0.1.0" -edition = "2021" +edition = "2024" [[bin]] name = "process" diff --git a/resources/registry/Cargo.toml b/resources/registry/Cargo.toml index de7e3a825..3d89a7b7a 100644 --- a/resources/registry/Cargo.toml +++ b/resources/registry/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dsc-resource-registry" version = "1.0.0" -edition = "2021" +edition = "2024" [[bin]] name = "registry" diff --git a/resources/runcommandonset/Cargo.toml b/resources/runcommandonset/Cargo.toml index dfca6b07b..141769d40 100644 --- a/resources/runcommandonset/Cargo.toml +++ b/resources/runcommandonset/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dsc-resource-run_command_on_set" version = "0.1.0" -edition = "2021" +edition = "2024" [[bin]] name = "runcommandonset" diff --git a/resources/sshdconfig/Cargo.toml b/resources/sshdconfig/Cargo.toml index 4e0de3e6e..8e954ebab 100644 --- a/resources/sshdconfig/Cargo.toml +++ b/resources/sshdconfig/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dsc-resource-sshdconfig" version = "0.1.0" -edition = "2021" +edition = "2024" [[bin]] name = "sshdconfig" diff --git a/resources/sshdconfig/src/parser.rs b/resources/sshdconfig/src/parser.rs index 99f1f3580..6be283d8c 100644 --- a/resources/sshdconfig/src/parser.rs +++ b/resources/sshdconfig/src/parser.rs @@ -232,7 +232,7 @@ impl SshdConfigParser { if is_repeatable { let existing_value = map.get_mut(key); if let Some(existing_value) = existing_value { - if let Value::Array(ref mut arr) = existing_value { + if let Value::Array(arr) = existing_value { if let Value::Array(vector) = value { for v in vector { arr.push(v); diff --git a/tools/dsctest/Cargo.toml b/tools/dsctest/Cargo.toml index 02438e7c2..b339babbb 100644 --- a/tools/dsctest/Cargo.toml +++ b/tools/dsctest/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "dsctest" version = "0.1.0" -edition = "2021" +edition = "2024" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/tools/test_group_resource/Cargo.toml b/tools/test_group_resource/Cargo.toml index 0746c4afd..7c715d9b2 100644 --- a/tools/test_group_resource/Cargo.toml +++ b/tools/test_group_resource/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "test_group_resource" version = "0.1.0" -edition = "2021" +edition = "2024" [dependencies] # external dependencies diff --git a/y2j/Cargo.toml b/y2j/Cargo.toml index 6e6e38a35..e52feb0e2 100644 --- a/y2j/Cargo.toml +++ b/y2j/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "y2j" version = "1.0.0" -edition = "2021" +edition = "2024" [dependencies] serde_json = { workspace = true } From 7f1c2095c33dcfef00fcef6162ae40d62db5ff48 Mon Sep 17 00:00:00 2001 From: Steve Lee Date: Sat, 14 Mar 2026 23:27:54 -0700 Subject: [PATCH 2/2] fix windows build --- lib/dsc-lib/src/configure/mod.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/dsc-lib/src/configure/mod.rs b/lib/dsc-lib/src/configure/mod.rs index bad5d7820..3dd32ab43 100644 --- a/lib/dsc-lib/src/configure/mod.rs +++ b/lib/dsc-lib/src/configure/mod.rs @@ -337,7 +337,9 @@ fn get_metadata_from_result(mut context: Option<&mut Context>, properties: &mut } // set the current process env vars to the new values for (key, value) in env_vars { - std::env::set_var(&key.to_string(), &value); + unsafe { + std::env::set_var(&key.to_string(), &value); + } } } }