Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add initial support for connecting via libp2p #238

Merged
merged 84 commits into from Jun 1, 2021
Merged
Show file tree
Hide file tree
Changes from 83 commits
Commits
Show all changes
84 commits
Select commit Hold shift + click to select a range
62279c3
Compiling libp2p daemon on setup (#153)
dvmazur Mar 1, 2021
97d7165
feat: add p2p daemon (#164)
skobellev Mar 3, 2021
883fcf3
compare golang versions using packaging.version
dvmazur Mar 5, 2021
25b3f21
fix typo
dvmazur Mar 9, 2021
843babc
move p2pd executable to hivemind/hivemind_cli
dvmazur Mar 9, 2021
4409cd6
Rebase master onto libp2p (#179)
dvmazur Mar 10, 2021
0535efe
Fix LibP2P-Daemon installation in setup.py (#186)
dvmazur Mar 19, 2021
3595c94
feat p2p_daemon: add API to call peer handle (#181)
skobellev Mar 21, 2021
d2d849b
fix chmod permissions (#194)
dvmazur Mar 24, 2021
8d873f6
feat P2P: add unary handler (#197)
skobellev Mar 31, 2021
3b5ce78
Py libp2p bindings (#193)
MaximKsh Apr 2, 2021
2dbee59
#204 P2P replica mode (#205)
MaximKsh Apr 7, 2021
133a6fc
Compiling libp2p daemon on setup (#153)
dvmazur Mar 1, 2021
d3d1a9f
feat: add p2p daemon (#164)
skobellev Mar 3, 2021
b2ad1f1
compare golang versions using packaging.version
dvmazur Mar 5, 2021
de66aca
fix typo
dvmazur Mar 9, 2021
fa6699b
move p2pd executable to hivemind/hivemind_cli
dvmazur Mar 9, 2021
c0c16eb
Rebase master onto libp2p (#179)
dvmazur Mar 10, 2021
69ba660
Fix LibP2P-Daemon installation in setup.py (#186)
dvmazur Mar 19, 2021
a4652fc
feat p2p_daemon: add API to call peer handle (#181)
skobellev Mar 21, 2021
181f4b9
fix chmod permissions (#194)
dvmazur Mar 24, 2021
2468582
feat P2P: add unary handler (#197)
skobellev Mar 31, 2021
c672a23
Py libp2p bindings (#193)
MaximKsh Apr 2, 2021
d30f60e
#204 P2P replica mode (#205)
MaximKsh Apr 7, 2021
523e079
Merge branch 'libp2p-onlyp2p' of github.com:learning-at-home/hivemind…
Apr 20, 2021
c23cb85
__del__ to shutdown in P2P
Apr 21, 2021
26db677
review fixes
Apr 23, 2021
6856ee1
fix p2pd MD5 and fix that p2pd connects to ipfs
Apr 23, 2021
67d43f2
asyncio.IncompleteReadError
Apr 23, 2021
1d664f2
pr fixes: messagepack serialization, naming, etc
Apr 27, 2021
cade39b
remove unused constants
Apr 27, 2021
5a057d5
remove unused import
Apr 27, 2021
f738251
stream handler operates with bytes, unary handler works with errors
Apr 28, 2021
c46a835
fix pr comments
Apr 28, 2021
09b55e5
fix setup.py
dvmazur May 2, 2021
6abd88f
replace popen with subprocess.run
dvmazur May 2, 2021
269e9c5
fix setup.py
dvmazur May 2, 2021
2fce24e
remove debug comment
dvmazur May 2, 2021
53361c5
fix comments in p2p and p2p_bindings
May 3, 2021
ab4d3e4
imports/rename constants/string formatting
May 3, 2021
a021772
reST docstring
May 3, 2021
23357e1
pr fixes
May 12, 2021
fd39c2c
remove obvious comments
May 12, 2021
5575d20
raw bytes to pb creation
May 13, 2021
295a20f
Compiling libp2p daemon on setup (#153)
dvmazur Mar 1, 2021
67b2d44
feat: add p2p daemon (#164)
skobellev Mar 3, 2021
e6c9277
compare golang versions using packaging.version
dvmazur Mar 5, 2021
b454acf
fix typo
dvmazur Mar 9, 2021
fc3e2b3
move p2pd executable to hivemind/hivemind_cli
dvmazur Mar 9, 2021
decd6d7
Rebase master onto libp2p (#179)
dvmazur Mar 10, 2021
c0e6c82
Fix LibP2P-Daemon installation in setup.py (#186)
dvmazur Mar 19, 2021
a66ef9b
feat p2p_daemon: add API to call peer handle (#181)
skobellev Mar 21, 2021
2d50b76
fix chmod permissions (#194)
dvmazur Mar 24, 2021
129a370
feat P2P: add unary handler (#197)
skobellev Mar 31, 2021
219ff0d
Py libp2p bindings (#193)
MaximKsh Apr 2, 2021
69ac699
#204 P2P replica mode (#205)
MaximKsh Apr 7, 2021
cef18da
Compiling libp2p daemon on setup (#153)
dvmazur Mar 1, 2021
d5e435f
move p2pd executable to hivemind/hivemind_cli
dvmazur Mar 9, 2021
5da9588
Fix LibP2P-Daemon installation in setup.py (#186)
dvmazur Mar 19, 2021
1a20f66
feat p2p_daemon: add API to call peer handle (#181)
skobellev Mar 21, 2021
360ea08
feat P2P: add unary handler (#197)
skobellev Mar 31, 2021
6c99095
Py libp2p bindings (#193)
MaximKsh Apr 2, 2021
836576d
__del__ to shutdown in P2P
Apr 21, 2021
4fba724
review fixes
Apr 23, 2021
d82ac88
fix p2pd MD5 and fix that p2pd connects to ipfs
Apr 23, 2021
462bf2b
asyncio.IncompleteReadError
Apr 23, 2021
b2d9aa2
pr fixes: messagepack serialization, naming, etc
Apr 27, 2021
4b85990
remove unused constants
Apr 27, 2021
fbe5c9a
remove unused import
Apr 27, 2021
19457cf
stream handler operates with bytes, unary handler works with errors
Apr 28, 2021
d8104ac
fix pr comments
Apr 28, 2021
5feb5f8
fix setup.py
dvmazur May 2, 2021
6b0a644
replace popen with subprocess.run
dvmazur May 2, 2021
fe0032e
fix setup.py
dvmazur May 2, 2021
b5a358c
remove debug comment
dvmazur May 2, 2021
99feece
fix comments in p2p and p2p_bindings
May 3, 2021
e92aa9d
imports/rename constants/string formatting
May 3, 2021
550fd4b
reST docstring
May 3, 2021
450ddc8
pr fixes
May 12, 2021
16e54ca
remove obvious comments
May 12, 2021
3b42ae8
raw bytes to pb creation
May 13, 2021
d6d37e5
Merge branch 'libp2p-onlyp2p' of github.com:learning-at-home/hivemind…
May 14, 2021
4cbcf72
Merge branch 'master' into libp2p-onlyp2p
justheuristic Jun 1, 2021
3229e6f
Update tests/test_utils/__init__.py
MaximKsh Jun 1, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
18 changes: 18 additions & 0 deletions .circleci/config.yml
@@ -1,5 +1,10 @@
version: 2.1

parameters:
go-version:
type: string
default: 1.16.2

jobs:
build-and-test-py37:
docker:
Expand All @@ -9,6 +14,11 @@ jobs:
- restore_cache:
keys:
- py37-v1-{{ checksum "requirements.txt" }}-{{ checksum "requirements-dev.txt" }}
- v1-{{ checksum "requirements.txt" }}-{{ checksum "requirements-dev.txt" }}
- run: |
wget https://golang.org/dl/go<< pipeline.parameters.go-version >>.linux-amd64.tar.gz -O go.tar.gz
tar -C ~/ -xzf go.tar.gz
echo "export PATH=~/go/bin:$PATH" >> $BASH_ENV
- run: pip install -r requirements.txt
- run: pip install -r requirements-dev.txt
- save_cache:
Expand All @@ -29,6 +39,10 @@ jobs:
- restore_cache:
keys:
- py38-v1-{{ checksum "requirements.txt" }}-{{ checksum "requirements-dev.txt" }}
- run: |
wget https://golang.org/dl/go<< pipeline.parameters.go-version >>.linux-amd64.tar.gz -O go.tar.gz
tar -C ~/ -xzf go.tar.gz
echo "export PATH=~/go/bin:$PATH" >> $BASH_ENV
- run: pip install -r requirements.txt
- run: pip install -r requirements-dev.txt
- save_cache:
Expand All @@ -49,6 +63,10 @@ jobs:
- restore_cache:
keys:
- py39-v1-{{ checksum "requirements.txt" }}-{{ checksum "requirements-dev.txt" }}
- run: |
wget https://golang.org/dl/go<< pipeline.parameters.go-version >>.linux-amd64.tar.gz -O go.tar.gz
tar -C ~/ -xzf go.tar.gz
echo "export PATH=~/go/bin:$PATH" >> $BASH_ENV
- run: pip install -r requirements.txt
- run: pip install -r requirements-dev.txt
- save_cache:
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Expand Up @@ -78,3 +78,6 @@ debian/files

# protobuf stuff
hivemind/proto/*_pb2*

# libp2p-daemon binary
hivemind/hivemind_cli/p2pd
1 change: 1 addition & 0 deletions hivemind/__init__.py
@@ -1,5 +1,6 @@
from hivemind.client import *
from hivemind.dht import *
from hivemind.p2p import *
from hivemind.server import *
from hivemind.utils import *
from hivemind.optim import *
Expand Down
1 change: 1 addition & 0 deletions hivemind/p2p/__init__.py
@@ -0,0 +1 @@
from hivemind.p2p.p2p_daemon import P2P