Skip to content

Commit 043a2ab

Browse files
Merge pull request #687 from openwdl/markjschreiber/as-of-version-1.2
As of version 1.2
2 parents 0c9e97f + 47339cc commit 043a2ab

File tree

1 file changed

+49
-25
lines changed

1 file changed

+49
-25
lines changed

Diff for: SPEC.md

+49-25
Original file line numberDiff line numberDiff line change
@@ -91,23 +91,23 @@ Revisions to this specification are made periodically in order to correct errors
9191
- [Task Outputs](#task-outputs)
9292
- [File, Directory, and Optional Outputs](#file-directory-and-optional-outputs)
9393
- [Evaluation of Task Declarations](#evaluation-of-task-declarations)
94-
- [Requirements Section](#-requirements-section)
94+
- [Requirements Section](#-requirements-section)
9595
- [Units of Storage](#units-of-storage)
9696
- [Requirements attributes](#requirements-attributes)
9797
- [`container`](#container)
9898
- [`cpu`](#cpu)
9999
- [`memory`](#memory)
100-
- [Hardware Accelerators (`gpu` and `fpga`)](#hardware-accelerators-gpu-and--fpga)
100+
- [Hardware Accelerators (`gpu` and `fpga`)](#hardware-accelerators-gpu-and--fpga)
101101
- [`disks`](#disks)
102102
- [`max_retries`](#max_retries)
103103
- [`return_codes`](#return_codes)
104-
- [Hints Section](#-hints-section)
104+
- [Hints Section](#-hints-section)
105105
- [Hints-scoped types](#hints-scoped-types)
106106
- [Reserved Task Hints](#reserved-task-hints)
107107
- [`max_cpu`](#max_cpu)
108108
- [`max_memory`](#max_memory)
109-
- [`disks`](#-disks)
110-
- [`gpu` and `fpga`](#-gpu-and--fpga)
109+
- [`disks`](#-disks)
110+
- [`gpu` and `fpga`](#-gpu-and--fpga)
111111
- [`short_task`](#short_task)
112112
- [`localization_optional`](#localization_optional)
113113
- [`inputs`](#inputs)
@@ -144,12 +144,12 @@ Revisions to this specification are made periodically in order to correct errors
144144
- [`min`](#min)
145145
- [`max`](#max)
146146
- [String Functions](#string-functions)
147-
- [`find`](#-find)
148-
- [`matches`](#-matches)
147+
- [`find`](#-find)
148+
- [`matches`](#-matches)
149149
- [`sub`](#sub)
150150
- [File Functions](#file-functions)
151151
- [`basename`](#basename)
152-
- [`join_paths`](#-join_paths)
152+
- [`join_paths`](#-join_paths)
153153
- [`glob`](#glob)
154154
- [Non-standard Bash](#non-standard-bash)
155155
- [`size`](#size)
@@ -183,17 +183,17 @@ Revisions to this specification are made periodically in order to correct errors
183183
- [`cross`](#cross)
184184
- [`zip`](#zip)
185185
- [`unzip`](#unzip)
186-
- [`contains`](#-contains)
187-
- [`chunk`](#-chunk)
186+
- [`contains`](#-contains)
187+
- [`chunk`](#-chunk)
188188
- [`flatten`](#flatten)
189189
- [`select_first`](#select_first)
190190
- [`select_all`](#select_all)
191191
- [Map Functions](#map-functions)
192192
- [`as_pairs`](#as_pairs)
193193
- [`as_map`](#as_map)
194194
- [`keys`](#keys)
195-
- [`contains_key`](#-contains_key)
196-
- [`values`](#-values)
195+
- [`contains_key`](#-contains_key)
196+
- [`values`](#-values)
197197
- [`collect_by_key`](#collect_by_key)
198198
- [Other Functions](#other-functions)
199199
- [`defined`](#defined)
@@ -554,7 +554,7 @@ The following primitive types exist in WDL:
554554
* A `Float` represents a finite 64-bit IEEE-754 floating point number.
555555
* A `String` represents a unicode character string following the format described [below](#strings).
556556
* A `File` represents a file (or file-like object).
557-
* A `Directory` represents a (possibly nested) directory of files.
557+
* A `Directory` represents a (possibly nested) directory of files (*as of version 1.2*).
558558

559559
<details>
560560
<summary>
@@ -4749,7 +4749,9 @@ Input and private declarations may appear in any order within their respective s
47494749

47504750
Declarations in the output section may reference any input and private declarations, and may also reference other output declarations.
47514751

4752-
### ✨ Requirements Section
4752+
### Requirements Section
4753+
4754+
*as of version 1.2*
47534755

47544756
The `requirements` section defines a set of key/value pairs that represent the minimum requirements needed to run a task and the conditions under which a task should be interpreted as a failure or success. The `requirements` section is limited to the attributes defined in this specification. Arbitrary key/value pairs are not allowed in the `requirements` section, and must instead be placed in the [`hints`](#-hints-section) section.
47554757

@@ -5017,7 +5019,9 @@ Test config:
50175019
</p>
50185020
</details>
50195021

5020-
##### Hardware Accelerators (`gpu` and ✨ `fpga`)
5022+
##### Hardware Accelerators (`gpu` and `fpga`)
5023+
5024+
*fpga as of version 1.2*
50215025

50225026
* Accepted type: `Boolean`
50235027
* Default value: `false`
@@ -5344,7 +5348,9 @@ Test config:
53445348
</p>
53455349
</details>
53465350

5347-
### ✨ Hints Section
5351+
### Hints Section
5352+
5353+
*as of version 1.2*
53485354

53495355
The `hints` section is optional and may contain any number of attributes (key/value pairs) that provide hints to the execution engine. A hint provides additional context that the execution engine can use to optimize the execution of the task. The execution engine may also ignore any hint for any reason. A task execution never fails due to the inability of the execution engine to recognize or satisfy a hint.
53505356

@@ -5435,7 +5441,9 @@ A hint to the execution engine that the task expects to use no more than the spe
54355441

54365442
A hint to the execution engine that the task expects to use no more than the specified amount of memory. The value of this hint has the same specification as [`requirements.memory`](#memory).
54375443

5438-
##### `disks`
5444+
##### `disks`
5445+
5446+
*as of version 1.2*
54395447

54405448
* Accepted types:
54415449
* `String`: Disk specification.
@@ -5445,7 +5453,9 @@ A hint to the execution engine to mount [disks](#disks) with specific attributes
54455453

54465454
Volume specifications are left intentionally vague as they are primarily intented to be used in the context of a specific [compute environment](#compute-environments). The values "HDD" and "SSD" should be recognized to indicate that a specific class of hardware is being requested.
54475455

5448-
##### `gpu` and ✨ `fpga`
5456+
##### `gpu` and `fpga`
5457+
5458+
*as of version 1.2*
54495459

54505460
* Accepted types:
54515461
* `Int`: Minimum number of accelerators being requested.
@@ -7652,7 +7662,9 @@ These functions operate on `String` arguments.
76527662

76537663
**Restrictions**: None
76547664

7655-
### `find`
7665+
### `find`
7666+
7667+
*as of version 1.2*
76567668

76577669
Given two `String` parameters `input` and `pattern`, searches for the occurrence of `pattern` within `input` and returns the first match or `None` if there are no matches. `pattern` is a [regular expression](https://en.wikipedia.org/wiki/Regular_expression) and is evaluated as a [POSIX Extended Regular Expression (ERE)](https://en.wikipedia.org/wiki/Regular_expression#POSIX_basic_and_extended).
76587670

@@ -7706,7 +7718,9 @@ Example output:
77067718
</p>
77077719
</details>
77087720

7709-
### `matches`
7721+
### `matches`
7722+
7723+
*as of version 1.2*
77107724

77117725
Given two `String` parameters `input` and `pattern`, tests whether `pattern` matches `input` at least once. `pattern` is a [regular expression](https://en.wikipedia.org/wiki/Regular_expression) and is evaluated as a [POSIX Extended Regular Expression (ERE)](https://en.wikipedia.org/wiki/Regular_expression#POSIX_basic_and_extended).
77127726

@@ -7953,7 +7967,9 @@ Example output:
79537967
</p>
79547968
</details>
79557969

7956-
### `join_paths`
7970+
### `join_paths`
7971+
7972+
*as of version 1.2*
79577973

79587974
```
79597975
File join_paths(File, String)
@@ -10239,7 +10255,9 @@ Example output:
1023910255
</p>
1024010256
</details>
1024110257

10242-
### `contains`
10258+
### `contains`
10259+
10260+
*as of version 1.2*
1024310261

1024410262
```
1024510263
Boolean contains(Array[P], P)
@@ -10322,7 +10340,9 @@ Example output:
1032210340
</p>
1032310341
</details>
1032410342

10325-
### `chunk`
10343+
### `chunk`
10344+
10345+
*as of version 1.2*
1032610346

1032710347
```
1032810348
Array[Array[X]] chunk(Array[X], Int)
@@ -10867,7 +10887,9 @@ Example output:
1086710887
</p>
1086810888
</details>
1086910889

10870-
### `contains_key`
10890+
### `contains_key`
10891+
10892+
*as of version 1.2*
1087110893

1087210894
```
1087310895
* Boolean contains_key(Map[P, Y], P)
@@ -10959,7 +10981,9 @@ For example, if the first argument is a `Map[String, Map[String, Int]]` and the
1095910981
</p>
1096010982
</details>
1096110983

10962-
### `values`
10984+
### `values`
10985+
10986+
*as of version 1.2*
1096310987

1096410988
```
1096510989
Array[Y] values(Map[P, Y])

0 commit comments

Comments
 (0)