Skip to content

Commit

Permalink
WX-1798 Unbreak build by removing swagger2markup (#7488)
Browse files Browse the repository at this point in the history
  • Loading branch information
aednichols authored Aug 8, 2024
1 parent 8b4a498 commit b29d800
Show file tree
Hide file tree
Showing 19 changed files with 39 additions and 1,714 deletions.
1 change: 0 additions & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,3 @@
*.MD text
*.java text
*.html text
docs/api/RESTAPI.md linguist-generated=true
42 changes: 25 additions & 17 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,21 +7,9 @@
As of this version, a distribution of Java 17 is required to run Cromwell. Cromwell is developed, tested, and
containerized using [Eclipse Temurin](https://adoptium.net/temurin/releases/?version=17).

### Fixed Optional and String Concatenation Bug

As outlined in the [WDL Spec](https://github.com/openwdl/wdl/blob/main/versions/1.0/SPEC.md#prepending-a-string-to-an-optional-parameter), concatenating a string with an empty optional now correctly evaluates to the empty string.

### Improved status reporting behavior

When Cromwell restarts during a workflow that is failing, it no longer reports pending tasks as a reason for that failure.

### Removed Docker Hub health check

Cromwell's healthcheck requests to Docker Hub were not authenticated, and thus became subject to rate limiting. To eliminate these false alarms, this functionality has been removed.

The config key `services.HealthMonitor.config.check-dockerhub` is therefore obsolete.

There is no change to any other usage of Docker Hub.
When Cromwell restarts during a workflow that is failing, it no longer reports pending tasks as a reason for that failure.

### Optional docker soft links

Expand All @@ -41,16 +29,36 @@ Users reported cases where Life Sciences jobs failed due to insufficient quota,
quota is available (which is the expected behavior). Cromwell will now retry under these conditions, which present with errors
such as "PAPI error code 9", "no available zones", and/or "quota too low".

### Improved `size()` function performance on arrays

Resolved a hotspot in Cromwell to make the `size()` engine function perform much faster on file arrays. Common examples of file arrays could include globs or scatter-gather results. This enhancement applies only to WDL 1.0 and later, because that's when `size()` added [support for arrays](https://github.com/openwdl/wdl/blob/main/versions/1.0/SPEC.md#acceptable-compound-input-types).

### Database migration

The `IX_WORKFLOW_STORE_ENTRY_WS` index is removed from `WORKFLOW_STORE_ENTRY`.

The index had low cardinality and workflow pickup is faster without it. Migration time depends on workflow store size, but should be very fast for most installations. Terminal workflows are removed from the workflow store, so only running workflows contribute to the cost.

### Bug fixes

#### Improved `size()` function performance on arrays

Resolved a hotspot in Cromwell to make the `size()` engine function perform much faster on file arrays. Common examples of file arrays could include globs or scatter-gather results. This enhancement applies only to WDL 1.0 and later, because that's when `size()` added [support for arrays](https://github.com/openwdl/wdl/blob/main/versions/1.0/SPEC.md#acceptable-compound-input-types).

#### Fixed Optional and String Concatenation Bug

As outlined in the [WDL Spec](https://github.com/openwdl/wdl/blob/main/versions/1.0/SPEC.md#prepending-a-string-to-an-optional-parameter), concatenating a string with an empty optional now correctly evaluates to the empty string.

### Removals

#### `RESTAPI.md` docs discontinued

Due to deprecation of the underlying library, Markdown docs will no longer be generated from the Cromwell API Swagger. The recommended alternative is starting a server and viewing the Swagger directly.

#### Removed Docker Hub health check

Cromwell's healthcheck requests to Docker Hub were not authenticated, and thus became subject to rate limiting. To eliminate these false alarms, this functionality has been removed.

The config key `services.HealthMonitor.config.check-dockerhub` is therefore obsolete.

There is no change to any other usage of Docker Hub.

## 87 Release Notes

### GCP Batch
Expand Down
4 changes: 2 additions & 2 deletions docs/CommandLine.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ The Cromwell jar file can be built as described in [Building](Building).

## `server`

`server` mode accepts no arguments and runs Cromwell as a web server that accepts REST requests. The default mode for most applications of Cromwell, suitable for production use. See the documentation for [Cromwell's REST endpoints](/api/RESTAPI) for how to interact with Cromwell in `server` mode.
`server` mode accepts no arguments and runs Cromwell as a web server that accepts REST requests. The default mode for most applications of Cromwell, suitable for production use. Cromwell self-documents its API with Swagger, viewable at `http://localhost:8000` or equivalent depending on your setup.

## `run`

Expand Down Expand Up @@ -65,7 +65,7 @@ If you use sub-workflows within your primary workflow then you must include a ZI
See the documentation on [Imports](Imports) for more information.

* **`--metadata-output`**
You can specify a filename where Cromwell will write workflow metadata JSON such as start/end timestamps, status, inputs and outputs. By default Cromwell does not write workflow metadata. The metadata format in the `--metadata-output` file is the same as described for the [REST API](api/RESTAPI#get-workflow-and-call-level-metadata-for-a-specified-workflow).
You can specify a filename where Cromwell will write workflow metadata JSON such as start/end timestamps, status, inputs and outputs. By default Cromwell does not write workflow metadata. The metadata format in the `--metadata-output` file is the same as described for the `/metadata` endpoint.

* **`--version`**
The `--version` option prints the version of Cromwell and exits.
Expand Down
3 changes: 1 addition & 2 deletions docs/Imports.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,5 +66,4 @@ In [Run](Modes#run) mode, a sample command to run _workflow.wdl_ would be:
$ java -jar cromwell.jar run workflow.wdl --imports imports.zip
```

In [Server](Modes#server) mode, pass in a ZIP file using the parameter `workflowDependencies` via the [Submit](api/RESTAPI#submit-a-workflow-for-execution) endpoint.

In [Server](Modes#server) mode, pass in a ZIP file using the parameter `workflowDependencies` via the Submit endpoint.
2 changes: 1 addition & 1 deletion docs/Modes.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

The default mode for most applications of Cromwell, suitable for production use. Server mode starts Cromwell as a web server that exposes REST endpoints. All features and APIs are available.

By default the server will be accessible at `http://localhost:8000`. See the [Server Section](Configuring#server) of the configuration for more information on how to configure it. A description of the endpoints can be found in the [API Section](api/RESTAPI).
By default the server will be accessible at `http://localhost:8000`. See the [Server Section](Configuring#server) of the configuration for more information on how to configure it.

Follow the [Server Tutorial](tutorials/ServerMode) to get your Cromwell server up and running in a few steps.

Expand Down
55 changes: 0 additions & 55 deletions docs/api/ErrorHandling.md

This file was deleted.

Loading

0 comments on commit b29d800

Please sign in to comment.