Boog900
a3c9b4e994
Merge branch 'main' into p2p-request-handler
Deny / audit (push) Has been cancelled
2024-11-20 19:23:25 +00:00
c54bb0c8b2
P2P: Change ClientPool
to PeerSet
( #337 )
...
CI / fmt (push) Waiting to run
CI / typo (push) Waiting to run
CI / ci (macos-latest, stable, bash) (push) Waiting to run
CI / ci (ubuntu-latest, stable, bash) (push) Waiting to run
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Waiting to run
Deny / audit (push) Waiting to run
Doc / build (push) Waiting to run
Doc / deploy (push) Blocked by required conditions
* add WeakClient
* todo
* client pool -> peer set
* more peer set changes
* fix cuprated builds
* add docs
* more docs + better disconnect handling
* more docs
* fix imports
* review fixes
2024-11-20 01:37:52 +00:00
Boog900
e11568357a
sort imports
Deny / audit (push) Has been cancelled
2024-11-18 16:39:29 +00:00
Boog900
1fc7c0a577
more doc updates
2024-11-18 16:23:43 +00:00
Boog900
49db43180f
doc updates
2024-11-18 16:04:10 +00:00
Boog900
efa092572a
Merge branch 'main' into p2p-request-handler
2024-11-18 15:27:04 +00:00
hinto-janai
e8598a082d
books/architecture: add Monero oddities
( #343 )
...
Architecture mdBook / build (push) Has been cancelled
CI / fmt (push) Has been cancelled
CI / typo (push) Has been cancelled
CI / ci (macos-latest, stable, bash) (push) Has been cancelled
CI / ci (ubuntu-latest, stable, bash) (push) Has been cancelled
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Has been cancelled
Doc / build (push) Has been cancelled
Doc / deploy (push) Has been cancelled
* add `oddities/`
* swap `Expected`, `Why`
2024-11-18 15:21:52 +00:00
241088e273
Wire: fix IPv4 Endianness ( #342 )
...
CI / fmt (push) Waiting to run
CI / typo (push) Waiting to run
CI / ci (macos-latest, stable, bash) (push) Waiting to run
CI / ci (ubuntu-latest, stable, bash) (push) Waiting to run
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Waiting to run
Doc / build (push) Waiting to run
Doc / deploy (push) Blocked by required conditions
* fix IPv4 Endianness
* fix import order
2024-11-17 20:32:41 +00:00
hinto-janai
0f1ad6db1b
Cargo.toml: move commas ( #340 )
...
CI / fmt (push) Has been cancelled
CI / typo (push) Has been cancelled
CI / ci (macos-latest, stable, bash) (push) Has been cancelled
CI / ci (ubuntu-latest, stable, bash) (push) Has been cancelled
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Has been cancelled
Deny / audit (push) Has been cancelled
Doc / build (push) Has been cancelled
Doc / deploy (push) Has been cancelled
cargo.toml: move comma
2024-11-13 11:01:15 +00:00
5a5f88cb13
types: fix pruned BlockCompleteEntry
( #338 )
...
CI / fmt (push) Has been cancelled
CI / typo (push) Has been cancelled
CI / ci (macos-latest, stable, bash) (push) Has been cancelled
CI / ci (ubuntu-latest, stable, bash) (push) Has been cancelled
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Has been cancelled
Doc / build (push) Has been cancelled
Doc / deploy (push) Has been cancelled
fix pruned `BlockCompleteEntry`
2024-11-11 23:16:08 +00:00
525e20e841
Fix ci and loosen version requirements ( #335 )
...
CI / fmt (push) Has been cancelled
CI / typo (push) Has been cancelled
CI / ci (macos-latest, stable, bash) (push) Has been cancelled
CI / ci (ubuntu-latest, stable, bash) (push) Has been cancelled
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Has been cancelled
Deny / audit (push) Has been cancelled
Doc / build (push) Has been cancelled
Doc / deploy (push) Has been cancelled
* add deny exception + loosen version requirements
* add a comment
* remove `expect`
2024-11-04 15:22:43 +00:00
SyntheticBird
b6c4adc83a
p2p: Implement P2P Bucket data structure ( #329 )
...
CI / typo (push) Has been cancelled
CI / ci (macos-latest, stable, bash) (push) Has been cancelled
Architecture mdBook / build (push) Has been cancelled
Audit / audit (push) Has been cancelled
CI / fmt (push) Has been cancelled
CI / ci (ubuntu-latest, stable, bash) (push) Has been cancelled
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Has been cancelled
Deny / audit (push) Has been cancelled
Doc / build (push) Has been cancelled
Doc / deploy (push) Has been cancelled
Implements P2P Bucket data structure
This commit implements a "Bucket" data structure that is a collection
of data that discriminates its items into "buckets" (vector of size N)
following a defined function.
- Implements Bucket data structure and Bucketable trait
- Implements Bucketable for Ipv4Addr
- Added the crate to the workspace dependencies
- Added arrayvec as a dependency
2024-11-02 00:45:56 +00:00
hinto-janai
372cab24d7
cuprated: internal signatures required for RPC pt. 2 ( #320 )
...
* apply diffs
* clippy
* fix tests
* rpc: fix tests
* remove `BlockchainManagerRequest::Overview`
* cuprated/p2p: fix `ConnectionInfo`
* move `CalculatePow`
* remove `AddAuxPow`
* move `Spans` and `NextNeededPruningSeed`
* factor types into `cuprate-types`
* scope cargo features
* fix/doc type serde
* Update binaries/cuprated/src/rpc/request/address_book.rs
Co-authored-by: Boog900 <boog900@tutanota.com>
* Update binaries/cuprated/src/rpc/request/blockchain_context.rs
Co-authored-by: Boog900 <boog900@tutanota.com>
* Update binaries/cuprated/src/rpc/request/blockchain_manager.rs
Co-authored-by: Boog900 <boog900@tutanota.com>
* fmt
* txpool: collapse `TxEntry`
* `ConnectionId`
* fix import
* fix bin
---------
Co-authored-by: Boog900 <boog900@tutanota.com>
2024-11-01 22:25:55 +00:00
44981f2b24
CI: add cargo hack ( #170 )
...
* add workflow
* fix errors
* fix workflow
* install dependencies
* fix more errors
* Update CONTRIBUTING.md
* Update CONTRIBUTING.md
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* fix hack + enable it for cuprate-database
* move hack to main CI
* fix docs
* fix ci formatting
* fix txpool tests
* fix CONTRIBUTING.md formatting
* service -> tower::Service
* review fixes
* review fixes
* fix CI
---------
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
2024-11-01 20:22:14 +00:00
Boog900
a14f122568
misc changes
2024-11-01 15:13:42 +00:00
Boog900
d0055f16bd
fix build
Audit / audit (push) Has been cancelled
Deny / audit (push) Has been cancelled
2024-10-31 23:32:32 +00:00
Boog900
d982a48b78
Merge branch 'main' into p2p-request-handler
Audit / audit (push) Waiting to run
Deny / audit (push) Waiting to run
2024-10-31 15:56:37 +00:00
b57ee2f4cf
cuprated: txpool ( #312 )
...
CI / fmt (push) Has been cancelled
CI / typo (push) Has been cancelled
Audit / audit (push) Has been cancelled
CI / ci (macos-latest, stable, bash) (push) Has been cancelled
CI / ci (ubuntu-latest, stable, bash) (push) Has been cancelled
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Has been cancelled
Deny / audit (push) Has been cancelled
Doc / build (push) Has been cancelled
Doc / deploy (push) Has been cancelled
* init dandelion integration
* add dandelion start function
* finish incoming tx handler
* Add tx blob hash table
* Add missing txpool requests
* handle duplicate stem txs
* check txpool on incoming block
* add request to remove tx in new blocks from the pool
* tell the txpool about incoming blocks
* fix merge
* typos
* remove blockchain height from txpool
* add function to start the pool
* add cross network address
* pre-review changes
* fix CI
* review fixes
* review fixes
* abort on DB error
* fix clippy
2024-10-29 15:30:51 +00:00
Boog900
f865ede656
add p2p clearnet init
2024-10-28 00:43:42 +00:00
Boog900
82a2133a8b
Allow IncomingTxHandler
to be given later
2024-10-27 20:00:49 +00:00
SyntheticBird
63216aecae
workspace: Defines cuprate members as workspace dependencies ( #326 )
...
Doc / build (push) Has been cancelled
CI / ci (macos-latest, stable, bash) (push) Has been cancelled
CI / ci (ubuntu-latest, stable, bash) (push) Has been cancelled
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Has been cancelled
Doc / deploy (push) Has been cancelled
Audit / audit (push) Has been cancelled
CI / fmt (push) Has been cancelled
CI / typo (push) Has been cancelled
Deny / audit (push) Has been cancelled
Defines cuprate members as workspace dependencies
- Defines cuprate members as workspace dependencies
- Changed all `path` import into `workspace = true`
Co-authored-by: Boog900 <boog900@tutanota.com>
2024-10-24 23:12:30 +01:00
SyntheticBird
b8e2d00af4
storage: Add common amounts commitment lookup table ( #323 )
...
Add common ammounts commitment lookup table
- Implements `compute_zero_commitment` function in `cuprate-helper::crypto` module.
- Added test that compare the function output with the correct calculation.
- Use of a constant-time algorithm for the lookup table.
- Added according documentation
2024-10-24 22:10:33 +01:00
hinto-janai
4b350e897d
consensus-context: enable workspace lints ( #321 )
...
Audit / audit (push) Has been cancelled
CI / fmt (push) Has been cancelled
CI / typo (push) Has been cancelled
Deny / audit (push) Has been cancelled
Doc / build (push) Has been cancelled
CI / ci (macos-latest, stable, bash) (push) Has been cancelled
CI / ci (ubuntu-latest, stable, bash) (push) Has been cancelled
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Has been cancelled
Doc / deploy (push) Has been cancelled
enable lints, fix 1.82 clippy
2024-10-22 17:35:54 +01:00
SyntheticBird
978d72b6c1
Move consensus context service into a subcrate. ( #318 )
...
Architecture mdBook / build (push) Has been cancelled
Audit / audit (push) Has been cancelled
CI / fmt (push) Has been cancelled
CI / typo (push) Has been cancelled
Doc / deploy (push) Has been cancelled
CI / ci (macos-latest, stable, bash) (push) Has been cancelled
CI / ci (ubuntu-latest, stable, bash) (push) Has been cancelled
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Has been cancelled
Deny / audit (push) Has been cancelled
Doc / build (push) Has been cancelled
Co-authored-by: Boog900 <boog900@tutanota.com>
2024-10-17 00:17:58 +01:00
Boog900
54957c1033
handle incoming txs in p2p request handler
2024-10-14 23:37:16 +01:00
Boog900
511639d1b4
fix merge
Audit / audit (push) Has been cancelled
Deny / audit (push) Has been cancelled
2024-10-14 21:10:09 +01:00
Boog900
5ba2bf020a
Merge branch 'cuprated-txpool' into p2p-request-handler
2024-10-14 21:03:15 +01:00
Boog900
dc482558db
fix merge
2024-10-14 21:02:47 +01:00
Boog900
bb7126bd96
Merge branch 'main' into p2p-request-handler
2024-10-14 20:51:54 +01:00
Boog900
6c1f871d81
remove blockchain height from txpool
Audit / audit (push) Has been cancelled
Deny / audit (push) Has been cancelled
2024-10-14 20:24:12 +01:00
Boog900
bfb4cbf831
typos
2024-10-14 19:31:17 +01:00
Boog900
b8e96cffcb
fix merge
2024-10-14 19:25:00 +01:00
Boog900
e199b8c26d
Merge branch 'main' into cuprated-txpool
2024-10-14 18:56:24 +01:00
Boog900
fb29f32375
tell the txpool about incoming blocks
2024-10-14 18:15:43 +01:00
Boog900
74a07cb8ba
add request to remove tx in new blocks from the pool
2024-10-14 01:00:16 +01:00
Boog900
5ab5b062fd
check txpool on incoming block
2024-10-13 22:43:53 +01:00
Boog900
93fb3c657c
handle duplicate stem txs
2024-10-13 18:35:58 +01:00
Boog900
2d5567e47b
Add missing txpool requests
Audit / audit (push) Has been cancelled
Deny / audit (push) Has been cancelled
2024-10-13 02:20:45 +01:00
Boog900
4ba94f4bb7
Add tx blob hash table
2024-10-13 01:50:48 +01:00
Boog900
b6d94cf780
finish incoming tx handler
2024-10-13 01:22:20 +01:00
hinto-janai
f9b847b227
types: HardFork
improvements ( #309 )
...
Audit / audit (push) Has been cancelled
CI / fmt (push) Has been cancelled
CI / typo (push) Has been cancelled
CI / ci (macos-latest, stable, bash) (push) Has been cancelled
CI / ci (ubuntu-latest, stable, bash) (push) Has been cancelled
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Has been cancelled
Deny / audit (push) Has been cancelled
Doc / build (push) Has been cancelled
Doc / deploy (push) Has been cancelled
* apply diffs
* review fixes
2024-10-11 23:57:43 +01:00
hinto-janai
d43f12ea3f
rpc-types: fix HardForkInfoRequest
( #310 )
...
CI / fmt (push) Waiting to run
CI / typo (push) Waiting to run
CI / ci (macos-latest, stable, bash) (push) Waiting to run
CI / ci (ubuntu-latest, stable, bash) (push) Waiting to run
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Waiting to run
Doc / build (push) Waiting to run
Doc / deploy (push) Blocked by required conditions
* apply diffs
* fix tests
2024-10-11 18:51:16 +01:00
Boog900
d2c7e49e80
add dandelion start function
2024-10-10 21:14:22 +01:00
Boog900
adf592e530
init dandelion integration
2024-10-10 20:12:18 +01:00
hinto-janai
9923d8d69d
cuprated: internal signatures required for RPC ( #297 )
...
CI / fmt (push) Has been cancelled
CI / typo (push) Has been cancelled
CI / ci (macos-latest, stable, bash) (push) Has been cancelled
CI / ci (ubuntu-latest, stable, bash) (push) Has been cancelled
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Has been cancelled
Doc / build (push) Has been cancelled
Doc / deploy (push) Has been cancelled
* add request methods
* add p2p messages
* add txpool msgs
* add blockchain_context msgs
* add blockchain msgs
* fmt
* blockchain_manager msgs
* blockchain manager msg types
* add DB fn signatures
* add statics module
* p2p msg changes, docs
* txpool docs/types
* blockchain docs/types
* `AlternateChains`, docs
* fixes
* remove blockchain write handle, fix docs
* remove `BlockchainReadRequest::Difficulty`
* remove `BlockchainReadRequest::MinerData`
* fix p2p ban types
* `CurrentRxVm` -> `CurrentRxVms`
* storage: remove `Clone` off write handle
* Update p2p/p2p-core/src/ban.rs
Co-authored-by: Boog900 <boog900@tutanota.com>
* fix merge
---------
Co-authored-by: Boog900 <boog900@tutanota.com>
2024-10-08 22:57:09 +01:00
8be369846e
cuprated: Blockchain Manager ( #274 )
...
CI / fmt (push) Waiting to run
CI / typo (push) Waiting to run
CI / ci (macos-latest, stable, bash) (push) Waiting to run
CI / ci (ubuntu-latest, stable, bash) (push) Waiting to run
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Waiting to run
Doc / build (push) Waiting to run
Doc / deploy (push) Blocked by required conditions
Audit / audit (push) Has been cancelled
Deny / audit (push) Has been cancelled
* add cuprated skeleton
* fmt and add deny exception
* add main chain batch handler
* add blockchain init
* very rough block manager
* misc changes
* move more config values
* add new tables & types
* add function to fully add an alt block
* resolve current todo!s
* add new requests
* WIP: starting re-orgs
* add last service request
* commit Cargo.lock
* add test
* more docs + cleanup + alt blocks request
* clippy + fmt
* document types
* move tx_fee to helper
* more doc updates
* fmt
* fix imports
* remove config files
* fix merge errors
* fix generated coins
* handle more p2p requests + alt blocks
* clean up handler code
* add function for incoming blocks
* add docs to handler functions
* broadcast new blocks + add commands
* add fluffy block handler
* fix new block handling
* small cleanup
* increase outbound peer count
* fix merge
* clean up the blockchain manger
* add more docs + cleanup imports
* fix typo
* fix doc
* remove unrelated changes
* improve interface globals
* manger -> manager
* enums instead of bools
* move chain service to separate file
* more review fixes
* add link to issue
* fix syncer + update comment
* fmt
2024-10-08 18:26:07 +01:00
Dmitry Holodov
00bdd6ffaa
cryptonight in pure Rust ( #271 )
...
* removed FORCE_USE_HEAP to from c code
* removed unused headers
* simplifying C code to better understand it
* more c code simplifications
* removed conditional code for the v4 register size
* got one version of keccak working
* not so important hash_process unwound
* got keccak working using the sha3 lib
* hash state unions created
* slow hash through VARIANT1_PORTABLE_INIT is working
* variant 2 init working
* ported version of random_math_init compiling, but not yet passing tests
* fixed hash algorithm, tests working
* formatting
* more macro reduction
* monero AES working in Rust
* fixed AES key expansion expected key size
* first 75% of slow hash converted and working correctly
* adjusted key format for aesb_single_round
* converted some macros to functions
* variant2_integer_math working with test cases
* broke sqrt out of variant2_integer_math for code coverage
* variant2_portable_shuffle_add working with unit tests
* added skein and jh hashes
* 524287 iteration loop producing correct results
* all tests working in Rust
* subarray macros added
* aes simplifications
* code cleanups
* code cleanups part 2
* removed unused blake C code as prep for port to rust
* original blake algorithm in pure rust is working
* converted macro in compress to a lamda
* added module documentation for blake256
* Gave Blake256 a Digest trait
* adding more documentation
* more documentation and cleanup
* more slow hash tests
* removed C code
* misc refactoring
* fix
* lint fix
* additional linting
* downgraded deps to latest stable versions
* made thiserror a workspace dep
* removed commented dead code
* lint fixes
* fixed lint issues in test code
* limited util macro scopes to the crate
* Reformatted dependencies using:
group_imports = "StdExternalCrate"
reorder_modules = true
reorder_impl_items = true
imports_granularity = "crate"
* converted util macros to inline functions
* hex dep comes from workspace
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* panic subarray tests
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* updates to doc comments
* removes extra parens in hash_v4.rs
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* early return to remove indentation in hash_v2.rs
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* gropuing expect annotations in hash_v2.rs
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* use matches macro to simplify code hash_v4.rs
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* remove extra paren in hash_v4.rs
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* eary return to remove indentation in hash_v2.rs
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* minor comment fixes
* early loop continue to remove indentation in hash_v4.rs
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* convert non-capturing llamda to fn in hash_v2.rs
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* another lamda to fn conversion in hash_v2.rs
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* llamda to fn conversion in cnaes.rs
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* 2nd llamda to fn conversion in cnaes.rs
Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
* test lamdas in lib.rs are now functions
* round_fwd optimized
* added myself as an author
* fixed place that needed wrapping_add
* clippy allow->expect change needed after merging master
* moving state to u128
* round_fwd changes sped up fuzzer by 10%
* 1st working version using u128 for long state
* text converted to u128 array
* removed LongState union
* simplified long_state's initialization
* aes round keys now use u128
* CRYPTONIGHT_SBOX is now u32 instead of u8
* cleaner hash_v4 loop unrolling semantics (same peformance)
* switched to a better maintained loop unrolling macro
2024-10-08 16:03:56 +01:00
ca882512fc
P2P: move seed nodes to config ( #306 )
...
CI / fmt (push) Waiting to run
CI / typo (push) Waiting to run
CI / ci (macos-latest, stable, bash) (push) Waiting to run
CI / ci (ubuntu-latest, stable, bash) (push) Waiting to run
CI / ci (windows-latest, stable-x86_64-pc-windows-gnu, msys2 {0}) (push) Waiting to run
Doc / build (push) Waiting to run
Doc / deploy (push) Blocked by required conditions
* move seed nodes to config
* fix tests
2024-10-07 23:36:46 +01:00
Boog900
4af0145baa
sort imports + docs
2024-10-05 22:23:25 +01:00
Boog900
048af975f3
Merge branch 'cuprated-blockchain' into p2p-request-handler
2024-10-05 21:40:31 +01:00