# 2021

## 2021 December - ICA v2.1.0 <a href="#id-2021-decemeber-ica-v2.1.0-1" id="id-2021-decemeber-ica-v2.1.0-1"></a>

### **Features and Enhancements**

* \[CLI] Storage size can be entered by name
* \[CLI] Details of a project analysis can be retrieved by entering the analysis Id
* \[CLI] A list of metadata models can be retrieved
* \[CLI] A list of regions can be retrieved
* \[CLI] A list of storage configurations can be retrieved
* \[CLI] A pipeline can be linked to a project by using the name/id of the pipeline as an argument
* \[CLI] A pipeline can be unlinked from a project by defining the name/id as an argument
* \[CLI] A list of storage bundles can be retrieved
* \[API] Usability improvements for the list project data API:
  * Modify filePath query param to behave as prefix instead of exact match by default
  * Add filePathMatchMode query param
  * Add parentFolderPath query param
* \[API] Add API endpoint to refresh a JWT (POST /api/tokens:refresh)
* \[CLI] Add CLI command to create projects
* \[API] Support search by tags on samples search API
* Renew macOS connector certificate
* When a filter is applied and you select a folder, you can see the content from that folder without th\* Connector rules for a project can only be changed when you are active in that project
* It is possible to link more than 2000 files to a bundle or another project
* Data coming from a project in another tenant can be linked when you are invite for collaboration
* The error from a failed pipeline analysis is visible on the details page
* Species and type are unique within a tenant, not across tenants
* Sqs and sns test messages are aligned with the email test message
* A collaborating user from another tenant is able to see the details view of a pipeline analysis run.
* Bundle data can be used via API
* When executing api/projects/{projectId}/data and a file already exist, there is an indication that thresponse.
* Connector cancel button is renamed to delete to make its functionality more clearly
* \[CLI] Modify pipeline start command to use pipeline name or ID as an argument instead of a flag parameter
* \[API] Removed endpoint to POST on a sample metadata model

### **Bugs Fixed**

* \[Base] Fix error message when viewing a query from query history that no longer returns results
* \[CLI] Fix for CLI upload command when uploading a folder with 0 bytes files
* \[API] Fix create bundle API to return error when bundle with existing name is attempted to be created
* \[API] Fix for non-functional If-Match header on PUT requests
* \[CLI] Fix folder upload "panic: close of closed channel" error
* \[API] Fix API for project creation returning success with invalid storage configuration provided
* \[Bench] Fix for docker build logs not showing when build is interrupted
* Fix population of sample metadata from multiple analyses on the same sample
* Fix error message for missing docker image on tool creation
* \[CLI] Fix pipeline create command to make pipeline code an argument instead of a flag parameter
* Fix UI element for tags to remove active button appearance
* Fix error when attempting to link pipeline with no pipeline selected
* Fix error message when attempting to add field to Base table schema with invalid characters
* Fix issue with analysis outputs files and logs not showing after analysis completion
* Fix UI issue with pipeline selection in the Generated by Pipelines field of the view to create a Base s
* Fix issue with a duplicate workspace being created while editing a workspace
* Fix issue for table creation using schedule for metadata
* Fix Base viewer role when applied to workgroups
* Fixed Issue: optional parameters for Nextflow pipeline cause error when value not provided
* Fixed issue when selecting data records to export from the Data overview page on a Bundle
* Fix for Base saved queries not visible in shared project
* Fix minor price calculation error (rounding) for Base storage

## 2021 November - ICA v2.0.0 <a href="#id-2021-november-ica-v2.0.0-1" id="id-2021-november-ica-v2.0.0-1"></a>

### **Features and Enhancements**

* API cursor-based and offset-set paging
* Authorize calls using Illumina API key
* Multiple reference data elements are possible when starting an analysis
* APIs added for:
  * Account, User, Workgroup
  * Connector, Download Rule, Upload Rule
  * Data, Data Format, Data Transfer
  * Region
  * Download
  * Entitlement
  * Event Log
  * Project, Project Analysis, Project Data, Project Permission, Project Sample, Project Pipeline
  * Metadata model
  * Pipeline
  * Bundle
  * Notifications, Event Codes
  * Base
* OpenAPI v3 API Spec published at <https://ica.illumina.com/ica/api/swagger/index.html>
* Added sort parameter to several APIs
* Custom event payload is defined as a json
* Separate call to retrieve metadata model fields available
* Add rclone temporary credentials support in the API to retrieve folder upload session details
* Tokens API POST also contains basic authentication
* Activation code endpoints are aligned with start analysis endpoints
* Base templates cannot be deleted
* Information can be written from Bench to Base
* Viewer/Contributor permissions are introduced in Snowflake
* Saved Template details can be edited
* Access via Illumina authentication is available
* Snowflake access token can be created
* Added new Bundles feature for sharing data with other users
* ICA allows the user to connect an S3 bucket as storage instead of an Illumina managed storage
* An overview of all storage configurations is available
* Secrets can be managed for the storage configuration
* A new storage configuration can be added
* The health status of a configuration can be monitored
* A storage configuration can be deleted when not used in a project
* Storage type and health are displayed in the overview
* When selecting own storage ICA will return you a list of all BYOBs in the chosen region
* A default bucket can be selected for every region
* Data is automatically archived/deleted when the grace period (if present) is over
* Data is archived/deleted automatically by a housekeeping mechanism
* An admin user can change the date to be archived/deleted at any time
* Data has a status
* Data format is automatically detected at creation
* Files can be grouped in a sample
* Data can have additional linked projects
* The data screen shows project data and data linked via a bundle
* 3 new columns are present in the data grid: "Owning Project", "Linked Projects" and "Linked Bundles"
* The record is displayed in the data grid depending on the data being linked or not
* Filter on Status with checkboxes on status values is possible
* Total Data Size is available
* Data can be linked/unlinked to/from a project
* Only root parent files and folders are shown when opening the data grid
* Deleted status does not exist anymore
* Data from projects with Data Sharing disabled cannot be linked
* Project is hidden instead of (soft-)delete
* Metadata models can be created for linking to a project
* Add support for Nextflow pipeline language
* A pipeline input can have multiple formats
* Output JSON for CWL analysis is shown
* Ongoing logfiles are available for the user
* You have two options to define a CWL pipeline: Graphical editor or code
* Test connection button is available for SQS
* Checkbox is added to toggle view between all rules or only your own rules
* Notification channels can be validated
* Subscription can be edited
* Custom subscriptions are possible
* Notifications can be received via SQS, SNS, Mail, and Webhook
* All users have an overview of all the notifications used in their tenant
* Notification channels are only visible for tenant admins
* Notifications can have a filter expression to only receive specific events
* A project administrator can grant permission to a single user on a project
* A project administrator can invite somebody unknown to ICA to his project
* A contributor can manage reference data
* A project administrator can define who pays for using my project
* A project administrator can invite a workgroup to a project
* When multiple project roles are given to a user/workgroup the correct project role is applied
* Team-page in projects and bundles are aligned
* Reference data can exist in multiple regions
* Species and type are being populated per tenant
* Data can become reference data
* Data tree shows all the regions in which the reference data is available
