Commit Graph

30 Commits

Author SHA1 Message Date
Ludovic Chenut d1d53ff369
chore(yamux): change closedRemotely from Future into AsyncEvent (#1133) 2024-06-21 12:11:18 +02:00
diegomrsantos dc83a1e9b6
chore(formatting): format the whole codebase using nph 0.5.1 (#1118) 2024-06-11 17:18:06 +02:00
diegomrsantos 2fa2c4425f
fix(yamux): set EoF when remote peer half closes the stream in yamux (#1086) 2024-05-24 14:11:27 +02:00
Diego 2b5319622c
Revert "always allow new data be received if the recvWindow is > 0"
This reverts commit 5cbb473d1b.
2024-04-25 15:01:29 +02:00
Diego 5cbb473d1b
always allow new data be received if the recvWindow is > 0 2024-04-25 14:55:19 +02:00
Etan Kissling 275d649287
move `header.length` check in `yamux` to original location (#1069) 2024-03-20 13:35:44 +01:00
Etan Kissling 28609597d1
add `{.async: (raises).}` to `libp2p/stream` modules (#1050)
Co-authored-by: Dmitriy Ryajov <dryajov@gmail.com>
Co-authored-by: Jacek Sieka <jacek@status.im>
2024-03-05 07:06:27 +00:00
Etan Kissling 78e83889ee
define proper parent error type for `YamuxError` (#1040) 2024-03-04 19:26:27 +01:00
Etan Kissling 8cccd54125
avoid triple lookup in `m.flushed` yamux table (#1045) 2024-03-04 00:27:13 +01:00
Etan Kissling 18e00a741b
avoid `KeyError` in edge case of yamux handler (#1044) 2024-03-04 00:24:18 +01:00
Etan Kissling ee264fdf11
in yamux, do not write `{Rst}` packet to stream that's in use (#1041) 2024-03-04 00:23:42 +01:00
Etan Kissling 9059a8aced
use `race` instead of `or` to avoid lockup (#1042) 2024-03-04 00:06:32 +01:00
Etan Kissling 0b753e7cf2
don't forget closing the stream when final `{Fin}` fails in yamux (#1043) 2024-03-04 00:05:59 +01:00
Etan Kissling d43c5feab0
do not log yamux buffers without sanitization (trace log level) (#1046) 2024-03-04 00:04:37 +01:00
Ludovic Chenut 349496e40f
feat: Yamux timeout (#1029) 2024-02-22 10:21:34 +01:00
Ludovic Chenut c1dfd58772
fix: yamux metrics (#1022) 2024-02-08 12:36:58 +01:00
Ludovic Chenut eb0890cd6f
docs: add comments and improve yamux readability (#1006) 2024-02-02 15:14:02 +01:00
Ludovic Chenut d2c98bd87d
improvement(yamux): make the window size configurable (#987)
Co-authored-by: Diego <diego@status.im>
2023-12-15 16:30:50 +01:00
Jacek Sieka 2ede0fa40c
remove redundant gcsafe annotations (#999) 2023-12-05 08:05:32 +01:00
diegomrsantos 1f4b090227
fix(yamux): doesn't work in a Relayv2 connection (#979)
Co-authored-by: Ludovic Chenut <ludovic@status.im>
2023-11-21 16:03:29 +01:00
Tanguy c76d1e18ef
Remove nim 1.2 support (#907) 2023-06-07 11:12:49 +00:00
Tanguy 225accd11b
Less warnings (#813)
Co-authored-by: Diego <diego@status.im>
2023-05-18 10:24:17 +02:00
Alvaro Revuelta 53b060f8f0
Add getters for conns and streams (#878) 2023-03-31 00:16:39 +02:00
Tanguy 8d5ea43e2b
Upgrade flow refactoring (#807) 2023-03-08 12:30:19 +01:00
Tanguy c11772c94e
Happy new year! (#847) 2023-01-20 15:47:40 +01:00
Tanguy 63e1872516
Fix yamux simultaneous closing (#823) 2022-12-16 18:14:40 +01:00
lchenut 4d8b50d24c
Specify EOF error (#759) 2022-09-14 10:58:41 +02:00
Miran 2fbe82bf9d
make it more Nim 1.4+ compatible (#742) 2022-08-03 13:33:19 +02:00
lchenut a9a7e7eb15
Yamux metrics and limits (#740)
* Add yamux channel gauge
* Add limit to channel
* Add recv/send queue length metrics
* Add yamux stream tracking
* Add timeout to YamuxChannel

Co-authored-by: Tanguy <tanguy@status.im>
2022-08-01 12:52:42 +00:00
Tanguy 533e39ef94
Yamux (#704)
Co-authored-by: Ludovic Chenut <ludovic@status.im>
2022-07-04 15:19:21 +02:00