Skip to content

Commit e0bf803

Browse files
committed
fixed feature flag blocks
1 parent 4c85b76 commit e0bf803

1 file changed

Lines changed: 17 additions & 14 deletions

File tree

src/commands/plug.rs

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,8 @@ use std::{
33
path::PathBuf,
44
};
55

6-
use anyhow::{anyhow, bail, Context as _, Error, Result};
6+
use anyhow::{bail, Context as _, Error, Result};
77
use clap::Args;
8-
use std::borrow::Cow;
98
use std::str::FromStr;
109
use wac_graph::{CompositionGraph, EncodeOptions, NodeId, PackageId};
1110
use wac_types::{Package, SubtypeChecker};
@@ -30,24 +29,24 @@ impl FromStr for PackageRef {
3029
type Err = Error;
3130

3231
fn from_str(s: &str) -> Result<Self, Self::Err> {
33-
if cfg!(not(feature = "registry")) {
34-
return Ok(Self::LocalPath(PathBuf::from(s)));
35-
}
36-
3732
#[cfg(feature = "registry")]
38-
if let Ok(package_name) = PackageName::new(s) {
33+
return if let Ok(package_name) = PackageName::new(s) {
3934
// only `namespace:package-name` without file extensions is valid
4035
Ok(Self::RegistryPackage(package_name))
4136
} else {
4237
Ok(Self::LocalPath(PathBuf::from(s)))
43-
}
38+
};
39+
40+
#[cfg(not(feature = "registry"))]
41+
Ok(Self::LocalPath(PathBuf::from(s)))
4442
}
4543
}
4644

4745
impl std::fmt::Display for PackageRef {
4846
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4947
match self {
5048
Self::LocalPath(path) => write!(f, "{}", path.display()),
49+
#[cfg(feature = "registry")]
5150
Self::RegistryPackage(name) => write!(f, "{}", name),
5251
}
5352
}
@@ -98,16 +97,18 @@ impl PlugCommand {
9897
client
9998
.as_ref()
10099
.ok_or_else(|| {
101-
anyhow!("Warg registry is not configured. Package `{name}` was not found.")
100+
anyhow::anyhow!(
101+
"Warg registry is not configured. Package `{name}` was not found."
102+
)
102103
})?
103104
.download(name, &semver::VersionReq::STAR)
104105
.await?
105-
.ok_or_else(|| anyhow!("package `{name}` was not found"))?
106+
.ok_or_else(|| anyhow::anyhow!("package `{name}` was not found"))?
106107
.path
107108
}
108109
PackageRef::LocalPath(path) => path.clone(),
109110
};
110-
let socket = std::fs::read(&socket_path).with_context(|| {
111+
let socket = std::fs::read(socket_path).with_context(|| {
111112
format!(
112113
"failed to read socket component `{socket}`",
113114
socket = self.socket
@@ -122,7 +123,8 @@ impl PlugCommand {
122123
let mut plugs_by_name = std::collections::HashMap::<_, Vec<_>>::new();
123124
for plug in self.plugs.iter() {
124125
let name = match plug {
125-
PackageRef::RegistryPackage(name) => Cow::Borrowed(name.as_ref()),
126+
#[cfg(feature = "registry")]
127+
PackageRef::RegistryPackage(name) => std::borrow::Cow::Borrowed(name.as_ref()),
126128
PackageRef::LocalPath(path) => path
127129
.file_stem()
128130
.map(|fs| fs.to_string_lossy())
@@ -137,14 +139,15 @@ impl PlugCommand {
137139
for (name, plug_refs) in plugs_by_name {
138140
for (i, plug_ref) in plug_refs.iter().enumerate() {
139141
let (mut name, path) = match plug_ref {
142+
#[cfg(feature = "registry")]
140143
PackageRef::RegistryPackage(name) => (
141144
name.as_ref().to_string(),
142145
client
143146
.as_ref()
144-
.ok_or_else(|| anyhow!("Warg registry is not configured. Package `{name}` was not found."))?
147+
.ok_or_else(|| anyhow::anyhow!("Warg registry is not configured. Package `{name}` was not found."))?
145148
.download(name, &semver::VersionReq::STAR)
146149
.await?
147-
.ok_or_else(|| anyhow!("package `{name}` was not found"))?
150+
.ok_or_else(|| anyhow::anyhow!("package `{name}` was not found"))?
148151
.path,
149152
),
150153
PackageRef::LocalPath(path) => (format!("plug:{name}"), path.clone()),

0 commit comments

Comments
 (0)