Commit graph

287 commits

Author SHA1 Message Date
Boog900
d3e784d432
fix merge
Some checks failed
Audit / audit (push) Has been cancelled
Deny / audit (push) Has been cancelled
2024-06-06 02:12:15 +01:00
Boog900
9edcb760f7
Merge branch 'main' into block-downloader 2024-06-06 01:36:15 +01:00
hinto-janai
6df67bb9d3
rpc: add initial crates (#146)
Some checks failed
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
* add `rpc/` crates

* rpc: fix `monero-rpc-server` -> `monero-rpc-types`

* rpc: add skeleton `rpc/json-rpc`

* remove `cuprate-rpc-server`, add `json-rpc`
2024-06-05 15:35:08 +01:00
0622237d19
Consensus: use cuprate-types types (#145)
Some checks failed
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
* 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
b510739701
P2P: Network init (#130)
* p2p changes

* clippy

* a few more docs

* init cuprate-p2p

* remove some unrelated code and add some docs

* start documenting client_pool.rs

* add more docs

* typo

* fix docs

* use JoinSet in connection maintainer

* small changes

* add peer sync state svc

* add broadcast svc

* add more docs

* add some tests

* add a test

* fix merge

* add another test

* unify PeerDisconnectFut and add more docs

* start network init

* add an inbound connection server

* remove crate doc for now

* fix address book docs

* fix leak in client pool

* correct comment

* fix merge + add some docs

* fix doc

* dandelion_tower -> dandelion-tower

* fix async-buffer builds

* check if incoming peers are banned

* add interface methods

* update docs

* use a JoinSet for background network tasks

* Apply suggestions from code review

Co-authored-by: hinto-janai <hinto.janai@protonmail.com>

* Update p2p/monero-p2p/src/services.rs

Co-authored-by: hinto-janai <hinto.janai@protonmail.com>

---------

Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
2024-06-04 18:19:25 +01:00
Boog900
fd8885174b
more checks on incoming data 2024-06-04 02:42:53 +01:00
Boog900
51e67163a8
Keep a longer of queue of blocks to get 2024-06-03 16:08:10 +01:00
Boog900
44c7ad4992
dynamic batch size changes 2024-06-01 02:02:45 +01:00
Boog900
334a62115b
Merge branch 'network-init' into block-downloader 2024-06-01 00:36:48 +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
Boog900
cbcfbff878
use a JoinSet for background network tasks 2024-05-30 21:14:28 +01:00
Boog900
cce4ef96dd
update docs 2024-05-30 18:24:23 +01:00
Boog900
d84e8a48f8
add interface methods 2024-05-30 17:02:38 +01:00
Boog900
fd7225e673
check if incoming peers are banned 2024-05-30 02:03:48 +01:00
Boog900
a4ca123589
fix async-buffer builds 2024-05-30 01:27:27 +01:00
Boog900
a53279a8c6
Merge branch 'main' into network-init 2024-05-30 01:25:59 +01:00
Boog900
384818f57f
dandelion_tower -> dandelion-tower 2024-05-30 01:25:55 +01:00
hinto-janai
d21160868c
books: add skeleton and docs (#141)
* update `books/`

* update CONTRIBUTING.md

* .gitignore: ignore built books

* add dummy `books/architecture/`

* remove some changes from CONTRIBUTING.md

out of scope, will be in another PR

* add docs/books to LICENSE

* formatting
2024-05-30 01:19:46 +01:00
Boog900
1ae87734fe
dynamic batch sizes 2024-05-29 23:47:32 +01:00
hinto-janai
c50d9642be
storage: create Cargo.toml for {database, cuprate-txpool} (#140) 2024-05-29 20:00:29 +01:00
hinto-janai
d052fbedf1
repo: add issue templates (#137)
* add issue templates

* add `question.md`

* fix bug.md

* fix feature.md

* bug.md: fix spacing
2024-05-29 18:34:32 +01:00
Boog900
7e19a59d94
working block downloader 2024-05-29 15:22:44 +01:00
hinto-janai
4876e159e7
repo: add skeleton directories, fix labels (#139)
* `database/` -> `storage/`, create skeleton `storage/` crates

* add skeleton root directories

* books: add skeleton

* ci: fix labeler.yml

* fix CONTRIBUTING.md

* fix workspace Cargo.toml

* fix `storage/`

* rename helper fs fn, `cuprate_database` -> `cuprate_blockchain`

* fix Cargo.toml

* cuprate-blockchain: revert find-and-replace

Since it has to be ported to the book anyway, there's not much
reason to update this and create review diffs.

* labeler.yml: remove `A-docs` from `books/` changes

Although books are documentation,
the `A-books` label already exists for this
2024-05-29 02:18:30 +01:00
Boog900
6979dba92d
add test bin 2024-05-29 02:05:04 +01:00
Boog900
759369dd0a
check for free peers and handle batch response 2024-05-29 01:40:42 +01:00
Boog900
eb69895278
spawn task whe getting blocks 2024-05-27 01:31:07 +01:00
Boog900
851a898b03
Merge branch 'main' into block-downloader 2024-05-27 01:02:22 +01:00
Boog900
fa99fd5343
move block downloader to struct 2024-05-27 01:00:55 +01:00
hinto-janai
45656fe653
repo: adopt rust-lang label system (#136)
* contributing: add `Keeping track of issues and PRs` section

* add `labeler.yml`

* more labels

* update labels

* update `.github/labeler.yml`

* update `CONTRIBUTING.md`

* doc `.github` files

* wording fix

* add `A-dependency`
2024-05-27 00:57:21 +01:00
hinto-janai
59a49b93ab
repo: update license (#134)
* add MIT license

* update LICENSE.md

* net: remove license files

* fix LICENSE-MIT formatting

use github formatting
2024-05-27 00:39:32 +01:00
Boog900
3270560711
add chain_tracker 2024-05-25 00:53:13 +01:00
hinto-janai
1e857416c9
database/helper: define statics within functions (#135) 2024-05-24 02:16:39 +01:00
e8b20e6115
P2P: async buffer (#109)
* impl async buffer

* clippy

* review comments
2024-05-24 02:15:49 +01:00
Boog900
596fed775a
initial chain search 2024-05-24 02:11:49 +01:00
Boog900
55c744512d
fix doc 2024-05-23 02:03:09 +01:00
Boog900
5a0d4a4e94
init block downloader 2024-05-23 01:34:08 +01:00
Boog900
3365af9af7
Merge branch 'async-buffer' into block-downloader 2024-05-22 22:28:17 +01:00
Boog900
e14ca2b846
review comments 2024-05-22 22:22:59 +01:00
Boog900
73041b9fe1
Merge branch 'main' into async-buffer 2024-05-22 22:03:28 +01:00
Boog900
20f9a063ea
fix merge + add some docs 2024-05-22 21:43:45 +01:00
Boog900
7f5e44f7b1
Merge branch 'main' into network-init 2024-05-22 01:59:47 +01:00
0158c6671a
P2P: Peer sync state svc (#128)
* p2p changes

* clippy

* a few more docs

* init cuprate-p2p

* remove some unrelated code and add some docs

* start documenting client_pool.rs

* add more docs

* typo

* fix docs

* use JoinSet in connection maintainer

* small changes

* add peer sync state svc

* add a test

* fix merge

* add another test

* unify PeerDisconnectFut and add more docs

* Apply suggestions from code review

Co-authored-by: hinto-janai <hinto.janai@protonmail.com>

* dif -> diff

* move comment

* Update pruning/src/lib.rs

Co-authored-by: hinto-janai <hinto.janai@protonmail.com>

* Apply suggestions from code review

Co-authored-by: hinto-janai <hinto.janai@protonmail.com>

---------

Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
2024-05-22 01:56:39 +01:00
02cd963e57
P2P: Broadcast svc (#129)
* p2p changes

* clippy

* a few more docs

* init cuprate-p2p

* remove some unrelated code and add some docs

* start documenting client_pool.rs

* add more docs

* typo

* fix docs

* use JoinSet in connection maintainer

* small changes

* add broadcast svc

* add more docs

* add some tests

* Apply suggestions from code review

Co-authored-by: hinto-janai <hinto.janai@protonmail.com>

* review comments

---------

Co-authored-by: hinto-janai <hinto.janai@protonmail.com>
2024-05-21 23:19:52 +01:00
Boog900
7a22aa6500
correct comment 2024-05-20 18:48:30 +01:00
Boog900
79a14120d9
fix leak in client pool 2024-05-19 21:58:30 +01:00
Boog900
76c0ad33b0
fix address book docs 2024-05-19 19:05:06 +01:00
Boog900
f28321a7ec
remove crate doc for now 2024-05-19 18:50:10 +01:00
Boog900
2fd74dec14
add an inbound connection server 2024-05-19 18:35:07 +01:00
Boog900
f818b6a5ff
start network init 2024-05-19 01:00:01 +01:00
Boog900
8eaaac53ca
Merge branch 'broadcast-svc' into network-init 2024-05-18 18:38:39 +01:00