LeRoyce Pearson
b67a9f2281
Switch to using testing.expect* in tests
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
d457919ff5
Make CacheHash cleanup consistent (always call release)
...
Instead of releasing the manifest file when an error occurs, it is
only released when when `CacheHash.release` is called. This maps better
to what a zig user expects when they do `defer cache_hash.release()`.
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
05edfe983c
Add addFilePost and addFilePostFetch functions
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
d770dae1b8
Add documentation to CacheHash API
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
67d6432d10
Check for problematic timestamps
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
73d2747084
Open file with exclusive lock
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
204aa7dc1a
Remove unnecessary contents field from File
...
It was causing a segfault on `mipsel` architecture, not sure why other
architectures weren't affected.
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
c88ece3679
Remove error union from CacheHash.final
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
dfb53beb52
Check if inode matches inode from manifest
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
7917f25b0a
Update cache_hash to zig master
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
16c5499098
Remove up files created in test at end of test
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
fffd59e6c4
Remove file handle from CacheHash
...
A file handle is not the same thing as an inode index number.
Eventually the inode will be checked as well, but there needs to be
a way to get the inode in `std` first.
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
21d7430696
Replace ArrayList in write_manifest with an array
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
061c1fd9ab
Use readAllAlloc
...
Now that the memory leak mentioned in #4656 has been fixed.
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
4f709d224a
Make hash digest same size as in the c API
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
8e4b80522f
Return base64 digest instead of using an out variable
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
e75a6e5144
Rename cache_file -> addFile
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
50cbf1f3aa
Add slice and array support to add method
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
fde188aadc
Make type specific add functions
...
Basically, move type specific code into their own functions instead
of making `add` a giant function responsible for everything.
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
4173dbdce9
Rename cache functions to add
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
27bf1f781b
Store fs.Dir instead of path to dir
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
55a3925ab7
Rename CacheHashFile -> File
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
c8062321b3
Use fs.File
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
86fe88bbcb
Use std.fs.base64_encoder in std.cache_hash
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
ce5b2286f1
Support caching bools; make caching values infallible
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
de341b8fb8
Fix memory leak in cache_hash
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
8a77c1c637
Add cache method; add support for caching integers
2020-05-25 13:48:43 -04:00
LeRoyce Pearson
3158dc424e
Partially implement cache hash API in zig
2020-05-25 13:48:43 -04:00