prometheus-client-mmap 1.1.0-aarch64-linux → 1.2.1-aarch64-linux
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ext/fast_mmaped_file_rs/Cargo.toml +10 -10
- data/ext/fast_mmaped_file_rs/src/error.rs +0 -8
- data/ext/fast_mmaped_file_rs/src/mmap/inner.rs +13 -38
- data/ext/fast_mmaped_file_rs/src/mmap.rs +14 -73
- data/lib/3.1/fast_mmaped_file_rs.so +0 -0
- data/lib/3.2/fast_mmaped_file_rs.so +0 -0
- data/lib/3.3/fast_mmaped_file_rs.so +0 -0
- data/lib/3.4/fast_mmaped_file_rs.so +0 -0
- data/lib/prometheus/client/version.rb +1 -1
- metadata +54 -15
- data/ext/fast_mmaped_file_rs/.cargo/config.toml +0 -23
- data/ext/fast_mmaped_file_rs/Cargo.lock +0 -734
- data/lib/2.7/fast_mmaped_file_rs.so +0 -0
- data/lib/3.0/fast_mmaped_file_rs.so +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 173ae0d70b09fbdec1a590b3f45118feeb0adacf8b70cb7f6dd0a223656dfdd4
|
4
|
+
data.tar.gz: f7bb04747512b68fa409b13b46168eafa28dd093f81ed7ce5e1693eb01ee8fc9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: eefedaf1aab3e0b06f17c15c856df9a35ca425370284cdfdb27a1a9ca2244062f9f40978e393a2cebcaf87c4ecc66cf982d48dc7ce8d79dd73ea8df8ef8c43e4
|
7
|
+
data.tar.gz: a389f93084006bdd244f60a383f9b1d35e15f2302a0a6081dbe7f00e29d9affa72601e524e9ea65bb89d1dd2aa30704c5ed4a91a639c497321cb211953289e90
|
@@ -6,29 +6,29 @@ edition = "2021"
|
|
6
6
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
7
7
|
|
8
8
|
[dependencies]
|
9
|
-
hashbrown = "0.
|
9
|
+
hashbrown = "0.14"
|
10
10
|
libc = "0.2"
|
11
|
-
magnus = { version = "0.
|
12
|
-
memmap2 = "0.
|
11
|
+
magnus = { version = "0.7", features = ["rb-sys"] }
|
12
|
+
memmap2 = "0.9"
|
13
13
|
# v0.26 cannot be built on CentOS 7 https://github.com/nix-rust/nix/issues/1972
|
14
14
|
nix = { version = "0.25", features = ["mman"] } # mman used for MsFlags
|
15
|
-
rb-sys = "0.9
|
15
|
+
rb-sys = { version = "0.9", features = ["stable-api-compiled-fallback"] }
|
16
16
|
serde = { version = "1.0", features = ["derive"] }
|
17
17
|
serde_json = { version = "1.0", features = ["raw_value"] }
|
18
|
-
smallvec = { version = "1.
|
19
|
-
thiserror = "
|
18
|
+
smallvec = { version = "1.13", features = ["serde"] }
|
19
|
+
thiserror = "2.0"
|
20
20
|
|
21
21
|
[dev-dependencies]
|
22
|
-
bstr = "1.
|
22
|
+
bstr = "1.11"
|
23
23
|
indoc = "2.0"
|
24
24
|
# We need the `embed` feature to run tests, but this triggers failures when building as a Gem.
|
25
|
-
magnus = { version = "0.
|
25
|
+
magnus = { version = "0.7", features = ["rb-sys","embed"] }
|
26
26
|
rand = "0.8"
|
27
27
|
sha2 = "0.10"
|
28
|
-
tempfile = "3.
|
28
|
+
tempfile = "3.14"
|
29
29
|
|
30
30
|
[build-dependencies]
|
31
|
-
rb-sys-env = "
|
31
|
+
rb-sys-env = { git = "https://github.com/oxidize-rb/rb-sys.git", rev = "5d1999ba70d301581524b8252c8ff3b8a825afa2" }
|
32
32
|
|
33
33
|
[lib]
|
34
34
|
# Integration tests won't work if crate is only `cdylib`.
|
@@ -100,13 +100,6 @@ pub enum MmapError {
|
|
100
100
|
/// No mmap open.
|
101
101
|
#[error("unmapped file")]
|
102
102
|
UnmappedFile,
|
103
|
-
/// File length changed by another process.
|
104
|
-
#[error("size of {path} {len} does not match previous size {expected_len}. Another process may have modified it.")]
|
105
|
-
UnexpectedFileLength {
|
106
|
-
path: String,
|
107
|
-
len: usize,
|
108
|
-
expected_len: usize,
|
109
|
-
},
|
110
103
|
/// A custom error message with `strerror(3)` appended.
|
111
104
|
#[error("{0}")]
|
112
105
|
WithErrno(String),
|
@@ -169,7 +162,6 @@ impl MmapError {
|
|
169
162
|
MmapError::Other(_) => RubyError::Arg,
|
170
163
|
MmapError::PromParsing(_) => RubyError::PromParsing,
|
171
164
|
MmapError::UnmappedFile => RubyError::Io,
|
172
|
-
MmapError::UnexpectedFileLength { .. } => RubyError::Runtime,
|
173
165
|
MmapError::WithErrno(_) => RubyError::Io,
|
174
166
|
}
|
175
167
|
}
|
@@ -5,7 +5,7 @@ use std::fs::File;
|
|
5
5
|
use std::mem::size_of;
|
6
6
|
use std::ops::Range;
|
7
7
|
use std::os::unix::prelude::{AsRawFd, RawFd};
|
8
|
-
use std::path::
|
8
|
+
use std::path::PathBuf;
|
9
9
|
|
10
10
|
use crate::error::{MmapError, RubyError};
|
11
11
|
use crate::raw_entry::RawEntry;
|
@@ -34,8 +34,6 @@ pub(super) struct InnerMmap {
|
|
34
34
|
///
|
35
35
|
/// Equivalent to `i_mm->t->real` in the C implementation.
|
36
36
|
len: usize,
|
37
|
-
/// The length of the file being mmapped at the time of mapping.
|
38
|
-
file_len: usize,
|
39
37
|
}
|
40
38
|
|
41
39
|
impl InnerMmap {
|
@@ -43,12 +41,19 @@ impl InnerMmap {
|
|
43
41
|
/// Use when mmapping a file for the first time. When re-mapping a file
|
44
42
|
/// after expanding it the `reestablish` function should be used.
|
45
43
|
pub fn new(path: PathBuf, file: File) -> Result<Self> {
|
46
|
-
let
|
44
|
+
let stat = file.metadata().map_err(|e| {
|
45
|
+
MmapError::legacy(
|
46
|
+
format!("Can't stat {}: {e}", path.display()),
|
47
|
+
RubyError::Arg,
|
48
|
+
)
|
49
|
+
})?;
|
50
|
+
|
51
|
+
let file_size = util::cast_chk::<_, usize>(stat.len(), "file length")?;
|
47
52
|
|
48
53
|
// We need to ensure the underlying file descriptor is at least a page size.
|
49
54
|
// Otherwise, we could get a SIGBUS error if mmap() attempts to read or write
|
50
55
|
// past the file.
|
51
|
-
let reserve_size = Self::next_page_boundary(
|
56
|
+
let reserve_size = Self::next_page_boundary(file_size)?;
|
52
57
|
|
53
58
|
// Cast: no-op.
|
54
59
|
Self::reserve_mmap_file_bytes(file.as_raw_fd(), reserve_size as off_t).map_err(|e| {
|
@@ -62,23 +67,21 @@ impl InnerMmap {
|
|
62
67
|
})?;
|
63
68
|
|
64
69
|
// Ensure we always have space for the header.
|
65
|
-
let map_len =
|
70
|
+
let map_len = file_size.max(HEADER_SIZE);
|
66
71
|
|
67
72
|
// SAFETY: There is the possibility of UB if the file is modified outside of
|
68
73
|
// this program.
|
69
74
|
let map = unsafe { MmapOptions::new().len(map_len).map_mut(&file) }.map_err(|e| {
|
70
75
|
MmapError::legacy(format!("mmap failed ({}): {e}", errno()), RubyError::Arg)
|
71
76
|
})?;
|
72
|
-
let file_len = util::cast_chk::<_, usize>(reserve_size, "file length")?;
|
73
77
|
|
74
|
-
let len =
|
78
|
+
let len = file_size;
|
75
79
|
|
76
80
|
Ok(Self {
|
77
81
|
file,
|
78
82
|
path,
|
79
83
|
map,
|
80
84
|
len,
|
81
|
-
file_len,
|
82
85
|
})
|
83
86
|
}
|
84
87
|
|
@@ -94,14 +97,12 @@ impl InnerMmap {
|
|
94
97
|
// to the old length at this point if closing the file. Matching C implementation
|
95
98
|
// for now.
|
96
99
|
let len = map_len;
|
97
|
-
let file_len = get_file_len(&path, &file)?;
|
98
100
|
|
99
101
|
Ok(Self {
|
100
102
|
file,
|
101
103
|
path,
|
102
104
|
map,
|
103
105
|
len,
|
104
|
-
file_len,
|
105
106
|
})
|
106
107
|
}
|
107
108
|
|
@@ -185,7 +186,7 @@ impl InnerMmap {
|
|
185
186
|
self.len
|
186
187
|
}
|
187
188
|
|
188
|
-
/// The total length in bytes of the mmapped
|
189
|
+
/// The total length in bytes of the mmapped file.
|
189
190
|
///
|
190
191
|
/// Equivalent to `i_mm->t->len` in the C implementation.
|
191
192
|
#[inline]
|
@@ -193,21 +194,6 @@ impl InnerMmap {
|
|
193
194
|
self.map.len()
|
194
195
|
}
|
195
196
|
|
196
|
-
/// `stat` the mmapped file and return its length.
|
197
|
-
pub fn check_file_len(&self) -> Result<usize> {
|
198
|
-
get_file_len(&self.path, &self.file)
|
199
|
-
}
|
200
|
-
|
201
|
-
/// The length of the file at the time it was mmapped.
|
202
|
-
pub fn file_len(&self) -> usize {
|
203
|
-
self.file_len
|
204
|
-
}
|
205
|
-
|
206
|
-
/// The path of the mmapped file.
|
207
|
-
pub fn path(&self) -> String {
|
208
|
-
self.path.to_string_lossy().to_string()
|
209
|
-
}
|
210
|
-
|
211
197
|
/// Update the length of the mmap considered to be written.
|
212
198
|
pub fn set_len(&mut self, len: usize) {
|
213
199
|
self.len = len;
|
@@ -326,17 +312,6 @@ impl InnerMmap {
|
|
326
312
|
}
|
327
313
|
}
|
328
314
|
|
329
|
-
fn get_file_len(path: &Path, file: &File) -> Result<usize> {
|
330
|
-
let stat = file.metadata().map_err(|e| {
|
331
|
-
MmapError::legacy(
|
332
|
-
format!("Can't stat {}: {e}", path.display()),
|
333
|
-
RubyError::Arg,
|
334
|
-
)
|
335
|
-
})?;
|
336
|
-
|
337
|
-
util::cast_chk::<_, usize>(stat.len(), "file length")
|
338
|
-
}
|
339
|
-
|
340
315
|
#[cfg(test)]
|
341
316
|
mod test {
|
342
317
|
use nix::unistd::{self, SysconfVar};
|
@@ -25,11 +25,18 @@ use inner::InnerMmap;
|
|
25
25
|
|
26
26
|
mod inner;
|
27
27
|
|
28
|
-
|
29
|
-
|
28
|
+
#[cfg(ruby_gte_3_4)]
|
29
|
+
/// The Ruby `STR_SHARED` flag, aka `FL_USER0`.
|
30
|
+
/// This was changed from `FL_USER2` in https://github.com/ruby/ruby/commit/6deeec5d459ecff5ec4628523b14ac7379fd942e.
|
31
|
+
const STR_SHARED: c_ulong = 1 << (12);
|
32
|
+
|
33
|
+
#[cfg(ruby_lte_3_3)]
|
30
34
|
/// The Ruby `STR_SHARED` flag, aka `FL_USER2`.
|
31
35
|
const STR_SHARED: c_ulong = 1 << (14);
|
32
36
|
|
37
|
+
/// The Ruby `STR_NOEMBED` flag, aka `FL_USER1`.
|
38
|
+
const STR_NOEMBED: c_ulong = 1 << (13);
|
39
|
+
|
33
40
|
/// A Rust struct wrapped in a Ruby object, providing access to a memory-mapped
|
34
41
|
/// file used to store, update, and read out Prometheus metrics.
|
35
42
|
///
|
@@ -441,49 +448,17 @@ impl MmapedFile {
|
|
441
448
|
}
|
442
449
|
|
443
450
|
/// Check that the mmap is large enough to contain the value to be added,
|
444
|
-
/// and expand it to fit if necessary.
|
445
|
-
/// has been resized by another process.
|
451
|
+
/// and expand it to fit if necessary.
|
446
452
|
fn check_expand(&self, rb_self: Obj<Self>, key_len: usize) -> magnus::error::Result<()> {
|
447
453
|
// CAST: no-op on 32-bit, widening on 64-bit.
|
448
454
|
let used = self.inner(|inner| inner.load_used())? as usize;
|
449
455
|
let entry_len = RawEntry::calc_total_len(key_len)?;
|
450
|
-
let required_len = used.add_chk(entry_len)?;
|
451
|
-
let mut target_cap = self.capacity();
|
452
456
|
|
453
|
-
let mut needs_resize = false;
|
454
457
|
// We need the mmapped region to contain at least one byte beyond the
|
455
|
-
// written data to create a NUL-terminated C string. Validate that
|
456
|
-
// new length does not exactly match the length of the mmap.
|
457
|
-
|
458
|
-
|
459
|
-
target_cap = required_len + 1;
|
460
|
-
}
|
461
|
-
|
462
|
-
let (current_file_len, original_file_len) =
|
463
|
-
self.inner(|inner| Ok((inner.check_file_len()?, inner.file_len())))?;
|
464
|
-
|
465
|
-
let file_modified = current_file_len != original_file_len;
|
466
|
-
if file_modified {
|
467
|
-
// Ensure our new capacity is at least as large as the actual file.
|
468
|
-
// Erroring out without first resizing the mmap would leave us stuck
|
469
|
-
// in a bad state.
|
470
|
-
target_cap = current_file_len
|
471
|
-
}
|
472
|
-
|
473
|
-
if needs_resize {
|
474
|
-
self.expand_to_fit(rb_self, target_cap)?;
|
475
|
-
}
|
476
|
-
|
477
|
-
if file_modified {
|
478
|
-
// Return an error so the caller is alerted that there were concurrent writes to the
|
479
|
-
// file.
|
480
|
-
let path = self.inner(|inner| Ok(inner.path()))?;
|
481
|
-
return Err(MmapError::UnexpectedFileLength {
|
482
|
-
path,
|
483
|
-
len: current_file_len,
|
484
|
-
expected_len: original_file_len,
|
485
|
-
}
|
486
|
-
.into());
|
458
|
+
// written data to create a NUL- terminated C string. Validate that
|
459
|
+
// new length does not exactly match or exceed the length of the mmap.
|
460
|
+
while self.capacity() <= used.add_chk(entry_len)? {
|
461
|
+
self.expand_to_fit(rb_self, self.capacity().mul_chk(2)?)?;
|
487
462
|
}
|
488
463
|
|
489
464
|
Ok(())
|
@@ -684,7 +659,6 @@ mod test {
|
|
684
659
|
use super::*;
|
685
660
|
use crate::raw_entry::RawEntry;
|
686
661
|
use crate::testhelper::TestFile;
|
687
|
-
use std::os::unix::prelude::AsRawFd;
|
688
662
|
|
689
663
|
/// Create a wrapped MmapedFile object.
|
690
664
|
fn create_obj() -> Obj<MmapedFile> {
|
@@ -914,37 +888,4 @@ mod test {
|
|
914
888
|
// Validate that we have expanded the mmap, ensuring a trailing NUL.
|
915
889
|
assert!(rs_self.capacity() > current_cap);
|
916
890
|
}
|
917
|
-
|
918
|
-
#[test]
|
919
|
-
fn test_detect_external_resize() {
|
920
|
-
let _cleanup = unsafe { magnus::embed::init() };
|
921
|
-
let ruby = magnus::Ruby::get().unwrap();
|
922
|
-
crate::init(&ruby).unwrap();
|
923
|
-
|
924
|
-
let TestFile {
|
925
|
-
file,
|
926
|
-
path,
|
927
|
-
dir: _dir,
|
928
|
-
} = TestFile::new(&[0u8; 8]);
|
929
|
-
|
930
|
-
let path_str = path.display().to_string();
|
931
|
-
let rpath = RString::new(&path_str);
|
932
|
-
|
933
|
-
// Object created successfully
|
934
|
-
let result: std::result::Result<Obj<MmapedFile>, Error> =
|
935
|
-
eval!("FastMmapedFileRs.new(path)", path = rpath);
|
936
|
-
assert!(result.is_ok());
|
937
|
-
let obj = result.unwrap();
|
938
|
-
|
939
|
-
let rs_self = &*obj;
|
940
|
-
|
941
|
-
let file_len = 1 << 32;
|
942
|
-
nix::unistd::ftruncate(file.as_raw_fd(), file_len).unwrap();
|
943
|
-
|
944
|
-
// We error when the file is externally modified.
|
945
|
-
assert!(rs_self.check_expand(obj, 512).is_err());
|
946
|
-
|
947
|
-
// We updated the object to use the new size.
|
948
|
-
assert_eq!(rs_self.capacity(), file_len as usize);
|
949
|
-
}
|
950
891
|
}
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: prometheus-client-mmap
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1
|
4
|
+
version: 1.2.1
|
5
5
|
platform: aarch64-linux
|
6
6
|
authors:
|
7
7
|
- Tobias Schmidt
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2024-
|
14
|
+
date: 2024-12-29 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: rb_sys
|
@@ -27,6 +27,34 @@ dependencies:
|
|
27
27
|
- - "~>"
|
28
28
|
- !ruby/object:Gem::Version
|
29
29
|
version: 0.9.86
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: base64
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
requirements:
|
34
|
+
- - ">="
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: '0'
|
37
|
+
type: :runtime
|
38
|
+
prerelease: false
|
39
|
+
version_requirements: !ruby/object:Gem::Requirement
|
40
|
+
requirements:
|
41
|
+
- - ">="
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '0'
|
44
|
+
- !ruby/object:Gem::Dependency
|
45
|
+
name: bigdecimal
|
46
|
+
requirement: !ruby/object:Gem::Requirement
|
47
|
+
requirements:
|
48
|
+
- - ">="
|
49
|
+
- !ruby/object:Gem::Version
|
50
|
+
version: '0'
|
51
|
+
type: :runtime
|
52
|
+
prerelease: false
|
53
|
+
version_requirements: !ruby/object:Gem::Requirement
|
54
|
+
requirements:
|
55
|
+
- - ">="
|
56
|
+
- !ruby/object:Gem::Version
|
57
|
+
version: '0'
|
30
58
|
- !ruby/object:Gem::Dependency
|
31
59
|
name: fuzzbert
|
32
60
|
requirement: !ruby/object:Gem::Requirement
|
@@ -81,42 +109,56 @@ dependencies:
|
|
81
109
|
requirements:
|
82
110
|
- - "~>"
|
83
111
|
- !ruby/object:Gem::Version
|
84
|
-
version: 1.2.
|
112
|
+
version: 1.2.7
|
85
113
|
type: :development
|
86
114
|
prerelease: false
|
87
115
|
version_requirements: !ruby/object:Gem::Requirement
|
88
116
|
requirements:
|
89
117
|
- - "~>"
|
90
118
|
- !ruby/object:Gem::Version
|
91
|
-
version: 1.2.
|
119
|
+
version: 1.2.7
|
92
120
|
- !ruby/object:Gem::Dependency
|
93
121
|
name: rake-compiler-dock
|
94
122
|
requirement: !ruby/object:Gem::Requirement
|
95
123
|
requirements:
|
96
124
|
- - "~>"
|
97
125
|
- !ruby/object:Gem::Version
|
98
|
-
version: 1.
|
126
|
+
version: 1.7.0
|
127
|
+
type: :development
|
128
|
+
prerelease: false
|
129
|
+
version_requirements: !ruby/object:Gem::Requirement
|
130
|
+
requirements:
|
131
|
+
- - "~>"
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: 1.7.0
|
134
|
+
- !ruby/object:Gem::Dependency
|
135
|
+
name: rspec
|
136
|
+
requirement: !ruby/object:Gem::Requirement
|
137
|
+
requirements:
|
138
|
+
- - "~>"
|
139
|
+
- !ruby/object:Gem::Version
|
140
|
+
version: '3.2'
|
99
141
|
type: :development
|
100
142
|
prerelease: false
|
101
143
|
version_requirements: !ruby/object:Gem::Requirement
|
102
144
|
requirements:
|
103
145
|
- - "~>"
|
104
146
|
- !ruby/object:Gem::Version
|
105
|
-
version:
|
147
|
+
version: '3.2'
|
106
148
|
- !ruby/object:Gem::Dependency
|
107
149
|
name: ruby-prof
|
108
150
|
requirement: !ruby/object:Gem::Requirement
|
109
151
|
requirements:
|
110
152
|
- - "~>"
|
111
153
|
- !ruby/object:Gem::Version
|
112
|
-
version:
|
154
|
+
version: '1.7'
|
113
155
|
type: :development
|
114
156
|
prerelease: false
|
115
157
|
version_requirements: !ruby/object:Gem::Requirement
|
116
158
|
requirements:
|
117
159
|
- - "~>"
|
118
160
|
- !ruby/object:Gem::Version
|
119
|
-
version:
|
161
|
+
version: '1.7'
|
120
162
|
description:
|
121
163
|
email:
|
122
164
|
- ts@soundcloud.com
|
@@ -129,8 +171,6 @@ extra_rdoc_files: []
|
|
129
171
|
files:
|
130
172
|
- ".tool-versions"
|
131
173
|
- README.md
|
132
|
-
- ext/fast_mmaped_file_rs/.cargo/config.toml
|
133
|
-
- ext/fast_mmaped_file_rs/Cargo.lock
|
134
174
|
- ext/fast_mmaped_file_rs/Cargo.toml
|
135
175
|
- ext/fast_mmaped_file_rs/README.md
|
136
176
|
- ext/fast_mmaped_file_rs/build.rs
|
@@ -146,11 +186,10 @@ files:
|
|
146
186
|
- ext/fast_mmaped_file_rs/src/raw_entry.rs
|
147
187
|
- ext/fast_mmaped_file_rs/src/testhelper.rs
|
148
188
|
- ext/fast_mmaped_file_rs/src/util.rs
|
149
|
-
- lib/2.7/fast_mmaped_file_rs.so
|
150
|
-
- lib/3.0/fast_mmaped_file_rs.so
|
151
189
|
- lib/3.1/fast_mmaped_file_rs.so
|
152
190
|
- lib/3.2/fast_mmaped_file_rs.so
|
153
191
|
- lib/3.3/fast_mmaped_file_rs.so
|
192
|
+
- lib/3.4/fast_mmaped_file_rs.so
|
154
193
|
- lib/prometheus.rb
|
155
194
|
- lib/prometheus/client.rb
|
156
195
|
- lib/prometheus/client/configuration.rb
|
@@ -192,17 +231,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
192
231
|
requirements:
|
193
232
|
- - ">="
|
194
233
|
- !ruby/object:Gem::Version
|
195
|
-
version: '
|
234
|
+
version: '3.1'
|
196
235
|
- - "<"
|
197
236
|
- !ruby/object:Gem::Version
|
198
|
-
version: 3.
|
237
|
+
version: 3.5.dev
|
199
238
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
200
239
|
requirements:
|
201
240
|
- - ">="
|
202
241
|
- !ruby/object:Gem::Version
|
203
242
|
version: '0'
|
204
243
|
requirements: []
|
205
|
-
rubygems_version: 3.
|
244
|
+
rubygems_version: 3.5.23
|
206
245
|
signing_key:
|
207
246
|
specification_version: 4
|
208
247
|
summary: A suite of instrumentation metric primitives that can be exposed through
|
@@ -1,23 +0,0 @@
|
|
1
|
-
[target.aarch64-apple-darwin]
|
2
|
-
# Without this flag, when linking static libruby, the linker removes symbols
|
3
|
-
# (such as `_rb_ext_ractor_safe`) which it thinks are dead code... but they are
|
4
|
-
# not, and they need to be included for the `embed` feature to work with static
|
5
|
-
# Ruby.
|
6
|
-
rustflags = [
|
7
|
-
"-C", "link-dead-code=on",
|
8
|
-
"-C", "link-arg=-undefined",
|
9
|
-
"-C", "link-arg=dynamic_lookup",
|
10
|
-
]
|
11
|
-
|
12
|
-
[target.x86_64-apple-darwin]
|
13
|
-
rustflags = [
|
14
|
-
"-C", "link-dead-code=on",
|
15
|
-
"-C", "link-arg=-undefined",
|
16
|
-
"-C", "link-arg=dynamic_lookup",
|
17
|
-
]
|
18
|
-
|
19
|
-
[target.aarch64-unknown-linux-gnu]
|
20
|
-
rustflags = [ "-C", "link-dead-code=on" ]
|
21
|
-
|
22
|
-
[target.x86_64-unknown-linux-gnu]
|
23
|
-
rustflags = [ "-C", "link-dead-code=on" ]
|
@@ -1,734 +0,0 @@
|
|
1
|
-
# This file is automatically @generated by Cargo.
|
2
|
-
# It is not intended for manual editing.
|
3
|
-
version = 3
|
4
|
-
|
5
|
-
[[package]]
|
6
|
-
name = "ahash"
|
7
|
-
version = "0.8.3"
|
8
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
9
|
-
checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f"
|
10
|
-
dependencies = [
|
11
|
-
"cfg-if",
|
12
|
-
"once_cell",
|
13
|
-
"version_check",
|
14
|
-
]
|
15
|
-
|
16
|
-
[[package]]
|
17
|
-
name = "aho-corasick"
|
18
|
-
version = "0.7.20"
|
19
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
20
|
-
checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac"
|
21
|
-
dependencies = [
|
22
|
-
"memchr",
|
23
|
-
]
|
24
|
-
|
25
|
-
[[package]]
|
26
|
-
name = "autocfg"
|
27
|
-
version = "1.1.0"
|
28
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
29
|
-
checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
|
30
|
-
|
31
|
-
[[package]]
|
32
|
-
name = "bindgen"
|
33
|
-
version = "0.69.1"
|
34
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
35
|
-
checksum = "9ffcebc3849946a7170a05992aac39da343a90676ab392c51a4280981d6379c2"
|
36
|
-
dependencies = [
|
37
|
-
"bitflags 2.3.3",
|
38
|
-
"cexpr",
|
39
|
-
"clang-sys",
|
40
|
-
"lazy_static",
|
41
|
-
"lazycell",
|
42
|
-
"peeking_take_while",
|
43
|
-
"proc-macro2",
|
44
|
-
"quote",
|
45
|
-
"regex",
|
46
|
-
"rustc-hash",
|
47
|
-
"shlex",
|
48
|
-
"syn",
|
49
|
-
]
|
50
|
-
|
51
|
-
[[package]]
|
52
|
-
name = "bitflags"
|
53
|
-
version = "1.3.2"
|
54
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
55
|
-
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
|
56
|
-
|
57
|
-
[[package]]
|
58
|
-
name = "bitflags"
|
59
|
-
version = "2.3.3"
|
60
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
61
|
-
checksum = "630be753d4e58660abd17930c71b647fe46c27ea6b63cc59e1e3851406972e42"
|
62
|
-
|
63
|
-
[[package]]
|
64
|
-
name = "block-buffer"
|
65
|
-
version = "0.10.4"
|
66
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
67
|
-
checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
|
68
|
-
dependencies = [
|
69
|
-
"generic-array",
|
70
|
-
]
|
71
|
-
|
72
|
-
[[package]]
|
73
|
-
name = "bstr"
|
74
|
-
version = "1.6.0"
|
75
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
76
|
-
checksum = "6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05"
|
77
|
-
dependencies = [
|
78
|
-
"memchr",
|
79
|
-
"regex-automata",
|
80
|
-
"serde",
|
81
|
-
]
|
82
|
-
|
83
|
-
[[package]]
|
84
|
-
name = "cc"
|
85
|
-
version = "1.0.79"
|
86
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
87
|
-
checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
|
88
|
-
|
89
|
-
[[package]]
|
90
|
-
name = "cexpr"
|
91
|
-
version = "0.6.0"
|
92
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
93
|
-
checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
|
94
|
-
dependencies = [
|
95
|
-
"nom",
|
96
|
-
]
|
97
|
-
|
98
|
-
[[package]]
|
99
|
-
name = "cfg-if"
|
100
|
-
version = "1.0.0"
|
101
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
102
|
-
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
103
|
-
|
104
|
-
[[package]]
|
105
|
-
name = "clang-sys"
|
106
|
-
version = "1.6.1"
|
107
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
108
|
-
checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f"
|
109
|
-
dependencies = [
|
110
|
-
"glob",
|
111
|
-
"libc",
|
112
|
-
"libloading",
|
113
|
-
]
|
114
|
-
|
115
|
-
[[package]]
|
116
|
-
name = "cpufeatures"
|
117
|
-
version = "0.2.6"
|
118
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
119
|
-
checksum = "280a9f2d8b3a38871a3c8a46fb80db65e5e5ed97da80c4d08bf27fb63e35e181"
|
120
|
-
dependencies = [
|
121
|
-
"libc",
|
122
|
-
]
|
123
|
-
|
124
|
-
[[package]]
|
125
|
-
name = "crypto-common"
|
126
|
-
version = "0.1.6"
|
127
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
128
|
-
checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
|
129
|
-
dependencies = [
|
130
|
-
"generic-array",
|
131
|
-
"typenum",
|
132
|
-
]
|
133
|
-
|
134
|
-
[[package]]
|
135
|
-
name = "digest"
|
136
|
-
version = "0.10.7"
|
137
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
138
|
-
checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
|
139
|
-
dependencies = [
|
140
|
-
"block-buffer",
|
141
|
-
"crypto-common",
|
142
|
-
]
|
143
|
-
|
144
|
-
[[package]]
|
145
|
-
name = "errno"
|
146
|
-
version = "0.3.2"
|
147
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
148
|
-
checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f"
|
149
|
-
dependencies = [
|
150
|
-
"errno-dragonfly",
|
151
|
-
"libc",
|
152
|
-
"windows-sys",
|
153
|
-
]
|
154
|
-
|
155
|
-
[[package]]
|
156
|
-
name = "errno-dragonfly"
|
157
|
-
version = "0.1.2"
|
158
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
159
|
-
checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
|
160
|
-
dependencies = [
|
161
|
-
"cc",
|
162
|
-
"libc",
|
163
|
-
]
|
164
|
-
|
165
|
-
[[package]]
|
166
|
-
name = "fast_mmaped_file_rs"
|
167
|
-
version = "0.1.0"
|
168
|
-
dependencies = [
|
169
|
-
"bstr",
|
170
|
-
"hashbrown",
|
171
|
-
"indoc",
|
172
|
-
"libc",
|
173
|
-
"magnus",
|
174
|
-
"memmap2",
|
175
|
-
"nix",
|
176
|
-
"rand",
|
177
|
-
"rb-sys",
|
178
|
-
"rb-sys-env",
|
179
|
-
"serde",
|
180
|
-
"serde_json",
|
181
|
-
"sha2",
|
182
|
-
"smallvec",
|
183
|
-
"tempfile",
|
184
|
-
"thiserror",
|
185
|
-
]
|
186
|
-
|
187
|
-
[[package]]
|
188
|
-
name = "fastrand"
|
189
|
-
version = "2.0.0"
|
190
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
191
|
-
checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764"
|
192
|
-
|
193
|
-
[[package]]
|
194
|
-
name = "generic-array"
|
195
|
-
version = "0.14.7"
|
196
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
197
|
-
checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
|
198
|
-
dependencies = [
|
199
|
-
"typenum",
|
200
|
-
"version_check",
|
201
|
-
]
|
202
|
-
|
203
|
-
[[package]]
|
204
|
-
name = "getrandom"
|
205
|
-
version = "0.2.8"
|
206
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
207
|
-
checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
|
208
|
-
dependencies = [
|
209
|
-
"cfg-if",
|
210
|
-
"libc",
|
211
|
-
"wasi",
|
212
|
-
]
|
213
|
-
|
214
|
-
[[package]]
|
215
|
-
name = "glob"
|
216
|
-
version = "0.3.1"
|
217
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
218
|
-
checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
|
219
|
-
|
220
|
-
[[package]]
|
221
|
-
name = "hashbrown"
|
222
|
-
version = "0.13.2"
|
223
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
224
|
-
checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e"
|
225
|
-
dependencies = [
|
226
|
-
"ahash",
|
227
|
-
]
|
228
|
-
|
229
|
-
[[package]]
|
230
|
-
name = "indoc"
|
231
|
-
version = "2.0.3"
|
232
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
233
|
-
checksum = "2c785eefb63ebd0e33416dfcb8d6da0bf27ce752843a45632a67bf10d4d4b5c4"
|
234
|
-
|
235
|
-
[[package]]
|
236
|
-
name = "itoa"
|
237
|
-
version = "1.0.6"
|
238
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
239
|
-
checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6"
|
240
|
-
|
241
|
-
[[package]]
|
242
|
-
name = "lazy_static"
|
243
|
-
version = "1.4.0"
|
244
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
245
|
-
checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
|
246
|
-
|
247
|
-
[[package]]
|
248
|
-
name = "lazycell"
|
249
|
-
version = "1.3.0"
|
250
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
251
|
-
checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
|
252
|
-
|
253
|
-
[[package]]
|
254
|
-
name = "libc"
|
255
|
-
version = "0.2.147"
|
256
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
257
|
-
checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
|
258
|
-
|
259
|
-
[[package]]
|
260
|
-
name = "libloading"
|
261
|
-
version = "0.7.4"
|
262
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
263
|
-
checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f"
|
264
|
-
dependencies = [
|
265
|
-
"cfg-if",
|
266
|
-
"winapi",
|
267
|
-
]
|
268
|
-
|
269
|
-
[[package]]
|
270
|
-
name = "linux-raw-sys"
|
271
|
-
version = "0.4.3"
|
272
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
273
|
-
checksum = "09fc20d2ca12cb9f044c93e3bd6d32d523e6e2ec3db4f7b2939cd99026ecd3f0"
|
274
|
-
|
275
|
-
[[package]]
|
276
|
-
name = "magnus"
|
277
|
-
version = "0.6.0"
|
278
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
279
|
-
checksum = "68e9585bfe236e88e6b10b6d8eb5349bd0e0009f3f9dff8d2e99a82601b33743"
|
280
|
-
dependencies = [
|
281
|
-
"magnus-macros",
|
282
|
-
"rb-sys",
|
283
|
-
"rb-sys-env",
|
284
|
-
"seq-macro",
|
285
|
-
]
|
286
|
-
|
287
|
-
[[package]]
|
288
|
-
name = "magnus-macros"
|
289
|
-
version = "0.6.0"
|
290
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
291
|
-
checksum = "5968c820e2960565f647819f5928a42d6e874551cab9d88d75e3e0660d7f71e3"
|
292
|
-
dependencies = [
|
293
|
-
"proc-macro2",
|
294
|
-
"quote",
|
295
|
-
"syn",
|
296
|
-
]
|
297
|
-
|
298
|
-
[[package]]
|
299
|
-
name = "memchr"
|
300
|
-
version = "2.5.0"
|
301
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
302
|
-
checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
|
303
|
-
|
304
|
-
[[package]]
|
305
|
-
name = "memmap2"
|
306
|
-
version = "0.5.10"
|
307
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
308
|
-
checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327"
|
309
|
-
dependencies = [
|
310
|
-
"libc",
|
311
|
-
]
|
312
|
-
|
313
|
-
[[package]]
|
314
|
-
name = "memoffset"
|
315
|
-
version = "0.6.5"
|
316
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
317
|
-
checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
|
318
|
-
dependencies = [
|
319
|
-
"autocfg",
|
320
|
-
]
|
321
|
-
|
322
|
-
[[package]]
|
323
|
-
name = "minimal-lexical"
|
324
|
-
version = "0.2.1"
|
325
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
326
|
-
checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
|
327
|
-
|
328
|
-
[[package]]
|
329
|
-
name = "nix"
|
330
|
-
version = "0.25.1"
|
331
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
332
|
-
checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4"
|
333
|
-
dependencies = [
|
334
|
-
"autocfg",
|
335
|
-
"bitflags 1.3.2",
|
336
|
-
"cfg-if",
|
337
|
-
"libc",
|
338
|
-
"memoffset",
|
339
|
-
"pin-utils",
|
340
|
-
]
|
341
|
-
|
342
|
-
[[package]]
|
343
|
-
name = "nom"
|
344
|
-
version = "7.1.3"
|
345
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
346
|
-
checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
|
347
|
-
dependencies = [
|
348
|
-
"memchr",
|
349
|
-
"minimal-lexical",
|
350
|
-
]
|
351
|
-
|
352
|
-
[[package]]
|
353
|
-
name = "once_cell"
|
354
|
-
version = "1.17.1"
|
355
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
356
|
-
checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3"
|
357
|
-
|
358
|
-
[[package]]
|
359
|
-
name = "peeking_take_while"
|
360
|
-
version = "0.1.2"
|
361
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
362
|
-
checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
|
363
|
-
|
364
|
-
[[package]]
|
365
|
-
name = "pin-utils"
|
366
|
-
version = "0.1.0"
|
367
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
368
|
-
checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
|
369
|
-
|
370
|
-
[[package]]
|
371
|
-
name = "ppv-lite86"
|
372
|
-
version = "0.2.17"
|
373
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
374
|
-
checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
|
375
|
-
|
376
|
-
[[package]]
|
377
|
-
name = "proc-macro2"
|
378
|
-
version = "1.0.56"
|
379
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
380
|
-
checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435"
|
381
|
-
dependencies = [
|
382
|
-
"unicode-ident",
|
383
|
-
]
|
384
|
-
|
385
|
-
[[package]]
|
386
|
-
name = "quote"
|
387
|
-
version = "1.0.26"
|
388
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
389
|
-
checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc"
|
390
|
-
dependencies = [
|
391
|
-
"proc-macro2",
|
392
|
-
]
|
393
|
-
|
394
|
-
[[package]]
|
395
|
-
name = "rand"
|
396
|
-
version = "0.8.5"
|
397
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
398
|
-
checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
|
399
|
-
dependencies = [
|
400
|
-
"libc",
|
401
|
-
"rand_chacha",
|
402
|
-
"rand_core",
|
403
|
-
]
|
404
|
-
|
405
|
-
[[package]]
|
406
|
-
name = "rand_chacha"
|
407
|
-
version = "0.3.1"
|
408
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
409
|
-
checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
|
410
|
-
dependencies = [
|
411
|
-
"ppv-lite86",
|
412
|
-
"rand_core",
|
413
|
-
]
|
414
|
-
|
415
|
-
[[package]]
|
416
|
-
name = "rand_core"
|
417
|
-
version = "0.6.4"
|
418
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
419
|
-
checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
|
420
|
-
dependencies = [
|
421
|
-
"getrandom",
|
422
|
-
]
|
423
|
-
|
424
|
-
[[package]]
|
425
|
-
name = "rb-sys"
|
426
|
-
version = "0.9.86"
|
427
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
428
|
-
checksum = "7285f2a7b92f58ab198e3fd59a71d2861478f9c4642f41e83582385818941697"
|
429
|
-
dependencies = [
|
430
|
-
"rb-sys-build",
|
431
|
-
]
|
432
|
-
|
433
|
-
[[package]]
|
434
|
-
name = "rb-sys-build"
|
435
|
-
version = "0.9.86"
|
436
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
437
|
-
checksum = "71583945f94dabb6c0dfa63f1b71e929c1901e1e288ef3739ab8bed3b7069550"
|
438
|
-
dependencies = [
|
439
|
-
"bindgen",
|
440
|
-
"lazy_static",
|
441
|
-
"proc-macro2",
|
442
|
-
"quote",
|
443
|
-
"regex",
|
444
|
-
"shell-words",
|
445
|
-
"syn",
|
446
|
-
]
|
447
|
-
|
448
|
-
[[package]]
|
449
|
-
name = "rb-sys-env"
|
450
|
-
version = "0.1.2"
|
451
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
452
|
-
checksum = "a35802679f07360454b418a5d1735c89716bde01d35b1560fc953c1415a0b3bb"
|
453
|
-
|
454
|
-
[[package]]
|
455
|
-
name = "redox_syscall"
|
456
|
-
version = "0.3.5"
|
457
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
458
|
-
checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
|
459
|
-
dependencies = [
|
460
|
-
"bitflags 1.3.2",
|
461
|
-
]
|
462
|
-
|
463
|
-
[[package]]
|
464
|
-
name = "regex"
|
465
|
-
version = "1.7.3"
|
466
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
467
|
-
checksum = "8b1f693b24f6ac912f4893ef08244d70b6067480d2f1a46e950c9691e6749d1d"
|
468
|
-
dependencies = [
|
469
|
-
"aho-corasick",
|
470
|
-
"memchr",
|
471
|
-
"regex-syntax",
|
472
|
-
]
|
473
|
-
|
474
|
-
[[package]]
|
475
|
-
name = "regex-automata"
|
476
|
-
version = "0.3.4"
|
477
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
478
|
-
checksum = "b7b6d6190b7594385f61bd3911cd1be99dfddcfc365a4160cc2ab5bff4aed294"
|
479
|
-
|
480
|
-
[[package]]
|
481
|
-
name = "regex-syntax"
|
482
|
-
version = "0.6.29"
|
483
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
484
|
-
checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
|
485
|
-
|
486
|
-
[[package]]
|
487
|
-
name = "rustc-hash"
|
488
|
-
version = "1.1.0"
|
489
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
490
|
-
checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
|
491
|
-
|
492
|
-
[[package]]
|
493
|
-
name = "rustix"
|
494
|
-
version = "0.38.4"
|
495
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
496
|
-
checksum = "0a962918ea88d644592894bc6dc55acc6c0956488adcebbfb6e273506b7fd6e5"
|
497
|
-
dependencies = [
|
498
|
-
"bitflags 2.3.3",
|
499
|
-
"errno",
|
500
|
-
"libc",
|
501
|
-
"linux-raw-sys",
|
502
|
-
"windows-sys",
|
503
|
-
]
|
504
|
-
|
505
|
-
[[package]]
|
506
|
-
name = "ryu"
|
507
|
-
version = "1.0.13"
|
508
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
509
|
-
checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041"
|
510
|
-
|
511
|
-
[[package]]
|
512
|
-
name = "seq-macro"
|
513
|
-
version = "0.3.3"
|
514
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
515
|
-
checksum = "e6b44e8fc93a14e66336d230954dda83d18b4605ccace8fe09bc7514a71ad0bc"
|
516
|
-
|
517
|
-
[[package]]
|
518
|
-
name = "serde"
|
519
|
-
version = "1.0.164"
|
520
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
521
|
-
checksum = "9e8c8cf938e98f769bc164923b06dce91cea1751522f46f8466461af04c9027d"
|
522
|
-
dependencies = [
|
523
|
-
"serde_derive",
|
524
|
-
]
|
525
|
-
|
526
|
-
[[package]]
|
527
|
-
name = "serde_derive"
|
528
|
-
version = "1.0.164"
|
529
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
530
|
-
checksum = "d9735b638ccc51c28bf6914d90a2e9725b377144fc612c49a611fddd1b631d68"
|
531
|
-
dependencies = [
|
532
|
-
"proc-macro2",
|
533
|
-
"quote",
|
534
|
-
"syn",
|
535
|
-
]
|
536
|
-
|
537
|
-
[[package]]
|
538
|
-
name = "serde_json"
|
539
|
-
version = "1.0.99"
|
540
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
541
|
-
checksum = "46266871c240a00b8f503b877622fe33430b3c7d963bdc0f2adc511e54a1eae3"
|
542
|
-
dependencies = [
|
543
|
-
"itoa",
|
544
|
-
"ryu",
|
545
|
-
"serde",
|
546
|
-
]
|
547
|
-
|
548
|
-
[[package]]
|
549
|
-
name = "sha2"
|
550
|
-
version = "0.10.7"
|
551
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
552
|
-
checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8"
|
553
|
-
dependencies = [
|
554
|
-
"cfg-if",
|
555
|
-
"cpufeatures",
|
556
|
-
"digest",
|
557
|
-
]
|
558
|
-
|
559
|
-
[[package]]
|
560
|
-
name = "shell-words"
|
561
|
-
version = "1.1.0"
|
562
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
563
|
-
checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde"
|
564
|
-
|
565
|
-
[[package]]
|
566
|
-
name = "shlex"
|
567
|
-
version = "1.1.0"
|
568
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
569
|
-
checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3"
|
570
|
-
|
571
|
-
[[package]]
|
572
|
-
name = "smallvec"
|
573
|
-
version = "1.11.0"
|
574
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
575
|
-
checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9"
|
576
|
-
dependencies = [
|
577
|
-
"serde",
|
578
|
-
]
|
579
|
-
|
580
|
-
[[package]]
|
581
|
-
name = "syn"
|
582
|
-
version = "2.0.13"
|
583
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
584
|
-
checksum = "4c9da457c5285ac1f936ebd076af6dac17a61cfe7826f2076b4d015cf47bc8ec"
|
585
|
-
dependencies = [
|
586
|
-
"proc-macro2",
|
587
|
-
"quote",
|
588
|
-
"unicode-ident",
|
589
|
-
]
|
590
|
-
|
591
|
-
[[package]]
|
592
|
-
name = "tempfile"
|
593
|
-
version = "3.7.0"
|
594
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
595
|
-
checksum = "5486094ee78b2e5038a6382ed7645bc084dc2ec433426ca4c3cb61e2007b8998"
|
596
|
-
dependencies = [
|
597
|
-
"cfg-if",
|
598
|
-
"fastrand",
|
599
|
-
"redox_syscall",
|
600
|
-
"rustix",
|
601
|
-
"windows-sys",
|
602
|
-
]
|
603
|
-
|
604
|
-
[[package]]
|
605
|
-
name = "thiserror"
|
606
|
-
version = "1.0.40"
|
607
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
608
|
-
checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac"
|
609
|
-
dependencies = [
|
610
|
-
"thiserror-impl",
|
611
|
-
]
|
612
|
-
|
613
|
-
[[package]]
|
614
|
-
name = "thiserror-impl"
|
615
|
-
version = "1.0.40"
|
616
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
617
|
-
checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
|
618
|
-
dependencies = [
|
619
|
-
"proc-macro2",
|
620
|
-
"quote",
|
621
|
-
"syn",
|
622
|
-
]
|
623
|
-
|
624
|
-
[[package]]
|
625
|
-
name = "typenum"
|
626
|
-
version = "1.16.0"
|
627
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
628
|
-
checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
|
629
|
-
|
630
|
-
[[package]]
|
631
|
-
name = "unicode-ident"
|
632
|
-
version = "1.0.8"
|
633
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
634
|
-
checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4"
|
635
|
-
|
636
|
-
[[package]]
|
637
|
-
name = "version_check"
|
638
|
-
version = "0.9.4"
|
639
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
640
|
-
checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
|
641
|
-
|
642
|
-
[[package]]
|
643
|
-
name = "wasi"
|
644
|
-
version = "0.11.0+wasi-snapshot-preview1"
|
645
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
646
|
-
checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
|
647
|
-
|
648
|
-
[[package]]
|
649
|
-
name = "winapi"
|
650
|
-
version = "0.3.9"
|
651
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
652
|
-
checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
|
653
|
-
dependencies = [
|
654
|
-
"winapi-i686-pc-windows-gnu",
|
655
|
-
"winapi-x86_64-pc-windows-gnu",
|
656
|
-
]
|
657
|
-
|
658
|
-
[[package]]
|
659
|
-
name = "winapi-i686-pc-windows-gnu"
|
660
|
-
version = "0.4.0"
|
661
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
662
|
-
checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
|
663
|
-
|
664
|
-
[[package]]
|
665
|
-
name = "winapi-x86_64-pc-windows-gnu"
|
666
|
-
version = "0.4.0"
|
667
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
668
|
-
checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
669
|
-
|
670
|
-
[[package]]
|
671
|
-
name = "windows-sys"
|
672
|
-
version = "0.48.0"
|
673
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
674
|
-
checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
|
675
|
-
dependencies = [
|
676
|
-
"windows-targets",
|
677
|
-
]
|
678
|
-
|
679
|
-
[[package]]
|
680
|
-
name = "windows-targets"
|
681
|
-
version = "0.48.0"
|
682
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
683
|
-
checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5"
|
684
|
-
dependencies = [
|
685
|
-
"windows_aarch64_gnullvm",
|
686
|
-
"windows_aarch64_msvc",
|
687
|
-
"windows_i686_gnu",
|
688
|
-
"windows_i686_msvc",
|
689
|
-
"windows_x86_64_gnu",
|
690
|
-
"windows_x86_64_gnullvm",
|
691
|
-
"windows_x86_64_msvc",
|
692
|
-
]
|
693
|
-
|
694
|
-
[[package]]
|
695
|
-
name = "windows_aarch64_gnullvm"
|
696
|
-
version = "0.48.0"
|
697
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
698
|
-
checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc"
|
699
|
-
|
700
|
-
[[package]]
|
701
|
-
name = "windows_aarch64_msvc"
|
702
|
-
version = "0.48.0"
|
703
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
704
|
-
checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3"
|
705
|
-
|
706
|
-
[[package]]
|
707
|
-
name = "windows_i686_gnu"
|
708
|
-
version = "0.48.0"
|
709
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
710
|
-
checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241"
|
711
|
-
|
712
|
-
[[package]]
|
713
|
-
name = "windows_i686_msvc"
|
714
|
-
version = "0.48.0"
|
715
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
716
|
-
checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00"
|
717
|
-
|
718
|
-
[[package]]
|
719
|
-
name = "windows_x86_64_gnu"
|
720
|
-
version = "0.48.0"
|
721
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
722
|
-
checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1"
|
723
|
-
|
724
|
-
[[package]]
|
725
|
-
name = "windows_x86_64_gnullvm"
|
726
|
-
version = "0.48.0"
|
727
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
728
|
-
checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953"
|
729
|
-
|
730
|
-
[[package]]
|
731
|
-
name = "windows_x86_64_msvc"
|
732
|
-
version = "0.48.0"
|
733
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
734
|
-
checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
|
Binary file
|
Binary file
|