Eelco Dolstra
ebd89999c2
Add StorePath tests
2019-12-10 22:04:40 +01:00
Eelco Dolstra
9e565781c6
Shut up warnings
2019-12-10 13:37:23 +01:00
Eelco Dolstra
14aa0c3259
Use hyper directly instead of reqwest
2019-12-10 13:37:23 +01:00
Eelco Dolstra
a6f0bef0a7
Update to async/await-enabled tokio
2019-12-10 13:37:23 +01:00
Eelco Dolstra
7f08975050
Add NAR parser
2019-12-10 13:37:23 +01:00
Eelco Dolstra
6317f0f7a0
StorePath improvements
2019-12-10 13:37:23 +01:00
Eelco Dolstra
cce218f950
Add base32 encoder/decoder
2019-12-10 13:37:23 +01:00
Eelco Dolstra
a1ff43045b
Move stuff around
2019-12-10 13:37:23 +01:00
Eelco Dolstra
ce3c41aef0
Drop some dependencies
2019-12-10 13:37:23 +01:00
Eelco Dolstra
d832a355ea
Use rustls
...
In particular, this enables HTTP/2 support in reqwest, which is a lot
more efficient.
2019-12-10 13:37:23 +01:00
Eelco Dolstra
dd5d76e2ed
Basic BinaryCacheStore implementation using async Rust
2019-12-10 13:37:23 +01:00
Eelco Dolstra
39954a9586
Make libnixrust a dynamic library
...
This is a hack to fix the build on macOS, which was failing because
libnixrust.a contains compiler builtins that clash with
libclang_rt.osx.a. There's probably a better solution...
https://hydra.nixos.org/build/107473280
2019-11-29 18:30:39 +01:00
Eelco Dolstra
895ce1bb6c
make clean: Delete nix-rust/target
2019-11-27 17:33:59 +01:00
Eelco Dolstra
f553a8bdea
When OPTIMIZE=0, build rust code in debug mode
2019-11-27 14:18:57 +01:00
Eelco Dolstra
dbc4f9d478
Fix macOS build
...
https://hydra.nixos.org/build/107466992
2019-11-27 00:17:39 +01:00
Eelco Dolstra
e6c1d1b474
Update Cargo.lock
2019-11-26 22:46:36 +01:00
Eelco Dolstra
88f8063917
-Z offline -> --offline
2019-11-26 22:45:15 +01:00
Eelco Dolstra
f2bd847092
Ignore tar header entries
...
In particular, these are emitted by 'git archive' (in fetchGit).
2019-11-26 22:07:28 +01:00
Eelco Dolstra
d33dd6e6c0
Move code around
2019-11-26 22:07:28 +01:00
Eelco Dolstra
d14b1c261c
Shut up some rust warnings
2019-11-26 22:07:28 +01:00
Eelco Dolstra
f738cd4d97
More Rust FFI adventures
...
We can now convert Rust Errors to C++ exceptions. At the Rust->C++ FFI
boundary, Result<T, Error> will cause Error to be converted to and
thrown as a C++ exception.
2019-11-26 22:07:28 +01:00
Eelco Dolstra
8110b4ebb2
Rust cleanup
2019-11-26 22:07:28 +01:00
Eelco Dolstra
343ebcc048
Only pass '-Z offline' to cargo if we have a vendor directory
2019-11-26 22:07:28 +01:00
Eelco Dolstra
d722e2175e
Include cargo dependencies in the Nix tarball
2019-11-26 22:07:28 +01:00
Eelco Dolstra
0dbb249b36
Update Rust dependencies
2019-11-26 22:07:28 +01:00
Eelco Dolstra
045708db43
Make <nix/unpack-channel.nix> a builtin builder
...
This was the last function using a shell script, so this allows us to
get rid of tar, coreutils, bash etc.
2019-11-26 22:07:28 +01:00
Eelco Dolstra
e60f6bd4ce
Enable Rust code to call C++ Source objects
2019-11-26 22:07:28 +01:00
Eelco Dolstra
11da5b2816
Add some Rust code
2019-11-26 22:07:28 +01:00