prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Radical Pilot test failure in CI
  **Describe the bug**
  Since around Friday (according to @WardLT ), Parsl CI has been failing with this radical failure:
  
  ```
  parsl/tests/conftest.py:180: 
  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
  parsl/tests/configs/local_radical.py:4: in <module>
      from parsl.executors.radical import RadicalPilotExecutor
  parsl/executors/radical/__init__.py:1: in <module>
      from parsl.executors.radical.executor import RadicalPilotExecutor
  parsl/executors/radical/executor.py:20: in <module>
      from .rpex_resources import ResourceConfig
  parsl/executors/radical/rpex_resources.py:8: in <module>
      import radical.pilot as rp
  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
  
      
      __copyright__ = "Copyright 2013-2014, http://radical.rutgers.edu/"
      __license__   = "MIT"
      
      # ------------------------------------------------------------------------------
      # we *first* import radical.utils, so that the monkeypatching of the logger has
      # a chance to kick in before the logging module is pulled by any other 3rd party
      # module, and also to monkeypatch `os.fork()` for the `atfork` functionality
      import radical.utils as _ru
      
      # ------------------------------------------------------------------------------
      # constants and types
      from .states     import *
      from .constants  import *
      
      
      # ------------------------------------------------------------------------------
      # import API
      from .session                   import Session
      from .proxy                     import Proxy
      
      from .task_manager              import TaskManager
      from .task                      import Task
      from .raptor_tasks              import RaptorMaster, RaptorWorker
      from .pytask                    import PythonTask
      from .task_description          import TaskDescription
      from .task_description          import TASK_EXECUTABLE
      from .task_description          import TASK_METH, TASK_METHOD
      from .task_description          import TASK_FUNC, TASK_FUNCTION
      from .task_description          import TASK_EXEC, TASK_EVAL
      from .task_description          import TASK_PROC, TASK_SHELL
      from .task_description          import RAPTOR_MASTER, RAPTOR_WORKER
      from .task_description          import AGENT_SERVICE
      from .resource_config           import ResourceConfig
      
      from .pilot_manager             import PilotManager
      from .pilot                     import Pilot
      from .pilot_description         import PilotDescription
      
      pythontask = PythonTask.pythontask
      
      
      # ------------------------------------------------------------------------------
      # make submodules available -- mostly for internal use
      from . import utils
      from . import tmgr
      from . import pmgr
      from . import agent
      
      from .agent  import Agent_0
      from .agent  import Agent_n
      
      from .raptor import Master, Worker
      
      
      # ------------------------------------------------------------------------------
      #
      # get version info
      #
      import os as _os
      
  >   version_short, version_detail, version_base, version_branch, \
              sdist_name, sdist_path = _ru.get_version(_os.path.dirname(__file__))
  E   ValueError: not enough values to unpack (expected 6, got 5)
  
  .venv/lib/python3.11/site-packages/radical/pilot/__init__.py:62: ValueError
  ```
  
  cc @AymenFJA @andre-merzky
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `setup.py`
  Content:
  ```
  1 from setuptools import setup, find_packages
  2 
  3 with open('parsl/version.py') as f:
  4     exec(f.read())
  5 
  6 with open('requirements.txt') as f:
  7     install_requires = f.readlines()
  8 
  9 extras_require = {
  10     'monitoring' : [
  11         'sqlalchemy>=1.4,<2'
  12     ],
  13     'visualization' : [
  14         'pydot',
  15         'networkx>=2.5,<2.6',
  16         'Flask>=1.0.2',
  17         'flask_sqlalchemy',
  18         'pandas<2.2',
  19         'plotly',
  20         'python-daemon'
  21     ],
  22     'aws' : ['boto3'],
  23     'kubernetes' : ['kubernetes'],
  24     'oauth_ssh' : ['oauth-ssh>=0.9'],
  25     'docs' : [
  26         'ipython<=8.6.0',
  27         'nbsphinx',
  28         'sphinx>=7.1,<7.2',  # 7.2 requires python 3.9+
  29         'sphinx_rtd_theme'
  30     ],
  31     'google_cloud' : ['google-auth', 'google-api-python-client'],
  32     'gssapi' : ['python-gssapi'],
  33     'azure' : ['azure<=4', 'msrestazure'],
  34     'workqueue': ['work_queue'],
  35     'flux': ['pyyaml', 'cffi', 'jsonschema'],
  36     'proxystore': ['proxystore'],
  37     'radical-pilot': ['radical.pilot==1.52.1'],
  38     # Disabling psi-j since github direct links are not allowed by pypi
  39     # 'psij': ['psi-j-parsl@git+https://github.com/ExaWorks/psi-j-parsl']
  40 }
  41 extras_require['all'] = sum(extras_require.values(), [])
  42 
  43 setup(
  44     name='parsl',
  45     version=VERSION,
  46     description='Simple data dependent workflows in Python',
  47     long_description='Simple parallel workflows system for Python',
  48     url='https://github.com/Parsl/parsl',
  49     author='The Parsl Team',
  50     author_email='parsl@googlegroups.com',
  51     license='Apache 2.0',
  52     download_url='https://github.com/Parsl/parsl/archive/{}.tar.gz'.format(VERSION),
  53     include_package_data=True,
  54     package_data={'parsl': ['py.typed']},
  55     packages=find_packages(),
  56     python_requires=">=3.8.0",
  57     install_requires=install_requires,
  58     scripts = ['parsl/executors/high_throughput/process_worker_pool.py',
  59                'parsl/executors/workqueue/exec_parsl_function.py',
  60                'parsl/executors/workqueue/parsl_coprocess.py',
  61     ],
  62 
  63     extras_require=extras_require,
  64     classifiers=[
  65         # Maturity
  66         'Development Status :: 5 - Production/Stable',
  67         # Intended audience
  68         'Intended Audience :: Developers',
  69         # Licence, must match with licence above
  70         'License :: OSI Approved :: Apache Software License',
  71         # Python versions supported
  72         'Programming Language :: Python :: 3.8',
  73         'Programming Language :: Python :: 3.9',
  74         'Programming Language :: Python :: 3.10',
  75         'Programming Language :: Python :: 3.11',
  76         'Programming Language :: Python :: 3.12',
  77     ],
  78     keywords=['Workflows', 'Scientific computing'],
  79     entry_points={'console_scripts':
  80       [
  81        'parsl-globus-auth=parsl.data_provider.globus:cli_run',
  82        'parsl-visualize=parsl.monitoring.visualization.app:cli_run',
  83        'parsl-perf=parsl.benchmark.perf:cli_run',
  84       ]}
  85 )
  86
  ```
  --- END FILES ---
  
  Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.
  
  Here is an example:
  
  ```diff
  diff --git a/examples/server_async.py b/examples/server_async.py
  --- a/examples/server_async.py
  +++ b/examples/server_async.py
  @@ -313,4 +313,4 @@
   
   
   if __name__ == "__main__":
  -    asyncio.run(run_async_server("."), debug=True)
  +    asyncio.run(run_async_server(), debug=True)
  diff --git a/examples/server_sync.py b/examples/server_sync.py
  --- a/examples/server_sync.py
  +++ b/examples/server_sync.py
  @@ -313,5 +313,5 @@
   
   
   if __name__ == "__main__":
  -    server = run_sync_server(".")
  +    server = run_sync_server()
       server.shutdown()
  
  ```
  
golden_diff: diff --git a/setup.py b/setup.py
  --- a/setup.py
  +++ b/setup.py
  @@ -34,7 +34,7 @@
       'workqueue': ['work_queue'],
       'flux': ['pyyaml', 'cffi', 'jsonschema'],
       'proxystore': ['proxystore'],
  -    'radical-pilot': ['radical.pilot==1.52.1'],
  +    'radical-pilot': ['radical.pilot==1.52.1', 'radical.utils==1.52'],
       # Disabling psi-j since github direct links are not allowed by pypi
       # 'psij': ['psi-j-parsl@git+https://github.com/ExaWorks/psi-j-parsl']
   }
  
verification_info: {"golden_diff": "diff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -34,7 +34,7 @@\n     'workqueue': ['work_queue'],\n     'flux': ['pyyaml', 'cffi', 'jsonschema'],\n     'proxystore': ['proxystore'],\n-    'radical-pilot': ['radical.pilot==1.52.1'],\n+    'radical-pilot': ['radical.pilot==1.52.1', 'radical.utils==1.52'],\n     # Disabling psi-j since github direct links are not allowed by pypi\n     # 'psij': ['psi-j-parsl@git+https://github.com/ExaWorks/psi-j-parsl']\n }\n", "issue": "Radical Pilot test failure in CI\n**Describe the bug**\r\nSince around Friday (according to @WardLT ), Parsl CI has been failing with this radical failure:\r\n\r\n```\r\nparsl/tests/conftest.py:180: \r\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \r\nparsl/tests/configs/local_radical.py:4: in <module>\r\n    from parsl.executors.radical import RadicalPilotExecutor\r\nparsl/executors/radical/__init__.py:1: in <module>\r\n    from parsl.executors.radical.executor import RadicalPilotExecutor\r\nparsl/executors/radical/executor.py:20: in <module>\r\n    from .rpex_resources import ResourceConfig\r\nparsl/executors/radical/rpex_resources.py:8: in <module>\r\n    import radical.pilot as rp\r\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \r\n\r\n    \r\n    __copyright__ = \"Copyright 2013-2014, http://radical.rutgers.edu/\"\r\n    __license__   = \"MIT\"\r\n    \r\n    # ------------------------------------------------------------------------------\r\n    # we *first* import radical.utils, so that the monkeypatching of the logger has\r\n    # a chance to kick in before the logging module is pulled by any other 3rd party\r\n    # module, and also to monkeypatch `os.fork()` for the `atfork` functionality\r\n    import radical.utils as _ru\r\n    \r\n    # ------------------------------------------------------------------------------\r\n    # constants and types\r\n    from .states     import *\r\n    from .constants  import *\r\n    \r\n    \r\n    # ------------------------------------------------------------------------------\r\n    # import API\r\n    from .session                   import Session\r\n    from .proxy                     import Proxy\r\n    \r\n    from .task_manager              import TaskManager\r\n    from .task                      import Task\r\n    from .raptor_tasks              import RaptorMaster, RaptorWorker\r\n    from .pytask                    import PythonTask\r\n    from .task_description          import TaskDescription\r\n    from .task_description          import TASK_EXECUTABLE\r\n    from .task_description          import TASK_METH, TASK_METHOD\r\n    from .task_description          import TASK_FUNC, TASK_FUNCTION\r\n    from .task_description          import TASK_EXEC, TASK_EVAL\r\n    from .task_description          import TASK_PROC, TASK_SHELL\r\n    from .task_description          import RAPTOR_MASTER, RAPTOR_WORKER\r\n    from .task_description          import AGENT_SERVICE\r\n    from .resource_config           import ResourceConfig\r\n    \r\n    from .pilot_manager             import PilotManager\r\n    from .pilot                     import Pilot\r\n    from .pilot_description         import PilotDescription\r\n    \r\n    pythontask = PythonTask.pythontask\r\n    \r\n    \r\n    # ------------------------------------------------------------------------------\r\n    # make submodules available -- mostly for internal use\r\n    from . import utils\r\n    from . import tmgr\r\n    from . import pmgr\r\n    from . import agent\r\n    \r\n    from .agent  import Agent_0\r\n    from .agent  import Agent_n\r\n    \r\n    from .raptor import Master, Worker\r\n    \r\n    \r\n    # ------------------------------------------------------------------------------\r\n    #\r\n    # get version info\r\n    #\r\n    import os as _os\r\n    \r\n>   version_short, version_detail, version_base, version_branch, \\\r\n            sdist_name, sdist_path = _ru.get_version(_os.path.dirname(__file__))\r\nE   ValueError: not enough values to unpack (expected 6, got 5)\r\n\r\n.venv/lib/python3.11/site-packages/radical/pilot/__init__.py:62: ValueError\r\n```\r\n\r\ncc @AymenFJA @andre-merzky\n", "before_files": [{"content": "from setuptools import setup, find_packages\n\nwith open('parsl/version.py') as f:\n    exec(f.read())\n\nwith open('requirements.txt') as f:\n    install_requires = f.readlines()\n\nextras_require = {\n    'monitoring' : [\n        'sqlalchemy>=1.4,<2'\n    ],\n    'visualization' : [\n        'pydot',\n        'networkx>=2.5,<2.6',\n        'Flask>=1.0.2',\n        'flask_sqlalchemy',\n        'pandas<2.2',\n        'plotly',\n        'python-daemon'\n    ],\n    'aws' : ['boto3'],\n    'kubernetes' : ['kubernetes'],\n    'oauth_ssh' : ['oauth-ssh>=0.9'],\n    'docs' : [\n        'ipython<=8.6.0',\n        'nbsphinx',\n        'sphinx>=7.1,<7.2',  # 7.2 requires python 3.9+\n        'sphinx_rtd_theme'\n    ],\n    'google_cloud' : ['google-auth', 'google-api-python-client'],\n    'gssapi' : ['python-gssapi'],\n    'azure' : ['azure<=4', 'msrestazure'],\n    'workqueue': ['work_queue'],\n    'flux': ['pyyaml', 'cffi', 'jsonschema'],\n    'proxystore': ['proxystore'],\n    'radical-pilot': ['radical.pilot==1.52.1'],\n    # Disabling psi-j since github direct links are not allowed by pypi\n    # 'psij': ['psi-j-parsl@git+https://github.com/ExaWorks/psi-j-parsl']\n}\nextras_require['all'] = sum(extras_require.values(), [])\n\nsetup(\n    name='parsl',\n    version=VERSION,\n    description='Simple data dependent workflows in Python',\n    long_description='Simple parallel workflows system for Python',\n    url='https://github.com/Parsl/parsl',\n    author='The Parsl Team',\n    author_email='parsl@googlegroups.com',\n    license='Apache 2.0',\n    download_url='https://github.com/Parsl/parsl/archive/{}.tar.gz'.format(VERSION),\n    include_package_data=True,\n    package_data={'parsl': ['py.typed']},\n    packages=find_packages(),\n    python_requires=\">=3.8.0\",\n    install_requires=install_requires,\n    scripts = ['parsl/executors/high_throughput/process_worker_pool.py',\n               'parsl/executors/workqueue/exec_parsl_function.py',\n               'parsl/executors/workqueue/parsl_coprocess.py',\n    ],\n\n    extras_require=extras_require,\n    classifiers=[\n        # Maturity\n        'Development Status :: 5 - Production/Stable',\n        # Intended audience\n        'Intended Audience :: Developers',\n        # Licence, must match with licence above\n        'License :: OSI Approved :: Apache Software License',\n        # Python versions supported\n        'Programming Language :: Python :: 3.8',\n        'Programming Language :: Python :: 3.9',\n        'Programming Language :: Python :: 3.10',\n        'Programming Language :: Python :: 3.11',\n        'Programming Language :: Python :: 3.12',\n    ],\n    keywords=['Workflows', 'Scientific computing'],\n    entry_points={'console_scripts':\n      [\n       'parsl-globus-auth=parsl.data_provider.globus:cli_run',\n       'parsl-visualize=parsl.monitoring.visualization.app:cli_run',\n       'parsl-perf=parsl.benchmark.perf:cli_run',\n      ]}\n)\n", "path": "setup.py"}], "after_files": [{"content": "from setuptools import setup, find_packages\n\nwith open('parsl/version.py') as f:\n    exec(f.read())\n\nwith open('requirements.txt') as f:\n    install_requires = f.readlines()\n\nextras_require = {\n    'monitoring' : [\n        'sqlalchemy>=1.4,<2'\n    ],\n    'visualization' : [\n        'pydot',\n        'networkx>=2.5,<2.6',\n        'Flask>=1.0.2',\n        'flask_sqlalchemy',\n        'pandas<2.2',\n        'plotly',\n        'python-daemon'\n    ],\n    'aws' : ['boto3'],\n    'kubernetes' : ['kubernetes'],\n    'oauth_ssh' : ['oauth-ssh>=0.9'],\n    'docs' : [\n        'ipython<=8.6.0',\n        'nbsphinx',\n        'sphinx>=7.1,<7.2',  # 7.2 requires python 3.9+\n        'sphinx_rtd_theme'\n    ],\n    'google_cloud' : ['google-auth', 'google-api-python-client'],\n    'gssapi' : ['python-gssapi'],\n    'azure' : ['azure<=4', 'msrestazure'],\n    'workqueue': ['work_queue'],\n    'flux': ['pyyaml', 'cffi', 'jsonschema'],\n    'proxystore': ['proxystore'],\n    'radical-pilot': ['radical.pilot==1.52.1', 'radical.utils==1.52'],\n    # Disabling psi-j since github direct links are not allowed by pypi\n    # 'psij': ['psi-j-parsl@git+https://github.com/ExaWorks/psi-j-parsl']\n}\nextras_require['all'] = sum(extras_require.values(), [])\n\nsetup(\n    name='parsl',\n    version=VERSION,\n    description='Simple data dependent workflows in Python',\n    long_description='Simple parallel workflows system for Python',\n    url='https://github.com/Parsl/parsl',\n    author='The Parsl Team',\n    author_email='parsl@googlegroups.com',\n    license='Apache 2.0',\n    download_url='https://github.com/Parsl/parsl/archive/{}.tar.gz'.format(VERSION),\n    include_package_data=True,\n    package_data={'parsl': ['py.typed']},\n    packages=find_packages(),\n    python_requires=\">=3.8.0\",\n    install_requires=install_requires,\n    scripts = ['parsl/executors/high_throughput/process_worker_pool.py',\n               'parsl/executors/workqueue/exec_parsl_function.py',\n               'parsl/executors/workqueue/parsl_coprocess.py',\n    ],\n\n    extras_require=extras_require,\n    classifiers=[\n        # Maturity\n        'Development Status :: 5 - Production/Stable',\n        # Intended audience\n        'Intended Audience :: Developers',\n        # Licence, must match with licence above\n        'License :: OSI Approved :: Apache Software License',\n        # Python versions supported\n        'Programming Language :: Python :: 3.8',\n        'Programming Language :: Python :: 3.9',\n        'Programming Language :: Python :: 3.10',\n        'Programming Language :: Python :: 3.11',\n        'Programming Language :: Python :: 3.12',\n    ],\n    keywords=['Workflows', 'Scientific computing'],\n    entry_points={'console_scripts':\n      [\n       'parsl-globus-auth=parsl.data_provider.globus:cli_run',\n       'parsl-visualize=parsl.monitoring.visualization.app:cli_run',\n       'parsl-perf=parsl.benchmark.perf:cli_run',\n      ]}\n)\n", "path": "setup.py"}]}