Commit Graph

578 Commits

Author SHA1 Message Date
Alejandro Cabeza Romero 151ef3c0e7
Add GRAFT on direct peers test. 2024-09-30 17:42:45 +02:00
Alejandro Cabeza Romero 7549d95a8e
Add PRUNE back and peer list verifier test. 2024-09-27 21:19:18 +02:00
Alejandro Cabeza Romero 94fdb8d25e
Add multiple simultaneous control messages handling test. 2024-09-27 19:23:52 +02:00
Alejandro Cabeza Romero 0dc653abe4
Add IHAVE for non-existent topic test. 2024-09-26 17:47:45 +02:00
Alejandro Cabeza Romero 85273fb0b6
Add more tests. 2024-09-25 18:52:10 +02:00
Alejandro Cabeza Romero fd16445629
Add IHAVE message test 2024-09-11 19:00:18 +02:00
Alejandro Cabeza Romero 42b1cdb900
Add PRUNE message test 2024-09-10 19:26:59 +02:00
Alejandro Cabeza Romero 0623044fa1
Implement graft test 2024-09-09 22:50:36 +02:00
Alejandro Cabeza Romero dff60c2f8a
Fix test and add remaining direct peers test. 2024-09-05 22:11:46 +02:00
Alejandro Cabeza Romero 264e0dcca0
Refactor utils for naming clarity 2024-09-05 22:11:27 +02:00
Alejandro Cabeza Romero 37458458de
iDontWant broadcasting test 2024-09-05 18:46:34 +02:00
Alejandro Cabeza Romero e6a06dcf32
Implement gossip adaptive dissemination tests. 2024-09-04 22:05:16 +02:00
Alejandro Cabeza Romero aac457ec5b
Implement flood publish with score test 2024-09-04 18:35:28 +02:00
Alejandro Cabeza Romero a2d2e5d287
Fix gossip check test. 2024-09-04 13:27:09 +02:00
Alejandro Cabeza Romero 952b08cff5
Implement message should not go back to source test. 2024-09-03 19:35:12 +02:00
Alejandro Cabeza Romero 4bffaf1a06
Implement gossip propagation test. 2024-09-02 18:35:08 +02:00
Alejandro Cabeza Romero a7796bf768
Implement D parameter tests. 2024-08-29 15:18:10 +02:00
Alejandro Cabeza Romero 64477145c4
Remove mock import. 2024-08-28 18:30:27 +02:00
Alejandro Cabeza Romero 2bbc2f3cb7
Remove mocking module. 2024-08-28 18:00:48 +02:00
Alejandro Cabeza Romero 0db9812b38
Remove mock and comment test. 2024-08-28 18:00:08 +02:00
Alejandro Cabeza Romero e53d041305
Fix resub after unsub test. 2024-08-27 18:56:46 +02:00
Alejandro Cabeza Romero 6501a611ba
Add simple mocking mechanism. 2024-08-27 18:56:46 +02:00
Alejandro Cabeza Romero 3e68f916f6
Update future to result utils. 2024-08-27 18:56:46 +02:00
Alejandro Cabeza Romero cba704d45d
Fix timeout variable naming 2024-08-27 18:56:46 +02:00
Alejandro Cabeza Romero b32badfe9a
Add active waitForMesh proc. 2024-08-27 18:56:46 +02:00
Alejandro Cabeza Romero e199782ca1
Add timeout duration consts. 2024-08-27 18:56:46 +02:00
Alejandro Cabeza Romero 543c281205
Improve existing PX test. 2024-08-27 18:56:46 +02:00
Alejandro Cabeza Romero 56419460ae
Update waitForResult to handle void futures. 2024-08-27 18:56:46 +02:00
Alejandro Cabeza Romero f791e78cda
Implement rendezvous frequent sub/unsub tests. 2024-08-27 18:56:46 +02:00
Alejandro Cabeza Romero 788e156800
Implement renddezvous sub/unsub test. 2024-08-27 18:56:45 +02:00
Alejandro Cabeza Romero c8bc839c81
Refactor discovery tests for reusability. 2024-08-27 18:56:45 +02:00
Alejandro Cabeza Romero a85be0463e
Add utility functions. 2024-08-27 18:56:45 +02:00
Álex 48846d69cb
chore(logs): remove duplicate msg key (#1180)
* Remove `msg` parameter key in logs.

closes: https://github.com/vacp2p/nim-libp2p/issues/1176
2024-08-14 17:19:54 +02:00
gabrielmer a60f0c5532
feat: adding onValidated observer (#1128)
### Description

Adding an `onValidated` observer which will run every time a message is
received and validated. This comes from the necessity of precisely track
message deliveries and network activity.

`onRecv` observers run before any check is performed on the received
message, which means that it runs every time a duplicate or invalid
message arrives, which is inefficient and inaccurate for our purpose of
tracking only received, unique and valid messages. Therefore, adding
this extra option of running an observer for every message after all
validation checks pass.
2024-08-01 18:50:13 +03:00
diegomrsantos fa19bbbbb7
fix: support ipv6 dual stack (#1148)
Fixes https://github.com/vacp2p/nim-libp2p/issues/1147
2024-07-10 18:08:52 +02:00
diegomrsantos 86563cbddd
chore: enable Nim 2.0.x and fix compilation issues (#1146)
This PR enables Nim 2.0.x with `refc` garbage collector on CI.

The following compilation error had to be fixed: Error: undeclared
identifier: 'acceptHandler`gensym435'; if declared in a template, this
identifier may be inconsistently marked inject or gensym
2024-07-10 14:24:12 +02:00
diegomrsantos 78f0855419
feat: add maxSize to TimedCache (#1132) 2024-07-01 22:00:51 +02:00
diegomrsantos 2195313dba
feat: iDontWant is sent only for gossipsub 1.2 or higher (#1135) 2024-06-25 19:32:08 +02:00
diegomrsantos 7498258f7c
fix(gossipsub): pubsubpeer is created with wrong gossipsub version (#1116) 2024-06-13 12:25:48 +02:00
diegomrsantos 4618f4c68f
fix(tests): flaky testdaemon (#1123) 2024-06-13 09:07:36 +00:00
diegomrsantos 3bf8a2907f
fix(tests): testautorelay (#1121) 2024-06-12 14:31:09 +00:00
diegomrsantos 96bfefc928
feat(gossipsub): support version 1.2.0 (#1106) 2024-06-12 15:46:47 +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 120549e313
fix(services): setup services before peerinfo is updated (#1120) 2024-06-07 11:48:44 +02:00
diegomrsantos bccb305cf5
feat(service): add wildcard address resolver (#1099)
Co-authored-by: Ludovic Chenut <ludovic@status.im>
2024-06-06 11:05:45 +00: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
Jacek Sieka 21cbe3a91a
chore: cleanups (#1092)
* remove cruft
* remove redundant error handling (reduces warnings)
* remove redundant copying
2024-05-08 14:33:26 +02:00
Jacek Sieka 02c96fc003
Improve memory efficiency of seen cache (#1073) 2024-05-01 18:38:24 +02:00
Ludovic Chenut 09b3e11956
fix: valueOr and withValue utilities (#1079) 2024-04-04 17:15:50 +02:00
Etan Kissling 03f67d3db5
add support for setting protocol handlers with `{.raises.}` annotation (#1064) 2024-03-28 09:42:31 +01:00