Luke Parker
0eb56406a4
Further dependency minimization for build times
2023-07-26 03:03:44 -04:00
Luke Parker
afb385fba4
Use spin's Once for OnceLock
2023-07-26 02:59:24 -04:00
Luke Parker
821f5d8de4
Restore create_if_missing to RocksDB code
2023-07-25 23:00:10 -04:00
Luke Parker
32435d8a4c
Consolidate RockDB code
...
Moves explicitly to zstd. RockDB recommends zstd, or at least lz4 over snappy,
and this minimizes which dependencies we pull in.
2023-07-25 21:43:27 -04:00
Luke Parker
0a367bfbda
Add common crate to access env variables
...
In the future, we should use a proper secret store (not just env variables).
This lets us update one block of code and not n in the future.
2023-07-17 00:53:05 -04:00
Luke Parker
62504b2622
Bind RocksDB into serai-db
2023-07-13 19:09:11 -04:00
Luke Parker
93b1656f86
Meaningful changes from aggressive-clippy
...
I do want to enable a few specific lints, yet aggressive-clippy as a whole
isn't worthwhile.
2023-07-08 11:29:07 -04:00
Boog900
30834fe4d2
std-shims: six Read
for &[u8]
2023-07-03 07:13:06 -04:00
Luke Parker
ac708b3b2a
no-std support for monero-serai ( #311 )
...
* Move monero-serai from std to std-shims, where possible
* no-std fixes
* Make the HttpRpc its own feature, thiserror only on std
* Drop monero-rs's epee for a homegrown one
We only need it for a single function. While I tried jeffro's, it didn't work
out of the box, had three unimplemented!s, and is no where near viable for
no_std.
Fixes #182 , though should be further tested.
* no-std monero-serai
* Allow base58-monero via git
* cargo fmt
2023-06-29 04:14:29 -04:00
Luke Parker
d25c668ee4
Replace lazy_static with OnceLock inside monero-serai
...
lazy_static, if no_std environments were used, effectively required always
using spin locks. This resolves the ergonomics of that while adopting Rust std
code.
no_std does still use a spin based solution. Theoretically, we could use
atomics, yet writing our own Mutex wasn't a priority.
2023-06-28 21:45:57 -04:00
Luke Parker
1e448dec21
Add no_std support to transcript, dalek-ff-group, ed448, ciphersuite, multiexp, schnorr, and monero-generators
...
transcript, dalek-ff-group, ed449, and ciphersuite are all usable with no_std
alone. The rest additionally require alloc.
Part of #279 .
2023-04-22 04:38:47 -04:00
Luke Parker
2e2bc59703
Support reloading the mempool from disk
2023-04-14 15:51:56 -04:00
Luke Parker
c032f66f8a
must_use annotations on DbTxn
2023-04-14 15:04:26 -04:00
Luke Parker
6f6c9f7cdf
Add a dedicated db crate with a basic DB trait
...
It's needed by the processor and tributary (coordinator).
2023-04-14 11:47:43 -04:00
Luke Parker
caf37527eb
Merge branch 'develop' into crypto-tweaks
2023-03-16 16:43:04 -04:00
Luke Parker
c37cc0b4e2
Update Zeroize pin to ^1.5 from 1.5
2023-03-07 02:29:59 -05:00
Luke Parker
375887bb29
Update licenses
2023-01-11 23:05:31 -05:00
Luke Parker
35ca220bcc
Comment the allocator feature
...
Prevents it from turning on with --all-features, forcing nightly.
2022-11-11 01:23:35 -05:00
Luke Parker
3d9b9b178c
Zeroizing allocator ( #154 )
...
* Add a zeroizing allocator
* Also implement the allocator API
* Add misisng license file to zalloc
* Slight change to zalloc description
2022-11-10 23:34:40 -06:00