prometheus-client-mmap 1.1.0-arm64-darwin → 1.2.1-arm64-darwin

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5a1644974a85e124ed048c90bf8547c124ba0b24429bb7a3ae78b1c0eb568066
4
- data.tar.gz: f90765ab1b65a84a7cf9c8e0a9e53f1e8a62aacb89ef3941ba96280b0707ceed
3
+ metadata.gz: cd6c9ae9be33807ca292ac4f7c369971b1febc00f38d54cb06e8327cde04c3b0
4
+ data.tar.gz: 7c9646168b78ac791dc2c92d7606e232a226a56185ee28b701b6cbbca1f678f0
5
5
  SHA512:
6
- metadata.gz: 550141596d249fd4f6212c439bab0ca19cb2df4c59453449ae2a549940cd030f9766d23e3a23d4344a0991de2f6ac8d4235f41d58b9e5fff7bc702dda01ff02a
7
- data.tar.gz: 7d7f2e31f8af9ec4b1edbb717f1d1af52cf117957898a93c25a569421439a31750ee14a29163d25f209db8731eb76f7101f4d98e349c67be2ba00ecc3b7be254
6
+ metadata.gz: eed29749ac96ffddf1f75856e582a5baa9c1767fa9dc47f415cf5c22d29f103540274fbe4e7e490b26509f4f0cd7b176c9428fe2e8f889d7411227af4f33be78
7
+ data.tar.gz: c60d2b117312d9d502a28042c8f175f6ef9559e778bc645005135b00cc11fcf37b95c97b8601e662bde78f7d8eb5ece441eac85f6a5b11cf64624d37116f0f32
@@ -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.13"
9
+ hashbrown = "0.14"
10
10
  libc = "0.2"
11
- magnus = { version = "0.6", features = ["rb-sys"] }
12
- memmap2 = "0.5"
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.86"
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.10", features = ["serde"] }
19
- thiserror = "1.0"
18
+ smallvec = { version = "1.13", features = ["serde"] }
19
+ thiserror = "2.0"
20
20
 
21
21
  [dev-dependencies]
22
- bstr = "1.6"
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.6", features = ["rb-sys","embed"] }
25
+ magnus = { version = "0.7", features = ["rb-sys","embed"] }
26
26
  rand = "0.8"
27
27
  sha2 = "0.10"
28
- tempfile = "3.5"
28
+ tempfile = "3.14"
29
29
 
30
30
  [build-dependencies]
31
- rb-sys-env = "0.1"
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::{Path, PathBuf};
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 initial_file_len = get_file_len(&path, &file)?;
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(initial_file_len)?;
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 = initial_file_len.max(HEADER_SIZE);
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 = initial_file_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 region of the file.
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
- /// The Ruby `STR_NOEMBED` flag, aka `FL_USER1`.
29
- const STR_NOEMBED: c_ulong = 1 << (13);
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. Will return an error if the file
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
- if target_cap <= required_len {
458
- needs_resize = true;
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
@@ -1,5 +1,5 @@
1
1
  module Prometheus
2
2
  module Client
3
- VERSION = '1.1.0'.freeze
3
+ VERSION = '1.2.1'.freeze
4
4
  end
5
5
  end
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.0
4
+ version: 1.2.1
5
5
  platform: arm64-darwin
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-01-03 00:00:00.000000000 Z
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.1
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.1
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.4.0
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: 1.4.0
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: 0.16.2
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: 0.16.2
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.bundle
150
- - lib/3.0/fast_mmaped_file_rs.bundle
151
189
  - lib/3.1/fast_mmaped_file_rs.bundle
152
190
  - lib/3.2/fast_mmaped_file_rs.bundle
153
191
  - lib/3.3/fast_mmaped_file_rs.bundle
192
+ - lib/3.4/fast_mmaped_file_rs.bundle
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: '2.7'
234
+ version: '3.1'
196
235
  - - "<"
197
236
  - !ruby/object:Gem::Version
198
- version: 3.4.dev
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.4.4
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