

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Supporto della versione per i linguaggi HealthOmics di definizione del flusso di lavoro
<a name="workflows-lang-versions"></a>

HealthOmics supporta file di definizione del flusso di lavoro scritti in Nextflow, WDL o CWL. Le seguenti sezioni forniscono informazioni sul supporto delle HealthOmics versioni per queste lingue.

**Topics**
+ [Supporto della versione WDL](#workflows-lang-versions-WDL)
+ [Supporto per la versione CWL](#workflows-lang-versions-CWL)
+ [Supporto per la versione Nextflow](#workflows-lang-versions-nextflow)

## Supporto della versione WDL
<a name="workflows-lang-versions-WDL"></a>

HealthOmics supporta le versioni 1.0, 1.1 e la versione di sviluppo della specifica WDL.

Ogni documento WDL deve includere una dichiarazione di versione per specificare a quale versione (principale e secondaria) della specifica a cui aderisce. [Per ulteriori informazioni sulle versioni, vedere WDL versioning](https://github.com/openwdl/wdl/blob/wdl-1.1/SPEC.md#versioning)

Le versioni 1.0 e 1.1 della specifica WDL non supportano questo tipo. `Directory` Per utilizzare il `Directory` tipo per input o output, impostate la versione su **development** nella prima riga del file:

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

## Supporto per la versione CWL
<a name="workflows-lang-versions-CWL"></a>

HealthOmics supporta le versioni 1.0, 1.1 e 1.2 del linguaggio CWL.

È possibile specificare la versione della lingua nel file di definizione del flusso di lavoro CWL. Per ulteriori informazioni su CWL, consultate la guida per l'utente di [CWL](https://github.com/common-workflow-language/user_guide)

## Supporto per la versione Nextflow
<a name="workflows-lang-versions-nextflow"></a>

HealthOmics supporta quattro versioni stabili di Nextflow. Nextflow rilascia in genere una versione stabile ogni sei mesi. HealthOmics non supporta le versioni mensili «edge».

HealthOmics supporta le funzionalità rilasciate in ogni versione, ma non le funzionalità di anteprima.

### Versioni supportate
<a name="workflows-versions-nextflow-list"></a>

HealthOmics supporta le seguenti versioni di Nextflow:
+ Nextflow v22.04.01 DSL 1 e DSL 2
+ Nextflow v23.10.0 DSL 2 (impostazione predefinita)
+ Nextflow versione 24.10.8 DSL 2
+ Nextflow v25.10.0 DSL 2

**Nota**  
HealthOmics non supporta la modalità di sintassi rigorosa in Nextflow v25.10.0.

[Per migrare il flusso di lavoro all'ultima versione supportata (v25.10.0), segui la guida all'aggiornamento di Nextflow.](https://www.nextflow.io/docs/latest/migrations/25-10.html)

Ci sono alcune modifiche sostanziali durante la migrazione a Nextflow v24 e v25. [Segui la guida alla migrazione di Nextflow.](https://www.nextflow.io/docs/latest/migrations/index.html)

### Rileva ed elabora le versioni di Nextflow
<a name="workflows-versions-processing"></a>

HealthOmics rileva la versione DSL e la versione di Nextflow specificate. Determina automaticamente la migliore versione di Nextflow da eseguire in base a questi input.

#### Versione DSL
<a name="workflows-versions-p1"></a>

HealthOmics rileva la versione DSL richiesta nel file di definizione del flusso di lavoro. Ad esempio, puoi specificare:. `nextflow.enable.dsl=2`

HealthOmics supporta DSL 2 per impostazione predefinita. Fornisce la retrocompatibilità con DSL 1, se specificato nel file di definizione del flusso di lavoro.
+ Se si specifica DSL 1, HealthOmics esegue Nextflow v22.04 DSL1 (l'unica versione supportata che esegue DSL 1).
+ Se non specifichi una versione DSL o se non HealthOmics riesci ad analizzare le informazioni DSL per qualsiasi motivo (ad esempio errori di sintassi nel file di definizione del flusso di lavoro), il valore predefinito è DSL 2 ed esegue Nextflow v23.10.0. HealthOmics 
+ [Per aggiornare il flusso di lavoro da DSL 1 a DSL 2 per sfruttare le versioni e le funzionalità software più recenti di Nextflow, consulta Migrazione da DSL 1.](https://nextflow.io/docs/latest/dsl1.html)

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

HealthOmics rileva la versione di Nextflow richiesta nel file di configurazione di Nextflow (nextflow.config), se fornisci questo file. Ti consigliamo di aggiungere la `nextflowVersion` clausola alla fine del file per evitare sostituzioni impreviste delle configurazioni incluse. [Per ulteriori informazioni, consulta la configurazione di Nextflow.](https://nextflow.io/docs/latest/config.html)

Puoi specificare una versione di Nextflow o un intervallo di versioni utilizzando la seguente sintassi:

```
   // 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 elabora le informazioni sulla versione di Nextflow come segue: 
+ Se si utilizza **=** per specificare una versione esatta che HealthOmics supporta, HealthOmics utilizza quella versione. 
+ Se si utilizza **\$1** per specificare una versione esatta o un intervallo di versioni non supportate, HealthOmics genera un'eccezione e fallisce l'esecuzione. Prendi in considerazione l'utilizzo di questa opzione se desideri essere rigoroso con le richieste di versione e fallire rapidamente se la richiesta include versioni non supportate.
+ Se specificate un intervallo di versioni, HealthOmics utilizza la versione con la preferenza più alta in quell'intervallo. L'ordine di preferenza dal più alto al più basso è v23.10.0, v22.04.0, v24.10.8 e v25.10.0. Esempio:
  + Se l'intervallo copre v23.10.0, v24.10.8 e v25.10.0, sceglie v23.10.0. HealthOmics 
  + Se l'intervallo copre v24.10.8 HealthOmics e v25.10.0, sceglie v24.10.8.
+ Se non esiste una versione richiesta o se le versioni richieste non sono valide o non possono essere analizzate per qualsiasi motivo:
  + Se hai specificato DSL 1, HealthOmics esegue Nextflow v22.04.
  + Altrimenti, esegue Nextflow v23.10.0. HealthOmics 

 Puoi recuperare le seguenti informazioni sulla versione di Nextflow utilizzata per ogni esecuzione: HealthOmics 
+ I log di esecuzione contengono informazioni sulla versione effettiva di Nextflow utilizzata per l'esecuzione. HealthOmics 
+ HealthOmics aggiunge avvisi nei log di esecuzione se non esiste una corrispondenza diretta con la versione richiesta o se è necessario utilizzare una versione diversa da quella specificata.
+ La risposta all'operazione **GetRun** API include un campo (`engineVersion`) con la versione effettiva di Nextflow HealthOmics utilizzata per l'esecuzione. Esempio:

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