* 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.
* Implemented lazy stream opening for mplex connections
* Properly fix newStream usage
* Make lazy channel open optional
* Add Lazy channel test
* Cleanup mplex test
* Move lazyness properly into LPChannel
* Connection writeLp back to proc
* Set up CI with Azure Pipelines
[skip ci]
* Fix %PLATFORM%
* Add Azure badge
* Try to make nimble happy with windows PATH
* rename steps [skip ci]
* Mixed up posix/windows in pipeline
* add missing ARCH: x86 to Linux32
* Linux "32bit" CI was actually 64-bit, remove it from now
* Try to workaround path issues in windows
* More crazy path workarounds + display gcc version (debug win 32-bit)
* keep the bash workaround in
* mingw path as separate task
* Let's start a fresh day bout against Azure
* fix powershell variable interpolation
* make all scripts verbose to debug MacOS Go libp2p daemon script
* Don't test on Azure macOS, xerrors issue due to Go version:
- https://github.com/libp2p/go-libp2p-daemon/issues/139
- https://github.com/status-im/nim-beacon-chain/pull/397
- https://github.com/golang/go/issues/32246
* polish + reduce verbosity [skip ci]
* 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
* Bugfix: Dialing an already connected peer may lead to crash
* Introduced a standard_setup module allowing to instantiate
the `Switch` object in an easier manner.
* Added `Switch.disconnect(peer)`
* Trailing space removed (sorry about polluting the diff)
* 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`