Skip to content

Conversation

z3ugma
Copy link

@z3ugma z3ugma commented Jul 6, 2025

Addresses part of #144 which involves CadQuery version support.
Python 3.8 is EOL
Newer versions of CadQuery don't support it so this PR drops support for Python 3.8

@z3ugma
Copy link
Author

z3ugma commented Jul 6, 2025

Python 3.8 is now end-of-life https://devguide.python.org/versions/
it looks like the CI is running tests on Python 3.8 though. I bumped the CI version to support 3.9 as the minimum supported version

Copy link
Member

@ubruhin ubruhin left a comment

Choose a reason for hiding this comment

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

There are now several unrelated changes mixed in a single PR. Would you mind to factor out everything which is not related to the cadquery bump?

@z3ugma
Copy link
Author

z3ugma commented Jul 6, 2025

There are now several unrelated changes mixed in a single PR. Would you mind to factor out everything which is not related to the cadquery bump?

The 3.8 -> 3.9 changes are related to the minimum supported version of CadQuery - when CadQuery went from 2.4 to 2.5 it dropped support for Python 3.8. But yes, I will otherwise focus the PR as much as I can to what is necessary for bumping CadQuery. I'll see if 2.4 works with recent Apple Silicon to avoid needing to bump the min Python, otherwise leave that in.

@ubruhin
Copy link
Member

ubruhin commented Jul 6, 2025

The 3.8 -> 3.9 changes are related to the minimum supported version of CadQuery

Alright, but it would still be nice to do this in a separate PR, together with the Readme update, CI update and anything related to the Python update (and the .gitignore if you like). This is a no-brainer to merge. Then we can do the CadQuery update PR which needs more attention because CadQuery is an important dependency (and unfortunately the underlying OpenCascade library already caused lots of annoying problems, some of their official released versions are completely unusable for us - who knows if the new CadQuery version contains such a broken OpenCascade version).

@z3ugma z3ugma changed the title Bump min Python to 3.9, bump CadQuery to support Apple Silicon Bump min Python to 3.9 Jul 6, 2025
@ubruhin
Copy link
Member

ubruhin commented Jul 7, 2025

@z3ugma I approved the CI to run, but it looks like there's some problem with Python 3.12 :-/ Can you take care of that?

@z3ugma
Copy link
Author

z3ugma commented Jul 7, 2025

@z3ugma I approved the CI to run, but it looks like there's some problem with Python 3.12 :-/ Can you take care of that?

Yep - looks to be a flake8 versioning problem -
Do you prefer I just move it to Ruff formatting/linting instead of Flake8 if I am going to be undertaking a change? #133 started that work

File "/opt/hostedtoolcache/Python/3.12.11/x64/lib/python3.12/site-packages/flake8/plugins/manager.py", line 243, in __init__
    self._load_entrypoint_plugins()
  File "/opt/hostedtoolcache/Python/3.12.11/x64/lib/python3.12/site-packages/flake8/plugins/manager.py", line [26](https://github.com/LibrePCB/librepcb-parts-generator/actions/runs/16101247462/job/45430845055?pr=145#step:7:27)1, in _load_entrypoint_plugins
    eps = importlib_metadata.entry_points().get(self.namespace, ())
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'EntryPoints' object has no attribute 'get'
Error: Process completed with exit code 1.

@ubruhin
Copy link
Member

ubruhin commented Jul 7, 2025

Do you prefer I just move it to Ruff formatting/linting instead of Flake8 if I am going to be undertaking a change? #133 started that work

I think that would be the best solution indeed - if you are motivated to do this change, I'd appreciate it. Alternatively one could consider dropping Python 3.12 & 3.13 for now to get the cadquery bump done, but it would just be a temporary workaround of course. The real problem needs to be fixed some day anyway.

@rnestler
Copy link
Member

I can update the Ruff PR.

@z3ugma z3ugma mentioned this pull request Aug 1, 2025
4 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants