Skip to content

Commit fca7190

Browse files
committed
Remove usage of derivative crate, replace by derive_more
1 parent 771a6f1 commit fca7190

File tree

7 files changed

+29
-27
lines changed

7 files changed

+29
-27
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ parking_lot = { version = "0.12.0", optional = true }
9191
rand = { version = "0.9", optional = true }
9292
thiserror = "2.0.12"
9393
anyhow = "1.0.28"
94-
derivative = "2.2"
94+
derive_more = { version = "2.0.1", features = ["debug"] }
9595
once_cell = "1.17.1"
9696
mock_instant = "0.5"
9797

src/append/console.rs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
//!
33
//! Requires the `console_appender` feature.
44
5-
use derivative::Derivative;
5+
use derive_more::Debug;
66
use log::Record;
77
use std::{
88
fmt,
@@ -117,10 +117,9 @@ impl<'a> encode::Write for WriterLock<'a> {
117117
///
118118
/// It supports output styling if standard out is a console buffer on Windows
119119
/// or is a TTY on Unix.
120-
#[derive(Derivative)]
121-
#[derivative(Debug)]
120+
#[derive(Debug)]
122121
pub struct ConsoleAppender {
123-
#[derivative(Debug = "ignore")]
122+
#[debug(skip)]
124123
writer: Writer,
125124
encoder: Box<dyn Encode>,
126125
do_write: bool,

src/append/file.rs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
//!
33
//! Requires the `file_appender` feature.
44
5-
use derivative::Derivative;
5+
use derive_more::Debug;
66
use log::Record;
77
use parking_lot::Mutex;
88
use std::{
@@ -32,11 +32,10 @@ pub struct FileAppenderConfig {
3232
}
3333

3434
/// An appender which logs to a file.
35-
#[derive(Derivative)]
36-
#[derivative(Debug)]
35+
#[derive(Debug)]
3736
pub struct FileAppender {
3837
path: PathBuf,
39-
#[derivative(Debug = "ignore")]
38+
#[debug(skip)]
4039
file: Mutex<SimpleWriter<BufWriter<File>>>,
4140
encoder: Box<dyn Encode>,
4241
}

src/append/rolling_file/mod.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
//!
1717
//! Requires the `rolling_file_appender` feature.
1818
19-
use derivative::Derivative;
19+
use derive_more::Debug;
2020
use log::Record;
2121
use parking_lot::Mutex;
2222
use std::{
@@ -151,10 +151,9 @@ impl<'a> LogFile<'a> {
151151
}
152152

153153
/// An appender which archives log files in a configurable strategy.
154-
#[derive(Derivative)]
155-
#[derivative(Debug)]
154+
#[derive(Debug)]
156155
pub struct RollingFileAppender {
157-
#[derivative(Debug = "ignore")]
156+
#[debug(skip)]
158157
writer: Mutex<Option<LogWriter>>,
159158
path: PathBuf,
160159
append: bool,
@@ -367,6 +366,7 @@ impl Deserialize for RollingFileAppenderDeserializer {
367366

368367
#[cfg(test)]
369368
mod test {
369+
use derive_more::Debug;
370370
use std::{
371371
fs::File,
372372
io::{Read, Write},

src/config/raw.rs

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@
9292
use std::{collections::HashMap, fmt, marker::PhantomData, sync::Arc, time::Duration};
9393

9494
use anyhow::anyhow;
95-
use derivative::Derivative;
95+
use derive_more::Debug;
9696
use log::LevelFilter;
9797
use serde::de::{self, Deserialize as SerdeDeserialize, DeserializeOwned};
9898
use serde_value::Value;
@@ -438,17 +438,25 @@ where
438438
Option::<S>::deserialize(d).map(|r| r.map(|s| s.0))
439439
}
440440

441-
#[derive(Clone, Debug, Derivative, serde::Deserialize)]
442-
#[derivative(Default)]
441+
#[derive(Clone, Debug, serde::Deserialize)]
443442
#[serde(deny_unknown_fields)]
444443
struct Root {
445444
#[serde(default = "root_level_default")]
446-
#[derivative(Default(value = "root_level_default()"))]
447445
level: LevelFilter,
448446
#[serde(default)]
449447
appenders: Vec<String>,
450448
}
451449

450+
/// Implementing default on Root, which was previously done using "derivative" derive, which is not yet supported by derive_more.
451+
impl Default for Root {
452+
fn default() -> Self {
453+
Self {
454+
level: root_level_default(),
455+
appenders: Default::default(),
456+
}
457+
}
458+
}
459+
452460
fn root_level_default() -> LevelFilter {
453461
LevelFilter::Debug
454462
}

src/encode/mod.rs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
//! Encoders
22
3-
use derivative::Derivative;
3+
use derive_more::Debug;
44
use log::Record;
55
use std::{fmt, io};
66

@@ -94,17 +94,15 @@ pub enum Color {
9494
///
9595
/// Any fields set to `None` will be set to their default format, as defined
9696
/// by the `Write`r.
97-
#[derive(Derivative)]
98-
#[derivative(Debug)]
99-
#[derive(Clone, Eq, PartialEq, Hash, Default)]
97+
#[derive(Clone, Eq, PartialEq, Hash, Debug, Default)]
10098
pub struct Style {
10199
/// The text (or foreground) color.
102100
pub text: Option<Color>,
103101
/// The background color.
104102
pub background: Option<Color>,
105103
/// True if the text should have increased intensity.
106104
pub intense: Option<bool>,
107-
#[derivative(Debug = "ignore")]
105+
#[debug(skip)]
108106
_p: (),
109107
}
110108

src/encode/pattern/mod.rs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@
122122
//! [MDC]: https://crates.io/crates/log-mdc
123123
124124
use chrono::{Local, Utc};
125-
use derivative::Derivative;
125+
use derive_more::Debug;
126126
use log::{Level, Record};
127127
use std::{default::Default, io, process, thread};
128128

@@ -671,11 +671,9 @@ impl FormattedChunk {
671671
}
672672

673673
/// An `Encode`r configured via a format string.
674-
#[derive(Derivative)]
675-
#[derivative(Debug)]
676-
#[derive(Clone, Eq, PartialEq, Hash)]
674+
#[derive(Clone, Eq, Debug, PartialEq, Hash)]
677675
pub struct PatternEncoder {
678-
#[derivative(Debug = "ignore")]
676+
#[debug(skip)]
679677
chunks: Vec<Chunk>,
680678
pattern: String,
681679
}

0 commit comments

Comments
 (0)