From de8ed12ed0473bf232e55ab4391aa746229369fe Mon Sep 17 00:00:00 2001 From: harry-shepherd <17930806+harry-shepherd@users.noreply.github.com> Date: Mon, 9 Mar 2026 15:37:35 +0000 Subject: [PATCH 1/3] XIOS3 compatibility --- Coupled_Drivers/dr_env_lib/xios_def.py | 3 ++- Coupled_Drivers/xios_driver.py | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/Coupled_Drivers/dr_env_lib/xios_def.py b/Coupled_Drivers/dr_env_lib/xios_def.py index 9eb289b..63e6842 100644 --- a/Coupled_Drivers/dr_env_lib/xios_def.py +++ b/Coupled_Drivers/dr_env_lib/xios_def.py @@ -29,5 +29,6 @@ 'IODEF_FILENAME': {'default_val': 'iodef.xml'}, 'ROSE_LAUNCHER_PREOPTS_XIOS': {'default_val': 'unset'}, 'XIOS_EXEC': {}, - 'XIOS_LINK': {'default_val': 'xios.exe'} + 'XIOS_LINK': {'default_val': 'xios.exe'}, + 'XIOS_VERSION': {'default_val': '2'} } diff --git a/Coupled_Drivers/xios_driver.py b/Coupled_Drivers/xios_driver.py index 3834673..90c01e5 100644 --- a/Coupled_Drivers/xios_driver.py +++ b/Coupled_Drivers/xios_driver.py @@ -63,7 +63,10 @@ def _update_iodef( text_bool[is_coupled_mode]) # Update the list of coupled components elif '' \ + oasis_components+'' else: From ad14e015c667236329c729290a19355b802a77de Mon Sep 17 00:00:00 2001 From: harry-shepherd <17930806+harry-shepherd@users.noreply.github.com> Date: Mon, 9 Mar 2026 16:34:19 +0000 Subject: [PATCH 2/3] Bugfix --- Coupled_Drivers/xios_driver.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Coupled_Drivers/xios_driver.py b/Coupled_Drivers/xios_driver.py index 90c01e5..3533b00 100644 --- a/Coupled_Drivers/xios_driver.py +++ b/Coupled_Drivers/xios_driver.py @@ -35,7 +35,8 @@ def _copy_iodef_custom(xios_evar): shutil.copy(xios_evar['IODEF_CUSTOM'], xios_evar['IODEF_FILENAME']) def _update_iodef( - is_server_mode, is_coupled_mode, oasis_components, iodef_fname): + is_server_mode, is_coupled_mode, oasis_components, iodef_fname, + xios_version): ''' Update the iodef.xml file for server/attatched mode and couplng mode. is_server_mode and is_coupled_mode are boolean. (true when each option @@ -63,7 +64,7 @@ def _update_iodef( text_bool[is_coupled_mode]) # Update the list of coupled components elif ' Date: Mon, 9 Mar 2026 17:39:12 +0000 Subject: [PATCH 3/3] Add clients_code_id for xios3 compatibility (hopefully) --- Coupled_Drivers/xios_driver.py | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/Coupled_Drivers/xios_driver.py b/Coupled_Drivers/xios_driver.py index 3533b00..32a1ff7 100644 --- a/Coupled_Drivers/xios_driver.py +++ b/Coupled_Drivers/xios_driver.py @@ -63,13 +63,17 @@ def _update_iodef( line = line.replace(text_bool[not is_coupled_mode], \ text_bool[is_coupled_mode]) # Update the list of coupled components - elif '' \ - + oasis_components+'' + elif '' \ + + oasis_components+'' + else: + # For XIOS2/2.5 the appropriate variable is oasis_codes_id + line = '' \ + + oasis_components+'' else: line = ''