##// END OF EJS Templates
rhg: use `format_bytes!` for error messages...
Raphaël Gomès -
r46598:fada3387 default
parent child Browse files
Show More
@@ -1,967 +1,996
1 # This file is automatically @generated by Cargo.
1 # This file is automatically @generated by Cargo.
2 # It is not intended for manual editing.
2 # It is not intended for manual editing.
3 [[package]]
3 [[package]]
4 name = "adler"
4 name = "adler"
5 version = "0.2.3"
5 version = "0.2.3"
6 source = "registry+https://github.com/rust-lang/crates.io-index"
6 source = "registry+https://github.com/rust-lang/crates.io-index"
7
7
8 [[package]]
8 [[package]]
9 name = "aho-corasick"
9 name = "aho-corasick"
10 version = "0.7.13"
10 version = "0.7.13"
11 source = "registry+https://github.com/rust-lang/crates.io-index"
11 source = "registry+https://github.com/rust-lang/crates.io-index"
12 dependencies = [
12 dependencies = [
13 "memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
13 "memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
14 ]
14 ]
15
15
16 [[package]]
16 [[package]]
17 name = "ansi_term"
17 name = "ansi_term"
18 version = "0.11.0"
18 version = "0.11.0"
19 source = "registry+https://github.com/rust-lang/crates.io-index"
19 source = "registry+https://github.com/rust-lang/crates.io-index"
20 dependencies = [
20 dependencies = [
21 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
21 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
22 ]
22 ]
23
23
24 [[package]]
24 [[package]]
25 name = "atty"
25 name = "atty"
26 version = "0.2.14"
26 version = "0.2.14"
27 source = "registry+https://github.com/rust-lang/crates.io-index"
27 source = "registry+https://github.com/rust-lang/crates.io-index"
28 dependencies = [
28 dependencies = [
29 "hermit-abi 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
29 "hermit-abi 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
30 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
30 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
31 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
31 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
32 ]
32 ]
33
33
34 [[package]]
34 [[package]]
35 name = "autocfg"
35 name = "autocfg"
36 version = "1.0.1"
36 version = "1.0.1"
37 source = "registry+https://github.com/rust-lang/crates.io-index"
37 source = "registry+https://github.com/rust-lang/crates.io-index"
38
38
39 [[package]]
39 [[package]]
40 name = "bitflags"
40 name = "bitflags"
41 version = "1.2.1"
41 version = "1.2.1"
42 source = "registry+https://github.com/rust-lang/crates.io-index"
42 source = "registry+https://github.com/rust-lang/crates.io-index"
43
43
44 [[package]]
44 [[package]]
45 name = "bitmaps"
45 name = "bitmaps"
46 version = "2.1.0"
46 version = "2.1.0"
47 source = "registry+https://github.com/rust-lang/crates.io-index"
47 source = "registry+https://github.com/rust-lang/crates.io-index"
48 dependencies = [
48 dependencies = [
49 "typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
49 "typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
50 ]
50 ]
51
51
52 [[package]]
52 [[package]]
53 name = "byteorder"
53 name = "byteorder"
54 version = "1.3.4"
54 version = "1.3.4"
55 source = "registry+https://github.com/rust-lang/crates.io-index"
55 source = "registry+https://github.com/rust-lang/crates.io-index"
56
56
57 [[package]]
57 [[package]]
58 name = "cc"
58 name = "cc"
59 version = "1.0.60"
59 version = "1.0.60"
60 source = "registry+https://github.com/rust-lang/crates.io-index"
60 source = "registry+https://github.com/rust-lang/crates.io-index"
61 dependencies = [
61 dependencies = [
62 "jobserver 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)",
62 "jobserver 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)",
63 ]
63 ]
64
64
65 [[package]]
65 [[package]]
66 name = "cfg-if"
66 name = "cfg-if"
67 version = "0.1.10"
67 version = "0.1.10"
68 source = "registry+https://github.com/rust-lang/crates.io-index"
68 source = "registry+https://github.com/rust-lang/crates.io-index"
69
69
70 [[package]]
70 [[package]]
71 name = "clap"
71 name = "clap"
72 version = "2.33.3"
72 version = "2.33.3"
73 source = "registry+https://github.com/rust-lang/crates.io-index"
73 source = "registry+https://github.com/rust-lang/crates.io-index"
74 dependencies = [
74 dependencies = [
75 "ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
75 "ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
76 "atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
76 "atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
77 "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
77 "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
78 "strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
78 "strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
79 "textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
79 "textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
80 "unicode-width 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
80 "unicode-width 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
81 "vec_map 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
81 "vec_map 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
82 ]
82 ]
83
83
84 [[package]]
84 [[package]]
85 name = "cpython"
85 name = "cpython"
86 version = "0.4.1"
86 version = "0.4.1"
87 source = "registry+https://github.com/rust-lang/crates.io-index"
87 source = "registry+https://github.com/rust-lang/crates.io-index"
88 dependencies = [
88 dependencies = [
89 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
89 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
90 "num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
90 "num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
91 "python27-sys 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
91 "python27-sys 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
92 "python3-sys 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
92 "python3-sys 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
93 ]
93 ]
94
94
95 [[package]]
95 [[package]]
96 name = "crc32fast"
96 name = "crc32fast"
97 version = "1.2.0"
97 version = "1.2.0"
98 source = "registry+https://github.com/rust-lang/crates.io-index"
98 source = "registry+https://github.com/rust-lang/crates.io-index"
99 dependencies = [
99 dependencies = [
100 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
100 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
101 ]
101 ]
102
102
103 [[package]]
103 [[package]]
104 name = "crossbeam"
104 name = "crossbeam"
105 version = "0.7.3"
105 version = "0.7.3"
106 source = "registry+https://github.com/rust-lang/crates.io-index"
106 source = "registry+https://github.com/rust-lang/crates.io-index"
107 dependencies = [
107 dependencies = [
108 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
108 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
109 "crossbeam-channel 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
109 "crossbeam-channel 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
110 "crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
110 "crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
111 "crossbeam-epoch 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
111 "crossbeam-epoch 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
112 "crossbeam-queue 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
112 "crossbeam-queue 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
113 "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
113 "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
114 ]
114 ]
115
115
116 [[package]]
116 [[package]]
117 name = "crossbeam-channel"
117 name = "crossbeam-channel"
118 version = "0.4.4"
118 version = "0.4.4"
119 source = "registry+https://github.com/rust-lang/crates.io-index"
119 source = "registry+https://github.com/rust-lang/crates.io-index"
120 dependencies = [
120 dependencies = [
121 "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
121 "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
122 "maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
122 "maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
123 ]
123 ]
124
124
125 [[package]]
125 [[package]]
126 name = "crossbeam-deque"
126 name = "crossbeam-deque"
127 version = "0.7.3"
127 version = "0.7.3"
128 source = "registry+https://github.com/rust-lang/crates.io-index"
128 source = "registry+https://github.com/rust-lang/crates.io-index"
129 dependencies = [
129 dependencies = [
130 "crossbeam-epoch 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
130 "crossbeam-epoch 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
131 "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
131 "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
132 "maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
132 "maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
133 ]
133 ]
134
134
135 [[package]]
135 [[package]]
136 name = "crossbeam-epoch"
136 name = "crossbeam-epoch"
137 version = "0.8.2"
137 version = "0.8.2"
138 source = "registry+https://github.com/rust-lang/crates.io-index"
138 source = "registry+https://github.com/rust-lang/crates.io-index"
139 dependencies = [
139 dependencies = [
140 "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
140 "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
141 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
141 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
142 "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
142 "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
143 "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
143 "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
144 "maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
144 "maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
145 "memoffset 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
145 "memoffset 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
146 "scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
146 "scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
147 ]
147 ]
148
148
149 [[package]]
149 [[package]]
150 name = "crossbeam-queue"
150 name = "crossbeam-queue"
151 version = "0.2.3"
151 version = "0.2.3"
152 source = "registry+https://github.com/rust-lang/crates.io-index"
152 source = "registry+https://github.com/rust-lang/crates.io-index"
153 dependencies = [
153 dependencies = [
154 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
154 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
155 "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
155 "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
156 "maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
156 "maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
157 ]
157 ]
158
158
159 [[package]]
159 [[package]]
160 name = "crossbeam-utils"
160 name = "crossbeam-utils"
161 version = "0.7.2"
161 version = "0.7.2"
162 source = "registry+https://github.com/rust-lang/crates.io-index"
162 source = "registry+https://github.com/rust-lang/crates.io-index"
163 dependencies = [
163 dependencies = [
164 "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
164 "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
165 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
165 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
166 "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
166 "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
167 ]
167 ]
168
168
169 [[package]]
169 [[package]]
170 name = "ctor"
170 name = "ctor"
171 version = "0.1.16"
171 version = "0.1.16"
172 source = "registry+https://github.com/rust-lang/crates.io-index"
172 source = "registry+https://github.com/rust-lang/crates.io-index"
173 dependencies = [
173 dependencies = [
174 "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
174 "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
175 "syn 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)",
175 "syn 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)",
176 ]
176 ]
177
177
178 [[package]]
178 [[package]]
179 name = "difference"
179 name = "difference"
180 version = "2.0.0"
180 version = "2.0.0"
181 source = "registry+https://github.com/rust-lang/crates.io-index"
181 source = "registry+https://github.com/rust-lang/crates.io-index"
182
182
183 [[package]]
183 [[package]]
184 name = "either"
184 name = "either"
185 version = "1.6.1"
185 version = "1.6.1"
186 source = "registry+https://github.com/rust-lang/crates.io-index"
186 source = "registry+https://github.com/rust-lang/crates.io-index"
187
187
188 [[package]]
188 [[package]]
189 name = "env_logger"
189 name = "env_logger"
190 version = "0.7.1"
190 version = "0.7.1"
191 source = "registry+https://github.com/rust-lang/crates.io-index"
191 source = "registry+https://github.com/rust-lang/crates.io-index"
192 dependencies = [
192 dependencies = [
193 "atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
193 "atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
194 "humantime 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
194 "humantime 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
195 "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
195 "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
196 "regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
196 "regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
197 "termcolor 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
197 "termcolor 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
198 ]
198 ]
199
199
200 [[package]]
200 [[package]]
201 name = "flate2"
201 name = "flate2"
202 version = "1.0.17"
202 version = "1.0.17"
203 source = "registry+https://github.com/rust-lang/crates.io-index"
203 source = "registry+https://github.com/rust-lang/crates.io-index"
204 dependencies = [
204 dependencies = [
205 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
205 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
206 "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
206 "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
207 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
207 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
208 "libz-sys 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
208 "libz-sys 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
209 "miniz_oxide 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
209 "miniz_oxide 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
210 ]
210 ]
211
211
212 [[package]]
212 [[package]]
213 name = "format-bytes"
214 version = "0.1.3"
215 source = "registry+https://github.com/rust-lang/crates.io-index"
216 dependencies = [
217 "format-bytes-macros 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
218 "proc-macro-hack 0.5.19 (registry+https://github.com/rust-lang/crates.io-index)",
219 ]
220
221 [[package]]
222 name = "format-bytes-macros"
223 version = "0.1.2"
224 source = "registry+https://github.com/rust-lang/crates.io-index"
225 dependencies = [
226 "proc-macro-hack 0.5.19 (registry+https://github.com/rust-lang/crates.io-index)",
227 "proc-macro2 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)",
228 "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
229 "syn 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)",
230 ]
231
232 [[package]]
213 name = "fuchsia-cprng"
233 name = "fuchsia-cprng"
214 version = "0.1.1"
234 version = "0.1.1"
215 source = "registry+https://github.com/rust-lang/crates.io-index"
235 source = "registry+https://github.com/rust-lang/crates.io-index"
216
236
217 [[package]]
237 [[package]]
218 name = "gcc"
238 name = "gcc"
219 version = "0.3.55"
239 version = "0.3.55"
220 source = "registry+https://github.com/rust-lang/crates.io-index"
240 source = "registry+https://github.com/rust-lang/crates.io-index"
221
241
222 [[package]]
242 [[package]]
223 name = "getrandom"
243 name = "getrandom"
224 version = "0.1.15"
244 version = "0.1.15"
225 source = "registry+https://github.com/rust-lang/crates.io-index"
245 source = "registry+https://github.com/rust-lang/crates.io-index"
226 dependencies = [
246 dependencies = [
227 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
247 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
228 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
248 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
229 "wasi 0.9.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)",
249 "wasi 0.9.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)",
230 ]
250 ]
231
251
232 [[package]]
252 [[package]]
233 name = "glob"
253 name = "glob"
234 version = "0.3.0"
254 version = "0.3.0"
235 source = "registry+https://github.com/rust-lang/crates.io-index"
255 source = "registry+https://github.com/rust-lang/crates.io-index"
236
256
237 [[package]]
257 [[package]]
238 name = "hermit-abi"
258 name = "hermit-abi"
239 version = "0.1.16"
259 version = "0.1.16"
240 source = "registry+https://github.com/rust-lang/crates.io-index"
260 source = "registry+https://github.com/rust-lang/crates.io-index"
241 dependencies = [
261 dependencies = [
242 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
262 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
243 ]
263 ]
244
264
245 [[package]]
265 [[package]]
246 name = "hex"
266 name = "hex"
247 version = "0.4.2"
267 version = "0.4.2"
248 source = "registry+https://github.com/rust-lang/crates.io-index"
268 source = "registry+https://github.com/rust-lang/crates.io-index"
249
269
250 [[package]]
270 [[package]]
251 name = "hg-core"
271 name = "hg-core"
252 version = "0.1.0"
272 version = "0.1.0"
253 dependencies = [
273 dependencies = [
254 "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
274 "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
255 "clap 2.33.3 (registry+https://github.com/rust-lang/crates.io-index)",
275 "clap 2.33.3 (registry+https://github.com/rust-lang/crates.io-index)",
256 "crossbeam 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
276 "crossbeam 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
257 "flate2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
277 "flate2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)",
258 "hex 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
278 "hex 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
259 "im-rc 15.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
279 "im-rc 15.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
260 "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
280 "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
261 "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
281 "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
262 "memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
282 "memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
263 "memmap 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
283 "memmap 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
264 "micro-timer 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
284 "micro-timer 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
265 "pretty_assertions 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
285 "pretty_assertions 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
266 "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
286 "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
267 "rand_distr 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
287 "rand_distr 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
268 "rand_pcg 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
288 "rand_pcg 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
269 "rayon 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
289 "rayon 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
270 "regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
290 "regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
271 "rust-crypto 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)",
291 "rust-crypto 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)",
272 "same-file 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
292 "same-file 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
273 "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
293 "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
274 "twox-hash 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
294 "twox-hash 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
275 "zstd 0.5.3+zstd.1.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
295 "zstd 0.5.3+zstd.1.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
276 ]
296 ]
277
297
278 [[package]]
298 [[package]]
279 name = "hg-cpython"
299 name = "hg-cpython"
280 version = "0.1.0"
300 version = "0.1.0"
281 dependencies = [
301 dependencies = [
282 "cpython 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
302 "cpython 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
283 "env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
303 "env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
284 "hg-core 0.1.0",
304 "hg-core 0.1.0",
285 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
305 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
286 "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
306 "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
287 ]
307 ]
288
308
289 [[package]]
309 [[package]]
290 name = "humantime"
310 name = "humantime"
291 version = "1.3.0"
311 version = "1.3.0"
292 source = "registry+https://github.com/rust-lang/crates.io-index"
312 source = "registry+https://github.com/rust-lang/crates.io-index"
293 dependencies = [
313 dependencies = [
294 "quick-error 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
314 "quick-error 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
295 ]
315 ]
296
316
297 [[package]]
317 [[package]]
298 name = "im-rc"
318 name = "im-rc"
299 version = "15.0.0"
319 version = "15.0.0"
300 source = "registry+https://github.com/rust-lang/crates.io-index"
320 source = "registry+https://github.com/rust-lang/crates.io-index"
301 dependencies = [
321 dependencies = [
302 "bitmaps 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
322 "bitmaps 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
303 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
323 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
304 "rand_xoshiro 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
324 "rand_xoshiro 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
305 "sized-chunks 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
325 "sized-chunks 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
306 "typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
326 "typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
307 "version_check 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
327 "version_check 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
308 ]
328 ]
309
329
310 [[package]]
330 [[package]]
311 name = "itertools"
331 name = "itertools"
312 version = "0.9.0"
332 version = "0.9.0"
313 source = "registry+https://github.com/rust-lang/crates.io-index"
333 source = "registry+https://github.com/rust-lang/crates.io-index"
314 dependencies = [
334 dependencies = [
315 "either 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
335 "either 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
316 ]
336 ]
317
337
318 [[package]]
338 [[package]]
319 name = "jobserver"
339 name = "jobserver"
320 version = "0.1.21"
340 version = "0.1.21"
321 source = "registry+https://github.com/rust-lang/crates.io-index"
341 source = "registry+https://github.com/rust-lang/crates.io-index"
322 dependencies = [
342 dependencies = [
323 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
343 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
324 ]
344 ]
325
345
326 [[package]]
346 [[package]]
327 name = "lazy_static"
347 name = "lazy_static"
328 version = "1.4.0"
348 version = "1.4.0"
329 source = "registry+https://github.com/rust-lang/crates.io-index"
349 source = "registry+https://github.com/rust-lang/crates.io-index"
330
350
331 [[package]]
351 [[package]]
332 name = "libc"
352 name = "libc"
333 version = "0.2.77"
353 version = "0.2.77"
334 source = "registry+https://github.com/rust-lang/crates.io-index"
354 source = "registry+https://github.com/rust-lang/crates.io-index"
335
355
336 [[package]]
356 [[package]]
337 name = "libz-sys"
357 name = "libz-sys"
338 version = "1.1.2"
358 version = "1.1.2"
339 source = "registry+https://github.com/rust-lang/crates.io-index"
359 source = "registry+https://github.com/rust-lang/crates.io-index"
340 dependencies = [
360 dependencies = [
341 "cc 1.0.60 (registry+https://github.com/rust-lang/crates.io-index)",
361 "cc 1.0.60 (registry+https://github.com/rust-lang/crates.io-index)",
342 "pkg-config 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)",
362 "pkg-config 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)",
343 "vcpkg 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
363 "vcpkg 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
344 ]
364 ]
345
365
346 [[package]]
366 [[package]]
347 name = "log"
367 name = "log"
348 version = "0.4.11"
368 version = "0.4.11"
349 source = "registry+https://github.com/rust-lang/crates.io-index"
369 source = "registry+https://github.com/rust-lang/crates.io-index"
350 dependencies = [
370 dependencies = [
351 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
371 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
352 ]
372 ]
353
373
354 [[package]]
374 [[package]]
355 name = "maybe-uninit"
375 name = "maybe-uninit"
356 version = "2.0.0"
376 version = "2.0.0"
357 source = "registry+https://github.com/rust-lang/crates.io-index"
377 source = "registry+https://github.com/rust-lang/crates.io-index"
358
378
359 [[package]]
379 [[package]]
360 name = "memchr"
380 name = "memchr"
361 version = "2.3.3"
381 version = "2.3.3"
362 source = "registry+https://github.com/rust-lang/crates.io-index"
382 source = "registry+https://github.com/rust-lang/crates.io-index"
363
383
364 [[package]]
384 [[package]]
365 name = "memmap"
385 name = "memmap"
366 version = "0.7.0"
386 version = "0.7.0"
367 source = "registry+https://github.com/rust-lang/crates.io-index"
387 source = "registry+https://github.com/rust-lang/crates.io-index"
368 dependencies = [
388 dependencies = [
369 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
389 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
370 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
390 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
371 ]
391 ]
372
392
373 [[package]]
393 [[package]]
374 name = "memoffset"
394 name = "memoffset"
375 version = "0.5.6"
395 version = "0.5.6"
376 source = "registry+https://github.com/rust-lang/crates.io-index"
396 source = "registry+https://github.com/rust-lang/crates.io-index"
377 dependencies = [
397 dependencies = [
378 "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
398 "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
379 ]
399 ]
380
400
381 [[package]]
401 [[package]]
382 name = "micro-timer"
402 name = "micro-timer"
383 version = "0.3.1"
403 version = "0.3.1"
384 source = "registry+https://github.com/rust-lang/crates.io-index"
404 source = "registry+https://github.com/rust-lang/crates.io-index"
385 dependencies = [
405 dependencies = [
386 "micro-timer-macros 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
406 "micro-timer-macros 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
387 "scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
407 "scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
388 ]
408 ]
389
409
390 [[package]]
410 [[package]]
391 name = "micro-timer-macros"
411 name = "micro-timer-macros"
392 version = "0.3.1"
412 version = "0.3.1"
393 source = "registry+https://github.com/rust-lang/crates.io-index"
413 source = "registry+https://github.com/rust-lang/crates.io-index"
394 dependencies = [
414 dependencies = [
395 "proc-macro2 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)",
415 "proc-macro2 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)",
396 "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
416 "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
397 "scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
417 "scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
398 "syn 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)",
418 "syn 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)",
399 ]
419 ]
400
420
401 [[package]]
421 [[package]]
402 name = "miniz_oxide"
422 name = "miniz_oxide"
403 version = "0.4.2"
423 version = "0.4.2"
404 source = "registry+https://github.com/rust-lang/crates.io-index"
424 source = "registry+https://github.com/rust-lang/crates.io-index"
405 dependencies = [
425 dependencies = [
406 "adler 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
426 "adler 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
407 "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
427 "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
408 ]
428 ]
409
429
410 [[package]]
430 [[package]]
411 name = "num-traits"
431 name = "num-traits"
412 version = "0.2.12"
432 version = "0.2.12"
413 source = "registry+https://github.com/rust-lang/crates.io-index"
433 source = "registry+https://github.com/rust-lang/crates.io-index"
414 dependencies = [
434 dependencies = [
415 "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
435 "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
416 ]
436 ]
417
437
418 [[package]]
438 [[package]]
419 name = "num_cpus"
439 name = "num_cpus"
420 version = "1.13.0"
440 version = "1.13.0"
421 source = "registry+https://github.com/rust-lang/crates.io-index"
441 source = "registry+https://github.com/rust-lang/crates.io-index"
422 dependencies = [
442 dependencies = [
423 "hermit-abi 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
443 "hermit-abi 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
424 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
444 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
425 ]
445 ]
426
446
427 [[package]]
447 [[package]]
428 name = "output_vt100"
448 name = "output_vt100"
429 version = "0.1.2"
449 version = "0.1.2"
430 source = "registry+https://github.com/rust-lang/crates.io-index"
450 source = "registry+https://github.com/rust-lang/crates.io-index"
431 dependencies = [
451 dependencies = [
432 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
452 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
433 ]
453 ]
434
454
435 [[package]]
455 [[package]]
436 name = "pkg-config"
456 name = "pkg-config"
437 version = "0.3.18"
457 version = "0.3.18"
438 source = "registry+https://github.com/rust-lang/crates.io-index"
458 source = "registry+https://github.com/rust-lang/crates.io-index"
439
459
440 [[package]]
460 [[package]]
441 name = "ppv-lite86"
461 name = "ppv-lite86"
442 version = "0.2.9"
462 version = "0.2.9"
443 source = "registry+https://github.com/rust-lang/crates.io-index"
463 source = "registry+https://github.com/rust-lang/crates.io-index"
444
464
445 [[package]]
465 [[package]]
446 name = "pretty_assertions"
466 name = "pretty_assertions"
447 version = "0.6.1"
467 version = "0.6.1"
448 source = "registry+https://github.com/rust-lang/crates.io-index"
468 source = "registry+https://github.com/rust-lang/crates.io-index"
449 dependencies = [
469 dependencies = [
450 "ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
470 "ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
451 "ctor 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
471 "ctor 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
452 "difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
472 "difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
453 "output_vt100 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
473 "output_vt100 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
454 ]
474 ]
455
475
456 [[package]]
476 [[package]]
477 name = "proc-macro-hack"
478 version = "0.5.19"
479 source = "registry+https://github.com/rust-lang/crates.io-index"
480
481 [[package]]
457 name = "proc-macro2"
482 name = "proc-macro2"
458 version = "1.0.21"
483 version = "1.0.21"
459 source = "registry+https://github.com/rust-lang/crates.io-index"
484 source = "registry+https://github.com/rust-lang/crates.io-index"
460 dependencies = [
485 dependencies = [
461 "unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
486 "unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
462 ]
487 ]
463
488
464 [[package]]
489 [[package]]
465 name = "python27-sys"
490 name = "python27-sys"
466 version = "0.4.1"
491 version = "0.4.1"
467 source = "registry+https://github.com/rust-lang/crates.io-index"
492 source = "registry+https://github.com/rust-lang/crates.io-index"
468 dependencies = [
493 dependencies = [
469 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
494 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
470 "regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
495 "regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
471 ]
496 ]
472
497
473 [[package]]
498 [[package]]
474 name = "python3-sys"
499 name = "python3-sys"
475 version = "0.4.1"
500 version = "0.4.1"
476 source = "registry+https://github.com/rust-lang/crates.io-index"
501 source = "registry+https://github.com/rust-lang/crates.io-index"
477 dependencies = [
502 dependencies = [
478 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
503 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
479 "regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
504 "regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
480 ]
505 ]
481
506
482 [[package]]
507 [[package]]
483 name = "quick-error"
508 name = "quick-error"
484 version = "1.2.3"
509 version = "1.2.3"
485 source = "registry+https://github.com/rust-lang/crates.io-index"
510 source = "registry+https://github.com/rust-lang/crates.io-index"
486
511
487 [[package]]
512 [[package]]
488 name = "quote"
513 name = "quote"
489 version = "1.0.7"
514 version = "1.0.7"
490 source = "registry+https://github.com/rust-lang/crates.io-index"
515 source = "registry+https://github.com/rust-lang/crates.io-index"
491 dependencies = [
516 dependencies = [
492 "proc-macro2 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)",
517 "proc-macro2 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)",
493 ]
518 ]
494
519
495 [[package]]
520 [[package]]
496 name = "rand"
521 name = "rand"
497 version = "0.3.23"
522 version = "0.3.23"
498 source = "registry+https://github.com/rust-lang/crates.io-index"
523 source = "registry+https://github.com/rust-lang/crates.io-index"
499 dependencies = [
524 dependencies = [
500 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
525 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
501 "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
526 "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
502 ]
527 ]
503
528
504 [[package]]
529 [[package]]
505 name = "rand"
530 name = "rand"
506 version = "0.4.6"
531 version = "0.4.6"
507 source = "registry+https://github.com/rust-lang/crates.io-index"
532 source = "registry+https://github.com/rust-lang/crates.io-index"
508 dependencies = [
533 dependencies = [
509 "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
534 "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
510 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
535 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
511 "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
536 "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
512 "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
537 "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
513 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
538 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
514 ]
539 ]
515
540
516 [[package]]
541 [[package]]
517 name = "rand"
542 name = "rand"
518 version = "0.7.3"
543 version = "0.7.3"
519 source = "registry+https://github.com/rust-lang/crates.io-index"
544 source = "registry+https://github.com/rust-lang/crates.io-index"
520 dependencies = [
545 dependencies = [
521 "getrandom 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
546 "getrandom 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
522 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
547 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
523 "rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
548 "rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
524 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
549 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
525 "rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
550 "rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
526 ]
551 ]
527
552
528 [[package]]
553 [[package]]
529 name = "rand_chacha"
554 name = "rand_chacha"
530 version = "0.2.2"
555 version = "0.2.2"
531 source = "registry+https://github.com/rust-lang/crates.io-index"
556 source = "registry+https://github.com/rust-lang/crates.io-index"
532 dependencies = [
557 dependencies = [
533 "ppv-lite86 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)",
558 "ppv-lite86 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)",
534 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
559 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
535 ]
560 ]
536
561
537 [[package]]
562 [[package]]
538 name = "rand_core"
563 name = "rand_core"
539 version = "0.3.1"
564 version = "0.3.1"
540 source = "registry+https://github.com/rust-lang/crates.io-index"
565 source = "registry+https://github.com/rust-lang/crates.io-index"
541 dependencies = [
566 dependencies = [
542 "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
567 "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
543 ]
568 ]
544
569
545 [[package]]
570 [[package]]
546 name = "rand_core"
571 name = "rand_core"
547 version = "0.4.2"
572 version = "0.4.2"
548 source = "registry+https://github.com/rust-lang/crates.io-index"
573 source = "registry+https://github.com/rust-lang/crates.io-index"
549
574
550 [[package]]
575 [[package]]
551 name = "rand_core"
576 name = "rand_core"
552 version = "0.5.1"
577 version = "0.5.1"
553 source = "registry+https://github.com/rust-lang/crates.io-index"
578 source = "registry+https://github.com/rust-lang/crates.io-index"
554 dependencies = [
579 dependencies = [
555 "getrandom 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
580 "getrandom 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
556 ]
581 ]
557
582
558 [[package]]
583 [[package]]
559 name = "rand_distr"
584 name = "rand_distr"
560 version = "0.2.2"
585 version = "0.2.2"
561 source = "registry+https://github.com/rust-lang/crates.io-index"
586 source = "registry+https://github.com/rust-lang/crates.io-index"
562 dependencies = [
587 dependencies = [
563 "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
588 "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
564 ]
589 ]
565
590
566 [[package]]
591 [[package]]
567 name = "rand_hc"
592 name = "rand_hc"
568 version = "0.2.0"
593 version = "0.2.0"
569 source = "registry+https://github.com/rust-lang/crates.io-index"
594 source = "registry+https://github.com/rust-lang/crates.io-index"
570 dependencies = [
595 dependencies = [
571 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
596 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
572 ]
597 ]
573
598
574 [[package]]
599 [[package]]
575 name = "rand_pcg"
600 name = "rand_pcg"
576 version = "0.2.1"
601 version = "0.2.1"
577 source = "registry+https://github.com/rust-lang/crates.io-index"
602 source = "registry+https://github.com/rust-lang/crates.io-index"
578 dependencies = [
603 dependencies = [
579 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
604 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
580 ]
605 ]
581
606
582 [[package]]
607 [[package]]
583 name = "rand_xoshiro"
608 name = "rand_xoshiro"
584 version = "0.4.0"
609 version = "0.4.0"
585 source = "registry+https://github.com/rust-lang/crates.io-index"
610 source = "registry+https://github.com/rust-lang/crates.io-index"
586 dependencies = [
611 dependencies = [
587 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
612 "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
588 ]
613 ]
589
614
590 [[package]]
615 [[package]]
591 name = "rayon"
616 name = "rayon"
592 version = "1.4.0"
617 version = "1.4.0"
593 source = "registry+https://github.com/rust-lang/crates.io-index"
618 source = "registry+https://github.com/rust-lang/crates.io-index"
594 dependencies = [
619 dependencies = [
595 "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
620 "autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
596 "crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
621 "crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
597 "either 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
622 "either 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
598 "rayon-core 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
623 "rayon-core 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
599 ]
624 ]
600
625
601 [[package]]
626 [[package]]
602 name = "rayon-core"
627 name = "rayon-core"
603 version = "1.8.1"
628 version = "1.8.1"
604 source = "registry+https://github.com/rust-lang/crates.io-index"
629 source = "registry+https://github.com/rust-lang/crates.io-index"
605 dependencies = [
630 dependencies = [
606 "crossbeam-channel 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
631 "crossbeam-channel 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
607 "crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
632 "crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
608 "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
633 "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
609 "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
634 "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
610 "num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
635 "num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
611 ]
636 ]
612
637
613 [[package]]
638 [[package]]
614 name = "rdrand"
639 name = "rdrand"
615 version = "0.4.0"
640 version = "0.4.0"
616 source = "registry+https://github.com/rust-lang/crates.io-index"
641 source = "registry+https://github.com/rust-lang/crates.io-index"
617 dependencies = [
642 dependencies = [
618 "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
643 "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
619 ]
644 ]
620
645
621 [[package]]
646 [[package]]
622 name = "redox_syscall"
647 name = "redox_syscall"
623 version = "0.1.57"
648 version = "0.1.57"
624 source = "registry+https://github.com/rust-lang/crates.io-index"
649 source = "registry+https://github.com/rust-lang/crates.io-index"
625
650
626 [[package]]
651 [[package]]
627 name = "regex"
652 name = "regex"
628 version = "1.3.9"
653 version = "1.3.9"
629 source = "registry+https://github.com/rust-lang/crates.io-index"
654 source = "registry+https://github.com/rust-lang/crates.io-index"
630 dependencies = [
655 dependencies = [
631 "aho-corasick 0.7.13 (registry+https://github.com/rust-lang/crates.io-index)",
656 "aho-corasick 0.7.13 (registry+https://github.com/rust-lang/crates.io-index)",
632 "memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
657 "memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
633 "regex-syntax 0.6.18 (registry+https://github.com/rust-lang/crates.io-index)",
658 "regex-syntax 0.6.18 (registry+https://github.com/rust-lang/crates.io-index)",
634 "thread_local 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
659 "thread_local 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
635 ]
660 ]
636
661
637 [[package]]
662 [[package]]
638 name = "regex-syntax"
663 name = "regex-syntax"
639 version = "0.6.18"
664 version = "0.6.18"
640 source = "registry+https://github.com/rust-lang/crates.io-index"
665 source = "registry+https://github.com/rust-lang/crates.io-index"
641
666
642 [[package]]
667 [[package]]
643 name = "remove_dir_all"
668 name = "remove_dir_all"
644 version = "0.5.3"
669 version = "0.5.3"
645 source = "registry+https://github.com/rust-lang/crates.io-index"
670 source = "registry+https://github.com/rust-lang/crates.io-index"
646 dependencies = [
671 dependencies = [
647 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
672 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
648 ]
673 ]
649
674
650 [[package]]
675 [[package]]
651 name = "rhg"
676 name = "rhg"
652 version = "0.1.0"
677 version = "0.1.0"
653 dependencies = [
678 dependencies = [
654 "clap 2.33.3 (registry+https://github.com/rust-lang/crates.io-index)",
679 "clap 2.33.3 (registry+https://github.com/rust-lang/crates.io-index)",
655 "env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
680 "env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
681 "format-bytes 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
656 "hg-core 0.1.0",
682 "hg-core 0.1.0",
657 "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
683 "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
658 "micro-timer 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
684 "micro-timer 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
659 ]
685 ]
660
686
661 [[package]]
687 [[package]]
662 name = "rust-crypto"
688 name = "rust-crypto"
663 version = "0.2.36"
689 version = "0.2.36"
664 source = "registry+https://github.com/rust-lang/crates.io-index"
690 source = "registry+https://github.com/rust-lang/crates.io-index"
665 dependencies = [
691 dependencies = [
666 "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
692 "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)",
667 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
693 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
668 "rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)",
694 "rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)",
669 "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
695 "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
670 "time 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)",
696 "time 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)",
671 ]
697 ]
672
698
673 [[package]]
699 [[package]]
674 name = "rustc-serialize"
700 name = "rustc-serialize"
675 version = "0.3.24"
701 version = "0.3.24"
676 source = "registry+https://github.com/rust-lang/crates.io-index"
702 source = "registry+https://github.com/rust-lang/crates.io-index"
677
703
678 [[package]]
704 [[package]]
679 name = "same-file"
705 name = "same-file"
680 version = "1.0.6"
706 version = "1.0.6"
681 source = "registry+https://github.com/rust-lang/crates.io-index"
707 source = "registry+https://github.com/rust-lang/crates.io-index"
682 dependencies = [
708 dependencies = [
683 "winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
709 "winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
684 ]
710 ]
685
711
686 [[package]]
712 [[package]]
687 name = "scopeguard"
713 name = "scopeguard"
688 version = "1.1.0"
714 version = "1.1.0"
689 source = "registry+https://github.com/rust-lang/crates.io-index"
715 source = "registry+https://github.com/rust-lang/crates.io-index"
690
716
691 [[package]]
717 [[package]]
692 name = "sized-chunks"
718 name = "sized-chunks"
693 version = "0.6.2"
719 version = "0.6.2"
694 source = "registry+https://github.com/rust-lang/crates.io-index"
720 source = "registry+https://github.com/rust-lang/crates.io-index"
695 dependencies = [
721 dependencies = [
696 "bitmaps 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
722 "bitmaps 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
697 "typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
723 "typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
698 ]
724 ]
699
725
700 [[package]]
726 [[package]]
701 name = "strsim"
727 name = "strsim"
702 version = "0.8.0"
728 version = "0.8.0"
703 source = "registry+https://github.com/rust-lang/crates.io-index"
729 source = "registry+https://github.com/rust-lang/crates.io-index"
704
730
705 [[package]]
731 [[package]]
706 name = "syn"
732 name = "syn"
707 version = "1.0.41"
733 version = "1.0.41"
708 source = "registry+https://github.com/rust-lang/crates.io-index"
734 source = "registry+https://github.com/rust-lang/crates.io-index"
709 dependencies = [
735 dependencies = [
710 "proc-macro2 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)",
736 "proc-macro2 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)",
711 "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
737 "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
712 "unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
738 "unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
713 ]
739 ]
714
740
715 [[package]]
741 [[package]]
716 name = "tempfile"
742 name = "tempfile"
717 version = "3.1.0"
743 version = "3.1.0"
718 source = "registry+https://github.com/rust-lang/crates.io-index"
744 source = "registry+https://github.com/rust-lang/crates.io-index"
719 dependencies = [
745 dependencies = [
720 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
746 "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
721 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
747 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
722 "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
748 "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
723 "redox_syscall 0.1.57 (registry+https://github.com/rust-lang/crates.io-index)",
749 "redox_syscall 0.1.57 (registry+https://github.com/rust-lang/crates.io-index)",
724 "remove_dir_all 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
750 "remove_dir_all 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
725 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
751 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
726 ]
752 ]
727
753
728 [[package]]
754 [[package]]
729 name = "termcolor"
755 name = "termcolor"
730 version = "1.1.0"
756 version = "1.1.0"
731 source = "registry+https://github.com/rust-lang/crates.io-index"
757 source = "registry+https://github.com/rust-lang/crates.io-index"
732 dependencies = [
758 dependencies = [
733 "winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
759 "winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
734 ]
760 ]
735
761
736 [[package]]
762 [[package]]
737 name = "textwrap"
763 name = "textwrap"
738 version = "0.11.0"
764 version = "0.11.0"
739 source = "registry+https://github.com/rust-lang/crates.io-index"
765 source = "registry+https://github.com/rust-lang/crates.io-index"
740 dependencies = [
766 dependencies = [
741 "unicode-width 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
767 "unicode-width 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
742 ]
768 ]
743
769
744 [[package]]
770 [[package]]
745 name = "thread_local"
771 name = "thread_local"
746 version = "1.0.1"
772 version = "1.0.1"
747 source = "registry+https://github.com/rust-lang/crates.io-index"
773 source = "registry+https://github.com/rust-lang/crates.io-index"
748 dependencies = [
774 dependencies = [
749 "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
775 "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
750 ]
776 ]
751
777
752 [[package]]
778 [[package]]
753 name = "time"
779 name = "time"
754 version = "0.1.44"
780 version = "0.1.44"
755 source = "registry+https://github.com/rust-lang/crates.io-index"
781 source = "registry+https://github.com/rust-lang/crates.io-index"
756 dependencies = [
782 dependencies = [
757 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
783 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
758 "wasi 0.10.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)",
784 "wasi 0.10.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)",
759 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
785 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
760 ]
786 ]
761
787
762 [[package]]
788 [[package]]
763 name = "twox-hash"
789 name = "twox-hash"
764 version = "1.5.0"
790 version = "1.5.0"
765 source = "registry+https://github.com/rust-lang/crates.io-index"
791 source = "registry+https://github.com/rust-lang/crates.io-index"
766 dependencies = [
792 dependencies = [
767 "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
793 "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
768 ]
794 ]
769
795
770 [[package]]
796 [[package]]
771 name = "typenum"
797 name = "typenum"
772 version = "1.12.0"
798 version = "1.12.0"
773 source = "registry+https://github.com/rust-lang/crates.io-index"
799 source = "registry+https://github.com/rust-lang/crates.io-index"
774
800
775 [[package]]
801 [[package]]
776 name = "unicode-width"
802 name = "unicode-width"
777 version = "0.1.8"
803 version = "0.1.8"
778 source = "registry+https://github.com/rust-lang/crates.io-index"
804 source = "registry+https://github.com/rust-lang/crates.io-index"
779
805
780 [[package]]
806 [[package]]
781 name = "unicode-xid"
807 name = "unicode-xid"
782 version = "0.2.1"
808 version = "0.2.1"
783 source = "registry+https://github.com/rust-lang/crates.io-index"
809 source = "registry+https://github.com/rust-lang/crates.io-index"
784
810
785 [[package]]
811 [[package]]
786 name = "vcpkg"
812 name = "vcpkg"
787 version = "0.2.10"
813 version = "0.2.10"
788 source = "registry+https://github.com/rust-lang/crates.io-index"
814 source = "registry+https://github.com/rust-lang/crates.io-index"
789
815
790 [[package]]
816 [[package]]
791 name = "vec_map"
817 name = "vec_map"
792 version = "0.8.2"
818 version = "0.8.2"
793 source = "registry+https://github.com/rust-lang/crates.io-index"
819 source = "registry+https://github.com/rust-lang/crates.io-index"
794
820
795 [[package]]
821 [[package]]
796 name = "version_check"
822 name = "version_check"
797 version = "0.9.1"
823 version = "0.9.1"
798 source = "registry+https://github.com/rust-lang/crates.io-index"
824 source = "registry+https://github.com/rust-lang/crates.io-index"
799
825
800 [[package]]
826 [[package]]
801 name = "wasi"
827 name = "wasi"
802 version = "0.9.0+wasi-snapshot-preview1"
828 version = "0.9.0+wasi-snapshot-preview1"
803 source = "registry+https://github.com/rust-lang/crates.io-index"
829 source = "registry+https://github.com/rust-lang/crates.io-index"
804
830
805 [[package]]
831 [[package]]
806 name = "wasi"
832 name = "wasi"
807 version = "0.10.0+wasi-snapshot-preview1"
833 version = "0.10.0+wasi-snapshot-preview1"
808 source = "registry+https://github.com/rust-lang/crates.io-index"
834 source = "registry+https://github.com/rust-lang/crates.io-index"
809
835
810 [[package]]
836 [[package]]
811 name = "winapi"
837 name = "winapi"
812 version = "0.3.9"
838 version = "0.3.9"
813 source = "registry+https://github.com/rust-lang/crates.io-index"
839 source = "registry+https://github.com/rust-lang/crates.io-index"
814 dependencies = [
840 dependencies = [
815 "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
841 "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
816 "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
842 "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
817 ]
843 ]
818
844
819 [[package]]
845 [[package]]
820 name = "winapi-i686-pc-windows-gnu"
846 name = "winapi-i686-pc-windows-gnu"
821 version = "0.4.0"
847 version = "0.4.0"
822 source = "registry+https://github.com/rust-lang/crates.io-index"
848 source = "registry+https://github.com/rust-lang/crates.io-index"
823
849
824 [[package]]
850 [[package]]
825 name = "winapi-util"
851 name = "winapi-util"
826 version = "0.1.5"
852 version = "0.1.5"
827 source = "registry+https://github.com/rust-lang/crates.io-index"
853 source = "registry+https://github.com/rust-lang/crates.io-index"
828 dependencies = [
854 dependencies = [
829 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
855 "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
830 ]
856 ]
831
857
832 [[package]]
858 [[package]]
833 name = "winapi-x86_64-pc-windows-gnu"
859 name = "winapi-x86_64-pc-windows-gnu"
834 version = "0.4.0"
860 version = "0.4.0"
835 source = "registry+https://github.com/rust-lang/crates.io-index"
861 source = "registry+https://github.com/rust-lang/crates.io-index"
836
862
837 [[package]]
863 [[package]]
838 name = "zstd"
864 name = "zstd"
839 version = "0.5.3+zstd.1.4.5"
865 version = "0.5.3+zstd.1.4.5"
840 source = "registry+https://github.com/rust-lang/crates.io-index"
866 source = "registry+https://github.com/rust-lang/crates.io-index"
841 dependencies = [
867 dependencies = [
842 "zstd-safe 2.0.5+zstd.1.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
868 "zstd-safe 2.0.5+zstd.1.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
843 ]
869 ]
844
870
845 [[package]]
871 [[package]]
846 name = "zstd-safe"
872 name = "zstd-safe"
847 version = "2.0.5+zstd.1.4.5"
873 version = "2.0.5+zstd.1.4.5"
848 source = "registry+https://github.com/rust-lang/crates.io-index"
874 source = "registry+https://github.com/rust-lang/crates.io-index"
849 dependencies = [
875 dependencies = [
850 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
876 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
851 "zstd-sys 1.4.17+zstd.1.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
877 "zstd-sys 1.4.17+zstd.1.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
852 ]
878 ]
853
879
854 [[package]]
880 [[package]]
855 name = "zstd-sys"
881 name = "zstd-sys"
856 version = "1.4.17+zstd.1.4.5"
882 version = "1.4.17+zstd.1.4.5"
857 source = "registry+https://github.com/rust-lang/crates.io-index"
883 source = "registry+https://github.com/rust-lang/crates.io-index"
858 dependencies = [
884 dependencies = [
859 "cc 1.0.60 (registry+https://github.com/rust-lang/crates.io-index)",
885 "cc 1.0.60 (registry+https://github.com/rust-lang/crates.io-index)",
860 "glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
886 "glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
861 "itertools 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
887 "itertools 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
862 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
888 "libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)",
863 ]
889 ]
864
890
865 [metadata]
891 [metadata]
866 "checksum adler 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ee2a4ec343196209d6594e19543ae87a39f96d5534d7174822a3ad825dd6ed7e"
892 "checksum adler 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ee2a4ec343196209d6594e19543ae87a39f96d5534d7174822a3ad825dd6ed7e"
867 "checksum aho-corasick 0.7.13 (registry+https://github.com/rust-lang/crates.io-index)" = "043164d8ba5c4c3035fec9bbee8647c0261d788f3474306f93bb65901cae0e86"
893 "checksum aho-corasick 0.7.13 (registry+https://github.com/rust-lang/crates.io-index)" = "043164d8ba5c4c3035fec9bbee8647c0261d788f3474306f93bb65901cae0e86"
868 "checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
894 "checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
869 "checksum atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
895 "checksum atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
870 "checksum autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
896 "checksum autocfg 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
871 "checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
897 "checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
872 "checksum bitmaps 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "031043d04099746d8db04daf1fa424b2bc8bd69d92b25962dcde24da39ab64a2"
898 "checksum bitmaps 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "031043d04099746d8db04daf1fa424b2bc8bd69d92b25962dcde24da39ab64a2"
873 "checksum byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
899 "checksum byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
874 "checksum cc 1.0.60 (registry+https://github.com/rust-lang/crates.io-index)" = "ef611cc68ff783f18535d77ddd080185275713d852c4f5cbb6122c462a7a825c"
900 "checksum cc 1.0.60 (registry+https://github.com/rust-lang/crates.io-index)" = "ef611cc68ff783f18535d77ddd080185275713d852c4f5cbb6122c462a7a825c"
875 "checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
901 "checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
876 "checksum clap 2.33.3 (registry+https://github.com/rust-lang/crates.io-index)" = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002"
902 "checksum clap 2.33.3 (registry+https://github.com/rust-lang/crates.io-index)" = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002"
877 "checksum cpython 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "bfaf3847ab963e40c4f6dd8d6be279bdf74007ae2413786a0dcbb28c52139a95"
903 "checksum cpython 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "bfaf3847ab963e40c4f6dd8d6be279bdf74007ae2413786a0dcbb28c52139a95"
878 "checksum crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1"
904 "checksum crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1"
879 "checksum crossbeam 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "69323bff1fb41c635347b8ead484a5ca6c3f11914d784170b158d8449ab07f8e"
905 "checksum crossbeam 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "69323bff1fb41c635347b8ead484a5ca6c3f11914d784170b158d8449ab07f8e"
880 "checksum crossbeam-channel 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87"
906 "checksum crossbeam-channel 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87"
881 "checksum crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285"
907 "checksum crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285"
882 "checksum crossbeam-epoch 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace"
908 "checksum crossbeam-epoch 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace"
883 "checksum crossbeam-queue 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570"
909 "checksum crossbeam-queue 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570"
884 "checksum crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
910 "checksum crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
885 "checksum ctor 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "7fbaabec2c953050352311293be5c6aba8e141ba19d6811862b232d6fd020484"
911 "checksum ctor 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "7fbaabec2c953050352311293be5c6aba8e141ba19d6811862b232d6fd020484"
886 "checksum difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198"
912 "checksum difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198"
887 "checksum either 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
913 "checksum either 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
888 "checksum env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
914 "checksum env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
889 "checksum flate2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)" = "766d0e77a2c1502169d4a93ff3b8c15a71fd946cd0126309752104e5f3c46d94"
915 "checksum flate2 1.0.17 (registry+https://github.com/rust-lang/crates.io-index)" = "766d0e77a2c1502169d4a93ff3b8c15a71fd946cd0126309752104e5f3c46d94"
916 "checksum format-bytes 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1a7374eb574cd29ae45878554298091c554c3286a17b3afa440a3e2710ae0790"
917 "checksum format-bytes-macros 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4edcc04201cea17a0e6b937adebd46b93fba09924c7e6ed8c515a35ce8432cbc"
890 "checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
918 "checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
891 "checksum gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)" = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"
919 "checksum gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)" = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"
892 "checksum getrandom 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "fc587bc0ec293155d5bfa6b9891ec18a1e330c234f896ea47fbada4cadbe47e6"
920 "checksum getrandom 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "fc587bc0ec293155d5bfa6b9891ec18a1e330c234f896ea47fbada4cadbe47e6"
893 "checksum glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
921 "checksum glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
894 "checksum hermit-abi 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "4c30f6d0bc6b00693347368a67d41b58f2fb851215ff1da49e90fe2c5c667151"
922 "checksum hermit-abi 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "4c30f6d0bc6b00693347368a67d41b58f2fb851215ff1da49e90fe2c5c667151"
895 "checksum hex 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "644f9158b2f133fd50f5fb3242878846d9eb792e445c893805ff0e3824006e35"
923 "checksum hex 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "644f9158b2f133fd50f5fb3242878846d9eb792e445c893805ff0e3824006e35"
896 "checksum humantime 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
924 "checksum humantime 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
897 "checksum im-rc 15.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ca8957e71f04a205cb162508f9326aea04676c8dfd0711220190d6b83664f3f"
925 "checksum im-rc 15.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ca8957e71f04a205cb162508f9326aea04676c8dfd0711220190d6b83664f3f"
898 "checksum itertools 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b"
926 "checksum itertools 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b"
899 "checksum jobserver 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)" = "5c71313ebb9439f74b00d9d2dcec36440beaf57a6aa0623068441dd7cd81a7f2"
927 "checksum jobserver 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)" = "5c71313ebb9439f74b00d9d2dcec36440beaf57a6aa0623068441dd7cd81a7f2"
900 "checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
928 "checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
901 "checksum libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)" = "f2f96b10ec2560088a8e76961b00d47107b3a625fecb76dedb29ee7ccbf98235"
929 "checksum libc 0.2.77 (registry+https://github.com/rust-lang/crates.io-index)" = "f2f96b10ec2560088a8e76961b00d47107b3a625fecb76dedb29ee7ccbf98235"
902 "checksum libz-sys 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "602113192b08db8f38796c4e85c39e960c145965140e918018bcde1952429655"
930 "checksum libz-sys 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "602113192b08db8f38796c4e85c39e960c145965140e918018bcde1952429655"
903 "checksum log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)" = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b"
931 "checksum log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)" = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b"
904 "checksum maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
932 "checksum maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
905 "checksum memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400"
933 "checksum memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400"
906 "checksum memmap 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6585fd95e7bb50d6cc31e20d4cf9afb4e2ba16c5846fc76793f11218da9c475b"
934 "checksum memmap 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6585fd95e7bb50d6cc31e20d4cf9afb4e2ba16c5846fc76793f11218da9c475b"
907 "checksum memoffset 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa"
935 "checksum memoffset 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa"
908 "checksum micro-timer 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2620153e1d903d26b72b89f0e9c48d8c4756cba941c185461dddc234980c298c"
936 "checksum micro-timer 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2620153e1d903d26b72b89f0e9c48d8c4756cba941c185461dddc234980c298c"
909 "checksum micro-timer-macros 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e28a3473e6abd6e9aab36aaeef32ad22ae0bd34e79f376643594c2b152ec1c5d"
937 "checksum micro-timer-macros 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e28a3473e6abd6e9aab36aaeef32ad22ae0bd34e79f376643594c2b152ec1c5d"
910 "checksum miniz_oxide 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c60c0dfe32c10b43a144bad8fc83538c52f58302c92300ea7ec7bf7b38d5a7b9"
938 "checksum miniz_oxide 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c60c0dfe32c10b43a144bad8fc83538c52f58302c92300ea7ec7bf7b38d5a7b9"
911 "checksum num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)" = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611"
939 "checksum num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)" = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611"
912 "checksum num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3"
940 "checksum num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3"
913 "checksum output_vt100 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "53cdc5b785b7a58c5aad8216b3dfa114df64b0b06ae6e1501cef91df2fbdf8f9"
941 "checksum output_vt100 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "53cdc5b785b7a58c5aad8216b3dfa114df64b0b06ae6e1501cef91df2fbdf8f9"
914 "checksum pkg-config 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)" = "d36492546b6af1463394d46f0c834346f31548646f6ba10849802c9c9a27ac33"
942 "checksum pkg-config 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)" = "d36492546b6af1463394d46f0c834346f31548646f6ba10849802c9c9a27ac33"
915 "checksum ppv-lite86 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c36fa947111f5c62a733b652544dd0016a43ce89619538a8ef92724a6f501a20"
943 "checksum ppv-lite86 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c36fa947111f5c62a733b652544dd0016a43ce89619538a8ef92724a6f501a20"
916 "checksum pretty_assertions 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3f81e1644e1b54f5a68959a29aa86cde704219254669da328ecfdf6a1f09d427"
944 "checksum pretty_assertions 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3f81e1644e1b54f5a68959a29aa86cde704219254669da328ecfdf6a1f09d427"
945 "checksum proc-macro-hack 0.5.19 (registry+https://github.com/rust-lang/crates.io-index)" = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5"
917 "checksum proc-macro2 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)" = "36e28516df94f3dd551a587da5357459d9b36d945a7c37c3557928c1c2ff2a2c"
946 "checksum proc-macro2 1.0.21 (registry+https://github.com/rust-lang/crates.io-index)" = "36e28516df94f3dd551a587da5357459d9b36d945a7c37c3557928c1c2ff2a2c"
918 "checksum python27-sys 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "67cb041de8615111bf224dd75667af5f25c6e032118251426fed7f1b70ce4c8c"
947 "checksum python27-sys 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "67cb041de8615111bf224dd75667af5f25c6e032118251426fed7f1b70ce4c8c"
919 "checksum python3-sys 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90af11779515a1e530af60782d273b59ac79d33b0e253c071a728563957c76d4"
948 "checksum python3-sys 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90af11779515a1e530af60782d273b59ac79d33b0e253c071a728563957c76d4"
920 "checksum quick-error 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
949 "checksum quick-error 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
921 "checksum quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37"
950 "checksum quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37"
922 "checksum rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)" = "64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c"
951 "checksum rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)" = "64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c"
923 "checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
952 "checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
924 "checksum rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
953 "checksum rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
925 "checksum rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
954 "checksum rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
926 "checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
955 "checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
927 "checksum rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
956 "checksum rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
928 "checksum rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
957 "checksum rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
929 "checksum rand_distr 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "96977acbdd3a6576fb1d27391900035bf3863d4a16422973a409b488cf29ffb2"
958 "checksum rand_distr 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "96977acbdd3a6576fb1d27391900035bf3863d4a16422973a409b488cf29ffb2"
930 "checksum rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
959 "checksum rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
931 "checksum rand_pcg 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429"
960 "checksum rand_pcg 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429"
932 "checksum rand_xoshiro 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a9fcdd2e881d02f1d9390ae47ad8e5696a9e4be7b547a1da2afbc61973217004"
961 "checksum rand_xoshiro 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a9fcdd2e881d02f1d9390ae47ad8e5696a9e4be7b547a1da2afbc61973217004"
933 "checksum rayon 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "cfd016f0c045ad38b5251be2c9c0ab806917f82da4d36b2a327e5166adad9270"
962 "checksum rayon 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "cfd016f0c045ad38b5251be2c9c0ab806917f82da4d36b2a327e5166adad9270"
934 "checksum rayon-core 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e8c4fec834fb6e6d2dd5eece3c7b432a52f0ba887cf40e595190c4107edc08bf"
963 "checksum rayon-core 1.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e8c4fec834fb6e6d2dd5eece3c7b432a52f0ba887cf40e595190c4107edc08bf"
935 "checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
964 "checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
936 "checksum redox_syscall 0.1.57 (registry+https://github.com/rust-lang/crates.io-index)" = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
965 "checksum redox_syscall 0.1.57 (registry+https://github.com/rust-lang/crates.io-index)" = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
937 "checksum regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6"
966 "checksum regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6"
938 "checksum regex-syntax 0.6.18 (registry+https://github.com/rust-lang/crates.io-index)" = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8"
967 "checksum regex-syntax 0.6.18 (registry+https://github.com/rust-lang/crates.io-index)" = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8"
939 "checksum remove_dir_all 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
968 "checksum remove_dir_all 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
940 "checksum rust-crypto 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)" = "f76d05d3993fd5f4af9434e8e436db163a12a9d40e1a58a726f27a01dfd12a2a"
969 "checksum rust-crypto 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)" = "f76d05d3993fd5f4af9434e8e436db163a12a9d40e1a58a726f27a01dfd12a2a"
941 "checksum rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)" = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
970 "checksum rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)" = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
942 "checksum same-file 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
971 "checksum same-file 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
943 "checksum scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
972 "checksum scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
944 "checksum sized-chunks 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1ec31ceca5644fa6d444cc77548b88b67f46db6f7c71683b0f9336e671830d2f"
973 "checksum sized-chunks 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1ec31ceca5644fa6d444cc77548b88b67f46db6f7c71683b0f9336e671830d2f"
945 "checksum strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
974 "checksum strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
946 "checksum syn 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)" = "6690e3e9f692504b941dc6c3b188fd28df054f7fb8469ab40680df52fdcc842b"
975 "checksum syn 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)" = "6690e3e9f692504b941dc6c3b188fd28df054f7fb8469ab40680df52fdcc842b"
947 "checksum tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
976 "checksum tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
948 "checksum termcolor 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb6bfa289a4d7c5766392812c0a1f4c1ba45afa1ad47803c11e1f407d846d75f"
977 "checksum termcolor 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb6bfa289a4d7c5766392812c0a1f4c1ba45afa1ad47803c11e1f407d846d75f"
949 "checksum textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
978 "checksum textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
950 "checksum thread_local 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
979 "checksum thread_local 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
951 "checksum time 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)" = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255"
980 "checksum time 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)" = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255"
952 "checksum twox-hash 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3bfd5b7557925ce778ff9b9ef90e3ade34c524b5ff10e239c69a42d546d2af56"
981 "checksum twox-hash 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3bfd5b7557925ce778ff9b9ef90e3ade34c524b5ff10e239c69a42d546d2af56"
953 "checksum typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33"
982 "checksum typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33"
954 "checksum unicode-width 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3"
983 "checksum unicode-width 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3"
955 "checksum unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564"
984 "checksum unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564"
956 "checksum vcpkg 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "6454029bf181f092ad1b853286f23e2c507d8e8194d01d92da4a55c274a5508c"
985 "checksum vcpkg 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "6454029bf181f092ad1b853286f23e2c507d8e8194d01d92da4a55c274a5508c"
957 "checksum vec_map 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
986 "checksum vec_map 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
958 "checksum version_check 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "078775d0255232fb988e6fccf26ddc9d1ac274299aaedcedce21c6f72cc533ce"
987 "checksum version_check 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "078775d0255232fb988e6fccf26ddc9d1ac274299aaedcedce21c6f72cc533ce"
959 "checksum wasi 0.10.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)" = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
988 "checksum wasi 0.10.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)" = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
960 "checksum wasi 0.9.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)" = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
989 "checksum wasi 0.9.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)" = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
961 "checksum winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
990 "checksum winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
962 "checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
991 "checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
963 "checksum winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
992 "checksum winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
964 "checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
993 "checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
965 "checksum zstd 0.5.3+zstd.1.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "01b32eaf771efa709e8308605bbf9319bf485dc1503179ec0469b611937c0cd8"
994 "checksum zstd 0.5.3+zstd.1.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "01b32eaf771efa709e8308605bbf9319bf485dc1503179ec0469b611937c0cd8"
966 "checksum zstd-safe 2.0.5+zstd.1.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "1cfb642e0d27f64729a639c52db457e0ae906e7bc6f5fe8f5c453230400f1055"
995 "checksum zstd-safe 2.0.5+zstd.1.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "1cfb642e0d27f64729a639c52db457e0ae906e7bc6f5fe8f5c453230400f1055"
967 "checksum zstd-sys 1.4.17+zstd.1.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "b89249644df056b522696b1bb9e7c18c87e8ffa3e2f0dc3b0155875d6498f01b"
996 "checksum zstd-sys 1.4.17+zstd.1.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "b89249644df056b522696b1bb9e7c18c87e8ffa3e2f0dc3b0155875d6498f01b"
@@ -1,12 +1,16
1 [package]
1 [package]
2 name = "rhg"
2 name = "rhg"
3 version = "0.1.0"
3 version = "0.1.0"
4 authors = ["Antoine Cezar <antoine.cezar@octobus.net>"]
4 authors = [
5 "Antoine Cezar <antoine.cezar@octobus.net>",
6 "Raphaël Gomès <raphael.gomes@octobus.net>",
7 ]
5 edition = "2018"
8 edition = "2018"
6
9
7 [dependencies]
10 [dependencies]
8 hg-core = { path = "../hg-core"}
11 hg-core = { path = "../hg-core"}
9 clap = "2.33.1"
12 clap = "2.33.1"
10 log = "0.4.11"
13 log = "0.4.11"
11 micro-timer = "0.3.1"
14 micro-timer = "0.3.1"
12 env_logger = "0.7.1"
15 env_logger = "0.7.1"
16 format-bytes = "0.1.3"
@@ -1,32 +1,32
1 use crate::commands::Command;
1 use crate::commands::Command;
2 use crate::error::CommandError;
2 use crate::error::CommandError;
3 use crate::ui::Ui;
3 use crate::ui::Ui;
4 use format_bytes::format_bytes;
4 use hg::operations::FindRoot;
5 use hg::operations::FindRoot;
5 use hg::utils::files::get_bytes_from_path;
6 use hg::utils::files::get_bytes_from_path;
6
7
7 pub const HELP_TEXT: &str = "
8 pub const HELP_TEXT: &str = "
8 Print the root directory of the current repository.
9 Print the root directory of the current repository.
9
10
10 Returns 0 on success.
11 Returns 0 on success.
11 ";
12 ";
12
13
13 pub struct RootCommand {}
14 pub struct RootCommand {}
14
15
15 impl RootCommand {
16 impl RootCommand {
16 pub fn new() -> Self {
17 pub fn new() -> Self {
17 RootCommand {}
18 RootCommand {}
18 }
19 }
19 }
20 }
20
21
21 impl Command for RootCommand {
22 impl Command for RootCommand {
22 fn run(&self, ui: &Ui) -> Result<(), CommandError> {
23 fn run(&self, ui: &Ui) -> Result<(), CommandError> {
23 let path_buf = FindRoot::new().run()?;
24 let path_buf = FindRoot::new().run()?;
24
25
25 let bytes = get_bytes_from_path(path_buf);
26 let bytes = get_bytes_from_path(path_buf);
26
27
27 // TODO use formating macro
28 ui.write_stdout(&format_bytes!(b"{}\n", bytes.as_slice()))?;
28 ui.write_stdout(&[bytes.as_slice(), b"\n"].concat())?;
29
29
30 Ok(())
30 Ok(())
31 }
31 }
32 }
32 }
@@ -1,133 +1,124
1 use crate::exitcode;
1 use crate::exitcode;
2 use crate::ui::UiError;
2 use crate::ui::UiError;
3 use format_bytes::format_bytes;
3 use hg::operations::{FindRootError, FindRootErrorKind};
4 use hg::operations::{FindRootError, FindRootErrorKind};
4 use hg::requirements::RequirementsError;
5 use hg::requirements::RequirementsError;
5 use hg::utils::files::get_bytes_from_path;
6 use hg::utils::files::get_bytes_from_path;
6 use std::convert::From;
7 use std::convert::From;
7 use std::path::PathBuf;
8 use std::path::PathBuf;
8
9
9 /// The kind of command error
10 /// The kind of command error
10 #[derive(Debug)]
11 #[derive(Debug)]
11 pub enum CommandErrorKind {
12 pub enum CommandErrorKind {
12 /// The root of the repository cannot be found
13 /// The root of the repository cannot be found
13 RootNotFound(PathBuf),
14 RootNotFound(PathBuf),
14 /// The current directory cannot be found
15 /// The current directory cannot be found
15 CurrentDirNotFound(std::io::Error),
16 CurrentDirNotFound(std::io::Error),
16 /// `.hg/requires`
17 /// `.hg/requires`
17 RequirementsError(RequirementsError),
18 RequirementsError(RequirementsError),
18 /// The standard output stream cannot be written to
19 /// The standard output stream cannot be written to
19 StdoutError,
20 StdoutError,
20 /// The standard error stream cannot be written to
21 /// The standard error stream cannot be written to
21 StderrError,
22 StderrError,
22 /// The command aborted
23 /// The command aborted
23 Abort(Option<Vec<u8>>),
24 Abort(Option<Vec<u8>>),
24 /// A mercurial capability as not been implemented.
25 /// A mercurial capability as not been implemented.
25 Unimplemented,
26 Unimplemented,
26 }
27 }
27
28
28 impl CommandErrorKind {
29 impl CommandErrorKind {
29 pub fn get_exit_code(&self) -> exitcode::ExitCode {
30 pub fn get_exit_code(&self) -> exitcode::ExitCode {
30 match self {
31 match self {
31 CommandErrorKind::RootNotFound(_) => exitcode::ABORT,
32 CommandErrorKind::RootNotFound(_) => exitcode::ABORT,
32 CommandErrorKind::CurrentDirNotFound(_) => exitcode::ABORT,
33 CommandErrorKind::CurrentDirNotFound(_) => exitcode::ABORT,
33 CommandErrorKind::RequirementsError(
34 CommandErrorKind::RequirementsError(
34 RequirementsError::Unsupported { .. },
35 RequirementsError::Unsupported { .. },
35 ) => exitcode::UNIMPLEMENTED_COMMAND,
36 ) => exitcode::UNIMPLEMENTED_COMMAND,
36 CommandErrorKind::RequirementsError(_) => exitcode::ABORT,
37 CommandErrorKind::RequirementsError(_) => exitcode::ABORT,
37 CommandErrorKind::StdoutError => exitcode::ABORT,
38 CommandErrorKind::StdoutError => exitcode::ABORT,
38 CommandErrorKind::StderrError => exitcode::ABORT,
39 CommandErrorKind::StderrError => exitcode::ABORT,
39 CommandErrorKind::Abort(_) => exitcode::ABORT,
40 CommandErrorKind::Abort(_) => exitcode::ABORT,
40 CommandErrorKind::Unimplemented => exitcode::UNIMPLEMENTED_COMMAND,
41 CommandErrorKind::Unimplemented => exitcode::UNIMPLEMENTED_COMMAND,
41 }
42 }
42 }
43 }
43
44
44 /// Return the message corresponding to the error kind if any
45 /// Return the message corresponding to the error kind if any
45 pub fn get_error_message_bytes(&self) -> Option<Vec<u8>> {
46 pub fn get_error_message_bytes(&self) -> Option<Vec<u8>> {
46 match self {
47 match self {
47 // TODO use formating macro
48 CommandErrorKind::RootNotFound(path) => {
48 CommandErrorKind::RootNotFound(path) => {
49 let bytes = get_bytes_from_path(path);
49 let bytes = get_bytes_from_path(path);
50 Some(
50 Some(format_bytes!(
51 [
51 b"abort: no repository found in '{}' (.hg not found)!\n",
52 b"abort: no repository found in '",
52 bytes.as_slice()
53 bytes.as_slice(),
53 ))
54 b"' (.hg not found)!\n",
55 ]
56 .concat(),
57 )
58 }
54 }
59 // TODO use formating macro
55 CommandErrorKind::CurrentDirNotFound(e) => Some(format_bytes!(
60 CommandErrorKind::CurrentDirNotFound(e) => Some(
56 b"abort: error getting current working directory: {}\n",
61 [
62 b"abort: error getting current working directory: ",
63 e.to_string().as_bytes(),
57 e.to_string().as_bytes(),
64 b"\n",
58 )),
65 ]
66 .concat(),
67 ),
68 CommandErrorKind::RequirementsError(
59 CommandErrorKind::RequirementsError(
69 RequirementsError::Corrupted,
60 RequirementsError::Corrupted,
70 ) => Some(
61 ) => Some(
71 "abort: .hg/requires is corrupted\n".as_bytes().to_owned(),
62 "abort: .hg/requires is corrupted\n".as_bytes().to_owned(),
72 ),
63 ),
73 CommandErrorKind::Abort(message) => message.to_owned(),
64 CommandErrorKind::Abort(message) => message.to_owned(),
74 _ => None,
65 _ => None,
75 }
66 }
76 }
67 }
77 }
68 }
78
69
79 /// The error type for the Command trait
70 /// The error type for the Command trait
80 #[derive(Debug)]
71 #[derive(Debug)]
81 pub struct CommandError {
72 pub struct CommandError {
82 pub kind: CommandErrorKind,
73 pub kind: CommandErrorKind,
83 }
74 }
84
75
85 impl CommandError {
76 impl CommandError {
86 /// Exist the process with the corresponding exit code.
77 /// Exist the process with the corresponding exit code.
87 pub fn exit(&self) {
78 pub fn exit(&self) {
88 std::process::exit(self.kind.get_exit_code())
79 std::process::exit(self.kind.get_exit_code())
89 }
80 }
90
81
91 /// Return the message corresponding to the command error if any
82 /// Return the message corresponding to the command error if any
92 pub fn get_error_message_bytes(&self) -> Option<Vec<u8>> {
83 pub fn get_error_message_bytes(&self) -> Option<Vec<u8>> {
93 self.kind.get_error_message_bytes()
84 self.kind.get_error_message_bytes()
94 }
85 }
95 }
86 }
96
87
97 impl From<CommandErrorKind> for CommandError {
88 impl From<CommandErrorKind> for CommandError {
98 fn from(kind: CommandErrorKind) -> Self {
89 fn from(kind: CommandErrorKind) -> Self {
99 CommandError { kind }
90 CommandError { kind }
100 }
91 }
101 }
92 }
102
93
103 impl From<UiError> for CommandError {
94 impl From<UiError> for CommandError {
104 fn from(error: UiError) -> Self {
95 fn from(error: UiError) -> Self {
105 CommandError {
96 CommandError {
106 kind: match error {
97 kind: match error {
107 UiError::StdoutError(_) => CommandErrorKind::StdoutError,
98 UiError::StdoutError(_) => CommandErrorKind::StdoutError,
108 UiError::StderrError(_) => CommandErrorKind::StderrError,
99 UiError::StderrError(_) => CommandErrorKind::StderrError,
109 },
100 },
110 }
101 }
111 }
102 }
112 }
103 }
113
104
114 impl From<FindRootError> for CommandError {
105 impl From<FindRootError> for CommandError {
115 fn from(err: FindRootError) -> Self {
106 fn from(err: FindRootError) -> Self {
116 match err.kind {
107 match err.kind {
117 FindRootErrorKind::RootNotFound(path) => CommandError {
108 FindRootErrorKind::RootNotFound(path) => CommandError {
118 kind: CommandErrorKind::RootNotFound(path),
109 kind: CommandErrorKind::RootNotFound(path),
119 },
110 },
120 FindRootErrorKind::GetCurrentDirError(e) => CommandError {
111 FindRootErrorKind::GetCurrentDirError(e) => CommandError {
121 kind: CommandErrorKind::CurrentDirNotFound(e),
112 kind: CommandErrorKind::CurrentDirNotFound(e),
122 },
113 },
123 }
114 }
124 }
115 }
125 }
116 }
126
117
127 impl From<RequirementsError> for CommandError {
118 impl From<RequirementsError> for CommandError {
128 fn from(err: RequirementsError) -> Self {
119 fn from(err: RequirementsError) -> Self {
129 CommandError {
120 CommandError {
130 kind: CommandErrorKind::RequirementsError(err),
121 kind: CommandErrorKind::RequirementsError(err),
131 }
122 }
132 }
123 }
133 }
124 }
@@ -1,113 +1,117
1 use format_bytes::format_bytes;
1 use std::borrow::Cow;
2 use std::borrow::Cow;
2 use std::io;
3 use std::io;
3 use std::io::{ErrorKind, Write};
4 use std::io::{ErrorKind, Write};
4
5
5 #[derive(Debug)]
6 #[derive(Debug)]
6 pub struct Ui {
7 pub struct Ui {
7 stdout: std::io::Stdout,
8 stdout: std::io::Stdout,
8 stderr: std::io::Stderr,
9 stderr: std::io::Stderr,
9 }
10 }
10
11
11 /// The kind of user interface error
12 /// The kind of user interface error
12 pub enum UiError {
13 pub enum UiError {
13 /// The standard output stream cannot be written to
14 /// The standard output stream cannot be written to
14 StdoutError(io::Error),
15 StdoutError(io::Error),
15 /// The standard error stream cannot be written to
16 /// The standard error stream cannot be written to
16 StderrError(io::Error),
17 StderrError(io::Error),
17 }
18 }
18
19
19 /// The commandline user interface
20 /// The commandline user interface
20 impl Ui {
21 impl Ui {
21 pub fn new() -> Self {
22 pub fn new() -> Self {
22 Ui {
23 Ui {
23 stdout: std::io::stdout(),
24 stdout: std::io::stdout(),
24 stderr: std::io::stderr(),
25 stderr: std::io::stderr(),
25 }
26 }
26 }
27 }
27
28
28 /// Returns a buffered handle on stdout for faster batch printing
29 /// Returns a buffered handle on stdout for faster batch printing
29 /// operations.
30 /// operations.
30 pub fn stdout_buffer(&self) -> StdoutBuffer<std::io::StdoutLock> {
31 pub fn stdout_buffer(&self) -> StdoutBuffer<std::io::StdoutLock> {
31 StdoutBuffer::new(self.stdout.lock())
32 StdoutBuffer::new(self.stdout.lock())
32 }
33 }
33
34
34 /// Write bytes to stdout
35 /// Write bytes to stdout
35 pub fn write_stdout(&self, bytes: &[u8]) -> Result<(), UiError> {
36 pub fn write_stdout(&self, bytes: &[u8]) -> Result<(), UiError> {
36 let mut stdout = self.stdout.lock();
37 let mut stdout = self.stdout.lock();
37
38
38 stdout.write_all(bytes).or_else(handle_stdout_error)?;
39 stdout.write_all(bytes).or_else(handle_stdout_error)?;
39
40
40 stdout.flush().or_else(handle_stdout_error)
41 stdout.flush().or_else(handle_stdout_error)
41 }
42 }
42
43
43 /// Write bytes to stderr
44 /// Write bytes to stderr
44 pub fn write_stderr(&self, bytes: &[u8]) -> Result<(), UiError> {
45 pub fn write_stderr(&self, bytes: &[u8]) -> Result<(), UiError> {
45 let mut stderr = self.stderr.lock();
46 let mut stderr = self.stderr.lock();
46
47
47 stderr.write_all(bytes).or_else(handle_stderr_error)?;
48 stderr.write_all(bytes).or_else(handle_stderr_error)?;
48
49
49 stderr.flush().or_else(handle_stderr_error)
50 stderr.flush().or_else(handle_stderr_error)
50 }
51 }
51
52
52 /// Write string line to stderr
53 /// Write string line to stderr
53 pub fn writeln_stderr_str(&self, s: &str) -> Result<(), UiError> {
54 pub fn writeln_stderr_str(&self, s: &str) -> Result<(), UiError> {
54 self.write_stderr(&format!("{}\n", s).as_bytes())
55 self.write_stderr(&format!("{}\n", s).as_bytes())
55 }
56 }
56 }
57 }
57
58
58 /// A buffered stdout writer for faster batch printing operations.
59 /// A buffered stdout writer for faster batch printing operations.
59 pub struct StdoutBuffer<W: Write> {
60 pub struct StdoutBuffer<W: Write> {
60 buf: io::BufWriter<W>,
61 buf: io::BufWriter<W>,
61 }
62 }
62
63
63 impl<W: Write> StdoutBuffer<W> {
64 impl<W: Write> StdoutBuffer<W> {
64 pub fn new(writer: W) -> Self {
65 pub fn new(writer: W) -> Self {
65 let buf = io::BufWriter::new(writer);
66 let buf = io::BufWriter::new(writer);
66 Self { buf }
67 Self { buf }
67 }
68 }
68
69
69 /// Write bytes to stdout buffer
70 /// Write bytes to stdout buffer
70 pub fn write_all(&mut self, bytes: &[u8]) -> Result<(), UiError> {
71 pub fn write_all(&mut self, bytes: &[u8]) -> Result<(), UiError> {
71 self.buf.write_all(bytes).or_else(handle_stdout_error)
72 self.buf.write_all(bytes).or_else(handle_stdout_error)
72 }
73 }
73
74
74 /// Flush bytes to stdout
75 /// Flush bytes to stdout
75 pub fn flush(&mut self) -> Result<(), UiError> {
76 pub fn flush(&mut self) -> Result<(), UiError> {
76 self.buf.flush().or_else(handle_stdout_error)
77 self.buf.flush().or_else(handle_stdout_error)
77 }
78 }
78 }
79 }
79
80
80 /// Sometimes writing to stdout is not possible, try writing to stderr to
81 /// Sometimes writing to stdout is not possible, try writing to stderr to
81 /// signal that failure, otherwise just bail.
82 /// signal that failure, otherwise just bail.
82 fn handle_stdout_error(error: io::Error) -> Result<(), UiError> {
83 fn handle_stdout_error(error: io::Error) -> Result<(), UiError> {
83 if let ErrorKind::BrokenPipe = error.kind() {
84 if let ErrorKind::BrokenPipe = error.kind() {
84 // This makes `| head` work for example
85 // This makes `| head` work for example
85 return Ok(());
86 return Ok(());
86 }
87 }
87 let mut stderr = io::stderr();
88 let mut stderr = io::stderr();
88
89
89 stderr
90 stderr
90 .write_all(&[b"abort: ", error.to_string().as_bytes(), b"\n"].concat())
91 .write_all(&format_bytes!(
92 b"abort: {}\n",
93 error.to_string().as_bytes()
94 ))
91 .map_err(UiError::StderrError)?;
95 .map_err(UiError::StderrError)?;
92
96
93 stderr.flush().map_err(UiError::StderrError)?;
97 stderr.flush().map_err(UiError::StderrError)?;
94
98
95 Err(UiError::StdoutError(error))
99 Err(UiError::StdoutError(error))
96 }
100 }
97
101
98 /// Sometimes writing to stderr is not possible.
102 /// Sometimes writing to stderr is not possible.
99 fn handle_stderr_error(error: io::Error) -> Result<(), UiError> {
103 fn handle_stderr_error(error: io::Error) -> Result<(), UiError> {
100 // A broken pipe should not result in a error
104 // A broken pipe should not result in a error
101 // like with `| head` for example
105 // like with `| head` for example
102 if let ErrorKind::BrokenPipe = error.kind() {
106 if let ErrorKind::BrokenPipe = error.kind() {
103 return Ok(());
107 return Ok(());
104 }
108 }
105 Err(UiError::StdoutError(error))
109 Err(UiError::StdoutError(error))
106 }
110 }
107
111
108 /// Encode rust strings according to the user system.
112 /// Encode rust strings according to the user system.
109 pub fn utf8_to_local(s: &str) -> Cow<[u8]> {
113 pub fn utf8_to_local(s: &str) -> Cow<[u8]> {
110 // TODO encode for the user's system //
114 // TODO encode for the user's system //
111 let bytes = s.as_bytes();
115 let bytes = s.as_bytes();
112 Cow::Borrowed(bytes)
116 Cow::Borrowed(bytes)
113 }
117 }
General Comments 0
You need to be logged in to leave comments. Login now