Commit Graph

79 Commits

Author SHA1 Message Date
aggstam
7d3090f1ed runtime: Make all the writes atomic in a transaction over all trees 2023-03-09 19:59:46 +02:00
parazyd
7bfd17b8cf runtime/db: Disallow init/lookup of zkas db. 2023-03-09 11:57:50 +01:00
parazyd
473d2f8707 consensus: Dynamically load VerifyingKey for zkas circuits from sled. 2023-03-06 18:33:53 +01:00
parazyd
740ce9fa52 Move SMART_CONTRACT_ZKAS_DB_NAME constant to the wasm runtime module. 2023-03-06 18:33:52 +01:00
parazyd
c5ad486a09 sdk: Implement zkas_db_set for use inside wasm. 2023-03-06 18:33:52 +01:00
parazyd
6fda2f9142 runtime/db: Implement zkas_db_set
This is used specifically for zkas circuits bundled with the WASM
contracts. If necessary, the functions will also create and serialize
VerifyingKey objects needed to verify proofs using the given circuit
and store them in the database for later reference.

We rely on the assumption that `deploy()` will do the db init or
lookup before running so the zkas db handle is always index zero.
2023-03-06 18:33:52 +01:00
parazyd
fd280c6513 runtime: Initialize or lookup a zkas db when running contract deployment. 2023-03-06 18:33:52 +01:00
parazyd
db1908d07e runtime: Add documentation for metadata function. 2023-02-25 14:20:31 +01:00
parazyd
b30843c12c runtime/db: Move the section restriction to the top of functions. 2023-02-25 14:20:29 +01:00
parazyd
fe11151ba9 rustdoc lints 2023-01-18 12:54:32 +01:00
x
9caa49ffa8 disable cursor checks in db_* since it uses an unstable rust feature 2023-01-05 13:45:25 +01:00
x
4c056ceb86 implement dao::exec() update, and add missing db_del() to runtime 2023-01-05 11:02:55 +01:00
x
acb2131747 fix broken log targets 2023-01-02 15:46:19 +01:00
x
988a622403 Revert "missing log targets"
This reverts commit 6414d55b7e.
2023-01-02 15:17:07 +01:00
x
6414d55b7e missing log targets 2023-01-02 15:15:48 +01:00
x
5702976798 cleanup logging project wide 2023-01-02 14:47:55 +01:00
parazyd
71cd3064d6 Update license year. 2022-12-28 13:06:00 +01:00
parazyd
9acfed6402 Clippy lints. 2022-12-14 12:30:27 +01:00
parazyd
905586a638 cargo fix 2022-12-07 12:53:52 +01:00
parazyd
2854beb2b2 contract/money: Working darkotc integration tests. 2022-12-05 23:57:14 +01:00
parazyd
56628ade87 runtime: Allow db_get in Deploy section. 2022-11-29 16:28:01 +01:00
parazyd
e8ebb9d240 Faucet airdrop implementations and interaction with drk.
Transaction verification from state.rs still has some issue on wasm execution.
A proper verification API has to be written next to simplify things, avoid
convoluted code repetition, and have less places where things can go wrong.
2022-11-23 20:45:59 +01:00
parazyd
fec2304dd8 contract/money: Implement transaction builder. 2022-11-17 20:29:38 +01:00
parazyd
84caaf2c3a runtime: Add wasm bincode to WasmStore after successful deploy execution. 2022-11-16 14:26:37 +01:00
parazyd
72f345e6de contrib: Add script for attaching missing license headers to .rs files. 2022-11-15 22:14:28 +01:00
parazyd
fe611fbbcd consensus: Deploy native money contract on startup. 2022-11-15 19:33:34 +01:00
parazyd
17e5d01b18 sdk/db: Constant error codes for db 2022-11-15 18:56:01 +01:00
parazyd
9c0a0e1c10 runtime: Add db.contains_key functionality. 2022-11-15 17:10:54 +01:00
x
a32d72754b dao2 verify zk proofs 2022-11-08 12:41:06 +00:00
parazyd
8c27c24473 make fix 2022-11-06 21:29:06 +01:00
parazyd
f2dd798f2d Clear up most warnings and have test units pass. 2022-11-06 21:17:36 +01:00
x
f8d2790bb7 dao2: working merkle_add() 2022-11-06 18:24:41 +00:00
x
14807bcde6 initial basic dao mint in wasm 2022-11-06 17:39:05 +00:00
x
237d733a83 wasm: give get_metadata() access to db_get() 2022-11-06 12:26:29 +00:00
x
f2aac746cb remove get access from update and deploy functions 2022-11-06 01:22:15 +00:00
x
6cc6bb12b3 wasm: wagie data utility functions 2022-11-06 00:55:42 +00:00
x
3c69a9fc04 Merge branch 'master' of github.com:darkrenaissance/darkfi 2022-11-05 18:23:08 +00:00
x
1c9ff6fdba wasm: fix error codes situation so we get contract errors from inside wasm 2022-11-05 18:12:59 +00:00
parazyd
60934a20d4 runtime: WIP db get 2022-11-05 18:48:28 +01:00
x
3aba630188 wasm: add metadata() functionality 2022-11-05 15:08:26 +00:00
parazyd
3bdd6cf1c9 runtime: Implement sled tree batch writes. 2022-11-05 14:47:30 +01:00
lunar-mining
bdd0dd3362 cargo fmt 2022-11-05 12:51:16 +01:00
parazyd
96b159c00c wasm: Working db_init() 2022-11-05 12:41:44 +01:00
x
695f86f7c6 wasm: fix most of the warnings 2022-11-05 10:19:23 +00:00
x
346a6a5802 wasm: make functions use the same generic underlying call(), and able to return data through env with set_return_data() 2022-11-05 09:55:27 +00:00
parazyd
ff952172fa runtime: Pass ContractId to section functions. 2022-11-05 10:35:34 +01:00
parazyd
9848a1e5f5 runtime: sled blockchain access 2022-11-04 14:41:40 +01:00
parazyd
0add5ee26d Add missing license headers. 2022-11-04 10:39:24 +01:00
parazyd
84bf94d856 runtime: Cleanup and add payload support to init() 2022-11-04 10:35:29 +01:00
x
87be69f103 wasm: add example passing tx into state_transition() 2022-11-04 04:25:52 +00:00