List of commits:
Subject Hash Author Date (UTC)
Run modules concurrently. 0100f680f4054ffe4948278a5dae93b4fcb0d333 Jan Allersma 2019-01-19 16:24:27
Fix `dep_config::scan`. ed8759345a07e93b30bd802b1e6ecb8d5eeb3b85 Jan Allersma 2019-01-18 14:53:50
Fix fetching with single-file-modules. d1a2173433bf45648da9a85cda04d7ace9148439 Jan Allersma 2019-01-15 16:24:27
Add feature: initialize hidden dependencies. fc99666c48da1653b3097a0251d8219bc49886cb Jan Allersma 2019-01-12 15:52:45
Revise `hide` command. 482bad08f949eaedbd61e2cb7c53870271d47997 Jan Allersma 2019-01-11 15:45:26
Rename project to 'Ambassade'. 4f9c0e27ca25042a97acebc9f3282e4f941706fe Jan Allersma 2019-01-10 15:01:39
Git integration. 0ebc5b3769e50c3463bdc39af0160c7db0d3f00b Jan Allersma 2019-01-03 17:34:18
Implement `hide` command. ab693b8fd91c93dfd7ee7b82cbae75b2a6043b0f Jan Allersma 2018-12-29 15:13:25
Resolve missing/erroneous build/run commands. e81d57882036a6475718b0653169c609d23b1c30 Jan Allersma 2018-12-25 13:06:00
Show working directory in status. ab188603dda062de4b2ea76c5bc1d2d41d98b8c2 Jan Allersma 2018-12-25 10:36:35
Add shell fallthrough. 02078135791fb3889152c11defaa2df21d0ae597 Jan Allersma 2018-12-22 19:47:36
Show dependencies when using `delete` command. cfa9779714d5e6d46ab5b4eeb84a915a15f23f54 Jan Allersma 2018-12-20 15:46:05
Resolve dep-tree by building project recursively. f53e38d790ec67d99ec8204af97273a53b73a9dc Jan Allersma 2018-12-19 14:54:07
Improve `dep-tree` command. 90bfa0340b7b874d65c08dc05c3d711abda1c469 Jan Allersma 2018-12-17 20:10:14
Implement experimental `dep-tree` command. 45d9dfdbfc99c59174e7c587621276b78ab7a4e9 Jan Allersma 2018-12-14 16:11:53
Implement `add` command. bbb2544bd06f29866465d651c32ca4d6e017f5e9 Jan Allersma 2018-12-11 15:43:10
Implement `exe` command. 1eaa36242201cf7ade5f23a14340e630c267db07 Jan Allersma 2018-12-11 13:23:32
Implement `run` and `build` commands. 14e9e25b6a06f587c1a50829e72c829ae59a87c2 Jan Allersma 2018-12-10 20:57:08
Implement non-recursive dependency check. 5ffd40604755d1c2dde9353c74f06a006deea33c Jan Allersma 2018-12-07 20:50:42
Restructure project. c2d98caf7897e87284fb2891e1d4b92d14cf37e1 Jan Allersma 2018-12-06 16:20:46
Commit 0100f680f4054ffe4948278a5dae93b4fcb0d333 - Run modules concurrently.
Author: Jan Allersma
Author date (UTC): 2019-01-19 16:24
Committer name: Jan Allersma
Committer date (UTC): 2019-01-19 16:24
Parent(s): ed8759345a07e93b30bd802b1e6ecb8d5eeb3b85
Signing key:
Tree: aae0980d402cd0a423c7413d1c455f2bb9765d5e
File Lines added Lines deleted
Cargo.lock 75 65
src/backend/fetch.rs 1 1
src/backend/internal/mod.rs 1 0
src/backend/internal/paralellism.rs 70 0
src/backend/mod.rs 3 0
src/backend/project.rs 43 36
src/backend/run.rs 117 0
src/parser.rs 1 1
File Cargo.lock changed (mode: 100644) (index 0679f2d..622c8e3)
... ... version = "0.1.0"
4 4 dependencies = [ dependencies = [
5 5 "git2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "git2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
6 6 "rustyline 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rustyline 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
7 "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
7 "serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)",
8 8 ] ]
9 9
10 10 [[package]] [[package]]
 
... ... dependencies = [
26 26
27 27 [[package]] [[package]]
28 28 name = "autocfg" name = "autocfg"
29 version = "0.1.1"
29 version = "0.1.2"
30 30 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
31 31
32 32 [[package]] [[package]]
 
... ... name = "backtrace"
34 34 version = "0.3.13" version = "0.3.13"
35 35 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
36 36 dependencies = [ dependencies = [
37 "autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
38 "backtrace-sys 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)",
37 "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
38 "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
39 39 "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
40 "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
41 "rustc-demangle 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
40 "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
41 "rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
42 42 "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
43 43 ] ]
44 44
45 45 [[package]] [[package]]
46 46 name = "backtrace-sys" name = "backtrace-sys"
47 version = "0.1.26"
47 version = "0.1.28"
48 48 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
49 49 dependencies = [ dependencies = [
50 50 "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)",
51 "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
51 "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
52 52 ] ]
53 53
54 54 [[package]] [[package]]
 
... ... source = "registry+https://github.com/rust-lang/crates.io-index"
82 82
83 83 [[package]] [[package]]
84 84 name = "curl-sys" name = "curl-sys"
85 version = "0.4.15"
85 version = "0.4.16"
86 86 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
87 87 dependencies = [ dependencies = [
88 88 "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)",
89 "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
89 "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
90 90 "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)", "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
91 91 "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)",
92 92 "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
 
... ... name = "dirs"
99 99 version = "1.0.4" version = "1.0.4"
100 100 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
101 101 dependencies = [ dependencies = [
102 "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
102 "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
103 103 "redox_users 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "redox_users 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
104 104 "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
105 105 ] ]
106 106
107 107 [[package]] [[package]]
108 108 name = "failure" name = "failure"
109 version = "0.1.3"
109 version = "0.1.5"
110 110 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
111 111 dependencies = [ dependencies = [
112 112 "backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)", "backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
113 "failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
113 "failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
114 114 ] ]
115 115
116 116 [[package]] [[package]]
117 117 name = "failure_derive" name = "failure_derive"
118 version = "0.1.3"
118 version = "0.1.5"
119 119 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
120 120 dependencies = [ dependencies = [
121 "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
121 "proc-macro2 0.4.25 (registry+https://github.com/rust-lang/crates.io-index)",
122 122 "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
123 "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)",
123 "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)",
124 124 "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
125 125 ] ]
126 126
 
... ... version = "0.8.0"
144 144 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
145 145 dependencies = [ dependencies = [
146 146 "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
147 "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
147 "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
148 148 "libgit2-sys 0.7.11 (registry+https://github.com/rust-lang/crates.io-index)", "libgit2-sys 0.7.11 (registry+https://github.com/rust-lang/crates.io-index)",
149 149 "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
150 150 "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
 
... ... source = "registry+https://github.com/rust-lang/crates.io-index"
169 169
170 170 [[package]] [[package]]
171 171 name = "libc" name = "libc"
172 version = "0.2.45"
172 version = "0.2.47"
173 173 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
174 174
175 175 [[package]] [[package]]
 
... ... version = "0.7.11"
178 178 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
179 179 dependencies = [ dependencies = [
180 180 "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)",
181 "curl-sys 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)",
182 "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
181 "curl-sys 0.4.16 (registry+https://github.com/rust-lang/crates.io-index)",
182 "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
183 183 "libssh2-sys 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", "libssh2-sys 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
184 184 "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)", "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
185 185 "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)",
 
... ... version = "0.2.11"
192 192 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
193 193 dependencies = [ dependencies = [
194 194 "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)",
195 "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
195 "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
196 196 "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)", "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
197 197 "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)",
198 198 "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
 
... ... version = "1.0.25"
205 205 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
206 206 dependencies = [ dependencies = [
207 207 "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)",
208 "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
208 "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
209 209 "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
210 210 "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
211 211 ] ]
 
... ... source = "registry+https://github.com/rust-lang/crates.io-index"
225 225
226 226 [[package]] [[package]]
227 227 name = "memchr" name = "memchr"
228 version = "2.1.2"
228 version = "2.1.3"
229 229 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
230 230 dependencies = [ dependencies = [
231 231 "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
232 "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
233 "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
232 "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
234 233 ] ]
235 234
236 235 [[package]] [[package]]
 
... ... dependencies = [
241 240 "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
242 241 "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)",
243 242 "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
244 "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
243 "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
245 244 "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
246 245 ] ]
247 246
 
... ... version = "0.9.40"
261 260 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
262 261 dependencies = [ dependencies = [
263 262 "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)", "cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)",
264 "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
263 "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
265 264 "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
266 265 "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
267 266 ] ]
 
... ... source = "registry+https://github.com/rust-lang/crates.io-index"
278 277
279 278 [[package]] [[package]]
280 279 name = "proc-macro2" name = "proc-macro2"
281 version = "0.4.24"
280 version = "0.4.25"
282 281 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
283 282 dependencies = [ dependencies = [
284 283 "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
 
... ... name = "quote"
289 288 version = "0.6.10" version = "0.6.10"
290 289 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
291 290 dependencies = [ dependencies = [
292 "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
291 "proc-macro2 0.4.25 (registry+https://github.com/rust-lang/crates.io-index)",
293 292 ] ]
294 293
295 294 [[package]] [[package]]
296 295 name = "rand" name = "rand"
297 version = "0.4.3"
296 version = "0.4.5"
298 297 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
299 298 dependencies = [ dependencies = [
300 299 "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
301 "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
300 "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
301 "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
302 "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
302 303 "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
303 304 ] ]
304 305
306 [[package]]
307 name = "rand_core"
308 version = "0.3.0"
309 source = "registry+https://github.com/rust-lang/crates.io-index"
310
311 [[package]]
312 name = "rdrand"
313 version = "0.4.0"
314 source = "registry+https://github.com/rust-lang/crates.io-index"
315 dependencies = [
316 "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
317 ]
318
305 319 [[package]] [[package]]
306 320 name = "redox_syscall" name = "redox_syscall"
307 version = "0.1.44"
321 version = "0.1.50"
308 322 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
309 323
310 324 [[package]] [[package]]
 
... ... version = "0.2.0"
313 327 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
314 328 dependencies = [ dependencies = [
315 329 "argon2rs 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", "argon2rs 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
316 "failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
317 "rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
318 "redox_syscall 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)",
330 "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
331 "rand 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
332 "redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)",
319 333 ] ]
320 334
321 335 [[package]] [[package]]
322 336 name = "rustc-demangle" name = "rustc-demangle"
323 version = "0.1.11"
337 version = "0.1.13"
324 338 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
325 339
326 340 [[package]] [[package]]
 
... ... version = "2.1.0"
329 343 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
330 344 dependencies = [ dependencies = [
331 345 "dirs 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "dirs 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
332 "libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",
346 "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
333 347 "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
334 "memchr 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
348 "memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
335 349 "nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
336 350 "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
337 351 "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
 
... ... source = "registry+https://github.com/rust-lang/crates.io-index"
351 365
352 366 [[package]] [[package]]
353 367 name = "serde" name = "serde"
354 version = "1.0.82"
368 version = "1.0.85"
355 369 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
356 370
357 371 [[package]] [[package]]
358 372 name = "serde_json" name = "serde_json"
359 version = "1.0.33"
373 version = "1.0.36"
360 374 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
361 375 dependencies = [ dependencies = [
362 376 "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
363 377 "ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
364 "serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)",
378 "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)",
365 379 ] ]
366 380
367 381 [[package]] [[package]]
368 382 name = "syn" name = "syn"
369 version = "0.15.23"
383 version = "0.15.26"
370 384 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
371 385 dependencies = [ dependencies = [
372 "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
386 "proc-macro2 0.4.25 (registry+https://github.com/rust-lang/crates.io-index)",
373 387 "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
374 388 "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
375 389 ] ]
 
... ... name = "synstructure"
379 393 version = "0.10.1" version = "0.10.1"
380 394 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
381 395 dependencies = [ dependencies = [
382 "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
396 "proc-macro2 0.4.25 (registry+https://github.com/rust-lang/crates.io-index)",
383 397 "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
384 "syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)",
398 "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)",
385 399 "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
386 400 ] ]
387 401
 
... ... name = "vcpkg"
433 447 version = "0.2.6" version = "0.2.6"
434 448 source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
435 449
436 [[package]]
437 name = "version_check"
438 version = "0.1.5"
439 source = "registry+https://github.com/rust-lang/crates.io-index"
440
441 450 [[package]] [[package]]
442 451 name = "void" name = "void"
443 452 version = "1.0.2" version = "1.0.2"
 
... ... source = "registry+https://github.com/rust-lang/crates.io-index"
465 474 [metadata] [metadata]
466 475 "checksum argon2rs 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3f67b0b6a86dae6e67ff4ca2b6201396074996379fba2b92ff649126f37cb392" "checksum argon2rs 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3f67b0b6a86dae6e67ff4ca2b6201396074996379fba2b92ff649126f37cb392"
467 476 "checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71" "checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71"
468 "checksum autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4e5f34df7a019573fb8bdc7e24a2bfebe51a2a1d6bfdbaeccedb3c41fc574727"
477 "checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799"
469 478 "checksum backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)" = "b5b493b66e03090ebc4343eb02f94ff944e0cbc9ac6571491d170ba026741eb5" "checksum backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)" = "b5b493b66e03090ebc4343eb02f94ff944e0cbc9ac6571491d170ba026741eb5"
470 "checksum backtrace-sys 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)" = "3fcce89e5ad5c8949caa9434501f7b55415b3e7ad5270cb88c75a8d35e8f1279"
479 "checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6"
471 480 "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12"
472 481 "checksum blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400" "checksum blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400"
473 482 "checksum cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4a8b715cb4597106ea87c7c84b2f1d452c7492033765df7f32651e66fcf749" "checksum cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4a8b715cb4597106ea87c7c84b2f1d452c7492033765df7f32651e66fcf749"
474 483 "checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4" "checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4"
475 484 "checksum constant_time_eq 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8ff012e225ce166d4422e0e78419d901719760f62ae2b7969ca6b564d1b54a9e" "checksum constant_time_eq 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8ff012e225ce166d4422e0e78419d901719760f62ae2b7969ca6b564d1b54a9e"
476 "checksum curl-sys 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)" = "721c204978be2143fab0a84b708c49d79d1f6100b8785610f456043a90708870"
485 "checksum curl-sys 0.4.16 (registry+https://github.com/rust-lang/crates.io-index)" = "ca79238a79fb294be6173b4057c95b22a718c94c4e38475d5faa82b8383f3502"
477 486 "checksum dirs 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "88972de891f6118092b643d85a0b28e0678e0f948d7f879aa32f2d5aafe97d2a" "checksum dirs 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "88972de891f6118092b643d85a0b28e0678e0f948d7f879aa32f2d5aafe97d2a"
478 "checksum failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6dd377bcc1b1b7ce911967e3ec24fa19c3224394ec05b54aa7b083d498341ac7"
479 "checksum failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "64c2d913fe8ed3b6c6518eedf4538255b989945c14c2a7d5cbff62a5e2120596"
487 "checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2"
488 "checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1"
480 489 "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
481 490 "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
482 491 "checksum git2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c7339329bfa14a00223244311560d11f8f489b453fb90092af97f267a6090ab0" "checksum git2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c7339329bfa14a00223244311560d11f8f489b453fb90092af97f267a6090ab0"
483 492 "checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" "checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
484 493 "checksum itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1306f3464951f30e30d12373d31c79fbd52d236e5e896fd92f96ec7babbbe60b" "checksum itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1306f3464951f30e30d12373d31c79fbd52d236e5e896fd92f96ec7babbbe60b"
485 "checksum libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)" = "2d2857ec59fadc0773853c664d2d18e7198e83883e7060b63c924cb077bd5c74"
494 "checksum libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)" = "48450664a984b25d5b479554c29cc04e3150c97aa4c01da5604a2d4ed9151476"
486 495 "checksum libgit2-sys 0.7.11 (registry+https://github.com/rust-lang/crates.io-index)" = "48441cb35dc255da8ae72825689a95368bf510659ae1ad55dc4aa88cb1789bf1" "checksum libgit2-sys 0.7.11 (registry+https://github.com/rust-lang/crates.io-index)" = "48441cb35dc255da8ae72825689a95368bf510659ae1ad55dc4aa88cb1789bf1"
487 496 "checksum libssh2-sys 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "126a1f4078368b163bfdee65fbab072af08a1b374a5551b21e87ade27b1fbf9d" "checksum libssh2-sys 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "126a1f4078368b163bfdee65fbab072af08a1b374a5551b21e87ade27b1fbf9d"
488 497 "checksum libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "2eb5e43362e38e2bca2fd5f5134c4d4564a23a5c28e9b95411652021a8675ebe" "checksum libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "2eb5e43362e38e2bca2fd5f5134c4d4564a23a5c28e9b95411652021a8675ebe"
489 498 "checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6" "checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6"
490 499 "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
491 "checksum memchr 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "db4c41318937f6e76648f42826b1d9ade5c09cafb5aef7e351240a70f39206e9"
500 "checksum memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e1dd4eaac298c32ce07eb6ed9242eda7d82955b9170b7d6db59b2e02cc63fcb8"
492 501 "checksum nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d37e713a259ff641624b6cb20e3b12b2952313ba36b6823c0f16e6cfd9e5de17" "checksum nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d37e713a259ff641624b6cb20e3b12b2952313ba36b6823c0f16e6cfd9e5de17"
493 502 "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945"
494 503 "checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" "checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de"
495 504 "checksum openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)" = "1bb974e77de925ef426b6bc82fce15fd45bdcbeb5728bffcfc7cdeeb7ce1c2d6" "checksum openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)" = "1bb974e77de925ef426b6bc82fce15fd45bdcbeb5728bffcfc7cdeeb7ce1c2d6"
496 505 "checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" "checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
497 506 "checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c" "checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c"
498 "checksum proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)" = "77619697826f31a02ae974457af0b29b723e5619e113e9397b8b82c6bd253f09"
507 "checksum proc-macro2 0.4.25 (registry+https://github.com/rust-lang/crates.io-index)" = "d3797b7142c9aa74954e351fc089bbee7958cebbff6bf2815e7ffff0b19f547d"
499 508 "checksum quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "53fa22a1994bd0f9372d7a816207d8a2677ad0325b073f5c5332760f0fb62b5c" "checksum quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "53fa22a1994bd0f9372d7a816207d8a2677ad0325b073f5c5332760f0fb62b5c"
500 "checksum rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8356f47b32624fef5b3301c1be97e5944ecdd595409cc5da11d05f211db6cfbd"
501 "checksum redox_syscall 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)" = "a84bcd297b87a545980a2d25a0beb72a1f490c31f0a9fde52fca35bfbb1ceb70"
509 "checksum rand 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "dee497e66d8d76bf08ce20c8d36e16f93749ab0bf89975b4f8ae5cee660c2da2"
510 "checksum rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0905b6b7079ec73b314d4c748701f6931eb79fd97c668caa3f1899b22b32c6db"
511 "checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
512 "checksum redox_syscall 0.1.50 (registry+https://github.com/rust-lang/crates.io-index)" = "52ee9a534dc1301776eff45b4fa92d2c39b1d8c3d3357e6eb593e0d795506fc2"
502 513 "checksum redox_users 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "214a97e49be64fd2c86f568dd0cb2c757d2cc53de95b273b6ad0a1c908482f26" "checksum redox_users 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "214a97e49be64fd2c86f568dd0cb2c757d2cc53de95b273b6ad0a1c908482f26"
503 "checksum rustc-demangle 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "01b90379b8664dd83460d59bdc5dd1fd3172b8913788db483ed1325171eab2f7"
514 "checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619"
504 515 "checksum rustyline 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6010155119d53aac4f5b987cb8f6ea913d0d64d9b237da36f8f96a90cb3f5385" "checksum rustyline 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6010155119d53aac4f5b987cb8f6ea913d0d64d9b237da36f8f96a90cb3f5385"
505 516 "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7"
506 517 "checksum scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" "checksum scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8"
507 "checksum serde 1.0.82 (registry+https://github.com/rust-lang/crates.io-index)" = "6fa52f19aee12441d5ad11c9a00459122bd8f98707cadf9778c540674f1935b6"
508 "checksum serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)" = "c37ccd6be3ed1fdf419ee848f7c758eb31b054d7cd3ae3600e3bae0adf569811"
509 "checksum syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)" = "9545a6a093a3f0bd59adb472700acc08cad3776f860f16a897dfce8c88721cbc"
518 "checksum serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)" = "534b8b91a95e0f71bca3ed5824752d558da048d4248c91af873b63bd60519752"
519 "checksum serde_json 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)" = "574378d957d6dcdf1bbb5d562a15cbd5e644159432f84634b94e485267abbcc7"
520 "checksum syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)" = "f92e629aa1d9c827b2bb8297046c1ccffc57c99b947a680d3ccff1f136a3bee9"
510 521 "checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015" "checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015"
511 522 "checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" "checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
512 523 "checksum unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "6a0180bc61fc5a987082bfa111f4cc95c4caff7f9799f3e46df09163a937aa25" "checksum unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "6a0180bc61fc5a987082bfa111f4cc95c4caff7f9799f3e46df09163a937aa25"
 
... ... source = "registry+https://github.com/rust-lang/crates.io-index"
516 527 "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
517 528 "checksum utf8parse 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8772a4ccbb4e89959023bc5b7cb8623a795caa7092d99f3aa9501b9484d4557d" "checksum utf8parse 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8772a4ccbb4e89959023bc5b7cb8623a795caa7092d99f3aa9501b9484d4557d"
518 529 "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d"
519 "checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
520 530 "checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" "checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
521 531 "checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0" "checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0"
522 532 "checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" "checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
File src/backend/fetch.rs changed (mode: 100644) (index fc1b9c6..2b30aff)
... ... pub fn run(dep: PathBuf, mut command: String) -> Result<String, String> {
35 35 fetch(dep_name, dep, command) fetch(dep_name, dep, command)
36 36 } }
37 37
38 fn fetch(dep_name: String, mut path: PathBuf, command: String) -> Result<String, String> {
38 pub fn fetch(dep_name: String, mut path: PathBuf, command: String) -> Result<String, String> {
39 39 let mut args: Vec<&str> = command.split(' ').collect(); let mut args: Vec<&str> = command.split(' ').collect();
40 40 let command = args.remove(0); let command = args.remove(0);
41 41
File src/backend/internal/mod.rs added (mode: 100644) (index 0000000..1eada8d)
1 pub mod paralellism;
File src/backend/internal/paralellism.rs added (mode: 100644) (index 0000000..6d40548)
1 use backend;
2 use std::thread;
3 use std::result::Result;
4 use std::path::PathBuf;
5
6 type FetchPtr = fn(String, PathBuf, String) -> Result<String, String>;
7
8 pub struct Threadhandler {
9 jobs: Vec<(FetchPtr, String, PathBuf, String)>,
10 triggered: bool
11 }
12
13 impl Threadhandler {
14 pub fn new() -> Threadhandler {
15 Threadhandler {
16 jobs: Vec::new(),
17 triggered: false
18 }
19 }
20
21 pub fn add(&mut self, dep_name: String, command: String) -> bool {
22 let dep_path = match backend::filesystem::get_current_dep_root() {
23 Ok(mut path) => {
24 path.push(&dep_name);
25 path
26 },
27 _ => return false
28 };
29
30 match self.triggered {
31 true => {
32 println!("Could not add job: {}", "Threadhandler already started.");
33 false
34 },
35 false => {
36 self.jobs.push((backend::fetch::fetch, dep_name, dep_path, command));
37 true
38 }
39 }
40 }
41
42 pub fn start(&mut self) {
43 let mut handles = vec![];
44
45 if self.triggered {
46 println!("{}", "Threadhandler already started.");
47 return
48 }
49
50 self.triggered = true;
51
52 for job in self.jobs.clone() {
53 println!("Thread: {:?}", &job);
54 let handle = thread::spawn(|| job.0(job.1, job.2, job.3));
55 handles.push(handle);
56 }
57
58 println!("All scheduled jobs are running! Waiting for job to finish..");
59
60 for handle in handles {
61 handle.join().unwrap();
62 }
63 }
64 }
65
66 impl Drop for Threadhandler {
67 fn drop(&mut self) {
68 println!("Threadhandler dropped!");
69 }
70 }
File src/backend/mod.rs changed (mode: 100644) (index e7b9123..9e1718a)
... ... pub mod filesystem;
8 8 pub mod build; pub mod build;
9 9 pub mod dep; pub mod dep;
10 10 pub mod fetch; pub mod fetch;
11 pub mod run;
11 12 pub mod system; pub mod system;
12 13 pub mod git; pub mod git;
14
15 mod internal;
File src/backend/project.rs changed (mode: 100644) (index d592263..26a9440)
1 use std::thread;
1 2 use std::env; use std::env;
2 3 use std::result::Result; use std::result::Result;
3 4 use super::deptree; use super::deptree;
 
... ... pub fn build<I>(args: &mut I) -> Result<String, String> where I: Iterator<Item=S
36 37 } }
37 38
38 39 pub fn exe<I>(args: &mut I) -> Result<String, String> where I: Iterator<Item=String> { pub fn exe<I>(args: &mut I) -> Result<String, String> where I: Iterator<Item=String> {
39 let output_dir;
40 let mut args = String::new();
41
42 40 match super::filesystem::get_current_project_root() { match super::filesystem::get_current_project_root() {
43 Some(dir) => output_dir = dir,
44 None => return Err(String::from("not in a project (sub)directory."))
45 }
46
47 match super::config::get_json_from_dir(output_dir) {
48 Ok(config) => {
49 if cfg!(target_os = "linux") {
50 match config["run"]["linux"].as_str() {
51 Some(string) => args = String::from(string),
52 None => return Err(String::from("ambassade.json: 'run->linux' should be a string."))
53 }
54 }
55 if cfg!(target_os = "macos") {
56 match config["run"]["os-x"].as_str() {
57 Some(string) => args = String::from(string),
58 None => return Err(String::from("ambassade.json: 'run->os-x' should be a string."))
59 }
60 }
61 if cfg!(target_os = "windows") {
62 match config["run"]["windows"].as_str() {
63 Some(string) => args = String::from(string),
64 None => return Err(String::from("ambassade.json: 'run->windows' should be a string."))
65 }
66 }
67 },
68 Err(e) => return Err(e)
41 Some(dir) => super::run::run_sync(String::from(dir.file_name().unwrap().to_str().unwrap())),
42 None => Err(String::from("not in a project (sub)directory."))
69 43 } }
70
71 println!("Running project..");
72 super::fetch::run(env::current_dir().unwrap(), args)
73 44 } }
74 45
75 pub fn run<I>(args: &mut I) -> Result<String, String> where I: Iterator<Item=String> {
46 pub fn run(args: &mut Vec<String>) -> Result<String, String> {
76 47 println!("Building project.."); println!("Building project..");
77 48
78 match build(args) {
49 let mut threads = super::internal::paralellism::Threadhandler::new();
50
51 match build(&mut args.clone().into_iter()) {
79 52 Ok(output) => println!("{}", output), Ok(output) => println!("{}", output),
80 53 Err(e) => return Err(e) Err(e) => return Err(e)
81 54 } }
82 55
83 exe(args)
56 if args.len() > 1 {
57 let mut modules = args.len() - 1;
58 while modules > 0 {
59 println!("running async module {}: {}", modules, args[modules]);
60 match super::run::run_async(args[modules].clone(), &mut threads) {
61 Ok(_) => {},
62 Err(e) => return Err(e)
63 }
64 modules -= 1;
65 }
66 }
67
68 if args.len() > 0 {
69 let handler = thread::spawn(move || threads.start());
70
71 println!("running sync module 0: {}", args[0]);
72 let result = match super::run::run_sync(args[0].clone()) {
73 Ok(_) => Ok(String::from("Run succeeded! Quitting..")),
74 Err(e) => Err(e)
75 };
76
77 handler.join().unwrap();
78
79 return result;
80 }
81
82 let config = match super::filesystem::get_current_project_root() {
83 Some(path) => path,
84 None => return Err(String::from("Not in a project (sub)directory."))
85 };
86
87 match super::run::run_sync(String::from(config.file_name().unwrap().to_str().unwrap())) {
88 Ok(_) => Ok(String::from("Run succeeded! Quitting..")),
89 Err(e) => Err(e)
90 }
84 91 } }
85 92
86 93 pub fn delete<I>(path: &mut I) -> Result<String, String> where I: Iterator<Item=String> { pub fn delete<I>(path: &mut I) -> Result<String, String> where I: Iterator<Item=String> {
 
... ... pub fn help() {
172 179
173 180 println!("init [DIRECTORY]\t\t Initialize new project in specified directory. Defaults to current directory."); println!("init [DIRECTORY]\t\t Initialize new project in specified directory. Defaults to current directory.");
174 181 println!("build [--module]\t\t Build current project if module flag is not specified, otherwise only the module will be built."); println!("build [--module]\t\t Build current project if module flag is not specified, otherwise only the module will be built.");
175 println!("run [ARGUMENTS]\t\t\t Build and run current project with ARGUMENTS to run project with.");
182 println!("run [MODULES]\t\t\t Build current project and run MODULES. MODULES default to the project module.");
176 183 println!("exe [ARGUMENTS]\t\t\t Run current project with ARGUMENTS. The project won't be built."); println!("exe [ARGUMENTS]\t\t\t Run current project with ARGUMENTS. The project won't be built.");
177 184 println!("add NAME COMMAND [ARGUMENTS]\t Add dependency with NAME to module and is built through COMMAND with ARGUMENTS."); println!("add NAME COMMAND [ARGUMENTS]\t Add dependency with NAME to module and is built through COMMAND with ARGUMENTS.");
178 185 println!("hide NAME COMMAND [ARGUMENTS]\t Add dependency with NAME to module and is built through COMMAND with ARGUMENTS. Add configfile to '.gitignore'."); println!("hide NAME COMMAND [ARGUMENTS]\t Add dependency with NAME to module and is built through COMMAND with ARGUMENTS. Add configfile to '.gitignore'.");
File src/backend/run.rs added (mode: 100644) (index 0000000..90dd319)
1 extern crate serde_json;
2
3 use std::result::Result;
4 use super::internal::paralellism::Threadhandler;
5
6 pub fn run_sync(dep_name: String) -> Result<String, String> {
7 let config_path = match super::dep_config::scan(dep_name.clone()) {
8 Ok(path) => path,
9 Err(e) => return Err(e)
10 };
11
12 println!("Run config path: {:?}", config_path);
13
14 let mut command = String::new();
15 match super::config::get_json(&config_path) {
16 Ok(config) => {
17 if cfg!(target_os = "linux") {
18 match config["run"]["linux"].as_str() {
19 Some(string) => command = String::from(string),
20 None => return Err(String::from("ambassade.json: 'run->linux' should be a string."))
21 }
22 }
23 if cfg!(target_os = "macos") {
24 match config["run"]["os-x"].as_str() {
25 Some(string) => command = String::from(string),
26 None => return Err(String::from("ambassade.json: 'run->os-x' should be a string."))
27 }
28 }
29 if cfg!(target_os = "windows") {
30 match config["run"]["windows"].as_str() {
31 Some(string) => command = String::from(string),
32 None => return Err(String::from("ambassade.json: 'run->windows' should be a string."))
33 }
34 }
35 },
36 Err(e) => return Err(e)
37 }
38
39 println!("Running project..");
40
41 let dep_dir = match super::filesystem::get_current_project_root() {
42 Some(mut path) => {
43 if path.file_name().unwrap().to_str().unwrap() != dep_name {
44 path.push("dep");
45 path.push(dep_name);
46 }
47 path
48 },
49 None => return Err(String::from("Not in a project (sub)directory."))
50 };
51
52 super::fetch::run(dep_dir, command)
53 }
54
55 pub fn run_async(dep_name: String, threads: &mut Threadhandler) -> Result<(), String> {
56 let config_path = match super::dep_config::scan(dep_name.clone()) {
57 Ok(path) => path,
58 Err(e) => return Err(e)
59 };
60
61 println!("Run config path: {:?}", config_path);
62
63 let config = match super::config::get_json(&config_path) {
64 Ok(json) => json,
65 Err(e) => return Err(e)
66 };
67
68 run_module(dep_name, config, threads)
69 }
70
71 #[cfg(target_os="linux")]
72 fn run_module(dep_name: String, config_value: serde_json::Value, threads: &mut Threadhandler) -> Result<(), String> {
73 println!("Scheduling module '{}' as job..", &dep_name);
74
75 let run_cmd = &config_value["run"]["linux"];
76
77 if !run_cmd.is_string() {
78 return Err(String::from("ambassade.json: 'run->linux' should be a string."));
79 }
80
81 match threads.add(dep_name, String::from(run_cmd.as_str().unwrap())) {
82 true => Ok(()),
83 false => Err(String::from("Scheduling job failed."))
84 }
85 }
86
87 #[cfg(target_os="macos")]
88 fn run_module(dep_name: String, config_value: serde_json::Value, threads: &mut Threadhandler) -> Result<(), String> {
89 println!("Scheduling module '{}' as job..", &dep_name);
90
91 let run_cmd = &config_value["run"]["os-x"];
92
93 if !run_cmd.is_string() {
94 return Err(String::from("ambassade.json: 'run->os-x' should be a string."));
95 }
96
97 match threads.add(dep_name, String::from(run_cmd.as_str().unwrap())) {
98 true => Ok(()),
99 false => Err(String::from("Scheduling job failed."))
100 }
101 }
102
103 #[cfg(target_os="windows")]
104 fn run_module(dep_name: String, config_value: serde_json::Value, threads: &mut Threadhandler) -> Result<(), String> {
105 println!("Scheduling module '{}' as job..", &dep_name);
106
107 let run_cmd = &config_value["run"]["windows"];
108
109 if !run_cmd.is_string() {
110 return Err(String::from("ambassade.json: 'run->windows' should be a string."));
111 }
112
113 match threads.add(dep_name, String::from(run_cmd.as_str().unwrap())) {
114 true => Ok(()),
115 false => Err(String::from("Scheduling job failed."))
116 }
117 }
File src/parser.rs changed (mode: 100644) (index 2415cd8..e73755b)
... ... fn parse<I>(args: &mut I, open_shell: bool) -> bool where I: Iterator<Item=Strin
31 31 } }
32 32 } }
33 33 else if argument == "run" { else if argument == "run" {
34 match backend::project::run(args) {
34 match backend::project::run(&mut args.collect()) {
35 35 Ok(_) => {}, Ok(_) => {},
36 36 Err(e) => println!("Running project failed: {}", e) Err(e) => println!("Running project failed: {}", e)
37 37 } }
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/kapstok/NHL-Beheer

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/kapstok/NHL-Beheer

Clone this repository using git:
git clone git://git.rocketgit.com/user/kapstok/NHL-Beheer

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main