Commit graph

41 commits

Author SHA1 Message Date
Alexsander Falcucci
27f1b3af24 feat(network): implement GetUTxOByAddress local state query (#341) 2023-12-12 09:31:46 -03:00
Alexsander Falcucci
b1ac003716 feat(network): implement stake distribution local state query (#340) 2023-11-24 06:43:25 -03:00
Santiago Carmuega
cc2f295fb2 fix: fix conditional code for windows builds (#334) 2023-11-16 13:36:49 -03:00
Santiago Carmuega
750c2d303e refactor(network): simplify local state mini-protocol implementation (#326) 2023-11-09 21:47:24 -03:00
Harper
fb1cc54b0c feat(network): scaffold local state query server (#280) 2023-10-26 18:02:11 +00:00
Santiago Carmuega
f515a6115c chore: fix lint warning (#283) 2023-09-07 09:39:18 -03:00
Andrew Westberg
98483e76c7 feat: add handshake with query for n2c (#266) 2023-06-27 13:46:24 -03:00
Olof Blomqvist
d1f61a3992 fix: fix builds on windows platform (#263) 2023-06-21 13:39:43 -03:00
Santiago Carmuega
d5f0c2fd80 refactor: Merge multiplexer & miniprotocols into single crate (#244) 2023-04-10 19:51:38 -03:00
Santiago Carmuega
b63d2052cb 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
ae7e1f5c82 chore: Fix lint warnings for all targets (#240) 2023-03-24 06:59:49 -03:00
Pi Lanningham
afea5a43ed 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
01bdf4afe0 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
f9263a0eba 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]
fca65e25bd 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
6a3679dcda 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
d7a414c3af chore: Fix lint issues (#222) 2023-02-02 21:07:14 -03:00
Santiago Carmuega
1b42851f2d 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
1f0eb3bfc0 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
cdb7b6f954 feat(multiplexer): Use single channel for muxer (#133) 2022-06-20 16:06:46 -03:00
Santiago Carmuega
e67da5e7ef feat: Implement common traverse iterators (#119) 2022-06-14 13:47:11 -03:00
Santiago Carmuega
6913efef78 feat: Introduce 'traverse' library (#117) 2022-06-12 19:09:33 -03:00
Santiago Carmuega
c9489c3ddf feat(primitives): Introduce MintedBlock concept (#116) 2022-06-12 10:44:16 -03:00
Santiago Carmuega
8b54dbeeac fix(multiplexer): Use buffers that own the inner channel (#113) 2022-06-10 11:54:14 -03:00
Santiago Carmuega
159d38020c feat: Improve multiplexer ergonomics (#111) 2022-06-04 17:39:29 -03:00
Santiago Carmuega
e4784f444d feat(multiplexer): Allow fine-grained control of concurrency strategy (#106) 2022-06-03 21:37:38 -03:00
Santiago Carmuega
4b5b747ecc chore: Move miniprotocol examples to custom crate (#97) 2022-04-28 09:50:33 -03:00
Santiago Carmuega
07531693a7 feat: Make blockfetch observer mutable (#86) 2022-04-08 18:52:38 -03:00
Santiago Carmuega
dc422284b2 refactor(miniprotocols): Use pure functions for state machines (#84) 2022-03-22 23:27:20 -03:00
Santiago Carmuega
0c765bea08 chore: Fix rogue clippy warnings (#79) 2022-03-18 16:12:50 -03:00
Santiago Carmuega
d942c73cfa chore: Add block-decoding example (#78) 2022-03-18 14:57:02 -03:00
Santiago Carmuega
3234523c83 fix(miniprotocols): Handle regression related to multi-msg payloads (#76) 2022-03-16 18:17:10 -03:00
Santiago Carmuega
43c3cbd457 feat: Introduce shared codec lib (#71)
closes #65
2022-03-13 09:37:08 -03:00
Santiago Carmuega
90dfecd283 fix(primitives): Fix decoding of empty Nonce hash (#67) 2022-03-01 09:42:08 -03:00
Santiago Carmuega
3b9c81e6a0 Release 0.6.1
pallas-primitives@0.6.1

Generated by cargo-workspaces
2022-02-28 17:11:49 -03:00
Santiago Carmuega
77fdd034b7 chore: Fix clippy warnings 2022-02-24 15:23:31 -03:00
Santiago Carmuega
f6613a1644 chore: Tidy up examples 2022-02-24 15:16:04 -03:00
Santiago Carmuega
21a3077883 chore: Merge Byron / Alonzo into single crate (#43) 2022-02-09 07:19:17 -03:00
Santiago Carmuega
72d896d176 chore: Merge mini-protocols into single crate (#40) 2022-02-06 21:13:35 -03:00
Santiago Carmuega
07c056ba19 feat: Introduce Byron library (#39)
Co-authored-by: rvcas <x@rvcas.dev>
2022-02-04 21:40:12 -03:00
Santiago Carmuega
d4524733b3 docs: Add block download example (#24) 2022-01-17 17:11:03 -03:00