Skip to content

Commit df8bf7a

Browse files
committed
rework(lib): use camino_tempfile instead of tempfile
1 parent 7f6006e commit df8bf7a

5 files changed

Lines changed: 11 additions & 14 deletions

File tree

‎Cargo.lock‎

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎crates/lib/Cargo.toml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ async-stream = "0.3.6"
3636
base64 = "0.22.1"
3737
byte-unit = { version = "5.2.5", features = ["serde"] }
3838
camino = { version = "1.2.5", features = ["serde1"] }
39+
camino-tempfile = "1.4.1"
3940
chrono = { version = "0.4.45", features = ["serde"] }
4041
chronoutil = "0.2.7"
4142
config = { version = "0.15.25", default-features = false, features = ["toml", "convert-case", "async"] }
@@ -53,7 +54,6 @@ serde_repr = "0.1.21"
5354
serde_with = { version = "3.22.0", default-features = false, features = ["alloc", "macros"] }
5455
strum = { version = "0.28.0", features = ["derive"] }
5556
tar = "0.4.46"
56-
tempfile = "3.27.0"
5757
thiserror = "2.0.20"
5858
tokio = { version = "1.53.1", features = ["full"] }
5959
toml = "1.1.4"

‎crates/lib/src/config.rs‎

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@ impl Config {
180180
mod tests {
181181
use std::{env, fs};
182182

183-
use tempfile::tempdir;
183+
use camino_tempfile::tempdir;
184184

185185
use crate::service::bugzilla::Bugzilla;
186186

@@ -203,8 +203,7 @@ mod tests {
203203
assert!(service.config().auth.user.is_none());
204204

205205
let dir = tempdir().unwrap();
206-
let dir_path = dir.path().to_str().unwrap();
207-
env::set_current_dir(dir_path).unwrap();
206+
env::set_current_dir(dir.path()).unwrap();
208207

209208
// create service files
210209
let service1 = indoc::indoc! {r#"
@@ -232,7 +231,7 @@ mod tests {
232231
assert!(config.services.len() == len + 1);
233232

234233
// add new services from dir
235-
config.load(dir_path).unwrap();
234+
config.load(dir.path()).unwrap();
236235
assert!(config.services.len() == len + 2);
237236

238237
// verify gentoo connection was overridden

‎crates/lib/src/service/bugzilla/attachment/create.rs‎

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ use std::{fmt, io, str};
44

55
use byte_unit::Byte;
66
use camino::{Utf8Path, Utf8PathBuf};
7+
use camino_tempfile::tempdir;
78
use itertools::Itertools;
89
use serde::Serialize;
910
use serde_with::skip_serializing_none;
@@ -404,14 +405,12 @@ impl RequestSend for Request {
404405
};
405406

406407
// create temporary directory used for creating transient attachment files
407-
let temp_dir = tempfile::tempdir()
408+
let temp_dir = tempdir()
408409
.map_err(|e| Error::InvalidValue(format!("failed acquiring temporary dir: {e}")))?;
409-
let temp_dir_path = Utf8Path::from_path(temp_dir.path())
410-
.ok_or_else(|| Error::InvalidValue("non-unicode temporary dir path".to_string()))?;
411410

412411
let mut futures = vec![];
413412
for attachment in &self.attachments {
414-
let attachment = attachment.build(&self.ids, temp_dir_path)?;
413+
let attachment = attachment.build(&self.ids, temp_dir.path())?;
415414
futures.push(
416415
self.service
417416
.client()

‎crates/lib/src/traits.rs‎

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ pub trait WebClient {
221221
mod tests {
222222
use std::env;
223223

224-
use tempfile::tempdir;
224+
use camino_tempfile::tempdir;
225225

226226
use crate::service::bugzilla::Bugzilla;
227227
use crate::test::*;
@@ -251,19 +251,18 @@ mod tests {
251251
let dir = tempdir().unwrap();
252252
env::set_current_dir(dir.path()).unwrap();
253253
let path = dir.path().join("dir/template");
254-
let path_str = path.to_str().unwrap();
255254

256255
let time = "1d".parse().unwrap();
257256
request1.created(time);
258257

259258
// save to specific path
260-
request1.save_template(path_str).unwrap();
259+
request1.save_template(path.as_str()).unwrap();
261260
assert_eq!(
262261
fs::read_to_string(&path).unwrap().trim(),
263262
r#"created = "1d""#
264263
);
265264
assert_ne!(request1, request2);
266-
request2.load_template(path_str).unwrap();
265+
request2.load_template(path.as_str()).unwrap();
267266
assert_eq!(request1, request2);
268267

269268
// unnamed services save to current working directory

0 commit comments

Comments
 (0)