Skip to content
Merged
Show file tree
Hide file tree
Changes from 99 commits
Commits
Show all changes
105 commits
Select commit Hold shift + click to select a range
ff8f816
fixed-bytes: add `serde`, document feature flags
hinto-janai Jul 10, 2024
bfe4df4
Merge branch 'main' into rpc
hinto-janai Jul 11, 2024
9a91a30
fixed-bytes: add derives
hinto-janai Jul 11, 2024
950ef25
rpc: add `as _` syntax to macro
hinto-janai Jul 11, 2024
ce7ad2e
rpc: use `ByteArrayVec` and `ContainerAsBlob` for binary types
hinto-janai Jul 11, 2024
8d1e389
Merge branch 'main' into rpc
hinto-janai Jul 11, 2024
a97af42
fixed-bytes: re-add derives
hinto-janai Jul 11, 2024
66bb3fc
rpc-types: dedup default value within macro
hinto-janai Jul 11, 2024
3b81df9
readme: fixed bytes section
hinto-janai Jul 11, 2024
f087481
types: custom epee - `BlockCompleteEntry`
hinto-janai Jul 12, 2024
db4b30a
types: custom epee - `KeyImageSpentStatus`
hinto-janai Jul 12, 2024
b54b9bc
types: custom epee - `PoolInfoExtent`
hinto-janai Jul 12, 2024
4638871
types: add `Status::Other(String)` variant
hinto-janai Jul 12, 2024
b924766
types: custom epee - `TxEntry`, add `read_epee_field` macro
hinto-janai Jul 12, 2024
2adcbfa
bin: custom epee - `GetBlocks`
hinto-janai Jul 13, 2024
55a623e
Merge branch 'main' into rpc-serde
hinto-janai Jul 13, 2024
9ad9023
types: add `serde.rs`
hinto-janai Jul 14, 2024
dc07d93
misc: make `TxEntry` an `enum`, impl serde
hinto-janai Jul 14, 2024
e43e95f
misc: `unimplemented!()` for `TxEntry`'s epee
hinto-janai Jul 14, 2024
705f72b
types: add `BlockCompleteEntry`
hinto-janai Jul 14, 2024
ac5813e
rpc: replace `BlockCompleteEntry` with `cuprate-types`
hinto-janai Jul 14, 2024
1b2ca7d
types: document `BlockCompleteEntry`
hinto-janai Jul 14, 2024
74d3567
bin: fix `number_of_fields` for `GetBlocksResponse`
hinto-janai Jul 15, 2024
7f3297c
misc: add `Distribution`
hinto-janai Jul 15, 2024
a5dde87
distribution: add todo
hinto-janai Jul 15, 2024
093802e
misc fixes
hinto-janai Jul 15, 2024
1621f7b
readme: add `(De)serialization invariants`
hinto-janai Jul 15, 2024
395baf5
distribution: compress variants
hinto-janai Jul 15, 2024
0b71626
types: add `block_complete_entry.rs`
hinto-janai Jul 16, 2024
231aab8
net: fix imports
hinto-janai Jul 16, 2024
1d5e959
p2p: fix imports
hinto-janai Jul 16, 2024
4ef0cbb
turn off default-features
hinto-janai Jul 16, 2024
86c4fde
p2p: fix imports
hinto-janai Jul 16, 2024
a249a3d
misc fixes
hinto-janai Jul 16, 2024
afabd39
Update net/wire/Cargo.toml
hinto-janai Jul 16, 2024
ecc501c
distribution: module doc
hinto-janai Jul 16, 2024
42e5905
wire: re-export types
hinto-janai Jul 16, 2024
6099110
Merge branch 'types' into rpc-serde
hinto-janai Jul 16, 2024
054079f
test-utils: add `crate::rpc::types` module
hinto-janai Jul 16, 2024
5e2c0aa
test-utils: conditional json doc-tests
hinto-janai Jul 17, 2024
28c5d76
Merge branch 'main' into rpc-serde
hinto-janai Jul 17, 2024
58c64ca
bin: use enum for `GetBlocksResponse`
hinto-janai Jul 17, 2024
d5c502b
misc: use lowercase for stringify
hinto-janai Jul 17, 2024
28aafe9
json: add test data, fix macro doc tests
hinto-janai Jul 17, 2024
8ed314a
json: add all data
hinto-janai Jul 17, 2024
f71acce
other: add all data
hinto-janai Jul 18, 2024
95ed1f4
bin: add skeleton
hinto-janai Jul 18, 2024
b42584e
docs
hinto-janai Jul 18, 2024
e18081c
move type to correct file
hinto-janai Jul 18, 2024
11a2478
remove duplicated fields for custom epee
hinto-janai Jul 18, 2024
7616a1e
rpc: `client/{client,constants}.rs` -> `client.rs`
hinto-janai Jul 18, 2024
a716538
lib.rs: remove `clippy::module_inception`
hinto-janai Jul 18, 2024
2502544
Merge branch 'rpc-serde' into rpc-json-test
hinto-janai Jul 18, 2024
ed81b16
macros: add json doc test macro
hinto-janai Jul 19, 2024
302c268
json: add some tests
hinto-janai Jul 19, 2024
5f83e37
json: add doc-test for all types
hinto-janai Jul 19, 2024
ed09976
Merge branch 'main' into rpc-json-test
hinto-janai Jul 19, 2024
ad9e1c1
add all other JSON doc-tests
hinto-janai Jul 20, 2024
1f8f5a9
move doc-test macros to files
hinto-janai Jul 21, 2024
e7dbd7b
base: add doc-tests
hinto-janai Jul 21, 2024
ea8f2e6
rpc: add `cuprate-rpc-interface` skeleton files
hinto-janai Jul 21, 2024
73c11a4
traits
hinto-janai Jul 22, 2024
35907c5
json_rpc_method: add `.is_restricted()`
hinto-janai Jul 22, 2024
aaf99b8
add route fn signatures
hinto-janai Jul 23, 2024
e4097e5
types: add rpc enums
hinto-janai Jul 23, 2024
2c3ebfe
interface: routes, types
hinto-janai Jul 23, 2024
61ab466
interface: simplify routes
hinto-janai Jul 23, 2024
b896676
rewrite interface fns
hinto-janai Jul 24, 2024
b2d7e8a
types: remove `()` type alias, add `(restricted)`
hinto-janai Jul 24, 2024
5dad516
types: add `other::InPeers`
hinto-janai Jul 24, 2024
fa576ed
interface: routes
hinto-janai Jul 24, 2024
50af75f
types: fix `is_restricted()`
hinto-janai Jul 24, 2024
1e46c98
interface: reorder short-circuit bool
hinto-janai Jul 24, 2024
2d95a28
clean up traits/bounds
hinto-janai Jul 25, 2024
476f6ee
types: remove `axum` feature
hinto-janai Jul 25, 2024
35d1ceb
interface: cleanup unused imports
hinto-janai Jul 25, 2024
d57a5c9
interface: call handler in routes
hinto-janai Jul 25, 2024
cad534b
Merge branch 'main' into rpc-json-test
hinto-janai Jul 25, 2024
f752d79
Merge branch 'main' into rpc-json-test
hinto-janai Jul 25, 2024
0438c48
json: TODO distribution test
hinto-janai Jul 25, 2024
b5b39b6
Merge branch 'rpc-json-test' into rpc-interface
hinto-janai Jul 26, 2024
d7379ea
interface: readme intro
hinto-janai Jul 26, 2024
1ccabec
combine `RpcHandler` + `RpcService`, add `RpcDummyHandler`
hinto-janai Jul 26, 2024
1b3ccea
interface: readme docs + test
hinto-janai Jul 27, 2024
4377ffe
`IsRestricted` -> `RpcCall`
hinto-janai Jul 28, 2024
3c2662c
Merge branch 'main' into rpc-interface
hinto-janai Jul 28, 2024
25d6435
fix no input route problem
hinto-janai Jul 29, 2024
82301bf
interface: `RpcHandlerDummy` docs
hinto-janai Jul 30, 2024
c96b050
interface: crate docs
hinto-janai Jul 31, 2024
85eb23f
replace `create_router` with `RouterBuilder`
hinto-janai Jul 31, 2024
fad423b
types: docs
hinto-janai Jul 31, 2024
043d27c
types: doc `JsonRpc{Request,Response}`
hinto-janai Aug 1, 2024
7f706b5
types: readme docs
hinto-janai Aug 1, 2024
b080f6f
interface: doc `route/`
hinto-janai Aug 1, 2024
0094612
Merge branch 'main' into rpc-interface
hinto-janai Aug 1, 2024
2ef6080
interface: fix `todo!()`
hinto-janai Aug 1, 2024
18c9061
interface: allow customizing HTTP method on route functions
hinto-janai Aug 1, 2024
cd9b6b0
interface: fix tests
hinto-janai Aug 1, 2024
d8eb455
fix derives
hinto-janai Aug 1, 2024
04996d1
Update rpc/interface/README.md
hinto-janai Aug 5, 2024
bf7583f
Update rpc/interface/README.md
hinto-janai Aug 5, 2024
cc01145
interface: make `RpcHandler`'s `Future` generic
hinto-janai Aug 5, 2024
9bb081c
interface: add JSON-RPC notification todo
hinto-janai Aug 5, 2024
b3d1cba
formatting
hinto-janai Aug 5, 2024
a4a7817
interface: use associated type bound for `RpcHandler`'s `Future`
hinto-janai Aug 5, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
196 changes: 196 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions rpc/interface/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,24 @@ repository = "https://github.com/Cuprate/cuprate/tree/main/rpc/cuprate-rpc-inte
keywords = ["cuprate", "rpc", "interface"]

[features]
default = ["dummy", "serde"]
dummy = []

[dependencies]
cuprate-epee-encoding = { path = "../../net/epee-encoding", default-features = false }
cuprate-json-rpc = { path = "../json-rpc", default-features = false }
cuprate-rpc-types = { path = "../types", features = ["serde", "epee"], default-features = false }
cuprate-helper = { path = "../../helper", features = ["asynch"], default-features = false }

axum = { version = "0.7.5", features = ["json"], default-features = false }
serde = { workspace = true, optional = true }
serde_json = { workspace = true, features = ["std"] }
tower = { workspace = true }
paste = { workspace = true }
futures = { workspace = true }

[dev-dependencies]
axum = { version = "0.7.5", features = ["json", "tokio", "http2"] }
serde_json = { workspace = true, features = ["std"] }
tokio = { workspace = true, features = ["full"] }
ureq = { version = "2.10.0", features = ["json"] }
Loading