1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
[]
= "slog"
= "2.8.0-rc.1"
= ["Dawid Ciężarkiewicz <dpc@dpc.pw>"]
= "Structured, extensible, composable logging for Rust"
= ["log", "logging", "structured", "hierarchical"]
= ["development-tools::debugging"]
= "MPL-2.0 OR MIT OR Apache-2.0"
= "https://docs.rs/slog"
= "https://github.com/slog-rs/slog"
= "https://github.com/slog-rs/slog"
= "README.md"
= "2018"
# This is our Minimum Supported Rust Version (MSRV)
#
# See the wiki for our full policy on changing this.
#
# There are two main requirements:
# 1. Bumping the MSRV requires increasing the minor version number (2.7 -> 2.8)
# 2. Changes must be clearly announced in the CHANGELOG.md file
# 3. At a minimum, we must support at least the latest stable rust, minus 15 releases.
# - We can (and very often do) support versions much older than this.
# - See wiki for for details
#
# This must be kept in sync with the following places:
# - .github/workflows/test.yml (Github Actions)
# - README.md
# - clippy.toml (Clippy config)
= "1.56"
[]
= 3
= false
= true
= false
[]
= 3
= false
= true
= false
[]
= ["std"]
# Support nesting values in log messages using serde
#
# Using this is recommended to improve the detail of log messages.
# Without it, only flat values like numbers and strings can be logged.
# This requires the underlying logger to support this feature,
# usually requiring a nested-values feature flag on the logging backend.
#
# NOTE: Using nested-values requires Rust 1.56
= ["erased-serde", "serde"]
# DANGER: Use a String for slog::Key insated of &'static str
#
# This is discouraged, becauase it can break other libraries relying on slog.
# If you really need to dynamically allocate keys, you can use String::leak to achieve the same functionality
# without breaking other libraries.
= []
# Require the standard library.
= []
# DANGER: Remove the Send + Sync bound from the default logger and drain.
#
# This feature is highly discouraged, because it could break other libraries relying on slog.
# It is possible to achieve the same functionality by using a custom drain parameter to slog::Logger,
# which will not break other libraries and avoids the overhead of an Arc.
= []
#
# IMPLICIT FEATURES
#
# These features are fully supported, but have the same names as dependencies.
# The current MSRV does not support the new 'dep:...' syntax.
# We pretend to declare these here to keep the feature docs consistent.
#
# Implement serde::Value for anyhow::Error
# anyhow = ["dep:anyhow"]
= []
= []
= []
= []
= []
= []
= []
= []
= []
= []
= []
= []
[]
# TODO: The std feature should imply serde?/std, but weak feature dependencies need Rust 1.60
= { = "1", = true, = false }
= { = "1", = true, = false }
[]
# The 0.3 series of erased-serde has MSRV 1.56, but the 0.4 series requires Rust 1.61
# Since we want to support old rust, we stick with the old 0.3 series
= "0.3"
= true
= false
= ["alloc"] # erased-serde always requires alloc, and so does slog
[]
= "1"
[]
# NOTE: This is just a macro (not a runtime dependency)
#
# It is used to conditionally enable use of newer rust language
# features depending on the compiler features.
= "1"
= "1"
[[]]
= "singlethread"
= ["nothreads"]
[]
= ["std", "nested-values", "dynamic-keys"]
[]
= [
"crates/test_edition2018",
]