diff --git a/requirements.py b/requirements.py index d98065f62f..0508db4c2d 100644 --- a/requirements.py +++ b/requirements.py @@ -41,7 +41,7 @@ 'psutil==5.9.1', 'python-dateutil==2.8.2', 'pytz==2022.1', - 'PyYAML==6.0', + 'PyYAML==6.0.3', 'setuptools>=40.0.0,<=70.0.0', # tzlocal 3.0 breaks without the backports.tzinfo package on python < 3.9 https://pypi.org/project/tzlocal/3.0/ 'tzlocal==2.1', @@ -65,7 +65,7 @@ 'sphinxcontrib-mermaid'], 'drivers': ['pymodbus==2.5.3', 'bacpypes==0.16.7', - 'modbus-tk==1.1.2', + 'modbus-tk==1.1.5', 'pyserial==3.5'], 'influxdb': ['influxdb==5.3.1'], 'market': ['numpy==1.23.1', 'transitions==0.8.11'], @@ -84,7 +84,7 @@ 'pytest-rerunfailures==10.2', 'websocket-client==1.2.2', 'deepdiff==5.8.1', - 'docker==5.0.3', + 'docker==7.1.0', 'pytest_asyncio==0.19.0', 'pytest_timeout==2.1.0'], 'weather': ['Pint==0.19.2'], @@ -95,6 +95,6 @@ 'passlib==1.7.4', 'argon2-cffi==21.3.0', 'Werkzeug==2.2.1', - 'treelib==1.6.1'], + 'treelib==1.8.0'], 'dnp3': ['dnp3-python==0.2.3b3'], 'openadr': ['openleadr==0.5.30']} diff --git a/volttron/platform/config.py b/volttron/platform/config.py index 3367de4bc0..9cc99d0a18 100644 --- a/volttron/platform/config.py +++ b/volttron/platform/config.py @@ -373,8 +373,12 @@ def _take(n): # This argument is positional; skip further processing cli_args.append(arg_string) continue - # Some kind of option was encountered, so deal with it - action, option_string, explicit_arg = option_tuple + # Handle Python 3.12+ compatibility where _parse_optional may return more than 3 values + if _sys.version_info.minor >= 12: + action, option_string, sep, explicit_arg = option_tuple + else: + # Fallback for older Python versions + action, option_string, explicit_arg = option_tuple if explicit_arg is not None: args = [explicit_arg] elif action.nargs in [_argparse.REMAINDER, _argparse.PARSER]: