

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# HealthOmics ワークフロー定義言語のバージョンサポート
<a name="workflows-lang-versions"></a>

HealthOmics は、Nextflow、WDL、または CWL で記述されたワークフロー定義ファイルをサポートしています。以下のセクションでは、これらの言語の HealthOmics バージョンサポートについて説明します。

**Topics**
+ [WDL バージョンのサポート](#workflows-lang-versions-WDL)
+ [CWL バージョンのサポート](#workflows-lang-versions-CWL)
+ [Nextflow バージョンのサポート](#workflows-lang-versions-nextflow)

## WDL バージョンのサポート
<a name="workflows-lang-versions-WDL"></a>

HealthOmics は、WDL 仕様のバージョン 1.0、1.1、および開発バージョンをサポートしています。

すべての WDL ドキュメントには、準拠する仕様のバージョン (メジャーとマイナー) を指定するためのバージョンステートメントが含まれている必要があります。バージョンの詳細については、[「WDL バージョニング](https://github.com/openwdl/wdl/blob/wdl-1.1/SPEC.md#versioning)」を参照してください。

WDL 仕様のバージョン 1.0 および 1.1 は、 `Directory`タイプをサポートしていません。入力または出力に `Directory`タイプを使用するには、ファイルの最初の行**development**でバージョンを に設定します。

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

## CWL バージョンのサポート
<a name="workflows-lang-versions-CWL"></a>

HealthOmics は、CWL 言語のバージョン 1.0、1.1、および 1.2 をサポートしています。

CWL ワークフロー定義ファイルで言語バージョンを指定できます。CWL の詳細については、[「CWL ユーザーガイド](https://github.com/common-workflow-language/user_guide)」を参照してください。

## Nextflow バージョンのサポート
<a name="workflows-lang-versions-nextflow"></a>

HealthOmics は、4 つの Nextflow 安定バージョンをサポートしています。Nextflow は通常、6 か月ごとに安定したバージョンをリリースします。HealthOmics は毎月の「エッジ」リリースをサポートしていません。

HealthOmics は各バージョンでリリースされた機能をサポートしていますが、プレビュー機能はサポートしていません。

### サポートバージョン
<a name="workflows-versions-nextflow-list"></a>

HealthOmics は、次の Nextflow バージョンをサポートしています。
+ Nextflow v22.04.01 DSL 1 および DSL 2
+ Nextflow v23.10.0 DSL 2 (デフォルト)
+ Nextflow v24.10.8 DSL 2
+ Nextflow v25.10.0 DSL 2

**注記**  
HealthOmics は、Nextflow v25.10.0 で厳密な構文モードをサポートしていません。

ワークフローをサポートされている最新バージョン (v25.10.0) に移行するには、[Nextflow アップグレードガイド](https://www.nextflow.io/docs/latest/migrations/25-10.html)に従います。

Nextflow v24 および v25 に移行するときに、いくつかの重大な変更があります。[Nextflow 移行ガイド](https://www.nextflow.io/docs/latest/migrations/index.html)に従ってください。

### Nextflow バージョンを検出して処理する
<a name="workflows-versions-processing"></a>

HealthOmics は、指定した DSL バージョンと Nextflow バージョンを検出します。これらの入力に基づいて、実行する最適な Nextflow バージョンを自動的に決定します。

#### DSL バージョン
<a name="workflows-versions-p1"></a>

HealthOmics は、ワークフロー定義ファイルでリクエストされた DSL バージョンを検出します。たとえば、 を指定できます`nextflow.enable.dsl=2`。

HealthOmics はデフォルトで DSL 2 をサポートしています。ワークフロー定義ファイルで指定されている場合、DSL 1 との下位互換性があります。
+ DSL 1 を指定した場合、HealthOmics は Nextflow v22.04 DSL1 (DSL 1 を実行する唯一のサポートされているバージョン) を実行します。
+ DSL バージョンを指定しない場合、または HealthOmics が何らかの理由で DSL 情報を解析できない場合 (ワークフロー定義ファイルの構文エラーなど）、HealthOmics はデフォルトで DSL 2 になり、Nextflow v23.10.0 を実行します。
+ 最新の Nextflow バージョンとソフトウェア機能を利用するためにワークフローを DSL 1 から DSL 2 にアップグレードするには、[「DSL 1 からの移行](https://nextflow.io/docs/latest/dsl1.html)」を参照してください。

#### Nextflow バージョン
<a name="workflows-versions-p2"></a>

HealthOmics は、このファイルを指定すると、Nextflow 設定ファイル (nextflow.config) でリクエストされた Nextflow バージョンを検出します。含まれている設定による予期しない上書きを避けるため、ファイルの最後に `nextflowVersion`句を追加することをお勧めします。詳細については、[「Nextflow 設定](https://nextflow.io/docs/latest/config.html)」を参照してください。

次の構文を使用して、Nextflow バージョンまたはバージョンの範囲を指定できます。

```
   // 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 は Nextflow バージョン情報を次のように処理します。
+ **=** を使用して HealthOmics がサポートする正確なバージョンを指定する場合、HealthOmics はそのバージョンを使用します。
+ **\$1** を使用して正確なバージョンまたはサポートされていないバージョンの範囲を指定すると、HealthOmics は例外を発生させ、実行に失敗します。バージョンリクエストに厳密に対応し、リクエストにサポートされていないバージョンが含まれている場合は、このオプションを使用することを検討してください。
+ バージョンの範囲を指定すると、HealthOmics はその範囲内で最も好みの高いバージョンを使用します。設定順序は、v23.10.0、v22.04.0、v24.10.8、v25.10.0 です。例えば、次のようになります。
  + 範囲が v23.10.0、v24.10.8、および v25.10.0 をカバーしている場合、HealthOmics は v23.10.0 を選択します。
  + 範囲が v24.10.8 と v25.10.0 をカバーしている場合、HealthOmics は v24.10.8 を選択します。
+ リクエストされたバージョンがない場合、またはリクエストされたバージョンが有効でないか、何らかの理由で解析できない場合:
  + DSL 1 を指定した場合、HealthOmics は Nextflow v22.04 を実行します。
  + それ以外の場合、HealthOmics は Nextflow v23.10.0 を実行します。

 HealthOmics が各実行に使用した Nextflow バージョンに関する次の情報を取得できます。
+ 実行ログには、HealthOmics が実行に使用した実際の Nextflow バージョンに関する情報が含まれています。
+ HealthOmics は、リクエストされたバージョンと直接一致しない場合、または指定したバージョンとは異なるバージョンを使用する必要がある場合に、実行ログに警告を追加します。
+ **GetRun** API オペレーションへのレスポンスには、HealthOmics が実行に使用した実際の Nextflow バージョンを含むフィールド (`engineVersion`) が含まれます。例：

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