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

Python 3.12 compatibility #1260

Closed

Conversation

Bastian-Krause
Copy link
Member

@Bastian-Krause Bastian-Krause commented Aug 24, 2023

Description
Python 3.12 is expected to be released on 2023-10-02. Now that 3.12.0-rc1 is released and the ABI settled, it's a good time to see what needs fixing. It turns out, labgrid itself works fine, but some dependencies are not ready, yet:

This draft PR works around these issues (by using pre-releases, switching from pypi to git URLs, switching to forks).

Checklist

  • PR has been tested (currently CI only)

@codecov
Copy link

codecov bot commented Aug 24, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 63.1%. Comparing base (c4a0867) to head (b4be952).
Report is 285 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff            @@
##           master   #1260     +/-   ##
========================================
- Coverage    63.1%   63.1%   -0.1%     
========================================
  Files         160     160             
  Lines       11914   11914             
========================================
- Hits         7520    7519      -1     
- Misses       4394    4395      +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

eth-utils<2.3.0 required to circumvent the following error:

  Traceback (most recent call last):
    File "/home/runner/work/labgrid/labgrid/crossbar-venv/bin/crossbar", line 5, in <module>
      from crossbar import run
    File "/home/runner/work/labgrid/labgrid/crossbar-venv/lib/python3.12/site-packages/crossbar/__init__.py", line 19, in <module>
      import eth_abi
    File "/home/runner/work/labgrid/labgrid/crossbar-venv/lib/python3.12/site-packages/eth_abi/__init__.py", line 15, in <module>
      from eth_abi.abi import (  # NOQA
    File "/home/runner/work/labgrid/labgrid/crossbar-venv/lib/python3.12/site-packages/eth_abi/abi.py", line 1, in <module>
      from eth_abi.codec import (
    File "/home/runner/work/labgrid/labgrid/crossbar-venv/lib/python3.12/site-packages/eth_abi/codec.py", line 12, in <module>
      from eth_abi.decoding import (
    File "/home/runner/work/labgrid/labgrid/crossbar-venv/lib/python3.12/site-packages/eth_abi/decoding.py", line 8, in <module>
      from eth_utils import (
    File "/home/runner/work/labgrid/labgrid/crossbar-venv/lib/python3.12/site-packages/eth_utils/__init__.py", line 86, in <module>
      from .network import (
    File "/home/runner/work/labgrid/labgrid/crossbar-venv/lib/python3.12/site-packages/eth_utils/network.py", line 7, in <module>
      from eth_typing import ChainId
  ImportError: cannot import name 'ChainId' from 'eth_typing' (/home/runner/work/labgrid/labgrid/crossbar-venv/lib/python3.12/site-packages/eth_typing/__init__.py)

Signed-off-by: Bastian Krause <[email protected]>
Copy link
Contributor

@sjg20 sjg20 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if upstream crossbar is doing fixes?

@Bastian-Krause
Copy link
Member Author

Bastian-Krause commented Apr 15, 2024

I wonder if upstream crossbar is doing fixes?

We will move to gRPC eventually (see #1417).

Bastian-Krause added a commit to Bastian-Krause/labgrid that referenced this pull request Aug 8, 2024
The latest crossbar release was not compatible with python3.12. Now that
the crossbar dependency is gone, we can finally advertise python3.12
compatibility.

Closes labgrid-project#1260

Signed-off-by: Bastian Krause <[email protected]>
Bastian-Krause added a commit to Bastian-Krause/labgrid that referenced this pull request Aug 8, 2024
The latest crossbar release was not compatible with python3.12. Now that
the crossbar dependency is gone, we can finally advertise python3.12
compatibility.

Closes labgrid-project#1260

Signed-off-by: Bastian Krause <[email protected]>
Bastian-Krause added a commit to Bastian-Krause/labgrid that referenced this pull request Aug 13, 2024
The latest crossbar release was not compatible with python3.12. Now that
the crossbar dependency is gone, we can finally advertise python3.12
compatibility.

Closes labgrid-project#1260

Signed-off-by: Bastian Krause <[email protected]>
Bastian-Krause added a commit that referenced this pull request Aug 13, 2024
The latest crossbar release was not compatible with python3.12. Now that
the crossbar dependency is gone, we can finally advertise python3.12
compatibility.

Closes #1260

Signed-off-by: Bastian Krause <[email protected]>
Bastian-Krause added a commit that referenced this pull request Aug 13, 2024
The latest crossbar release was not compatible with python3.12. Now that
the crossbar dependency is gone, we can finally advertise python3.12
compatibility.

Closes #1260

Signed-off-by: Bastian Krause <[email protected]>
Bastian-Krause added a commit to Bastian-Krause/labgrid that referenced this pull request Aug 13, 2024
The latest crossbar release was not compatible with python3.12. Now that
the crossbar dependency is gone, we can finally advertise python3.12
compatibility.

Closes labgrid-project#1260

Signed-off-by: Bastian Krause <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants