hinto-janai
d3b7ca3e65
cuprated: RPC handlers ( #355 )
...
* import diffs
* small fixes, hardfork changes
* lints
* hard_fork
* apply diffs
* review fixes
* binaries/cuprated/src/rpc/request: `pub(super)` -> `pub(crate)`
* add `BlockChainContextService`, `on_get_block_hash`
* map `tower::BoxError` to `anyhow::Error`
* get_block
* connection_info
* hard_fork_info
* set_bans
* get_bans
* banned
* flush_transaction_pool
* get_output_histogram
* get_coinbase_tx_sum
* get_version
* get_fee_estimate
* get_alternate_chains
* relay_tx
* response_base: `fn` -> `const`
* get_transaction_pool_backlog
* prune
* calc_pow
* add_aux_pow
* get_tx_ids_loose
* generate_blocks
* get_info
* sync_info
* get_miner_data
* `BlockchainManagerRequest` docs
* docs, `ConnectionInfo`, `AddressType`
* sig docs, remove `HardForks` request
* clean imports
* fix `on_get_block_hash`, `generate_blocks`, `get_block_headers_range`
* fix `get_info`, `banned`
* fix `sync_info`
* fix `get_miner_data`
* initial `add_aux_pow` impl
* fix `calculate_pow`
* add_aux_pow
* `get_output_distribution`
* checkup
* `find_nonce()` + `add_aux_pow` async wrapper
* fixes
* `helper::block_header`
* review fixes
* fixes
* doc fix
* p2p: remove tmp `AddressBookRequest::NextNeededPruningSeed`
* lint/todo fixes
* fix bans
* merge diffs from https://github.com/Cuprate/cuprate/pull/272
* `cuprate_types::rpc`, `from` module for `cuprate_rpc_types`
* `rpc-types` -> `types` pt. 2
* type fixes, move fn to `-helper`
* clippy fix
* rpc: move json-rpc types away from macros
* !!
* move types, fix orphan impl + cyclic dependency
* architecture book
* fix json-rpc handlers
* remove `::<N>`
* fix clippy
* fix type defaults, use `Hex`
* return defaults, hex test
* json_rpc: get_block_template
* `/get_transactions`
* `/is_key_image_spent`
* !!
* `/get_transactions` hex
* most of `/send_raw_transaction`
* `/send_raw_transaction`, `/save_bc`, response_base
* `/peerlist`
* `/get_transaction_pool`
* `/get_transaction_pool_stats`
* finish other draft
* get_blocks_by_height, shared::get_outs
* `/get_o_indexes.bin`
* `/get_output_distribution.bin`
* clippy
* `/get_blocks.bin`
* rpc-interface: add restricted invariant comments
* restricted json-rpc error
* get_output_distribution
* module cleanup
* txpool: all_hashes
* `HexVec`
* fix `get_txid` for `/get_outs`
miner transaction was not accounted for
* fix doc tests
* fix conflict
* json-rpc fixes
* `get_transaction_pool_hashes` fix
* rpc/interface: fix cargo hack
* review fixes
* cargo hack fix
* use `monero_address`
* Update binaries/cuprated/src/rpc/handlers/json_rpc.rs
Co-authored-by: Boog900 <boog900@tutanota.com>
* Update binaries/cuprated/src/rpc/handlers/json_rpc.rs
Co-authored-by: Boog900 <boog900@tutanota.com>
* review fixes
* fix `get_hashes`
* fix `is_key_image_spent`
* fix key image types
* fixes
* fix book
* output timelock fix + `blockchain_context()`
* fix
* fix
* fix
* fix getblocks.bin
* `cuprate_types` doc
* output fix
* fixme
* rct output fix
* fix cast
* clippy
---------
Co-authored-by: Boog900 <boog900@tutanota.com>
2025-04-08 17:09:43 +01:00
5c2b56c78e
Update to experimental monero oxide api ( #386 )
...
* add specific method for context
* add new statemachine for tx verification
* fix consensus crates build
* working builds
* fix CI
* add docs
* fix CI
* fix docs
* fix clippy
* cleanup
* add docs to `blockchain_context`
* fix doc tests
* add output cache
* new monero-serai
* todo
* todo
* Revert "new monero-serai"
This reverts commit fe3f6acc676fe59e794d5f92f07f76445db35199.
* use indexmap to request outputs
* clean up
* fix typos
* fix CI
* fix cargo hack
* fix reorgs
* check if a block is already present before adding it to the alt block cache
* fmt
* update to new monero oxide API
* fmt & fix cache
* update config values
* fix tests
* fix no-std builds
2025-03-06 19:03:25 +00:00
6a9356b552
consensus: Batch get outputs ( #382 )
...
* add specific method for context
* add new statemachine for tx verification
* fix consensus crates build
* working builds
* fix CI
* add docs
* fix CI
* fix docs
* fix clippy
* cleanup
* add docs to `blockchain_context`
* fix doc tests
* add output cache
* new monero-serai
* todo
* todo
* Revert "new monero-serai"
This reverts commit fe3f6acc676fe59e794d5f92f07f76445db35199.
* use indexmap to request outputs
* clean up
* fix typos
* fix CI
* fix cargo hack
* update doc comment
* fix non-rct miner tx error
* Apply suggestions from code review
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* Update storage/database/src/backend/redb/env.rs
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
---------
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
2025-03-06 16:17:09 +00:00
d8d1e34266
Consensus: Improve API ( #366 )
...
* add specific method for context
* add new statemachine for tx verification
* fix consensus crates build
* working builds
* fix CI
* add docs
* fix CI
* fix docs
* fix clippy
* cleanup
* add docs to `blockchain_context`
* fix doc tests
* review fixes
* fix cargo doc
2025-01-28 22:25:20 +00:00
hinto-janai
c840053854
consensus: enable workspace lints ( #295 )
...
* consensus: enable workspace lints
* rules/fast-sync: enable workspace lints
* typos
* fixes
* `PoW` -> proof-of-work
2024-09-21 01:32:03 +01:00
1a178381dd
Storage: split the DB service abstraction ( #237 )
...
* split the DB service abstraction
* fix ci
* misc changes
* Apply suggestions from code review
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* review fixes
* Update storage/service/Cargo.toml
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* Update storage/service/Cargo.toml
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* fix clippy
* fix doc
* `bc` -> `blockchain`
* doc fixes
* Update storage/service/README.md
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* cargo fmt
---------
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
2024-08-05 21:47:30 +01:00
0622237d19
Consensus: use cuprate-types
types ( #145 )
...
* move consensus database to /types
* fix `storage` builds
* unify `VerifiedBlockInformation`
* fix docs
* change `Database` trait wording
* order imports
* service -> blockchain
* Apply suggestions from code review
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* fix typo
* fix key_images_spent
* add back todo
* fix tests
* service -> blockchain 2
* update docs
* update docs 2
---------
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
2024-06-04 18:19:35 +01:00
889e15738b
Cleanup & Document consensus ( #65 )
...
* change monero-consensus to cuprate-consensus-rules
* document the context service
* remove the mutex on blockchain context
* comment the context caches
* add back tokio
* document block checks
* typo
* keep tha amount of outputs with a certain amount in the output cache
* typo
* nuke cross-block batch verification
* remove RPC scanner
* change how contextual data is got.
* fmt & clippy fixes
* typo
* cargo update
* restore Cargo.lock
* add a verify tx test.
+ fixes an issue with verifying signatures after BPs
* clippy
* remove bad test
* add mores tests and fix a couple bugs
* typos
* move tests and add some more
* typo
* remove scan_chain docs
* fix check for duplicate txs when duplicates are not sequential
* add a proptest for dup txs
* cache tx verification state
* doc updates + move `Vec` to `Arc<[]>`
* clippy
* misc changes
* Apply suggestions from code review
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
Co-authored-by: SyntheticBird <118022351+SyntheticBird45@users.noreply.github.com>
* fix fmt
* review changes
---------
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
Co-authored-by: SyntheticBird <118022351+SyntheticBird45@users.noreply.github.com>
2024-05-31 01:52:12 +01:00