Skip to content

Commit fbfd81d

Browse files
authored
chore: update rust and the cargo edition (#135)
1 parent 5fe93cb commit fbfd81d

File tree

24 files changed

+1743
-2632
lines changed

24 files changed

+1743
-2632
lines changed

Cargo.lock

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

Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ members = ["crates/*"]
33
resolver = "2"
44

55
[workspace.package]
6-
edition = "2021"
6+
edition = "2024"
77

88
[workspace.dependencies]
99
async-trait = "0.1.86"
@@ -36,7 +36,7 @@ jsonrpc-stdio-server = "18.0.0"
3636
jsonrpc-http-server = "18.0.0"
3737
jsonrpc-core = "18.0.0"
3838

39-
rattler-build = { version = "0.39.0", default-features = false, features = [
39+
rattler-build = { version = "*", default-features = false, features = [
4040
"rustls-tls",
4141
] }
4242

crates/pixi-build-backend/src/cache.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
use std::collections::HashMap;
22

3-
use crate::{traits::Dependencies, ProjectModel, Targets};
3+
use crate::{ProjectModel, Targets, traits::Dependencies};
44

55
pub fn sccache_tools() -> Vec<String> {
66
vec!["sccache".to_string()]

crates/pixi-build-backend/src/cli.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@ use clap::{Parser, Subcommand};
44
use clap_verbosity_flag::{InfoLevel, Verbosity};
55
use miette::{Context, IntoDiagnostic};
66
use pixi_build_types::{
7+
BackendCapabilities, ChannelConfiguration, FrontendCapabilities, PlatformAndVirtualPackages,
78
procedures::{
89
conda_build::CondaBuildParams,
910
conda_metadata::{CondaMetadataParams, CondaMetadataResult},
1011
initialize::InitializeParams,
1112
negotiate_capabilities::NegotiateCapabilitiesParams,
1213
},
13-
BackendCapabilities, ChannelConfiguration, FrontendCapabilities, PlatformAndVirtualPackages,
1414
};
15-
use rattler_build::console_utils::{get_default_env_filter, LoggingOutputHandler};
15+
use rattler_build::console_utils::{LoggingOutputHandler, get_default_env_filter};
1616
use rattler_conda_types::{ChannelConfig, GenericVirtualPackage, Platform};
1717
use rattler_virtual_packages::{VirtualPackage, VirtualPackageOverrides};
1818
use tempfile::TempDir;
@@ -157,7 +157,7 @@ async fn initialize<T: ProtocolInstantiator>(
157157
let (protocol, _initialize_result) = factory
158158
.initialize(InitializeParams {
159159
manifest_path: manifest_path.to_path_buf(),
160-
project_model: project_model.map(Into::into),
160+
project_model,
161161
cache_directory: None,
162162
configuration: None,
163163
})

crates/pixi-build-backend/src/common/configuration.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ use std::collections::BTreeMap;
33
use miette::IntoDiagnostic;
44
use pixi_build_types::PlatformAndVirtualPackages;
55
use rattler_build::{
6+
NormalizedKey,
67
metadata::{Directories, PlatformWithVirtualPackages},
78
recipe::variable::Variable,
8-
NormalizedKey,
99
};
1010
use rattler_conda_types::ChannelUrl;
1111
use rattler_virtual_packages::VirtualPackageOverrides;

crates/pixi-build-backend/src/common/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,6 @@ mod configuration;
33
mod requirements;
44
mod variants;
55

6-
pub use configuration::{build_configuration, BuildConfigurationParams};
7-
pub use requirements::{requirements, PackageRequirements, SourceRequirements};
6+
pub use configuration::{BuildConfigurationParams, build_configuration};
7+
pub use requirements::{PackageRequirements, SourceRequirements, requirements};
88
pub use variants::compute_variants;

crates/pixi-build-backend/src/common/requirements.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
use std::collections::{BTreeMap, HashMap};
22

33
use rattler_build::{
4-
recipe::{parser::Requirements, variable::Variable},
54
NormalizedKey,
5+
recipe::{parser::Requirements, variable::Variable},
66
};
77
use serde::Serialize;
88

99
use crate::{
10-
dependencies::ExtractedDependencies, traits::Dependencies, PackageSpec, ProjectModel, Targets,
10+
PackageSpec, ProjectModel, Targets, dependencies::ExtractedDependencies, traits::Dependencies,
1111
};
1212

1313
pub struct PackageRequirements<P: ProjectModel> {

crates/pixi-build-backend/src/common/variants.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
use std::collections::BTreeMap;
44

55
use miette::IntoDiagnostic;
6-
use rattler_build::{recipe::variable::Variable, variant_config::VariantConfig, NormalizedKey};
6+
use rattler_build::{NormalizedKey, recipe::variable::Variable, variant_config::VariantConfig};
77
use rattler_conda_types::Platform;
88

99
use crate::ProjectModel;

crates/pixi-build-backend/src/dependencies.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ use std::{
66
use miette::{Context, IntoDiagnostic};
77
use pixi_build_types as pbt;
88
use rattler_build::{
9-
recipe::{parser::Dependency, variable::Variable},
109
NormalizedKey,
10+
recipe::{parser::Dependency, variable::Variable},
1111
};
1212
use rattler_conda_types::{MatchSpec, NamelessMatchSpec, PackageName, ParseStrictness::Strict};
1313

crates/pixi-build-backend/src/server.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
use std::{net::SocketAddr, sync::Arc};
22

3-
use jsonrpc_core::{serde_json, to_value, Error, IoHandler, Params};
3+
use jsonrpc_core::{Error, IoHandler, Params, serde_json, to_value};
44
use miette::{IntoDiagnostic, JSONReportHandler};
55
use pixi_build_types::procedures::{
66
self, conda_build::CondaBuildParams, conda_metadata::CondaMetadataParams,

crates/pixi-build-backend/src/tools.rs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,22 +8,23 @@ use indexmap::IndexSet;
88
use itertools::Itertools;
99
use miette::IntoDiagnostic;
1010
use pixi_build_types::procedures::conda_metadata::CondaMetadataParams;
11+
use rattler_build::metadata::Debug;
1112
use rattler_build::{
1213
hash::HashInfo,
1314
metadata::{
1415
BuildConfiguration, Directories, Output, PackageIdentifier, PackagingSettings,
1516
PlatformWithVirtualPackages,
1617
},
1718
recipe::{
18-
parser::{find_outputs_from_src, GlobVec},
19-
variable::Variable,
2019
Jinja, ParsingError, Recipe,
20+
parser::{GlobVec, find_outputs_from_src},
21+
variable::Variable,
2122
},
2223
selectors::SelectorConfig,
2324
system_tools::SystemTools,
2425
variant_config::{DiscoveredOutput, ParseErrors, VariantConfig},
2526
};
26-
use rattler_conda_types::{package::ArchiveType, GenericVirtualPackage, Platform};
27+
use rattler_conda_types::{GenericVirtualPackage, Platform, package::ArchiveType};
2728
use rattler_package_streaming::write::CompressionLevel;
2829
use rattler_virtual_packages::VirtualPackageOverrides;
2930
use url::Url;
@@ -198,7 +199,7 @@ impl RattlerBuild {
198199
recipe.package().name().clone(),
199200
PackageIdentifier {
200201
name: recipe.package().name().clone(),
201-
version: recipe.package().version().version().clone(),
202+
version: recipe.package().version().version().clone().into(),
202203
build_string: recipe
203204
.build()
204205
.string()
@@ -243,6 +244,7 @@ impl RattlerBuild {
243244
store_recipe: false,
244245
force_colors: true,
245246
sandbox_config: None,
247+
debug: Debug::new(false),
246248
},
247249
finalized_dependencies: None,
248250
finalized_cache_dependencies: None,

crates/pixi-build-backend/src/traits/project.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ use pixi_build_types::{self as pbt};
1111
use rattler_build::NormalizedKey;
1212
use rattler_conda_types::{Platform, Version};
1313

14-
use super::{targets::Targets, Dependencies, PackageSpec};
14+
use super::{Dependencies, PackageSpec, targets::Targets};
1515

1616
/// A trait that defines the project model interface
1717
pub trait ProjectModel {

crates/pixi-build-cmake/src/cmake.rs

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,25 +10,26 @@ use crate::{
1010
};
1111
use miette::IntoDiagnostic;
1212
use pixi_build_backend::common::{PackageRequirements, SourceRequirements};
13+
use pixi_build_backend::{ProjectModel, Targets};
1314
use pixi_build_backend::{
14-
common::{requirements, BuildConfigurationParams},
15+
common::{BuildConfigurationParams, requirements},
1516
compilers::default_compiler,
16-
traits::{project::new_spec, Dependencies},
17+
traits::{Dependencies, project::new_spec},
1718
};
18-
use pixi_build_backend::{ProjectModel, Targets};
19+
use rattler_build::metadata::Debug;
1920
use rattler_build::recipe::parser::{BuildString, ScriptContent};
2021
use rattler_build::{
22+
NormalizedKey,
2123
console_utils::LoggingOutputHandler,
2224
hash::HashInfo,
2325
metadata::{BuildConfiguration, PackagingSettings},
2426
recipe::{
27+
Recipe,
2528
parser::{Build, Dependency, Package, Script},
2629
variable::Variable,
27-
Recipe,
2830
},
29-
NormalizedKey,
3031
};
31-
use rattler_conda_types::{package::ArchiveType, MatchSpec, NoArchType, PackageName, Platform};
32+
use rattler_conda_types::{MatchSpec, NoArchType, PackageName, Platform, package::ArchiveType};
3233
use rattler_package_streaming::write::CompressionLevel;
3334

3435
pub struct CMakeBuildBackend<P: ProjectModel> {
@@ -253,6 +254,7 @@ pub(crate) fn construct_configuration(
253254
store_recipe: false,
254255
force_colors: true,
255256
sandbox_config: None,
257+
debug: Debug::new(false),
256258
}
257259
}
258260

crates/pixi-build-cmake/src/protocol.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,13 @@ use std::{str::FromStr, sync::Arc};
22

33
use miette::{Context, IntoDiagnostic};
44
use pixi_build_backend::{
5+
PackageSourceSpec,
56
common::{build_configuration, compute_variants},
67
protocol::{Protocol, ProtocolInstantiator},
78
utils::TemporaryRenderedRecipe,
8-
PackageSourceSpec,
99
};
1010
use pixi_build_types::{
11+
BackendCapabilities, CondaPackageMetadata, PlatformAndVirtualPackages, ProjectModelV1,
1112
procedures::{
1213
conda_build::{
1314
CondaBuildParams, CondaBuildResult, CondaBuiltPackage, CondaOutputIdentifier,
@@ -16,21 +17,20 @@ use pixi_build_types::{
1617
initialize::{InitializeParams, InitializeResult},
1718
negotiate_capabilities::{NegotiateCapabilitiesParams, NegotiateCapabilitiesResult},
1819
},
19-
BackendCapabilities, CondaPackageMetadata, PlatformAndVirtualPackages, ProjectModelV1,
2020
};
2121
use rattler_build::{
2222
build::run_build,
2323
console_utils::LoggingOutputHandler,
2424
hash::HashInfo,
2525
metadata::{Directories, Output},
26-
recipe::{parser::BuildString, variable::Variable, Jinja},
26+
recipe::{Jinja, parser::BuildString, variable::Variable},
2727
render::resolved_dependencies::DependencyInfo,
2828
tool_configuration::Configuration,
2929
};
3030
use rattler_conda_types::{ChannelConfig, MatchSpec, PackageName, Platform};
3131

3232
use crate::{
33-
cmake::{construct_configuration, CMakeBuildBackend},
33+
cmake::{CMakeBuildBackend, construct_configuration},
3434
config::CMakeBackendConfig,
3535
};
3636

@@ -173,7 +173,7 @@ impl Protocol for CMakeBuildBackend<ProjectModelV1> {
173173

174174
packages.push(CondaPackageMetadata {
175175
name: output.name().clone(),
176-
version: output.version().clone().into(),
176+
version: output.version().clone(),
177177
build: build_string.to_string(),
178178
build_number: output.recipe.build.number,
179179
subdir: output.build_configuration.target_platform,
@@ -323,16 +323,16 @@ impl Protocol for CMakeBuildBackend<ProjectModelV1> {
323323
subdir,
324324
} = &iden;
325325
name.as_ref()
326-
.map_or(true, |n| output.name().as_normalized() == n)
326+
.is_none_or(|n| output.name().as_normalized() == n)
327327
&& version
328328
.as_ref()
329-
.map_or(true, |v| output.version().to_string() == *v)
329+
.is_none_or(|v| output.version().to_string() == *v)
330330
&& build
331331
.as_ref()
332-
.map_or(true, |b| output.build_string() == b.as_str())
332+
.is_none_or(|b| output.build_string() == b.as_str())
333333
&& subdir
334334
.as_ref()
335-
.map_or(true, |s| output.target_platform().as_str() == s)
335+
.is_none_or(|s| output.target_platform().as_str() == s)
336336
})?;
337337
Some(outputs.remove(pos))
338338
})

crates/pixi-build-python/src/build_script.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use std::path::PathBuf;
22

33
use minijinja::Environment;
4-
use pixi_build_backend::{traits::Dependencies, ProjectModel, Targets};
4+
use pixi_build_backend::{ProjectModel, Targets, traits::Dependencies};
55
use serde::Serialize;
66

77
const UV: &str = "uv";

crates/pixi-build-python/src/config.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ pub struct PythonBackendConfig {
1818
impl PythonBackendConfig {
1919
/// Whether to build a noarch package or a platform-specific package.
2020
pub fn noarch(&self) -> bool {
21-
self.noarch.map_or(true, identity)
21+
self.noarch.is_none_or(identity)
2222
}
2323
}
2424

crates/pixi-build-python/src/protocol.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,13 @@ use std::{str::FromStr, sync::Arc};
22

33
use miette::{Context, IntoDiagnostic};
44
use pixi_build_backend::{
5+
PackageSourceSpec, ProjectModel,
56
common::{build_configuration, compute_variants},
67
protocol::{Protocol, ProtocolInstantiator},
78
utils::TemporaryRenderedRecipe,
8-
PackageSourceSpec, ProjectModel,
99
};
1010
use pixi_build_types::{
11+
BackendCapabilities, CondaPackageMetadata, PlatformAndVirtualPackages,
1112
procedures::{
1213
conda_build::{
1314
CondaBuildParams, CondaBuildResult, CondaBuiltPackage, CondaOutputIdentifier,
@@ -16,15 +17,14 @@ use pixi_build_types::{
1617
initialize::{InitializeParams, InitializeResult},
1718
negotiate_capabilities::{NegotiateCapabilitiesParams, NegotiateCapabilitiesResult},
1819
},
19-
BackendCapabilities, CondaPackageMetadata, PlatformAndVirtualPackages,
2020
};
2121
// use pixi_build_types as pbt;
2222
use rattler_build::{
2323
build::run_build,
2424
console_utils::LoggingOutputHandler,
2525
hash::HashInfo,
2626
metadata::{Directories, Output},
27-
recipe::{parser::BuildString, variable::Variable, Jinja},
27+
recipe::{Jinja, parser::BuildString, variable::Variable},
2828
render::resolved_dependencies::DependencyInfo,
2929
tool_configuration::Configuration,
3030
variant_config::VariantConfig,
@@ -33,7 +33,7 @@ use rattler_conda_types::{ChannelConfig, MatchSpec, PackageName, Platform};
3333

3434
use crate::{
3535
config::PythonBackendConfig,
36-
python::{construct_configuration, PythonBuildBackend},
36+
python::{PythonBuildBackend, construct_configuration},
3737
};
3838

3939
#[async_trait::async_trait]
@@ -164,7 +164,7 @@ impl<P: ProjectModel + Sync> Protocol for PythonBuildBackend<P> {
164164

165165
packages.push(CondaPackageMetadata {
166166
name: output.name().clone(),
167-
version: output.version().clone().into(),
167+
version: output.version().clone(),
168168
build: build_string.to_string(),
169169
build_number: output.recipe.build.number,
170170
subdir: output.build_configuration.target_platform,
@@ -315,16 +315,16 @@ impl<P: ProjectModel + Sync> Protocol for PythonBuildBackend<P> {
315315
subdir,
316316
} = &iden;
317317
name.as_ref()
318-
.map_or(true, |n| output.name().as_normalized() == n)
318+
.is_none_or(|n| output.name().as_normalized() == n)
319319
&& version
320320
.as_ref()
321-
.map_or(true, |v| output.version().to_string() == *v)
321+
.is_none_or(|v| output.version().to_string() == *v)
322322
&& build
323323
.as_ref()
324-
.map_or(true, |b| output.build_string() == b.as_str())
324+
.is_none_or(|b| output.build_string() == b.as_str())
325325
&& subdir
326326
.as_ref()
327-
.map_or(true, |s| output.target_platform().as_str() == s)
327+
.is_none_or(|s| output.target_platform().as_str() == s)
328328
})?;
329329
Some(outputs.remove(pos))
330330
})

0 commit comments

Comments
 (0)