Skip to content

Conversation

@DiamondJoseph
Copy link
Contributor

@DiamondJoseph DiamondJoseph commented May 12, 2025

Currently leaves Pyright strict mode disabled, see #945.
Gives ownership of the project in the dev-portal to all of the DAQ Core team.
Drops support for python 3.10, adds support for 3.13: is this a breaking change for the library applications of blueapi?

@codecov
Copy link

codecov bot commented May 12, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 94.69%. Comparing base (5309f52) to head (4f7b965).
Report is 38 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #944      +/-   ##
==========================================
- Coverage   94.73%   94.69%   -0.05%     
==========================================
  Files          41       41              
  Lines        2486     2486              
==========================================
- Hits         2355     2354       -1     
- Misses        131      132       +1     

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

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@DiamondJoseph DiamondJoseph requested a review from ZohebShaikh May 12, 2025 10:00
Copy link
Contributor

@tpoliaw tpoliaw left a comment

Choose a reason for hiding this comment

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

Does blueapi work with 3.13? It may be something in my local environment but trying to run in 3.13 gives several pages of stacktrace that seems to be from aioca not supporting it. The project page doesn't list 3.13 as supported although it might just be out of date.

@DiamondJoseph
Copy link
Contributor Author

Does blueapi work with 3.13? It may be something in my local environment but trying to run in 3.13 gives several pages of stacktrace that seems to be from aioca not supporting it. The project page doesn't list 3.13 as supported although it might just be out of date.

Looks like I need to update the copier template there first- I'm assuming that it should but we'll find out

@tpoliaw
Copy link
Contributor

tpoliaw commented May 12, 2025

Digging into this a bit more, I don't think epicscorelibs (used by aioca) supports 3.13 at all. With an empty environment and a clean install of Python 3.13

❯ uv run --with epicscorelibs --python /dls/local_python/Python-3.13.3/python python
  × Failed to build `epicscorelibs==7.0.7.99.1.1`
  ├─▶ The build backend returned an error
  ╰─▶ Call to `setuptools.build_meta:__legacy__.build_wheel` failed (exit status: 1)
// Pages of C compile errors

The same thing with 3.12 runs as expected

@DiamondJoseph
Copy link
Contributor Author

I'm not sure if that's not supporting 3.13 or not liking uv, see this issue

epics-base/epicscorelibs#34

@tpoliaw
Copy link
Contributor

tpoliaw commented May 12, 2025

That's a different error from using the prebuilt python-build-standalone versions of python at runtime. This one is from the library itself and is reproducible without uv.

❯ python --version
Python 3.13.3

❯ python -m venv env

❯ source env/bin/activate

❯ python -m pip install epicscorelibs
// ...
Building wheels for collected packages: epicscorelibs
  Building wheel for epicscorelibs (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for epicscorelibs (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [1594 lines of output]

@DiamondJoseph
Copy link
Contributor Author

DiamondJoseph commented May 12, 2025

Building aioca with Python 3.13 in their CI uses epicscorelibs==7.0.7.99.1.1- but it fails several of the tests and times out on other OSs, so there likely is something more serious underlying that.

I think we can't merge this until aioca supports 3.13 and for that we'll need epicscorelibs to support it also.

@DiamondJoseph DiamondJoseph marked this pull request as draft May 12, 2025 13:32
@callumforrester
Copy link
Contributor

From discussion, we can merge it but only support up to 3.12 for now

@tpoliaw
Copy link
Contributor

tpoliaw commented Jun 4, 2025

Think this was done in #1013

@callumforrester
Copy link
Contributor

So it was, thanks

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants