Commit graph

61 commits

Author SHA1 Message Date
Pedro Sánchez Terraf
cfc840f1b2
feat(network): implement GetFilteredDelegationsAndRewardAccounts query (#552)
Signed-off-by: Santiago Carmuega <santiago@carmuega.me>
Co-authored-by: Santiago Carmuega <santiago@carmuega.me>
2024-12-11 22:15:07 -03:00
Pedro Sánchez Terraf
57157b66fa
feat(network): implement GetUTxOByTxIn state query (#550) 2024-12-11 21:57:25 -03:00
Santiago Carmuega
1406d7a599
fix(interop): use correct input order to match redeemers (#487) 2024-07-14 13:48:05 -03:00
Santiago Carmuega
ab2c503d00
chore: fix lint warnings (#470) 2024-06-01 08:05:47 -03:00
Andrew Westberg
0c36f3803e
feat(traverse): Decode Conway block headers properly (#466) 2024-05-24 17:25:24 -03:00
Pi Lanningham
e1504a2463
feat: add a simple Crawler example (#453)
While working on Amaru, we'll likely want to grab lots of example data. This adds a small utility to easily grab one block, one tx, or blocks/txs matching some predicate
2024-05-08 20:11:13 -03:00
Pi Lanningham
1724f6acf0
feat(network): add an extra ergonomic method for n2c chainsync (#439) 2024-04-16 19:04:07 -03:00
Alexsander Falcucci
97a32c9af5
feat(network): implement GetChainBlockNo local state query (#441) 2024-04-16 09:27:23 -03:00
Santiago Carmuega
619cb8290b
feat(network): implement background keep-alive loop (#427) 2024-04-02 21:27:33 -03:00
Alexsander Falcucci
655efad6c2
feat: implement GetCBOR local state query (#413) 2024-03-04 15:25:17 -03:00
Alexsander Falcucci
b6d6e56f4f
feat(network): implement GetGenesisConfig local state query (#407) 2024-02-26 08:44:37 -03:00
Alexsander Falcucci
4362341b43
fix: support multiple pools in stake snapshot query (#396) 2024-02-11 12:51:35 -03:00
Alexsander Falcucci
43cdb74ee0
feat(network): implement stake snapshot local state query (#394) 2024-02-06 09:17:44 -03:00
Alexsander Falcucci
14e0809ea2
feat: implement GetCurrentPParams local state query (#322) 2024-01-08 08:38:39 -03:00
Harper
a6a6ffcfed
feat(network): implement server side KeepAlive (#376) 2024-01-08 07:50:37 -03:00
Santiago Carmuega
9200663c8d
chore: fix lint warnings across the board (#374) 2024-01-04 09:47:04 -03:00
Clark Alesna
1e7407867f
feat(network): implement split read / write for NamedPipe bearer (#371) 2024-01-03 08:34:16 -03:00
Santiago Carmuega
4f598ebc31
refactor(network): split bearer into read/write (#364) 2023-12-21 18:08:29 -03:00
Andrew Westberg
d1e40907c6
fix(network): add tcp_nodelay to bearer (#365) 2023-12-20 21:50:03 -03:00
Andrew Westberg
1ed2161a43
feat(network): update n2n handshake versions & add keepalive miniprotocol (#362) 2023-12-19 07:56:10 -03:00
Alexsander Falcucci
6f1b15269c
feat(network): implement GetUTxOByAddress local state query (#341) 2023-12-12 09:31:46 -03:00
Alexsander Falcucci
645989465d
feat(network): implement stake distribution local state query (#340) 2023-11-24 06:43:25 -03:00
Santiago Carmuega
155139e166
fix: fix conditional code for windows builds (#334) 2023-11-16 13:36:49 -03:00
Santiago Carmuega
e0f9f14dea
refactor(network): simplify local state mini-protocol implementation (#326) 2023-11-09 21:47:24 -03:00
Harper
2b5f22def2
feat(network): scaffold local state query server (#280) 2023-10-26 18:02:11 +00:00
Santiago Carmuega
1f870cac66
chore: fix lint warning (#283) 2023-09-07 09:39:18 -03:00
Andrew Westberg
554fa1578e
feat: add handshake with query for n2c (#266) 2023-06-27 13:46:24 -03:00
Olof Blomqvist
31a87032ca
fix: fix builds on windows platform (#263) 2023-06-21 13:39:43 -03:00
Santiago Carmuega
cb0348b47a
refactor: Merge multiplexer & miniprotocols into single crate (#244) 2023-04-10 19:51:38 -03:00
Santiago Carmuega
b8ff4e9418
feat: Migrate to asynchronous I/O (#241)
This commit updates the networking stack to use asynchronous I/O for improved performance and concurrency. We have replaced synchronous I/O calls with their asynchronous counterparts and refactored the code to use async/await and Tokio runtime.
2023-04-09 08:50:56 -03:00
Santiago Carmuega
381a46f2cf
chore: Fix lint warnings for all targets (#240) 2023-03-24 06:59:49 -03:00
Pi Lanningham
fc2728639f
feat: Make the underlying TxBody type generic
* WIP

* Fix compilation on windows machines

* Make TxBody generic

Technically we should be generic over TxBody for arbitrary ouroboros implementations; however, that makes things awkward.  So, we introduce GenericClient and GenericServer, with concrete types that instantiate them to Cardano specific types.  We could have done this with default type arguments, but this pushes the type system to it's limits and it often can't infer the correct type

* More examples tweaks; clippy and fmt

* Remove unneccesary defaults

* Tag 24 is no longer mysterious

It means raw CBOR

* Cargo fmt

One day I'll configure vscode to do this on safe
2023-02-20 10:19:06 -05:00
Pi Lanningham
a81fc101fe
feat: Add client/server use_channel variants (#228)
The goal here is to make the use of channels when interfacing with nodes less of a black box; the 0x8000 bit flip is a very surprising behavior if you're not already familiar with it.
2023-02-09 17:38:45 -03:00
Pi Lanningham
4915d14cd5
feat: Add constants for known miniprotocols
* Add constants for known miniprotocols

Now consumers of the crate don't have to memorize what channel number means what

* Add myself to the crate authors
2023-02-05 06:13:55 -05:00
dependabot[bot]
3fe3b3b53e
build(deps): update env_logger requirement from 0.9.0 to 0.10.0 (#209)
Updates the requirements on [env_logger](https://github.com/rust-cli/env_logger) to permit the latest version.
- [Release notes](https://github.com/rust-cli/env_logger/releases)
- [Changelog](https://github.com/rust-cli/env_logger/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rust-cli/env_logger/compare/v0.9.0...v0.10.0)

---
updated-dependencies:
- dependency-name: env_logger
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-04 08:52:01 -03:00
Santiago Carmuega
16d0211c5b
feat(miniprotocols): Implement tx submission client (#220)
* feat(miniprotocols): Implement tx submission client

* Match CDDL specs

* Fix build errors

* Add server implementation for txsubmission

Also includes some documentation for how to use both the client and the server

* cargo fmt

* clippy suggestions

clippy pls

* Fail explicitly on missing n2c unix socket

---------

Co-authored-by: Pi Lanningham <pi@sundaeswap.finance>
2023-02-03 20:38:12 -05:00
Santiago Carmuega
9d8ca617ef
chore: Fix lint issues (#222) 2023-02-02 21:07:14 -03:00
Santiago Carmuega
a129d77608
feat: Migrate to dumb agents (#198)
BREAKING CHANGE: handshake, chainsync, localstate and blockfetch mini-protocols changed the API surface

Co-authored-by: jmhrpr <harper.jme@gmail.com>
2022-10-25 14:42:34 -03:00
Santiago Carmuega
f29cc64fd8 Release 0.13.1
pallas@0.13.1
pallas-addresses@0.13.1
pallas-codec@0.13.1
pallas-crypto@0.13.1
pallas-miniprotocols@0.13.1
pallas-multiplexer@0.13.1
pallas-primitives@0.13.1
pallas-traverse@0.13.1

Generated by cargo-workspaces
2022-08-08 18:23:14 -03:00
Santiago Carmuega
19844889e6
feat(multiplexer): Use single channel for muxer (#133) 2022-06-20 16:06:46 -03:00
Santiago Carmuega
00c9e1835e
feat: Implement common traverse iterators (#119) 2022-06-14 13:47:11 -03:00
Santiago Carmuega
26da913ad9
feat: Introduce 'traverse' library (#117) 2022-06-12 19:09:33 -03:00
Santiago Carmuega
fe80ff7800
feat(primitives): Introduce MintedBlock concept (#116) 2022-06-12 10:44:16 -03:00
Santiago Carmuega
c075f8c2ab
fix(multiplexer): Use buffers that own the inner channel (#113) 2022-06-10 11:54:14 -03:00
Santiago Carmuega
f67e010c76
feat: Improve multiplexer ergonomics (#111) 2022-06-04 17:39:29 -03:00
Santiago Carmuega
a39682a38d
feat(multiplexer): Allow fine-grained control of concurrency strategy (#106) 2022-06-03 21:37:38 -03:00
Santiago Carmuega
c998d9adbb
chore: Move miniprotocol examples to custom crate (#97) 2022-04-28 09:50:33 -03:00
Santiago Carmuega
86a2bcc9ac
feat: Make blockfetch observer mutable (#86) 2022-04-08 18:52:38 -03:00
Santiago Carmuega
4faf9a124d
refactor(miniprotocols): Use pure functions for state machines (#84) 2022-03-22 23:27:20 -03:00
Santiago Carmuega
17a4beb8d8
chore: Fix rogue clippy warnings (#79) 2022-03-18 16:12:50 -03:00