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 Python 3.13 to CI #3646

Draft
wants to merge 5 commits into
base: master
Choose a base branch
from
Draft

Add Python 3.13 to CI #3646

wants to merge 5 commits into from

Conversation

benclifford
Copy link
Collaborator

Type of change

  • Code maintenance/cleanup

@benclifford
Copy link
Collaborator Author

This needs a radical pilot upgrade, which doesn't work immediately in my dev environment. If I change to radical pilot and utils 1.83, and run pytest parsl/tests/ --config parsl/tests/configs/local_radical.py --log-cli-level=DEBUG, I get a hang and the below stack trace. I haven't dug in any deeper.

$ cat pmgr_launching.0000.err 
Traceback (most recent call last):
  File "/home/benc/parsl/virtualenv-3.12/bin/radical-pilot-component", line 147, in <module>
    ru.daemonize(main=main, args=[sid, reg_addr, uid, evt],
  File "/home/benc/parsl/virtualenv-3.12/lib/python3.12/site-packages/radical/utils/daemon.py", line 114, in daemonize
    else           : main(*args)
                     ^^^^^^^^^^^
  File "/home/benc/parsl/virtualenv-3.12/bin/radical-pilot-component", line 64, in main
    wrapped_main(sid, reg_addr, uid, log, prof, evt)
  File "/home/benc/parsl/virtualenv-3.12/bin/radical-pilot-component", line 92, in wrapped_main
    comp = rp.utils.BaseComponent.create(c_cfg, session)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/benc/parsl/virtualenv-3.12/lib/python3.12/site-packages/radical/pilot/utils/component.py", line 301, in create
    return comp[cfg.kind].create(cfg, session)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/benc/parsl/virtualenv-3.12/lib/python3.12/site-packages/radical/pilot/pmgr/launching/base.py", line 167, in create
    return cls(cfg, session)
           ^^^^^^^^^^^^^^^^^
  File "/home/benc/parsl/virtualenv-3.12/lib/python3.12/site-packages/radical/pilot/pmgr/launching/base.py", line 135, in __init__
    from .saga  import PilotLauncherSAGA
  File "/home/benc/parsl/virtualenv-3.12/lib/python3.12/site-packages/radical/pilot/pmgr/launching/saga.py", line 15, in <module>
    import radical.saga
  File "/home/benc/parsl/virtualenv-3.12/lib/python3.12/site-packages/radical/saga/__init__.py", line 10, in <module>
    from .version    import *
  File "/home/benc/parsl/virtualenv-3.12/lib/python3.12/site-packages/radical/saga/version.py", line 9, in <module>
    version_short, version_detail, version_base, version_branch, \
ValueError: not enough values to unpack (expected 6, got 5)

@AymenFJA @andre-merzky

@andre-merzky
Copy link

Hi Ben - you would also need to update radical.saga. Or, probably better, you could uninstall radical.saga and the RP dependency would pull psij-python instead as batch API, which is where we are heading to generally.

github-merge-queue bot pushed a commit that referenced this pull request Dec 17, 2024
This brings in fixes for a few issues that are fixed on the radical side
of things:

#3722 - a race condition on task completion
#3708 - cleaner shutdown handling as part of #3397
#3646 - Python 3.13 support

# Changed Behaviour

whatever has changed in radical-pilot

# Fixes

#3722

## Type of change

- Bug fix
@benclifford
Copy link
Collaborator Author

after radical upgrade in #3725, the next block is in parsl-visualize, with a tangle between pandas (which needs upgrading to compile on Python 3.13) ... which loosens the numpy bounds ... which breaks networkx ... and also the pandas sqlalchemy interface has changed (now it cannot take an engine and needs a connection object? https://stackoverflow.com/questions/38332787/pandas-to-sql-to-sqlite-returns-engine-object-has-no-attribute-cursor)

@benclifford
Copy link
Collaborator Author

possibly there should be a monitoring upgrade to sqlalchemy 2 -- I did a port before so that LSST people could use that even though the in-tree dependency spec is for 1.x, and one of the above pandas problems is due to using sqlalchemy 1.x

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.

2 participants