Dmitriy Ryajov
0348773ec9
Connection manager ( #277 )
...
* splitting out connection management
* wip
* wip conn mngr tests
* set peerinfo in contructor
* comments and documentation
* tests
* wip
* add `None` to detect untagged connections
* use `PeerID` to index connections
* fix tests
* remove useless equality
2020-07-17 09:36:48 -06:00
Dmitriy Ryajov
f35b8999b3
some light cleanup for pub/gossip sub ( #273 )
...
* move peer table out to its own file
* move peer table
* cleanup `==` and add one to peerinfo
* add peertable
* missed equality check
2020-07-15 13:18:55 -06:00
Jacek Sieka
d522537b19
reuse single RNG instance for all crypto key generation ( #249 )
...
* reuse single RNG instance for all crypto key generation
* use foolproof rng
* initRng -> newRng (because it's ref)
* fix test
* imports/exports, chat fix
* fix rsa
* imports and exports
* work around threadvar issue
* fixup
* mac workaround test
2020-07-07 13:14:11 +02:00
Jacek Sieka
b49c619ca8
export public field types ( #248 )
...
* export public field types
* one more
2020-07-01 09:22:29 +02:00
Giovanni Petrantoni
ec00c7fc50
Peer resultification and defect only ( #245 )
...
* Peer resultification and defect only
* Fixing some tests
* test fixes
* Rename peer into peerid
* better result error message in identify
* further merge fixes
2020-07-01 08:25:09 +02:00
Dmitriy Ryajov
c788a6a3c0
Cleanup resources ( #246 )
...
* consolidate reading in lpstream
* remove debug echo
* tune log level
* add channel cleanup and cancelation handling
* cancelation handling
* cancelation handling
* cancelation handling
* cancelation handling
* cleanup and cancelation handling
* cancelation handling
* cancelation
* tests
* rename isConnected to connected
* remove testing trace
* comment out debug stacktraces
* explicit raises
2020-06-29 09:15:31 -06:00
Dmitriy Ryajov
6b196ad7b4
remove pubsub peer on disconnect ( #212 )
...
* remove pubsub peer on disconnect
* make sure lock is aquired
* add $
* count upgrades/dials/disconnects
2020-06-11 08:45:59 -06:00
Jacek Sieka
8d9e231a74
grab agentversion/protoversion ( #211 )
2020-06-09 12:42:52 -06:00
Giovanni Petrantoni
7dcb807f64
Crypto utilities resultification ( #150 )
2020-05-18 07:25:55 +02:00
Jacek Sieka
618e01eba3
don't crash on double peerinfo close ( #167 )
2020-05-11 21:05:24 +02:00
Jacek Sieka
e1928456a7
avoid newlines in $
...
they mess with debug prints and logging (same reason why $(seq) doesn't
print them
2020-04-28 10:59:53 -06:00
Dmitriy Ryajov
26a4510377
remove unnecesary nil check in peerinfo
2020-02-16 11:31:35 -06:00
Dmitriy Ryajov
6316b07e81
don't crash when stringifying nil peerinfo
2020-02-16 11:31:35 -06:00
Eugene Kabanov
540e79a430
Add peer lifetime feature for PeerInfo. ( #77 )
...
* Add peer lifetime feature for PeerInfo.
Refactor peerinfo to use openarrays instead of sequences.
Fix tests and examples to use arrays instead of sequences.
* Add access to lifetime Future[T] itself.
2020-02-11 12:53:39 -05:00
Dmitriy Ryajov
293a219dbe
Cleanup ( #55 )
...
* fix: don't allow replacing pubkey
* fix: several small improvements
* removing pubkey setter
* improove error handling
* remove the use of Option[T] if not needed
* don't use optional
* fix-ci: temporarily pin p2pd to a working tag
* fix example to comply with latest changes
* bumping p2pd again to a higher version
2019-12-10 14:50:35 -06:00
Dmitriy Ryajov
5f6fcc3d90
extract public and private keys fields from peerid ( #44 )
...
* extract public and private keys fields from peerid
* allow assigning a public key
* cleaned up TODOs
* make pubsub prefix a const
* public key should be an `Option`
2019-12-07 10:36:39 -06:00
Dmitriy Ryajov
903e79ede1
Feat/conn cleanup ( #41 )
...
Backporting proper connection cleanup from #36 to align with latest chronos changes.
* add close event
* use proper varint encoding
* add proper channel cleanup in mplex
* add connection cleanup in secio
* tidy up
* add dollar operator
* fix tests
* don't close connections prematurely
* handle closing streams properly
* misc
* implement address filtering logic
* adding pipe tests
* don't use gcsafe if not needed
* misc
* proper connection cleanup and stream muxing
* re-enable pubsub tests
2019-12-03 22:44:54 -06:00
Dmitriy Ryajov
9862064234
changed copyright year
2019-10-11 08:15:24 +09:00
Dmitriy Ryajov
41aad2e7e6
make peerId an Option[T]
2019-10-11 08:15:24 +09:00
Dmitriy Ryajov
3cd19ddc47
change root object from ref to obj
2019-10-11 08:15:24 +09:00
Dmitriy Ryajov
b56b005ab7
make object instead of ref
2019-10-11 08:15:24 +09:00
Dmitriy Ryajov
5b7e8d99bd
initial commit for native libp2p implementation
2019-10-11 08:15:24 +09:00