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

Connection reset from API when using Python 3.8 #2769

Open
mkroman opened this issue Feb 6, 2020 · 6 comments
Open

Connection reset from API when using Python 3.8 #2769

mkroman opened this issue Feb 6, 2020 · 6 comments

Comments

@mkroman
Copy link
Contributor

mkroman commented Feb 6, 2020

After some testing and some discussion with @er013 it's apparent that there's some kind of silent incompatibility with Python 3.8.x that's not present in Python 3.7.6.

When lbrynet (0.58.1) is started using Python 3.8.1, requests to the API will be met with a connection reset:

% python -V
Python 3.8.1
% lbrynet start    
2020-02-06 03:49:21,641 INFO     lbry.extras.daemon.daemon:450: Starting LBRYNet Daemon
2020-02-06 03:49:21,642 INFO     lbry.extras.daemon.daemon:452: Platform: {
  "processor": "",
  "python_version": "3.8.1",
  "platform": "Linux-5.5.2-arch1-1-x86_64-with-glibc2.29",
  "os_release": "5.5.2-arch1-1",
  "os_system": "Linux",
  "lbrynet_version": "0.58.1",
  "version": "0.58.1",
  "build": "dev",
  "distro": {
    "id": "arch",
    "version": "rolling",
    "version_parts": {
      "major": "",
      "minor": "",
      "build_number": ""
    },
    "like": "",
    "codename": "n/a"
  },
  "desktop": "Unknown"
}
2020-02-06 03:49:21,654 INFO     lbry.extras.daemon.daemon:461: RPC server listening on TCP ::1:5279
2020-02-06 03:49:21,654 INFO     lbry.extras.daemon.daemon:471: media server listening on TCP 127.0.0.1:5280
2020-02-06 03:49:22,200 INFO     lbry.extras.daemon.exchange_rate_manager:184: Starting exchange rate manager
2020-02-06 03:49:22,201 INFO     lbry.extras.daemon.components:457: detecting external ip
2020-02-06 03:49:22,203 INFO     lbry.extras.daemon.components:65: Loading databases
2020-02-06 03:49:22,203 INFO     lbry.wallet.database:238: connecting to database: /home/mk/.local/share/lbry/lbrynet/lbrynet.sqlite
2020-02-06 03:49:22,207 WARNING  lbry.extras.daemon.components:387: upnp discovery failed: 
2020-02-06 03:49:22,208 ERROR    lbry.extras.daemon.components:472: failed to setup upnp
2020-02-06 03:49:22,657 INFO     lbry.extras.daemon.components:476: detected external ip using lbry.com fallback
2020-02-06 03:49:22,658 INFO     lbry.extras.daemon.components:232: start the dht
2020-02-06 03:49:22,659 INFO     lbry.extras.daemon.components:256: Started the dht
2020-02-06 03:49:22,660 INFO     lbry.extras.daemon.components:154: Starting wallet
2020-02-06 03:49:23,082 INFO     lbry.wallet.database:238: connecting to database: /home/mk/.local/share/lbry/lbryum/lbc_mainnet/blockchain.db
2020-02-06 03:49:23,083 INFO     lbry.dht.node:126: DHT node listening on UDP 0.0.0.0:4444
2020-02-06 03:49:23,244 WARNING  lbry.wallet.network:73: Wallet server (spv8.lbry.com:50001) returned an error. Code: 1 Message: unsupported protocol version: 0.58.1
2020-02-06 03:49:23,295 WARNING  lbry.wallet.network:73: Wallet server (spv8.lbry.com:50001) returned an error. Code: 1 Message: unsupported protocol version: 0.58.1
2020-02-06 03:49:23,412 INFO     lbry.wallet.network:342: connected to spv9.lbry.com:50001
2020-02-06 03:49:23,413 INFO     lbry.wallet.network:187: Switching to SPV wallet server: spv9.lbry.com:50001
2020-02-06 03:49:23,520 INFO     lbry.wallet.network:191: Subscribed to headers: spv9.lbry.com:50001
2020-02-06 03:49:23,520 INFO     lbry.wallet.ledger:315: Subscribing and updating accounts.
2020-02-06 03:49:23,627 INFO     lbry.wallet.ledger:428: Subscribe to 5 accounts
2020-02-06 03:49:23,736 INFO     lbry.wallet.ledger:457: subscribed to 1/1 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,736 INFO     lbry.wallet.ledger:459: finished subscribing to 1 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,738 INFO     lbry.wallet.ledger:457: subscribed to 6/6 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,738 INFO     lbry.wallet.ledger:459: finished subscribing to 6 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,745 INFO     lbry.wallet.ledger:457: subscribed to 37/37 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,746 INFO     lbry.wallet.ledger:459: finished subscribing to 37 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,826 INFO     lbry.wallet.ledger:457: subscribed to 33/33 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,826 INFO     lbry.wallet.ledger:459: finished subscribing to 33 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,827 INFO     lbry.wallet.ledger:457: subscribed to 22/22 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,827 INFO     lbry.wallet.ledger:459: finished subscribing to 22 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,850 INFO     lbry.wallet.ledger:457: subscribed to 20/20 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,850 INFO     lbry.wallet.ledger:459: finished subscribing to 20 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,941 INFO     lbry.wallet.ledger:457: subscribed to 21/21 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,941 INFO     lbry.wallet.ledger:459: finished subscribing to 21 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,945 INFO     lbry.wallet.ledger:457: subscribed to 8/8 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,945 INFO     lbry.wallet.ledger:459: finished subscribing to 8 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,955 INFO     lbry.wallet.ledger:457: subscribed to 61/61 addresses on 216.19.244.55:50001
2020-02-06 03:49:23,955 INFO     lbry.wallet.ledger:459: finished subscribing to 61 addresses on 216.19.244.55:50001
2020-02-06 03:49:24,317 INFO     lbry.wallet.ledger:693: Loaded account bHrXsS75NUZ6sBikUtBuS4Z1sdsgFhsjp2 with 0.0 LBC, 20 receiving addresses (gap: 20), 6 change addresses (gap: 6), 0 channels, 0 certificates and 0 claims. 
2020-02-06 03:49:24,319 INFO     lbry.wallet.ledger:693: Loaded account bGQ5q7Rq36H6gzZyKvn58stCHE2AXKpgkY with 17.652122 LBC, 37 receiving addresses (gap: 20), 21 change addresses (gap: 6), 0 channels, 0 certificates and 3 claims. 
2020-02-06 03:49:24,322 INFO     lbry.wallet.ledger:693: Loaded account bCnxamLxj8n84abYgNRKsjAawFfW3NGYYk with 114.7994955 LBC, 61 receiving addresses (gap: 20), 22 change addresses (gap: 6), 4 channels, 4 certificates and 7 claims. 
2020-02-06 03:49:24,322 INFO     lbry.wallet.ledger:687: Loaded single key account bQb54gW4cK8dbjBW8n4oewTUsXJU41TRbD with 25.0 LBC. 0 channels, 0 certificates and 0 claims
2020-02-06 03:49:24,324 INFO     lbry.wallet.ledger:693: Loaded account bJhGRNmFiNUdh4Ahy4K73brm4EpaDqjaEz with 44.1 LBC, 33 receiving addresses (gap: 20), 8 change addresses (gap: 6), 0 channels, 0 certificates and 1 claims. 
2020-02-06 03:49:24,324 INFO     lbry.extras.daemon.components:341: start blob server
2020-02-06 03:49:24,324 INFO     lbry.extras.daemon.components:279: Started blob announcer
2020-02-06 03:49:24,325 INFO     lbry.extras.daemon.components:316: Starting the file manager
2020-02-06 03:49:24,326 INFO     lbry.stream.stream_manager:150: Initializing 0 files
2020-02-06 03:49:24,326 INFO     lbry.stream.stream_manager:166: Started stream manager with 0 files
2020-02-06 03:49:24,326 INFO     lbry.extras.daemon.components:322: Done setting up file manager
2020-02-06 03:49:24,327 INFO     lbry.blob_exchange.server:176: Blob server listening on TCP 0.0.0.0:3333
2020-02-06 03:49:26,230 INFO     lbry.dht.protocol.routing_table:289: join buckets 2
2020-02-06 03:49:26,230 INFO     lbry.dht.protocol.routing_table:289: join buckets 1
% lbrynet version
Could not connect to daemon. Are you sure it's running?
% curl -vv 127.0.0.1:5279
*   Trying 127.0.0.1:5279...
* TCP_NODELAY set
* Connected to 127.0.0.1 (127.0.0.1) port 5279 (#0)
> GET / HTTP/1.1
> Host: 127.0.0.1:5279
> User-Agent: curl/7.68.0
> Accept: */*
> 
* Recv failure: Connection reset by peer
* Closing connection 0
curl: (56) Recv failure: Connection reset by peer

However, if the same lbrynet version (0.58.1) is installed with Python 3.7.6 the API will respond successfully:


% python -V
Python 3.7.6
% lbrynet start
2020-02-06 03:50:47,386 INFO     lbry.extras.daemon.daemon:450: Starting LBRYNet Daemon
2020-02-06 03:50:47,387 INFO     lbry.extras.daemon.daemon:452: Platform: {
  "processor": "",
  "python_version": "3.7.6",
  "platform": "Linux-5.5.2-arch1-1-x86_64-with-arch-Arch-Linux",
  "os_release": "5.5.2-arch1-1",
  "os_system": "Linux",
  "lbrynet_version": "0.58.1",
  "version": "0.58.1",
  "build": "dev",
  "distro": {
    "id": "arch",
    "version": "rolling",
    "version_parts": {
      "major": "",
      "minor": "",
      "build_number": ""
    },
    "like": "",
    "codename": "n/a"
  },
  "desktop": "Unknown"
}
2020-02-06 03:50:47,400 INFO     lbry.extras.daemon.daemon:461: RPC server listening on TCP ::1:5279
2020-02-06 03:50:47,401 INFO     lbry.extras.daemon.daemon:471: media server listening on TCP 127.0.0.1:5280
2020-02-06 03:50:47,838 INFO     lbry.extras.daemon.components:65: Loading databases
2020-02-06 03:50:47,838 INFO     lbry.wallet.database:238: connecting to database: /home/mk/.local/share/lbry/lbrynet/lbrynet.sqlite
2020-02-06 03:50:47,839 INFO     lbry.extras.daemon.exchange_rate_manager:184: Starting exchange rate manager
2020-02-06 03:50:47,839 INFO     lbry.extras.daemon.components:457: detecting external ip
2020-02-06 03:50:47,898 WARNING  lbry.extras.daemon.components:387: upnp discovery failed: list index out of range
2020-02-06 03:50:47,898 ERROR    lbry.extras.daemon.components:472: failed to setup upnp
2020-02-06 03:50:48,355 INFO     lbry.extras.daemon.components:476: detected external ip using lbry.com fallback
2020-02-06 03:50:48,357 INFO     lbry.extras.daemon.components:154: Starting wallet
2020-02-06 03:50:48,759 INFO     lbry.extras.daemon.components:232: start the dht
2020-02-06 03:50:48,759 INFO     lbry.extras.daemon.components:256: Started the dht
2020-02-06 03:50:48,760 INFO     lbry.wallet.database:238: connecting to database: /home/mk/.local/share/lbry/lbryum/lbc_mainnet/blockchain.db
2020-02-06 03:50:48,761 INFO     lbry.dht.node:126: DHT node listening on UDP 0.0.0.0:4444
2020-02-06 03:50:48,859 WARNING  lbry.wallet.network:74: Wallet server (spv8.lbry.com:50001) returned an error. Code: 1 Message: unsupported protocol version: 0.58.1
2020-02-06 03:50:48,910 WARNING  lbry.wallet.network:74: Wallet server (spv8.lbry.com:50001) returned an error. Code: 1 Message: unsupported protocol version: 0.58.1
2020-02-06 03:50:49,032 INFO     lbry.wallet.network:342: connected to spv9.lbry.com:50001
2020-02-06 03:50:49,032 INFO     lbry.wallet.network:187: Switching to SPV wallet server: spv9.lbry.com:50001
2020-02-06 03:50:49,140 INFO     lbry.wallet.network:191: Subscribed to headers: spv9.lbry.com:50001
2020-02-06 03:50:49,141 INFO     lbry.wallet.ledger:315: Subscribing and updating accounts.
2020-02-06 03:50:49,248 INFO     lbry.wallet.ledger:428: Subscribe to 5 accounts
2020-02-06 03:50:49,357 INFO     lbry.wallet.ledger:458: subscribed to 20/20 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,357 INFO     lbry.wallet.ledger:461: finished subscribing to 20 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,361 INFO     lbry.wallet.ledger:458: subscribed to 37/37 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,361 INFO     lbry.wallet.ledger:461: finished subscribing to 37 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,434 INFO     lbry.wallet.ledger:458: subscribed to 61/61 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,434 INFO     lbry.wallet.ledger:461: finished subscribing to 61 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,435 INFO     lbry.wallet.ledger:458: subscribed to 8/8 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,435 INFO     lbry.wallet.ledger:461: finished subscribing to 8 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,435 INFO     lbry.wallet.ledger:458: subscribed to 1/1 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,436 INFO     lbry.wallet.ledger:461: finished subscribing to 1 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,466 INFO     lbry.wallet.ledger:458: subscribed to 6/6 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,467 INFO     lbry.wallet.ledger:461: finished subscribing to 6 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,551 INFO     lbry.wallet.ledger:458: subscribed to 21/21 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,551 INFO     lbry.wallet.ledger:461: finished subscribing to 21 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,557 INFO     lbry.wallet.ledger:458: subscribed to 22/22 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,557 INFO     lbry.wallet.ledger:461: finished subscribing to 22 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,558 INFO     lbry.wallet.ledger:458: subscribed to 33/33 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,558 INFO     lbry.wallet.ledger:461: finished subscribing to 33 addresses on 216.19.244.55:50001
2020-02-06 03:50:49,891 INFO     lbry.wallet.ledger:696: Loaded account bHrXsS75NUZ6sBikUtBuS4Z1sdsgFhsjp2 with 0.0 LBC, 20 receiving addresses (gap: 20), 6 change addresses (gap: 6), 0 channels, 0 certificates and 0 claims. 
2020-02-06 03:50:49,893 INFO     lbry.wallet.ledger:696: Loaded account bGQ5q7Rq36H6gzZyKvn58stCHE2AXKpgkY with 17.652122 LBC, 37 receiving addresses (gap: 20), 21 change addresses (gap: 6), 0 channels, 0 certificates and 3 claims. 
2020-02-06 03:50:49,895 INFO     lbry.wallet.ledger:696: Loaded account bCnxamLxj8n84abYgNRKsjAawFfW3NGYYk with 114.7994955 LBC, 61 receiving addresses (gap: 20), 22 change addresses (gap: 6), 4 channels, 4 certificates and 7 claims. 
2020-02-06 03:50:49,896 INFO     lbry.wallet.ledger:689: Loaded single key account bQb54gW4cK8dbjBW8n4oewTUsXJU41TRbD with 25.0 LBC. 0 channels, 0 certificates and 0 claims
2020-02-06 03:50:49,897 INFO     lbry.wallet.ledger:696: Loaded account bJhGRNmFiNUdh4Ahy4K73brm4EpaDqjaEz with 44.1 LBC, 33 receiving addresses (gap: 20), 8 change addresses (gap: 6), 0 channels, 0 certificates and 1 claims. 
2020-02-06 03:50:49,898 INFO     lbry.extras.daemon.components:279: Started blob announcer
2020-02-06 03:50:49,898 INFO     lbry.extras.daemon.components:341: start blob server
2020-02-06 03:50:49,898 INFO     lbry.extras.daemon.components:316: Starting the file manager
2020-02-06 03:50:49,899 INFO     lbry.blob_exchange.server:176: Blob server listening on TCP 0.0.0.0:3333
2020-02-06 03:50:49,899 INFO     lbry.stream.stream_manager:150: Initializing 0 files
2020-02-06 03:50:49,899 INFO     lbry.stream.stream_manager:166: Started stream manager with 0 files
2020-02-06 03:50:49,899 INFO     lbry.extras.daemon.components:322: Done setting up file manager
2020-02-06 03:50:51,809 INFO     lbry.dht.protocol.routing_table:289: join buckets 1
2020-02-06 03:50:54,137 INFO     lbry.dht.protocol.routing_table:289: join buckets 1
% lbrynet version 
{
  "build": "dev",
  "desktop": "Unknown",
  "distro": {
    "codename": "n/a",
    "id": "arch",
    "like": "",
    "version": "rolling",
    "version_parts": {
      "build_number": "",
      "major": "",
      "minor": ""
    }
  },
  "lbrynet_version": "0.58.1",
  "os_release": "5.5.2-arch1-1",
  "os_system": "Linux",
  "platform": "Linux-5.5.2-arch1-1-x86_64-with-arch-Arch-Linux",
  "processor": "",
  "python_version": "3.7.6",
  "version": "0.58.1"
}
% curl -vv 127.0.0.1:5279
*   Trying 127.0.0.1:5279...
* TCP_NODELAY set
* Connected to 127.0.0.1 (127.0.0.1) port 5279 (#0)
> GET / HTTP/1.1
> Host: 127.0.0.1:5279
> User-Agent: curl/7.68.0
> Accept: */*
> 
* Mark bundle as not supporting multiuse
< HTTP/1.1 405 Method Not Allowed
< Content-Type: text/plain; charset=utf-8
< Allow: POST
< Content-Length: 23
< Date: Thu, 06 Feb 2020 03:16:38 GMT
< Server: Python/3.7 aiohttp/3.5.4
< 
* Connection #0 to host 127.0.0.1 left intact
405: Method Not Allowed
@lyoshenka
Copy link
Member

closed by #2768

@mkroman
Copy link
Contributor Author

mkroman commented Feb 14, 2020

@lyoshenka that PR does not solve this particular issue - the PR just makes the lbrynet daemon able to run, but there's still a silent problem with connection resets from the API when using Python 3.8 as described in this issue which I haven't tracked down.

@lyoshenka
Copy link
Member

@mkroman Thanks for letting me know. I've reopened the issue. If you do track down a solution, we would be grateful :-)

@lyoshenka lyoshenka reopened this Feb 18, 2020
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 7, 2021
Because of issue lbryio#2769 at the moment the `lbrynet` daemon
will only work correctly with Python 3.7.
If Python 3.8 is used, the daemon will start but the RPC server
may not accept messages, returning the following:
```
Could not connect to daemon. Are you sure it's running?
```

Python 3.9 does not work either, as it fails in the compilation
of `plyvel`.
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 8, 2021
Because of issue lbryio#2769 at the moment the `lbrynet` daemon
will only work correctly with Python 3.7.
If Python 3.8 is used, the daemon will start but the RPC server
may not accept messages, returning the following:
```
Could not connect to daemon. Are you sure it's running?
```

Python 3.9 does not work either, as it fails in the compilation
of `plyvel`.
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 9, 2021
Because of issue lbryio#2769 at the moment the `lbrynet` daemon
will only work correctly with Python 3.7.
If Python 3.8 is used, the daemon will start but the RPC server
may not accept messages, returning the following:
```
Could not connect to daemon. Are you sure it's running?
```

Python 3.9 does not work either, as it fails in the compilation
of `plyvel`.
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 10, 2021
Because of issue lbryio#2769 at the moment the `lbrynet` daemon
will only work correctly with Python 3.7.

The `deadsnakes` personal package archive (PPA) provides
Python 3.7 for Ubuntu distributions that no longer have it
in their official repositories like 18.04 and 20.04.

If Python 3.8 is used, the daemon will start but the RPC server
may not accept messages, returning the following:
```
Could not connect to daemon. Are you sure it's running?
```

Python 3.9 does not work either, as it fails in the compilation
of `plyvel`.
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 10, 2021
Because of issue lbryio#2769 at the moment the `lbrynet` daemon
will only work correctly with Python 3.7.

The `deadsnakes` personal package archive (PPA) provides
Python 3.7 for Ubuntu distributions that no longer have it
in their official repositories like 18.04 and 20.04.

If Python 3.8 is used, the daemon will start but the RPC server
may not accept messages, returning the following:
```
Could not connect to daemon. Are you sure it's running?
```

Python 3.9 does not work either, as it fails in the compilation
of `plyvel`.
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 11, 2021
Because of issue lbryio#2769 at the moment the `lbrynet` daemon
will only work correctly with Python 3.7.

The `deadsnakes` personal package archive (PPA) provides
Python 3.7 for Ubuntu distributions that no longer have it
in their official repositories like 18.04 and 20.04.

If Python 3.8+ is used, the daemon will start but the RPC server
may not accept messages, returning the following:
```
Could not connect to daemon. Are you sure it's running?
```
@belikor
Copy link
Contributor

belikor commented Jul 11, 2021

This error seems to be documented in the aiohttp project.

See aio-libs/aiohttp#5818, aio-libs/aiohttp#4724, aio-libs/aiohttp#3507. In those cases they use Python 3.6 and 3.7, while the error in LBRY is only visible with Python 3.8+.

belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 11, 2021
Because of issue lbryio#2769 at the moment the `lbrynet` daemon
will only work correctly with Python 3.7.

The `deadsnakes` personal package archive (PPA) provides
Python 3.7 for Ubuntu distributions that no longer have it
in their official repositories like 18.04 and 20.04.

If Python 3.8+ is used, the daemon will start but the RPC server
may not accept messages, returning the following:
```
Could not connect to daemon. Are you sure it's running?
```
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 11, 2021
Because of issue lbryio#2769 at the moment the `lbrynet` daemon
will only work correctly with Python 3.7.

The `deadsnakes` personal package archive (PPA) provides
Python 3.7 for Ubuntu distributions that no longer have it
in their official repositories like 18.04 and 20.04.

If Python 3.8+ is used, the daemon will start but the RPC server
may not accept messages, returning the following:
```
Could not connect to daemon. Are you sure it's running?
```
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 11, 2021
As reported in issue lbryio#2769, the `lbrynet` daemon doesn't respond
correctly when it is compiled against Python 3.8+, only with
Python 3.7.

Instead of using `aiohttp==3.5.4` which was released on
January 12, 2019, we use `aiohttp=3.6.2` which was released
October 9, 2019, and is available in Ubuntu 20.04.

By using this newer version, the RCP server seems to work
correctly both with Python 3.8 and 3.9.

We could also try a newer version, like `3.7.4` as
it was launched on February 25, 2021, and is available
in Arch.
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 11, 2021
As reported in issue lbryio#2769, the `lbrynet` daemon doesn't respond
correctly when it is compiled against Python 3.8+, only with
Python 3.7.

Instead of using `aiohttp==3.5.4` which was released on
January 12, 2019, we use `aiohttp=3.6.2` which was released
October 9, 2019, and is available in Ubuntu 20.04.

By using this newer version, the RCP server seems to work
correctly both with Python 3.8 and 3.9.

We could also try a newer version, like `3.7.4` as
it was launched on February 25, 2021, and is available
in Arch.
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 11, 2021
Because of issue lbryio#2769 at the moment the `lbrynet` daemon
will only work correctly with Python 3.7.

The `deadsnakes` personal package archive (PPA) provides
Python 3.7 for Ubuntu distributions that no longer have it
in their official repositories like 18.04 and 20.04.

If Python 3.8+ is used, the daemon will start but the RPC server
may not accept messages, returning the following:
```
Could not connect to daemon. Are you sure it's running?
```
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 12, 2021
Because of issue lbryio#2769 at the moment the `lbrynet` daemon
will only work correctly with Python 3.7.

The `deadsnakes` personal package archive (PPA) provides
Python 3.7 for Ubuntu distributions that no longer have it
in their official repositories like 18.04 and 20.04.

If Python 3.8+ is used, the daemon will start but the RPC server
may not accept messages, returning the following:
```
Could not connect to daemon. Are you sure it's running?
```
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 12, 2021
As reported in issue lbryio#2769, the `lbrynet` daemon doesn't respond
correctly when it is compiled against Python 3.8+, only with
Python 3.7.

In this case it will raise the exception `aiohttp.ClientConnectionError`

We want to print this exception for the future to know what
went wrong.
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 12, 2021
As reported in issue lbryio#2769, the `lbrynet` daemon doesn't respond
correctly when it is compiled against Python 3.8+, only with
Python 3.7.

Instead of using `aiohttp==3.5.4` which was released on
January 12, 2019, we use `aiohttp=3.6.2` which was released
October 9, 2019, and is available in Ubuntu 20.04.

By using this newer version, the RCP server seems to work
correctly both with Python 3.8 and 3.9.

We could also try a newer version, like `3.7.4` as
it was launched on February 25, 2021, and is available
in Arch.
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 12, 2021
Because of issue lbryio#2769 at the moment the `lbrynet` daemon
will only work correctly with Python 3.7.

The `deadsnakes` personal package archive (PPA) provides
Python 3.7 for Ubuntu distributions that no longer have it
in their official repositories like 18.04 and 20.04.

If Python 3.8+ is used, the daemon will start but the RPC server
may not accept messages, returning the following:
```
Could not connect to daemon. Are you sure it's running?
```
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 12, 2021
Because of issue lbryio#2769 at the moment the `lbrynet` daemon
will only work correctly with Python 3.7.

The `deadsnakes` personal package archive (PPA) provides
Python 3.7 for Ubuntu distributions that no longer have it
in their official repositories like 18.04 and 20.04.

If Python 3.8+ is used, the daemon will start but the RPC server
may not accept messages, returning the following:
```
Could not connect to daemon. Are you sure it's running?
```
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 12, 2021
Because of issue lbryio#2769 at the moment the `lbrynet` daemon
will only work correctly with Python 3.7.

The `deadsnakes` personal package archive (PPA) provides
Python 3.7 for Ubuntu distributions that no longer have it
in their official repositories like 18.04 and 20.04.

If Python 3.8+ is used, the daemon will start but the RPC server
may not accept messages, returning the following:
```
Could not connect to daemon. Are you sure it's running?
```
@belikor
Copy link
Contributor

belikor commented Jul 15, 2021

This issue should be solved with #3362.

The solution is just using a newer aiohttp. I tried aiohttp==3.6.2 because that is the version in the repositories in Ubuntu 20.04. To test I use Python 3.8 in Ubuntu, and Python 3.9 in Arch, and they both seem to work fine.

eukreign pushed a commit to belikor/lbry-sdk that referenced this issue Jul 19, 2021
As reported in issue lbryio#2769, the `lbrynet` daemon doesn't respond
correctly when it is compiled against Python 3.8+, only with
Python 3.7.

Instead of using `aiohttp==3.5.4` which was released on
January 12, 2019, we use `aiohttp=3.6.2` which was released
October 9, 2019, and is available in Ubuntu 20.04.

By using this newer version, the RCP server seems to work
correctly both with Python 3.8 and 3.9.

We could also try a newer version, like `3.7.4` as
it was launched on February 25, 2021, and is available
in Arch.
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 20, 2021
As reported in issue lbryio#2769, the `lbrynet` daemon doesn't respond
correctly when it is compiled against Python 3.8+, only with
Python 3.7.

In this case it will raise the exception `aiohttp.ClientConnectionError`

We want to print this exception for the future to know what
went wrong.
belikor added a commit to belikor/lbry-sdk that referenced this issue Jul 20, 2021
As reported in issue lbryio#2769, the `lbrynet` daemon doesn't respond
correctly when it is compiled against Python 3.8+, only with
Python 3.7.

Instead of using `aiohttp==3.5.4` which was released on
January 12, 2019, we use `aiohttp=3.6.2` which was released
October 9, 2019, and is available in Ubuntu 20.04.

By using this newer version, the RCP server seems to work
correctly both with Python 3.8 and 3.9.

We could also try a newer version, like `3.7.4` as
it was launched on February 25, 2021, and is available
in Arch.
belikor added a commit to belikor/lbry-sdk that referenced this issue Aug 21, 2021
As reported in issue lbryio#2769, the `lbrynet` daemon doesn't respond
correctly when it is compiled against Python 3.8+, only with
Python 3.7.

Instead of using `aiohttp==3.5.4` which was released on
January 12, 2019, we use `aiohttp=3.6.2` which was released
October 9, 2019, and is available in Ubuntu 20.04.

By using this newer version, the RCP server seems to work
correctly both with Python 3.8 and 3.9.

We could also try a newer version, like `3.7.4` as
it was launched on February 25, 2021, and is available
in Arch.
belikor added a commit to belikor/lbry-sdk that referenced this issue Sep 12, 2021
As reported in issue lbryio#2769, the `lbrynet` daemon doesn't respond
correctly when it is compiled against Python 3.8+, only with
Python 3.7.

Instead of using `aiohttp==3.5.4` which was released on
January 12, 2019, we use `aiohttp=3.6.2` which was released
October 9, 2019, and is available in Ubuntu 20.04.

By using this newer version, the RCP server seems to work
correctly both with Python 3.8 and 3.9.

We could also try a newer version, like `3.7.4` as
it was launched on February 25, 2021, and is available
in Arch.
belikor added a commit to belikor/lbry-sdk that referenced this issue Sep 12, 2021
As reported in issue lbryio#2769, the `lbrynet` daemon doesn't respond
correctly when it is compiled against Python 3.8+, only with
Python 3.7.

Instead of using `aiohttp==3.5.4` which was released on
January 12, 2019, we use `aiohttp=3.6.2` which was released
October 9, 2019, and is available in Ubuntu 20.04.

By using this newer version, the RCP server seems to work
correctly both with Python 3.8 and 3.9.

We could also try a newer version, like `3.7.4` as
it was launched on February 25, 2021, and is available
in Arch.
belikor added a commit to belikor/lbry-sdk that referenced this issue Sep 14, 2021
As reported in issue lbryio#2769, the `lbrynet` daemon doesn't respond
correctly when it is compiled against Python 3.8+, only with
Python 3.7.

Instead of using `aiohttp==3.5.4` which was released on
January 12, 2019, we use `aiohttp=3.6.2` which was released
October 9, 2019, and is available in Ubuntu 20.04.

By using this newer version, the RCP server seems to work
correctly both with Python 3.8 and 3.9.

We could also try a newer version, like `3.7.4` as
it was launched on February 25, 2021, and is available
in Arch.
belikor added a commit to belikor/lbry-sdk that referenced this issue Sep 19, 2021
As reported in issue lbryio#2769, the `lbrynet` daemon doesn't respond
correctly when it is compiled against Python 3.8+, only with
Python 3.7.

Instead of using `aiohttp==3.5.4` which was released on
January 12, 2019, we use `aiohttp=3.6.2` which was released
October 9, 2019, and is available in Ubuntu 20.04.

By using this newer version, the RCP server seems to work
correctly both with Python 3.8 and 3.9.

We could also try a newer version, like `3.7.4` as
it was launched on February 25, 2021, and is available
in Arch.
@vertbyqb
Copy link

vertbyqb commented Apr 7, 2022

This issue has been solved. I installed it in a venv running Python version 3.9.9 and everything worked just fine. Out of interest I also (not at the same time) removed all of the required version numbers in setup.py, so it just installed the latest version of each dependency, and everything seemed to be fine. Perhaps you should also consider updating the version numbers?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants