**IMPORATNT**: Caper defaults back to **NOT** use a file-based metadata DB, which means no call-caching (re-using outputs from previous workflows) by default.
**IMPORATNT**: Even if you still want to use a file-based DB (`--db file` and `--file-db [DB_PATH]`), metadata DB generated from Caper<0.6 (with Cromwell-42) is not compatible with metadata DB generated from Caper>=0.6 (with Cromwell-47). Refer to [this doc](https://github.com/broadinstitute/cromwell/releases/tag/43) for such migration.
See [this](metadata-database) for details about metadata DB. Define a DB type with `db=` in your conf `~/.caper/default.conf` to use a metadata DB.
Engine update
- Upgraded default crowmell JAR version: 42 -> 47
- Some feature of Caper will only work with 47 (e.g. PostgreSQL support, some bug fixes).
Then how to choose a DB?
- You can choose a DB type with `--db` (or `db=` in conf file `~/.caper/default.conf`). Then define chosen DB's required parameters (nothing required for `in-memory` DB).
- Choices: `file` (unstable), `mysql` (recommended), `postgresql` and `in-memory` (new default but no call-caching).
- `mysql` is recommended. We provide shell scripts (`run_mysql_server_docker.sh` and `run_mysql_server_singularity.sh`) to run a MySQL server with docker/singularity (without root).
- See details at "Metadata database" section on README.
New features
- Support for PostgreSQL DB for call-caching (Cromwell >= 43)
Change of parameters
- New:
- `--db`: `in-memory` (default), `file` (unstable), `mysql` (recommended) or `postgresql` (experimental).
- `--mysql-db-name`: (optional) `cromwell` by default
- `--postgresql-db-ip`: `localhost` by default
- `--postgresql-db-port`: `5432` by default
- `--postgresql-db-user`: (optional) `cromwell` by default
- `--postgresql-db-password`: (optional) `cromwell` by default
- `--postgresql-db-name`: (optional) `cromwell` by default
- Deprecated:
- `--no-file-db`: File DB is disabled by default. Many users reported that a file DB is unstable.
Bug fixes
- [PAPI v10 error](https://github.com/broadinstitute/cromwell/releases/tag/46) (preemption error) on Google Cloud.
- Caper didn't run WDL without `--docker` on cloud backends (`aws` and `gcp`).
- Some WDL has docker image definition in each task (`runtime { docker : }`). Users had to specify a dummy docker image `--docker ubuntu:latest` to bypass this error.