

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Soporte de versiones para lenguajes de definición HealthOmics de flujos de trabajo
<a name="workflows-lang-versions"></a>

HealthOmics admite archivos de definición de flujos de trabajo escritos en Nextflow, WDL o CWL. En las siguientes secciones se proporciona información sobre la compatibilidad de las HealthOmics versiones con estos idiomas.

**Topics**
+ [Compatibilidad con las versiones WDL](#workflows-lang-versions-WDL)
+ [Compatibilidad con la versión CWL](#workflows-lang-versions-CWL)
+ [Compatibilidad con la versión de Nextflow](#workflows-lang-versions-nextflow)

## Compatibilidad con las versiones WDL
<a name="workflows-lang-versions-WDL"></a>

HealthOmics admite las versiones 1.0 y 1.1 y la versión de desarrollo de la especificación WDL.

Cada documento de la WDL debe incluir una declaración de versión para especificar la versión (principal y secundaria) de la especificación a la que se adhiere. [Para obtener más información sobre las versiones, consulte Control de versiones de la WDL](https://github.com/openwdl/wdl/blob/wdl-1.1/SPEC.md#versioning)

Las versiones 1.0 y 1.1 de la especificación WDL no admiten este tipo. `Directory` Para usar el `Directory` tipo para entradas o salidas, defina la versión **development** en la primera línea del archivo:

```
version development  # first line of .wdl file
     ... remainder of the file ...
```

## Compatibilidad con la versión CWL
<a name="workflows-lang-versions-CWL"></a>

HealthOmics es compatible con las versiones 1.0, 1.1 y 1.2 del lenguaje CWL.

Puede especificar la versión de idioma en el archivo de definición del flujo de trabajo de CWL. Para obtener más información sobre CWL, consulte la guía del usuario de [CWL](https://github.com/common-workflow-language/user_guide)

## Compatibilidad con la versión de Nextflow
<a name="workflows-lang-versions-nextflow"></a>

HealthOmics admite cuatro versiones estables de Nextflow. Nextflow suele lanzar una versión estable cada seis meses. HealthOmics no es compatible con las versiones «edge» mensuales.

HealthOmics admite las funciones publicadas en cada versión, pero no las funciones de vista previa.

### Versiones compatibles
<a name="workflows-versions-nextflow-list"></a>

HealthOmics es compatible con las siguientes versiones de Nextflow:
+ Nextflow v22.04.01 DSL 1 y DSL 2
+ Nextflow v23.10.0 DSL 2 (predeterminado)
+ Nextflow v24.10.8 DSL 2
+ Nextflow v25.10.0 DSL 2

**nota**  
HealthOmics no admite el modo de sintaxis estricta en Nextflow v25.10.0.

[Para migrar su flujo de trabajo a la última versión compatible (v25.10.0), siga la guía de actualización de Nextflow.](https://www.nextflow.io/docs/latest/migrations/25-10.html)

Hay algunos cambios importantes al migrar a las versiones 24 y 25 de Nextflow. [Siga la guía de migración de Nextflow.](https://www.nextflow.io/docs/latest/migrations/index.html)

### Detecte y procese las versiones de Nextflow
<a name="workflows-versions-processing"></a>

HealthOmics detecta la versión de DSL y la versión de Nextflow que especifique. Determina automáticamente la mejor versión de Nextflow para ejecutar en función de estas entradas.

#### Versión DSL
<a name="workflows-versions-p1"></a>

HealthOmics detecta la versión DSL solicitada en el archivo de definición del flujo de trabajo. Por ejemplo, puede especificar:`nextflow.enable.dsl=2`.

HealthOmics admite DSL 2 de forma predeterminada. Proporciona compatibilidad con versiones anteriores de DSL 1, si se especifica en el archivo de definición del flujo de trabajo.
+ Si especifica DSL 1, HealthOmics ejecuta Nextflow v22.04 DSL1 (la única versión compatible que ejecuta DSL 1).
+ Si no especificas una versión de DSL o si no HealthOmics puedes analizar la información de DSL por algún motivo (por ejemplo, por errores de sintaxis en el archivo de definición del flujo de trabajo), el HealthOmics valor predeterminado es DSL 2 y ejecuta Nextflow v23.10.0.
+ [Para actualizar su flujo de trabajo de DSL 1 a DSL 2 y aprovechar las últimas versiones y funciones del software de Nextflow, consulte Migración desde DSL 1.](https://nextflow.io/docs/latest/dsl1.html)

#### Versiones de Nextflow
<a name="workflows-versions-p2"></a>

HealthOmics detecta la versión de Nextflow solicitada en el archivo de configuración de Nextflow (nextflow.config), si usted proporciona este archivo. Le recomendamos que añada la `nextflowVersion` cláusula al final del archivo para evitar anulaciones inesperadas de las configuraciones incluidas. Para obtener más información, consulte Configuración de [Nextflow](https://nextflow.io/docs/latest/config.html).

Puede especificar una versión o un rango de versiones de Nextflow mediante la siguiente sintaxis:

```
   // exact match
   manifest.nextflowVersion = '1.2.3'   
            
   // 1.2 or later (excluding 2 and later)
   manifest.nextflowVersion = '1.2+'         
            
   // 1.2 or later
   manifest.nextflowVersion = '>=1.2'
            
   // any version in the range 1.2 to 1.5
   manifest.nextflowVersion = '>=1.2, <=1.5' 
            
   // use the "!" prefix to stop execution if the current version 
   // doesn't match the required version.
   manifest.nextflowVersion = '!>=1.2'
```

HealthOmics procesa la información de la versión de Nextflow de la siguiente manera: 
+ Si especifica una versión exacta que HealthOmics sea compatible, HealthOmics utilizará **=** esa versión. 
+ Si se utiliza **\$1** para especificar una versión exacta o un rango de versiones que no son compatibles, se HealthOmics genera una excepción y no se ejecuta correctamente. Considere usar esta opción si quiere ser estricto con las solicitudes de versión y fallar rápidamente si la solicitud incluye versiones no compatibles.
+ Si especifica un rango de versiones, HealthOmics utiliza la versión de mayor preferencia dentro de ese rango. El orden de preferencia de mayor a menor es la v23.10.0, la v22.04.0, la v24.10.8 y la v25.10.0. Por ejemplo:
  + Si el rango abarca las versiones 23.10.0, 24.10.8 y 25.10.0, elige la versión 23.10.0. HealthOmics 
  + Si el rango cubre las versiones 24.10.8 HealthOmics y 25.10.0, elige la versión 24.10.8.
+ Si no hay ninguna versión solicitada, o si las versiones solicitadas no son válidas o no se pueden analizar por algún motivo:
  + Si especificó DSL 1, HealthOmics ejecute Nextflow v22.04.
  + De lo contrario, ejecuta Nextflow v23.10.0 HealthOmics .

 Puede recuperar la siguiente información sobre la versión de Nextflow que HealthOmics se utilizó en cada ejecución:
+ Los registros de ejecución contienen información sobre la versión real de Nextflow que HealthOmics se utilizó para la ejecución.
+ HealthOmics agrega advertencias en los registros de ejecución si no hay una coincidencia directa con la versión solicitada o si necesita usar una versión diferente a la que especificó.
+ La respuesta a la operación de la **GetRun** API incluye un campo (`engineVersion`) con la versión real de Nextflow que HealthOmics se utilizó para la ejecución. Por ejemplo:

  ```
  "engineVersion":"22.04.0"
  ```