GitHub repository: argoproj/argo-workflows
Description: Workflow Engine for Kubernetes
Topics: airflow, argo, argo-workflows, batch-processing, cloud-native, cncf, dag, data-engineering, gitops, hacktoberfest, k8s, knative, kubernetes, machine-learning, mlops, pipelines, workflow, workflow-engine

v3.5.5: tag_name: v3.5.5
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/main/CHANGELOG.md).

## Breaking Changes and Known Issues

Check the [upgrading guide](https://argo-workflows.readthedocs.io/en/release-3.5/upgrading/) and search for [existing issues on GitHub](https://github.com/argoproj/argo-workflows/issues).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.5.5/install.yaml
```

v3.5.4: tag_name: v3.5.4
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/main/CHANGELOG.md).

## Breaking Changes and Known Issues

Check the [upgrading guide](https://argo-workflows.readthedocs.io/en/release-3.5/upgrading/) and search for [existing issues on GitHub](https://github.com/argoproj/argo-workflows/issues).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.5.4/install.yaml
```

v3.4.16: tag_name: v3.4.16
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Check the [upgrading guide](https://argo-workflows.readthedocs.io/en/release-3.4/upgrading/) and search for [existing issues on GitHub](https://github.com/argoproj/argo-workflows/issues).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.16/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.16/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.16/install.yaml
```

v3.4.15: tag_name: v3.4.15
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Check the [upgrading guide](https://argo-workflows.readthedocs.io/en/release-3.4/upgrading/) and search for [existing issues on GitHub](https://github.com/argoproj/argo-workflows/issues).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.15/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.15/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.15/install.yaml
```

v3.5.3: tag_name: v3.5.3
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/main/CHANGELOG.md).

## Breaking Changes and Known Issues

Check the [upgrading guide](https://argo-workflows.readthedocs.io/en/release-3.5/upgrading/) and search for [existing issues on GitHub](https://github.com/argoproj/argo-workflows/issues).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.5.3/install.yaml
```

v3.5.2: tag_name: v3.5.2
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Check the [upgrading guide](https://argoproj.github.io/argo-workflows/upgrading/) and search for [existing issues on GitHub](https://github.com/argoproj/argo-workflows/issues).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.5.2/install.yaml
```

v3.4.14: tag_name: v3.4.14
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Check the [upgrading guide](https://argoproj.github.io/argo-workflows/upgrading/) and search for [existing issues on GitHub](https://github.com/argoproj/argo-workflows/issues).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.14/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.14/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.14/install.yaml
```

v3.5.1: tag_name: v3.5.1
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Check the [upgrading guide](https://argoproj.github.io/argo-workflows/upgrading/) and search for [existing issues on GitHub](https://github.com/argoproj/argo-workflows/issues).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.5.1/install.yaml
```

v3.4.13: tag_name: v3.4.13
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Check the [upgrading guide](https://argoproj.github.io/argo-workflows/upgrading/) and search for [existing issues on GitHub](https://github.com/argoproj/argo-workflows/issues).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.13/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.13/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.13/install.yaml
```

v3.4.12: tag_name: v3.4.12
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Check the [upgrading guide](https://argoproj.github.io/argo-workflows/upgrading/) and search for [existing issues on GitHub](https://github.com/argoproj/argo-workflows/issues).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.12/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.12/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.12/install.yaml
```

v3.5.0: tag_name: v3.5.0
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io/whats-new-in-argo-workflows-v3-5-f260e8603ca6) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Check the [upgrading guide](https://argoproj.github.io/argo-workflows/upgrading/) and search for [existing issues on GitHub](https://github.com/argoproj/argo-workflows/issues).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.0/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.0/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.5.0/install.yaml
```

v3.5.0-rc2: tag_name: v3.5.0-rc2
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Check the [upgrading guide](https://argoproj.github.io/argo-workflows/upgrading/) and search for [existing issues on GitHub](https://github.com/argoproj/argo-workflows/issues).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.0-rc2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.0-rc2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.5.0-rc2/install.yaml
```

v3.4.11: tag_name: v3.4.11
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Check the [upgrading guide](https://argoproj.github.io/argo-workflows/upgrading/) and search for [existing issues on GitHub](https://github.com/argoproj/argo-workflows/issues).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.11/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.11/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.11/install.yaml
```

v3.5.0-rc1: tag_name: v3.5.0-rc1
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.0-rc1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.5.0-rc1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.5.0-rc1/install.yaml
```

v3.4.10: tag_name: v3.4.10
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.10/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.10/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.10/install.yaml
```

v3.4.9: tag_name: v3.4.9
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.9/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.9/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.9/install.yaml
```

v3.4.8: tag_name: v3.4.8
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.8/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.8/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.8/install.yaml
```

v3.4.7: tag_name: v3.4.7
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.7/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.7/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.7/install.yaml
```

v3.4.6: tag_name: v3.4.6
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.6/install.yaml
```

v3.4.5: tag_name: v3.4.5
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.5/install.yaml
```

v3.4.4: tag_name: v3.4.4
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.4/install.yaml
```

v3.3.10: tag_name: v3.3.10
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.10/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.10/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.10/install.yaml
```

v3.4.3: tag_name: v3.4.3
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.3/install.yaml
```

v3.4.2: tag_name: v3.4.2
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.2/install.yaml
```

v3.4.1: tag_name: v3.4.1
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.1/install.yaml
```

v3.4.0: tag_name: v3.4.0
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.0/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.0/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.0/install.yaml
```

v3.4.0-rc4: tag_name: v3.4.0-rc4
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.0-rc4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.0-rc4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.0-rc4/install.yaml
```

v3.4.0-rc3: tag_name: v3.4.0-rc3
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.0-rc3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.0-rc3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.0-rc3/install.yaml
```

v3.4.0-rc2: tag_name: v3.4.0-rc2
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.0-rc2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.0-rc2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.0-rc2/install.yaml
```

v3.4.0-rc1: tag_name: v3.4.0-rc1
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

Can be found in the [installation guide](https://argoproj.github.io/argo-workflows/installation/).

## Installation

### CLI

#### Mac

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.0-rc1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```bash
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.4.0-rc1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```bash
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.4.0-rc1/install.yaml
```

v3.3.9: tag_name: v3.3.9
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.9/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.9/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.9/install.yaml
```

v3.3.8: tag_name: v3.3.8
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.8/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.8/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.8/install.yaml
```

v3.3.7: tag_name: v3.3.7
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.7/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.7/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.7/install.yaml
```

v3.3.6: tag_name: v3.3.6
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.6/install.yaml
```

v3.3.5: tag_name: v3.3.5
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.5/install.yaml
```

v3.2.11: tag_name: v3.2.11
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.11/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.11/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.11/install.yaml
```

v3.3.4: tag_name: v3.3.4
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.4/install.yaml
```

v3.3.3: tag_name: v3.3.3
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.3/install.yaml
```

v3.3.2: tag_name: v3.3.2
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.2/install.yaml
```

v3.3.1: tag_name: v3.3.1
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.1/install.yaml
```

v3.3.0: tag_name: v3.3.0
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.0/install.yaml
```

v3.3.0-rc10: tag_name: v3.3.0-rc10
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc10/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc10/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc10/install.yaml
```

v3.3.0-rc9: tag_name: v3.3.0-rc9
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc9/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc9/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc9/install.yaml
```

v3.2.9: tag_name: v3.2.9
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.9/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.9/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.9/install.yaml
```

v3.3.0-rc8: tag_name: v3.3.0-rc8
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc8/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc8/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc8/install.yaml
```

v3.3.0-rc7: tag_name: v3.3.0-rc7
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc7/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc7/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc7/install.yaml
```

v3.3.0-rc6: tag_name: v3.3.0-rc6
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc6/install.yaml
```

v3.3.0-rc5: tag_name: v3.3.0-rc5
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc5/install.yaml
```

v3.3.0-rc4: tag_name: v3.3.0-rc4
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc4/install.yaml
```

v3.2.8: tag_name: v3.2.8
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.8/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.8/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.8/install.yaml
```

v3.3.0-rc3: tag_name: v3.3.0-rc3
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc3/install.yaml
```

v0.0.0-dev-bom-1: tag_name: v0.0.0-dev-bom-1
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-bom-1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-bom-1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-bom-1/install.yaml
```

v3.3.0-rc2: tag_name: v3.3.0-rc2
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc2/install.yaml
```

v3.3.0-rc1: tag_name: v3.3.0-rc1
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Installation

### CLI

#### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

#### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Controller and Server

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.3.0-rc1/install.yaml
```

v3.2.7: tag_name: v3.2.7
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.7/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.7/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.7/install.yaml
```

v3.2.6: tag_name: v3.2.6
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.6/install.yaml
```

v3.2.5: tag_name: v3.2.5
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.5/install.yaml
```

v0.0.0-dev-kc-7: tag_name: v0.0.0-dev-kc-7
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-7/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-7/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-7/install.yaml
```

v3.2.4: tag_name: v3.2.4
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.4/install.yaml
```

v3.1.15: tag_name: v3.1.15
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.15/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.15/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.15/install.yaml
```

v0.0.0-dev-kc-6: tag_name: v0.0.0-dev-kc-6
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-6/install.yaml
```

v0.0.0-dev-kc-5: tag_name: v0.0.0-dev-kc-5
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-5/install.yaml
```

v0.0.0-dev-kc-4: tag_name: v0.0.0-dev-kc-4
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-4/install.yaml
```

v0.0.0-dev-kc-3: tag_name: v0.0.0-dev-kc-3
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-3/install.yaml
```

v0.0.0-dev-kc-2: tag_name: v0.0.0-dev-kc-2
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-2/install.yaml
```

v0.0.0-dev-kc-1: tag_name: v0.0.0-dev-kc-1
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-1/install.yaml
```

v0.0.0-dev-kc-0: tag_name: v0.0.0-dev-kc-0
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-0/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-0/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-kc-0/install.yaml
```

v3.2.3: tag_name: v3.2.3
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.3/install.yaml
```

v3.2.2: tag_name: v3.2.2
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.2/install.yaml
```

v3.1.14: tag_name: v3.1.14
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.14/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.14/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.14/install.yaml
```

v3.2.1: tag_name: v3.2.1
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.1/install.yaml
```

v3.2.0: tag_name: v3.2.0
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.0/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.0/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.0/install.yaml
```

v3.2.0-rc6: tag_name: v3.2.0-rc6
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc6/install.yaml
```

v3.2.0-rc5: tag_name: v3.2.0-rc5
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc5/install.yaml
```

v3.1.13: tag_name: v3.1.13
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.13/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.13/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.13/install.yaml
```

v3.2.0-rc4: tag_name: v3.2.0-rc4
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc4/install.yaml
```

v3.1.12: tag_name: v3.1.12
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.12/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.12/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.12/install.yaml
```

v3.2.0-rc3: tag_name: v3.2.0-rc3
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc3/install.yaml
```

v3.1.11: tag_name: v3.1.11
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.11/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.11/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.11/install.yaml
```

v3.1.10: tag_name: v3.1.10
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.10/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.10/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.10/install.yaml
```

v3.1.9: tag_name: v3.1.9
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.9/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.9/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.9/install.yaml
```

v3.2.0-rc2: tag_name: v3.2.0-rc2
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc2/install.yaml
```

v0.0.0-dev-mc-4: tag_name: v0.0.0-dev-mc-4
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-4/install.yaml
```

v0.0.0-dev-mc-3: tag_name: v0.0.0-dev-mc-3
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-3/install.yaml
```

v0.0.0-dev-mc-2: tag_name: v0.0.0-dev-mc-2
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-2/install.yaml
```

v0.0.0-dev-mc-1: tag_name: v0.0.0-dev-mc-1
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-1/install.yaml
```

v0.0.0-dev-mc-0: tag_name: v0.0.0-dev-mc-0
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-0/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-0/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-mc-0/install.yaml
```

v3.2.0-rc1: tag_name: v3.2.0-rc1
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.2.0-rc1/install.yaml
```

v3.1.8: tag_name: v3.1.8
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.8/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.8/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.8/install.yaml
```

v3.1.7: tag_name: v3.1.7
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.7/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.7/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.7/install.yaml
```

v3.0.10: tag_name: v3.0.10
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

Please read the [upgrading guide](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md) and [CHANGELOG](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.0.10/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.0.10/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo-workflows/v3.0.10/manifests/install.yaml
```
v3.0.9: tag_name: v3.0.9
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

Please read the [upgrading guide](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md) and [CHANGELOG](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.0.9/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.0.9/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo-workflows/v3.0.9/manifests/install.yaml
```
v2.12.13: tag_name: v2.12.13
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

Please read the [upgrading guide](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md) and [CHANGELOG](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v2.12.13/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v2.12.13/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo-workflows/v2.12.13/manifests/install.yaml
```

v2.12.12: tag_name: v2.12.12
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

Please read the [upgrading guide](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md) and [CHANGELOG](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v2.12.12/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v2.12.12/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo-workflows/v2.12.12/manifests/install.yaml
```

v3.1.6: tag_name: v3.1.6
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).
[Change logs](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md)

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.6/install.yaml
```

v0.0.0-dev-dataflow-41: tag_name: v0.0.0-dev-dataflow-41
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-41/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-41/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-41/install.yaml
```

v3.1.5: tag_name: v3.1.5
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.5/install.yaml
```

v0.0.0-dev-dataflow-40: tag_name: v0.0.0-dev-dataflow-40
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-40/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-40/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-40/install.yaml
```

v3.1.4: tag_name: v3.1.4
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.4/install.yaml
```

v0.0.0-dev-dataflow-39: tag_name: v0.0.0-dev-dataflow-39
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-39/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-39/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-39/install.yaml
```

v3.1.3: tag_name: v3.1.3
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.3/install.yaml
```

v0.0.0-dev-dataflow-37: tag_name: v0.0.0-dev-dataflow-37
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-37/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-37/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-37/install.yaml
```

v0.0.0-dev-dataflow-36: tag_name: v0.0.0-dev-dataflow-36
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-36/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-36/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-36/install.yaml
```

v0.0.0-dev-dataflow-34: tag_name: v0.0.0-dev-dataflow-34
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-34/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-34/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-34/install.yaml
```

v0.0.0-dev-dataflow-33: tag_name: v0.0.0-dev-dataflow-33
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-33/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-33/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-33/install.yaml
```

v3.1.2: tag_name: v3.1.2
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.2/install.yaml
```

v0.0.0-dev-dataflow-31: tag_name: v0.0.0-dev-dataflow-31
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-31/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-31/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-31/install.yaml
```

v0.0.0-dev-dataflow-30: tag_name: v0.0.0-dev-dataflow-30
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-30/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-30/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-30/install.yaml
```

v3.1.1: tag_name: v3.1.1
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.1/install.yaml
```

v0.0.0-dev-dataflow-29: tag_name: v0.0.0-dev-dataflow-29
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-29/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-29/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-29/install.yaml
```

v0.0.0-dev-dataflow-28: tag_name: v0.0.0-dev-dataflow-28
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-28/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-28/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-28/install.yaml
```

v3.1.0: tag_name: v3.1.0
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.0/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.1.0/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.0/install.yaml
```

v3.0.8: tag_name: v3.0.8
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Migration From v2

v3 is not intended to introduce significant breaking changes for most users. Please read the "Known issues" and "Breaking changes" to determine if you might be impacted.

## Known Issues

* Some users are reporting that the UI attempts to open all listing workflows in all namespaces, even if the user does not have access. To work-around - append the correct namespace in the URL.
* OpenShift does not appear to support the coordination API which is mandatory for leader election. #5638 #5306 
* Archiving of logs no longer works. #5639

## Breaking Changes

### chore(server): Enable TLS by default. Resolves #5205 (#5212)

The server now starts with TLS enabled by default if a key is available.  This can be disabled using `--secure=false`.

If you have an ingress, you may need to add the appropriate annotations:(varies by ingress):

```
alb.ingress.kubernetes.io/backend-protocol: HTTPS
nginx.ingress.kubernetes.io/backend-protocol: HTTPS
```

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.0.8/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v3.0.8/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo-workflows/v3.0.8/manifests/install.yaml
```

### Since `v3.0.7`
- f8f63e6 fix(controller): Handling panic in leaderelection (#6072) 
- a497e82 Fix docker not terminating. Fixes #6064 (#6083) 
- 9fe8c10 fix(controller): dehydrate workflow before deleting offloaded node status (#6112) 
- 963bed3 fix(ui): Fix-up local storage namespaces. Fixes #6109 (#6144) 
### Since `v3.0.6`

- b6e986c85 fix(controller): Increase readiness timeout from 1s to 30s (#6007)

### Since `v3.0.5`

- 10ecb7e5b fix(controller): Listen on :6060 (#5988)

### Since `v3.0.4`

- f893ea682 feat(controller): Add liveness probe (#5875)
- e64607efa fix(controller): Empty global output param crashes (#5931)
- eeb5acba4 fix(ui): ensure that the artifacts property exists before inspecting it (#5977)
- 49979c2fa fix(controller): Revert cb9676e88857193b762b417f2c45b38e2e0967f9. Fixes #5852 (#5933)

### Since `v3.0.3`

-  v3: `podSpecPatch` can result in failed workflow
- Update manifests to v3.0.4\
- fix(ui): Fix workflow summary page unscrollable issue
- fix: Fix active pods count in node pending status with pod deleted.
- fix(controller): Fix pod spec jumbling. Fixes #5897

#### Contributors

* Alex Collins <!-- num=2 -->
* Saravanan Balasubramanian <!-- num=1-->
* Reijer Copier <!-- num=1 -->
v0.0.0-dev-dataflow-27: tag_name: v0.0.0-dev-dataflow-27
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-27/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-27/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-27/install.yaml
```

v0.0.0-dev-dataflow-26: tag_name: v0.0.0-dev-dataflow-26
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-26/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-26/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-26/install.yaml
```

v0.0.0-dev-dataflow-25: tag_name: v0.0.0-dev-dataflow-25
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-25/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-25/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-25/install.yaml
```

v3.1.0-rc14: tag_name: v3.1.0-rc14
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc14/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc14/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.0-rc14/install.yaml
```

v0.0.0-dev-dataflow-24: tag_name: v0.0.0-dev-dataflow-24
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-24/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-24/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-24/install.yaml
```

v0.0.0-dev-dataflow-23: tag_name: v0.0.0-dev-dataflow-23
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-23/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-23/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-23/install.yaml
```

v3.1.0-rc13: tag_name: v3.1.0-rc13
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc13/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc13/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.0-rc13/install.yaml
```

v0.0.0-dev-dataflow-22: tag_name: v0.0.0-dev-dataflow-22
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-22/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-22/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-22/install.yaml
```

v0.0.0-dev-dataflow-20: tag_name: v0.0.0-dev-dataflow-20
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-20/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-20/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-20/install.yaml
```

v0.0.0-dev-dataflow-19: tag_name: v0.0.0-dev-dataflow-19
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-19/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-19/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-19/install.yaml
```

v0.0.0-dev-docker-0: tag_name: v0.0.0-dev-docker-0
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-docker-0/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-docker-0/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-docker-0/install.yaml
```

v0.0.0-dev-dataflow-18: tag_name: v0.0.0-dev-dataflow-18
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io) and [changelog](https://github.com/argoproj/argo-workflows/blob/master/CHANGELOG.md).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-18/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-18/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-18/install.yaml
```

v0.0.0-dev-dataflow-17: tag_name: v0.0.0-dev-dataflow-17
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-17/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-17/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-17/install.yaml
```

v0.0.0-dev-dataflow-16: tag_name: v0.0.0-dev-dataflow-16
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes and Known Issues

See [upgrading](https://github.com/argoproj/argo-workflows/blob/master/docs/upgrading.md).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-16/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-16/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-16/install.yaml
```

v3.1.0-rc12: tag_name: v3.1.0-rc12
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc12/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc12/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.0-rc12/install.yaml
```

v3.1.0-rc11: tag_name: v3.1.0-rc11
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc11/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc11/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.0-rc11/install.yaml
```

v0.0.0-dev-dataflow-15: tag_name: v0.0.0-dev-dataflow-15
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-15/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-15/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-15/install.yaml
```

v0.0.0-dev-dataflow-14: tag_name: v0.0.0-dev-dataflow-14
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-14/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-14/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-14/install.yaml
```

v0.0.0-dev-dataflow-13: tag_name: v0.0.0-dev-dataflow-13
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-13/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-13/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-13/install.yaml
```

v3.1.0-rc10: tag_name: v3.1.0-rc10
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc10/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc10/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.0-rc10/install.yaml
```

v0.0.0-dev-dataflow-11: tag_name: v0.0.0-dev-dataflow-11
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-11/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-11/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-11/install.yaml
```

v3.1.0-rc8: tag_name: v3.1.0-rc8
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc8/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc8/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.0-rc8/install.yaml
```

v3.0.7: tag_name: v3.0.7
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Migration From v2

v3 is not intended to introduce significant breaking changes for most users. Please read the "Known issues" and "Breaking changes" to determine if you might be impacted.

## Known Issues

* Some users are reporting that the UI attempts to open all listing workflows in all namespaces, even if the user does not have access. To work-around - append the correct namespace in the URL.
* OpenShift does not appear to support the coordination API which is mandatory for leader election. #5638 #5306 
* Archiving of logs no longer works. #5639

## Breaking Changes

### chore(server): Enable TLS by default. Resolves #5205 (#5212)

The server now starts with TLS enabled by default if a key is available.  This can be disabled using `--secure=false`.

If you have an ingress, you may need to add the appropriate annotations:(varies by ingress):

```
alb.ingress.kubernetes.io/backend-protocol: HTTPS
nginx.ingress.kubernetes.io/backend-protocol: HTTPS
```

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.7/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.7/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo-workflows/v3.0.7/manifests/install.yaml
```

### Since `v3.0.6`

- b6e986c85 fix(controller): Increase readiness timeout from 1s to 30s (#6007)

### Since `v3.0.5`

- 10ecb7e5b fix(controller): Listen on :6060 (#5988)

### Since `v3.0.4`

- f893ea682 feat(controller): Add liveness probe (#5875)
- e64607efa fix(controller): Empty global output param crashes (#5931)
- eeb5acba4 fix(ui): ensure that the artifacts property exists before inspecting it (#5977)
- 49979c2fa fix(controller): Revert cb9676e88857193b762b417f2c45b38e2e0967f9. Fixes #5852 (#5933)

### Since `v3.0.3`

-  v3: `podSpecPatch` can result in failed workflow
- Update manifests to v3.0.4\
- fix(ui): Fix workflow summary page unscrollable issue
- fix: Fix active pods count in node pending status with pod deleted.
- fix(controller): Fix pod spec jumbling. Fixes #5897

#### Contributors

* Alex Collins <!-- num=1 -->
* Radolumbo <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* dinever <!-- num=1 -->
v0.0.0-dev-dataflow-10: tag_name: v0.0.0-dev-dataflow-10
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-10/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-10/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-10/install.yaml
```

v3.1.0-rc7: tag_name: v3.1.0-rc7
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc7/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc7/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.0-rc7/install.yaml
```

v3.0.6: tag_name: v3.0.6
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Migration From v2

v3 is not intended to introduce significant breaking changes for most users. Please read the "Known issues" and "Breaking changes" to determine if you might be impacted.

## Known Issues

* Some users are reporting that the UI attempts to open all listing workflows in all namespaces, even if the user does not have access. To work-around - append the correct namespace in the URL.
* OpenShift does not appear to support the coordination API which is mandatory for leader election. #5638 #5306 
* Archiving of logs no longer works. #5639

## Breaking Changes

### chore(server): Enable TLS by default. Resolves #5205 (#5212)

The server now starts with TLS enabled by default if a key is available.  This can be disabled using `--secure=false`.

If you have an ingress, you may need to add the appropriate annotations:(varies by ingress):

```
alb.ingress.kubernetes.io/backend-protocol: HTTPS
nginx.ingress.kubernetes.io/backend-protocol: HTTPS
```

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo-workflows/v3.0.6/manifests/install.yaml
```

### Since `v3.0.5`

- 10ecb7e5b fix(controller): Listen on :6060 (#5988)

### Since `v3.0.4`

- f893ea682 feat(controller): Add liveness probe (#5875)
- e64607efa fix(controller): Empty global output param crashes (#5931)
- eeb5acba4 fix(ui): ensure that the artifacts property exists before inspecting it (#5977)
- 49979c2fa fix(controller): Revert cb9676e88857193b762b417f2c45b38e2e0967f9. Fixes #5852 (#5933)

### Since `v3.0.3`

-  v3: `podSpecPatch` can result in failed workflow
- Update manifests to v3.0.4\
- fix(ui): Fix workflow summary page unscrollable issue
- fix: Fix active pods count in node pending status with pod deleted.
- fix(controller): Fix pod spec jumbling. Fixes #5897

#### Contributors

* Alex Collins <!-- num=1 -->
* Radolumbo <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* dinever <!-- num=1 -->
v3.0.5: tag_name: v3.0.5
body: ⚠️⚠️⚠️NOT PRODUCTION READY⚠️⚠️⚠️

# Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Migration From v2

v3 is not intended to introduce significant breaking changes for most users. Please read the "Known issues" and "Breaking changes" to determine if you might be impacted.

## Known Issues

* Some users are reporting that the UI attempts to open all listing workflows in all namespaces, even if the user does not have access. To work-around - append the correct namespace in the URL.
* OpenShift does not appear to support the coordination API which is mandatory for leader election. #5638 #5306 
* Archiving of logs no longer works. #5639

## Breaking Changes

### chore(server): Enable TLS by default. Resolves #5205 (#5212)

The server now starts with TLS enabled by default if a key is available.  This can be disabled using `--secure=false`.

If you have an ingress, you may need to add the appropriate annotations:(varies by ingress):

```
alb.ingress.kubernetes.io/backend-protocol: HTTPS
nginx.ingress.kubernetes.io/backend-protocol: HTTPS
```

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo-workflows/v3.0.5/manifests/install.yaml
```

### Since `v3.0.4`

- f893ea682 feat(controller): Add liveness probe (#5875)
- e64607efa fix(controller): Empty global output param crashes (#5931)
- eeb5acba4 fix(ui): ensure that the artifacts property exists before inspecting it (#5977)
- 49979c2fa fix(controller): Revert cb9676e88857193b762b417f2c45b38e2e0967f9. Fixes #5852 (#5933)

### Since `v3.0.3`

-  v3: `podSpecPatch` can result in failed workflow
- Update manifests to v3.0.4\
- fix(ui): Fix workflow summary page unscrollable issue
- fix: Fix active pods count in node pending status with pod deleted.
- fix(controller): Fix pod spec jumbling. Fixes #5897

#### Contributors

* Alex Collins <!-- num=1 -->
* Radolumbo <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* dinever <!-- num=1 -->
v3.1.0-rc6: tag_name: v3.1.0-rc6
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.0-rc6/install.yaml
```

v0.0.0-dev-dataflow-9: tag_name: v0.0.0-dev-dataflow-9
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-9/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-9/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-9/install.yaml
```

v0.0.0-dev-dataflow-8: tag_name: v0.0.0-dev-dataflow-8
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-8/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-8/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-8/install.yaml
```

v0.0.0-dev-dataflow-7: tag_name: v0.0.0-dev-dataflow-7
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-7/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-7/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-7/install.yaml
```

v0.0.0-dev-dataflow-6: tag_name: v0.0.0-dev-dataflow-6
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-6/install.yaml
```

v0.0.0-dev-dataflow-5: tag_name: v0.0.0-dev-dataflow-5
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-5/install.yaml
```

v0.0.0-dev-dataflow-4: tag_name: v0.0.0-dev-dataflow-4
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v0.0.0-dev-dataflow-4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v0.0.0-dev-dataflow-4/install.yaml
```

v3.1.0-rc5: tag_name: v3.1.0-rc5
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.0-rc5/install.yaml
```

v3.1.0-rc4: tag_name: v3.1.0-rc4
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.0-rc4/install.yaml
```

v3.0.4: tag_name: v3.0.4
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Migration From v2

v3 is not intended to introduce significant breaking changes for most users. Please read the "Known issues" and "Breaking changes" to determine if you might be impacted.

## Known Issues

* Some users are reporting that the UI attempts to open all listing workflows in all namespaces, even if the user does not have access. To work-around - append the correct namespace in the URL.
* OpenShift does not appear to support the coordination API which is mandatory for leader election. #5638 #5306 
* Archiving of logs no longer works. #5639

## Breaking Changes

### chore(server): Enable TLS by default. Resolves #5205 (#5212)

The server now starts with TLS enabled by default if a key is available.  This can be disabled using `--secure=false`.

If you have an ingress, you may need to add the appropriate annotations:(varies by ingress):

```
alb.ingress.kubernetes.io/backend-protocol: HTTPS
nginx.ingress.kubernetes.io/backend-protocol: HTTPS
```

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo-workflows/v3.0.4/manifests/install.yaml
```
### Since `v3.0.3`

-  v3: `podSpecPatch` can result in failed workflow
- Update manifests to v3.0.4\
- fix(ui): Fix workflow summary page unscrollable issue
- fix: Fix active pods count in node pending status with pod deleted.
- fix(controller): Fix pod spec jumbling. Fixes #5897

#### Contributors

* Alex Collins <!-- num=1 -->
* Radolumbo <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* dinever <!-- num=1 -->
v3.1.0-rc3: tag_name: v3.1.0-rc3
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.0-rc3/install.yaml
```

v3.1.0-rc2: tag_name: v3.1.0-rc2
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes

If any.



## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.0-rc2/install.yaml
```

## Changes

 * df66c5af build: use fetch-depth=0

## Contributors

 * Alex Collins


v3.1.0-rc1: tag_name: v3.1.0-rc1
body: # Quick Start

## What's New?

Find out on [our blog](https://blog.argoproj.io).

## Breaking Changes

If any.



## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.1.0-rc1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Install 

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://github.com/argoproj/argo-workflows/releases/download/v3.1.0-rc1/install.yaml
```

## Changes



## Contributors




v3.0.3: tag_name: v3.0.3
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Migration From v2

v3 is not intended to introduce significant breaking changes for most users. Please read the "Known issues" and "Breaking changes" to determine if you might be impacted.

## Known Issues

* Some users are reporting that the UI attempts to open all listing workflows in all namespaces, even if the user does not have access. To work-around - append the correct namespace in the URL.
* OpenShift does not appear to support the coordination API which is mandatory for leader election. #5638 #5306 
* Archiving of logs no longer works. #5639

## Breaking Changes

### chore(server): Enable TLS by default. Resolves #5205 (#5212)

The server now starts with TLS enabled by default if a key is available.  This can be disabled using `--secure=false`.

If you have an ingress, you may need to add the appropriate annotations:(varies by ingress):

```
alb.ingress.kubernetes.io/backend-protocol: HTTPS
nginx.ingress.kubernetes.io/backend-protocol: HTTPS
```

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo-workflows/v3.0.3/manifests/install.yaml
```


### Since `v3.0.2`

- Update manifests to v3.0.3
- fix: certs in non-root
- feat(controller): Allow to disable leader election (#5638)
- fix: Node set updating global output parameter updates global. #5699
- fix(ui): Fix greediness in regex for auth token replacement
- fix(executor): Fix artifactory saving files. Fixes #5733
- fix: change log level to warn level
- fix(executor): Enable PNS executor to better kill sidecars. Fixes #5779
- fix(executor): Fix git password permission. Fixes #5739
- fix: Reset workflow started time to current when retrying workflow. Fixes #5796
- fix(controller): Error template ref exit handlers. Fixes #5835
- fix(ui): dont show cluster workflows in namespaced mode. Closes #5841
- feat(controller): Add config for potential CPU hogs

#### Contributors

* Alex Collins <!-- num=10 -->
* Michael Ruoss <!-- num=1 -->
* Radolumbo <!-- num=2 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Shoubhik Bose <!-- num=1 -->
* Wen-Chih (Ryan) Lo <!-- num=1 -->
* Yuan Tang <!-- num=1 -->
* alexey <!-- num=1 -->
* markterm <!-- num=1 -->
* tobisinghania <!-- num=1 -->
v3.0.2: tag_name: v3.0.2
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Migration From v2

v3 is not intended to introduce significant breaking changes for most users. Please read the "Known issues" and "Breaking changes" to determine if you might be impacted.

## Known Issues

* Some users are reporting that the UI attempts to open all listing workflows in all namespaces, even if the user does not have access. To work-around - append the correct namespace in the URL.
* OpenShift does not appear to support the coordination API which is mandatory for leader election. #5638 #5306 
* Archiving of logs no longer works. #5639

## Breaking Changes

### chore(server): Enable TLS by default. Resolves #5205 (#5212)

The server now starts with TLS enabled by default if a key is available.  This can be disabled using `--secure=false`.

If you have an ingress, you may need to add the appropriate annotations:(varies by ingress):

```
alb.ingress.kubernetes.io/backend-protocol: HTTPS
nginx.ingress.kubernetes.io/backend-protocol: HTTPS
```

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo-workflows/v3.0.2/manifests/install.yaml
```

### Since `v3.0.1`

- Update manifests to v3.0.2
- fix binary build
- fix: Build argosay binary if it doesn't exist
- fix(executor): More logs for PNS sidecar termination. #5627 (#5683)
- build: Specify Dockerfile version (#5689)
- fix: Only save memoization cache when node succeeded (#5711)
- fix(controller): Fix cron timezone support. Fixes #5653 (#5712)
- fix(ui): Fix `showWorkflows` button. Fixes #5645 (#5693)
- fix(ui): Fix YAML/JSON toggle. Fixes #5690 (#5694)
- fix(cli): Validate cron on update. Fixes #5691 (#5692)
- fix(executor): Ignore not existing metadata. Fixes #5656 (#5695)
- fix(controller): Correct bug for repository ref without default key. Fixes #5646 (#5660)
- fix(ui): strip inner quotes from argoToken (#5677)
- fix: git clone on non-default branch fails (Fixes #5629) (#5630)
- fix: Default ARGO_SECURE=true. Fixes #5607 (#5626)
- fix: Make task/step name extractor robust (#5672)
- fix: Surface error during wait timeout for OSS artifact driver API calls (#5601)
- fix(ui): Fix editor. Fixes #5613 Fixes #5617 (#5620)
- fix(ui): various ui fixes (#5606)
- fix(controller): Workflow hangs indefinitely during ContainerCreating if the Pod or Node unexpectedly dies (#5585)
- feat(ui): let workflow dag and node info scroll independently (#5603)
- fix: parse username from git url when using SSH key auth (#5156)
- fix(controller): Consider nested expanded task in reference (#5594)

#### Contributors

- Alex Collins
- Iven
- Michael Ruoss
- Saravanan Balasubramanian
- Simon Behar
- Vladimir Ivanov
- Yuan Tang
- kennytrytek
- tczhao



v2.12.11: tag_name: v2.12.11
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.11/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.11/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.11/manifests/install.yaml
```

# Changes

- Update manifests to v2.12.11
- fix: InsecureSkipVerify true
- fix(executor): GODEBUG=x509ignoreCN=0 (#5562)
- chore: Handling panic in go routines (#5489)
- feat(server): Enforce TLS >= v1.2 (#5172)

#### Contributors

- Alex Collins
- Saravanan Balasubramanian
- Simon Behar

v3.0.1: tag_name: v3.0.1
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Migration From v2

v3 is not intended to introduce significant breaking changes for most users. Please read the "Known issues" and "Breaking changes" to determine if you might be impacted.

## Known Issues

* Some users are reporting that the UI attempts to open all listing workflows in all namespaces, even if the user does not have access. To work-around - append the correct namespace in the URL.
* OpenShift does not appear to support the coordination API which is mandatory for leader election. #5638 #5306 
* Archiving of logs no longer works. #5639

## Breaking Changes

### chore(server): Enable TLS by default. Resolves #5205 (#5212)

The server now starts with TLS enabled by default if a key is available.  This can be disabled using `--secure=false`.

If you have an ingress, you may need to add the appropriate annotations:(varies by ingress):

```
alb.ingress.kubernetes.io/backend-protocol: HTTPS
nginx.ingress.kubernetes.io/backend-protocol: HTTPS
```

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo-workflows/v3.0.1/manifests/install.yaml
```

### Since `v3.0.0`

- Update manifests to v3.0.1
- fix: Switch InsecureSkipVerify to true (#5575)
- fix(controller): clean up before insert into argo_archived_workflows_labels (#5568)
- fix(executor): GODEBUG=x509ignoreCN=0 (#5562)
- fix: Reference new argo-workflows url in in-app links (#5553)

#### Contributors

- Alex Collins
- BOOK
- Simon Behar
- Tim Collins


v3.0.0: tag_name: v3.0.0
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Migration From v2

v3 is not intended to introduce significant breaking changes for most users. Please read the "Known issues" and "Breaking changes" to determine if you might be impacted.

## Known Issues

* The Argo Server does not work with `--secure` due to a change in Golang v1.15. See #5550. It Will be fixed in v3.0.1
* Some users are reporting that the UI attempts to open all listing workflows in all namespaces, even if the users does not have access. To work-around - append the correct namespace in the URL.

## Breaking Changes

### chore(server): Enable TLS by default. Resolves #5205 (#5212)

The server now starts with TLS enabled by default if a key is available.  This can be disabled using `--secure=false`.

If you have an ingress, you may need to add the appropriate annotations:(varies by ingress):

```
alb.ingress.kubernetes.io/backend-protocol: HTTPS
nginx.ingress.kubernetes.io/backend-protocol: HTTPS
```

### feat(controller)!: Key-only artifacts. Fixes #3184 (#4618)

Key-only artifacts reduce the amount of data stored in the workflow resource. Automation tooling that expects this data will no longer work.

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo-workflows/v3.0.0/manifests/install.yaml
```

## Changes
<!--
### Since `v3.0.0-rc9`

- Update manifests to v3.0.0
- fix: Add 'ToBeFailed'
- fix: Default to insecure mode when no certs are present (#5511)
- fix(controller): Use node.Name instead of node.DisplayName for onExit nodes (#5486)
- fix(ui): Correct Argo Events swagger (#5490)
- fix(executor): Always poll for Docker injected sidecars. Resolves #5448 (#5479)
- chore: Handling panic in go routines (#5489)

#### Contributors

- Alex Collins
- Saravanan Balasubramanian
- Simon Behar

-->
#### Enhancements

* #2614 Add CII Badge (CNCF Requirement)
* #3184 Define `artifactRepositoryRef` only once in spec
* #3405 Allow TaskGroup nodes status to better reflect skipped nodes when using expansion 
* #3586 Create default S3 bucket if not present
* #4192 Provide enum type parameters for Argo workflows
* #4239 Increase max reconciliation time
* #4254 Per workflow container runtime executor setting
* #4425 Update k8s.io/api, k8s.io/apimachinery and k8s.io/client-go
* #4612 Use User Email as Subject in Google OIDC Login
* #4630 Support SSO using the CLI
* #4636 UI cron workflow countdown column
* #4718 Rate-limit workflow reconcilliation
* #4751 Argo Server prometheus metrics
* #4985 Default annotations for workflow pods
* #5027 Output parameters visible in UI
* #5136 Add `argo test` or maybe `argo submit --wait --verify` command
* #5205 TOB-ARGO-TM15: Enable Argo Server TLS by default
* #888 Adding Sensor dashboard to UI

#### Bug Fixes

- #2333 upper: no more rows in this result set
- #3973 Server UI shows "undefined" for environment variable populated from a secret
- #4058 Unwanted (and invalid) metadata.label when creating wftmpl via argo template create
- #4454 Docs doesn't  tell user differences between  workflow Stop and Terminate behaviors
- #4464 Transient database errors with offload enabled cause workflow to fail
- #4572 WorkflowEventBinding passes raw go structs instead of json marshalled payload params
- #4580 Argo Server UI repeatedly requests resource with too old version
- #4599 Workflow executor waitMainContainerStart returns while main container is in waiting state
- #4676 Output artifact gets deleted even when it resides on a volume mount
- #4691 UI crash when viewing YAML of nodes in workflows using `workflowTemplateRef`
- #4707 Fix "Using Your Login With The CLI"
- #4714 Argo UI: Unknown error
- #4719 Allow grace before marking nodes as error + "pod deleted"
- #4730 'heebo.css' requests always return html root
- #4756 When not specifying port for Postgres DB port is defaulting to 0
- #4791 Broken import when using Argo go client
- #4798 v2.12: `pod deleted` + `re-apply` error  = errored workflow
- #4801 v2.12: `EstimatorFactory` can result in >1Gi memory usage
- #4806 invalid memory address or nil pointer dereference 
- #4846 Retryable tasks with template-level metrics are falsely labelled as Running
- #4880 invalid: metadata.labels for createBy when SSO subject does not start with alphanumeric charecters
- #5008 Argo cli skip-tls-verify does not skip as expected
- #5046 Termination grace period is multiplied by time.Second erronously
- #5110 Error when writing artifacts
- #5181 unknown time zone
- #5192 Command being replaced into the workflow: Golang fundamental flaw bug - again
- #5202 Double workflow watch
- #5250 Workflow - Concurrent map read and map write
- #5251 Workflow - Could not get container status
- #5252 Wait container not actually waiting for main container
- #5310 Unable to patch a resource
- #5337 Istio sidecar not terminated when main container completes
- #5429 Adding a link to a pod, can't get the pod name from variable
- #5448 v3.0: wait containers do not exit

#### Other

- Merge branch 'master' into release-3.0
- Merge branch 'master' into release-3.0
- Merge branch 'master' into release-3.0
- Update manifests to v3.0.0
- Update manifests to v3.0.0-rc1
- Update manifests to v3.0.0-rc2
- Update manifests to v3.0.0-rc3
- Update manifests to v3.0.0-rc4
- Update manifests to v3.0.0-rc5
- Update manifests to v3.0.0-rc6
- Update manifests to v3.0.0-rc7
- Update manifests to v3.0.0-rc8
- Update manifests to v3.0.0-rc9
- add json/fix.go
- chore: Fix post-merge conflicts
- chore: Skip TestOutputArtifactS3BucketCreationEnabled - this feat is not in v3.0
- chore: lint
- codegen
- feat(controller): Adding Eventrecorder on LeaderElection
- fix: Add 'ToBeFailed'
- test: remove PNS
- test: remove emissary - not supported in v3.0

#### Pull Requests

- #3964 feat(controller): Support any() and all() for TaskGroup in depends logic. Closes #3405
- #4365 feat(ui): Add parameter value enum support to the UI. Fixes #4192
- #4369 fix(argo-server): fix global variable validation error with reversed dag.tasks. Fixes #4273
- #4371 feat(ui): Make attributes rows easier to read
- #4374 feat(controller): Support per-output parameter aggregation. Fixes #2393
- #4419 fix(ui): Reference secrets in EnvVars. Fixes #3973 
- #4458 feat(controller): Enhanced artifact repository ref. See #3184
- #4470 feat(ui): Argo Events API and UI. Fixes #888
- #4482 feat(controller): Retry transient offload errors. Resolves #4464
- #4557 refactor: Use polling model for workflow phase metric
- #4562 feat(controller): Make MAX_OPERATION_TIME configurable. Close #4239
- #4574 feat(executor): Auto create s3 bucket if not present. Closes #3586 
- #4575 fix(executor): Handle sidecar killing in a process-namespace-shared pod
- #4577 docs: Updated kubectl apply command in manifests README
- #4579 fix(server): use the correct name when downloading artifacts
- #4581 docs: Add JSON schema for IDE validation
- #4586 fix(docs): Bring minio chart instructions up to date
- #4589 fix(server): serve artifacts directly from disk to support large artifacts
- #4590 docs: fix a typo in example
- #4594 fix(server): Correct webhook event payload marshalling. Fixes #4572
- #4595 fix: Perform fields filtering server side
- #4598 fix(controller): Prevent tasks with names starting with digit to use either 'depends' or 'dependencies'
- #4601 fix(executor): Fixed waitMainContainerStart returning prematurely. Closes #4599
- #4610 docs: Minor typo fix
- #4611 fix: derive jsonschema and fix up issues, validate examples dir…
- #4617 fix: Null check pagination variable
- #4618 feat(controller)!: Key-only artifacts. Fixes #3184
- #4620 feat(executor): More informative log when executors do not support output param from base image layer
- #4622 feat(controller): HA Leader election support on Workflow-controller
- #4625 fix: Fix TestCleanFieldsExclude
- #4628 fix: Count Workflows with no phase as Pending for metrics
- #4631 fix(ui): Fix Snyk issues
- #4633 fix(manifests): Drop capabilities, add CNCF badge. Fixes #2614
- #4638 feat(controller): Use deterministic name for cron workflow children
- #4641 feat(ui): add countdown to cronWorkflowList Closes #4636
- #4642 feat(ui): Add links to init and wait logs
- #4643 fix(controller): Deal with hyphen in creator. Fixes #4058
- #4644 feat(server): Support email for SSO+RBAC. Closes #4612
- #4645 feat(ui): Make it easy to use SSO login with CLI. Resolves #4630
- #4648 feat(ui): Replace 3 buttons with drop-down
- #4653 docs: Add more information about terminate and stop process
- #4655 fix(ui): DataLoaderDropdown use function=> promise instead of promise. Fixes #4654 
- #4656 feat(controller): Allow to configure main container resources
- #4658 feat(cli): Add shorthanded option -A for --all-namespaces
- #4659 fix(controller): Only patch status.active in cron workflows when syncing
- #4663 fix(ui): Fixed reconnection hot-loop. Fixes #4580
- #4664 fix(controller): Cleanup the synchronize  pending queue once Workflow get deleted
- #4672 fix: Consider optional artifact arguments
- #4679 feat(controller): Add retry on different host
- #4681 fix(controller): Fix incorrect main container customization precedence and isResourcesSpecified check
- #4682 test: Add test for aggrgate parameters 
- #4683 fix(controller): Fix node status when daemon pod deleted but its children nodes are still running
- #4687 feat: Add a minimal prometheus server manifest
- #4688 fix(test): Fixed Flaky e2e tests TestSynchronizationWfLevelMutex and TestResourceTemplateStopAndTerminate/ResourceTemplateStop
- #4695 fix(ui): Fix UI YAML for in workflows with stored spec. Fixes #4691
- #4697 fix(executor): Do not delete local artifacts after upload. Fixes #4676
- #4698 fix(controller): Increase default EventSpamBurst in Event-recorder
- #4701 chore: direct users to ask questions on GitHub discussions
- #4704 ci: Pin kustomize version
- #4706 fix(controller): Fix the RBAC for leader-election
- #4708 fix(ui): Fix "Using Your Login". Fixes #4707
- #4709 fix(controller): Fixed Leader election name
- #4715 fix(controller): Fixed RBAC on leases
- #4721 chore: Update stress test files.
- #4722 feat(controller): Add Prometheus metric: `workflow_ttl_queue`
- #4725 feat(controller): Pod deletion grace period. Fixes #4719
- #4726 feat(controller): Rate-limit workflows. Closes #4718
- #4727 docs: minor typo fix
- #4728 refactor(controller): Enhanced pod clean-up scalability
- #4729 docs: Update SSO docs to explain how to use the Argo CD Dex instance with Argo Workflows Server
- #4734 fix(executor): Deal with the pod watch API call timing out
- #4735 fix(server): Allow Bearer token in server mode. Fixes #4400
- #4736 feat(controller): Enhanced TTL controller scalability
- #4737 fix(executor): Copy main/executor container resources from controller by value instead of reference
- #4738 fix(executor): Always check if resource has been deleted in checkResourceState()
- #4739 fix(ui): Remove unused Heebo files. Fixes #4730
- #4740 chore(example): Add watch timeout and print out workflow status message
- #4741 fix(controller): Fixes resource version misuse. Fixes #4714
- #4742 fix(controller): Requeue when the pod was deleted. Fixes #4719
- #4743 feat(controller): Add security and cost recommendation conditions
- #4744 fix(controller): Fixed workflow stuck with mutex lock
- #4750 fix(server): Update argo-server crt/key owner
- #4757 fix(controller): Support default database port. Fixes #4756
- #4758 test: Improved e2e test robustness
- #4763 feat(controller): unix timestamp support on creationTimestamp var
- #4775 fix(server): Do not silently ignore sso secret creation error
- #4779 test: Fix `TestDeletingRunningPod`. Fixes #4778
- #4780 refactor(ui): replace node-sass with sass
- #4783 feat: Customize workfow metadata from event data
- #4789 docs: Clarify PNS security
- #4802 fix: load all supported authentication plugins for k8s client-go
- #4808 fix(controller): Various v2.12 fixes. Fixes #4798, #4801, #4806
- #4810 refactor: upgrade kube client version to v0.19.6. Fixes #4425, #4791
- #4811 feat(controller): `k8s_request_total` and `workflow_condition` metrics
- #4813 chore: Remove redundant "from" in log message
- #4814 fix(controller): keep special characters in json string when use withItems
- #4818 fix: Memoize Example (Issue 4626)
- #4820 feat(controller): Retry pod creation on API timeout
- #4821 docs: Remove miscreant line in argo.md
- #4823 feat: More performance metrics
- #4825 feat(cli): add phase option to `node set` command
- #4828 fix(crds): Inline WorkflowSteps schema to generate valid OpenAPI spec
- #4829 fix: Metrics documentation
- #4831 fix: Invalid OpenAPI Spec (Issue 4817)
- #4834 chore: Bump OSS Go SDK to v2.1.5
- #4835 fix(controller): Preserve the original slice when removing string
- #4837 build: Fix lint
- #4847 fix: Mutex not being released on step completion
- #4853 feat(cli): add selector and field-selector option to the stop command.
- #4854 feat: Publish images to Quay.io
- #4855 docs: Added Astraea
- #4856 chore: Introduce `WorkflowPhase`
- #4860 feat: Publish images on Quay.io
- #4861 feat: Expose exitCode to step level metrics
- #4864 fix(controller): Add matrix tests for node offload disabled. Resolves #2333
- #4866 build: sudoless `make codegen -B`
- #4869 feat(controller): optional database migration
- #4871 fix: Do not error on duplicate workflow creation by cron
- #4872 fix(controller): Consider processed retry node in metrics. Fixes #4846
- #4877 fix(controller): Report reconciliation errors better
- #4881 fix(controller): make creator label DNS compliant. Fixes #4880
- #4884 fix(controller): Revert prepending ExecutorScriptSourcePath which brought a breaking change in args handling
- #4889 feat: Support specifying the pattern for transient and retryable errors
- #4890 fix(ui): Show non-pod nodes
- #4893 fix(ui): removing unneeded ':' in protocol for workflow-event-bindings
- #4895 fix(ui): UI bug fixes
- #4896 build: on a dev branch automatically start the UI
- #4900 docs: Improve Documents Around Inputs
- #4902 build: Inline Argo Events CRD URLs to reduce build errors
- #4906 fix(ui): Fix workflow refresh bug
- #4908 feat(controller): Support K8S JSON patch with resource template. Closes #4883
- #4911 fix(ui): objecteditor only runs onChange when values are modified
- #4913 fix(cli): Allow full node name in node-field-selector
- #4916 chore: Set Go mod to /v2
- #4918 feat(crds): Update CRDs to apiextensions.k8s.io/v1
- #4921 fix(ui): fix object-editor text render issue
- #4926 build: Faster `make start`, faster smoke jobs
- #4930 fix(controller): report OOM when wait container OOM
- #4933 fix(ui): v3 UI tweaks
- #4935 feat: Check the workflow is not being deleted for Synchronization workflow
- #4939 docs: add Devtron labs to USERS.md
- #4940 feat(controller): configurable terminationGracePeriodSeconds
- #4944 feat(server): add ServiceAccount info to api/v1/userinfo and ui user tab
- #4946 feat: Support retry on transient errors during executor status checking
- #4948 fix(cli): Update the map-reduce example, fix bug.
- #4952 feat(server): Add Prometheus metrics. Closes #4751
- #4954 feat(executor): Minimize the number of Kubernetes API requests made by executors
- #4957 ci: Run all executors on CI
- #4959 chore: Remove self-referential replace directive in go.mod
- #4960 fix(server): Fix missing logs bug
- #4961 docs: Update running-locally.md
- #4962 fix: Correct usage of wait.ExponentialBackoff
- #4963 docs: Specify steps to ensure clean state when releasing
- #4964 docs: Add Couler, SQLFlow, and Kubeflow to USERS.md
- #4966 fix: Surface the underlying error on wait timeout.
- #4967 docs: Fix broken docs
- #4972 fix: Coalesce UI filtering menus
- #4977 fix: Use button in side panel links
- #4978 chore: Set Go mod to v3
- #4979 feat: Configurable retry backoff settings when retrying API calls
- #4983 fix(controller): Adds PNS_PRIVILEGED, fixed termination bug
- #4989 feat(executor): Log `verb kind statusCode` for executor Kubernetes API requests
- #4990 feat: Set CORS headers
- #4992 fix: Fail DAG templates with variables with invalid dependencies
- #4996 test: Fix TestDeletingRunningPod
- #4998 feat(controller): Use different container runtime executors for each workflow. Close #4254
- #4999 feat(controller): Add retry policy to support retry only on transient errors
- #5000 feat(ui): Node search tool in UI Workflow viewer
- #5005 fix: Unmark daemoned nodes after stopping them
- #5009 build: Upgrade Golang to v1.15
- #5010 build: Upgrade argoexec base image to debian:10.7-slim
- #5011 feat(executor): Upgrade kubectl to v1.19
- #5012 test: Delete TestDeletingRunningPod
- #5013 fix(ui): Fix event-flow hidden nodes
- #5014 feat(executor): Add user agent to workflow executor
- #5015 fix(cli): Add insecure-skip-verify for HTTP1. Fixes #5008
- #5017 doc: Add a note for docker executors regarding outputs.result
- #5019 docs: Video
- #5021 docs: M is demonstrably not less than 1 in the examples
- #5029 fix(ui): Display all node inputs/output in one tab. Resolves #5027
- #5030 fix: Skip the Workflow not found error in Concurrency policy
- #5031 feat(controller): Add podMetadata field to workflow spec. Resolves #4985
- #5032 chore: Reuse LookupEnvDurationOr to parse duration from environment variables
- #5033 feat: Allow to specify grace period for pod GC
- #5035 chore!: Remove deprecated fields
- #5036 feat: DAG render options panel float through scrolling
- #5039 fix(examples): Fix golang build for CI examples
- #5043 fix: Append the error message prior to offloading node status
- #5047 docs: Add Vispera to USERS.md
- #5049 fix(executor): Correct usage of time.Duration. Fixes #5046
- #5055 fix: Do not create pods under shutdown strategy
- #5056 fix: Don't allow graph container to have its own scroll
- #5057 build: Simpler Docker build
- #5058 fix: Use React state to avoid new page load in Workflow view
- #5059 chore: Move paths to /argo-workflows/
- #5062 fix(ui): add a tooltip for commonly truncated fields in the events pane
- #5063 fix: Invalid URL for API Docs
- #5070 chore: Update links to argo-workflows documentation
- #5072 chore: More opinionated linting
- #5076 fix: Revert "fix(controller): keep special characters in json string when … … 19da392 …use withItems (#4814)"
- #5080 docs: Add document for environment variables
- #5081 fix: Synchronization lock handling in Step/DAG Template level
- #5082 fix(controller): Fix creator dashes
- #5083 fix: Prefer to break labels by '-' in UI
- #5084 feat(controller): Logs Kubernetes API requests
- #5087 docs: Add community video to README
- #5088 feat(ui): Display pretty cron schedule
- #5089 build: Fix path to openapi-gen binary
- #5090 feat(controller): Support pod GC strategy based on label selector on pods
- #5091 feat: Add checker to ensure that env variable doc is up to date
- #5095 feat: added lint from stdin
- #5096 docs: Add Jungle to USERS.md
- #5101 fix: send periodic keepalive packets on eventstream connections
- #5108 feat: Support pgzip as an alternative (de)compression implementation
- #5109 docs: Update workflow-controller-configmap workflowRestrictions example doc
- #5111 fix(executor): Fix S3 policy based auth. Fixes #5110
- #5122 chore: Add SHA256 checksums to release
- #5128 test: Enhanced e2e tests
- #5129 feat: Build dev-* branches as engineering builds
- #5131 build: Fix path to golangci-lint binary
- #5133 feat: Support automatically create OSS bucket if not exists
- #5137 feat(ui): Surface result and exit-code outputs
- #5138 chore: Pass cron schedule to workflow
- #5139 fix: Revert the unwanted change in example 
- #5140 fix: Multiple UI fixes
- #5141 feat: Add `argo submit --verify` hidden flag. Closes #5136
- #5145 feat(server): Write an audit log entry for SSO users
- #5150 build: Fix build of `argocli`
- #5157 docs: Add DLR to USERS.md
- #5160 fix: Better message formating for nodes
- #5161 fix(executor): Do not make unneeded `get pod` when no sidecars
- #5162 fix(ui): Fix node filters in UI
- #5174 fix: Specify where in YAML validation error occurred
- #5175 chore: Add missing CLI short docstrings
- #5176 fix: Ensure whitespaces is allowed between name and bracket
- #5182 fix(controller): Fix timezone support. Fixes #5181 
- #5188 fix: Propagate URL changes to react state
- #5190 fix: Consder templateRef when filtering by tag
- #5204 feat(controller): Reused existing workflow informer. Resolves #5202
- #5212 chore(server)!: Enable TLS by default. Resolves #5205
- #5213 fix: Checkbox is not clickable
- #5214 fix(controller): Leader Lease Shared Name
- #5218 fix(controller): Leader lease shared name improvments
- #5221 fix: Do not display pagination warning when there is no pagination
- #5228 fix(server): Enable HTTPS probe for TLS by default. See #5205
- #5230 fix(controller): Work-around Golang flaw. Fixes #5192
- #5234 feat(controller): Allow to modify time related configurations in leader election
- #5249 fix(executor): Fix docker "created" issue. Fixes #5252 
- #5253 fix(controller): Take labels change into account in SignificantPodChange()
- #5258 fix(executor): Fix concurrency error in PNS executor. Fixes #5250
- #5276 fix: Correctly log sub-resource Kubernetes API requests
- #5278 fix: Fixes around archiving workflows
- #5284 build: Decrease `make codegen` time by (at least) 4 min
- #5289 fix(controller): shutdownstrategy on running workflow
- #5296 fix(executor): Enhance PNS executor. Resolves #5251
- #5300 feat: Track nodeView tab in URL
- #5301 fix: Use ScopedLocalStorage instead of direct localStorage
- #5307 fix(executor): Delegate PNS wait to K8SAPI executor.
- #5311 fix(executor): Fix resource patch when not providing flags. Fixes #5310
- #5313 fix: Makefile target
- #5314 fix(controller): Backward compatible workflowTemplateRef from 2.11.x to  2.12.x
- #5324 fix: Disallow object names with more than 63 chars
- #5325 fix: Minor UI fixes
- #5331 fix(test): Flaky TestWorkflowShutdownStrategy 
- #5343 fix: Ensure DEV_BRANCH is correct
- #5344 fix: Ensure release images are 'clean'
- #5345 fix(executor): Kill injected sidecars. Fixes #5337
- #5347 fix: More Makefile fixes
- #5353 fix: Fix S3 file loading
- #5360 fix(controller): Fix `podSpecPatch`
- #5363 fix(executor): Make docker executor more robust.
- #5372 fix(executor): Surface error when wait container fails to establish pod watch
- #5381 fix(test): TestWorkflowTemplateRefWithShutdownAndSuspend flaky
- #5407 fix: Do not allow cron workflow names with more than 52 chars
- #5418 fix(test): Fix TestWorkflowTemplateRefWithShutdownAndSuspend flakyness
- #5421 fix: Set daemoned nodes to Succeeded when boudary ends
- #5424 fix(cli): Only append parse result when not nil to avoid panic
- #5427 fix(executor): PNS support artifacts for short-running containers
- #5430 fix(ui): Fix link button. Fixes #5429
- #5441 fix(test): TestWorkflowTemplateRefWithShutdownAndSuspend flakiness
- #5449 fix: Various UI fixes
- #5451 fix(executor): Ignore non-running Docker kill errors
- #5454 fix: Fix getStepOrDAGTaskName
- #5477 fix(controller): Only set global parameters after workflow validation succeeded to avoid panics
- #5479 fix(executor): Always poll for Docker injected sidecars. Resolves #5448
- #5486 fix(controller): Use node.Name instead of node.DisplayName for onExit nodes
- #5489 chore: Handling panic in go routines
- #5490 fix(ui): Correct Argo Events swagger
- #5497 fix(controller): Fix workflows with retryStrategy left Running after completion
- #5498 fix(ui): Multiple UI fixes
- #5511 fix: Default to insecure mode when no certs are present

#### Contributors

* Alastair Maw <!-- num=1 -->
* Alex Capras <!-- num=1 -->
* Alex Collins <!-- num=106 -->
* Alexey Volkov <!-- num=1 -->
* Amim Knabben <!-- num=1 -->
* Arthur Outhenin-Chalandre <!-- num=1 -->
* BOOK <!-- num=2 -->
* Basanth Jenu H B <!-- num=1 -->
* Daisuke Taniwaki <!-- num=3 -->
* Dylan Hellems <!-- num=1 -->
* Florian <!-- num=1 -->
* Huan-Cheng Chang <!-- num=3 -->
* Isaac Gaskin <!-- num=1 -->
* J.P. Zivalich <!-- num=1 -->
* Jesse Suen <!-- num=1 -->
* Kaan C. Fidan <!-- num=1 -->
* Ken Kaizu <!-- num=1 -->
* Kristoffer Johansson <!-- num=1 -->
* Marcin Gucki <!-- num=1 -->
* Maximilian Roos <!-- num=1 -->
* Michael Albers <!-- num=1 -->
* Nelson Rodrigues <!-- num=1 -->
* Noah Hanjun Lee <!-- num=1 -->
* Paavo Pokkinen <!-- num=1 -->
* Paul Brabban <!-- num=2 -->
* Roi Kramer <!-- num=1 -->
* RossyWhite <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=22 -->
* Simeon H.K. Fitch <!-- num=1 -->
* Simon Behar <!-- num=79 -->
* Simon Frey <!-- num=1 -->
* Song Juchao <!-- num=1 -->
* Stefan Gloutnikov <!-- num=1 -->
* Stéphane Este-Gracias <!-- num=1 -->
* Takayoshi Nishida <!-- num=1 -->
* Tomáš Coufal <!-- num=1 -->
* Trevor Wood <!-- num=1 -->
* Viktor Farcic <!-- num=2 -->
* Wylie Hobbs <!-- num=1 -->
* Yuan Tang <!-- num=31 -->
* Zach Aller <!-- num=2 -->
* aletepe <!-- num=1 -->
* bei-re <!-- num=1 -->
* bellevuerails <!-- num=1 -->
* cocotyty <!-- num=1 -->
* dherman <!-- num=5 -->
* drannenberg <!-- num=1 -->
* ermeaney <!-- num=1 -->
* fsiegmund <!-- num=1 -->
* hermanhobnob <!-- num=1 -->
* joyciep <!-- num=1 -->
* kennytrytek <!-- num=3 -->
* lonsdale8734 <!-- num=1 -->
* makocchi <!-- num=1 -->
* markterm <!-- num=2 -->
* nishant-d <!-- num=1 -->
* saranyaeu2987 <!-- num=1 -->
* tczhao <!-- num=7 -->
* zhengchenyu <!-- num=1 -->
v3.0.0-rc9: tag_name: v3.0.0-rc9
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc9/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc9/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v3.0.0-rc9/manifests/install.yaml
```

## Changes
### Since `v3.0.0-rc8`

- Update manifests to v3.0.0-rc9
- fix(ui): Multiple UI fixes (#5498)
- fix(controller): Fix workflows with retryStrategy left Running after completion (#5497)
- fix(controller): Only set global parameters after workflow validation succeeded to avoid panics (#5477)
- fix: Set daemoned nodes to Succeeded when boudary ends (#5421)
- fix(executor): Ignore non-running Docker kill errors (#5451)
- fix: Fix getStepOrDAGTaskName (#5454)
- fix: Various UI fixes (#5449)
- fix(executor): PNS support artifacts for short-running containers (#5427)
- fix(test): TestWorkflowTemplateRefWithShutdownAndSuspend flakiness (#5441)
- fix(cli): Only append parse result when not nil to avoid panic (#5424)
- fix(ui): Fix link button. Fixes #5429 (#5430)
- fix(executor): Surface error when wait container fails to establish pod watch (#5372)
- fix(test): Fix TestWorkflowTemplateRefWithShutdownAndSuspend flakyness (#5418)

#### Contributors

- Alex Collins
- Saravanan Balasubramanian
- Simon Behar
- Yuan Tang


v3.0.0-rc8: tag_name: v3.0.0-rc8
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc8/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc8/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v3.0.0-rc8/manifests/install.yaml
```

## Changes
### Since `v3.0.0-rc7`

- Update manifests to v3.0.0-rc8
- fix(server): Enable HTTPS probe for TLS by default. See #5205 (#5228) 

#### Contributors

- Alex Collins
- Simon Behar


v3.0.0-rc7: tag_name: v3.0.0-rc7
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc7/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc7/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v3.0.0-rc7/manifests/install.yaml
```

## Changes
### Since `v3.0.0-rc6`

- Update manifests to v3.0.0-rc7
- test: remove PNS
- test: remove emissary - not supported in v3.0
- chore: lint
- chore: Skip TestOutputArtifactS3BucketCreationEnabled - this feat is not in v3.0
- chore: Fix post-merge conflicts
- fix(executor): Kill injected sidecars. Fixes #5337 (#5345)
- chore(server): Enable TLS by default. Resolves #5205 (#5212)
- fix(executor): Fix resource patch when not providing flags. Fixes #5310 (#5311)
- fix: Do not allow cron workflow names with more than 52 chars (#5407)
- fix(test): TestWorkflowTemplateRefWithShutdownAndSuspend flaky (#5381)
- fix(controller): Fix `podSpecPatch` (#5360)
- fix: Fix S3 file loading (#5353)
- fix(executor): Make docker executor more robust. (#5363)
- fix(test): Flaky TestWorkflowShutdownStrategy  (#5331)

#### Contributors

- Alex Collins
- Saravanan Balasubramanian
- Simon Behar
- Yuan Tang


v3.0.0-rc6: tag_name: v3.0.0-rc6
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v3.0.0-rc6/manifests/install.yaml
```

## Changes
### Since `v3.0.0-rc5`

- Update manifests to v3.0.0-rc6
- fix: More Makefile fixes (#5347)
- fix: Ensure release images are 'clean' (#5344)
- fix: Ensure DEV_BRANCH is correct (#5343)

#### Contributors

- Simon Behar





v3.0.0-rc5: tag_name: v3.0.0-rc5
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v3.0.0-rc5/manifests/install.yaml
```

## Changes
### Since `v3.0.0-rc5`

- Update manifests to v3.0.0-rc5
- cherry-picked fix(controller): shutdownstrategy on running workflow (#5289)
- codegen
- fix: Makefile target (#5313)
- add json/fix.go
- fix: Minor UI fixes (#5325)
- fix: Disallow object names with more than 63 chars (#5324)
- fix(executor): Delegate PNS wait to K8SAPI executor. (#5307)
- fix: Backward compatible workflowTemplateRef from 2.11.x to  2.12.x (#5314)
- feat: Track nodeView tab in URL (#5300)
- fix: Use ScopedLocalStorage instead of direct localStorage (#5301)
- build: Decrease `make codegen` time by (at least) 4 min (#5284)
- fix(executor): Enhance PNS executor. Resolves #5251 (#5296)
- fix: Fixes around archiving workflows (#5278)
- fix: Correctly log sub-resource Kubernetes API requests (#5276)
- fix(executor): Fix concurrency error in PNS executor. Fixes #5250 (#5258)
- fix(executor): Fix docker "created" issue. Fixes #5252 (#5249)
- fix(controller): Take labels change into account in SignificantPodChange() (#5253)
- fix(controller): Work-around Golang bug. Fixes #5192 (#5230)
- chore: Pass cron schedule to workflow (#5138)

#### Contributors

- Alex Collins
- Saravanan Balasubramanian
- Simon Behar
- Yuan Tang




v2.12.10: tag_name: v2.12.10
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.10/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.10/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.10/manifests/install.yaml
```

# Changes

- Update manifests to v2.12.10
- fix(test): Flaky TestWorkflowShutdownStrategy  (#5331)
- Cherry-pick 5289
- fix: Disallow object names with more than 63 chars (#5324)
- fix: Backward compatible workflowTemplateRef from 2.11.x to  2.12.x (#5314)
- fix: Ensure whitespaces is allowed between name and bracket (#5176)
- Update manifests to v2.12.9
- chore: Add SHA256 checksums to release (#5122)
- codegen
- cherry-picked 5081
- fix: Revert "fix(controller): keep special characters in json string when … … 19da392 …use withItems (#4814)" (#5076)
- fix(controller): Fix creator dashes (#5082)

#### Contributors

- Alex Collins
- Saravanan Balasubramanian
- Simon Behar

v3.0.0-rc4: tag_name: v3.0.0-rc4
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v3.0.0-rc4/manifests/install.yaml
```

## Changes
### Since `v3.0.0-rc3`

- Update manifests to v3.0.0-rc4
- feat(controller): Allow to modify time related configurations in leader election (#5234)
- feat(controller): Reused existing workflow informer. Resolves #5202 (#5204)
- fix(controller): Leader lease shared name improvments (#5218)
- fix: Do not display pagination warning when there is no pagination (#5221)
- fix: Checkbox is not clickable (#5213)
- fix(controller): Leader Lease Shared Name (#5214)
- fix: Ensure whitespaces is allowed between name and bracket (#5176)
- fix: Consder templateRef when filtering by tag (#5190)
- fix: Propagate URL changes to react state (#5188)
- fix(controller): Fix timezone support. Fixes #5181  (#5182)

#### Contributors

- Alex Collins
- Simon Behar
- Yuan Tang
- Zach Aller



v3.0.0-rc3: tag_name: v3.0.0-rc3
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v3.0.0-rc3/manifests/install.yaml
```

## Changes
### Since `v3.0.0-rc2`

- Merge branch 'master' into release-3.0
- chore: Add missing CLI short docstrings (#5175)
- fix: Specify where in YAML validation error occurred (#5174)
- fix: Fix node filters in UI (#5162)
- feat(controller): Support pod GC strategy based on label selector on pods (#5090)
- docs: Add DLR to USERS.md (#5157)
- fix(executor): Do not make unneeded `get pod` when no sidecars (#5161)
- fix: Better message formating for nodes (#5160)
- fix: send periodic keepalive packets on eventstream connections (#5101)
- fix: Append the error message prior to offloading node status (#5043)
- build: Fix build of `argocli` (#5150)
- feat: Support automatically create OSS bucket if not exists (#5133)
- feat(controller): Use different container runtime executors for each workflow. Close #4254 (#4998)
- feat: Add `argo submit --verify` hidden flag. Closes #5136 (#5141)
- feat: added lint from stdin (#5095)
- feat(server): Write an audit log entry for SSO users (#5145)
- fix: Revert the unwanted change in example  (#5139)
- fix: Multiple UI fixes (#5140)
- feat(ui): Surface result and exit-code outputs (#5137)
- test: Enhanced e2e tests (#5128)
- build: Fix path to golangci-lint binary (#5131)
- feat: Build dev-* branches as engineering builds (#5129)
- fix(ui): add a tooltip for commonly truncated fields in the events pane (#5062)
- feat: Support pgzip as an alternative (de)compression implementation (#5108)
- docs: Update workflow-controller-configmap workflowRestrictions example doc (#5109)
- chore: Add SHA256 checksums to release (#5122)
- Update manifests to v3.0.0-rc2
- Merge branch 'master' into release-3.0
- fix(executor): Fix S3 policy based auth. Fixes #5110 (#5111)
- Merge branch 'master' into release-3.0
- fix: Invalid OpenAPI Spec (Issue 4817) (#4831)
- chore: More opinionated linting (#5072)
- feat: Add checker to ensure that env variable doc is up to date (#5091)
- feat(controller): Logs Kubernetes API requests (#5084)
- build: Fix path to openapi-gen binary (#5089)
- feat(executor): Minimize the number of Kubernetes API requests made by executors (#4954)
- fix: Do not create pods under shutdown strategy (#5055)
- fix: Synchronization lock handling in Step/DAG Template level (#5081)
- docs: Add document for environment variables (#5080)
- docs: Add Jungle to USERS.md (#5096)
- feat(ui): Display pretty cron schedule (#5088)
- fix: Revert "fix(controller): keep special characters in json string when … … 19da392 …use withItems (#4814)" (#5076)
- fix: Prefer to break labels by '-' in UI (#5083)
- docs: Add community video to README (#5087)
- fix(controller): Fix creator dashes (#5082)
- feat(controller): Add podMetadata field to workflow spec. Resolves #4985 (#5031)
- feat(controller): Add retry policy to support retry only on transient errors (#4999)
- chore: Update links to argo-workflows documentation (#5070)
- docs: Add Vispera to USERS.md (#5047)
- build: Simpler Docker build (#5057)
- fix(executor): Correct usage of time.Duration. Fixes #5046 (#5049)
- feat(executor): Add user agent to workflow executor (#5014)
- chore!: Remove deprecated fields (#5035)
- fix: Invalid URL for API Docs (#5063)
- feat: Allow to specify grace period for pod GC (#5033)
- chore: Move paths to /argo-workflows/ (#5059)
- fix: Use React state to avoid new page load in Workflow view (#5058)
- fix: Don't allow graph container to have its own scroll (#5056)
- Update manifests to v3.0.0-rc1
- fix(cli): Add insecure-skip-verify for HTTP1. Fixes #5008 (#5015)
- chore: Reuse LookupEnvDurationOr to parse duration from environment variables (#5032)
- M is demonstrably not less than 1 in the examples (#5021)
- feat(controller): configurable terminationGracePeriodSeconds (#4940)
- Fix golang build (#5039)
- feat: DAG render options panel float through scrolling (#5036)
- fix: Skip the Workflow not found error in Concurrency policy (#5030)
- fix(ui): Display all node inputs/output in one tab. Resolves #5027 (#5029)
- feat(executor): Log `verb kind statusCode` for executor Kubernetes API requests (#4989)
- fix: Unmark daemoned nodes after stopping them (#5005)
- Video (#5019)
- docs: Add a note for docker executors regarding outputs.result (#5017)
- fix(ui): Fix event-flow hidden nodes (#5013)
- build: Upgrade Golang to v1.15 (#5009)
- build: Upgrade argoexec base image to debian:10.7-slim (#5010)
- feat(executor): Upgrade kubectl to v1.19 (#5011)
- test: Delete TestDeletingRunningPod (#5012)
- feat: Set CORS headers (#4990)
- feat(ui): Node search tool in UI Workflow viewer (#5000)
- fix: Fail DAG templates with variables with invalid dependencies (#4992)
- chore: Set Go mod to v3 (#4978)
- fix: Coalesce UI filtering menus (#4972)
- docs: Add Couler, SQLFlow, and Kubeflow to USERS.md (#4964)
- feat: Configurable retry backoff settings when retrying API calls (#4979)
- test: Fix TestDeletingRunningPod (#4996)
- fix(controller): Revert prepending ExecutorScriptSourcePath which brought a breaking change in args handling (#4884)
- fix(controller): Adds PNS_PRIVILEGED, fixed termination bug (#4983)
- fix: Use button in side panel links (#4977)
- docs: Fix broken docs (#4967)
- fix: Surface the underlying error on wait timeout. (#4966)
- fix: Correct usage of wait.ExponentialBackoff (#4962)
- docs: Specify states to ensure clean state when releaseing (#4963)
- docs: Update running-locally.md (#4961)
- fix(server): Fix missing logs bug (#4960)
- ci: Run all executors on CI (#4957)
- feat(server): add ServiceAccount info to api/v1/userinfo and ui user tab (#4944)
- Added Astraea (#4855)
- fix(controller): report OOM when wait container OOM (#4930)
- feat: Support retry on transient errors during executor status checking (#4946)
- docs: Remove miscreant line in argo.md (#4821)
- docs: Update security docs (#4743)
- chore: Remove self-referential replace directive in go.mod (#4959)
- docs: Improve Documents Around Inputs (#4900)
- feat(crds): Update CRDs to apiextensions.k8s.io/v1 (#4918)
- feat(server): Add Prometheus metrics. Closes #4751 (#4952)
- chore: Set Go mod to /v2 (#4916)
- fix(cli): Allow full node name in node-field-selector (#4913)
- fix(cli): Update the map-reduce example, fix bug. (#4948)
- feat: Check the workflow is not being deleted for Synchronization workflow (#4935)
- docs: add Devtron labs to USERS.md (#4939)
- fix(ui): v3 UI tweaks (#4933)
- build: Faster `make start`, faster smoke jobs (#4926)
- fix(ui): fix object-editor text render issue (#4921)
- feat: support K8S json patch (#4908)
- chore: Introduce `WorkflowPhase` (#4856)
- fix(controller): Report reconciliation errors better (#4877)
- feat(controller)!: Key-only artifacts. Fixes #3184 (#4618)
- fix(ui): objecteditor only runs onChange when values are modified (#4911)
- build: Inline Argo Events CRD URLs to reduce build errors (#4902)
- fix(ui): Fix workflow refresh bug (#4906)
- fix: Mutex not being released on step completion (#4847)
- fix(ui): UI bug fixes (#4895)
- feat: Support specifying the pattern for transient and retryable errors (#4889)
- build: on a dev branch automatically start the UI (#4896)
- Revert "feat(cli): add selector and field-selector option to the stop command. (#4853)"
- feat(cli): add selector and field-selector option to the stop command. (#4853)
- fix(workflow-event-bindings): removing unneeded ':' in protocol (#4893)
- fix(ui): Show non-pod nodes (#4890)
- fix(controller): Consider processed retry node in metrics. Fixes #4846 (#4872)
- feat(controller): optional database migration (#4869)
- feat(ui): Argo Events API and UI. Fixes #888 (#4470)
- fix(controller): make creator label DNS compliant. Fixes #4880 (#4881)
- fix(controller): Fix node status when daemon pod deleted but its children nodes are still running (#4683)
- fix: Do not error on duplicate workflow creation by cron (#4871)
- build: sudoless `make codegen -B` (#4866)
- fix(controller): Add matrix tests for node offload disabled. Resolves #2333 (#4864)
- feat: Expose exitCode to step level metrics (#4861)
- feat(controller): `k8s_request_total` and `workflow_condition` metrics (#4811)
- feat: Publish images on Quay.io (#4860)
- feat: Publish images to Quay.io (#4854)
- refactor: upgrade kube client version to v0.19.6. Fixes #4425, #4791 (#4810)
- feat: Worker busy and active pod metrics (#4823)
- fix: Preserve the original slice when removing string (#4835)
- fix(controller): keep special characters in json string when use withItems (#4814)
- feat(controller): Retry pod creation on API timeout (#4820)
- build: Fix lint (#4837)
- chore: Bump OSS Go SDK to v2.1.5 (#4834)
- feat(controller): Add retry on different host (#4679)
- fix: Metrics documentation (#4829)
- chore: add missing phase option to node cli command (#4825)
- fix(crds): Inline WorkflowSteps schema to generate valid OpenAPI spec (#4828)
- feat(controller): Adding Eventrecorder on LeaderElection
- fix(controller): Various v2.12 fixes. Fixes #4798, #4801, #4806 (#4808)
- fix: Memoize Example (Issue 4626) (#4818)
- feat: Customize workfow metadata from event data (#4783)
- chore: Remove redundant "from" in log message (#4813)
- fix: load all supported authentication plugins for k8s client-go (#4802)
- fix(executor): Do not delete local artifacts after upload. Fixes #4676 (#4697)
- docs: Clarify PNS security (#4789)
- test: Fix TestDeletingRunningPod (#4779)
- refactor(ui): replace node-sass with sass (#4780)
- chore(example): Add watch timeout and print out workflow status message (#4740)
- fix(server): Do not silently ignore sso secret creation error (#4775)
- feat(controller): unix timestamp support on creationTimestamp var (#4763)
- feat(controller): Rate-limit workflows. Closes #4718 (#4726)
- Change argo-server crt/key owner (#4750)
- fix(controller): Support default database port. Fixes #4756 (#4757)
- refactor(controller): Enhanced pod clean-up scalability (#4728)
- test: Improved e2e test robustness (#4758)
- feat: Add a minimal prometheus server manifest (#4687)
- fix(ui): Remove unused Heebo files. Fixes #4730 (#4739)
- fix(controller): Fixes resource version misuse. Fixes #4714 (#4741)
- fix(controller): Requeue when the pod was deleted. Fixes #4719 (#4742)
- fix(controller): Fixed workflow stuck with mutex lock (#4744)
- feat(controller): Enhanced TTL controller scalability (#4736)
- fix(executor): Always check if resource has been deleted in checkResourceState() (#4738)
- fix(executor): Copy main/executor container resources from controller by value instead of reference (#4737)
- docs: Update SSO docs to explain how to use the Argo CD Dex instance with Argo Workflows Server (#4729)
- fix(ui): Fix YAML for workflows with storedWorkflowTemplateSpec. Fixes #4691 (#4695)
- fix: Allow Bearer token in server mode (#4735)
- fix(executor): Deal with the pod watch API call timing out (#4734)
- feat(controller): Pod deletion grace period. Fixes #4719 (#4725)
- docs: minor typo fix (#4727)
- feat(controller): Add Prometheus metric: `workflow_ttl_queue` (#4722)
- chore: Update stress test files. (#4721)
- fix(controller): Fix incorrect main container customization precedence and isResourcesSpecified check (#4681)
- fix(ui): Fix "Using Your Login". Fixes #4707 (#4708)
- feat(server): Support email for SSO+RBAC. Closes #4612 (#4644)
- fix(controller): Fixed RBAC on leases (#4715)
- fix(controller): Fixed Leader election name (#4709)
- fix(test): Fixed Flaky e2e tests TestSynchronizationWfLevelMutex and TestResourceTemplateStopAndTerminate/ResourceTemplateStop (#4688)
- fix(controller): Fix the RBAC for leader-election (#4706)
- ci: Pin kustomize version (#4704)
- chore: direct users to ask questions on GitHub discussions (#4701)
- fix(controller): Increate default EventSpamBurst in Eventrecorder (#4698)
- feat(controller): HA Leader election support on Workflow-controller (#4622)
- fix: Consider optional artifact arguments (#4672)
- feat(controller): Use deterministic name for cron workflow children (#4638)
- fix(controller): Only patch status.active in cron workflows when syncing (#4659)
- test: Add test for aggrgate parameters  (#4682)
- fix(ui): Fixed reconnection hot-loop. Fixes #4580 (#4663)
- feat: Support per-output parameter aggregation (#4374)
- feat(controller): Allow to configure main container resources (#4656)
- fix(controller): Cleanup the synchronize  pending queue once Workflow deleted (#4664)
- feat(ui): Make it easy to use SSO login with CLI. Resolves #4630 (#4645)
- feat(ui): add countdown to cronWorkflowList Closes #4636 (#4641)
- feat(ui): Add parameter value enum support to the UI. Fixes #4192 (#4365)
- docs: adding more information about terminate and stop process. Fixes: #4454. (#4653)
- feat: Add shorthanded option -A for --all-namespaces (#4658)
- fix(ui): DataLoaderDropdown fix input type from promise to function that (#4655)
- feat(ui): Replace 3 buttons with drop-down (#4648)
- fix(controller): Deal with hyphen in creator. Fixes #4058 (#4643)
- fix(manifests): Drop capabilities, add CNCF badge. Fixes #2614 (#4633)
- feat(ui): Add links to init and wait logs (#4642)
- feat(executor): Auto create s3 bucket if not present. Closes #3586  (#4574)
- feat(controller): Support .AnySucceeded / .AllFailed for TaskGroup in depends logic. Closes #3405 (#3964)
- fix: Count Workflows with no phase as Pending for metrics (#4628)
- feat(executor): More informative log when executors do not support output param from base image layer (#4620)
- fix(ui): Fix Snyk issues (#4631)
- fix(ui): Reference secrets in EnvVars. Fixes #3973  (#4419)
- fix: derive jsonschema and fix up issues, validate examples dir… (#4611)
- fix(argo-server): fix global variable validation error with reversed dag.tasks (#4369)
- fix: Fix TestCleanFieldsExclude (#4625)
- feat(ui): Add columns--narrower-height to AttributeRow (#4371)
- fix(server): Correct webhook event payload marshalling. Fixes #4572 (#4594)
- fix: Perform fields filtering server side (#4595)
- fix: Null check pagination variable (#4617)
- feat(controller): Enhanced artifact repository ref. See #3184 (#4458)
- fix(executor): Fixed waitMainContainerStart returning prematurely. Closes #4599 (#4601)
- fix(docs): Bring minio chart instructions up to date (#4586)
- fix(controller): Prevent tasks with names starting with digit to use either 'depends' or 'dependencies' (#4598)
- docs: Minor typo fix (#4610)
- refactor: Use polling model for workflow phase metric (#4557)
- docs: Add JSON schema for IDE validation (#4581)
- fix(executor): Handle sidecar killing in a process-namespace-shared pod (#4575)
- fix(server): serve artifacts directly from disk to support large artifacts (#4589)
- fix(server): use the correct name when downloading artifacts (#4579)
- feat(controller): Retry transient offload errors. Resolves #4464 (#4482)
- docs: Fix a typo in example (#4590)
- feat(controller): Make MAX_OPERATION_TIME configurable. Close #4239 (#4562)
- docs: Updated kubectl apply command in manifests README (#4577)

#### Contributors

- Alastair Maw
- Alex Capras
- Alex Collins
- Alexey Volkov
- Amim Knabben
- Arthur Outhenin-Chalandre
- BOOK
- Basanth Jenu H B
- Daisuke Taniwaki
- Dylan Hellems
- Florian
- Huan-Cheng Chang
- Isaac Gaskin
- J.P. Zivalich
- Jesse Suen
- Kaan C. Fidan
- Ken Kaizu
- Kristoffer Johansson
- Marcin Gucki
- Maximilian Roos
- Michael Albers
- Nelson Rodrigues
- Noah Hanjun Lee
- Paavo Pokkinen
- Paul Brabban
- Roi Kramer
- RossyWhite
- Saravanan Balasubramanian
- Simeon H.K. Fitch
- Simon Behar
- Simon Frey
- Song Juchao
- Stefan Gloutnikov
- Stéphane Este-Gracias
- Takayoshi Nishida
- Tomáš Coufal
- Trevor Wood
- Viktor Farcic
- Wylie Hobbs
- Yuan Tang
- aletepe
- bei-re
- bellevuerails
- cocotyty
- dherman
- drannenberg
- ermeaney
- fsiegmund
- hermanhobnob
- joyciep
- kennytrytek
- lonsdale8734
- makocchi
- markterm
- nishant-d
- saranyaeu2987
- tczhao
- zhengchenyu


v3.0.0-rc2: tag_name: v3.0.0-rc2
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v3.0.0-rc2/manifests/install.yaml
```

## Changes
### Since `v3.0.0-rc1`

- Merge branch 'master' into release-3.0
- fix(executor): Fix S3 policy based auth. Fixes #5110 (#5111)
- Merge branch 'master' into release-3.0
- fix: Invalid OpenAPI Spec (Issue 4817) (#4831)
- chore: More opinionated linting (#5072)
- feat: Add checker to ensure that env variable doc is up to date (#5091)
- feat(controller): Logs Kubernetes API requests (#5084)
- build: Fix path to openapi-gen binary (#5089)
- feat(executor): Minimize the number of Kubernetes API requests made by executors (#4954)
- fix: Do not create pods under shutdown strategy (#5055)
- fix: Synchronization lock handling in Step/DAG Template level (#5081)
- docs: Add document for environment variables (#5080)
- docs: Add Jungle to USERS.md (#5096)
- feat(ui): Display pretty cron schedule (#5088)
- fix: Revert "fix(controller): keep special characters in json string when … … 19da392 …use withItems (#4814)" (#5076)
- fix: Prefer to break labels by '-' in UI (#5083)
- docs: Add community video to README (#5087)
- fix(controller): Fix creator dashes (#5082)
- feat(controller): Add podMetadata field to workflow spec. Resolves #4985 (#5031)
- feat(controller): Add retry policy to support retry only on transient errors (#4999)
- chore: Update links to argo-workflows documentation (#5070)
- docs: Add Vispera to USERS.md (#5047)
- build: Simpler Docker build (#5057)
- fix(executor): Correct usage of time.Duration. Fixes #5046 (#5049)
- feat(executor): Add user agent to workflow executor (#5014)
- chore!: Remove deprecated fields (#5035)
- fix: Invalid URL for API Docs (#5063)
- feat: Allow to specify grace period for pod GC (#5033)
- chore: Move paths to /argo-workflows/ (#5059)
- fix: Use React state to avoid new page load in Workflow view (#5058)
- fix: Don't allow graph container to have its own scroll (#5056)

#### Contributors

- Alex Collins
- Dylan Hellems
- Kaan C. Fidan
- Nelson Rodrigues
- Saravanan Balasubramanian
- Simon Behar
- Viktor Farcic
- Yuan Tang
- drannenberg
- kennytrytek

## Checksums

v2.12.9: tag_name: v2.12.9
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.9/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.9/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.9/manifests/install.yaml
```

# Changes

- Update manifests to v2.12.9
- chore: Add SHA256 checksums to release (#5122)
- codegen
- cherry-picked #5081
- fix: Revert "fix(controller): keep special characters in json string when … … 19da392 …use withItems (#4814)" (#5076)
- fix(controller): Fix creator dashes (#5082)

#### Contributors

- Alex Collins
- Saravanan Balasubramanian
- Simon Behar




v3.0.0-rc1: tag_name: v3.0.0-rc1
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v3.0.0-rc1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v3.0.0-rc1/manifests/install.yaml
```

# Changes

- Update manifests to v3.0.0-rc1
- fix(cli): Add insecure-skip-verify for HTTP1. Fixes #5008 (#5015)
- chore: Reuse LookupEnvDurationOr to parse duration from environment variables (#5032)
- M is demonstrably not less than 1 in the examples (#5021)
- feat(controller): configurable terminationGracePeriodSeconds (#4940)
- Fix golang build (#5039)
- feat: DAG render options panel float through scrolling (#5036)
- fix: Skip the Workflow not found error in Concurrency policy (#5030)
- fix(ui): Display all node inputs/output in one tab. Resolves #5027 (#5029)
- feat(executor): Log `verb kind statusCode` for executor Kubernetes API requests (#4989)
- fix: Unmark daemoned nodes after stopping them (#5005)
- Video (#5019)
- docs: Add a note for docker executors regarding outputs.result (#5017)
- fix(ui): Fix event-flow hidden nodes (#5013)
- build: Upgrade Golang to v1.15 (#5009)
- build: Upgrade argoexec base image to debian:10.7-slim (#5010)
- feat(executor): Upgrade kubectl to v1.19 (#5011)
- test: Delete TestDeletingRunningPod (#5012)
- feat: Set CORS headers (#4990)
- feat(ui): Node search tool in UI Workflow viewer (#5000)
- fix: Fail DAG templates with variables with invalid dependencies (#4992)
- chore: Set Go mod to v3 (#4978)
- fix: Coalesce UI filtering menus (#4972)
- docs: Add Couler, SQLFlow, and Kubeflow to USERS.md (#4964)
- feat: Configurable retry backoff settings when retrying API calls (#4979)
- test: Fix TestDeletingRunningPod (#4996)
- fix(controller): Revert prepending ExecutorScriptSourcePath which brought a breaking change in args handling (#4884)
- fix(controller): Adds PNS_PRIVILEGED, fixed termination bug (#4983)
- fix: Use button in side panel links (#4977)
- docs: Fix broken docs (#4967)
- fix: Surface the underlying error on wait timeout. (#4966)
- fix: Correct usage of wait.ExponentialBackoff (#4962)
- docs: Specify states to ensure clean state when releaseing (#4963)
- docs: Update running-locally.md (#4961)
- fix(server): Fix missing logs bug (#4960)
- ci: Run all executors on CI (#4957)
- feat(server): add ServiceAccount info to api/v1/userinfo and ui user tab (#4944)
- Added Astraea (#4855)
- fix(controller): report OOM when wait container OOM (#4930)
- feat: Support retry on transient errors during executor status checking (#4946)
- docs: Remove miscreant line in argo.md (#4821)
- docs: Update security docs (#4743)
- chore: Remove self-referential replace directive in go.mod (#4959)
- docs: Improve Documents Around Inputs (#4900)
- feat(crds): Update CRDs to apiextensions.k8s.io/v1 (#4918)
- feat(server): Add Prometheus metrics. Closes #4751 (#4952)
- chore: Set Go mod to /v2 (#4916)
- fix(cli): Allow full node name in node-field-selector (#4913)
- fix(cli): Update the map-reduce example, fix bug. (#4948)
- feat: Check the workflow is not being deleted for Synchronization workflow (#4935)
- docs: add Devtron labs to USERS.md (#4939)
- fix(ui): v3 UI tweaks (#4933)
- build: Faster `make start`, faster smoke jobs (#4926)
- fix(ui): fix object-editor text render issue (#4921)
- feat: support K8S json patch (#4908)
- chore: Introduce `WorkflowPhase` (#4856)
- fix(controller): Report reconciliation errors better (#4877)
- feat(controller)!: Key-only artifacts. Fixes #3184 (#4618)
- fix(ui): objecteditor only runs onChange when values are modified (#4911)
- build: Inline Argo Events CRD URLs to reduce build errors (#4902)
- fix(ui): Fix workflow refresh bug (#4906)
- fix: Mutex not being released on step completion (#4847)
- fix(ui): UI bug fixes (#4895)
- feat: Support specifying the pattern for transient and retryable errors (#4889)
- build: on a dev branch automatically start the UI (#4896)
- Revert "feat(cli): add selector and field-selector option to the stop command. (#4853)"
- feat(cli): add selector and field-selector option to the stop command. (#4853)
- fix(workflow-event-bindings): removing unneeded ':' in protocol (#4893)
- fix(ui): Show non-pod nodes (#4890)
- fix(controller): Consider processed retry node in metrics. Fixes #4846 (#4872)
- feat(controller): optional database migration (#4869)
- feat(ui): Argo Events API and UI. Fixes #888 (#4470)
- fix(controller): make creator label DNS compliant. Fixes #4880 (#4881)
- fix(controller): Fix node status when daemon pod deleted but its children nodes are still running (#4683)
- fix: Do not error on duplicate workflow creation by cron (#4871)
- build: sudoless `make codegen -B` (#4866)
- fix(controller): Add matrix tests for node offload disabled. Resolves #2333 (#4864)
- feat: Expose exitCode to step level metrics (#4861)
- feat(controller): `k8s_request_total` and `workflow_condition` metrics (#4811)
- feat: Publish images on Quay.io (#4860)
- feat: Publish images to Quay.io (#4854)
- refactor: upgrade kube client version to v0.19.6. Fixes #4425, #4791 (#4810)
- feat: Worker busy and active pod metrics (#4823)
- fix: Preserve the original slice when removing string (#4835)
- fix(controller): keep special characters in json string when use withItems (#4814)
- feat(controller): Retry pod creation on API timeout (#4820)
- build: Fix lint (#4837)
- chore: Bump OSS Go SDK to v2.1.5 (#4834)
- feat(controller): Add retry on different host (#4679)
- fix: Metrics documentation (#4829)
- chore: add missing phase option to node cli command (#4825)
- fix(crds): Inline WorkflowSteps schema to generate valid OpenAPI spec (#4828)
- feat(controller): Adding Eventrecorder on LeaderElection
- fix(controller): Various v2.12 fixes. Fixes #4798, #4801, #4806 (#4808)
- fix: Memoize Example (Issue 4626) (#4818)
- feat: Customize workfow metadata from event data (#4783)
- chore: Remove redundant "from" in log message (#4813)
- fix: load all supported authentication plugins for k8s client-go (#4802)
- fix(executor): Do not delete local artifacts after upload. Fixes #4676 (#4697)
- docs: Clarify PNS security (#4789)
- test: Fix TestDeletingRunningPod (#4779)
- refactor(ui): replace node-sass with sass (#4780)
- chore(example): Add watch timeout and print out workflow status message (#4740)
- fix(server): Do not silently ignore sso secret creation error (#4775)
- feat(controller): unix timestamp support on creationTimestamp var (#4763)
- feat(controller): Rate-limit workflows. Closes #4718 (#4726)
- Change argo-server crt/key owner (#4750)
- fix(controller): Support default database port. Fixes #4756 (#4757)
- refactor(controller): Enhanced pod clean-up scalability (#4728)
- test: Improved e2e test robustness (#4758)
- feat: Add a minimal prometheus server manifest (#4687)
- fix(ui): Remove unused Heebo files. Fixes #4730 (#4739)
- fix(controller): Fixes resource version misuse. Fixes #4714 (#4741)
- fix(controller): Requeue when the pod was deleted. Fixes #4719 (#4742)
- fix(controller): Fixed workflow stuck with mutex lock (#4744)
- feat(controller): Enhanced TTL controller scalability (#4736)
- fix(executor): Always check if resource has been deleted in checkResourceState() (#4738)
- fix(executor): Copy main/executor container resources from controller by value instead of reference (#4737)
- docs: Update SSO docs to explain how to use the Argo CD Dex instance with Argo Workflows Server (#4729)
- fix(ui): Fix YAML for workflows with storedWorkflowTemplateSpec. Fixes #4691 (#4695)
- fix: Allow Bearer token in server mode (#4735)
- fix(executor): Deal with the pod watch API call timing out (#4734)
- feat(controller): Pod deletion grace period. Fixes #4719 (#4725)
- docs: minor typo fix (#4727)
- feat(controller): Add Prometheus metric: `workflow_ttl_queue` (#4722)
- chore: Update stress test files. (#4721)
- fix(controller): Fix incorrect main container customization precedence and isResourcesSpecified check (#4681)
- fix(ui): Fix "Using Your Login". Fixes #4707 (#4708)
- feat(server): Support email for SSO+RBAC. Closes #4612 (#4644)
- fix(controller): Fixed RBAC on leases (#4715)
- fix(controller): Fixed Leader election name (#4709)
- fix(test): Fixed Flaky e2e tests TestSynchronizationWfLevelMutex and TestResourceTemplateStopAndTerminate/ResourceTemplateStop (#4688)
- fix(controller): Fix the RBAC for leader-election (#4706)
- ci: Pin kustomize version (#4704)
- chore: direct users to ask questions on GitHub discussions (#4701)
- fix(controller): Increate default EventSpamBurst in Eventrecorder (#4698)
- feat(controller): HA Leader election support on Workflow-controller (#4622)
- fix: Consider optional artifact arguments (#4672)
- feat(controller): Use deterministic name for cron workflow children (#4638)
- fix(controller): Only patch status.active in cron workflows when syncing (#4659)
- test: Add test for aggrgate parameters  (#4682)
- fix(ui): Fixed reconnection hot-loop. Fixes #4580 (#4663)
- feat: Support per-output parameter aggregation (#4374)
- feat(controller): Allow to configure main container resources (#4656)
- fix(controller): Cleanup the synchronize  pending queue once Workflow deleted (#4664)
- feat(ui): Make it easy to use SSO login with CLI. Resolves #4630 (#4645)
- feat(ui): add countdown to cronWorkflowList Closes #4636 (#4641)
- feat(ui): Add parameter value enum support to the UI. Fixes #4192 (#4365)
- docs: adding more information about terminate and stop process. Fixes: #4454. (#4653)
- feat: Add shorthanded option -A for --all-namespaces (#4658)
- fix(ui): DataLoaderDropdown fix input type from promise to function that (#4655)
- feat(ui): Replace 3 buttons with drop-down (#4648)
- fix(controller): Deal with hyphen in creator. Fixes #4058 (#4643)
- fix(manifests): Drop capabilities, add CNCF badge. Fixes #2614 (#4633)
- feat(ui): Add links to init and wait logs (#4642)
- feat(executor): Auto create s3 bucket if not present. Closes #3586  (#4574)
- feat(controller): Support .AnySucceeded / .AllFailed for TaskGroup in depends logic. Closes #3405 (#3964)
- fix: Count Workflows with no phase as Pending for metrics (#4628)
- feat(executor): More informative log when executors do not support output param from base image layer (#4620)
- fix(ui): Fix Snyk issues (#4631)
- fix(ui): Reference secrets in EnvVars. Fixes #3973  (#4419)
- fix: derive jsonschema and fix up issues, validate examples dir… (#4611)
- fix(argo-server): fix global variable validation error with reversed dag.tasks (#4369)
- fix: Fix TestCleanFieldsExclude (#4625)
- feat(ui): Add columns--narrower-height to AttributeRow (#4371)
- fix(server): Correct webhook event payload marshalling. Fixes #4572 (#4594)
- fix: Perform fields filtering server side (#4595)
- fix: Null check pagination variable (#4617)
- feat(controller): Enhanced artifact repository ref. See #3184 (#4458)
- fix(executor): Fixed waitMainContainerStart returning prematurely. Closes #4599 (#4601)
- fix(docs): Bring minio chart instructions up to date (#4586)
- fix(controller): Prevent tasks with names starting with digit to use either 'depends' or 'dependencies' (#4598)
- docs: Minor typo fix (#4610)
- refactor: Use polling model for workflow phase metric (#4557)
- docs: Add JSON schema for IDE validation (#4581)
- fix(executor): Handle sidecar killing in a process-namespace-shared pod (#4575)
- fix(server): serve artifacts directly from disk to support large artifacts (#4589)
- fix(server): use the correct name when downloading artifacts (#4579)

#### Contributors

- Alastair Maw
- Alex Capras
- Alex Collins
- Alexey Volkov
- Amim Knabben
- Arthur Outhenin-Chalandre
- BOOK
- Basanth Jenu H B
- Daisuke Taniwaki
- Huan-Cheng Chang
- Isaac Gaskin
- J.P. Zivalich
- Jesse Suen
- Kristoffer Johansson
- Marcin Gucki
- Maximilian Roos
- Michael Albers
- Noah Hanjun Lee
- Paavo Pokkinen
- Paul Brabban
- RossyWhite
- Saravanan Balasubramanian
- Simeon H.K. Fitch
- Simon Behar
- Simon Frey
- Song Juchao
- Stéphane Este-Gracias
- Tomáš Coufal
- Trevor Wood
- Viktor Farcic
- Wylie Hobbs
- Yuan Tang
- aletepe
- bei-re
- bellevuerails
- cocotyty
- dherman
- ermeaney
- fsiegmund
- hermanhobnob
- joyciep
- kennytrytek
- lonsdale8734
- makocchi
- markterm
- nishant-d
- saranyaeu2987
- tczhao
- zhengchenyu


v2.12.8: tag_name: v2.12.8
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.8/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.8/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.8/manifests/install.yaml
```

# Changes

- Update manifests to v2.12.8
- fix: Fix build
- fix(cli): Add insecure-skip-verify for HTTP1. Fixes #5008 (#5015)
- fix: Skip the Workflow not found error in Concurrency policy (#5030)
- fix: Unmark daemoned nodes after stopping them (#5005)

#### Contributors

- Alex Collins
- Saravanan Balasubramanian
- Simon Behar



v2.12.7: tag_name: v2.12.7
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

This release fixes Go modules for the Argo Workflows repo! Our module is now specified as `v2` (`github.com/argoproj/argo/v2/`) in our types and module. `go get github.com/argoproj/argo/v2/` should now work as expected!

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.7/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.7/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.7/manifests/install.yaml
```

# Changes

- Update manifests to v2.12.7
- feat: Support retry on transient errors during executor status checking (#4946)
- feat(server): Add Prometheus metrics. Closes #4751 (#4952)
- chore: Remove self-referential replace directive in go.mod (#4959)
- chore: Set Go mod to /v2 (#4916)

#### Contributors

- Alex Collins
- Simon Behar
- Yuan Tang


v2.12.6: tag_name: v2.12.6
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.6/manifests/install.yaml
```

# Changes

- Update manifests to v2.12.6
- fix: Mutex not being released on step completion (#4847)
- feat(server): Support email for SSO+RBAC. Closes #4612 (#4644)

#### Contributors

- Alex Collins
- Saravanan Balasubramanian
- Simon Behar


v2.12.5: tag_name: v2.12.5
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.5/manifests/install.yaml
```

# Changes

- fix: Mutex not being released on step completion (#4847)
- fix(controller): Consider processed retry node in metrics. Fixes #4846 (#4872)
- fix(controller): make creator label DNS compliant. Fixes #4880 (#4881)
- fix(controller): Fix node status when daemon pod deleted but its children nodes are still running (#4683)
- fix: Do not error on duplicate workflow creation by cron (#4871)

#### Contributors

- Saravanan Balasubramanian
- Simon Behar
- ermeaney
- lonsdale8734


v2.12.4: tag_name: v2.12.4
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/release-2.12.4/manifests/install.yaml
```

# Changes

- feat: Publish images on Quay.io (#4860)
- feat: Publish images to Quay.io (#4854)
- fix: Preserve the original slice when removing string (#4835)
- fix(controller): keep special characters in json string when use withItems (#4814)
- chore: add missing phase option to node cli command (#4825)

#### Contributors

- Simon Behar
- Song Juchao
- cocotyty
- markterm

v2.12.3: tag_name: v2.12.3
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.3/manifests/install.yaml
```

# Changes

- Update manifests to v2.12.3
- fix tests
- test: Fix TestDeletingRunningPod (#4779)
- fix(controller): Various v2.12 fixes. Fixes #4798, #4801, #4806 (#4808)
- fix: load all supported authentication plugins for k8s client-go (#4802)
- fix(server): Do not silently ignore sso secret creation error (#4775)
- feat(controller): Rate-limit workflows. Closes #4718 (#4726)
- fix(controller): Support default database port. Fixes #4756 (#4757)
- feat(controller): Enhanced TTL controller scalability (#4736)

#### Contributors

- Alex Collins
- Kristoffer Johansson
- Simon Behar

v2.12.2: tag_name: v2.12.2
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.2/manifests/install.yaml
```

# Changes

## v2.12.2

#### Bug Fixes

- #4719 Allow grace before marking nodes as error + "pod deleted"

#### Other

- Update manifests to v2.12.2

#### Pull Requests

- #4725 feat(controller): Pod deletion grace period. Fixes #4719
- #4742 fix(controller): Requeue when the pod was deleted. Fixes #4719

#### Contributors

* Alex Collins <!-- num=3 -->

## v2.12.1

#### Pull Requests
- fix(server): Update argo-server crt/key owner (#4750)

#### Contributors

- Daisuke Taniwaki

v2.12.1: tag_name: v2.12.1
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/release-2.12.1/manifests/install.yaml
```

# Changes

## v2.12.1

#### Pull Requests
- fix(server): Update argo-server crt/key owner (#4750)

#### Contributors

- Daisuke Taniwaki

v2.12.0: tag_name: v2.12.0
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.0/manifests/install.yaml
```

# Changes

## v2.12.0

#### Pull Requests
- Update manifests to v2.12.0
- fix(controller): Fixes resource version misuse. Fixes #4714 (#4741)
- fix(executor): Copy main/executor container resources from controller by value instead of reference (#4737)
- fix(controller): Fix incorrect main container customization precedence and isResourcesSpecified check (#4681)
- feat(controller): Allow to configure main container resources (#4656)
- Update manifests to v2.12.0-rc6
- fix(controller): Fixed workflow stuck with mutex lock (#4744)
- fix(executor): Always check if resource has been deleted in checkResourceState() (#4738)
- fix(ui): Fix YAML for workflows with storedWorkflowTemplateSpec. Fixes #4691 (#4695)
- fix: Allow Bearer token in server mode (#4735)
- fix(executor): Deal with the pod watch API call timing out (#4734)
- ci: Pin kustomize version (#4704)
- fix(controller): Increate default EventSpamBurst in Eventrecorder (#4698)
- Update manifests to v2.12.0-rc5
- fix: Consider optional artifact arguments (#4672)
- feat(controller): Use deterministic name for cron workflow children (#4638)
- fix(controller): Only patch status.active in cron workflows when syncing (#4659)
- fix(ui): DataLoaderDropdown fix input type from promise to function that (#4655)
- fix: Count Workflows with no phase as Pending for metrics (#4628)
- fix(ui): Reference secrets in EnvVars. Fixes #3973  (#4419)
- fix: derive jsonschema and fix up issues, validate examples dir… (#4611)
- docs: Add JSON schema for IDE validation (#4581)
- fix(ui): Fixed reconnection hot-loop. Fixes #4580 (#4663)
- fix(controller): Cleanup the synchronize  pending queue once Workflow deleted (#4664)
- fix(controller): Deal with hyphen in creator. Fixes #4058 (#4643)
- feat(controller): Make MAX_OPERATION_TIME configurable. Close #4239 (#4562)
- fix: Fix TestCleanFieldsExclude (#4625)
- Update manifests to v2.12.0-rc4
- feat(executor): More informative log when executors do not support output param from base image layer (#4620)
- fix(argo-server): fix global variable validation error with reversed dag.tasks (#4369)
- fix(server): Correct webhook event payload marshalling. Fixes #4572 (#4594)
- fix: Perform fields filtering server side (#4595)
- fix: Null check pagination variable (#4617)
- fix(executor): Fixed waitMainContainerStart returning prematurely. Closes #4599 (#4601)
- refactor: Use polling model for workflow phase metric (#4557)
- fix(executor): Handle sidecar killing in a process-namespace-shared pod (#4575)
- fix(server): serve artifacts directly from disk to support large artifacts (#4589)
- fix(server): use the correct name when downloading artifacts (#4579)
- feat(controller): Retry transient offload errors. Resolves #4464 (#4482)
- Update manifests to v2.12.0-rc3
- Merge branch 'master' into release-2.12
- chore: Updated stress test YAML (#4569)
- feat(ui): Add Template/Cron workflow filter to workflow page. Closes #4532 (#4543)
- docs: Clean-up examples. Fixes #4124 (#4128)
- chore: Remove unused image build and push hooks (#4539)
- fix: executor/pns containerid prefix fix (#4555)
- fix: Respect continueOn for leaf tasks (#4455)
- docs: Added CloudSeeds as one of the users for argo (#4553)
- docs: Update cost optimisation  to include information about cleaning up workflows and archiving (#4549)
- fix(controller): Correct default port logic (#4547)
- fix: Validate metric key names (#4540)
- fix: Missing arg lines caused files not to copy into containers (#4542)
- fix(test): fix TestWFDefaultWithWFTAndWf flakiness (#4538)
- fix(ui): Do not auto-reload doc.location. Fixes #4530 (#4535)
- docs: Add "Argo Workflows in 5 min" link to README (#4533)
- Merge branch 'master' into release-2.12
- fix(controller): support float for param value (#4490)
- feat(controller): make sso timeout configurable via cm (#4494)
- fix(server): Add `list sa` and `create secret` to `argo-server` roles. Closes #4526 (#4514)
- fix: link templates not replacing multiple templates with same name (#4516)
- feat: adds millisecond-level timestamps to argo and workflow-controller (#4518)
- add bonprix to argo users (#4520)
- build: Reuse IMAGE_OS instead of hard-coded linux (#4519)
- Update manifests to v2.12.0-rc2
- Merge branch 'master' into release-2.12
- fix(test):  fix TestWFDefaultWithWFTAndWf flakiness (#4507)
- fix(controller): prepend script path to the script template args. Resolves #4481 (#4492)
- feat: Redirect to requested URL after SSO login (#4495)
- fix: Ensure ContainerStatus in PNS is terminated before continuing (#4469)
- fix(ui): Check node children before counting them. (#4498)
- fix: Ensure redirect to login when using empty auth token (#4496)
- feat(cli): add selector and field-selector option to terminate (#4448)
- fix(controller): Refactor the Merge Workflow, WorkflowTemplate and WorkflowDefaults (#4354)
- fix(ui): fix the `all` option in the workflow archive list (#4486)
- Update manifests to v2.12.0-rc1
- refactor(server): Use patch instead of update to resume/suspend (#4468)
- fix(controller): When semaphore lock config gets updated, enqueue the waiting workflows (#4421)
- feat(cli): Support ARGO_HTTP1 for HTTP/1 CLI requests. Fixes #4394 (#4416)
- chore(docs): Fix docgen (#4459)
- feat: Add the --no-utf8 parameter to `argo get` command (#4449)
- refactor: Simplify grpcutil.TranslateError (#4465)
- docs: Add DDEV to USERS.md (#4456)
- feat: Add resume/suspend endpoints for CronWorkflows (#4457)
- fix: localhost not being resolved. Resolves #4460, #3564 (#4461)
- fix(controller): Trigger no of workflows based on available lock (#4413)
- fix: Return copy of stored templates to ensure they are not modified (#4452)
- fix(controller): Fix throttler. Fixes #1554 and #4081 (#4132)
- chore(controller): Refactor and tidy up (#4453)
- fix(docs): timezone DST note on Cronworkflow (#4429)
- fix: Resolve inconsistent CronWorkflow persistence (#4440)
- chore: Update pull request template (#4437)
- feat(server): Add WorkflowLogs API. See #4394 (#4450)
- fix: Fix validation with Argo Variable in activeDeadlineSeconds (#4451)
- feat(ui): Visualisation of the suspended CronWorkflows in the list. Fixes #4264 (#4446)
- ci: Speed up e2e tests (#4436)
- fix(controller): Tolerate int64 parameters. Fixes #4359 (#4401)
- fix(server): Only try to use auth-mode if enabled. Fixes #4400 (#4412)
- fix: Assume controller is in UTC when calculating NextScheduledRuntime (#4417)
- fix(controller): Design-out event errors. Fixes #4364 (#4383)
- fix(docs): update link to container spec (#4424)
- fix: Add x-frame config option (#4420)
- docs: Add Acquia to USERS.md (#4415)
- fix: Ensure resourceDuration variables in metrics are always in seconds (#4411)
- fix(executor): artifact chmod should only if err != nil (#4409)
- fix: Use correct template when processing metrics (#4399)
- ci: Split e2e tests to make them faster (#4404)
- fix(validate): Local parameters should be validated locally. Fixes #4326 (#4358)
- fix(ui): Reconnect to DAG. Fixes #4301 (#4378)
- feat(ui): Sign-post examples and the catalog. Fixes #4360 (#4382)
- feat(server): Enable RBAC for SSO. Closes #3525 (#4198)
- fix(ui): correct log viewer only showing first log line (#4389)
- fix(ui): Ignore running workflows in report. Fixes #4387 (#4397)
- fix(controller): Fix estimation bug. Fixes #4386 (#4396)
- fix(ui): correct typing errors in workflow-drawer (#4373)
- docs: Update events.md (#4391)
- fix: Use DeletionHandlingMetaNamespaceKeyFunc in cron controller (#4379)
- fix(server): Download artifacts from UI. Fixes #4338 (#4350)
- fix(controller): Enqueue the front workflow if semaphore lock is available (#4380)
- fix: Fix intstr nil dereference (#4376)
- build: Fix clean-up of vendor (#4363)
- chore: match code comments to the generated documentation (#4375)
- fix(controller): Only warn if cron job missing. Fixes #4351 (#4352)
- Use '[[:blank:]]' instead of ' ' to match spaces/tabs (#4361)
- fix: Do not allow tasks using 'depends' to begin with a digit (#4218)
- docs: Fix a copy-paste typo in the docs (#4357)
- fix(executor): Increase pod patch backoff. Fixes #4339 (#4340)
- docs: Update pvc example with correct resource indentation. Fixes #4330 (#4346)
- feat(executor): Wait for termination using pod watch for PNS and K8SAPI executors. (#4253)
- fix: ui/package.json & ui/yarn.lock to reduce vulnerabilities (#4342)
- refactor: De-couple config (#4307)
- docs: Fix typos (/priviledged/privileged/) (#4335)
- fix(ui): correct typing errors in events-panel (#4334)
- fix(ui): correct typing errors in workflows-toolbar (#4333)
- fix(ui): correct typing errors in cron-workflow-details (#4332)
- docs: Update releasing guide (#4284)
- feat(controller): add enum support in parameters (fixes #4192) (#4314)
- fix(executor): Fix the artifacts option in k8sapi and PNS executor Fixes#4244 (#4279)
- fix(cli): Return exit code on Argo template lint command (#4292)
- fix(cli): Fix panic on argo template lint without argument (#4300)
- docs: Fix incorrect link to static code analysis document (#4329)
- docs: Add diagram (#4295)
- build: Refactor `codegen` to make target dependencies clearer (#4315)
- fix: merge artifact arguments from workflow template. Fixes #4296 (#4316)
- docs: Ye olde whitespace fix (#4323)
- chore(controller): Refactor the CronWorkflow schedule logic with sync.Map (#4320)
- docs: Fix typo in docs for artifact repository
- Update USERS.md (#4322)
- fix(executor): Retrieve containerId from cri-containerd /proc/{pid}/cgroup. Fixes #4302 (#4309)
- feat(controller): Allow whitespace in variable substitution. Fixes #4286 (#4310)
- fix(build): Some minor Makefile fixes (#4311)
- feat(ui): Submit resources without namespace to current namespace. Fixes #4293 (#4298)
- docs: improve ingress documentation for argo-server (#4306)
- fix(ci): add non-root user to Dockerfile (#4305)
- fix(ui): undefined namespace in constructors (#4303)
- docs: Docker TLS env config (#4299)
- fix(controller): Patch rather than update cron workflows. (#4294)
- fix: TestMutexInDAG failure in master (#4283)
- fix: WorkflowEventBinding typo in aggregated roles (#4287)
- fix(controller): Fix argo retry with PVCs. Fixes #4275 (#4277)
- fix(ui): Ignore missing nodes in DAG. Fixes #4232 (#4280)
- fix(controller): Fix cron-workflow re-apply error. (#4278)
- fix(controller): Synchronization lock didn't release on DAG call flow Fixes #4046 (#4263)
- feat(ui): Add a nudge for users who have not set their security context. Closes #4233  (#4255)
- test: Tidy up E2E tests (#4276)
- docs: daemon example: clarify prefix usage (#4258)
- feat(cli): add `--field-selector` option for `delete` command (#4274)
- chore(controller): N/W progress fixes (#4269)
- docs: Add docs for `securityContext` and `emptyDir`. Closes #2239 (#4251)
- feat(controller): Track N/M progress. See #2717 (#4194)
- fix: Add WorkflowEventBinding to aggregated roles (#4268)
- docs: Minor formatting fixes (#4259)
- docs: correct a typo (#4261)
- fix(controller): Make the delay before the first workflow reconciliation configurable. Fixes #4107 (#4224)
- chore(api): Update swagger.json with Kubernetes v1.17.5 types. Closes #4204 (#4226)
- feat(controller): Reduce reconcilliation time by exiting earlier. (#4225)
- fix(ui): Revert bad part of commit (#4248)
- fix(ui): Fix bugs with DAG view. Fixes #4232 & #4236 (#4241)

#### Contributors

- Aayush Rangwala
- Alex Collins
- Alexander Mikhailian
- Amim Knabben
- Antoine Dao
- Arghya Sadhu
- Basanth Jenu H B
- Boolman
- Byungjin Park (BJ)
- Daisuke Taniwaki
- David Gibbons
- Douglas Lehr
- Elli Ludwigson
- Elvis Jakupovic
- Espen Finnesand
- Fischer Jemison
- Ids van der Molen
- Igor Stepura
- Juan C. Müller
- Lennart Kindermann
- Ludovic Cléroux
- Lénaïc Huard
- Martin Suchanek
- Michael Crenshaw
- Michael Ruoss
- Mike Chau
- Naisisor
- Nicwalle
- Noah Hanjun Lee
- Oleg Borodai
- Paul Brabban
- Pavel Čižinský
- Saravanan Balasubramanian
- Simon Behar
- Snyk bot
- Tomáš Coufal
- Vlad Losev
- Yuan Tang
- Zach
- aletepe
- boundless-thread
- conanoc
- dherman
- duluong
- fsiegmund
- hermanhobnob
- ivancili
- omerfsen
- saranyaeu2987
- tczhao
- tomgoren
- zhengchenyu

v2.12.0-rc6: tag_name: v2.12.0-rc6
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0-rc6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0-rc6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.0-rc6/manifests/install.yaml
```

# Changes

## v2.12.0-rc6

#### Pull Requests

- fix(controller): Fixed workflow stuck with mutex lock (#4744)
- fix(executor): Always check if resource has been deleted in checkResourceState() (#4738)
- fix(executor): Copy main/executor container resources from controller by value instead of reference (#4737)
- fix(ui): Fix YAML for workflows with storedWorkflowTemplateSpec. Fixes #4691 (#4695)
- fix: Allow Bearer token in server mode (#4735)
- fix(executor): Deal with the pod watch API call timing out (#4734)
- ci: Pin kustomize version (#4704)
- fix(controller): Increate default EventSpamBurst in Eventrecorder (#4698)

#### Contributors

- Alex Collins
- Saravanan Balasubramanian
- Simon Behar
- Yuan Tang
- hermanhobnob

v2.12.0-rc5: tag_name: v2.12.0-rc5
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0-rc5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0-rc5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.0-rc5/manifests/install.yaml
```

# Changes

## v2.12.0-rc5

#### Pull Requests

- fix: Consider optional artifact arguments (#4672)
- feat(controller): Use deterministic name for cron workflow children (#4638)
- fix(controller): Only patch status.active in cron workflows when syncing (#4659)
- fix(ui): DataLoaderDropdown fix input type from promise to function that (#4655)
- fix: Count Workflows with no phase as Pending for metrics (#4628)
- fix(ui): Reference secrets in EnvVars. Fixes #3973  (#4419)
- fix: derive jsonschema and fix up issues, validate examples dir… (#4611)
- docs: Add JSON schema for IDE validation (#4581)
- fix(ui): Fixed reconnection hot-loop. Fixes #4580 (#4663)
- fix(controller): Cleanup the synchronize  pending queue once Workflow deleted (#4664)
- fix(controller): Deal with hyphen in creator. Fixes #4058 (#4643)
- feat(controller): Make MAX_OPERATION_TIME configurable. Close #4239 (#4562)
- fix: Fix TestCleanFieldsExclude (#4625)

#### Contributors

- aletepe
- alexec
- brabster
- sarabala1979
- simster7
- tczhao
v2.12.0-rc4: tag_name: v2.12.0-rc4
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0-rc4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0-rc4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.0-rc4/manifests/install.yaml
```

# Changes

## v2.12.0-rc4

#### Bug Fixes

- #4464 Transient database errors with offload enabled cause workflow to fail
- #4572 WorkflowEventBinding passes raw go structs instead of json marshalled payload params
- #4599 Workflow executor waitMainContainerStart returns while main container is in waiting state

#### Other

- Update manifests to v2.12.0-rc4

#### Pull Requests

- #4369 fix(argo-server): fix global variable validation error with reversed dag.tasks. Fixes #4273
- #4482 feat(controller): Retry transient offload errors. Resolves #4464
- #4557 refactor: Use polling model for workflow phase metric
- #4575 fix(executor): Handle sidecar killing in a process-namespace-shared pod
- #4579 fix(server): use the correct name when downloading artifacts
- #4589 fix(server): serve artifacts directly from disk to support large artifacts
- #4594 fix(server): Correct webhook event payload marshalling. Fixes #4572
- #4595 fix: Perform fields filtering server side
- #4601 fix(executor): Fixed waitMainContainerStart returning prematurely. Closes #4599
- #4617 fix: Null check pagination variable
- #4620 feat(executor): More informative log when executors do not support output param from base image layer

#### Contributors

* Alex Collins <!-- num=3 -->
* Daisuke Taniwaki <!-- num=1 -->
* Simon Behar <!-- num=3 -->
* Yuan Tang <!-- num=1 -->
* dherman <!-- num=2 -->
* fsiegmund <!-- num=1 -->
* zhengchenyu <!-- num=1 -->

## v2.12.0-rc3

 - chore: Updated stress test YAML (#4569)
 - feat(ui): Add Template/Cron workflow filter to workflow page. Closes #… 
 - docs: Clean-up examples. Fixes #4124 (#4128)
 - chore: Remove unused image build and push hooks (#4539)
 - fix: executor/pns containerid prefix fix (#4555)
 - fix: Respect continueOn for leaf tasks (#4455) 
 - docs: Added CloudSeeds as one of the users for argo (#4553)
 - docs: Update cost optimisation to include information about cleaning … 
 - fix(controller): Correct default port logic (#4547)
 - fix: Validate metric key names (#4540)
 - fix: Missing arg lines caused files not to copy into containers (#4542) 
 - fix(test): fix TestWFDefaultWithWFTAndWf flakiness (#4538)
 - fix(ui): Do not auto-reload doc.location. Fixes #4530 (#4535)
 - docs: Add "Argo Workflows in 5 min" link to README (#4533)
 - fix(controller): support float for param value (#4490)
 - feat(controller): make sso timeout configurable via cm (#4494)
 - fix(server): Add `list sa` and `create secret` to `argo-server` roles. … 
 - fix: link templates not replacing multiple templates with same name (#… 
 - feat: adds millisecond-level timestamps to argo and workflow-controll…
 - add bonprix to argo users (#4520)


#### Contributors

 - Boolman
 - L3Nerd
 - Alex Collins
 - arghya88
 - davidgibbons
 - ludydoo
 - mikhailian
 - oleg-borodai
 - sarabala1979
 - secretlifeof
 - Simon Behar
 - snowzach
 - tczhao
v2.12.0-rc3: tag_name: v2.12.0-rc3
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0-rc3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0-rc3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.0-rc3/manifests/install.yaml
```

# Changes

## v2.12.0-rc3

 - chore: Updated stress test YAML (#4569)
 - feat(ui): Add Template/Cron workflow filter to workflow page. Closes #… 
 - docs: Clean-up examples. Fixes #4124 (#4128)
 - chore: Remove unused image build and push hooks (#4539)
 - fix: executor/pns containerid prefix fix (#4555)
 - fix: Respect continueOn for leaf tasks (#4455) 
 - docs: Added CloudSeeds as one of the users for argo (#4553)
 - docs: Update cost optimisation to include information about cleaning … 
 - fix(controller): Correct default port logic (#4547)
 - fix: Validate metric key names (#4540)
 - fix: Missing arg lines caused files not to copy into containers (#4542) 
 - fix(test): fix TestWFDefaultWithWFTAndWf flakiness (#4538)
 - fix(ui): Do not auto-reload doc.location. Fixes #4530 (#4535)
 - docs: Add "Argo Workflows in 5 min" link to README (#4533)
 - fix(controller): support float for param value (#4490)
 - feat(controller): make sso timeout configurable via cm (#4494)
 - fix(server): Add `list sa` and `create secret` to `argo-server` roles. … 
 - fix: link templates not replacing multiple templates with same name (#… 
 - feat: adds millisecond-level timestamps to argo and workflow-controll…
 - add bonprix to argo users (#4520)


#### Contributors

 - Boolman
 - L3Nerd
 - Alex Collins
 - arghya88
 - davidgibbons
 - ludydoo
 - mikhailian
 - oleg-borodai
 - sarabala1979
 - secretlifeof
 - Simon Behar
 - snowzach
 - tczhao
v2.11.8: tag_name: v2.11.8
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v2-11-a8b6189bf60e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.8/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.8/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.11.8/manifests/install.yaml
```

# Changes


⚠️ v2.11.8 increases `maxReconcilliationTime` from 10s to 30s. This may affect processing times. Any issues, set `MAX_OPERATION_TIME=10s`.

#### Enhancements

* #4239 Increase max reconciliation time
* #4286 Allow whitespace in templates

#### Other

- Update manifests to v2.11.8
- chore: Removed unused parameter
- ci: Picked :add-env lines from master

#### Pull Requests

- #4310 feat(controller): Allow whitespace in variable subsitution. Fixes #4286
- #4562 feat(controller): Make MAX_OPERATION_TIME configurable. Close #4239

#### Contributors

* Alex Collins <!-- num=4 -->
* Ids van der Molen <!-- num=1 -->

### v2.11.7

#### Bug Fixes

- #4301 View Workflow Page Not Receiving Progress Updates
- #4338 open artifact : permission denied
- #4339 Slow / Unresponsive Kubernetes API
- #4351 v2.11.6: Parent CronWorkflow 'argo/canary' is malformed

#### Other

- Update manifests to v2.11.7

#### Pull Requests

- #4340 fix(executor): Increase pod patch backoff. Fixes #4339
- #4350 fix(server): Download artifacts from UI. Fixes #4338
- #4352 fix(controller): Only warn if cron job missing. Fixes #4351
- #4376 fix: Fix intstr nil dereference
- #4378 fix(ui): Reconnect to DAG. Fixes #4301
- #4379 fix: Use DeletionHandlingMetaNamespaceKeyFunc in cron controller
- #4380 fix(controller): Enqueue the front workflow if semaphore lock is available
- #4399 fix: Use correct template when processing metrics
- #4411 fix: Ensure resourceDuration variables in metrics are always in seconds
- #4417 fix: Assume controller is in UTC when calculating NextScheduledRuntime

#### Contributors

* Alex Collins <!-- num=5 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=5 -->

### v2.11.6

#### Bug Fixes

- #4144 Add request timed out in errors.isTransientNetworkErr

#### Other

- Update manifests to v2.11.6

#### Pull Requests

- #4149 fix(executor): Remove IsTransientErr check for ExponentialBackoff. Fixes #4144
- #4320 chore(controller): Refactor the CronWorkflow schedule logic with sync.Map

#### Contributors

* Alex Collins <!-- num=1 -->
* Ang Gao <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.5

#### Bug Fixes

- #4046 Step or dag workflows do not seem to release semaphore locks

#### Other

- Merge branch 'release-2.11' of https://github.com/argoproj/argo into release-2.11
- Update manifests to v2.11.5
- test: Fix test

#### Pull Requests

- #4215 fix(controller): Increase the number of cron workflow workers from 2 to 8. Fixes #4211
- #4263 fix(controller): Synchronization lock didn't release on DAG call flow Fixes #4046
- #4283 fix: TestMutexInDAG failure in master
- #4294 fix(controller): Patch rather than update cron workflows.

#### Contributors

* Alex Collins <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=3 -->
* Simon Behar <!-- num=1 -->

### v2.11.4

#### Bug Fixes

- #4232 Argo UI:  Cannot read property 'x' of undefined when viewing workflow (v2.11.0)
- #4236 Argo UI - Archived Workflows - Error when clicking on hidden nodes ellipsis
- #4275 Pods in retried workflow with PVC after a step that succeeded never get scheduled

#### Pull Requests

- #4241 fix(ui): Fix bugs with DAG view. Fixes #4232 & #4236
- #4243 fix(controller): Check the correct object for Cronworkflow reapply error log
- #4248 fix(ui): Revert bad part of commit
- #4277 fix(controller): Fix argo retry with PVCs. Fixes #4275
- #4278 fix(controller): Fix cron-workflow re-apply error.
- #4280 fix(ui): Ignore missing nodes in DAG. Fixes #4232

#### Contributors

* Alex Collins <!-- num=5 -->
* Juan C. Müller <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.3

#### Bug Fixes

- #4169 unmarshal to workflow struct failed,if outputs.parameters.value is a number

#### Other

- fixed merge conflict

#### Pull Requests

- #4202 fix(controller): Support int64 for param value. Fixes #4169

#### Contributors

* Alex Collins <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.2

#### Bug Fixes

- #4114 refactor: Refactor Synchronization code
- #4172 fix: Ensure CronWorkflows are persisted once per operation
- #4207 fix(controller): reduce withItem/withParams memory usage.
- #4213 fix(controller): Apply Workflow default on normal workflow scenario

#### Contributors

* Alex Collins <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=2 -->

v2.12.0-rc2: tag_name: v2.12.0-rc2
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0-rc2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0-rc2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.0-rc2/manifests/install.yaml
```

# Changes

## v2.12.0-rc2

#### Enhancements
 - feat: Redirect to requested URL after SSO login (#4495)
 - feat(cli): add selector and field-selector option to terminate (#4448)

#### Bug Fixes

 - fix(test): fix TestWFDefaultWithWFTAndWf flakiness (#4507) 
 - fix(controller): prepend script path to the script template args. (#4492)
 - fix: Ensure ContainerStatus in PNS is terminated before continuing (#4469)
 - fix(ui): Check node children before counting them. (#4498)
 - fix: Ensure redirect to login when using empty auth token (#4496) 
 - fix(controller): Refactor the Merge Workflow, WorkflowTemplate and Wo.. (#4354)
 - fix(ui): fix the `all` option in the workflow archive list (#4486) 

#### Contributors

* dcherman
* hanjunlee
* ivancili
* Simon Behar
* sarabala1979
* vladlosev
v2.12.0-rc1: tag_name: v2.12.0-rc1
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/whats-coming-up-in-argo-workflows-v2-12-3899bae53562)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0-rc1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0-rc1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.0-rc1/manifests/install.yaml
```

# Changes

## v2.12.0-rc1

#### Enhancements

* #1824 Argo UI and Workflow container pods running as root users
* #2325 Native support for Docker operations
* #2717 Automatic workflow duration prediction
* #2899 Argo stress test
* #3095 PVC GC Policy
* #3525 Role-based Access Controls for SSO
* #3557 Workflow Report
* #3585 Add ability to automatically decompress zipped artifacts
* #3595 Hard to see child dependencies in UI with complicated workflows
* #3719 Investigate writing back to the informer
* #3786 More robust workflow archiving
* #3835 Publish roadmap
* #3873 SSO Timeout Configuration
* #3898 Improve Links feature
* #3918 Tolerate deleted resources
* #3955 Support interpolated mutex names
* #3996 Old version of kubectl 1.15, latest stable is 1.19.1
* #4000 Remove `alpha/beta/ga` labels from docs
* #4039 Tooltips should also be supplied for ellipsized text
* #4087 Better UI error recovery
* #4165 Map-Reduce example
* #4192 Provide enum type parameters for Argo workflows
* #4204 Kubernetes API version harmonisation
* #4233 Show workflow pod security recommendations in UI
* #4264 Visualisation of the suspended CronWorkflows in the list
* #4286 Allow whitespace in templates
* #4293 Resource editor could auto set namespace
* #4360 Link to catalog/examples from UI

#### Bug Fixes

- #1554 controller.runWorker for wfc.throttler.Next(key) bug
- #3444 Artifact mode is not recursive
- #3872 Custom metrics are not recorded for DAG tasks.
- #3905 DAGs may not abort on `ErrDeadlineExceeded`
- #3907 Workflow controller OOMKilled with running `withParams:` 10k params
- #3916 Pod did not output any logs
- #3926 Swagger UI does not allow you to send /api/v1/events requests
- #3927 Update default role for argo-server to support webhooks
- #3942 LGTM (security) review tool flagged 5 issues in the code base
- #3943 The version command fails due to lack of kubeconfig
- #3960 Argo CLI (v2.10.0+) doesn't handle int64 values
- #3977 Dockerfile: When using ADD with more than one source file, the destination must be a directory and end with a /
- #3984 typo in argo cli
- #3994 Upload via UI does not always seem to work
- #4001 v2.11: Investigate/fix `resubmitPendingPods` typo
- #4005 v2.11: Clicking on timeline tab shows events tab
- #4016 v2.11: Pod event in UI not working for `withItems`
- #4019 UI: Cron workflows filter not working as expected
- #4027 SSO logs out quickly
- #4033 Timestamp always present in logs provided by API
- #4044 Workflow created from Workflowtemplate doesn't respect the activeDeadlineSeconds defined the Workflowtemplate
- #4046 Step or dag workflows do not seem to release semaphore locks
- #4079 Cannot read property type of undefined
- #4081 v2.11: workflow-controller-configmap parallelism not being honored.
- #4082 Windows Output artifact does not work
- #4084 Some 2.11.0 URLs redirect unhelpfully
- #4093 add back flag for kubernetes log level in CLI
- #4101 Fix TestWorkflowRetry flakey test
- #4107 v2.11: Steps (not DAG) always fails (with conflict error) and no helpful diagnostics (AWS only?)
- #4144 Add request timed out in errors.isTransientNetworkErr
- #4169 unmarshal to workflow struct failed,if outputs.parameters.value is a number
- #4188 EKS workflowDefaults inconsistencies - kubelet executor
- #4206 Makefile seems to have deprecated k3d commands
- #4208 v2.11: workflow-controller-configmap serviceAccountName not being honored
- #4216 v2.11.1: error pulling image configuration: unknown blob
- #4232 Argo UI:  Cannot read property 'x' of undefined when viewing workflow (v2.11.0)
- #4236 Argo UI - Archived Workflows - Error when clicking on hidden nodes ellipsis
- #4244 With workflow executor set to k8sapi, artifact optional feature does not work when tgz archive is disabled
- #4275 Pods in retried workflow with PVC after a step that succeeded never get scheduled
- #4296 Cannot submit workflow from workflow template with input artifact argument
- #4301 View Workflow Page Not Receiving Progress Updates
- #4302 [Bug] pns executor cannot retrieve correct containerId with runtime cri-containerd
- #4326 argo lint does not detect missing input parameters
- #4330 goofy syntax issue in examples/README.md
- #4338 open artifact : permission denied
- #4339 Slow / Unresponsive Kubernetes API
- #4351 v2.11.6: Parent CronWorkflow 'argo/canary' is malformed
- #4359 Integers are no longer supported in parameters
- #4364 Design-out Kubernetes event bugs
- #4386 v2.12: estimated duration not set for DAG 
- #4387 v2.12: Running pods make chart un-usable
- #4394 Argo CLI does not work with load balancer (e.g. AWS ALB) that do not support HTTP/2
- #4400 auth-mode server fails when Authorization header is passed.
- #4460 Argo server api doesn't work when running inside kubernetes

#### Other

- #2239 What are the minimum permissions needed in a pod security policy in order for an argo workflow to run successfully?
- #3564 [bug] localhost not point to 127.0.0.1
- #3859 TLS docs link to Readiness Probe example is outdated
- Update manifests to v2.12.0-rc1
- chore: Correct manifests
- docs: Fix typo in docs for artifact repository

#### Pull Requests

- #3558 feat(ui): Adds a report page which shows basic historical workflow metrics. Closes #3557
- #3686 feat: Step and Task Level Global Timeout
- #3832 fix(executor): set artifact mode recursively. Fixes #3444
- #3862 feat(controller): Retry archiving later on error. Fixes #3786
- #3863 docs: Adds roadmap. Closes #3835
- #3877 docs: TLS documentation for readiness probe is outdated. Closes #3859
- #3886 fix: Custom metrics are not recorded for DAG tasks Fixes #3872
- #3914 fix: Default PDB example typo
- #3921 fix(controller): End DAG execution on deadline exceeded error. Fixes #3905
- #3924 docs: Update workflow-controller-configmap.yaml with SSL options
- #3928 fix: Fix UI selection issues
- #3929 fix(server): Adds missing webhook permissions. Fixes #3927
- #3932 fix(swagger): Correct item type. Fixes #3926
- #3934 chore: Add stress testing code. Closes #2899
- #3935 docs: add Nikkei to user list
- #3938 feat(controller): Support different volume GC strategies. Fixes #3095
- #3940 chore: Fixed  TestTemplateTimeoutDuration testcase
- #3945 fix(cli): Allow `argo version` without `KUBECONFIG`. Fixes #3943
- #3946 feat(ui): Add `startedAt` and `finishedAt` variables to configurable links. Fixes #3898
- #3947 docs: Correct Java client project link
- #3949 feat(controller): Panic or error on mis-matched resource version
- #3950 fix: Fix children is not defined error
- #3957 fix(controller): use interpolated values for mutexes and semaphores. Fixes #3955
- #3963 fix(controller): Revert parameter value to `*string`. Fixes #3960
- #3965 feat(controller): Workflow-level `retryStrategy`/resubmit pending pods by default. Closes #3918
- #3967 feat(ui): Introduce modal DAG renderer. Fixes: #3595
- #3969 docs: Correct indentation to display correctly docs in the website
- #3972 fixed typo in docs
- #3975 fix(server): Removes minor XSS vulnerability. Fixes #3942
- #3978 build: Allow build with older `docker`. Fixes #3977
- #3979 fix: Create global scope before workflow-level realtime metrics
- #3985 fix: typo of argo server cli (#3984)
- #3986 fix: argo-cluster-role pvc get
- #3987 docs: Adding Stillwater Supercomputing
- #3988 fix: Consider WorkflowTemplate metadata during validation
- #3993 fix: Delete realtime metrics of running Workflows that are deleted
- #3995 fix(ui): Report errors when uploading files. Fixes #3994
- #3997 fix: Step and Task level timeout examples
- #3999 chore(executor): upgrade `kubectl` to 1.18. Closes #3996
- #4002 fix(controller): Script Output didn't set if template has RetryStrategy
- #4004 fix(controller): Revert `resubmitPendingPods` mistake. Fixes #4001
- #4006 fix(ui): Allow you to view timeline tab. Fixes #4005
- #4007 docs: Update pages to GA. Closes #4000
- #4008 docs: Add `buildkit` example. Closes #2325
- #4010 feat(artifacts): Allow HTTP artifact load to set request headers
- #4018 fix(ui): Correctly show pod events. Fixes #4016
- #4021 fix(ui): Do not save undefined namespace. Fixes #4019
- #4022 fix: Don't save label filter in local storage. Fixes #3966
- #4024 feat(controller): Use pod informer for performance.
- #4025 feat(controller): Write back workflow to informer to prevent conflict errors. Fixes #3719
- #4028 fix: Tolerate malformed workflows when retrying
- #4031 fix(ui): [Snyk] Fix for 1 vulnerabilities
- #4032 docs(Windows): Add more information on artifacts and limitations
- #4037 Add Data4Risk to users list
- #4040 fix(artifacts): Make artifacts cross-platform compatible. Fixes #3682
- #4041 remove the space
- #4043 fix(ui): Tiny modal DAG tweaks. Fixes #4039
- #4054 docs: Update release guide
- #4060 feat: Add MaxAge to memoization
- #4063 fix(controller): Correct the order merging the fields in WorkflowTemplateRef scenario. Fixes #4044
- #4064 fix: Improve better handling on Pod deletion scenario 
- #4067 fix: Fix unintended inf recursion
- #4068 feat(executor): Decompress zip file input artifacts. Fixes #3585
- #4070 docs: Update SSO docs to clarify the user must create K8S secrets for holding the OAuth2 values
- #4073 chore: Fix merge error
- #4075 fix(server): Optional timestamp inclusion when retrieving workflow logs. Closes #4033
- #4083 fix(executor): windows output artifacts. Fixes #4082
- #4089 feat(controller): Sum resources duration for DAGs and steps
- #4091 feat(controller): Estimate workflow & node duration. Closes #2717
- #4094 feat(ui): Improve error recovery. Closes #4087
- #4095 feat(server): Make Argo Server issue own JWE for SSO. Fixes #4027 & #3873
- #4097 fix(executor): race condition in docker kill. Fixes #3053
- #4099 fix(ui): Ignore referenced nodes that don't exist in UI. Fixes #4079
- #4100 fix(cli): Reinstate --gloglevel flag. Fixes #4093
- #4103 fix(controller): Process workflows at least once every 20m
- #4104 fix(controller): Treat annotation and conditions changes as significant
- #4105 fix(cli): Add retry to retry ;). Fixes #4101
- #4109 fix(ui): Render children of workflow-level onExit. Fixes #3754
- #4110 docs: Added PDOK to USERS.md
- #4111 chore(build): Use build matrix and cache. Fixes #4062
- #4112 fix(server): argo-server-role to allow submitting cronworkflows from UI
- #4114 refactor: Refactor Synchronization code
- #4115 fix(ui): No longer redirect to `undefined` namespace. See #4084
- #4116 Adding reserved.ai to users list
- #4118 fix(cli): Add retry to retry, again. Fixes #4101
- #4119 fix(ui): Show "waiting for data" while waiting for pod logs. Fixes #3916
- #4122 docs: Include minimal reference for templating mechanism
- #4127 chore(build): Pre-push temporary manifest with linux/amd64. Fixes #4062
- #4132 fix(controller): Fix throttler. Fixes #1554 and #4081
- #4133 fix(controller): Changing DeletePropagation to background in TTL Controller and Argo CLI. Fixes #4106
- #4137 docs: add Mixpanel to argo/USERS.md
- #4139 fix(docs): Update k3d command for running argo locally
- #4142 fix(cli): add validate args in delete command
- #4146 test: Fix retry (attempt 3). Fixes #4101
- #4147 docs: Add Onepanel to USERS.md
- #4148 fix(controller): Correct unstructured API version. Caused by #3719
- #4149 fix(executor): Remove IsTransientErr check for ExponentialBackoff. Fixes #4144
- #4150 fix(ui): handle logging disconnects gracefully. Fixes #4117
- #4155 chore: Deprecate unused RuntimeResolution field
- #4156 fix: Provide helpful hint when creating workflow with existing name
- #4161 chore: Update Github issue templates
- #4166 feat(cli): Print 'no resource msg' when `argo list/delete` returns zero workflows
- #4172 fix: Ensure CronWorkflows are persisted once per operation
- #4175 docs: Add map-reduce example. Closes #4165 
- #4178 refactor: upgrade argo-ui library version
- #4184 feat: Controller/server runAsNonRoot. Closes #1824
- #4194 feat(controller): Track N/M progress. See #2717
- #4195 fix: Support workflowDefaults on TTLController for WorkflowTemplateRef Fixes #4188
- #4196 fix(executor): Update executor retry config for ExponentialBackoff.
- #4198 feat(server): Enable RBAC for SSO. Closes #3525
- #4202 fix(controller): Support int64 for param value. Fixes #4169
- #4205 chore(build): Update `make codegen` to only run on changes
- #4207 fix(controller): reduce withItem/withParams memory usage. Fixes #3907
- #4213 fix(controller): Apply Workflow default on normal workflow scenario Fixes #4208
- #4215 fix(controller): Increase the number of cron workflow workers from 2 to 8. Fixes #4211
- #4217 fix: Revert "chore: try out pre-pushing linux/amd64 images and updating ma… Fixes #4216
- #4218 fix(controller): Prevent tasks with names staring with a digit to use `depends` . Fixes #4199
- #4219 chore(build): re-add #4127 and steps to verify image pull
- #4220 chore: Enahnce logging around pod failures
- #4224 fix(controller): Make the delay before the first workflow reconciliation configurable. Fixes #4107
- #4225 feat(controller): Reduce reconcilliation time by exiting earlier.
- #4226 chore(api): Update swagger.json with Kubernetes v1.17.5 types. Closes #4204
- #4227 docs: Reinstate swagger.md so docs can build.
- #4228 fix(Makefile): removed deprecated k3d cmds. Fixes #4206
- #4237 docs: Correct formatting of variables example YAML
- #4241 fix(ui): Fix bugs with DAG view. Fixes #4232 & #4236
- #4243 fix(controller): Check the correct object for Cronworkflow reapply error log
- #4248 fix(ui): Revert bad part of commit
- #4251 docs: Add docs for `securityContext` and `emptyDir`. Closes #2239
- #4253 feat(executor): Wait for termination using pod watch for PNS and K8SAPI executors.
- #4255 feat(ui): Add a nudge for users who have not set their security context. Closes #4233 
- #4258 docs: daemon example: clarify prefix usage
- #4259 docs: Minor formatting fixes
- #4261 docs: correct a typo
- #4263 fix(controller): Synchronization lock didn't release on DAG call flow Fixes #4046
- #4268 fix: Add WorkflowEventBinding to aggregated roles
- #4269 chore(controller): N/M progress fixes
- #4274 feat(cli): Add the field selector option for delete command
- #4276 test: Tidy up E2E tests
- #4277 fix(controller): Fix argo retry with PVCs. Fixes #4275
- #4278 fix(controller): Fix cron-workflow re-apply error.
- #4279 fix(executor): Fix the artifacts option in k8sapi and PNS executor Fixes#4244
- #4280 fix(ui): Ignore missing nodes in DAG. Fixes #4232
- #4283 fix: TestMutexInDAG failure in master
- #4284 docs: Update releasing guide
- #4287 fix: WorkflowEventBinding typo in aggregated roles
- #4292 fix(cli): Return exit code on Argo template lint command
- #4294 fix(controller): Patch rather than update cron workflows.
- #4295 docs: Add diagram
- #4298 feat(ui): Submit resources without namespace to current namespace. Fixes #4293
- #4299 docs: Docker TLS env config
- #4300 fix(cli): Fix panic on argo template lint without argument
- #4303 fix(ui): Resolve undefined namespace correctly
- #4305 fix(ci): add non-root user to Dockerfile
- #4306 Update argo-server.md
- #4307 refactor: De-couple config
- #4309 fix(executor): Retrieve containerId from cri-containerd /proc/{pid}/cgroup. Fixes #4302
- #4310 feat(controller): Allow whitespace in variable subsitution. Fixes #4286
- #4311 fix(build): Some minor Makefile fixes
- #4314 feat(controller): add enum support in parameters (fixes #4192)
- #4315 build: Refactor `codegen` to make target dependencies clearer
- #4316 fix: merge artifact arguments from workflow template. Fixes #4296
- #4320 chore(controller): Refactor the CronWorkflow schedule logic with sync.Map
- #4322 docs: Update USERS.md
- #4323 docs: Ye olde whitespace fix
- #4329 docs: Fix incorrect link to static code analysis document
- #4332 fix(ui): correct typing errors in cron-workflow-details
- #4333 fix(ui): correct typing errors in workflows-toolbar
- #4334 fix(ui): correct typing errors in events-panel
- #4335 docs: Fix typos (/priviledged/privileged/)
- #4340 fix(executor): Increase pod patch backoff. Fixes #4339
- #4342 [Snyk] Security upgrade chart.js from 2.9.3 to 2.9.4
- #4346 docs: Update pvc example with correct resource indentation. Fixes #4330
- #4350 fix(server): Download artifacts from UI. Fixes #4338
- #4352 fix(controller): Only warn if cron job missing. Fixes #4351
- #4357 docs: Fix a copy-paste typo in the docs
- #4358 fix(validate): Local parameters should be validated locally. Fixes #4326
- #4361 Use '[[:blank:]]' instead of ' ' to match spaces/tabs
- #4363 build: Remove `vendor` at end of `codegen`
- #4373 fix(ui): correct typing errors in workflow-drawer
- #4375 chore: match code comments to the generated documentation
- #4376 fix: Fix intstr nil dereference
- #4378 fix(ui): Reconnect to DAG. Fixes #4301
- #4379 fix: Use DeletionHandlingMetaNamespaceKeyFunc in cron controller
- #4380 fix(controller): Enqueue the front workflow if semaphore lock is available
- #4382 feat(ui): Sign-post examples and the catalog. Fixes #4360
- #4383 fix(controller): Design-out event errors. Fixes #4364
- #4389 fix(ui): correct log viewer only showing first log line
- #4391 docs: Fix typo in events.md
- #4396 fix(controller): Fix estimation of duration for DAGs. Fixes #4386
- #4397 fix(ui): Ignore running workflows in report. Fixes #4387
- #4399 fix: Use correct template when processing metrics
- #4401 fix(controller): Tolerate int64 parameters. Fixes #4359
- #4404 ci: Split e2e tests to make them faster
- #4409 fix(executor): artifact chmod should only if err != nil
- #4411 fix: Ensure resourceDuration variables in metrics are always in seconds
- #4412 fix(server): Only try to use auth-mode if enabled. Fixes #4400
- #4413 fix(controller): Trigger no of workflows based on available lock
- #4415 docs: Add Acquia to USERS.md
- #4416 feat(cli): Support ARGO_HTTP1 for HTTP/1 CLI requests. Fixes #4394
- #4417 fix: Assume controller is in UTC when calculating NextScheduledRuntime
- #4420 fix(server): Add x-frame config option. Fixes #3397
- #4421 fix(controller): When semaphore lock config gets updated, enqueue the waiting workflows
- #4424 fix(docs): update link to container spec
- #4429 docs: Specify that CronWorkflow timezone uses IANA standard. Fixes #4290
- #4436 ci: Speed up e2e tests by 25%
- #4437 chore: Update pull request template
- #4440 fix: Resolve inconsistent CronWorkflow persistence
- #4446 feat(ui): Visualisation of the suspended CronWorkflows in the list. Fixes #4264
- #4449 feat(cli): Add the --no-utf8 parameter to `argo get` command to support ascii only terminals
- #4450 feat(server): Add WorkflowLogs API. See #4394
- #4451 fix: Fix validation with Argo Variable in activeDeadlineSeconds
- #4452 fix: Return copy of stored templates to ensure they are not modified
- #4453 chore(controller): Refactor and tidy up
- #4456 docs: Add DDEV to USERS.md
- #4457 feat: Add resume/suspend endpoints for CronWorkflows
- #4459 chore(docs): Fix docgen
- #4461 fix: localhost not being resolved. Resolves #4460, #3564
- #4465 refactor: Simplify grpcutil.TranslateError
- #4468 refactor(server): Use patch instead of update to resume/suspend

#### Contributors

* Aayush Rangwala <!-- num=1 -->
* Alex Capras <!-- num=1 -->
* Alex Collins <!-- num=85 -->
* Alexander Matyushentsev <!-- num=1 -->
* Amim Knabben <!-- num=1 -->
* Ang Gao <!-- num=2 -->
* Antoine Dao <!-- num=2 -->
* Bailey Hayes <!-- num=1 -->
* Basanth Jenu H B <!-- num=1 -->
* Bikramdeep Singh <!-- num=1 -->
* Byungjin Park (BJ) <!-- num=4 -->
* Douglas Lehr <!-- num=1 -->
* Elli Ludwigson <!-- num=1 -->
* Elvis Jakupovic <!-- num=1 -->
* Fischer Jemison <!-- num=1 -->
* Florian <!-- num=1 -->
* Floris Van den Abeele <!-- num=1 -->
* Francesco Murdaca <!-- num=1 -->
* Greg Roodt <!-- num=1 -->
* Huan-Cheng Chang <!-- num=1 -->
* Hussein Awala <!-- num=2 -->
* Ids van der Molen <!-- num=2 -->
* Igor Stepura <!-- num=1 -->
* InvictusMB <!-- num=1 -->
* James Laverack <!-- num=1 -->
* Juan C. Müller <!-- num=1 -->
* Justen Walker <!-- num=1 -->
* Lénaïc Huard <!-- num=1 -->
* Markus Lippert <!-- num=5 -->
* Martin Suchanek <!-- num=2 -->
* Matt Campbell <!-- num=1 -->
* Michael Crenshaw <!-- num=1 -->
* Michael Ruoss <!-- num=1 -->
* Michael Weibel <!-- num=1 -->
* Michal Cwienczek <!-- num=1 -->
* Mike Chau <!-- num=1 -->
* Naisisor <!-- num=1 -->
* Nicwalle <!-- num=1 -->
* Niklas Vest <!-- num=1 -->
* Nirav Patel <!-- num=1 -->
* Noah Hanjun Lee <!-- num=1 -->
* Noj Vek <!-- num=1 -->
* Pavel Čižinský <!-- num=1 -->
* Pranaye Karnati <!-- num=1 -->
* Remington Breeze <!-- num=1 -->
* Rush Tehrani <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=21 -->
* Simon Behar <!-- num=30 -->
* Snyk bot <!-- num=2 -->
* Takahiro Tsuruda <!-- num=1 -->
* Theodore Omtzigt <!-- num=1 -->
* Tomáš Coufal <!-- num=3 -->
* Wouter Remijn <!-- num=1 -->
* Yuan Tang <!-- num=1 -->
* boundless-thread <!-- num=1 -->
* conanoc <!-- num=1 -->
* dherman <!-- num=10 -->
* duluong <!-- num=1 -->
* ivancili <!-- num=1 -->
* jacky <!-- num=1 -->
* omerfsen <!-- num=1 -->
* saranyaeu2987 <!-- num=1 -->
* tianfeiyu <!-- num=2 -->
* tomgoren <!-- num=1 -->
* zhengchenyu <!-- num=1 -->
v2.11.7: tag_name: v2.11.7
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v2-11-a8b6189bf60e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.7/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.7/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.11.7/manifests/install.yaml
```

# Changes

### v2.11.7

#### Bug Fixes

- #4301 View Workflow Page Not Receiving Progress Updates
- #4338 open artifact : permission denied
- #4339 Slow / Unresponsive Kubernetes API
- #4351 v2.11.6: Parent CronWorkflow 'argo/canary' is malformed

#### Other

- Update manifests to v2.11.7

#### Pull Requests

- #4340 fix(executor): Increase pod patch backoff. Fixes #4339
- #4350 fix(server): Download artifacts from UI. Fixes #4338
- #4352 fix(controller): Only warn if cron job missing. Fixes #4351
- #4376 fix: Fix intstr nil dereference
- #4378 fix(ui): Reconnect to DAG. Fixes #4301
- #4379 fix: Use DeletionHandlingMetaNamespaceKeyFunc in cron controller
- #4380 fix(controller): Enqueue the front workflow if semaphore lock is available
- #4399 fix: Use correct template when processing metrics
- #4411 fix: Ensure resourceDuration variables in metrics are always in seconds
- #4417 fix: Assume controller is in UTC when calculating NextScheduledRuntime

#### Contributors

* Alex Collins <!-- num=5 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=5 -->

### v2.11.6

#### Bug Fixes

- #4144 Add request timed out in errors.isTransientNetworkErr

#### Other

- Update manifests to v2.11.6

#### Pull Requests

- #4149 fix(executor): Remove IsTransientErr check for ExponentialBackoff. Fixes #4144
- #4320 chore(controller): Refactor the CronWorkflow schedule logic with sync.Map

#### Contributors

* Alex Collins <!-- num=1 -->
* Ang Gao <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.5

#### Bug Fixes

- #4046 Step or dag workflows do not seem to release semaphore locks

#### Other

- Merge branch 'release-2.11' of https://github.com/argoproj/argo into release-2.11
- Update manifests to v2.11.5
- test: Fix test

#### Pull Requests

- #4215 fix(controller): Increase the number of cron workflow workers from 2 to 8. Fixes #4211
- #4263 fix(controller): Synchronization lock didn't release on DAG call flow Fixes #4046
- #4283 fix: TestMutexInDAG failure in master
- #4294 fix(controller): Patch rather than update cron workflows.

#### Contributors

* Alex Collins <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=3 -->
* Simon Behar <!-- num=1 -->

### v2.11.4

#### Bug Fixes

- #4232 Argo UI:  Cannot read property 'x' of undefined when viewing workflow (v2.11.0)
- #4236 Argo UI - Archived Workflows - Error when clicking on hidden nodes ellipsis
- #4275 Pods in retried workflow with PVC after a step that succeeded never get scheduled

#### Pull Requests

- #4241 fix(ui): Fix bugs with DAG view. Fixes #4232 & #4236
- #4243 fix(controller): Check the correct object for Cronworkflow reapply error log
- #4248 fix(ui): Revert bad part of commit
- #4277 fix(controller): Fix argo retry with PVCs. Fixes #4275
- #4278 fix(controller): Fix cron-workflow re-apply error.
- #4280 fix(ui): Ignore missing nodes in DAG. Fixes #4232

#### Contributors

* Alex Collins <!-- num=5 -->
* Juan C. Müller <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.3

#### Bug Fixes

- #4169 unmarshal to workflow struct failed,if outputs.parameters.value is a number

#### Other

- fixed merge conflict

#### Pull Requests

- #4202 fix(controller): Support int64 for param value. Fixes #4169

#### Contributors

* Alex Collins <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.2

#### Bug Fixes

- #4114 refactor: Refactor Synchronization code
- #4172 fix: Ensure CronWorkflows are persisted once per operation
- #4207 fix(controller): reduce withItem/withParams memory usage.
- #4213 fix(controller): Apply Workflow default on normal workflow scenario

#### Contributors

* Alex Collins <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=2 -->

v2.11.6: tag_name: v2.11.6
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v2-11-a8b6189bf60e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.11.6/manifests/install.yaml
```

# Changes

### v2.11.6

#### Bug Fixes

- #4144 Add request timed out in errors.isTransientNetworkErr

#### Other

- Update manifests to v2.11.6

#### Pull Requests

- #4149 fix(executor): Remove IsTransientErr check for ExponentialBackoff. Fixes #4144
- #4320 chore(controller): Refactor the CronWorkflow schedule logic with sync.Map

#### Contributors

* Alex Collins <!-- num=1 -->
* Ang Gao <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.5

#### Bug Fixes

- #4046 Step or dag workflows do not seem to release semaphore locks

#### Other

- Merge branch 'release-2.11' of https://github.com/argoproj/argo into release-2.11
- Update manifests to v2.11.5
- test: Fix test

#### Pull Requests

- #4215 fix(controller): Increase the number of cron workflow workers from 2 to 8. Fixes #4211
- #4263 fix(controller): Synchronization lock didn't release on DAG call flow Fixes #4046
- #4283 fix: TestMutexInDAG failure in master
- #4294 fix(controller): Patch rather than update cron workflows.

#### Contributors

* Alex Collins <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=3 -->
* Simon Behar <!-- num=1 -->

### v2.11.4

#### Bug Fixes

- #4232 Argo UI:  Cannot read property 'x' of undefined when viewing workflow (v2.11.0)
- #4236 Argo UI - Archived Workflows - Error when clicking on hidden nodes ellipsis
- #4275 Pods in retried workflow with PVC after a step that succeeded never get scheduled

#### Pull Requests

- #4241 fix(ui): Fix bugs with DAG view. Fixes #4232 & #4236
- #4243 fix(controller): Check the correct object for Cronworkflow reapply error log
- #4248 fix(ui): Revert bad part of commit
- #4277 fix(controller): Fix argo retry with PVCs. Fixes #4275
- #4278 fix(controller): Fix cron-workflow re-apply error.
- #4280 fix(ui): Ignore missing nodes in DAG. Fixes #4232

#### Contributors

* Alex Collins <!-- num=5 -->
* Juan C. Müller <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.3

#### Bug Fixes

- #4169 unmarshal to workflow struct failed,if outputs.parameters.value is a number

#### Other

- fixed merge conflict

#### Pull Requests

- #4202 fix(controller): Support int64 for param value. Fixes #4169

#### Contributors

* Alex Collins <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.2

#### Bug Fixes

- #4114 refactor: Refactor Synchronization code
- #4172 fix: Ensure CronWorkflows are persisted once per operation
- #4207 fix(controller): reduce withItem/withParams memory usage.
- #4213 fix(controller): Apply Workflow default on normal workflow scenario

#### Contributors

* Alex Collins <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=2 -->

v2.11.5: tag_name: v2.11.5
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v2-11-a8b6189bf60e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.11.5/manifests/install.yaml
```

# Changes

### v2.11.5

#### Bug Fixes

- #4046 Step or dag workflows do not seem to release semaphore locks

#### Other

- Merge branch 'release-2.11' of https://github.com/argoproj/argo into release-2.11
- Update manifests to v2.11.5
- test: Fix test

#### Pull Requests

- #4215 fix(controller): Increase the number of cron workflow workers from 2 to 8. Fixes #4211
- #4263 fix(controller): Synchronization lock didn't release on DAG call flow Fixes #4046
- #4283 fix: TestMutexInDAG failure in master
- #4294 fix(controller): Patch rather than update cron workflows.

#### Contributors

* Alex Collins <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=3 -->
* Simon Behar <!-- num=1 -->

### v2.11.4

#### Bug Fixes

- #4232 Argo UI:  Cannot read property 'x' of undefined when viewing workflow (v2.11.0)
- #4236 Argo UI - Archived Workflows - Error when clicking on hidden nodes ellipsis
- #4275 Pods in retried workflow with PVC after a step that succeeded never get scheduled

#### Pull Requests

- #4241 fix(ui): Fix bugs with DAG view. Fixes #4232 & #4236
- #4243 fix(controller): Check the correct object for Cronworkflow reapply error log
- #4248 fix(ui): Revert bad part of commit
- #4277 fix(controller): Fix argo retry with PVCs. Fixes #4275
- #4278 fix(controller): Fix cron-workflow re-apply error.
- #4280 fix(ui): Ignore missing nodes in DAG. Fixes #4232

#### Contributors

* Alex Collins <!-- num=5 -->
* Juan C. Müller <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.3

#### Bug Fixes

- #4169 unmarshal to workflow struct failed,if outputs.parameters.value is a number

#### Other

- fixed merge conflict

#### Pull Requests

- #4202 fix(controller): Support int64 for param value. Fixes #4169

#### Contributors

* Alex Collins <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.2

#### Bug Fixes

- #4114 refactor: Refactor Synchronization code
- #4172 fix: Ensure CronWorkflows are persisted once per operation
- #4207 fix(controller): reduce withItem/withParams memory usage.
- #4213 fix(controller): Apply Workflow default on normal workflow scenario

#### Contributors

* Alex Collins <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=2 -->

v2.11.4: tag_name: v2.11.4
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v2-11-a8b6189bf60e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.11.4/manifests/install.yaml
```

# Changes

### v2.11.4

#### Bug Fixes

- #4232 Argo UI:  Cannot read property 'x' of undefined when viewing workflow (v2.11.0)
- #4236 Argo UI - Archived Workflows - Error when clicking on hidden nodes ellipsis
- #4275 Pods in retried workflow with PVC after a step that succeeded never get scheduled

#### Pull Requests

- #4241 fix(ui): Fix bugs with DAG view. Fixes #4232 & #4236
- #4243 fix(controller): Check the correct object for Cronworkflow reapply error log
- #4248 fix(ui): Revert bad part of commit
- #4277 fix(controller): Fix argo retry with PVCs. Fixes #4275
- #4278 fix(controller): Fix cron-workflow re-apply error.
- #4280 fix(ui): Ignore missing nodes in DAG. Fixes #4232

#### Contributors

* Alex Collins <!-- num=5 -->
* Juan C. Müller <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.3

#### Bug Fixes

- #4169 unmarshal to workflow struct failed,if outputs.parameters.value is a number

#### Other

- fixed merge conflict

#### Pull Requests

- #4202 fix(controller): Support int64 for param value. Fixes #4169

#### Contributors

* Alex Collins <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.2

#### Bug Fixes

- #4114 refactor: Refactor Synchronization code
- #4172 fix: Ensure CronWorkflows are persisted once per operation
- #4207 fix(controller): reduce withItem/withParams memory usage.
- #4213 fix(controller): Apply Workflow default on normal workflow scenario

#### Contributors

* Alex Collins <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=2 -->

v2.11.3: tag_name: v2.11.3
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v2-11-a8b6189bf60e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.11.3/manifests/install.yaml
```

# Changes

### v2.11.3

#### Bug Fixes

- #4169 unmarshal to workflow struct failed,if outputs.parameters.value is a number

#### Other

- fixed merge conflict

#### Pull Requests

- #4202 fix(controller): Support int64 for param value. Fixes #4169

#### Contributors

* Alex Collins <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.2

#### Bug Fixes

- #4114 refactor: Refactor Synchronization code
- #4172 fix: Ensure CronWorkflows are persisted once per operation
- #4207 fix(controller): reduce withItem/withParams memory usage.
- #4213 fix(controller): Apply Workflow default on normal workflow scenario

#### Contributors

* Alex Collins <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=2 -->

v2.11.2: tag_name: v2.11.2
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v2-11-a8b6189bf60e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.11.2/manifests/install.yaml
```

# Changes

### v2.11.2

#### Bug Fixes

- #4114 refactor: Refactor Synchronization code
- #4172 fix: Ensure CronWorkflows are persisted once per operation
- #4207 fix(controller): reduce withItem/withParams memory usage.
- #4213 fix(controller): Apply Workflow default on normal workflow scenario

#### Contributors

* Alex Collins <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=2 -->

v2.11.1: tag_name: v2.11.1
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v2-11-a8b6189bf60e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.11.1/manifests/install.yaml
```

# Changes

### v2.11.1

#### Bug Fixes

- #4033 Timestamp always present in logs provided by API
- #4044 Workflow created from Workflowtemplate doesn't respect the activeDeadlineSeconds defined the Workflowtemplate
- #4079 Cannot read property type of undefined
- #4084 Some 2.11.0 URLs redirect unhelpfully
- #4093 add back flag for kubernetes log level in CLI

#### Other

- Update manifests to v2.11.1

#### Pull Requests

- #4028 fix: Tolerate malformed workflows when retrying
- #4063 fix(controller): Correct the order merging the fields in WorkflowTemplateRef scenario. Fixes #4044
- #4067 fix: Fix unintended inf recursion
- #4075 fix(server): Optional timestamp inclusion when retrieving workflow logs. Closes #4033
- #4099 fix(ui): Ignore referenced nodes that don't exist in UI. Fixes #4079
- #4100 fix(cli): Reinstate --gloglevel flag. Fixes #4093
- #4103 fix(controller): Process workflows at least once every 20m
- #4104 fix(controller): Treat annotation and conditions changes as significant
- #4109 fix(ui): Render children of workflow-level onExit. Fixes #3754
- #4111 chore(build): Use build matrix and cache. Fixes #4062
- #4112 fix(server): argo-server-role to allow submitting cronworkflows from UI
- #4115 fix(ui): No longer redirect to `undefined` namespace. See #4084
- #4133 fix(controller): Changing DeletePropagation to background in TTL Controller and Argo CLI. Fixes #4106

#### Contributors

* Alex Collins <!-- num=5 -->
* Markus Lippert <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=2 -->
* Simon Behar <!-- num=4 -->
* Tomáš Coufal <!-- num=1 -->
* ivancili <!-- num=1 -->

### v2.11.0

#### Enhancements

* #4039 Tooltips should also be supplied for ellipsized text

#### Pull Requests

- #4043 fix(ui): Tiny modal DAG tweaks. Fixes #4039

#### Contributors

* Alex Collins <!-- num=2 -->

### v2.11.0-rc3

#### Enhancements

* #3595 Hard to see child dependencies in UI with complicated workflows

#### Bug Fixes

- #3872 Custom metrics are not recorded for DAG tasks.
- #3942 LGTM (security) review tool flagged 5 issues in the code base
- #3960 Argo CLI (v2.10.0+) doesn't handle int64 values
- #3994 Upload via UI does not always seem to work
- #4001 v2.11: Investigate/fix `resubmitPendingPods` typo
- #4005 v2.11: Clicking on timeline tab shows events tab
- #4016 v2.11: Pod event in UI not working for `withItems`
- #4019 UI: Cron workflows filter not working as expected


#### Pull Requests

- #3886 fix: Custom metrics are not recorded for DAG tasks Fixes #3872
- #3928 fix: Fix UI selection issues
- #3950 fix: Fix children is not defined error
- #3963 fix(controller): Revert parameter value to `*string`. Fixes #3960
- #3967 feat(ui): Introduce modal DAG renderer. Fixes: #3595
- #3975 fix(server): Removes minor XSS vulnerability. Fixes #3942
- #3979 fix: Create global scope before workflow-level realtime metrics
- #3988 fix: Consider WorkflowTemplate metadata during validation
- #3995 fix(ui): Report errors when uploading files. Fixes #3994
- #4002 fix(controller): Script Output didn't set if template has RetryStrategy
- #4004 fix(controller): Revert `resubmitPendingPods` mistake. Fixes #4001
- #4006 fix(ui): Allow you to view timeline tab. Fixes #4005
- #4018 fix(ui): Correctly show pod events. Fixes #4016
- #4021 fix(ui): Do not save undefined namespace. Fixes #4019

#### Contributors

* Alex Collins <!-- num=8 -->
* Saravanan Balasubramanian <!-- num=2 -->
* Simon Behar <!-- num=5 -->

### v2.11.0-rc2

#### Bug Fixes

- #3926 Swagger UI does not allow you to send /api/v1/events requests
- #3927 Update default role for argo-server to support webhooks
- #3943 The version command fails due to lack of kubeconfig
- #3977 Dockerfile: When using ADD with more than one source file, the destination must be a directory and end with a /

#### Pull Requests

- #3686 feat: Step and Task Level Global Timeout
- #3929 fix(server): Adds missing webhook permissions. Fixes #3927
- #3932 fix(swagger): Correct item type. Fixes #3926
- #3945 fix(cli): Allow `argo version` without `KUBECONFIG`. Fixes #3943

#### Contributors

* Alex Collins <!-- num=5 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.0-rc1

#### Enhancements

* #2080 Argo Workflow for ARM?
* #2308 Migrate toward structured logging
* #2667 Trigger workflows from webhook
* #2677 Workflow mutexes
* #3061 Artifact Reference Subpath
* #3080 BASE_HREF  is not working
* #3491 support optional Input artifacts when artifacts not exist
* #3543 New UI editor should default to YAML
* #3567 Migrate Argo CLI to homebrew-core
* #3576 Reduce CLI binary size
* #3621 Make it easier to find out the cron/template/cluster template that the workflow was submitted from
* #3673 Surface K8s Events about Nodes to UI
* #3720 Sign-post how to use IDE CRD validation in UI
* #3735 Small correction to workflow template dag example
* #3786 More robust workflow archiving
* #3837 More robust node status offloading
* #3881 Better malformed resource handling
* #3911 Change default retry factor to 2
* #944 Step level memoization

#### Bug Fixes

- #3217 Operation cannot be fulfilled on resourcequotas "gke-resource-quotas": the object has been modified; please apply your changes to the latest version and try again
- #3498 Set workflow parameters in UI
- #3505 Panic on addOutputsToLocalScope
- #3513 Backoff exponent is off by one
- #3515 v2.9.3 Docker images report they are v2.10.0-rc1
- #3546 Typo in curl command
- #3562 Bearer token error argo + microk8s
- #3578 withItems incorrect type in full CRD
- #3606 Retry on `the server has received too many requests and has asked us to try again later (post pods)` errors
- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error
- #3622 Re-submitted workflows do not carry over labels
- #3653 v2.10.0-rc4 nested maps in loop rendered as Golang map[]
- #3666 Malformed WorkflowTemplate crashes whole UI
- #3677 Make the controller tolerant to malformed resources
- #3697 Argo apidocs no longer served
- #3706 Fix `Unable to delete PDB resource for workflow` error
- #3737 `argo submit` from a WorkflowTemplate with default exit handler produces "invalid field in spec" error
- #3756 Creator label too long.
- #3762 Invalid Argo CLI download link in Web UI
- #3769 v2.9.5 brew binary somehow getting replaced by dirty
- #3773 In the UI the namespace is getting replaced by "undefined"
- #3775 Pagesize = all not woking on Archived Workflow View
- #3791 argo cli report wrong workflow state
- #3807 Cron Backfill example doesn't work
- #3818 Re-submitted workflows do not carry over ownerReferences
- #3867 Some UI pages do not recover from errors
- #3879 Pod's phase is failed, but the workflow node status is succeeded.
- #3903 Workflow auto-completes to wrong URL

#### Other

- #3561 Build failed with flaky test TestStorageQuotaLimit
- #3617 Disable TLS when running in dev mode
- Update manifests to v2.11.0-rc1
- docs: Add 23mofang to USERS.md
- docs: Correct typo in `--instanceid`
- docs: memory base amount denominator documentation

#### Pull Requests

- #3063 feat(artifacts): retrieve subpath from unarchived ref artifact. Closes #3061
- #3277 feat: Add 'argo node set' command
- #3356 feat(controller): Step level memoization. Closes #944
- #3488 feat(server): Trigger workflows from webhooks. Closes #2667 
- #3490 fix: Exceeding quota with volumeClaimTemplates
- #3509 fix(controller): Do not panic on nil output value. Fixes #3505
- #3510 chore: Enable no-response bot
- #3512 fix(artifacts): support optional input artifacts, Fixes #3491
- #3514 fix(controller): Backoff exponent is off by one. Fixes #3513
- #3518 fix: String interpreted as boolean in labels
- #3519 ci: Make builds marginally faster. Fixes #3515
- #3526 feat: Collapse children in UI Workflow viewer
- #3528 fix: Fix when retrying Workflows with Omitted nodes
- #3532 fix: Panic on CLI Watch command
- #3536 docs: Workflow of workflows pattern
- #3537 docs: Synchronization documentation
- #3539 fix: Fix links in fields doc
- #3547 docs: Correct type Fixes #3546
- #3552 fix: Fix flakey TestRetryOmitted
- #3553 docs: Change formatting to put content into code block
- #3554 feat(cli): Support deleting resubmitted workflows
- #3555 fix(ui): cannot read property 'push' of undefined when filtering by label. Fixes #3550
- #3560 feat(ui): Change default language for Resource Editor to YAML and store preference in localStorage. Fixes #3543
- #3566 fix: Skip TestStorageQuotaLimit
- #3568 docs: Migrate to homebrew-core (#3567)
- #3573 fix(ui): Fix multiple UI issues
- #3579 fix(server): Ignore not-JWT server tokens. Fixes #3562
- #3580 feat(ui): Enhanced workflow submission. Closes #3498
- #3581 fix: Argo Workflows does not honour global timeout if step/pod is not able to schedule
- #3592 docs: Document ingress set-up. Closes #3080
- #3596 fix(controller): Fix bug in util/RecoverWorkflowNameFromSelectorString. Add error handling
- #3598 docs: Memoization Documentation
- #3602 build: Initialize npm before installing swagger-markdown
- #3605 fix: Fix panic and provide better error message on watch endpoint
- #3607 fix(controller): Treat TooManyError same as Forbidden (i.e. try again). Fixes #3606
- #3609 fix(server): Re-establish watch on v1.Status errors. Fixes #3608
- #3610 feat: Allow parametrizable int fields
- #3612 docs: fix typo - replace "workfow" with "workflow"
- #3613 fix: Enforce metric Help must be the same for each metric Name
- #3614 build(cli)!: Zip binaries binaries. Closes #3576
- #3615 fix(controller): Panic when outputs in a cache entry are nil
- #3616 build: Increase timeout
- #3618 build: Disable TLS for dev mode. Fixes #3617
- #3623 docs: Update link to examples so works in raw github.com view
- #3624 fix: DAG level Output Artifacts on K8S and Kubelet executor
- #3627 docs: Correct indentation for codeblocks within bullet-points for "workflow-templates"
- #3631 feat(controller): Mutexes. Closes #2677
- #3632 fix: Simplify the WorkflowTemplateRef field validation to support all fields in WorkflowSpec except `Templates`
- #3634 docs: Add comment to config map about SSO auth-mode
- #3636 fix: Fix 'malformed request: field selector' error
- #3638 fix(controller): Carry-over labels for re-submitted workflows. Fixes #3622
- #3639 docs: Add documentation for configuring OSS artifact storage
- #3640 fix: Fixed flaky unit test TestFailSuspendedAndPendingNodesAfterDeadline
- #3643 fix: Don't panic on invalid template creation
- #3651 fix: Avoid overriding the Workflow parameter when it is merging with WorkflowTemplate parameter
- #3652 fix(server): Report v1.Status errors. Fixes #3608
- #3654 docs: Fix type in default-workflow-specs.md
- #3659 fix: interface{} values should be expanded with '%v'
- #3660 feat: Add submit options to 'argo cron create'
- #3661 fix(controller): Fix nested maps. Fixes #3653
- #3662 feat(ui): Add links to wft, cwf, or cwft to workflow list and details. Closes #3621
- #3669 fix: Fix collapsible nodes rendering
- #3670 build: Disable TLS in dev server
- #3671 fix: Argo linting does not respect namespace of declared resource
- #3674 feat(ui): Make UI errors recoverable. Fixes #3666
- #3675 fix(executor): Add retry on pods watch to handle timeout.
- #3679 fix: Couldn't Terminate/Stop the ResourceTemplate Workflow
- #3680 fix(controller): Tolerate malformed resources. Fixes #3677
- #3681 chore: Update issue templates
- #3684 fix: Re-introduce 1 second sleep to reconcile informer
- #3685 chore(ui): Add label to 'from' section in Workflow Drawer
- #3689 fix(controller): Adds ALL_POD_CHANGES_SIGNIFICANT
- #3691 fix: Fixed workflow queue duration if PVC creation is forbidden
- #3699 fix: Fix bug with 'argo delete --older'
- #3700 feat: Upgrade Minio v7 with support IRSA
- #3701 docs: Correct version. Fixes #3697
- #3702 chore: Introduce convenience methods for intstr.
- #3704 feat(server): Emit audit events for workflow event binding errors
- #3713 fix: Ingress docs
- #3714 docs(windows): add note about artifacts on windows
- #3716 fix: Ensure target task's onExit handlers are run
- #3717 fix(controller): Tolerate PDB delete race. Fixes #3706
- #3723 feat(ui): Sign-post IDE set-up. Closes #3720
- #3724 feat(operator): Add scope params for step startedAt and finishedAt #3708
- #3726 feat(server): Display events involved in the workflow. Closes #3673
- #3727 feat(controller): controller logs to be structured #2308
- #3736 docs: Remove misleading argument in workflow template dag examples. (…
- #3740 fix: Consider all children of TaskGroups in DAGs
- #3741 feat(ui): add node memoization information to node summary view
- #3744 feat: Github Workflow multi arch. Fixes #2080
- #3749 test: Simplify E2E test tear-down
- #3752 build: Lint files tagged with `e2e`. Closes #3750
- #3758 fix(server): Truncate creator label at 63 chars. Fixes #3756
- #3764 fix: TestWorkflowLevelSemaphore flakiness
- #3765 fix: Fix workflow onExit nodes not being displayed in UI
- #3772 docs: Remove confusing namespace
- #3777 chore: Format test code
- #3778 fix(ui): Correctly load and store namespace. Fixes #3773 and #3775
- #3782 fix(controller): Support exit handler on workflow templates.  Fixes #3737
- #3783 fix(ui): Remove outdated download links. Fixes #3762
- #3785 feat(executor): Add SYS_CHROOT to ease the setup of non-root deployments with PNS. Closes #3767
- #3787 fix(controller): Failure tolerant workflow archiving and offloading. Fixes #3786 and #3837
- #3792 build: Retry downloading Kustomize
- #3794 fix: Increase the requeue duration on checkForbiddenErrorAndResubmitAllowed
- #3795 fix: workflow template ref does not work in other namespace
- #3799 test: Increase cron test timeout to 7m
- #3801 ci: static files not being built with Homebrew and dirty binary. Fixes #3769
- #3804 docs: Add section on CronWorkflow crash recovery
- #3808 fix: Treat collapsed nodes as their siblings
- #3809 fix: Corrects CRD and Swagger types. Fixes #3578
- #3810 chore: add New Relic to USERS.md
- #3814 fix(docs): Add Entrypoint Cron Backfill example  Fixes #3807
- #3820 fix: Carry over ownerReferences from resubmitted workflow. Fixes #3818
- #3822 test: Skip TestStopBehavior and TestRetryOmit
- #3828 docs: Amend link to the Workflow CRD.  Fixes #3827
- #3831 ci: Remove external build dependency
- #3839 fix(ui): crash when workflow node has no memoization info. Fixes #3838
- #3844 docs: Update example README for duration
- #3846 chore: Reduce the 2x workflow save on Semaphore scenario
- #3847 feat: Show next scheduled cron run in UI/CLI
- #3848 ci: Fix build by providing clean repo inside Docker
- #3849 test: E2E test refactoring
- #3851 feat(controller): Do not try to create pods we know exists to prevent `exceeded quota` errors. Fixes #3791
- #3853 feat(controller): Always retry when `IsTransientErr` to tolerate transient errors. Fixes #3217
- #3854 ci: Changed tagging and amend multi-arch manifest
- #3860 chore: Added unittest for PVC exceed quota Closes #3561
- #3869 fix(ui): Improve error recovery. Fixes #3867
- #3871 ci: Create manifest from images again
- #3876 chore(ui): correct a typo
- #3883 fix(controller): Cron re-apply update
- #3889 feat(controller): Emit events for malformed cron workflows. See #3881
- #3890 fix: Workflow should fail on Pod failure before container starts Fixes #3879
- #3891 fix(executor): Replace default retry in executor with an increased value retryer
- #3892 chore: Remove unused imports
- #3900 chore(users): Add Fynd Trak to the list of Users
- #3901 Update workflow-controller-configmap.yaml
- #3906 fix(ui): use absolute URL to redirect from autocomplete list. Closes #3903
- #3908 ci: Fix broken Multiplatform builds
- #3909 test: Fix flaky e2e tests
- #3910 test: Fix TestRetryOmit and TestStopBehavior
- #3919 feat(controller): Set default retry factor to 2. Closes #3911

#### Contributors

* Alex Collins <!-- num=48 -->
* Alexander Zigelski <!-- num=2 -->
* Ang Gao <!-- num=1 -->
* Antoine Dao <!-- num=1 -->
* Carlos Montemuino <!-- num=1 -->
* Chris Hepner <!-- num=1 -->
* Greg Roodt <!-- num=1 -->
* Guillaume Hormiere <!-- num=1 -->
* Jared Welch <!-- num=1 -->
* Jie Zhang <!-- num=1 -->
* Jonny <!-- num=1 -->
* Kaushik B <!-- num=1 -->
* Lucas Theisen <!-- num=1 -->
* Michael Weibel <!-- num=1 -->
* Nirav Patel <!-- num=1 -->
* Noorain Panjwani <!-- num=1 -->
* Remington Breeze <!-- num=9 -->
* Saravanan Balasubramanian <!-- num=24 -->
* Sebastian Ortan <!-- num=1 -->
* Shannon <!-- num=1 -->
* Simon Behar <!-- num=26 -->
* Simon Frey <!-- num=2 -->
* Weston Platter <!-- num=2 -->
* Yuan Tang <!-- num=2 -->
* Zadjad Rezai <!-- num=1 -->
* dgiebert <!-- num=7 -->
* dherman <!-- num=1 -->
* haibingzhao <!-- num=1 -->
* joe <!-- num=1 -->
* juliusvonkohout <!-- num=1 -->
* sh-tatsuno <!-- num=2 -->
* yonirab <!-- num=1 -->
v2.11.0: tag_name: v2.11.0
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v2-11-a8b6189bf60e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.0/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.0/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.11.0/manifests/install.yaml
```

# Changes

### v2.11.0

#### Enhancements

* #4039 Tooltips should also be supplied for ellipsized text

#### Pull Requests

- #4043 fix(ui): Tiny modal DAG tweaks. Fixes #4039

#### Contributors

* Alex Collins <!-- num=2 -->

### v2.11.0-rc3

#### Enhancements

* #3595 Hard to see child dependencies in UI with complicated workflows

#### Bug Fixes

- #3872 Custom metrics are not recorded for DAG tasks.
- #3942 LGTM (security) review tool flagged 5 issues in the code base
- #3960 Argo CLI (v2.10.0+) doesn't handle int64 values
- #3994 Upload via UI does not always seem to work
- #4001 v2.11: Investigate/fix `resubmitPendingPods` typo
- #4005 v2.11: Clicking on timeline tab shows events tab
- #4016 v2.11: Pod event in UI not working for `withItems`
- #4019 UI: Cron workflows filter not working as expected


#### Pull Requests

- #3886 fix: Custom metrics are not recorded for DAG tasks Fixes #3872
- #3928 fix: Fix UI selection issues
- #3950 fix: Fix children is not defined error
- #3963 fix(controller): Revert parameter value to `*string`. Fixes #3960
- #3967 feat(ui): Introduce modal DAG renderer. Fixes: #3595
- #3975 fix(server): Removes minor XSS vulnerability. Fixes #3942
- #3979 fix: Create global scope before workflow-level realtime metrics
- #3988 fix: Consider WorkflowTemplate metadata during validation
- #3995 fix(ui): Report errors when uploading files. Fixes #3994
- #4002 fix(controller): Script Output didn't set if template has RetryStrategy
- #4004 fix(controller): Revert `resubmitPendingPods` mistake. Fixes #4001
- #4006 fix(ui): Allow you to view timeline tab. Fixes #4005
- #4018 fix(ui): Correctly show pod events. Fixes #4016
- #4021 fix(ui): Do not save undefined namespace. Fixes #4019

#### Contributors

* Alex Collins <!-- num=8 -->
* Saravanan Balasubramanian <!-- num=2 -->
* Simon Behar <!-- num=5 -->

### v2.11.0-rc2

#### Bug Fixes

- #3926 Swagger UI does not allow you to send /api/v1/events requests
- #3927 Update default role for argo-server to support webhooks
- #3943 The version command fails due to lack of kubeconfig
- #3977 Dockerfile: When using ADD with more than one source file, the destination must be a directory and end with a /

#### Pull Requests

- #3686 feat: Step and Task Level Global Timeout
- #3929 fix(server): Adds missing webhook permissions. Fixes #3927
- #3932 fix(swagger): Correct item type. Fixes #3926
- #3945 fix(cli): Allow `argo version` without `KUBECONFIG`. Fixes #3943

#### Contributors

* Alex Collins <!-- num=5 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.0-rc1

#### Enhancements

* #2080 Argo Workflow for ARM?
* #2308 Migrate toward structured logging
* #2667 Trigger workflows from webhook
* #2677 Workflow mutexes
* #3061 Artifact Reference Subpath
* #3080 BASE_HREF  is not working
* #3491 support optional Input artifacts when artifacts not exist
* #3543 New UI editor should default to YAML
* #3567 Migrate Argo CLI to homebrew-core
* #3576 Reduce CLI binary size
* #3621 Make it easier to find out the cron/template/cluster template that the workflow was submitted from
* #3673 Surface K8s Events about Nodes to UI
* #3720 Sign-post how to use IDE CRD validation in UI
* #3735 Small correction to workflow template dag example
* #3786 More robust workflow archiving
* #3837 More robust node status offloading
* #3881 Better malformed resource handling
* #3911 Change default retry factor to 2
* #944 Step level memoization

#### Bug Fixes

- #3217 Operation cannot be fulfilled on resourcequotas "gke-resource-quotas": the object has been modified; please apply your changes to the latest version and try again
- #3498 Set workflow parameters in UI
- #3505 Panic on addOutputsToLocalScope
- #3513 Backoff exponent is off by one
- #3515 v2.9.3 Docker images report they are v2.10.0-rc1
- #3546 Typo in curl command
- #3562 Bearer token error argo + microk8s
- #3578 withItems incorrect type in full CRD
- #3606 Retry on `the server has received too many requests and has asked us to try again later (post pods)` errors
- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error
- #3622 Re-submitted workflows do not carry over labels
- #3653 v2.10.0-rc4 nested maps in loop rendered as Golang map[]
- #3666 Malformed WorkflowTemplate crashes whole UI
- #3677 Make the controller tolerant to malformed resources
- #3697 Argo apidocs no longer served
- #3706 Fix `Unable to delete PDB resource for workflow` error
- #3737 `argo submit` from a WorkflowTemplate with default exit handler produces "invalid field in spec" error
- #3756 Creator label too long.
- #3762 Invalid Argo CLI download link in Web UI
- #3769 v2.9.5 brew binary somehow getting replaced by dirty
- #3773 In the UI the namespace is getting replaced by "undefined"
- #3775 Pagesize = all not woking on Archived Workflow View
- #3791 argo cli report wrong workflow state
- #3807 Cron Backfill example doesn't work
- #3818 Re-submitted workflows do not carry over ownerReferences
- #3867 Some UI pages do not recover from errors
- #3879 Pod's phase is failed, but the workflow node status is succeeded.
- #3903 Workflow auto-completes to wrong URL

#### Other

- #3561 Build failed with flaky test TestStorageQuotaLimit
- #3617 Disable TLS when running in dev mode
- Update manifests to v2.11.0-rc1
- docs: Add 23mofang to USERS.md
- docs: Correct typo in `--instanceid`
- docs: memory base amount denominator documentation

#### Pull Requests

- #3063 feat(artifacts): retrieve subpath from unarchived ref artifact. Closes #3061
- #3277 feat: Add 'argo node set' command
- #3356 feat(controller): Step level memoization. Closes #944
- #3488 feat(server): Trigger workflows from webhooks. Closes #2667 
- #3490 fix: Exceeding quota with volumeClaimTemplates
- #3509 fix(controller): Do not panic on nil output value. Fixes #3505
- #3510 chore: Enable no-response bot
- #3512 fix(artifacts): support optional input artifacts, Fixes #3491
- #3514 fix(controller): Backoff exponent is off by one. Fixes #3513
- #3518 fix: String interpreted as boolean in labels
- #3519 ci: Make builds marginally faster. Fixes #3515
- #3526 feat: Collapse children in UI Workflow viewer
- #3528 fix: Fix when retrying Workflows with Omitted nodes
- #3532 fix: Panic on CLI Watch command
- #3536 docs: Workflow of workflows pattern
- #3537 docs: Synchronization documentation
- #3539 fix: Fix links in fields doc
- #3547 docs: Correct type Fixes #3546
- #3552 fix: Fix flakey TestRetryOmitted
- #3553 docs: Change formatting to put content into code block
- #3554 feat(cli): Support deleting resubmitted workflows
- #3555 fix(ui): cannot read property 'push' of undefined when filtering by label. Fixes #3550
- #3560 feat(ui): Change default language for Resource Editor to YAML and store preference in localStorage. Fixes #3543
- #3566 fix: Skip TestStorageQuotaLimit
- #3568 docs: Migrate to homebrew-core (#3567)
- #3573 fix(ui): Fix multiple UI issues
- #3579 fix(server): Ignore not-JWT server tokens. Fixes #3562
- #3580 feat(ui): Enhanced workflow submission. Closes #3498
- #3581 fix: Argo Workflows does not honour global timeout if step/pod is not able to schedule
- #3592 docs: Document ingress set-up. Closes #3080
- #3596 fix(controller): Fix bug in util/RecoverWorkflowNameFromSelectorString. Add error handling
- #3598 docs: Memoization Documentation
- #3602 build: Initialize npm before installing swagger-markdown
- #3605 fix: Fix panic and provide better error message on watch endpoint
- #3607 fix(controller): Treat TooManyError same as Forbidden (i.e. try again). Fixes #3606
- #3609 fix(server): Re-establish watch on v1.Status errors. Fixes #3608
- #3610 feat: Allow parametrizable int fields
- #3612 docs: fix typo - replace "workfow" with "workflow"
- #3613 fix: Enforce metric Help must be the same for each metric Name
- #3614 build(cli)!: Zip binaries binaries. Closes #3576
- #3615 fix(controller): Panic when outputs in a cache entry are nil
- #3616 build: Increase timeout
- #3618 build: Disable TLS for dev mode. Fixes #3617
- #3623 docs: Update link to examples so works in raw github.com view
- #3624 fix: DAG level Output Artifacts on K8S and Kubelet executor
- #3627 docs: Correct indentation for codeblocks within bullet-points for "workflow-templates"
- #3631 feat(controller): Mutexes. Closes #2677
- #3632 fix: Simplify the WorkflowTemplateRef field validation to support all fields in WorkflowSpec except `Templates`
- #3634 docs: Add comment to config map about SSO auth-mode
- #3636 fix: Fix 'malformed request: field selector' error
- #3638 fix(controller): Carry-over labels for re-submitted workflows. Fixes #3622
- #3639 docs: Add documentation for configuring OSS artifact storage
- #3640 fix: Fixed flaky unit test TestFailSuspendedAndPendingNodesAfterDeadline
- #3643 fix: Don't panic on invalid template creation
- #3651 fix: Avoid overriding the Workflow parameter when it is merging with WorkflowTemplate parameter
- #3652 fix(server): Report v1.Status errors. Fixes #3608
- #3654 docs: Fix type in default-workflow-specs.md
- #3659 fix: interface{} values should be expanded with '%v'
- #3660 feat: Add submit options to 'argo cron create'
- #3661 fix(controller): Fix nested maps. Fixes #3653
- #3662 feat(ui): Add links to wft, cwf, or cwft to workflow list and details. Closes #3621
- #3669 fix: Fix collapsible nodes rendering
- #3670 build: Disable TLS in dev server
- #3671 fix: Argo linting does not respect namespace of declared resource
- #3674 feat(ui): Make UI errors recoverable. Fixes #3666
- #3675 fix(executor): Add retry on pods watch to handle timeout.
- #3679 fix: Couldn't Terminate/Stop the ResourceTemplate Workflow
- #3680 fix(controller): Tolerate malformed resources. Fixes #3677
- #3681 chore: Update issue templates
- #3684 fix: Re-introduce 1 second sleep to reconcile informer
- #3685 chore(ui): Add label to 'from' section in Workflow Drawer
- #3689 fix(controller): Adds ALL_POD_CHANGES_SIGNIFICANT
- #3691 fix: Fixed workflow queue duration if PVC creation is forbidden
- #3699 fix: Fix bug with 'argo delete --older'
- #3700 feat: Upgrade Minio v7 with support IRSA
- #3701 docs: Correct version. Fixes #3697
- #3702 chore: Introduce convenience methods for intstr.
- #3704 feat(server): Emit audit events for workflow event binding errors
- #3713 fix: Ingress docs
- #3714 docs(windows): add note about artifacts on windows
- #3716 fix: Ensure target task's onExit handlers are run
- #3717 fix(controller): Tolerate PDB delete race. Fixes #3706
- #3723 feat(ui): Sign-post IDE set-up. Closes #3720
- #3724 feat(operator): Add scope params for step startedAt and finishedAt #3708
- #3726 feat(server): Display events involved in the workflow. Closes #3673
- #3727 feat(controller): controller logs to be structured #2308
- #3736 docs: Remove misleading argument in workflow template dag examples. (…
- #3740 fix: Consider all children of TaskGroups in DAGs
- #3741 feat(ui): add node memoization information to node summary view
- #3744 feat: Github Workflow multi arch. Fixes #2080
- #3749 test: Simplify E2E test tear-down
- #3752 build: Lint files tagged with `e2e`. Closes #3750
- #3758 fix(server): Truncate creator label at 63 chars. Fixes #3756
- #3764 fix: TestWorkflowLevelSemaphore flakiness
- #3765 fix: Fix workflow onExit nodes not being displayed in UI
- #3772 docs: Remove confusing namespace
- #3777 chore: Format test code
- #3778 fix(ui): Correctly load and store namespace. Fixes #3773 and #3775
- #3782 fix(controller): Support exit handler on workflow templates.  Fixes #3737
- #3783 fix(ui): Remove outdated download links. Fixes #3762
- #3785 feat(executor): Add SYS_CHROOT to ease the setup of non-root deployments with PNS. Closes #3767
- #3787 fix(controller): Failure tolerant workflow archiving and offloading. Fixes #3786 and #3837
- #3792 build: Retry downloading Kustomize
- #3794 fix: Increase the requeue duration on checkForbiddenErrorAndResubmitAllowed
- #3795 fix: workflow template ref does not work in other namespace
- #3799 test: Increase cron test timeout to 7m
- #3801 ci: static files not being built with Homebrew and dirty binary. Fixes #3769
- #3804 docs: Add section on CronWorkflow crash recovery
- #3808 fix: Treat collapsed nodes as their siblings
- #3809 fix: Corrects CRD and Swagger types. Fixes #3578
- #3810 chore: add New Relic to USERS.md
- #3814 fix(docs): Add Entrypoint Cron Backfill example  Fixes #3807
- #3820 fix: Carry over ownerReferences from resubmitted workflow. Fixes #3818
- #3822 test: Skip TestStopBehavior and TestRetryOmit
- #3828 docs: Amend link to the Workflow CRD.  Fixes #3827
- #3831 ci: Remove external build dependency
- #3839 fix(ui): crash when workflow node has no memoization info. Fixes #3838
- #3844 docs: Update example README for duration
- #3846 chore: Reduce the 2x workflow save on Semaphore scenario
- #3847 feat: Show next scheduled cron run in UI/CLI
- #3848 ci: Fix build by providing clean repo inside Docker
- #3849 test: E2E test refactoring
- #3851 feat(controller): Do not try to create pods we know exists to prevent `exceeded quota` errors. Fixes #3791
- #3853 feat(controller): Always retry when `IsTransientErr` to tolerate transient errors. Fixes #3217
- #3854 ci: Changed tagging and amend multi-arch manifest
- #3860 chore: Added unittest for PVC exceed quota Closes #3561
- #3869 fix(ui): Improve error recovery. Fixes #3867
- #3871 ci: Create manifest from images again
- #3876 chore(ui): correct a typo
- #3883 fix(controller): Cron re-apply update
- #3889 feat(controller): Emit events for malformed cron workflows. See #3881
- #3890 fix: Workflow should fail on Pod failure before container starts Fixes #3879
- #3891 fix(executor): Replace default retry in executor with an increased value retryer
- #3892 chore: Remove unused imports
- #3900 chore(users): Add Fynd Trak to the list of Users
- #3901 Update workflow-controller-configmap.yaml
- #3906 fix(ui): use absolute URL to redirect from autocomplete list. Closes #3903
- #3908 ci: Fix broken Multiplatform builds
- #3909 test: Fix flaky e2e tests
- #3910 test: Fix TestRetryOmit and TestStopBehavior
- #3919 feat(controller): Set default retry factor to 2. Closes #3911

#### Contributors

* Alex Collins <!-- num=48 -->
* Alexander Zigelski <!-- num=2 -->
* Ang Gao <!-- num=1 -->
* Antoine Dao <!-- num=1 -->
* Carlos Montemuino <!-- num=1 -->
* Chris Hepner <!-- num=1 -->
* Greg Roodt <!-- num=1 -->
* Guillaume Hormiere <!-- num=1 -->
* Jared Welch <!-- num=1 -->
* Jie Zhang <!-- num=1 -->
* Jonny <!-- num=1 -->
* Kaushik B <!-- num=1 -->
* Lucas Theisen <!-- num=1 -->
* Michael Weibel <!-- num=1 -->
* Nirav Patel <!-- num=1 -->
* Noorain Panjwani <!-- num=1 -->
* Remington Breeze <!-- num=9 -->
* Saravanan Balasubramanian <!-- num=24 -->
* Sebastian Ortan <!-- num=1 -->
* Shannon <!-- num=1 -->
* Simon Behar <!-- num=26 -->
* Simon Frey <!-- num=2 -->
* Weston Platter <!-- num=2 -->
* Yuan Tang <!-- num=2 -->
* Zadjad Rezai <!-- num=1 -->
* dgiebert <!-- num=7 -->
* dherman <!-- num=1 -->
* haibingzhao <!-- num=1 -->
* joe <!-- num=1 -->
* juliusvonkohout <!-- num=1 -->
* sh-tatsuno <!-- num=2 -->
* yonirab <!-- num=1 -->
v2.11.0-rc3: tag_name: v2.11.0-rc3
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v2-11-a8b6189bf60e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.0-rc3/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.0-rc3/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.11.0-rc3/manifests/install.yaml
```

# Changes

### v2.11.0-rc3

#### Enhancements

* #3595 Hard to see child dependencies in UI with complicated workflows

#### Bug Fixes

- #3872 Custom metrics are not recorded for DAG tasks.
- #3942 LGTM (security) review tool flagged 5 issues in the code base
- #3960 Argo CLI (v2.10.0+) doesn't handle int64 values
- #3994 Upload via UI does not always seem to work
- #4001 v2.11: Investigate/fix `resubmitPendingPods` typo
- #4005 v2.11: Clicking on timeline tab shows events tab
- #4016 v2.11: Pod event in UI not working for `withItems`
- #4019 UI: Cron workflows filter not working as expected


#### Pull Requests

- #3886 fix: Custom metrics are not recorded for DAG tasks Fixes #3872
- #3928 fix: Fix UI selection issues
- #3950 fix: Fix children is not defined error
- #3963 fix(controller): Revert parameter value to `*string`. Fixes #3960
- #3967 feat(ui): Introduce modal DAG renderer. Fixes: #3595
- #3975 fix(server): Removes minor XSS vulnerability. Fixes #3942
- #3979 fix: Create global scope before workflow-level realtime metrics
- #3988 fix: Consider WorkflowTemplate metadata during validation
- #3995 fix(ui): Report errors when uploading files. Fixes #3994
- #4002 fix(controller): Script Output didn't set if template has RetryStrategy
- #4004 fix(controller): Revert `resubmitPendingPods` mistake. Fixes #4001
- #4006 fix(ui): Allow you to view timeline tab. Fixes #4005
- #4018 fix(ui): Correctly show pod events. Fixes #4016
- #4021 fix(ui): Do not save undefined namespace. Fixes #4019

#### Contributors

* Alex Collins <!-- num=8 -->
* Saravanan Balasubramanian <!-- num=2 -->
* Simon Behar <!-- num=5 -->

### v2.11.0-rc2

#### Bug Fixes

- #3926 Swagger UI does not allow you to send /api/v1/events requests
- #3927 Update default role for argo-server to support webhooks
- #3943 The version command fails due to lack of kubeconfig
- #3977 Dockerfile: When using ADD with more than one source file, the destination must be a directory and end with a /

#### Pull Requests

- #3686 feat: Step and Task Level Global Timeout
- #3929 fix(server): Adds missing webhook permissions. Fixes #3927
- #3932 fix(swagger): Correct item type. Fixes #3926
- #3945 fix(cli): Allow `argo version` without `KUBECONFIG`. Fixes #3943

#### Contributors

* Alex Collins <!-- num=5 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.0-rc1

#### Enhancements

* #2080 Argo Workflow for ARM?
* #2308 Migrate toward structured logging
* #2667 Trigger workflows from webhook
* #2677 Workflow mutexes
* #3061 Artifact Reference Subpath
* #3080 BASE_HREF  is not working
* #3491 support optional Input artifacts when artifacts not exist
* #3543 New UI editor should default to YAML
* #3567 Migrate Argo CLI to homebrew-core
* #3576 Reduce CLI binary size
* #3621 Make it easier to find out the cron/template/cluster template that the workflow was submitted from
* #3673 Surface K8s Events about Nodes to UI
* #3720 Sign-post how to use IDE CRD validation in UI
* #3735 Small correction to workflow template dag example
* #3786 More robust workflow archiving
* #3837 More robust node status offloading
* #3881 Better malformed resource handling
* #3911 Change default retry factor to 2
* #944 Step level memoization

#### Bug Fixes

- #3217 Operation cannot be fulfilled on resourcequotas "gke-resource-quotas": the object has been modified; please apply your changes to the latest version and try again
- #3498 Set workflow parameters in UI
- #3505 Panic on addOutputsToLocalScope
- #3513 Backoff exponent is off by one
- #3515 v2.9.3 Docker images report they are v2.10.0-rc1
- #3546 Typo in curl command
- #3562 Bearer token error argo + microk8s
- #3578 withItems incorrect type in full CRD
- #3606 Retry on `the server has received too many requests and has asked us to try again later (post pods)` errors
- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error
- #3622 Re-submitted workflows do not carry over labels
- #3653 v2.10.0-rc4 nested maps in loop rendered as Golang map[]
- #3666 Malformed WorkflowTemplate crashes whole UI
- #3677 Make the controller tolerant to malformed resources
- #3697 Argo apidocs no longer served
- #3706 Fix `Unable to delete PDB resource for workflow` error
- #3737 `argo submit` from a WorkflowTemplate with default exit handler produces "invalid field in spec" error
- #3756 Creator label too long.
- #3762 Invalid Argo CLI download link in Web UI
- #3769 v2.9.5 brew binary somehow getting replaced by dirty
- #3773 In the UI the namespace is getting replaced by "undefined"
- #3775 Pagesize = all not woking on Archived Workflow View
- #3791 argo cli report wrong workflow state
- #3807 Cron Backfill example doesn't work
- #3818 Re-submitted workflows do not carry over ownerReferences
- #3867 Some UI pages do not recover from errors
- #3879 Pod's phase is failed, but the workflow node status is succeeded.
- #3903 Workflow auto-completes to wrong URL

#### Other

- #3561 Build failed with flaky test TestStorageQuotaLimit
- #3617 Disable TLS when running in dev mode
- Update manifests to v2.11.0-rc1
- docs: Add 23mofang to USERS.md
- docs: Correct typo in `--instanceid`
- docs: memory base amount denominator documentation

#### Pull Requests

- #3063 feat(artifacts): retrieve subpath from unarchived ref artifact. Closes #3061
- #3277 feat: Add 'argo node set' command
- #3356 feat(controller): Step level memoization. Closes #944
- #3488 feat(server): Trigger workflows from webhooks. Closes #2667 
- #3490 fix: Exceeding quota with volumeClaimTemplates
- #3509 fix(controller): Do not panic on nil output value. Fixes #3505
- #3510 chore: Enable no-response bot
- #3512 fix(artifacts): support optional input artifacts, Fixes #3491
- #3514 fix(controller): Backoff exponent is off by one. Fixes #3513
- #3518 fix: String interpreted as boolean in labels
- #3519 ci: Make builds marginally faster. Fixes #3515
- #3526 feat: Collapse children in UI Workflow viewer
- #3528 fix: Fix when retrying Workflows with Omitted nodes
- #3532 fix: Panic on CLI Watch command
- #3536 docs: Workflow of workflows pattern
- #3537 docs: Synchronization documentation
- #3539 fix: Fix links in fields doc
- #3547 docs: Correct type Fixes #3546
- #3552 fix: Fix flakey TestRetryOmitted
- #3553 docs: Change formatting to put content into code block
- #3554 feat(cli): Support deleting resubmitted workflows
- #3555 fix(ui): cannot read property 'push' of undefined when filtering by label. Fixes #3550
- #3560 feat(ui): Change default language for Resource Editor to YAML and store preference in localStorage. Fixes #3543
- #3566 fix: Skip TestStorageQuotaLimit
- #3568 docs: Migrate to homebrew-core (#3567)
- #3573 fix(ui): Fix multiple UI issues
- #3579 fix(server): Ignore not-JWT server tokens. Fixes #3562
- #3580 feat(ui): Enhanced workflow submission. Closes #3498
- #3581 fix: Argo Workflows does not honour global timeout if step/pod is not able to schedule
- #3592 docs: Document ingress set-up. Closes #3080
- #3596 fix(controller): Fix bug in util/RecoverWorkflowNameFromSelectorString. Add error handling
- #3598 docs: Memoization Documentation
- #3602 build: Initialize npm before installing swagger-markdown
- #3605 fix: Fix panic and provide better error message on watch endpoint
- #3607 fix(controller): Treat TooManyError same as Forbidden (i.e. try again). Fixes #3606
- #3609 fix(server): Re-establish watch on v1.Status errors. Fixes #3608
- #3610 feat: Allow parametrizable int fields
- #3612 docs: fix typo - replace "workfow" with "workflow"
- #3613 fix: Enforce metric Help must be the same for each metric Name
- #3614 build(cli)!: Zip binaries binaries. Closes #3576
- #3615 fix(controller): Panic when outputs in a cache entry are nil
- #3616 build: Increase timeout
- #3618 build: Disable TLS for dev mode. Fixes #3617
- #3623 docs: Update link to examples so works in raw github.com view
- #3624 fix: DAG level Output Artifacts on K8S and Kubelet executor
- #3627 docs: Correct indentation for codeblocks within bullet-points for "workflow-templates"
- #3631 feat(controller): Mutexes. Closes #2677
- #3632 fix: Simplify the WorkflowTemplateRef field validation to support all fields in WorkflowSpec except `Templates`
- #3634 docs: Add comment to config map about SSO auth-mode
- #3636 fix: Fix 'malformed request: field selector' error
- #3638 fix(controller): Carry-over labels for re-submitted workflows. Fixes #3622
- #3639 docs: Add documentation for configuring OSS artifact storage
- #3640 fix: Fixed flaky unit test TestFailSuspendedAndPendingNodesAfterDeadline
- #3643 fix: Don't panic on invalid template creation
- #3651 fix: Avoid overriding the Workflow parameter when it is merging with WorkflowTemplate parameter
- #3652 fix(server): Report v1.Status errors. Fixes #3608
- #3654 docs: Fix type in default-workflow-specs.md
- #3659 fix: interface{} values should be expanded with '%v'
- #3660 feat: Add submit options to 'argo cron create'
- #3661 fix(controller): Fix nested maps. Fixes #3653
- #3662 feat(ui): Add links to wft, cwf, or cwft to workflow list and details. Closes #3621
- #3669 fix: Fix collapsible nodes rendering
- #3670 build: Disable TLS in dev server
- #3671 fix: Argo linting does not respect namespace of declared resource
- #3674 feat(ui): Make UI errors recoverable. Fixes #3666
- #3675 fix(executor): Add retry on pods watch to handle timeout.
- #3679 fix: Couldn't Terminate/Stop the ResourceTemplate Workflow
- #3680 fix(controller): Tolerate malformed resources. Fixes #3677
- #3681 chore: Update issue templates
- #3684 fix: Re-introduce 1 second sleep to reconcile informer
- #3685 chore(ui): Add label to 'from' section in Workflow Drawer
- #3689 fix(controller): Adds ALL_POD_CHANGES_SIGNIFICANT
- #3691 fix: Fixed workflow queue duration if PVC creation is forbidden
- #3699 fix: Fix bug with 'argo delete --older'
- #3700 feat: Upgrade Minio v7 with support IRSA
- #3701 docs: Correct version. Fixes #3697
- #3702 chore: Introduce convenience methods for intstr.
- #3704 feat(server): Emit audit events for workflow event binding errors
- #3713 fix: Ingress docs
- #3714 docs(windows): add note about artifacts on windows
- #3716 fix: Ensure target task's onExit handlers are run
- #3717 fix(controller): Tolerate PDB delete race. Fixes #3706
- #3723 feat(ui): Sign-post IDE set-up. Closes #3720
- #3724 feat(operator): Add scope params for step startedAt and finishedAt #3708
- #3726 feat(server): Display events involved in the workflow. Closes #3673
- #3727 feat(controller): controller logs to be structured #2308
- #3736 docs: Remove misleading argument in workflow template dag examples. (…
- #3740 fix: Consider all children of TaskGroups in DAGs
- #3741 feat(ui): add node memoization information to node summary view
- #3744 feat: Github Workflow multi arch. Fixes #2080
- #3749 test: Simplify E2E test tear-down
- #3752 build: Lint files tagged with `e2e`. Closes #3750
- #3758 fix(server): Truncate creator label at 63 chars. Fixes #3756
- #3764 fix: TestWorkflowLevelSemaphore flakiness
- #3765 fix: Fix workflow onExit nodes not being displayed in UI
- #3772 docs: Remove confusing namespace
- #3777 chore: Format test code
- #3778 fix(ui): Correctly load and store namespace. Fixes #3773 and #3775
- #3782 fix(controller): Support exit handler on workflow templates.  Fixes #3737
- #3783 fix(ui): Remove outdated download links. Fixes #3762
- #3785 feat(executor): Add SYS_CHROOT to ease the setup of non-root deployments with PNS. Closes #3767
- #3787 fix(controller): Failure tolerant workflow archiving and offloading. Fixes #3786 and #3837
- #3792 build: Retry downloading Kustomize
- #3794 fix: Increase the requeue duration on checkForbiddenErrorAndResubmitAllowed
- #3795 fix: workflow template ref does not work in other namespace
- #3799 test: Increase cron test timeout to 7m
- #3801 ci: static files not being built with Homebrew and dirty binary. Fixes #3769
- #3804 docs: Add section on CronWorkflow crash recovery
- #3808 fix: Treat collapsed nodes as their siblings
- #3809 fix: Corrects CRD and Swagger types. Fixes #3578
- #3810 chore: add New Relic to USERS.md
- #3814 fix(docs): Add Entrypoint Cron Backfill example  Fixes #3807
- #3820 fix: Carry over ownerReferences from resubmitted workflow. Fixes #3818
- #3822 test: Skip TestStopBehavior and TestRetryOmit
- #3828 docs: Amend link to the Workflow CRD.  Fixes #3827
- #3831 ci: Remove external build dependency
- #3839 fix(ui): crash when workflow node has no memoization info. Fixes #3838
- #3844 docs: Update example README for duration
- #3846 chore: Reduce the 2x workflow save on Semaphore scenario
- #3847 feat: Show next scheduled cron run in UI/CLI
- #3848 ci: Fix build by providing clean repo inside Docker
- #3849 test: E2E test refactoring
- #3851 feat(controller): Do not try to create pods we know exists to prevent `exceeded quota` errors. Fixes #3791
- #3853 feat(controller): Always retry when `IsTransientErr` to tolerate transient errors. Fixes #3217
- #3854 ci: Changed tagging and amend multi-arch manifest
- #3860 chore: Added unittest for PVC exceed quota Closes #3561
- #3869 fix(ui): Improve error recovery. Fixes #3867
- #3871 ci: Create manifest from images again
- #3876 chore(ui): correct a typo
- #3883 fix(controller): Cron re-apply update
- #3889 feat(controller): Emit events for malformed cron workflows. See #3881
- #3890 fix: Workflow should fail on Pod failure before container starts Fixes #3879
- #3891 fix(executor): Replace default retry in executor with an increased value retryer
- #3892 chore: Remove unused imports
- #3900 chore(users): Add Fynd Trak to the list of Users
- #3901 Update workflow-controller-configmap.yaml
- #3906 fix(ui): use absolute URL to redirect from autocomplete list. Closes #3903
- #3908 ci: Fix broken Multiplatform builds
- #3909 test: Fix flaky e2e tests
- #3910 test: Fix TestRetryOmit and TestStopBehavior
- #3919 feat(controller): Set default retry factor to 2. Closes #3911

#### Contributors

* Alex Collins <!-- num=48 -->
* Alexander Zigelski <!-- num=2 -->
* Ang Gao <!-- num=1 -->
* Antoine Dao <!-- num=1 -->
* Carlos Montemuino <!-- num=1 -->
* Chris Hepner <!-- num=1 -->
* Greg Roodt <!-- num=1 -->
* Guillaume Hormiere <!-- num=1 -->
* Jared Welch <!-- num=1 -->
* Jie Zhang <!-- num=1 -->
* Jonny <!-- num=1 -->
* Kaushik B <!-- num=1 -->
* Lucas Theisen <!-- num=1 -->
* Michael Weibel <!-- num=1 -->
* Nirav Patel <!-- num=1 -->
* Noorain Panjwani <!-- num=1 -->
* Remington Breeze <!-- num=9 -->
* Saravanan Balasubramanian <!-- num=24 -->
* Sebastian Ortan <!-- num=1 -->
* Shannon <!-- num=1 -->
* Simon Behar <!-- num=26 -->
* Simon Frey <!-- num=2 -->
* Weston Platter <!-- num=2 -->
* Yuan Tang <!-- num=2 -->
* Zadjad Rezai <!-- num=1 -->
* dgiebert <!-- num=7 -->
* dherman <!-- num=1 -->
* haibingzhao <!-- num=1 -->
* joe <!-- num=1 -->
* juliusvonkohout <!-- num=1 -->
* sh-tatsuno <!-- num=2 -->
* yonirab <!-- num=1 -->
v2.10.2: tag_name: v2.10.2
body: # Quick Start
## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.10.2/manifests/install.yaml
```

# ⚠️ Potentially Breaking Changes

You may be affected if:

- If you are using the Golang client.
- If you have substantially invalid workflow YAML. Mitigation: [read this document](https://docs.google.com/document/d/1usEwoP5YK8USNCfi2DbGDciOnJcgrCwlFBlbHABwmMI/edit).
- Binaries are now gzipped when uploaded to Github releases.

More information:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793

# Changes

The big enhancements are:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3358 feat(ui): Add Swagger UI
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3440 feat(server): Label workflows with creator. Closes #2437

## v2.10.2

#### Bug Fixes

- #3872 Custom metrics are not recorded for DAG tasks.
- #3942 LGTM (security) review tool flagged 5 issues in the code base
- #3943 The version command fails due to lack of kubeconfig

#### Pull Requests

- #3886 fix: Custom metrics are not recorded for DAG tasks Fixes #3872
- #3928 fix: Fix UI selection issues
- #3945 fix(cli): Allow `argo version` without `KUBECONFIG`. Fixes #3943
- #3975 fix(server): Removes minor XSS vulnerability. Fixes #3942
- #3979 fix: Create global scope before workflow-level realtime metrics
- #3988 fix: Consider WorkflowTemplate metadata during validation

#### Contributors

* Alex Collins <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=3 -->

## v2.10.1

#### Enhancements

* #3786 More robust workflow archiving
* #3837 More robust node status offloading

#### Bug Fixes

- #3737 `argo submit` from a WorkflowTemplate with default exit handler produces "invalid field in spec" error
- #3879 Pod's phase is failed, but the workflow node status is succeeded.
- #3903 Workflow auto-completes to wrong URL

#### Other

- #3561 Build failed with flaky test TestStorageQuotaLimit
- Update manifests to v2.10.1
- build: Copy Dockerfile lines from master
- chore: Merge .gitignore from master to prevent dirty

#### Pull Requests

- #3740 fix: Consider all children of TaskGroups in DAGs
- #3782 fix(controller): Support exit handler on workflow templates.  Fixes #3737
- #3787 fix(controller): Failure tolerant workflow archiving and offloading. Fixes #3786 and #3837
- #3860 chore: Added unittest for PVC exceed quota Closes #3561
- #3883 fix(controller): Cron re-apply update
- #3890 fix: Workflow should fail on Pod failure before container starts Fixes #3879
- #3891 fix(executor): Replace default retry in executor with an increased value retryer
- #3906 fix(ui): use absolute URL to redirect from autocomplete list. Closes #3903

#### Contributors

* Alex Collins <!-- num=5 -->
* Ang Gao <!-- num=1 -->
* Nirav Patel <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=3 -->
* Simon Behar <!-- num=1 -->

## v2.10.0

#### Enhancements

* #1117 the difference between error and failed status?
* #2343 git artifact fetch of reference fails due to missing credentials
* #2437 Search for workflows by creator
* #3183 Log during wk submit
* #3185 [UI] Perform batch action on workflows
* #3491 support optional Input artifacts when artifacts not exist
* #3576 Reduce CLI binary size
* #859 Workflow Open API validation

#### Bug Fixes

- #2793 argo lint fails with "invalid configuration: no configuration has been provided"
- #3073 msg="finished streaming call with code Unknown" error="context canceled
- #3097 Inconsistent behavior on deleting a running pod in DAG
- #3214 Pod not found when resubmit --memoized
- #3288 withParam value could not be parsed as a JSON list with nested list parameters
- #3342 workflow controller is unable to write events in other namespaces for versions >= v2.9-rc1
- #3383 CLI unusable without KUBECONFIG
- #3411 curl log REST endpoint causing memory error
- #3420 Sequence.start/end/count should be `IntOrString`
- #3436 Panic when volumeMount does not exist
- #3505 Panic on addOutputsToLocalScope
- #3513 Backoff exponent is off by one
- #3515 v2.9.3 Docker images report they are v2.10.0-rc1
- #3562 Bearer token error argo + microk8s
- #3606 Retry on `the server has received too many requests and has asked us to try again later (post pods)` errors
- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error
- #3622 Re-submitted workflows do not carry over labels
- #3653 v2.10.0-rc4 nested maps in loop rendered as Golang map[]
- #3706 Fix `Unable to delete PDB resource for workflow` error
- #3756 Creator label too long.

#### Other

- fix: Running pods are garaged in PodGC onSuccess

#### Pull Requests

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3137 docs: Updated WorkflowTemplateRef  on WFT and CWFT
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3248 fix(git): Fixes Git when using auth or fetch. Fixes #2343
- #3272 fix: Reapply Update if CronWorkflow resource changed
- #3276 docs: Add example for handling large output resutls
- #3278 fix: Fix delete --complete
- #3279 feat(cli): Add --logs to `argo [submit|resubmit|retry]. Closes #3183
- #3280 fix: Ensure child pods respect maxDuration
- #3283 docs: Update releasing.md
- #3284 docs: ArchiveLabelSelector document
- #3286 fix(server): Fix validation of overridden ref template parameters.
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3291 chore: Use GitHub Actions to build Docker Images to allow publishing Windows Images
- #3293 feat: Allow to change priority when resubmitting workflows
- #3294 build: Upload E2E diagnostics after failure
- #3297 build: Remove generated Swagger files.
- #3298 chore: Clean up unused constants
- #3301 feat(controller): Add support for Docker workflow executor for Windows nodes
- #3302 ci: Remove CircleCI
- #3304 docs: Rename Ant Financial to Ant Group
- #3308 build: Fix path to go-to-protobuf binary
- #3311 build: Pin `goimports` to working version
- #3315 fix(controller): Fix panic logging.
- #3316 docs: Document access token creation and usage
- #3317 fix(ui): Compiler error from workflows toolbar
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3327 fix: Remove broken SSO from quick-starts
- #3328 feat(controller): Label workflows with their source workflow template. Fixes #3326 
- #3330 fix(ui): runtime error from null savedOptions props
- #3335 chore: Avoid variable name collision with imported package name
- #3338 docs: Field fix (ParallelSteps -> WorkflowStep)
- #3339 feat: Attempt to resolve nested tags
- #3340 perf: Optimize time-based filtering on large number of workflows
- #3345 fix(controller): Allow events to be sent to non-argo namespace. Fixes #3342
- #3350 fix: Don't double-count metric events
- #3352 docs: Adding InVision to Users
- #3353 chore: Simplify deps by removing YAML
- #3354 test: Add e2e tags
- #3357 feat(cli): List only resubmitted workflows option
- #3358 feat(ui): Add Swagger UI
- #3359 fix(server): Fix `context cancelled` red herring error. Fixes #3073
- #3362 feat(controller): Add log message count as metrics.
- #3363 build: Enable Stale Bot
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3365 docs: Wellcome is using Argo in our Data Labs division
- #3367 chore: Remove unused code
- #3368 fix: Fix UI bug in DAGs
- #3369 docs: Make https://argoproj.github.io/argo/ 
- #3370 fix(ui): Confirmation of workflow actions
- #3371 feat: Expose certain queue metrics
- #3372 fix: Fix bug parsing parmeters
- #3375 fix(docs): Fix incorrect example of global parameter usage
- #3376 chore: update aws-sdk-go version
- #3377 chore(ui): Remove unused interfaces for artifacts
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793
- #3386 chore: Added CWFT WorkflowTemplateRef example
- #3392 chore: maybe -> may be
- #3398 docs: Update config example to include useSDKCreds
- #3401 fix: Fix concurrency issues with metrics
- #3403 fix: Ensure non-leaf DAG tasks have their onExit handler's run
- #3407 fix: Script steps fail with exceededQuota
- #3408 fix(ui): Render DAG with exit node
- #3414 docs: Include timezone name reference
- #3418 fix: Use a unique queue to visit nodes
- #3421 fix: Add struct-wide RWMutex to metrics
- #3423 feat(cli): Allow to view previously terminated container logs
- #3424 fix(cli): panic on wait command if event is null
- #3425 fix: Allow ints for sequence start/end/count. Fixes #3420
- #3426 fix: No panic on watch. Fixes #3411
- #3427 fix(sso): Remove unused `groups` claim. Fixes #3411
- #3430 docs: Add Sohu as official Argo user
- #3433 fix(docs): Update kubectl proxy URL
- #3435 fix: Ensure task dependencies run after onExit handler is fulfilled
- #3437 fix(controller): Prevent panic on nil node. Fixes #3436
- #3439 docs: typo in argo stop --help
- #3440 feat(server): Label workflows with creator. Closes #2437
- #3442 chore: Fix GitHub Actions Docker Image build 
- #3450 chore: Upgrade node-sass
- #3451 fix(controller): Respect the volumes of a workflowTemplateRef. Fixes …
- #3455 test(controller): Add memoization tests. See #3214
- #3456 docs: Fixed some typos
- #3464 docs: Add controller-level metrics
- #3465 docs: Fix CLI docs
- #3466 test(controller): Add memoization tests. See #3214 (#3455)
- #3467 docs: Add comments to NodePhase definition. Closes #1117.
- #3469 fix(controller): Fail workflow when pod is deleted with --force. Fixes #3097
- #3470 fix: Metric emission with retryStrategy
- #3473 test(controller): Ensure resubmitted workflows have correct labels
- #3476 docs: In quick-start. Use http, not https for link
- #3477 fix: Pass resolved arguments to onExit handler
- #3478 build: Simplify builds
- #3480 fix: Merge WorkflowTemplateRef with defaults workflow spec
- #3486 fix: link to server auth mode docs, adds Tulip as official user
- #3490 fix: Exceeding quota with volumeClaimTemplates
- #3492 docs: Add link to GitHub Actions in the badge
- #3493 fix(cli): Check mutual exclusivity for argo CLI flags
- #3494 feat: Support Bash Completions for More Resources
- #3495 chore: Added examples for exit handler for step and dag level
- #3497 build: Use `git rev-parse` to accomodate older gits
- #3499 build: Clear cmd docs before generating them
- #3501 [Snyk] Security upgrade swagger-ui-react from 3.28.0 to 3.29.0
- #3504 fix: Panic on releaseAllWorkflowLocks if Object is not Unstructured type
- #3509 fix(controller): Do not panic on nil output value. Fixes #3505
- #3512 fix(artifacts): support optional input artifacts, Fixes #3491
- #3514 fix(controller): Backoff exponent is off by one. Fixes #3513
- #3518 fix: String interpreted as boolean in labels
- #3519 ci: Make builds marginally faster. Fixes #3515
- #3528 fix: Fix when retrying Workflows with Omitted nodes
- #3532 fix: Panic on CLI Watch command
- #3539 fix: Fix links in fields doc
- #3552 fix: Fix flakey TestRetryOmitted
- #3555 fix(ui): cannot read property 'push' of undefined when filtering by label. Fixes #3550
- #3566 fix: Skip TestStorageQuotaLimit
- #3573 fix(ui): Fix multiple UI issues
- #3579 fix(server): Ignore not-JWT server tokens. Fixes #3562
- #3581 fix: Argo Workflows does not honour global timeout if step/pod is not able to schedule
- #3596 fix(controller): Fix bug in util/RecoverWorkflowNameFromSelectorString. Add error handling
- #3605 fix: Fix panic and provide better error message on watch endpoint
- #3607 fix(controller): Treat TooManyError same as Forbidden (i.e. try again). Fixes #3606
- #3609 fix(server): Re-establish watch on v1.Status errors. Fixes #3608
- #3613 fix: Enforce metric Help must be the same for each metric Name
- #3614 build(cli)!: Zip binaries binaries. Closes #3576
- #3624 fix: DAG level Output Artifacts on K8S and Kubelet executor
- #3632 fix: Simplify the WorkflowTemplateRef field validation to support all fields in WorkflowSpec except `Templates`
- #3636 fix: Fix 'malformed request: field selector' error
- #3638 fix(controller): Carry-over labels for re-submitted workflows. Fixes #3622
- #3640 fix: Fixed flaky unit test TestFailSuspendedAndPendingNodesAfterDeadline
- #3643 fix: Don't panic on invalid template creation
- #3651 fix: Avoid overriding the Workflow parameter when it is merging with WorkflowTemplate parameter
- #3652 fix(server): Report v1.Status errors. Fixes #3608
- #3659 fix: interface{} values should be expanded with '%v'
- #3661 fix(controller): Fix nested maps. Fixes #3653
- #3675 fix(executor): Add retry on pods watch to handle timeout.
- #3679 fix: Couldn't Terminate/Stop the ResourceTemplate Workflow
- #3684 fix: Re-introduce 1 second sleep to reconcile informer
- #3689 fix(controller): Adds ALL_POD_CHANGES_SIGNIFICANT
- #3691 fix: Fixed workflow queue duration if PVC creation is forbidden
- #3699 fix: Fix bug with 'argo delete --older'
- #3716 fix: Ensure target task's onExit handlers are run
- #3717 fix(controller): Tolerate PDB delete race. Fixes #3706
- #3758 fix(server): Truncate creator label at 63 chars. Fixes #3756
- #3794 fix: Increase the requeue duration on checkForbiddenErrorAndResubmitAllowed

#### Contributors

* 0x1D-1983 <!-- num=1 -->
* Alex Collins <!-- num=65 -->
* Daisuke Taniwaki <!-- num=1 -->
* Galen Han <!-- num=1 -->
* Guillaume Hormiere <!-- num=1 -->
* Jeff Uren <!-- num=1 -->
* Jie Zhang <!-- num=1 -->
* Jonny <!-- num=1 -->
* Markus Lippert <!-- num=3 -->
* Michael Crenshaw <!-- num=2 -->
* Niklas Vest <!-- num=1 -->
* Remington Breeze <!-- num=8 -->
* Saravanan Balasubramanian <!-- num=23 -->
* Simon Behar <!-- num=32 -->
* Snyk bot <!-- num=1 -->
* Trevor Foster <!-- num=1 -->
* Vlad Losev <!-- num=1 -->
* Weston Platter <!-- num=1 -->
* Yuan Tang <!-- num=11 -->
* Zach Aller <!-- num=1 -->
* Zach Himsel <!-- num=1 -->
* candonov <!-- num=2 -->
* haibingzhao <!-- num=1 -->
* maguowei <!-- num=1 -->

v2.11.0-rc2: tag_name: v2.11.0-rc2
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v2-11-a8b6189bf60e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.0-rc2/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.0-rc2/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.11.0-rc2/manifests/install.yaml
```

# Changes

### v2.11.0-rc2

#### Bug Fixes

- #3926 Swagger UI does not allow you to send /api/v1/events requests
- #3927 Update default role for argo-server to support webhooks
- #3943 The version command fails due to lack of kubeconfig
- #3977 Dockerfile: When using ADD with more than one source file, the destination must be a directory and end with a /

#### Pull Requests

- #3686 feat: Step and Task Level Global Timeout
- #3929 fix(server): Adds missing webhook permissions. Fixes #3927
- #3932 fix(swagger): Correct item type. Fixes #3926
- #3945 fix(cli): Allow `argo version` without `KUBECONFIG`. Fixes #3943

#### Contributors

* Alex Collins <!-- num=5 -->
* Saravanan Balasubramanian <!-- num=1 -->

### v2.11.0-rc1

#### Enhancements

* #2080 Argo Workflow for ARM?
* #2308 Migrate toward structured logging
* #2667 Trigger workflows from webhook
* #2677 Workflow mutexes
* #3061 Artifact Reference Subpath
* #3080 BASE_HREF  is not working
* #3491 support optional Input artifacts when artifacts not exist
* #3543 New UI editor should default to YAML
* #3567 Migrate Argo CLI to homebrew-core
* #3576 Reduce CLI binary size
* #3621 Make it easier to find out the cron/template/cluster template that the workflow was submitted from
* #3673 Surface K8s Events about Nodes to UI
* #3720 Sign-post how to use IDE CRD validation in UI
* #3735 Small correction to workflow template dag example
* #3786 More robust workflow archiving
* #3837 More robust node status offloading
* #3881 Better malformed resource handling
* #3911 Change default retry factor to 2
* #944 Step level memoization

#### Bug Fixes

- #3217 Operation cannot be fulfilled on resourcequotas "gke-resource-quotas": the object has been modified; please apply your changes to the latest version and try again
- #3498 Set workflow parameters in UI
- #3505 Panic on addOutputsToLocalScope
- #3513 Backoff exponent is off by one
- #3515 v2.9.3 Docker images report they are v2.10.0-rc1
- #3546 Typo in curl command
- #3562 Bearer token error argo + microk8s
- #3578 withItems incorrect type in full CRD
- #3606 Retry on `the server has received too many requests and has asked us to try again later (post pods)` errors
- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error
- #3622 Re-submitted workflows do not carry over labels
- #3653 v2.10.0-rc4 nested maps in loop rendered as Golang map[]
- #3666 Malformed WorkflowTemplate crashes whole UI
- #3677 Make the controller tolerant to malformed resources
- #3697 Argo apidocs no longer served
- #3706 Fix `Unable to delete PDB resource for workflow` error
- #3737 `argo submit` from a WorkflowTemplate with default exit handler produces "invalid field in spec" error
- #3756 Creator label too long.
- #3762 Invalid Argo CLI download link in Web UI
- #3769 v2.9.5 brew binary somehow getting replaced by dirty
- #3773 In the UI the namespace is getting replaced by "undefined"
- #3775 Pagesize = all not woking on Archived Workflow View
- #3791 argo cli report wrong workflow state
- #3807 Cron Backfill example doesn't work
- #3818 Re-submitted workflows do not carry over ownerReferences
- #3867 Some UI pages do not recover from errors
- #3879 Pod's phase is failed, but the workflow node status is succeeded.
- #3903 Workflow auto-completes to wrong URL

#### Other

- #3561 Build failed with flaky test TestStorageQuotaLimit
- #3617 Disable TLS when running in dev mode
- Update manifests to v2.11.0-rc1
- docs: Add 23mofang to USERS.md
- docs: Correct typo in `--instanceid`
- docs: memory base amount denominator documentation

#### Pull Requests

- #3063 feat(artifacts): retrieve subpath from unarchived ref artifact. Closes #3061
- #3277 feat: Add 'argo node set' command
- #3356 feat(controller): Step level memoization. Closes #944
- #3488 feat(server): Trigger workflows from webhooks. Closes #2667 
- #3490 fix: Exceeding quota with volumeClaimTemplates
- #3509 fix(controller): Do not panic on nil output value. Fixes #3505
- #3510 chore: Enable no-response bot
- #3512 fix(artifacts): support optional input artifacts, Fixes #3491
- #3514 fix(controller): Backoff exponent is off by one. Fixes #3513
- #3518 fix: String interpreted as boolean in labels
- #3519 ci: Make builds marginally faster. Fixes #3515
- #3526 feat: Collapse children in UI Workflow viewer
- #3528 fix: Fix when retrying Workflows with Omitted nodes
- #3532 fix: Panic on CLI Watch command
- #3536 docs: Workflow of workflows pattern
- #3537 docs: Synchronization documentation
- #3539 fix: Fix links in fields doc
- #3547 docs: Correct type Fixes #3546
- #3552 fix: Fix flakey TestRetryOmitted
- #3553 docs: Change formatting to put content into code block
- #3554 feat(cli): Support deleting resubmitted workflows
- #3555 fix(ui): cannot read property 'push' of undefined when filtering by label. Fixes #3550
- #3560 feat(ui): Change default language for Resource Editor to YAML and store preference in localStorage. Fixes #3543
- #3566 fix: Skip TestStorageQuotaLimit
- #3568 docs: Migrate to homebrew-core (#3567)
- #3573 fix(ui): Fix multiple UI issues
- #3579 fix(server): Ignore not-JWT server tokens. Fixes #3562
- #3580 feat(ui): Enhanced workflow submission. Closes #3498
- #3581 fix: Argo Workflows does not honour global timeout if step/pod is not able to schedule
- #3592 docs: Document ingress set-up. Closes #3080
- #3596 fix(controller): Fix bug in util/RecoverWorkflowNameFromSelectorString. Add error handling
- #3598 docs: Memoization Documentation
- #3602 build: Initialize npm before installing swagger-markdown
- #3605 fix: Fix panic and provide better error message on watch endpoint
- #3607 fix(controller): Treat TooManyError same as Forbidden (i.e. try again). Fixes #3606
- #3609 fix(server): Re-establish watch on v1.Status errors. Fixes #3608
- #3610 feat: Allow parametrizable int fields
- #3612 docs: fix typo - replace "workfow" with "workflow"
- #3613 fix: Enforce metric Help must be the same for each metric Name
- #3614 build(cli)!: Zip binaries binaries. Closes #3576
- #3615 fix(controller): Panic when outputs in a cache entry are nil
- #3616 build: Increase timeout
- #3618 build: Disable TLS for dev mode. Fixes #3617
- #3623 docs: Update link to examples so works in raw github.com view
- #3624 fix: DAG level Output Artifacts on K8S and Kubelet executor
- #3627 docs: Correct indentation for codeblocks within bullet-points for "workflow-templates"
- #3631 feat(controller): Mutexes. Closes #2677
- #3632 fix: Simplify the WorkflowTemplateRef field validation to support all fields in WorkflowSpec except `Templates`
- #3634 docs: Add comment to config map about SSO auth-mode
- #3636 fix: Fix 'malformed request: field selector' error
- #3638 fix(controller): Carry-over labels for re-submitted workflows. Fixes #3622
- #3639 docs: Add documentation for configuring OSS artifact storage
- #3640 fix: Fixed flaky unit test TestFailSuspendedAndPendingNodesAfterDeadline
- #3643 fix: Don't panic on invalid template creation
- #3651 fix: Avoid overriding the Workflow parameter when it is merging with WorkflowTemplate parameter
- #3652 fix(server): Report v1.Status errors. Fixes #3608
- #3654 docs: Fix type in default-workflow-specs.md
- #3659 fix: interface{} values should be expanded with '%v'
- #3660 feat: Add submit options to 'argo cron create'
- #3661 fix(controller): Fix nested maps. Fixes #3653
- #3662 feat(ui): Add links to wft, cwf, or cwft to workflow list and details. Closes #3621
- #3669 fix: Fix collapsible nodes rendering
- #3670 build: Disable TLS in dev server
- #3671 fix: Argo linting does not respect namespace of declared resource
- #3674 feat(ui): Make UI errors recoverable. Fixes #3666
- #3675 fix(executor): Add retry on pods watch to handle timeout.
- #3679 fix: Couldn't Terminate/Stop the ResourceTemplate Workflow
- #3680 fix(controller): Tolerate malformed resources. Fixes #3677
- #3681 chore: Update issue templates
- #3684 fix: Re-introduce 1 second sleep to reconcile informer
- #3685 chore(ui): Add label to 'from' section in Workflow Drawer
- #3689 fix(controller): Adds ALL_POD_CHANGES_SIGNIFICANT
- #3691 fix: Fixed workflow queue duration if PVC creation is forbidden
- #3699 fix: Fix bug with 'argo delete --older'
- #3700 feat: Upgrade Minio v7 with support IRSA
- #3701 docs: Correct version. Fixes #3697
- #3702 chore: Introduce convenience methods for intstr.
- #3704 feat(server): Emit audit events for workflow event binding errors
- #3713 fix: Ingress docs
- #3714 docs(windows): add note about artifacts on windows
- #3716 fix: Ensure target task's onExit handlers are run
- #3717 fix(controller): Tolerate PDB delete race. Fixes #3706
- #3723 feat(ui): Sign-post IDE set-up. Closes #3720
- #3724 feat(operator): Add scope params for step startedAt and finishedAt #3708
- #3726 feat(server): Display events involved in the workflow. Closes #3673
- #3727 feat(controller): controller logs to be structured #2308
- #3736 docs: Remove misleading argument in workflow template dag examples. (…
- #3740 fix: Consider all children of TaskGroups in DAGs
- #3741 feat(ui): add node memoization information to node summary view
- #3744 feat: Github Workflow multi arch. Fixes #2080
- #3749 test: Simplify E2E test tear-down
- #3752 build: Lint files tagged with `e2e`. Closes #3750
- #3758 fix(server): Truncate creator label at 63 chars. Fixes #3756
- #3764 fix: TestWorkflowLevelSemaphore flakiness
- #3765 fix: Fix workflow onExit nodes not being displayed in UI
- #3772 docs: Remove confusing namespace
- #3777 chore: Format test code
- #3778 fix(ui): Correctly load and store namespace. Fixes #3773 and #3775
- #3782 fix(controller): Support exit handler on workflow templates.  Fixes #3737
- #3783 fix(ui): Remove outdated download links. Fixes #3762
- #3785 feat(executor): Add SYS_CHROOT to ease the setup of non-root deployments with PNS. Closes #3767
- #3787 fix(controller): Failure tolerant workflow archiving and offloading. Fixes #3786 and #3837
- #3792 build: Retry downloading Kustomize
- #3794 fix: Increase the requeue duration on checkForbiddenErrorAndResubmitAllowed
- #3795 fix: workflow template ref does not work in other namespace
- #3799 test: Increase cron test timeout to 7m
- #3801 ci: static files not being built with Homebrew and dirty binary. Fixes #3769
- #3804 docs: Add section on CronWorkflow crash recovery
- #3808 fix: Treat collapsed nodes as their siblings
- #3809 fix: Corrects CRD and Swagger types. Fixes #3578
- #3810 chore: add New Relic to USERS.md
- #3814 fix(docs): Add Entrypoint Cron Backfill example  Fixes #3807
- #3820 fix: Carry over ownerReferences from resubmitted workflow. Fixes #3818
- #3822 test: Skip TestStopBehavior and TestRetryOmit
- #3828 docs: Amend link to the Workflow CRD.  Fixes #3827
- #3831 ci: Remove external build dependency
- #3839 fix(ui): crash when workflow node has no memoization info. Fixes #3838
- #3844 docs: Update example README for duration
- #3846 chore: Reduce the 2x workflow save on Semaphore scenario
- #3847 feat: Show next scheduled cron run in UI/CLI
- #3848 ci: Fix build by providing clean repo inside Docker
- #3849 test: E2E test refactoring
- #3851 feat(controller): Do not try to create pods we know exists to prevent `exceeded quota` errors. Fixes #3791
- #3853 feat(controller): Always retry when `IsTransientErr` to tolerate transient errors. Fixes #3217
- #3854 ci: Changed tagging and amend multi-arch manifest
- #3860 chore: Added unittest for PVC exceed quota Closes #3561
- #3869 fix(ui): Improve error recovery. Fixes #3867
- #3871 ci: Create manifest from images again
- #3876 chore(ui): correct a typo
- #3883 fix(controller): Cron re-apply update
- #3889 feat(controller): Emit events for malformed cron workflows. See #3881
- #3890 fix: Workflow should fail on Pod failure before container starts Fixes #3879
- #3891 fix(executor): Replace default retry in executor with an increased value retryer
- #3892 chore: Remove unused imports
- #3900 chore(users): Add Fynd Trak to the list of Users
- #3901 Update workflow-controller-configmap.yaml
- #3906 fix(ui): use absolute URL to redirect from autocomplete list. Closes #3903
- #3908 ci: Fix broken Multiplatform builds
- #3909 test: Fix flaky e2e tests
- #3910 test: Fix TestRetryOmit and TestStopBehavior
- #3919 feat(controller): Set default retry factor to 2. Closes #3911

#### Contributors

* Alex Collins <!-- num=48 -->
* Alexander Zigelski <!-- num=2 -->
* Ang Gao <!-- num=1 -->
* Antoine Dao <!-- num=1 -->
* Carlos Montemuino <!-- num=1 -->
* Chris Hepner <!-- num=1 -->
* Greg Roodt <!-- num=1 -->
* Guillaume Hormiere <!-- num=1 -->
* Jared Welch <!-- num=1 -->
* Jie Zhang <!-- num=1 -->
* Jonny <!-- num=1 -->
* Kaushik B <!-- num=1 -->
* Lucas Theisen <!-- num=1 -->
* Michael Weibel <!-- num=1 -->
* Nirav Patel <!-- num=1 -->
* Noorain Panjwani <!-- num=1 -->
* Remington Breeze <!-- num=9 -->
* Saravanan Balasubramanian <!-- num=24 -->
* Sebastian Ortan <!-- num=1 -->
* Shannon <!-- num=1 -->
* Simon Behar <!-- num=26 -->
* Simon Frey <!-- num=2 -->
* Weston Platter <!-- num=2 -->
* Yuan Tang <!-- num=2 -->
* Zadjad Rezai <!-- num=1 -->
* dgiebert <!-- num=7 -->
* dherman <!-- num=1 -->
* haibingzhao <!-- num=1 -->
* joe <!-- num=1 -->
* juliusvonkohout <!-- num=1 -->
* sh-tatsuno <!-- num=2 -->
* yonirab <!-- num=1 -->
v2.10.1: tag_name: v2.10.1
body: # Quick Start
## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.10.1/manifests/install.yaml
```

# ⚠️ Potentially Breaking Changes

You may be affected if:

- If you are using the Golang client.
- If you have substantially invalid workflow YAML. Mitigation: [read this document](https://docs.google.com/document/d/1usEwoP5YK8USNCfi2DbGDciOnJcgrCwlFBlbHABwmMI/edit).
- Binaries are now gzipped when uploaded to Github releases.

More information:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793

# Changes

The big enhancements are:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3358 feat(ui): Add Swagger UI
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3440 feat(server): Label workflows with creator. Closes #2437

## v2.10.1

#### Enhancements

* #3786 More robust workflow archiving
* #3837 More robust node status offloading

#### Bug Fixes

- #3737 `argo submit` from a WorkflowTemplate with default exit handler produces "invalid field in spec" error
- #3879 Pod's phase is failed, but the workflow node status is succeeded.
- #3903 Workflow auto-completes to wrong URL

#### Other

- #3561 Build failed with flaky test TestStorageQuotaLimit
- Update manifests to v2.10.1
- build: Copy Dockerfile lines from master
- chore: Merge .gitignore from master to prevent dirty

#### Pull Requests

- #3740 fix: Consider all children of TaskGroups in DAGs
- #3782 fix(controller): Support exit handler on workflow templates.  Fixes #3737
- #3787 fix(controller): Failure tolerant workflow archiving and offloading. Fixes #3786 and #3837
- #3860 chore: Added unittest for PVC exceed quota Closes #3561
- #3883 fix(controller): Cron re-apply update
- #3890 fix: Workflow should fail on Pod failure before container starts Fixes #3879
- #3891 fix(executor): Replace default retry in executor with an increased value retryer
- #3906 fix(ui): use absolute URL to redirect from autocomplete list. Closes #3903

#### Contributors

* Alex Collins <!-- num=5 -->
* Ang Gao <!-- num=1 -->
* Nirav Patel <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=3 -->
* Simon Behar <!-- num=1 -->

## v2.10.0

#### Enhancements

* #1117 the difference between error and failed status?
* #2343 git artifact fetch of reference fails due to missing credentials
* #2437 Search for workflows by creator
* #3183 Log during wk submit
* #3185 [UI] Perform batch action on workflows
* #3491 support optional Input artifacts when artifacts not exist
* #3576 Reduce CLI binary size
* #859 Workflow Open API validation

#### Bug Fixes

- #2793 argo lint fails with "invalid configuration: no configuration has been provided"
- #3073 msg="finished streaming call with code Unknown" error="context canceled
- #3097 Inconsistent behavior on deleting a running pod in DAG
- #3214 Pod not found when resubmit --memoized
- #3288 withParam value could not be parsed as a JSON list with nested list parameters
- #3342 workflow controller is unable to write events in other namespaces for versions >= v2.9-rc1
- #3383 CLI unusable without KUBECONFIG
- #3411 curl log REST endpoint causing memory error
- #3420 Sequence.start/end/count should be `IntOrString`
- #3436 Panic when volumeMount does not exist
- #3505 Panic on addOutputsToLocalScope
- #3513 Backoff exponent is off by one
- #3515 v2.9.3 Docker images report they are v2.10.0-rc1
- #3562 Bearer token error argo + microk8s
- #3606 Retry on `the server has received too many requests and has asked us to try again later (post pods)` errors
- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error
- #3622 Re-submitted workflows do not carry over labels
- #3653 v2.10.0-rc4 nested maps in loop rendered as Golang map[]
- #3706 Fix `Unable to delete PDB resource for workflow` error
- #3756 Creator label too long.

#### Other

- fix: Running pods are garaged in PodGC onSuccess

#### Pull Requests

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3137 docs: Updated WorkflowTemplateRef  on WFT and CWFT
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3248 fix(git): Fixes Git when using auth or fetch. Fixes #2343
- #3272 fix: Reapply Update if CronWorkflow resource changed
- #3276 docs: Add example for handling large output resutls
- #3278 fix: Fix delete --complete
- #3279 feat(cli): Add --logs to `argo [submit|resubmit|retry]. Closes #3183
- #3280 fix: Ensure child pods respect maxDuration
- #3283 docs: Update releasing.md
- #3284 docs: ArchiveLabelSelector document
- #3286 fix(server): Fix validation of overridden ref template parameters.
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3291 chore: Use GitHub Actions to build Docker Images to allow publishing Windows Images
- #3293 feat: Allow to change priority when resubmitting workflows
- #3294 build: Upload E2E diagnostics after failure
- #3297 build: Remove generated Swagger files.
- #3298 chore: Clean up unused constants
- #3301 feat(controller): Add support for Docker workflow executor for Windows nodes
- #3302 ci: Remove CircleCI
- #3304 docs: Rename Ant Financial to Ant Group
- #3308 build: Fix path to go-to-protobuf binary
- #3311 build: Pin `goimports` to working version
- #3315 fix(controller): Fix panic logging.
- #3316 docs: Document access token creation and usage
- #3317 fix(ui): Compiler error from workflows toolbar
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3327 fix: Remove broken SSO from quick-starts
- #3328 feat(controller): Label workflows with their source workflow template. Fixes #3326 
- #3330 fix(ui): runtime error from null savedOptions props
- #3335 chore: Avoid variable name collision with imported package name
- #3338 docs: Field fix (ParallelSteps -> WorkflowStep)
- #3339 feat: Attempt to resolve nested tags
- #3340 perf: Optimize time-based filtering on large number of workflows
- #3345 fix(controller): Allow events to be sent to non-argo namespace. Fixes #3342
- #3350 fix: Don't double-count metric events
- #3352 docs: Adding InVision to Users
- #3353 chore: Simplify deps by removing YAML
- #3354 test: Add e2e tags
- #3357 feat(cli): List only resubmitted workflows option
- #3358 feat(ui): Add Swagger UI
- #3359 fix(server): Fix `context cancelled` red herring error. Fixes #3073
- #3362 feat(controller): Add log message count as metrics.
- #3363 build: Enable Stale Bot
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3365 docs: Wellcome is using Argo in our Data Labs division
- #3367 chore: Remove unused code
- #3368 fix: Fix UI bug in DAGs
- #3369 docs: Make https://argoproj.github.io/argo/ 
- #3370 fix(ui): Confirmation of workflow actions
- #3371 feat: Expose certain queue metrics
- #3372 fix: Fix bug parsing parmeters
- #3375 fix(docs): Fix incorrect example of global parameter usage
- #3376 chore: update aws-sdk-go version
- #3377 chore(ui): Remove unused interfaces for artifacts
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793
- #3386 chore: Added CWFT WorkflowTemplateRef example
- #3392 chore: maybe -> may be
- #3398 docs: Update config example to include useSDKCreds
- #3401 fix: Fix concurrency issues with metrics
- #3403 fix: Ensure non-leaf DAG tasks have their onExit handler's run
- #3407 fix: Script steps fail with exceededQuota
- #3408 fix(ui): Render DAG with exit node
- #3414 docs: Include timezone name reference
- #3418 fix: Use a unique queue to visit nodes
- #3421 fix: Add struct-wide RWMutex to metrics
- #3423 feat(cli): Allow to view previously terminated container logs
- #3424 fix(cli): panic on wait command if event is null
- #3425 fix: Allow ints for sequence start/end/count. Fixes #3420
- #3426 fix: No panic on watch. Fixes #3411
- #3427 fix(sso): Remove unused `groups` claim. Fixes #3411
- #3430 docs: Add Sohu as official Argo user
- #3433 fix(docs): Update kubectl proxy URL
- #3435 fix: Ensure task dependencies run after onExit handler is fulfilled
- #3437 fix(controller): Prevent panic on nil node. Fixes #3436
- #3439 docs: typo in argo stop --help
- #3440 feat(server): Label workflows with creator. Closes #2437
- #3442 chore: Fix GitHub Actions Docker Image build 
- #3450 chore: Upgrade node-sass
- #3451 fix(controller): Respect the volumes of a workflowTemplateRef. Fixes …
- #3455 test(controller): Add memoization tests. See #3214
- #3456 docs: Fixed some typos
- #3464 docs: Add controller-level metrics
- #3465 docs: Fix CLI docs
- #3466 test(controller): Add memoization tests. See #3214 (#3455)
- #3467 docs: Add comments to NodePhase definition. Closes #1117.
- #3469 fix(controller): Fail workflow when pod is deleted with --force. Fixes #3097
- #3470 fix: Metric emission with retryStrategy
- #3473 test(controller): Ensure resubmitted workflows have correct labels
- #3476 docs: In quick-start. Use http, not https for link
- #3477 fix: Pass resolved arguments to onExit handler
- #3478 build: Simplify builds
- #3480 fix: Merge WorkflowTemplateRef with defaults workflow spec
- #3486 fix: link to server auth mode docs, adds Tulip as official user
- #3490 fix: Exceeding quota with volumeClaimTemplates
- #3492 docs: Add link to GitHub Actions in the badge
- #3493 fix(cli): Check mutual exclusivity for argo CLI flags
- #3494 feat: Support Bash Completions for More Resources
- #3495 chore: Added examples for exit handler for step and dag level
- #3497 build: Use `git rev-parse` to accomodate older gits
- #3499 build: Clear cmd docs before generating them
- #3501 [Snyk] Security upgrade swagger-ui-react from 3.28.0 to 3.29.0
- #3504 fix: Panic on releaseAllWorkflowLocks if Object is not Unstructured type
- #3509 fix(controller): Do not panic on nil output value. Fixes #3505
- #3512 fix(artifacts): support optional input artifacts, Fixes #3491
- #3514 fix(controller): Backoff exponent is off by one. Fixes #3513
- #3518 fix: String interpreted as boolean in labels
- #3519 ci: Make builds marginally faster. Fixes #3515
- #3528 fix: Fix when retrying Workflows with Omitted nodes
- #3532 fix: Panic on CLI Watch command
- #3539 fix: Fix links in fields doc
- #3552 fix: Fix flakey TestRetryOmitted
- #3555 fix(ui): cannot read property 'push' of undefined when filtering by label. Fixes #3550
- #3566 fix: Skip TestStorageQuotaLimit
- #3573 fix(ui): Fix multiple UI issues
- #3579 fix(server): Ignore not-JWT server tokens. Fixes #3562
- #3581 fix: Argo Workflows does not honour global timeout if step/pod is not able to schedule
- #3596 fix(controller): Fix bug in util/RecoverWorkflowNameFromSelectorString. Add error handling
- #3605 fix: Fix panic and provide better error message on watch endpoint
- #3607 fix(controller): Treat TooManyError same as Forbidden (i.e. try again). Fixes #3606
- #3609 fix(server): Re-establish watch on v1.Status errors. Fixes #3608
- #3613 fix: Enforce metric Help must be the same for each metric Name
- #3614 build(cli)!: Zip binaries binaries. Closes #3576
- #3624 fix: DAG level Output Artifacts on K8S and Kubelet executor
- #3632 fix: Simplify the WorkflowTemplateRef field validation to support all fields in WorkflowSpec except `Templates`
- #3636 fix: Fix 'malformed request: field selector' error
- #3638 fix(controller): Carry-over labels for re-submitted workflows. Fixes #3622
- #3640 fix: Fixed flaky unit test TestFailSuspendedAndPendingNodesAfterDeadline
- #3643 fix: Don't panic on invalid template creation
- #3651 fix: Avoid overriding the Workflow parameter when it is merging with WorkflowTemplate parameter
- #3652 fix(server): Report v1.Status errors. Fixes #3608
- #3659 fix: interface{} values should be expanded with '%v'
- #3661 fix(controller): Fix nested maps. Fixes #3653
- #3675 fix(executor): Add retry on pods watch to handle timeout.
- #3679 fix: Couldn't Terminate/Stop the ResourceTemplate Workflow
- #3684 fix: Re-introduce 1 second sleep to reconcile informer
- #3689 fix(controller): Adds ALL_POD_CHANGES_SIGNIFICANT
- #3691 fix: Fixed workflow queue duration if PVC creation is forbidden
- #3699 fix: Fix bug with 'argo delete --older'
- #3716 fix: Ensure target task's onExit handlers are run
- #3717 fix(controller): Tolerate PDB delete race. Fixes #3706
- #3758 fix(server): Truncate creator label at 63 chars. Fixes #3756
- #3794 fix: Increase the requeue duration on checkForbiddenErrorAndResubmitAllowed

#### Contributors

* 0x1D-1983 <!-- num=1 -->
* Alex Collins <!-- num=65 -->
* Daisuke Taniwaki <!-- num=1 -->
* Galen Han <!-- num=1 -->
* Guillaume Hormiere <!-- num=1 -->
* Jeff Uren <!-- num=1 -->
* Jie Zhang <!-- num=1 -->
* Jonny <!-- num=1 -->
* Markus Lippert <!-- num=3 -->
* Michael Crenshaw <!-- num=2 -->
* Niklas Vest <!-- num=1 -->
* Remington Breeze <!-- num=8 -->
* Saravanan Balasubramanian <!-- num=23 -->
* Simon Behar <!-- num=32 -->
* Snyk bot <!-- num=1 -->
* Trevor Foster <!-- num=1 -->
* Vlad Losev <!-- num=1 -->
* Weston Platter <!-- num=1 -->
* Yuan Tang <!-- num=11 -->
* Zach Aller <!-- num=1 -->
* Zach Himsel <!-- num=1 -->
* candonov <!-- num=2 -->
* haibingzhao <!-- num=1 -->
* maguowei <!-- num=1 -->

v2.11.0-rc1: tag_name: v2.11.0-rc1
body: # Quick Start

## What's New?

Find out in [our blog post](https://blog.argoproj.io/argo-workflows-v2-11-a8b6189bf60e)

## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.0-rc1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.11.0-rc1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.11.0-rc1/manifests/install.yaml
```

# Changes

#### Enhancements

* #2080 Argo Workflow for ARM?
* #2308 Migrate toward structured logging
* #2667 Trigger workflows from webhook
* #2677 Workflow mutexes
* #3061 Artifact Reference Subpath
* #3080 BASE_HREF  is not working
* #3491 support optional Input artifacts when artifacts not exist
* #3543 New UI editor should default to YAML
* #3567 Migrate Argo CLI to homebrew-core
* #3576 Reduce CLI binary size
* #3621 Make it easier to find out the cron/template/cluster template that the workflow was submitted from
* #3673 Surface K8s Events about Nodes to UI
* #3720 Sign-post how to use IDE CRD validation in UI
* #3735 Small correction to workflow template dag example
* #3786 More robust workflow archiving
* #3837 More robust node status offloading
* #3881 Better malformed resource handling
* #3911 Change default retry factor to 2
* #944 Step level memoization

#### Bug Fixes

- #3217 Operation cannot be fulfilled on resourcequotas "gke-resource-quotas": the object has been modified; please apply your changes to the latest version and try again
- #3498 Set workflow parameters in UI
- #3505 Panic on addOutputsToLocalScope
- #3513 Backoff exponent is off by one
- #3515 v2.9.3 Docker images report they are v2.10.0-rc1
- #3546 Typo in curl command
- #3562 Bearer token error argo + microk8s
- #3578 withItems incorrect type in full CRD
- #3606 Retry on `the server has received too many requests and has asked us to try again later (post pods)` errors
- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error
- #3622 Re-submitted workflows do not carry over labels
- #3653 v2.10.0-rc4 nested maps in loop rendered as Golang map[]
- #3666 Malformed WorkflowTemplate crashes whole UI
- #3677 Make the controller tolerant to malformed resources
- #3697 Argo apidocs no longer served
- #3706 Fix `Unable to delete PDB resource for workflow` error
- #3737 `argo submit` from a WorkflowTemplate with default exit handler produces "invalid field in spec" error
- #3756 Creator label too long.
- #3762 Invalid Argo CLI download link in Web UI
- #3769 v2.9.5 brew binary somehow getting replaced by dirty
- #3773 In the UI the namespace is getting replaced by "undefined"
- #3775 Pagesize = all not woking on Archived Workflow View
- #3791 argo cli report wrong workflow state
- #3807 Cron Backfill example doesn't work
- #3818 Re-submitted workflows do not carry over ownerReferences
- #3867 Some UI pages do not recover from errors
- #3879 Pod's phase is failed, but the workflow node status is succeeded.
- #3903 Workflow auto-completes to wrong URL

#### Other

- #3561 Build failed with flaky test TestStorageQuotaLimit
- #3617 Disable TLS when running in dev mode
- Update manifests to v2.11.0-rc1
- docs: Add 23mofang to USERS.md
- docs: Correct typo in `--instanceid`
- docs: memory base amount denominator documentation

#### Pull Requests

- #3063 feat(artifacts): retrieve subpath from unarchived ref artifact. Closes #3061
- #3277 feat: Add 'argo node set' command
- #3356 feat(controller): Step level memoization. Closes #944
- #3488 feat(server): Trigger workflows from webhooks. Closes #2667 
- #3490 fix: Exceeding quota with volumeClaimTemplates
- #3509 fix(controller): Do not panic on nil output value. Fixes #3505
- #3510 chore: Enable no-response bot
- #3512 fix(artifacts): support optional input artifacts, Fixes #3491
- #3514 fix(controller): Backoff exponent is off by one. Fixes #3513
- #3518 fix: String interpreted as boolean in labels
- #3519 ci: Make builds marginally faster. Fixes #3515
- #3526 feat: Collapse children in UI Workflow viewer
- #3528 fix: Fix when retrying Workflows with Omitted nodes
- #3532 fix: Panic on CLI Watch command
- #3536 docs: Workflow of workflows pattern
- #3537 docs: Synchronization documentation
- #3539 fix: Fix links in fields doc
- #3547 docs: Correct type Fixes #3546
- #3552 fix: Fix flakey TestRetryOmitted
- #3553 docs: Change formatting to put content into code block
- #3554 feat(cli): Support deleting resubmitted workflows
- #3555 fix(ui): cannot read property 'push' of undefined when filtering by label. Fixes #3550
- #3560 feat(ui): Change default language for Resource Editor to YAML and store preference in localStorage. Fixes #3543
- #3566 fix: Skip TestStorageQuotaLimit
- #3568 docs: Migrate to homebrew-core (#3567)
- #3573 fix(ui): Fix multiple UI issues
- #3579 fix(server): Ignore not-JWT server tokens. Fixes #3562
- #3580 feat(ui): Enhanced workflow submission. Closes #3498
- #3581 fix: Argo Workflows does not honour global timeout if step/pod is not able to schedule
- #3592 docs: Document ingress set-up. Closes #3080
- #3596 fix(controller): Fix bug in util/RecoverWorkflowNameFromSelectorString. Add error handling
- #3598 docs: Memoization Documentation
- #3602 build: Initialize npm before installing swagger-markdown
- #3605 fix: Fix panic and provide better error message on watch endpoint
- #3607 fix(controller): Treat TooManyError same as Forbidden (i.e. try again). Fixes #3606
- #3609 fix(server): Re-establish watch on v1.Status errors. Fixes #3608
- #3610 feat: Allow parametrizable int fields
- #3612 docs: fix typo - replace "workfow" with "workflow"
- #3613 fix: Enforce metric Help must be the same for each metric Name
- #3614 build(cli)!: Zip binaries binaries. Closes #3576
- #3615 fix(controller): Panic when outputs in a cache entry are nil
- #3616 build: Increase timeout
- #3618 build: Disable TLS for dev mode. Fixes #3617
- #3623 docs: Update link to examples so works in raw github.com view
- #3624 fix: DAG level Output Artifacts on K8S and Kubelet executor
- #3627 docs: Correct indentation for codeblocks within bullet-points for "workflow-templates"
- #3631 feat(controller): Mutexes. Closes #2677
- #3632 fix: Simplify the WorkflowTemplateRef field validation to support all fields in WorkflowSpec except `Templates`
- #3634 docs: Add comment to config map about SSO auth-mode
- #3636 fix: Fix 'malformed request: field selector' error
- #3638 fix(controller): Carry-over labels for re-submitted workflows. Fixes #3622
- #3639 docs: Add documentation for configuring OSS artifact storage
- #3640 fix: Fixed flaky unit test TestFailSuspendedAndPendingNodesAfterDeadline
- #3643 fix: Don't panic on invalid template creation
- #3651 fix: Avoid overriding the Workflow parameter when it is merging with WorkflowTemplate parameter
- #3652 fix(server): Report v1.Status errors. Fixes #3608
- #3654 docs: Fix type in default-workflow-specs.md
- #3659 fix: interface{} values should be expanded with '%v'
- #3660 feat: Add submit options to 'argo cron create'
- #3661 fix(controller): Fix nested maps. Fixes #3653
- #3662 feat(ui): Add links to wft, cwf, or cwft to workflow list and details. Closes #3621
- #3669 fix: Fix collapsible nodes rendering
- #3670 build: Disable TLS in dev server
- #3671 fix: Argo linting does not respect namespace of declared resource
- #3674 feat(ui): Make UI errors recoverable. Fixes #3666
- #3675 fix(executor): Add retry on pods watch to handle timeout.
- #3679 fix: Couldn't Terminate/Stop the ResourceTemplate Workflow
- #3680 fix(controller): Tolerate malformed resources. Fixes #3677
- #3681 chore: Update issue templates
- #3684 fix: Re-introduce 1 second sleep to reconcile informer
- #3685 chore(ui): Add label to 'from' section in Workflow Drawer
- #3689 fix(controller): Adds ALL_POD_CHANGES_SIGNIFICANT
- #3691 fix: Fixed workflow queue duration if PVC creation is forbidden
- #3699 fix: Fix bug with 'argo delete --older'
- #3700 feat: Upgrade Minio v7 with support IRSA
- #3701 docs: Correct version. Fixes #3697
- #3702 chore: Introduce convenience methods for intstr.
- #3704 feat(server): Emit audit events for workflow event binding errors
- #3713 fix: Ingress docs
- #3714 docs(windows): add note about artifacts on windows
- #3716 fix: Ensure target task's onExit handlers are run
- #3717 fix(controller): Tolerate PDB delete race. Fixes #3706
- #3723 feat(ui): Sign-post IDE set-up. Closes #3720
- #3724 feat(operator): Add scope params for step startedAt and finishedAt #3708
- #3726 feat(server): Display events involved in the workflow. Closes #3673
- #3727 feat(controller): controller logs to be structured #2308
- #3736 docs: Remove misleading argument in workflow template dag examples. (…
- #3740 fix: Consider all children of TaskGroups in DAGs
- #3741 feat(ui): add node memoization information to node summary view
- #3744 feat: Github Workflow multi arch. Fixes #2080
- #3749 test: Simplify E2E test tear-down
- #3752 build: Lint files tagged with `e2e`. Closes #3750
- #3758 fix(server): Truncate creator label at 63 chars. Fixes #3756
- #3764 fix: TestWorkflowLevelSemaphore flakiness
- #3765 fix: Fix workflow onExit nodes not being displayed in UI
- #3772 docs: Remove confusing namespace
- #3777 chore: Format test code
- #3778 fix(ui): Correctly load and store namespace. Fixes #3773 and #3775
- #3782 fix(controller): Support exit handler on workflow templates.  Fixes #3737
- #3783 fix(ui): Remove outdated download links. Fixes #3762
- #3785 feat(executor): Add SYS_CHROOT to ease the setup of non-root deployments with PNS. Closes #3767
- #3787 fix(controller): Failure tolerant workflow archiving and offloading. Fixes #3786 and #3837
- #3792 build: Retry downloading Kustomize
- #3794 fix: Increase the requeue duration on checkForbiddenErrorAndResubmitAllowed
- #3795 fix: workflow template ref does not work in other namespace
- #3799 test: Increase cron test timeout to 7m
- #3801 ci: static files not being built with Homebrew and dirty binary. Fixes #3769
- #3804 docs: Add section on CronWorkflow crash recovery
- #3808 fix: Treat collapsed nodes as their siblings
- #3809 fix: Corrects CRD and Swagger types. Fixes #3578
- #3810 chore: add New Relic to USERS.md
- #3814 fix(docs): Add Entrypoint Cron Backfill example  Fixes #3807
- #3820 fix: Carry over ownerReferences from resubmitted workflow. Fixes #3818
- #3822 test: Skip TestStopBehavior and TestRetryOmit
- #3828 docs: Amend link to the Workflow CRD.  Fixes #3827
- #3831 ci: Remove external build dependency
- #3839 fix(ui): crash when workflow node has no memoization info. Fixes #3838
- #3844 docs: Update example README for duration
- #3846 chore: Reduce the 2x workflow save on Semaphore scenario
- #3847 feat: Show next scheduled cron run in UI/CLI
- #3848 ci: Fix build by providing clean repo inside Docker
- #3849 test: E2E test refactoring
- #3851 feat(controller): Do not try to create pods we know exists to prevent `exceeded quota` errors. Fixes #3791
- #3853 feat(controller): Always retry when `IsTransientErr` to tolerate transient errors. Fixes #3217
- #3854 ci: Changed tagging and amend multi-arch manifest
- #3860 chore: Added unittest for PVC exceed quota Closes #3561
- #3869 fix(ui): Improve error recovery. Fixes #3867
- #3871 ci: Create manifest from images again
- #3876 chore(ui): correct a typo
- #3883 fix(controller): Cron re-apply update
- #3889 feat(controller): Emit events for malformed cron workflows. See #3881
- #3890 fix: Workflow should fail on Pod failure before container starts Fixes #3879
- #3891 fix(executor): Replace default retry in executor with an increased value retryer
- #3892 chore: Remove unused imports
- #3900 chore(users): Add Fynd Trak to the list of Users
- #3901 Update workflow-controller-configmap.yaml
- #3906 fix(ui): use absolute URL to redirect from autocomplete list. Closes #3903
- #3908 ci: Fix broken Multiplatform builds
- #3909 test: Fix flaky e2e tests
- #3910 test: Fix TestRetryOmit and TestStopBehavior
- #3919 feat(controller): Set default retry factor to 2. Closes #3911

#### Contributors

* Alex Collins <!-- num=48 -->
* Alexander Zigelski <!-- num=2 -->
* Ang Gao <!-- num=1 -->
* Antoine Dao <!-- num=1 -->
* Carlos Montemuino <!-- num=1 -->
* Chris Hepner <!-- num=1 -->
* Greg Roodt <!-- num=1 -->
* Guillaume Hormiere <!-- num=1 -->
* Jared Welch <!-- num=1 -->
* Jie Zhang <!-- num=1 -->
* Jonny <!-- num=1 -->
* Kaushik B <!-- num=1 -->
* Lucas Theisen <!-- num=1 -->
* Michael Weibel <!-- num=1 -->
* Nirav Patel <!-- num=1 -->
* Noorain Panjwani <!-- num=1 -->
* Remington Breeze <!-- num=9 -->
* Saravanan Balasubramanian <!-- num=24 -->
* Sebastian Ortan <!-- num=1 -->
* Shannon <!-- num=1 -->
* Simon Behar <!-- num=26 -->
* Simon Frey <!-- num=2 -->
* Weston Platter <!-- num=2 -->
* Yuan Tang <!-- num=2 -->
* Zadjad Rezai <!-- num=1 -->
* dgiebert <!-- num=7 -->
* dherman <!-- num=1 -->
* haibingzhao <!-- num=1 -->
* joe <!-- num=1 -->
* juliusvonkohout <!-- num=1 -->
* sh-tatsuno <!-- num=2 -->
* yonirab <!-- num=1 -->
v2.10.0: tag_name: v2.10.0
body: # Quick Start
## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.0/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.0/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.10.0/manifests/install.yaml
```

# ⚠️ Potentially Breaking Changes

You may be affected if:

- If you are using the Golang client.
- If you have substantially invalid workflow YAML. Mitigation: [read this document](https://docs.google.com/document/d/1usEwoP5YK8USNCfi2DbGDciOnJcgrCwlFBlbHABwmMI/edit).
- Binaries are now gzipped when uploaded to Github releases.

More information:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793

# Changes

The big enhancements are:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3358 feat(ui): Add Swagger UI
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3440 feat(server): Label workflows with creator. Closes #2437

## v2.10.0

#### Enhancements

* #1117 the difference between error and failed status?
* #2343 git artifact fetch of reference fails due to missing credentials
* #2437 Search for workflows by creator
* #3183 Log during wk submit
* #3185 [UI] Perform batch action on workflows
* #3491 support optional Input artifacts when artifacts not exist
* #3576 Reduce CLI binary size
* #859 Workflow Open API validation

#### Bug Fixes

- #2793 argo lint fails with "invalid configuration: no configuration has been provided"
- #3073 msg="finished streaming call with code Unknown" error="context canceled
- #3097 Inconsistent behavior on deleting a running pod in DAG
- #3214 Pod not found when resubmit --memoized
- #3288 withParam value could not be parsed as a JSON list with nested list parameters
- #3342 workflow controller is unable to write events in other namespaces for versions >= v2.9-rc1
- #3383 CLI unusable without KUBECONFIG
- #3411 curl log REST endpoint causing memory error
- #3420 Sequence.start/end/count should be `IntOrString`
- #3436 Panic when volumeMount does not exist
- #3505 Panic on addOutputsToLocalScope
- #3513 Backoff exponent is off by one
- #3515 v2.9.3 Docker images report they are v2.10.0-rc1
- #3562 Bearer token error argo + microk8s
- #3606 Retry on `the server has received too many requests and has asked us to try again later (post pods)` errors
- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error
- #3622 Re-submitted workflows do not carry over labels
- #3653 v2.10.0-rc4 nested maps in loop rendered as Golang map[]
- #3706 Fix `Unable to delete PDB resource for workflow` error
- #3756 Creator label too long.

#### Other

- fix: Running pods are garaged in PodGC onSuccess

#### Pull Requests

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3137 docs: Updated WorkflowTemplateRef  on WFT and CWFT
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3248 fix(git): Fixes Git when using auth or fetch. Fixes #2343
- #3272 fix: Reapply Update if CronWorkflow resource changed
- #3276 docs: Add example for handling large output resutls
- #3278 fix: Fix delete --complete
- #3279 feat(cli): Add --logs to `argo [submit|resubmit|retry]. Closes #3183
- #3280 fix: Ensure child pods respect maxDuration
- #3283 docs: Update releasing.md
- #3284 docs: ArchiveLabelSelector document
- #3286 fix(server): Fix validation of overridden ref template parameters.
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3291 chore: Use GitHub Actions to build Docker Images to allow publishing Windows Images
- #3293 feat: Allow to change priority when resubmitting workflows
- #3294 build: Upload E2E diagnostics after failure
- #3297 build: Remove generated Swagger files.
- #3298 chore: Clean up unused constants
- #3301 feat(controller): Add support for Docker workflow executor for Windows nodes
- #3302 ci: Remove CircleCI
- #3304 docs: Rename Ant Financial to Ant Group
- #3308 build: Fix path to go-to-protobuf binary
- #3311 build: Pin `goimports` to working version
- #3315 fix(controller): Fix panic logging.
- #3316 docs: Document access token creation and usage
- #3317 fix(ui): Compiler error from workflows toolbar
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3327 fix: Remove broken SSO from quick-starts
- #3328 feat(controller): Label workflows with their source workflow template. Fixes #3326 
- #3330 fix(ui): runtime error from null savedOptions props
- #3335 chore: Avoid variable name collision with imported package name
- #3338 docs: Field fix (ParallelSteps -> WorkflowStep)
- #3339 feat: Attempt to resolve nested tags
- #3340 perf: Optimize time-based filtering on large number of workflows
- #3345 fix(controller): Allow events to be sent to non-argo namespace. Fixes #3342
- #3350 fix: Don't double-count metric events
- #3352 docs: Adding InVision to Users
- #3353 chore: Simplify deps by removing YAML
- #3354 test: Add e2e tags
- #3357 feat(cli): List only resubmitted workflows option
- #3358 feat(ui): Add Swagger UI
- #3359 fix(server): Fix `context cancelled` red herring error. Fixes #3073
- #3362 feat(controller): Add log message count as metrics.
- #3363 build: Enable Stale Bot
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3365 docs: Wellcome is using Argo in our Data Labs division
- #3367 chore: Remove unused code
- #3368 fix: Fix UI bug in DAGs
- #3369 docs: Make https://argoproj.github.io/argo/ 
- #3370 fix(ui): Confirmation of workflow actions
- #3371 feat: Expose certain queue metrics
- #3372 fix: Fix bug parsing parmeters
- #3375 fix(docs): Fix incorrect example of global parameter usage
- #3376 chore: update aws-sdk-go version
- #3377 chore(ui): Remove unused interfaces for artifacts
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793
- #3386 chore: Added CWFT WorkflowTemplateRef example
- #3392 chore: maybe -> may be
- #3398 docs: Update config example to include useSDKCreds
- #3401 fix: Fix concurrency issues with metrics
- #3403 fix: Ensure non-leaf DAG tasks have their onExit handler's run
- #3407 fix: Script steps fail with exceededQuota
- #3408 fix(ui): Render DAG with exit node
- #3414 docs: Include timezone name reference
- #3418 fix: Use a unique queue to visit nodes
- #3421 fix: Add struct-wide RWMutex to metrics
- #3423 feat(cli): Allow to view previously terminated container logs
- #3424 fix(cli): panic on wait command if event is null
- #3425 fix: Allow ints for sequence start/end/count. Fixes #3420
- #3426 fix: No panic on watch. Fixes #3411
- #3427 fix(sso): Remove unused `groups` claim. Fixes #3411
- #3430 docs: Add Sohu as official Argo user
- #3433 fix(docs): Update kubectl proxy URL
- #3435 fix: Ensure task dependencies run after onExit handler is fulfilled
- #3437 fix(controller): Prevent panic on nil node. Fixes #3436
- #3439 docs: typo in argo stop --help
- #3440 feat(server): Label workflows with creator. Closes #2437
- #3442 chore: Fix GitHub Actions Docker Image build 
- #3450 chore: Upgrade node-sass
- #3451 fix(controller): Respect the volumes of a workflowTemplateRef. Fixes …
- #3455 test(controller): Add memoization tests. See #3214
- #3456 docs: Fixed some typos
- #3464 docs: Add controller-level metrics
- #3465 docs: Fix CLI docs
- #3466 test(controller): Add memoization tests. See #3214 (#3455)
- #3467 docs: Add comments to NodePhase definition. Closes #1117.
- #3469 fix(controller): Fail workflow when pod is deleted with --force. Fixes #3097
- #3470 fix: Metric emission with retryStrategy
- #3473 test(controller): Ensure resubmitted workflows have correct labels
- #3476 docs: In quick-start. Use http, not https for link
- #3477 fix: Pass resolved arguments to onExit handler
- #3478 build: Simplify builds
- #3480 fix: Merge WorkflowTemplateRef with defaults workflow spec
- #3486 fix: link to server auth mode docs, adds Tulip as official user
- #3490 fix: Exceeding quota with volumeClaimTemplates
- #3492 docs: Add link to GitHub Actions in the badge
- #3493 fix(cli): Check mutual exclusivity for argo CLI flags
- #3494 feat: Support Bash Completions for More Resources
- #3495 chore: Added examples for exit handler for step and dag level
- #3497 build: Use `git rev-parse` to accomodate older gits
- #3499 build: Clear cmd docs before generating them
- #3501 [Snyk] Security upgrade swagger-ui-react from 3.28.0 to 3.29.0
- #3504 fix: Panic on releaseAllWorkflowLocks if Object is not Unstructured type
- #3509 fix(controller): Do not panic on nil output value. Fixes #3505
- #3512 fix(artifacts): support optional input artifacts, Fixes #3491
- #3514 fix(controller): Backoff exponent is off by one. Fixes #3513
- #3518 fix: String interpreted as boolean in labels
- #3519 ci: Make builds marginally faster. Fixes #3515
- #3528 fix: Fix when retrying Workflows with Omitted nodes
- #3532 fix: Panic on CLI Watch command
- #3539 fix: Fix links in fields doc
- #3552 fix: Fix flakey TestRetryOmitted
- #3555 fix(ui): cannot read property 'push' of undefined when filtering by label. Fixes #3550
- #3566 fix: Skip TestStorageQuotaLimit
- #3573 fix(ui): Fix multiple UI issues
- #3579 fix(server): Ignore not-JWT server tokens. Fixes #3562
- #3581 fix: Argo Workflows does not honour global timeout if step/pod is not able to schedule
- #3596 fix(controller): Fix bug in util/RecoverWorkflowNameFromSelectorString. Add error handling
- #3605 fix: Fix panic and provide better error message on watch endpoint
- #3607 fix(controller): Treat TooManyError same as Forbidden (i.e. try again). Fixes #3606
- #3609 fix(server): Re-establish watch on v1.Status errors. Fixes #3608
- #3613 fix: Enforce metric Help must be the same for each metric Name
- #3614 build(cli)!: Zip binaries binaries. Closes #3576
- #3624 fix: DAG level Output Artifacts on K8S and Kubelet executor
- #3632 fix: Simplify the WorkflowTemplateRef field validation to support all fields in WorkflowSpec except `Templates`
- #3636 fix: Fix 'malformed request: field selector' error
- #3638 fix(controller): Carry-over labels for re-submitted workflows. Fixes #3622
- #3640 fix: Fixed flaky unit test TestFailSuspendedAndPendingNodesAfterDeadline
- #3643 fix: Don't panic on invalid template creation
- #3651 fix: Avoid overriding the Workflow parameter when it is merging with WorkflowTemplate parameter
- #3652 fix(server): Report v1.Status errors. Fixes #3608
- #3659 fix: interface{} values should be expanded with '%v'
- #3661 fix(controller): Fix nested maps. Fixes #3653
- #3675 fix(executor): Add retry on pods watch to handle timeout.
- #3679 fix: Couldn't Terminate/Stop the ResourceTemplate Workflow
- #3684 fix: Re-introduce 1 second sleep to reconcile informer
- #3689 fix(controller): Adds ALL_POD_CHANGES_SIGNIFICANT
- #3691 fix: Fixed workflow queue duration if PVC creation is forbidden
- #3699 fix: Fix bug with 'argo delete --older'
- #3716 fix: Ensure target task's onExit handlers are run
- #3717 fix(controller): Tolerate PDB delete race. Fixes #3706
- #3758 fix(server): Truncate creator label at 63 chars. Fixes #3756
- #3794 fix: Increase the requeue duration on checkForbiddenErrorAndResubmitAllowed

#### Contributors

* 0x1D-1983 <!-- num=1 -->
* Alex Collins <!-- num=65 -->
* Daisuke Taniwaki <!-- num=1 -->
* Galen Han <!-- num=1 -->
* Guillaume Hormiere <!-- num=1 -->
* Jeff Uren <!-- num=1 -->
* Jie Zhang <!-- num=1 -->
* Jonny <!-- num=1 -->
* Markus Lippert <!-- num=3 -->
* Michael Crenshaw <!-- num=2 -->
* Niklas Vest <!-- num=1 -->
* Remington Breeze <!-- num=8 -->
* Saravanan Balasubramanian <!-- num=23 -->
* Simon Behar <!-- num=32 -->
* Snyk bot <!-- num=1 -->
* Trevor Foster <!-- num=1 -->
* Vlad Losev <!-- num=1 -->
* Weston Platter <!-- num=1 -->
* Yuan Tang <!-- num=11 -->
* Zach Aller <!-- num=1 -->
* Zach Himsel <!-- num=1 -->
* candonov <!-- num=2 -->
* haibingzhao <!-- num=1 -->
* maguowei <!-- num=1 -->

v2.10.0-rc7: tag_name: v2.10.0-rc7
body: # Quick Start
## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.0-rc7/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.0-rc7/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.10.0-rc7/manifests/install.yaml
```

# ⚠️ Potentially Breaking Changes

You may be affected if:

- If you are using the Golang client.
- If you have substantially invalid workflow YAML. Mitigation: [read this document](https://docs.google.com/document/d/1usEwoP5YK8USNCfi2DbGDciOnJcgrCwlFBlbHABwmMI/edit).
- Binaries are now gzipped when uploaded to Github releases.

More information:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793

# Changes

The big enhancements are:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3358 feat(ui): Add Swagger UI
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3440 feat(server): Label workflows with creator. Closes #2437

## v2.10.0-rc7

#### Bug Fixes

- #3606 Retry on `the server has received too many requests and has asked us to try again later (post pods)` errors
- #3622 Re-submitted workflows do not carry over labels
- #3706 Fix `Unable to delete PDB resource for workflow` error

#### Pull Requests

- #3607 fix(controller): Treat TooManyError same as Forbidden (i.e. try again). Fixes #3606
- #3613 fix: Enforce metric Help must be the same for each metric Name
- #3638 fix(controller): Carry-over labels for re-submitted workflows. Fixes #3622
- #3675 fix(executor): Add retry on pods watch to handle timeout.
- #3679 fix: Couldn't Terminate/Stop the ResourceTemplate Workflow
- #3699 fix: Fix bug with 'argo delete --older'
- #3716 fix: Ensure target task's onExit handlers are run
- #3717 fix(controller): Tolerate PDB delete race. Fixes #3706

#### Contributors

* Alex Collins <!-- num=5 -->
* Guillaume Hormiere <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=3 -->

## v2.10.0-rc6

#### Pull Requests

- #3684 fix: Re-introduce 1 second sleep to reconcile informer
- #3689 fix(controller): Adds ALL_POD_CHANGES_SIGNIFICANT
- #3691 fix: Fixed workflow queue duration if PVC creation is forbidden

#### Contributors

* Alex Collins <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=1 -->

## v2.10.0-rc5

#### Bug Fixes

- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error
- #3653 v2.10.0-rc4 nested maps in loop rendered as Golang map[]

#### Pull Requests

- #3624 fix: DAG level Output Artifacts on K8S and Kubelet executor
- #3632 fix: Simplify the WorkflowTemplateRef field validation to support all fields in WorkflowSpec except `Templates`
- #3636 fix: Fix 'malformed request: field selector' error
- #3640 fix: Fixed flaky unit test TestFailSuspendedAndPendingNodesAfterDeadline
- #3643 fix: Don't panic on invalid template creation
- #3651 fix: Avoid overriding the Workflow parameter when it is merging with WorkflowTemplate parameter
- #3652 fix(server): Report v1.Status errors. Fixes #3608
- #3659 fix: interface{} values should be expanded with '%v'
- #3661 fix(controller): Fix nested maps. Fixes #3653

#### Contributors

* Alex Collins <!-- num=4 -->
* Saravanan Balasubramanian <!-- num=4 -->
* Simon Behar <!-- num=3 -->

## v2.10.0-rc4

#### Enhancements

* #3491 support optional Input artifacts when artifacts not exist
* #3576 Reduce CLI binary size

#### Bug Fixes

- #3513 Backoff exponent is off by one
- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error

#### Pull Requests

- #3512 fix(artifacts): support optional input artifacts, Fixes #3491
- #3514 fix(controller): Backoff exponent is off by one. Fixes #3513
- #3518 fix: String interpreted as boolean in labels
- #3528 fix: Fix when retrying Workflows with Omitted nodes
- #3539 fix: Fix links in fields doc
- #3552 fix: Fix flakey TestRetryOmitted
- #3555 fix(ui): cannot read property 'push' of undefined when filtering by label. Fixes #3550
- #3573 fix(ui): Fix multiple UI issues
- #3581 fix: Argo Workflows does not honour global timeout if step/pod is not able to schedule
- #3596 fix(controller): Fix bug in util/RecoverWorkflowNameFromSelectorString. Add error handling
- #3605 fix: Fix panic and provide better error message on watch endpoint
- #3609 fix(server): Re-establish watch on v1.Status errors. Fixes #3608
- #3614 build(cli)!: Zip binaries. Closes #3576

#### Contributors

* Alex Collins <!-- num=2 -->
* Jie Zhang <!-- num=1 -->
* Jonny <!-- num=1 -->
* Remington Breeze <!-- num=2 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=5 -->
* haibingzhao <!-- num=1 -->

## v2.10.0-rc3

#### Bug Fixes

- #3505 Panic on addOutputsToLocalScope
- #3515 v2.9.3 Docker images report they are v2.10.0-rc1
- #3562 Bearer token error argo + microk8s

#### Pull Requests

- #3490 fix: Exceeding quota with volumeClaimTemplates
- #3509 fix(controller): Do not panic on nil output value. Fixes #3505
- #3519 ci: Make builds marginally faster. Fixes #3515
- #3532 fix: Panic on CLI Watch command
- #3566 fix: Skip TestStorageQuotaLimit
- #3579 fix(server): Ignore not-JWT server tokens. Fixes #3562

## v2.10.0-rc2

Release candidate 2 was never released.

## v2.10.0-rc1

#### Enhancements

* #1117 the difference between error and failed status?
* #2343 git artifact fetch of reference fails due to missing credentials
* #2437 Search for workflows by creator
* #3183 Log during wk submit
* #3185 [UI] Perform batch action on workflows
* #859 Workflow Open API validation

#### Bug Fixes

- #2793 argo lint fails with "invalid configuration: no configuration has been provided"
- #3073 msg="finished streaming call with code Unknown" error="context canceled
- #3097 Inconsistent behavior on deleting a running pod in DAG
- #3214 Pod not found when resubmit --memoized
- #3288 withParam value could not be parsed as a JSON list with nested list parameters
- #3342 workflow controller is unable to write events in other namespaces for versions >= v2.9-rc1
- #3383 CLI unusable without KUBECONFIG
- #3411 curl log REST endpoint causing memory error
- #3420 Sequence.start/end/count should be `IntOrString`
- #3436 Panic when volumeMount does not exist

#### Other

- Update manifests to v2.10.0-rc1
- fix: Running pods are garaged in PodGC onSuccess

#### Pull Requests

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3137 docs: Updated WorkflowTemplateRef  on WFT and CWFT
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3248 fix(git): Fixes Git when using auth or fetch. Fixes #2343
- #3272 fix: Reapply Update if CronWorkflow resource changed
- #3276 docs: Add example for handling large output resutls
- #3278 fix: Fix delete --complete
- #3279 feat(cli): Add --logs to `argo [submit|resubmit|retry]. Closes #3183
- #3280 fix: Ensure child pods respect maxDuration
- #3283 docs: Update releasing.md
- #3284 docs: ArchiveLabelSelector document
- #3286 fix(server): Fix validation of overridden ref template parameters.
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3291 chore: Use GitHub Actions to build Docker Images to allow publishing Windows Images
- #3293 feat: Allow to change priority when resubmitting workflows
- #3294 build: Upload E2E diagnostics after failure
- #3297 build: Remove generated Swagger files.
- #3298 chore: Clean up unused constants
- #3301 feat(controller): Add support for Docker workflow executor for Windows nodes
- #3302 ci: Remove CircleCI
- #3304 docs: Rename Ant Financial to Ant Group
- #3308 build: Fix path to go-to-protobuf binary
- #3311 build: Pin `goimports` to working version
- #3315 fix(controller): Fix panic logging.
- #3316 docs: Document access token creation and usage
- #3317 fix(ui): Compiler error from workflows toolbar
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3327 fix: Remove broken SSO from quick-starts
- #3328 feat(controller): Label workflows with their source workflow template. Fixes #3326 
- #3330 fix(ui): runtime error from null savedOptions props
- #3335 chore: Avoid variable name collision with imported package name
- #3338 docs: Field fix (ParallelSteps -> WorkflowStep)
- #3339 feat: Attempt to resolve nested tags
- #3340 perf: Optimize time-based filtering on large number of workflows
- #3345 fix(controller): Allow events to be sent to non-argo namespace. Fixes #3342
- #3350 fix: Don't double-count metric events
- #3352 docs: Adding InVision to Users
- #3353 chore: Simplify deps by removing YAML
- #3354 test: Add e2e tags
- #3357 feat(cli): List only resubmitted workflows option
- #3358 feat(ui): Add Swagger UI
- #3359 fix(server): Fix `context cancelled` red herring error. Fixes #3073
- #3362 feat(controller): Add log message count as metrics.
- #3363 build: Enable Stale Bot
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3365 docs: Wellcome is using Argo in our Data Labs division
- #3367 chore: Remove unused code
- #3368 fix: Fix UI bug in DAGs
- #3369 docs: Make https://argoproj.github.io/argo/ 
- #3370 fix(ui): Confirmation of workflow actions
- #3371 feat: Expose certain queue metrics
- #3372 fix: Fix bug parsing parmeters
- #3375 fix(docs): Fix incorrect example of global parameter usage
- #3376 chore: update aws-sdk-go version
- #3377 chore(ui): Remove unused interfaces for artifacts
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793
- #3386 chore: Added CWFT WorkflowTemplateRef example
- #3392 chore: maybe -> may be
- #3398 docs: Update config example to include useSDKCreds
- #3401 fix: Fix concurrency issues with metrics
- #3403 fix: Ensure non-leaf DAG tasks have their onExit handler's run
- #3407 fix: Script steps fail with exceededQuota
- #3408 fix(ui): Render DAG with exit node
- #3414 docs: Include timezone name reference
- #3418 fix: Use a unique queue to visit nodes
- #3421 fix: Add struct-wide RWMutex to metrics
- #3423 feat(cli): Allow to view previously terminated container logs
- #3424 fix(cli): panic on wait command if event is null
- #3425 fix: Allow ints for sequence start/end/count. Fixes #3420
- #3426 fix: No panic on watch. Fixes #3411
- #3427 fix(sso): Remove unused `groups` claim. Fixes #3411
- #3430 docs: Add Sohu as official Argo user
- #3433 fix(docs): Update kubectl proxy URL
- #3435 fix: Ensure task dependencies run after onExit handler is fulfilled
- #3437 fix(controller): Prevent panic on nil node. Fixes #3436
- #3439 docs: typo in argo stop --help
- #3440 feat(server): Label workflows with creator. Closes #2437
- #3442 chore: Fix GitHub Actions Docker Image build 
- #3450 chore: Upgrade node-sass
- #3451 fix(controller): Respect the volumes of a workflowTemplateRef. Fixes …
- #3455 test(controller): Add memoization tests. See #3214
- #3456 docs: Fixed some typos
- #3464 docs: Add controller-level metrics
- #3465 docs: Fix CLI docs
- #3466 test(controller): Add memoization tests. See #3214 (#3455)
- #3467 docs: Add comments to NodePhase definition. Closes #1117.
- #3469 fix(controller): Fail workflow when pod is deleted with --force. Fixes #3097
- #3470 fix: Metric emission with retryStrategy
- #3473 test(controller): Ensure resubmitted workflows have correct labels
- #3476 docs: In quick-start. Use http, not https for link
- #3477 fix: Pass resolved arguments to onExit handler
- #3478 build: Simplify builds
- #3480 fix: Merge WorkflowTemplateRef with defaults workflow spec
- #3486 fix: link to server auth mode docs, adds Tulip as official user
- #3492 docs: Add link to GitHub Actions in the badge
- #3493 fix(cli): Check mutual exclusivity for argo CLI flags
- #3494 feat: Support Bash Completions for More Resources
- #3495 chore: Added examples for exit handler for step and dag level
- #3497 build: Use `git rev-parse` to accomodate older gits
- #3499 build: Clear cmd docs before generating them
- #3501 [Snyk] Security upgrade swagger-ui-react from 3.28.0 to 3.29.0
- #3504 fix: Panic on releaseAllWorkflowLocks if Object is not Unstructured type

#### Contributors

* 0x1D-1983 <!-- num=1 -->
* Alex Collins <!-- num=37 -->
* Daisuke Taniwaki <!-- num=1 -->
* Galen Han <!-- num=1 -->
* Jeff Uren <!-- num=1 -->
* Markus Lippert <!-- num=3 -->
* Michael Crenshaw <!-- num=2 -->
* Niklas Vest <!-- num=1 -->
* Remington Breeze <!-- num=6 -->
* Saravanan Balasubramanian <!-- num=12 -->
* Simon Behar <!-- num=20 -->
* Snyk bot <!-- num=1 -->
* Trevor Foster <!-- num=1 -->
* Vlad Losev <!-- num=1 -->
* Weston Platter <!-- num=1 -->
* Yuan Tang <!-- num=11 -->
* Zach Aller <!-- num=1 -->
* Zach Himsel <!-- num=1 -->
* candonov <!-- num=2 -->
* maguowei <!-- num=1 -->
v2.10.0-rc6: tag_name: v2.10.0-rc6
body: # Quick Start
## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.0-rc6/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.0-rc6/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.10.0-rc6/manifests/install.yaml
```

# ⚠️ Potentially Breaking Changes

You may be affected if:

- If you are using the Golang client.
- If you have substantially invalid workflow YAML. Mitigation: [read this document](https://docs.google.com/document/d/1usEwoP5YK8USNCfi2DbGDciOnJcgrCwlFBlbHABwmMI/edit).
- Binaries are now gzipped when uploaded to Github releases.

More information:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793

# Changes

The big enhancements are:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3358 feat(ui): Add Swagger UI
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3440 feat(server): Label workflows with creator. Closes #2437

## v2.10.0-rc6

#### Pull Requests

- #3684 fix: Re-introduce 1 second sleep to reconcile informer
- #3689 fix(controller): Adds ALL_POD_CHANGES_SIGNIFICANT
- #3691 fix: Fixed workflow queue duration if PVC creation is forbidden

#### Contributors

* Alex Collins <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=1 -->

## v2.10.0-rc5

#### Bug Fixes

- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error
- #3653 v2.10.0-rc4 nested maps in loop rendered as Golang map[]

#### Pull Requests

- #3624 fix: DAG level Output Artifacts on K8S and Kubelet executor
- #3632 fix: Simplify the WorkflowTemplateRef field validation to support all fields in WorkflowSpec except `Templates`
- #3636 fix: Fix 'malformed request: field selector' error
- #3640 fix: Fixed flaky unit test TestFailSuspendedAndPendingNodesAfterDeadline
- #3643 fix: Don't panic on invalid template creation
- #3651 fix: Avoid overriding the Workflow parameter when it is merging with WorkflowTemplate parameter
- #3652 fix(server): Report v1.Status errors. Fixes #3608
- #3659 fix: interface{} values should be expanded with '%v'
- #3661 fix(controller): Fix nested maps. Fixes #3653

#### Contributors

* Alex Collins <!-- num=4 -->
* Saravanan Balasubramanian <!-- num=4 -->
* Simon Behar <!-- num=3 -->

## v2.10.0-rc4

#### Enhancements

* #3491 support optional Input artifacts when artifacts not exist
* #3576 Reduce CLI binary size

#### Bug Fixes

- #3513 Backoff exponent is off by one
- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error

#### Pull Requests

- #3512 fix(artifacts): support optional input artifacts, Fixes #3491
- #3514 fix(controller): Backoff exponent is off by one. Fixes #3513
- #3518 fix: String interpreted as boolean in labels
- #3528 fix: Fix when retrying Workflows with Omitted nodes
- #3539 fix: Fix links in fields doc
- #3552 fix: Fix flakey TestRetryOmitted
- #3555 fix(ui): cannot read property 'push' of undefined when filtering by label. Fixes #3550
- #3573 fix(ui): Fix multiple UI issues
- #3581 fix: Argo Workflows does not honour global timeout if step/pod is not able to schedule
- #3596 fix(controller): Fix bug in util/RecoverWorkflowNameFromSelectorString. Add error handling
- #3605 fix: Fix panic and provide better error message on watch endpoint
- #3609 fix(server): Re-establish watch on v1.Status errors. Fixes #3608
- #3614 build(cli)!: Zip binaries. Closes #3576

#### Contributors

* Alex Collins <!-- num=2 -->
* Jie Zhang <!-- num=1 -->
* Jonny <!-- num=1 -->
* Remington Breeze <!-- num=2 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=5 -->
* haibingzhao <!-- num=1 -->

## v2.10.0-rc3

#### Bug Fixes

- #3505 Panic on addOutputsToLocalScope
- #3515 v2.9.3 Docker images report they are v2.10.0-rc1
- #3562 Bearer token error argo + microk8s

#### Pull Requests

- #3490 fix: Exceeding quota with volumeClaimTemplates
- #3509 fix(controller): Do not panic on nil output value. Fixes #3505
- #3519 ci: Make builds marginally faster. Fixes #3515
- #3532 fix: Panic on CLI Watch command
- #3566 fix: Skip TestStorageQuotaLimit
- #3579 fix(server): Ignore not-JWT server tokens. Fixes #3562

## v2.10.0-rc2

Release candidate 2 was never released.

## v2.10.0-rc1

#### Enhancements

* #1117 the difference between error and failed status?
* #2343 git artifact fetch of reference fails due to missing credentials
* #2437 Search for workflows by creator
* #3183 Log during wk submit
* #3185 [UI] Perform batch action on workflows
* #859 Workflow Open API validation

#### Bug Fixes

- #2793 argo lint fails with "invalid configuration: no configuration has been provided"
- #3073 msg="finished streaming call with code Unknown" error="context canceled
- #3097 Inconsistent behavior on deleting a running pod in DAG
- #3214 Pod not found when resubmit --memoized
- #3288 withParam value could not be parsed as a JSON list with nested list parameters
- #3342 workflow controller is unable to write events in other namespaces for versions >= v2.9-rc1
- #3383 CLI unusable without KUBECONFIG
- #3411 curl log REST endpoint causing memory error
- #3420 Sequence.start/end/count should be `IntOrString`
- #3436 Panic when volumeMount does not exist

#### Other

- Update manifests to v2.10.0-rc1
- fix: Running pods are garaged in PodGC onSuccess

#### Pull Requests

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3137 docs: Updated WorkflowTemplateRef  on WFT and CWFT
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3248 fix(git): Fixes Git when using auth or fetch. Fixes #2343
- #3272 fix: Reapply Update if CronWorkflow resource changed
- #3276 docs: Add example for handling large output resutls
- #3278 fix: Fix delete --complete
- #3279 feat(cli): Add --logs to `argo [submit|resubmit|retry]. Closes #3183
- #3280 fix: Ensure child pods respect maxDuration
- #3283 docs: Update releasing.md
- #3284 docs: ArchiveLabelSelector document
- #3286 fix(server): Fix validation of overridden ref template parameters.
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3291 chore: Use GitHub Actions to build Docker Images to allow publishing Windows Images
- #3293 feat: Allow to change priority when resubmitting workflows
- #3294 build: Upload E2E diagnostics after failure
- #3297 build: Remove generated Swagger files.
- #3298 chore: Clean up unused constants
- #3301 feat(controller): Add support for Docker workflow executor for Windows nodes
- #3302 ci: Remove CircleCI
- #3304 docs: Rename Ant Financial to Ant Group
- #3308 build: Fix path to go-to-protobuf binary
- #3311 build: Pin `goimports` to working version
- #3315 fix(controller): Fix panic logging.
- #3316 docs: Document access token creation and usage
- #3317 fix(ui): Compiler error from workflows toolbar
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3327 fix: Remove broken SSO from quick-starts
- #3328 feat(controller): Label workflows with their source workflow template. Fixes #3326 
- #3330 fix(ui): runtime error from null savedOptions props
- #3335 chore: Avoid variable name collision with imported package name
- #3338 docs: Field fix (ParallelSteps -> WorkflowStep)
- #3339 feat: Attempt to resolve nested tags
- #3340 perf: Optimize time-based filtering on large number of workflows
- #3345 fix(controller): Allow events to be sent to non-argo namespace. Fixes #3342
- #3350 fix: Don't double-count metric events
- #3352 docs: Adding InVision to Users
- #3353 chore: Simplify deps by removing YAML
- #3354 test: Add e2e tags
- #3357 feat(cli): List only resubmitted workflows option
- #3358 feat(ui): Add Swagger UI
- #3359 fix(server): Fix `context cancelled` red herring error. Fixes #3073
- #3362 feat(controller): Add log message count as metrics.
- #3363 build: Enable Stale Bot
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3365 docs: Wellcome is using Argo in our Data Labs division
- #3367 chore: Remove unused code
- #3368 fix: Fix UI bug in DAGs
- #3369 docs: Make https://argoproj.github.io/argo/ 
- #3370 fix(ui): Confirmation of workflow actions
- #3371 feat: Expose certain queue metrics
- #3372 fix: Fix bug parsing parmeters
- #3375 fix(docs): Fix incorrect example of global parameter usage
- #3376 chore: update aws-sdk-go version
- #3377 chore(ui): Remove unused interfaces for artifacts
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793
- #3386 chore: Added CWFT WorkflowTemplateRef example
- #3392 chore: maybe -> may be
- #3398 docs: Update config example to include useSDKCreds
- #3401 fix: Fix concurrency issues with metrics
- #3403 fix: Ensure non-leaf DAG tasks have their onExit handler's run
- #3407 fix: Script steps fail with exceededQuota
- #3408 fix(ui): Render DAG with exit node
- #3414 docs: Include timezone name reference
- #3418 fix: Use a unique queue to visit nodes
- #3421 fix: Add struct-wide RWMutex to metrics
- #3423 feat(cli): Allow to view previously terminated container logs
- #3424 fix(cli): panic on wait command if event is null
- #3425 fix: Allow ints for sequence start/end/count. Fixes #3420
- #3426 fix: No panic on watch. Fixes #3411
- #3427 fix(sso): Remove unused `groups` claim. Fixes #3411
- #3430 docs: Add Sohu as official Argo user
- #3433 fix(docs): Update kubectl proxy URL
- #3435 fix: Ensure task dependencies run after onExit handler is fulfilled
- #3437 fix(controller): Prevent panic on nil node. Fixes #3436
- #3439 docs: typo in argo stop --help
- #3440 feat(server): Label workflows with creator. Closes #2437
- #3442 chore: Fix GitHub Actions Docker Image build 
- #3450 chore: Upgrade node-sass
- #3451 fix(controller): Respect the volumes of a workflowTemplateRef. Fixes …
- #3455 test(controller): Add memoization tests. See #3214
- #3456 docs: Fixed some typos
- #3464 docs: Add controller-level metrics
- #3465 docs: Fix CLI docs
- #3466 test(controller): Add memoization tests. See #3214 (#3455)
- #3467 docs: Add comments to NodePhase definition. Closes #1117.
- #3469 fix(controller): Fail workflow when pod is deleted with --force. Fixes #3097
- #3470 fix: Metric emission with retryStrategy
- #3473 test(controller): Ensure resubmitted workflows have correct labels
- #3476 docs: In quick-start. Use http, not https for link
- #3477 fix: Pass resolved arguments to onExit handler
- #3478 build: Simplify builds
- #3480 fix: Merge WorkflowTemplateRef with defaults workflow spec
- #3486 fix: link to server auth mode docs, adds Tulip as official user
- #3492 docs: Add link to GitHub Actions in the badge
- #3493 fix(cli): Check mutual exclusivity for argo CLI flags
- #3494 feat: Support Bash Completions for More Resources
- #3495 chore: Added examples for exit handler for step and dag level
- #3497 build: Use `git rev-parse` to accomodate older gits
- #3499 build: Clear cmd docs before generating them
- #3501 [Snyk] Security upgrade swagger-ui-react from 3.28.0 to 3.29.0
- #3504 fix: Panic on releaseAllWorkflowLocks if Object is not Unstructured type

#### Contributors

* 0x1D-1983 <!-- num=1 -->
* Alex Collins <!-- num=37 -->
* Daisuke Taniwaki <!-- num=1 -->
* Galen Han <!-- num=1 -->
* Jeff Uren <!-- num=1 -->
* Markus Lippert <!-- num=3 -->
* Michael Crenshaw <!-- num=2 -->
* Niklas Vest <!-- num=1 -->
* Remington Breeze <!-- num=6 -->
* Saravanan Balasubramanian <!-- num=12 -->
* Simon Behar <!-- num=20 -->
* Snyk bot <!-- num=1 -->
* Trevor Foster <!-- num=1 -->
* Vlad Losev <!-- num=1 -->
* Weston Platter <!-- num=1 -->
* Yuan Tang <!-- num=11 -->
* Zach Aller <!-- num=1 -->
* Zach Himsel <!-- num=1 -->
* candonov <!-- num=2 -->
* maguowei <!-- num=1 -->
v2.9.5: tag_name: v2.9.5
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.5/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.5/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.9.5/manifests/install.yaml
```

# Changes

## v2.9.5

#### Bug Fixes

- #3613 fix: Enforce metric Help must be the same for each metric Name
- #3636 fix: Fix 'malformed request: field selector' error
- #3605 fix: Fix panic and provide better error message on watch endpoin
- #3596 fix(controller): Fix bug in util/RecoverWorkflowNameFromSelectorString. Add error handling
- #3684 fix: Re-introduce 1 second sleep to reconcile informer
- #3689 fix(controller): Adds ALL_POD_CHANGES_SIGNIFICANT 
- #3651 fix: Avoid overriding the Workflow parameter when it is merging with WorkflowTemplate paramete
- #3643 fix: Don't panic on invalid template creation
- #3632 fix: Simplify the WorkflowTemplateRef field validation to support all fields in WorkflowSpec except `Templates

#### Contributors

* Alex Collins <!-- num=1 -->
* Remington Breeze <!-- num=1 -->
* Saravanan Balasubramanian  <!-- num=2 -->
* Simon Behar <!-- num=5 -->


v2.10.0-rc5: tag_name: v2.10.0-rc5
body: # Quick Start
## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.0-rc5/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.0-rc5/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.10.0-rc5/manifests/install.yaml
```

# ⚠️ Potentially Breaking Changes

You may be affected if:

- If you are using the Golang client.
- If you have substantially invalid workflow YAML. Mitigation: [read this document](https://docs.google.com/document/d/1usEwoP5YK8USNCfi2DbGDciOnJcgrCwlFBlbHABwmMI/edit).
- Binaries are now gzipped when uploaded to Github releases.

More information:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793

# Changes

The big enhancements are:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3358 feat(ui): Add Swagger UI
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3440 feat(server): Label workflows with creator. Closes #2437

## v2.10.0-rc5

#### Bug Fixes

- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error
- #3653 v2.10.0-rc4 nested maps in loop rendered as Golang map[]

#### Pull Requests

- #3624 fix: DAG level Output Artifacts on K8S and Kubelet executor
- #3632 fix: Simplify the WorkflowTemplateRef field validation to support all fields in WorkflowSpec except `Templates`
- #3636 fix: Fix 'malformed request: field selector' error
- #3640 fix: Fixed flaky unit test TestFailSuspendedAndPendingNodesAfterDeadline
- #3643 fix: Don't panic on invalid template creation
- #3651 fix: Avoid overriding the Workflow parameter when it is merging with WorkflowTemplate parameter
- #3652 fix(server): Report v1.Status errors. Fixes #3608
- #3659 fix: interface{} values should be expanded with '%v'
- #3661 fix(controller): Fix nested maps. Fixes #3653

#### Contributors

* Alex Collins <!-- num=4 -->
* Saravanan Balasubramanian <!-- num=4 -->
* Simon Behar <!-- num=3 -->

## v2.10.0-rc4

#### Enhancements

* #3491 support optional Input artifacts when artifacts not exist
* #3576 Reduce CLI binary size

#### Bug Fixes

- #3513 Backoff exponent is off by one
- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error

#### Pull Requests

- #3512 fix(artifacts): support optional input artifacts, Fixes #3491
- #3514 fix(controller): Backoff exponent is off by one. Fixes #3513
- #3518 fix: String interpreted as boolean in labels
- #3528 fix: Fix when retrying Workflows with Omitted nodes
- #3539 fix: Fix links in fields doc
- #3552 fix: Fix flakey TestRetryOmitted
- #3555 fix(ui): cannot read property 'push' of undefined when filtering by label. Fixes #3550
- #3573 fix(ui): Fix multiple UI issues
- #3581 fix: Argo Workflows does not honour global timeout if step/pod is not able to schedule
- #3596 fix(controller): Fix bug in util/RecoverWorkflowNameFromSelectorString. Add error handling
- #3605 fix: Fix panic and provide better error message on watch endpoint
- #3609 fix(server): Re-establish watch on v1.Status errors. Fixes #3608
- #3614 build(cli)!: Zip binaries. Closes #3576

#### Contributors

* Alex Collins <!-- num=2 -->
* Jie Zhang <!-- num=1 -->
* Jonny <!-- num=1 -->
* Remington Breeze <!-- num=2 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=5 -->
* haibingzhao <!-- num=1 -->

## v2.10.0-rc3

#### Bug Fixes

- #3505 Panic on addOutputsToLocalScope
- #3515 v2.9.3 Docker images report they are v2.10.0-rc1
- #3562 Bearer token error argo + microk8s

#### Pull Requests

- #3490 fix: Exceeding quota with volumeClaimTemplates
- #3509 fix(controller): Do not panic on nil output value. Fixes #3505
- #3519 ci: Make builds marginally faster. Fixes #3515
- #3532 fix: Panic on CLI Watch command
- #3566 fix: Skip TestStorageQuotaLimit
- #3579 fix(server): Ignore not-JWT server tokens. Fixes #3562

## v2.10.0-rc2

Release candidate 2 was never released.

## v2.10.0-rc1

#### Enhancements

* #1117 the difference between error and failed status?
* #2343 git artifact fetch of reference fails due to missing credentials
* #2437 Search for workflows by creator
* #3183 Log during wk submit
* #3185 [UI] Perform batch action on workflows
* #859 Workflow Open API validation

#### Bug Fixes

- #2793 argo lint fails with "invalid configuration: no configuration has been provided"
- #3073 msg="finished streaming call with code Unknown" error="context canceled
- #3097 Inconsistent behavior on deleting a running pod in DAG
- #3214 Pod not found when resubmit --memoized
- #3288 withParam value could not be parsed as a JSON list with nested list parameters
- #3342 workflow controller is unable to write events in other namespaces for versions >= v2.9-rc1
- #3383 CLI unusable without KUBECONFIG
- #3411 curl log REST endpoint causing memory error
- #3420 Sequence.start/end/count should be `IntOrString`
- #3436 Panic when volumeMount does not exist

#### Other

- Update manifests to v2.10.0-rc1
- fix: Running pods are garaged in PodGC onSuccess

#### Pull Requests

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3137 docs: Updated WorkflowTemplateRef  on WFT and CWFT
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3248 fix(git): Fixes Git when using auth or fetch. Fixes #2343
- #3272 fix: Reapply Update if CronWorkflow resource changed
- #3276 docs: Add example for handling large output resutls
- #3278 fix: Fix delete --complete
- #3279 feat(cli): Add --logs to `argo [submit|resubmit|retry]. Closes #3183
- #3280 fix: Ensure child pods respect maxDuration
- #3283 docs: Update releasing.md
- #3284 docs: ArchiveLabelSelector document
- #3286 fix(server): Fix validation of overridden ref template parameters.
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3291 chore: Use GitHub Actions to build Docker Images to allow publishing Windows Images
- #3293 feat: Allow to change priority when resubmitting workflows
- #3294 build: Upload E2E diagnostics after failure
- #3297 build: Remove generated Swagger files.
- #3298 chore: Clean up unused constants
- #3301 feat(controller): Add support for Docker workflow executor for Windows nodes
- #3302 ci: Remove CircleCI
- #3304 docs: Rename Ant Financial to Ant Group
- #3308 build: Fix path to go-to-protobuf binary
- #3311 build: Pin `goimports` to working version
- #3315 fix(controller): Fix panic logging.
- #3316 docs: Document access token creation and usage
- #3317 fix(ui): Compiler error from workflows toolbar
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3327 fix: Remove broken SSO from quick-starts
- #3328 feat(controller): Label workflows with their source workflow template. Fixes #3326 
- #3330 fix(ui): runtime error from null savedOptions props
- #3335 chore: Avoid variable name collision with imported package name
- #3338 docs: Field fix (ParallelSteps -> WorkflowStep)
- #3339 feat: Attempt to resolve nested tags
- #3340 perf: Optimize time-based filtering on large number of workflows
- #3345 fix(controller): Allow events to be sent to non-argo namespace. Fixes #3342
- #3350 fix: Don't double-count metric events
- #3352 docs: Adding InVision to Users
- #3353 chore: Simplify deps by removing YAML
- #3354 test: Add e2e tags
- #3357 feat(cli): List only resubmitted workflows option
- #3358 feat(ui): Add Swagger UI
- #3359 fix(server): Fix `context cancelled` red herring error. Fixes #3073
- #3362 feat(controller): Add log message count as metrics.
- #3363 build: Enable Stale Bot
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3365 docs: Wellcome is using Argo in our Data Labs division
- #3367 chore: Remove unused code
- #3368 fix: Fix UI bug in DAGs
- #3369 docs: Make https://argoproj.github.io/argo/ 
- #3370 fix(ui): Confirmation of workflow actions
- #3371 feat: Expose certain queue metrics
- #3372 fix: Fix bug parsing parmeters
- #3375 fix(docs): Fix incorrect example of global parameter usage
- #3376 chore: update aws-sdk-go version
- #3377 chore(ui): Remove unused interfaces for artifacts
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793
- #3386 chore: Added CWFT WorkflowTemplateRef example
- #3392 chore: maybe -> may be
- #3398 docs: Update config example to include useSDKCreds
- #3401 fix: Fix concurrency issues with metrics
- #3403 fix: Ensure non-leaf DAG tasks have their onExit handler's run
- #3407 fix: Script steps fail with exceededQuota
- #3408 fix(ui): Render DAG with exit node
- #3414 docs: Include timezone name reference
- #3418 fix: Use a unique queue to visit nodes
- #3421 fix: Add struct-wide RWMutex to metrics
- #3423 feat(cli): Allow to view previously terminated container logs
- #3424 fix(cli): panic on wait command if event is null
- #3425 fix: Allow ints for sequence start/end/count. Fixes #3420
- #3426 fix: No panic on watch. Fixes #3411
- #3427 fix(sso): Remove unused `groups` claim. Fixes #3411
- #3430 docs: Add Sohu as official Argo user
- #3433 fix(docs): Update kubectl proxy URL
- #3435 fix: Ensure task dependencies run after onExit handler is fulfilled
- #3437 fix(controller): Prevent panic on nil node. Fixes #3436
- #3439 docs: typo in argo stop --help
- #3440 feat(server): Label workflows with creator. Closes #2437
- #3442 chore: Fix GitHub Actions Docker Image build 
- #3450 chore: Upgrade node-sass
- #3451 fix(controller): Respect the volumes of a workflowTemplateRef. Fixes …
- #3455 test(controller): Add memoization tests. See #3214
- #3456 docs: Fixed some typos
- #3464 docs: Add controller-level metrics
- #3465 docs: Fix CLI docs
- #3466 test(controller): Add memoization tests. See #3214 (#3455)
- #3467 docs: Add comments to NodePhase definition. Closes #1117.
- #3469 fix(controller): Fail workflow when pod is deleted with --force. Fixes #3097
- #3470 fix: Metric emission with retryStrategy
- #3473 test(controller): Ensure resubmitted workflows have correct labels
- #3476 docs: In quick-start. Use http, not https for link
- #3477 fix: Pass resolved arguments to onExit handler
- #3478 build: Simplify builds
- #3480 fix: Merge WorkflowTemplateRef with defaults workflow spec
- #3486 fix: link to server auth mode docs, adds Tulip as official user
- #3492 docs: Add link to GitHub Actions in the badge
- #3493 fix(cli): Check mutual exclusivity for argo CLI flags
- #3494 feat: Support Bash Completions for More Resources
- #3495 chore: Added examples for exit handler for step and dag level
- #3497 build: Use `git rev-parse` to accomodate older gits
- #3499 build: Clear cmd docs before generating them
- #3501 [Snyk] Security upgrade swagger-ui-react from 3.28.0 to 3.29.0
- #3504 fix: Panic on releaseAllWorkflowLocks if Object is not Unstructured type

#### Contributors

* 0x1D-1983 <!-- num=1 -->
* Alex Collins <!-- num=37 -->
* Daisuke Taniwaki <!-- num=1 -->
* Galen Han <!-- num=1 -->
* Jeff Uren <!-- num=1 -->
* Markus Lippert <!-- num=3 -->
* Michael Crenshaw <!-- num=2 -->
* Niklas Vest <!-- num=1 -->
* Remington Breeze <!-- num=6 -->
* Saravanan Balasubramanian <!-- num=12 -->
* Simon Behar <!-- num=20 -->
* Snyk bot <!-- num=1 -->
* Trevor Foster <!-- num=1 -->
* Vlad Losev <!-- num=1 -->
* Weston Platter <!-- num=1 -->
* Yuan Tang <!-- num=11 -->
* Zach Aller <!-- num=1 -->
* Zach Himsel <!-- num=1 -->
* candonov <!-- num=2 -->
* maguowei <!-- num=1 -->
v2.10.0-rc4: tag_name: v2.10.0-rc4
body: # Quick Start
## Argo CLI

### Mac

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.0-rc4/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`

```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.0-rc4/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.10.0-rc4/manifests/install.yaml
```

# ⚠️ Potentially Breaking Changes

You may be affected if:

- If you are using the Golang client.
- If you have substantially invalid workflow YAML. Mitigation: [read this document](https://docs.google.com/document/d/1usEwoP5YK8USNCfi2DbGDciOnJcgrCwlFBlbHABwmMI/edit).
- Binaries are now gzipped when uploaded to Github releases.

More information:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793

# Changes

The big enhancements are:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3358 feat(ui): Add Swagger UI
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3440 feat(server): Label workflows with creator. Closes #2437

## v2.10.0-rc4

#### Enhancements

* #3491 support optional Input artifacts when artifacts not exist
* #3576 Reduce CLI binary size

#### Bug Fixes

- #3513 Backoff exponent is off by one
- #3608 Re-establish watch on `watch object was not a workflow *v1.Status` error

#### Pull Requests

- #3512 fix(artifacts): support optional input artifacts, Fixes #3491
- #3514 fix(controller): Backoff exponent is off by one. Fixes #3513
- #3518 fix: String interpreted as boolean in labels
- #3528 fix: Fix when retrying Workflows with Omitted nodes
- #3539 fix: Fix links in fields doc
- #3552 fix: Fix flakey TestRetryOmitted
- #3555 fix(ui): cannot read property 'push' of undefined when filtering by label. Fixes #3550
- #3573 fix(ui): Fix multiple UI issues
- #3581 fix: Argo Workflows does not honour global timeout if step/pod is not able to schedule
- #3596 fix(controller): Fix bug in util/RecoverWorkflowNameFromSelectorString. Add error handling
- #3605 fix: Fix panic and provide better error message on watch endpoint
- #3609 fix(server): Re-establish watch on v1.Status errors. Fixes #3608
- #3614 build(cli)!: Zip binaries. Closes #3576

#### Contributors

* Alex Collins <!-- num=2 -->
* Jie Zhang <!-- num=1 -->
* Jonny <!-- num=1 -->
* Remington Breeze <!-- num=2 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=5 -->
* haibingzhao <!-- num=1 -->

## v2.10.0-rc3

#### Bug Fixes

- #3505 Panic on addOutputsToLocalScope
- #3515 v2.9.3 Docker images report they are v2.10.0-rc1
- #3562 Bearer token error argo + microk8s

#### Pull Requests

- #3490 fix: Exceeding quota with volumeClaimTemplates
- #3509 fix(controller): Do not panic on nil output value. Fixes #3505
- #3519 ci: Make builds marginally faster. Fixes #3515
- #3532 fix: Panic on CLI Watch command
- #3566 fix: Skip TestStorageQuotaLimit
- #3579 fix(server): Ignore not-JWT server tokens. Fixes #3562

## v2.10.0-rc2

Release candidate 2 was never released.

## v2.10.0-rc1

#### Enhancements

* #1117 the difference between error and failed status?
* #2343 git artifact fetch of reference fails due to missing credentials
* #2437 Search for workflows by creator
* #3183 Log during wk submit
* #3185 [UI] Perform batch action on workflows
* #859 Workflow Open API validation

#### Bug Fixes

- #2793 argo lint fails with "invalid configuration: no configuration has been provided"
- #3073 msg="finished streaming call with code Unknown" error="context canceled
- #3097 Inconsistent behavior on deleting a running pod in DAG
- #3214 Pod not found when resubmit --memoized
- #3288 withParam value could not be parsed as a JSON list with nested list parameters
- #3342 workflow controller is unable to write events in other namespaces for versions >= v2.9-rc1
- #3383 CLI unusable without KUBECONFIG
- #3411 curl log REST endpoint causing memory error
- #3420 Sequence.start/end/count should be `IntOrString`
- #3436 Panic when volumeMount does not exist

#### Other

- Update manifests to v2.10.0-rc1
- fix: Running pods are garaged in PodGC onSuccess

#### Pull Requests

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3137 docs: Updated WorkflowTemplateRef  on WFT and CWFT
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3248 fix(git): Fixes Git when using auth or fetch. Fixes #2343
- #3272 fix: Reapply Update if CronWorkflow resource changed
- #3276 docs: Add example for handling large output resutls
- #3278 fix: Fix delete --complete
- #3279 feat(cli): Add --logs to `argo [submit|resubmit|retry]. Closes #3183
- #3280 fix: Ensure child pods respect maxDuration
- #3283 docs: Update releasing.md
- #3284 docs: ArchiveLabelSelector document
- #3286 fix(server): Fix validation of overridden ref template parameters.
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3291 chore: Use GitHub Actions to build Docker Images to allow publishing Windows Images
- #3293 feat: Allow to change priority when resubmitting workflows
- #3294 build: Upload E2E diagnostics after failure
- #3297 build: Remove generated Swagger files.
- #3298 chore: Clean up unused constants
- #3301 feat(controller): Add support for Docker workflow executor for Windows nodes
- #3302 ci: Remove CircleCI
- #3304 docs: Rename Ant Financial to Ant Group
- #3308 build: Fix path to go-to-protobuf binary
- #3311 build: Pin `goimports` to working version
- #3315 fix(controller): Fix panic logging.
- #3316 docs: Document access token creation and usage
- #3317 fix(ui): Compiler error from workflows toolbar
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3327 fix: Remove broken SSO from quick-starts
- #3328 feat(controller): Label workflows with their source workflow template. Fixes #3326 
- #3330 fix(ui): runtime error from null savedOptions props
- #3335 chore: Avoid variable name collision with imported package name
- #3338 docs: Field fix (ParallelSteps -> WorkflowStep)
- #3339 feat: Attempt to resolve nested tags
- #3340 perf: Optimize time-based filtering on large number of workflows
- #3345 fix(controller): Allow events to be sent to non-argo namespace. Fixes #3342
- #3350 fix: Don't double-count metric events
- #3352 docs: Adding InVision to Users
- #3353 chore: Simplify deps by removing YAML
- #3354 test: Add e2e tags
- #3357 feat(cli): List only resubmitted workflows option
- #3358 feat(ui): Add Swagger UI
- #3359 fix(server): Fix `context cancelled` red herring error. Fixes #3073
- #3362 feat(controller): Add log message count as metrics.
- #3363 build: Enable Stale Bot
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3365 docs: Wellcome is using Argo in our Data Labs division
- #3367 chore: Remove unused code
- #3368 fix: Fix UI bug in DAGs
- #3369 docs: Make https://argoproj.github.io/argo/ 
- #3370 fix(ui): Confirmation of workflow actions
- #3371 feat: Expose certain queue metrics
- #3372 fix: Fix bug parsing parmeters
- #3375 fix(docs): Fix incorrect example of global parameter usage
- #3376 chore: update aws-sdk-go version
- #3377 chore(ui): Remove unused interfaces for artifacts
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793
- #3386 chore: Added CWFT WorkflowTemplateRef example
- #3392 chore: maybe -> may be
- #3398 docs: Update config example to include useSDKCreds
- #3401 fix: Fix concurrency issues with metrics
- #3403 fix: Ensure non-leaf DAG tasks have their onExit handler's run
- #3407 fix: Script steps fail with exceededQuota
- #3408 fix(ui): Render DAG with exit node
- #3414 docs: Include timezone name reference
- #3418 fix: Use a unique queue to visit nodes
- #3421 fix: Add struct-wide RWMutex to metrics
- #3423 feat(cli): Allow to view previously terminated container logs
- #3424 fix(cli): panic on wait command if event is null
- #3425 fix: Allow ints for sequence start/end/count. Fixes #3420
- #3426 fix: No panic on watch. Fixes #3411
- #3427 fix(sso): Remove unused `groups` claim. Fixes #3411
- #3430 docs: Add Sohu as official Argo user
- #3433 fix(docs): Update kubectl proxy URL
- #3435 fix: Ensure task dependencies run after onExit handler is fulfilled
- #3437 fix(controller): Prevent panic on nil node. Fixes #3436
- #3439 docs: typo in argo stop --help
- #3440 feat(server): Label workflows with creator. Closes #2437
- #3442 chore: Fix GitHub Actions Docker Image build 
- #3450 chore: Upgrade node-sass
- #3451 fix(controller): Respect the volumes of a workflowTemplateRef. Fixes …
- #3455 test(controller): Add memoization tests. See #3214
- #3456 docs: Fixed some typos
- #3464 docs: Add controller-level metrics
- #3465 docs: Fix CLI docs
- #3466 test(controller): Add memoization tests. See #3214 (#3455)
- #3467 docs: Add comments to NodePhase definition. Closes #1117.
- #3469 fix(controller): Fail workflow when pod is deleted with --force. Fixes #3097
- #3470 fix: Metric emission with retryStrategy
- #3473 test(controller): Ensure resubmitted workflows have correct labels
- #3476 docs: In quick-start. Use http, not https for link
- #3477 fix: Pass resolved arguments to onExit handler
- #3478 build: Simplify builds
- #3480 fix: Merge WorkflowTemplateRef with defaults workflow spec
- #3486 fix: link to server auth mode docs, adds Tulip as official user
- #3492 docs: Add link to GitHub Actions in the badge
- #3493 fix(cli): Check mutual exclusivity for argo CLI flags
- #3494 feat: Support Bash Completions for More Resources
- #3495 chore: Added examples for exit handler for step and dag level
- #3497 build: Use `git rev-parse` to accomodate older gits
- #3499 build: Clear cmd docs before generating them
- #3501 [Snyk] Security upgrade swagger-ui-react from 3.28.0 to 3.29.0
- #3504 fix: Panic on releaseAllWorkflowLocks if Object is not Unstructured type

#### Contributors

* 0x1D-1983 <!-- num=1 -->
* Alex Collins <!-- num=37 -->
* Daisuke Taniwaki <!-- num=1 -->
* Galen Han <!-- num=1 -->
* Jeff Uren <!-- num=1 -->
* Markus Lippert <!-- num=3 -->
* Michael Crenshaw <!-- num=2 -->
* Niklas Vest <!-- num=1 -->
* Remington Breeze <!-- num=6 -->
* Saravanan Balasubramanian <!-- num=12 -->
* Simon Behar <!-- num=20 -->
* Snyk bot <!-- num=1 -->
* Trevor Foster <!-- num=1 -->
* Vlad Losev <!-- num=1 -->
* Weston Platter <!-- num=1 -->
* Yuan Tang <!-- num=11 -->
* Zach Aller <!-- num=1 -->
* Zach Himsel <!-- num=1 -->
* candonov <!-- num=2 -->
* maguowei <!-- num=1 -->
v2.9.4: tag_name: v2.9.4
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.4/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.4/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.9.4/manifests/install.yaml
```

# Changes

## v2.9.4

#### Bug Fixes

- #3532 fix: Panic on CLI Watch command
- #3528 fix: Fix when retrying Workflows with Omitted nodes
- #3480 fix: Merge WorkflowTemplateRef with defaults workflow spec


#### Contributors

* Saravanan Balasubramanian  <!-- num=2 -->
* Simon Behar <!-- num=1 -->


v2.10.0-rc3: tag_name: v2.10.0-rc3
body: # Quick Start
## Argo CLI

### Mac

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.0-rc3/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.0-rc3/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.10.0-rc3/manifests/install.yaml
```

# ⚠️ Potentially Breaking Changes

You may be affected if:

- If you are using the Golang client.
- If you have substantially invalid workflow YAML. Mitigation: [read this document](https://docs.google.com/document/d/1usEwoP5YK8USNCfi2DbGDciOnJcgrCwlFBlbHABwmMI/edit).

More information:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793

# Changes

The big enhancements are:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3358 feat(ui): Add Swagger UI
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3440 feat(server): Label workflows with creator. Closes #2437

## v2.10.0-rc3

#### Bug Fixes

- #3505 Panic on addOutputsToLocalScope
- #3515 v2.9.3 Docker images report they are v2.10.0-rc1
- #3562 Bearer token error argo + microk8s

#### Pull Requests

- #3490 fix: Exceeding quota with volumeClaimTemplates
- #3509 fix(controller): Do not panic on nil output value. Fixes #3505
- #3519 ci: Make builds marginally faster. Fixes #3515
- #3532 fix: Panic on CLI Watch command
- #3566 fix: Skip TestStorageQuotaLimit
- #3579 fix(server): Ignore not-JWT server tokens. Fixes #3562

#### Contributors

* Alex Collins <!-- num=8 -->
* Saravanan Balasubramanian <!-- num=3 -->

## v2.10.0-rc2

Release candidate 2 was never released.

## v2.10.0-rc1

#### Enhancements

* #1117 the difference between error and failed status?
* #2343 git artifact fetch of reference fails due to missing credentials
* #2437 Search for workflows by creator
* #3183 Log during wk submit
* #3185 [UI] Perform batch action on workflows
* #859 Workflow Open API validation

#### Bug Fixes

- #2793 argo lint fails with "invalid configuration: no configuration has been provided"
- #3073 msg="finished streaming call with code Unknown" error="context canceled
- #3097 Inconsistent behavior on deleting a running pod in DAG
- #3214 Pod not found when resubmit --memoized
- #3288 withParam value could not be parsed as a JSON list with nested list parameters
- #3342 workflow controller is unable to write events in other namespaces for versions >= v2.9-rc1
- #3383 CLI unusable without KUBECONFIG
- #3411 curl log REST endpoint causing memory error
- #3420 Sequence.start/end/count should be `IntOrString`
- #3436 Panic when volumeMount does not exist

#### Other

- Update manifests to v2.10.0-rc1
- fix: Running pods are garaged in PodGC onSuccess

#### Pull Requests

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3137 docs: Updated WorkflowTemplateRef  on WFT and CWFT
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3248 fix(git): Fixes Git when using auth or fetch. Fixes #2343
- #3272 fix: Reapply Update if CronWorkflow resource changed
- #3276 docs: Add example for handling large output resutls
- #3278 fix: Fix delete --complete
- #3279 feat(cli): Add --logs to `argo [submit|resubmit|retry]. Closes #3183
- #3280 fix: Ensure child pods respect maxDuration
- #3283 docs: Update releasing.md
- #3284 docs: ArchiveLabelSelector document
- #3286 fix(server): Fix validation of overridden ref template parameters.
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3291 chore: Use GitHub Actions to build Docker Images to allow publishing Windows Images
- #3293 feat: Allow to change priority when resubmitting workflows
- #3294 build: Upload E2E diagnostics after failure
- #3297 build: Remove generated Swagger files.
- #3298 chore: Clean up unused constants
- #3301 feat(controller): Add support for Docker workflow executor for Windows nodes
- #3302 ci: Remove CircleCI
- #3304 docs: Rename Ant Financial to Ant Group
- #3308 build: Fix path to go-to-protobuf binary
- #3311 build: Pin `goimports` to working version
- #3315 fix(controller): Fix panic logging.
- #3316 docs: Document access token creation and usage
- #3317 fix(ui): Compiler error from workflows toolbar
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3327 fix: Remove broken SSO from quick-starts
- #3328 feat(controller): Label workflows with their source workflow template. Fixes #3326 
- #3330 fix(ui): runtime error from null savedOptions props
- #3335 chore: Avoid variable name collision with imported package name
- #3338 docs: Field fix (ParallelSteps -> WorkflowStep)
- #3339 feat: Attempt to resolve nested tags
- #3340 perf: Optimize time-based filtering on large number of workflows
- #3345 fix(controller): Allow events to be sent to non-argo namespace. Fixes #3342
- #3350 fix: Don't double-count metric events
- #3352 docs: Adding InVision to Users
- #3353 chore: Simplify deps by removing YAML
- #3354 test: Add e2e tags
- #3357 feat(cli): List only resubmitted workflows option
- #3358 feat(ui): Add Swagger UI
- #3359 fix(server): Fix `context cancelled` red herring error. Fixes #3073
- #3362 feat(controller): Add log message count as metrics.
- #3363 build: Enable Stale Bot
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3365 docs: Wellcome is using Argo in our Data Labs division
- #3367 chore: Remove unused code
- #3368 fix: Fix UI bug in DAGs
- #3369 docs: Make https://argoproj.github.io/argo/ 
- #3370 fix(ui): Confirmation of workflow actions
- #3371 feat: Expose certain queue metrics
- #3372 fix: Fix bug parsing parmeters
- #3375 fix(docs): Fix incorrect example of global parameter usage
- #3376 chore: update aws-sdk-go version
- #3377 chore(ui): Remove unused interfaces for artifacts
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793
- #3386 chore: Added CWFT WorkflowTemplateRef example
- #3392 chore: maybe -> may be
- #3398 docs: Update config example to include useSDKCreds
- #3401 fix: Fix concurrency issues with metrics
- #3403 fix: Ensure non-leaf DAG tasks have their onExit handler's run
- #3407 fix: Script steps fail with exceededQuota
- #3408 fix(ui): Render DAG with exit node
- #3414 docs: Include timezone name reference
- #3418 fix: Use a unique queue to visit nodes
- #3421 fix: Add struct-wide RWMutex to metrics
- #3423 feat(cli): Allow to view previously terminated container logs
- #3424 fix(cli): panic on wait command if event is null
- #3425 fix: Allow ints for sequence start/end/count. Fixes #3420
- #3426 fix: No panic on watch. Fixes #3411
- #3427 fix(sso): Remove unused `groups` claim. Fixes #3411
- #3430 docs: Add Sohu as official Argo user
- #3433 fix(docs): Update kubectl proxy URL
- #3435 fix: Ensure task dependencies run after onExit handler is fulfilled
- #3437 fix(controller): Prevent panic on nil node. Fixes #3436
- #3439 docs: typo in argo stop --help
- #3440 feat(server): Label workflows with creator. Closes #2437
- #3442 chore: Fix GitHub Actions Docker Image build 
- #3450 chore: Upgrade node-sass
- #3451 fix(controller): Respect the volumes of a workflowTemplateRef. Fixes …
- #3455 test(controller): Add memoization tests. See #3214
- #3456 docs: Fixed some typos
- #3464 docs: Add controller-level metrics
- #3465 docs: Fix CLI docs
- #3466 test(controller): Add memoization tests. See #3214 (#3455)
- #3467 docs: Add comments to NodePhase definition. Closes #1117.
- #3469 fix(controller): Fail workflow when pod is deleted with --force. Fixes #3097
- #3470 fix: Metric emission with retryStrategy
- #3473 test(controller): Ensure resubmitted workflows have correct labels
- #3476 docs: In quick-start. Use http, not https for link
- #3477 fix: Pass resolved arguments to onExit handler
- #3478 build: Simplify builds
- #3480 fix: Merge WorkflowTemplateRef with defaults workflow spec
- #3486 fix: link to server auth mode docs, adds Tulip as official user
- #3492 docs: Add link to GitHub Actions in the badge
- #3493 fix(cli): Check mutual exclusivity for argo CLI flags
- #3494 feat: Support Bash Completions for More Resources
- #3495 chore: Added examples for exit handler for step and dag level
- #3497 build: Use `git rev-parse` to accomodate older gits
- #3499 build: Clear cmd docs before generating them
- #3501 [Snyk] Security upgrade swagger-ui-react from 3.28.0 to 3.29.0
- #3504 fix: Panic on releaseAllWorkflowLocks if Object is not Unstructured type

#### Contributors

* 0x1D-1983 <!-- num=1 -->
* Alex Collins <!-- num=37 -->
* Daisuke Taniwaki <!-- num=1 -->
* Galen Han <!-- num=1 -->
* Jeff Uren <!-- num=1 -->
* Markus Lippert <!-- num=3 -->
* Michael Crenshaw <!-- num=2 -->
* Niklas Vest <!-- num=1 -->
* Remington Breeze <!-- num=6 -->
* Saravanan Balasubramanian <!-- num=12 -->
* Simon Behar <!-- num=20 -->
* Snyk bot <!-- num=1 -->
* Trevor Foster <!-- num=1 -->
* Vlad Losev <!-- num=1 -->
* Weston Platter <!-- num=1 -->
* Yuan Tang <!-- num=11 -->
* Zach Aller <!-- num=1 -->
* Zach Himsel <!-- num=1 -->
* candonov <!-- num=2 -->
* maguowei <!-- num=1 -->
v2.10.0-rc1: tag_name: v2.10.0-rc1
body: # Quick Start
## Argo CLI

### Mac

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.0-rc1/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.10.0-rc1/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.10.0-rc1/manifests/install.yaml
```

# ⚠️ Potentially Breaking Changes

You may be affected if:

- If you are using the Golang client.
- If you have substantially invalid workflow YAML. Mitigation: [read this document](https://docs.google.com/document/d/1usEwoP5YK8USNCfi2DbGDciOnJcgrCwlFBlbHABwmMI/edit).

More information:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793

# Changes

The big enhancements are:

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3358 feat(ui): Add Swagger UI
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3440 feat(server): Label workflows with creator. Closes #2437

## v2.10.0-rc1

#### Enhancements

* #1117 the difference between error and failed status?
* #2343 git artifact fetch of reference fails due to missing credentials
* #2437 Search for workflows by creator
* #3183 Log during wk submit
* #3185 [UI] Perform batch action on workflows
* #859 Workflow Open API validation

#### Bug Fixes

- #2793 argo lint fails with "invalid configuration: no configuration has been provided"
- #3073 msg="finished streaming call with code Unknown" error="context canceled
- #3097 Inconsistent behavior on deleting a running pod in DAG
- #3214 Pod not found when resubmit --memoized
- #3288 withParam value could not be parsed as a JSON list with nested list parameters
- #3342 workflow controller is unable to write events in other namespaces for versions >= v2.9-rc1
- #3383 CLI unusable without KUBECONFIG
- #3411 curl log REST endpoint causing memory error
- #3420 Sequence.start/end/count should be `IntOrString`
- #3436 Panic when volumeMount does not exist

#### Other

- Update manifests to v2.10.0-rc1
- fix: Running pods are garaged in PodGC onSuccess

#### Pull Requests

- #3075 feat(crds)!: Adds CRD generation and enhanced UI resource editor. Closes #859
- #3137 docs: Updated WorkflowTemplateRef  on WFT and CWFT
- #3141 feat: Workflow Semaphore Support
- #3234 feat(ui): Add ability to select multiple workflows from list and perform actions on them. Fixes #3185
- #3248 fix(git): Fixes Git when using auth or fetch. Fixes #2343
- #3272 fix: Reapply Update if CronWorkflow resource changed
- #3276 docs: Add example for handling large output resutls
- #3278 fix: Fix delete --complete
- #3279 feat(cli): Add --logs to `argo [submit|resubmit|retry]. Closes #3183
- #3280 fix: Ensure child pods respect maxDuration
- #3283 docs: Update releasing.md
- #3284 docs: ArchiveLabelSelector document
- #3286 fix(server): Fix validation of overridden ref template parameters.
- #3290 fix(controller)!: Support nested items. Fixes #3288
- #3291 chore: Use GitHub Actions to build Docker Images to allow publishing Windows Images
- #3293 feat: Allow to change priority when resubmitting workflows
- #3294 build: Upload E2E diagnostics after failure
- #3297 build: Remove generated Swagger files.
- #3298 chore: Clean up unused constants
- #3301 feat(controller): Add support for Docker workflow executor for Windows nodes
- #3302 ci: Remove CircleCI
- #3304 docs: Rename Ant Financial to Ant Group
- #3308 build: Fix path to go-to-protobuf binary
- #3311 build: Pin `goimports` to working version
- #3315 fix(controller): Fix panic logging.
- #3316 docs: Document access token creation and usage
- #3317 fix(ui): Compiler error from workflows toolbar
- #3322 feat: Save pagination limit and selected phases/labels to local storage
- #3327 fix: Remove broken SSO from quick-starts
- #3328 feat(controller): Label workflows with their source workflow template. Fixes #3326 
- #3330 fix(ui): runtime error from null savedOptions props
- #3335 chore: Avoid variable name collision with imported package name
- #3338 docs: Field fix (ParallelSteps -> WorkflowStep)
- #3339 feat: Attempt to resolve nested tags
- #3340 perf: Optimize time-based filtering on large number of workflows
- #3345 fix(controller): Allow events to be sent to non-argo namespace. Fixes #3342
- #3350 fix: Don't double-count metric events
- #3352 docs: Adding InVision to Users
- #3353 chore: Simplify deps by removing YAML
- #3354 test: Add e2e tags
- #3357 feat(cli): List only resubmitted workflows option
- #3358 feat(ui): Add Swagger UI
- #3359 fix(server): Fix `context cancelled` red herring error. Fixes #3073
- #3362 feat(controller): Add log message count as metrics.
- #3363 build: Enable Stale Bot
- #3364 feat: Support WorkflowMetadata in WorkflowTemplate and ClusterWorkflowTemplate
- #3365 docs: Wellcome is using Argo in our Data Labs division
- #3367 chore: Remove unused code
- #3368 fix: Fix UI bug in DAGs
- #3369 docs: Make https://argoproj.github.io/argo/ 
- #3370 fix(ui): Confirmation of workflow actions
- #3371 feat: Expose certain queue metrics
- #3372 fix: Fix bug parsing parmeters
- #3375 fix(docs): Fix incorrect example of global parameter usage
- #3376 chore: update aws-sdk-go version
- #3377 chore(ui): Remove unused interfaces for artifacts
- #3385 fix(cli)!: Enable CLI to work without kube config. Closes #3383, #2793
- #3386 chore: Added CWFT WorkflowTemplateRef example
- #3392 chore: maybe -> may be
- #3398 docs: Update config example to include useSDKCreds
- #3401 fix: Fix concurrency issues with metrics
- #3403 fix: Ensure non-leaf DAG tasks have their onExit handler's run
- #3407 fix: Script steps fail with exceededQuota
- #3408 fix(ui): Render DAG with exit node
- #3414 docs: Include timezone name reference
- #3418 fix: Use a unique queue to visit nodes
- #3421 fix: Add struct-wide RWMutex to metrics
- #3423 feat(cli): Allow to view previously terminated container logs
- #3424 fix(cli): panic on wait command if event is null
- #3425 fix: Allow ints for sequence start/end/count. Fixes #3420
- #3426 fix: No panic on watch. Fixes #3411
- #3427 fix(sso): Remove unused `groups` claim. Fixes #3411
- #3430 docs: Add Sohu as official Argo user
- #3433 fix(docs): Update kubectl proxy URL
- #3435 fix: Ensure task dependencies run after onExit handler is fulfilled
- #3437 fix(controller): Prevent panic on nil node. Fixes #3436
- #3439 docs: typo in argo stop --help
- #3440 feat(server): Label workflows with creator. Closes #2437
- #3442 chore: Fix GitHub Actions Docker Image build 
- #3450 chore: Upgrade node-sass
- #3451 fix(controller): Respect the volumes of a workflowTemplateRef. Fixes …
- #3455 test(controller): Add memoization tests. See #3214
- #3456 docs: Fixed some typos
- #3464 docs: Add controller-level metrics
- #3465 docs: Fix CLI docs
- #3466 test(controller): Add memoization tests. See #3214 (#3455)
- #3467 docs: Add comments to NodePhase definition. Closes #1117.
- #3469 fix(controller): Fail workflow when pod is deleted with --force. Fixes #3097
- #3470 fix: Metric emission with retryStrategy
- #3473 test(controller): Ensure resubmitted workflows have correct labels
- #3476 docs: In quick-start. Use http, not https for link
- #3477 fix: Pass resolved arguments to onExit handler
- #3478 build: Simplify builds
- #3480 fix: Merge WorkflowTemplateRef with defaults workflow spec
- #3486 fix: link to server auth mode docs, adds Tulip as official user
- #3492 docs: Add link to GitHub Actions in the badge
- #3493 fix(cli): Check mutual exclusivity for argo CLI flags
- #3494 feat: Support Bash Completions for More Resources
- #3495 chore: Added examples for exit handler for step and dag level
- #3497 build: Use `git rev-parse` to accomodate older gits
- #3499 build: Clear cmd docs before generating them
- #3501 [Snyk] Security upgrade swagger-ui-react from 3.28.0 to 3.29.0
- #3504 fix: Panic on releaseAllWorkflowLocks if Object is not Unstructured type

#### Contributors

* 0x1D-1983 <!-- num=1 -->
* Alex Collins <!-- num=37 -->
* Daisuke Taniwaki <!-- num=1 -->
* Galen Han <!-- num=1 -->
* Jeff Uren <!-- num=1 -->
* Markus Lippert <!-- num=3 -->
* Michael Crenshaw <!-- num=2 -->
* Niklas Vest <!-- num=1 -->
* Remington Breeze <!-- num=6 -->
* Saravanan Balasubramanian <!-- num=12 -->
* Simon Behar <!-- num=20 -->
* Snyk bot <!-- num=1 -->
* Trevor Foster <!-- num=1 -->
* Vlad Losev <!-- num=1 -->
* Weston Platter <!-- num=1 -->
* Yuan Tang <!-- num=11 -->
* Zach Aller <!-- num=1 -->
* Zach Himsel <!-- num=1 -->
* candonov <!-- num=2 -->
* maguowei <!-- num=1 -->
v2.9.3: tag_name: v2.9.3
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.3/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.3/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.9.3/manifests/install.yaml
```

# Changes

## v2.9.3

#### Bug Fixes

- #3097 Inconsistent behavior on deleting a running pod in DAG
- #3214 Pod not found when resubmit --memoized
- #3436 Panic when volumeMount does not exist

#### Pull Requests

- #3437 fix(controller): Prevent panic on nil node. Fixes #3436
- #3451 fix(controller): Respect the volumes of a workflowTemplateRef. Fixes …
- #3455 test(controller): Add memoization tests. See #3214
- #3466 test(controller): Add memoization tests. See #3214 (#3455)
- #3469 fix(controller): Fail workflow when pod is deleted with --force. Fixes #3097
- #3470 fix: Metric emission with retryStrategy
- #3477 fix: Pass resolved arguments to onExit handler
- #3482 fix: Pass resolved arguments to onExit handler

#### Contributors

* Alex Collins <!-- num=23 -->
* Simon Behar <!-- num=3 -->

## v2.9.2

#### Bug Fixes

- #3411 curl log REST endpoint causing memory error

#### Pull Requests

- #3401 fix: Fix concurrency issues with metrics
- #3403 fix: Ensure non-leaf DAG tasks have their onExit handler's run
- #3408 fix(ui): Render DAG with exit node
- #3418 fix: Use a unique queue to visit nodes
- #3421 fix: Add struct-wide RWMutex to metrics
- #3424 fix(cli): panic on wait command if event is null
- #3426 fix: No panic on watch. Fixes #3411
- #3427 fix(sso): Remove unused `groups` claim. Fixes #3411

#### Contributors

* Alex Collins <!-- num=5 -->
* Saravanan Balasubramanian <!-- num=2 -->
* Simon Behar <!-- num=5 -->

## v2.9.1

#### Other

- fix: Running pods are garaged in PodGC onSuccess

#### Contributors

* Alex Collins <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->

## v2.9.0

#### Enhancements

* #1507 Argoexec for windows containers
* #2760 Implement Content Security Policy
* #2761 Add XSS protection to API
* #2782 Workflow Labels - Annotations on Rows
* #2820 Augment `argo list --chunk-size` with `--continue` and `--limit`
* #2908 Do not sleep for 1s each time we reconcile
* #3034 Metrics should display controller error counts by type
* #3098 Inputs and outputs should be labelled in UI
* #3110 Add a way to expose Reource Duration (Memory/CPU) of Workflows in Metrics
* #3112 Cron Workflow Run Now
* #3128 Convenience flag in CLI for latest workflow
* #3225 fix(cli): argo --help does not display @latest alias introduced in #3179

#### Bug Fixes

- #1472 Script results aren't saved if artifacts aren't found
- #2140 Concaternated 20GB GZIP Input Archives Cause Stalling
- #2638 Workflow controller restarts with 'fatal error: concurrent map read and map write'
- #2660 Issue passing List of Objects from script 
- #2780 argo list does not show workflows from all instances or accept --instanceid 
- #2821 Argo delete all/completed should not abort on missing Workflow
- #2835 UserContainer swagger definition not matching command line client
- #2856 Persistence race condition with merging offloaded nodes
- #2888 Swagger giving wrong Kubernetes definitions.
- #2891 Workflow Template UI - "Empty" workflow template causes error when rendering 
- #2934 Enhanced resource duration
- #2955 "Re-establishing workflow watch" should be debug-level
- #2961 Duplicated events for Workflow Node Event
- #2974 Workflow parameter `creationTimestamp` is not RFC3339 compliant
- #2983 `latest` images not built for 20 days
- #2990 Cannot use `optional` with input artifacts/S3
- #2994 apiVersion field in Workflow Event violates API conventions
- #3004 not found latest release version docker image in docker hub
- #3091 In the UI, if the workflow could not start, we should show why - not sit there loading the DAG
- #3118 Fix panics
- #3121 `deletePDBResource` panics if `workflowRef not found`
- #3145 argo get/watch should list parallel entries in order, not alphabetize
- #3163 bug(ui): Workflow List component receiving too much information from server
- #3226 bug(ui): Clicking a label in workflow drawer does not filter workflows by that label
- #3260 Do not log users errors at error level
- #3342 workflow controller is unable to write events in other namespaces for versions >= v2.9-rc1

#### Other

- #1080 argo-ui workflow list api need support pagination
- #1139 Memory Configurations for Argo Operator
- #1376 [argo-ui] css loads Heebo font from the internet
- #1383 Running Argo on hybrid Kubernetes cluster
- #1813 Argo Workflow UI - Authentication and Authorization Feature
- #2860 Need documentation on "nodeFieldSelector"
- #976 [UI] list view performance improvements

#### Pull Requests

- #2450 feat: Enhanced filters for argo {watch,get,submit}
- #2543 test: Increase timeout for flaky test
- #2548 fix(controller): Workflow stop and resume by node didn't properly support offloaded nodes. Fixes #2543
- #2673 feat: Enhanced depends logic
- #2745 feat(argo-server): Add support for SSO. See #1813
- #2747 feat: Windows Container Support. Fixes #1507 and #1383
- #2781 docs(users): Adding Habx to the users list
- #2786 fix(argo-server)!: Implement missing instanceID code. Fixes #2780
- #2807 docs: Update README with new features
- #2816 chore: Upgraded to Node 14.0.0
- #2825 fix(ui): Use LogsViewer for container logs
- #2836 feat: Add metric retention policy
- #2837 fix(swagger): Generate correct Swagger for inline objects. Fixes #2835
- #2839 ci: Build less and therefore faster
- #2851 fix(controller): Add mutex to nameEntryIDMap in cron controller. Fix #2638
- #2854 feat(cli): Refactor `argo list --chunk-size` and add `argo archive list --chunk-size`. Fixes #2820
- #2855 fix: Nodes with pods deleted out-of-band should be Errored, not Failed
- #2863 feat(ui): Add pagination to workflow list. Fixes #1080 and #976
- #2869 fix: Cannot create WorkflowTemplate with un-supplied inputs
- #2872 docs: Update getting-started.md
- #2874 test: Fixes various tests
- #2877 feat(cli): Tolerate deleted workflow when running `argo delete`. Fixes #2821
- #2882 docs: Document node field selector. Closes #2860
- #2889 fix: ConfigMap syntax
- #2896 fix: Display Workflow finish time in UI
- #2904 fix: remove doubled secret entry in server cluster role deployment
- #2907 fix(swagger)!: Fixes invalid K8S definitions in `swagger.json`. Fixes #2888
- #2910 ci: Remove context to stop unauthorized errors on test jobs
- #2911 feat: add local variable pod.retryAttempt (see #2808, #2898)
- #2912 feat: Support Top level workflow template reference 
- #2917 test: Use argoproj/argosay:v1
- #2918 docs: Add docs/scaling.md
- #2920 build: Fix Darwin build
- #2921 feat(controller): Improve throughput of many workflows. Fixes #2908
- #2925 feat(controller): Remove the excessive logging of node data
- #2933 fix: Fixes MySQL 5.7 issue - default null value for timestamp column - Fixes #2932
- #2935 feat(ui): Allow opening workflow logs in a new tab; Closes #2887
- #2937 feat(controller)!: Updates the resource duration calculation. Fixes #2934
- #2939 fix: typo in port-forward.sh
- #2941 fix(controller): Implement offloading for workflow updates that are re-applied. Fixes #2856
- #2943 fix(ui): Change default pagination to all and sort workflows
- #2944 fix(cli): Re-establish watch on EOF
- #2950 feat: adds millisecond-level timestamps to argoexec, implements #2795
- #2951 fix: Don't update backoff message to save operations
- #2958 fix(cli): Remove info logging from watches. Fixes #2955
- #2959 feat(ui): Render 2000+ nodes DAG acceptably.
- #2960 fix(examples): Error with unknown flag: --show-all
- #2964 fix: Remove duplicate node event. Fixes #2961
- #2966 fix: Consider Shutdown when assesing DAG Phase for incomplete Retry node
- #2968 build: Build dev images from cache
- #2971 feat(ui): Enable CSP, HSTS, X-Frame-Options. Fixes #2760, #1376, #2761
- #2972 docs: Document cost optimizations. Fixes #1139
- #2976 fix: Begin counting maxDuration from first child start
- #2977 fix(docs): Typo with link reference
- #2979 refactor(metrics)!: Refactor Metric interface
- #2982 feat(ui): Add Suspend and Resume for Cronworkflow in UI. Closes #1975
- #2984 build: Fix Docker build. Fixes #2983
- #2995 fix(executor/pns): remove sleep before sigkill
- #2997 docs: Use keyFormat instead of keyPrefix in docs
- #2999 fix(events): Correct event API Version. Fixes #2994
- #3000 chore: Update Mockery
- #3001 test: Upgrade to argosay:v2
- #3008 docs: Add StatefulSet and Service doc
- #3009 fix: Improve robustness of releases. Fixes #3004
- #3010 docs: Fix Deprecated formatting
- #3011 fix: Linters should error if nothing was validated
- #3014 fix(executor): Small gzipped files shouldn't be recognized as tarballs. Fixes #3012
- #3015 build: Mockery v1.1.1
- #3018 fix(ui): Displays command args correctly pre-formatted.
- #3019 fix(executor): Optional input artifacts. Fixes #2990
- #3020 docs: Add Ravelin as a user of Argo
- #3023 fix(controller)!: Correctly format workflow.creationTimestamp as RFC3339. Fixes #2974
- #3024 fix(artifacts): Allow tar check to be ignored. Fixes #2140
- #3025 fix(executor): Save script results before artifacts in case of error. Fixes #1472
- #3029 fix: Consider missing optional input/output artifacts with same name
- #3032 chore: Add ability to configure maximum DB connection lifetime
- #3033 fix: Consider metrics that were created and completed in the same operation
- #3035 refactor: Refactor assesDAGPhase logic
- #3037 fix(executor): Properly handle empty resource results, like for a missing get. Fixes #1823
- #3047 fix(artifacts): Revert allow tar check to be ignored. Reverts #3024
- #3052 fix(artifacts): Explicit archive strategy. Fixes #2140
- #3055 feat: Add CronWorkflowConditions to report errors
- #3060 feat(controller): Add default name for artifact repository ref.
- #3064 fix: Update container delete grace period to match Kubernetes default
- #3066 docs: Document work avoidance.
- #3068 docs(users): Add Isbank to users.md
- #3071 fix: Graceful error handling of malformatted log lines in watch
- #3074 build: Use goreman for starting locally.
- #3076 chore: Rename files that include 'top-level' terminology
- #3079 fix(OSS): Fix bug in OSS artifacts
- #3083 fix: Differentiate between Fulfilled and Completed
- #3084 build(swagger): Fix Swagger build problems
- #3086 docs: Add link to USERS.md in PR template
- #3088 feat: Added Label selector and Field selector in Argo list 
- #3089 feat(ui): Add cost optimisation nudges.
- #3094 docs: Document how to backfill a cron workflow
- #3099 docs: Update Getting Started
- #3101 test: fix TestContinueOnFailDag. Closes #2624
- #3107 chore: goimports
- #3108 docs: Add Alibaba Cloud OSS to the list of supported artifacts
- #3116 feat: Add 'submit --from' to CronWorkflow and WorkflowTemplate in UI. Closes #3112
- #3117 feat(cli): More `argo list` and `argo delete` options
- #3119 fix(controller): Do not panic if `woc.orig` in not hydrated. Fixes #3118
- #3123 fix: Remove unnecessary panic
- #3124 docs: add AppDirect to the list of users
- #3125 fix(ui): Display error message instead of DAG when DAG cannot be rendered. Fixes #3091
- #3126 feat(ui): Persist DAG rendering options in local storage. Fixes #3120
- #3127 fix: Panic on invalid WorkflowTemplateRef
- #3129 fix(item): Support ItemValue.Type == List. Fixes #2660
- #3130 fix(ui): Fix label error
- #3131 fix(ui): Input artifacts labelled in UI. Fixes #3098
- #3135 chore: Move default metrics server port/path to consts
- #3137 docs: Updated WorkflowTemplateRef  on WFT and CWFT
- #3140 feat(ui): Add Alibaba Cloud OSS related models in UI
- #3143 enhancement(ui): Add workflow labels column to workflow list. Fixes #2782
- #3144 feat(metrics): Report controller error counters via metrics. Closes #3034
- #3146 fix(cli): Sort expanded nodes by index. Closes #3145
- #3149 feat: Add mode to require Workflows to use workflowTemplateRef
- #3151 feat(ui): Add drawer with more details for each workflow in Workflow List
- #3152 chore: Master needs lint
- #3153 chore: Remove unused nodeType in initializeNodeOrMarkError()
- #3159 build: Fix path to staticfiles and goreman binaries
- #3160 fix(controller): Maybe bug with nil woc.wfSpec. Fixes #3121
- #3161 feat(metrics): Add node-level resources duration as Argo variable for metrics. Closes #3110
- #3162 docs: Add instructions on using Minikube as an alternative to K3D
- #3165 fix(server): Allow field selection for workflow-event endpoint (fixes #3163)
- #3167 docs: fix api swagger file path in docs
- #3174 fix: Do not use alphabetical order if index exists
- #3177 build: Only check Dex in hosts file when SSO is enabled
- #3178 chore: Update Community Meeting link and specify Go@v1.13
- #3179 feat(cli): Add --latest flag for argo get command as per #3128
- #3180 feat(controller): Add `--qps` and `--burst` flags to controller
- #3181 feat(controller): Only process significant pod changes
- #3187 docs: Add Graviti as official Argo user
- #3196 fix(metrics): Ensure stable desc/hash for metrics. Fixes #3193
- #3199 feat: Add '--schedule' flag to 'argo cron create'
- #3200 chore: Remove unused pod in addArchiveLocation()
- #3205 fix(events): Adds config flag. Reduce number of dupe events emitted.
- #3207 feat(sso): Allow reading SSO clientID from a secret.
- #3215 fix(controller): Ensure image name is present in containers. Fixes #3213
- #3216 build: Change "DB=..." to "PROFILE=..."
- #3219 feat: Tick CLI Workflow watch even if there are no new events
- #3220 fix(ui): Correctly update workflow list when workflow are modified/deleted
- #3223 feat: Validate CronWorkflows before execution
- #3228 fix(ui/server): Fix broken label filter functionality on UI due to bug on server. Fix #3226
- #3230 fix(controller): set pod finish timestamp when it is deleted
- #3233 build: Migrate to Github Actions
- #3238 docs: Correct available fields in {{workflow.failures}}
- #3239 fix: Support the TTLStrategy for WorkflowTemplateRef
- #3240 feat(logging): Made more controller err/warn logging structured
- #3242 chore(cli): Add examples of @latest alias for relevant commands. Fixes #3225
- #3245 chore: Covered steps.<STEPNAME>.outputs.parameters in variables document
- #3247 fix: Ensure subscription is closed in log viewer
- #3249 feat: Configure ArchiveLabelSelector for Workflow Archive
- #3251 fix(jqFilter)!: remove extra quotes around output parameter value
- #3253 build: Disable Circle CI and Sonar
- #3256 fix(ui): Update workflow drawer with new duration format
- #3258 chore: update mysql yaml port
- #3261 feat: Append previous workflow name as label to resubmitted workflow
- #3262 fix(controller): More structured logging. Fixes #3260
- #3263 fix: ExitHandler support on workflowtempalteRef
- #3268 fix: Avoid unnecessary nil check for annotations of resubmitted workflow
- #3270 fix: Fixed panic on archiveLabelSelector nil
- #3271 fix: Add {{workflow.status}} to workflow-metrics
- #3272 fix: Reapply Update if CronWorkflow resource changed
- #3273 build: Add warning to ensure 'v' is present on release versions
- #3274 fix(ui): Allow render of templates without entrypoint. Fixes #2891
- #3276 docs: Add example for handling large output resutls
- #3278 fix: Fix delete --complete
- #3280 fix: Ensure child pods respect maxDuration
- #3281 build: Allow to change k8s namespace for installation
- #3282 docs: Update CI Badges
- #3283 docs: Update releasing.md
- #3284 docs: ArchiveLabelSelector document
- #3286 fix(server): Fix validation of overridden ref template parameters.
- #3294 build: Upload E2E diagnostics after failure
- #3297 build: Remove generated Swagger files.
- #3298 chore: Clean up unused constants
- #3302 ci: Remove CircleCI
- #3304 docs: Rename Ant Financial to Ant Group
- #3311 build: Pin `goimports` to working version
- #3315 fix(controller): Fix panic logging.
- #3316 docs: Document access token creation and usage
- #3327 fix: Remove broken SSO from quick-starts
- #3345 fix(controller): Allow events to be sent to non-argo namespace. Fixes #3342
- #3350 fix: Don't double-count metric events
- #3368 fix: Fix UI bug in DAGs

#### Contributors

* Adam Gilat <!-- num=1 -->
* Alex Collins <!-- num=73 -->
* Alex Stein <!-- num=1 -->
* Ben Ye <!-- num=1 -->
* Caden <!-- num=1 -->
* Caglar Gulseni <!-- num=1 -->
* Daisuke Taniwaki <!-- num=1 -->
* Daniel Sutton <!-- num=1 -->
* Florent Clairambault <!-- num=1 -->
* Grant Stephens <!-- num=1 -->
* Huan-Cheng Chang <!-- num=3 -->
* Jie Zhang <!-- num=1 -->
* Kannappan Sirchabesan <!-- num=1 -->
* Leonardo Luz <!-- num=1 -->
* Markus Lippert <!-- num=1 -->
* Matt Brant <!-- num=1 -->
* Michael Crenshaw <!-- num=1 -->
* Mike Seddon <!-- num=1 -->
* Pierre Houssin <!-- num=1 -->
* Pradip Caulagi <!-- num=2 -->
* Remington Breeze <!-- num=8 -->
* Romain GUICHARD <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=11 -->
* Sascha Grunert <!-- num=1 -->
* Simon Behar <!-- num=49 -->
* Stephen Steiner <!-- num=1 -->
* Tomas Valasek <!-- num=1 -->
* Vardan Manucharyan <!-- num=1 -->
* Vlad Losev <!-- num=2 -->
* William <!-- num=1 -->
* Youngjoon Lee <!-- num=1 -->
* Yuan Tang <!-- num=13 -->
* Yunhai Luo <!-- num=1 -->
* dmayle <!-- num=1 -->
* maguowei <!-- num=1 -->
* mark9white <!-- num=4 -->
* shibataka000 <!-- num=1 -->

v2.9.2: tag_name: v2.9.2
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.2/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.2/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.9.2/manifests/install.yaml
```

# Changes

## v2.9.2

#### Bug Fixes

- #3411 curl log REST endpoint causing memory error

#### Pull Requests

- #3401 fix: Fix concurrency issues with metrics
- #3403 fix: Ensure non-leaf DAG tasks have their onExit handler's run
- #3408 fix(ui): Render DAG with exit node
- #3418 fix: Use a unique queue to visit nodes
- #3421 fix: Add struct-wide RWMutex to metrics
- #3424 fix(cli): panic on wait command if event is null
- #3426 fix: No panic on watch. Fixes #3411
- #3427 fix(sso): Remove unused `groups` claim. Fixes #3411

#### Contributors

* Alex Collins <!-- num=5 -->
* Saravanan Balasubramanian <!-- num=2 -->
* Simon Behar <!-- num=5 -->

## v2.9.1

#### Other

- fix: Running pods are garaged in PodGC onSuccess

#### Contributors

* Alex Collins <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->

## v2.9.0

#### Enhancements

* #1507 Argoexec for windows containers
* #2760 Implement Content Security Policy
* #2761 Add XSS protection to API
* #2782 Workflow Labels - Annotations on Rows
* #2820 Augment `argo list --chunk-size` with `--continue` and `--limit`
* #2908 Do not sleep for 1s each time we reconcile
* #3034 Metrics should display controller error counts by type
* #3098 Inputs and outputs should be labelled in UI
* #3110 Add a way to expose Reource Duration (Memory/CPU) of Workflows in Metrics
* #3112 Cron Workflow Run Now
* #3128 Convenience flag in CLI for latest workflow
* #3225 fix(cli): argo --help does not display @latest alias introduced in #3179

#### Bug Fixes

- #1472 Script results aren't saved if artifacts aren't found
- #2140 Concaternated 20GB GZIP Input Archives Cause Stalling
- #2638 Workflow controller restarts with 'fatal error: concurrent map read and map write'
- #2660 Issue passing List of Objects from script 
- #2780 argo list does not show workflows from all instances or accept --instanceid 
- #2821 Argo delete all/completed should not abort on missing Workflow
- #2835 UserContainer swagger definition not matching command line client
- #2856 Persistence race condition with merging offloaded nodes
- #2888 Swagger giving wrong Kubernetes definitions.
- #2891 Workflow Template UI - "Empty" workflow template causes error when rendering 
- #2934 Enhanced resource duration
- #2955 "Re-establishing workflow watch" should be debug-level
- #2961 Duplicated events for Workflow Node Event
- #2974 Workflow parameter `creationTimestamp` is not RFC3339 compliant
- #2983 `latest` images not built for 20 days
- #2990 Cannot use `optional` with input artifacts/S3
- #2994 apiVersion field in Workflow Event violates API conventions
- #3004 not found latest release version docker image in docker hub
- #3091 In the UI, if the workflow could not start, we should show why - not sit there loading the DAG
- #3118 Fix panics
- #3121 `deletePDBResource` panics if `workflowRef not found`
- #3145 argo get/watch should list parallel entries in order, not alphabetize
- #3163 bug(ui): Workflow List component receiving too much information from server
- #3226 bug(ui): Clicking a label in workflow drawer does not filter workflows by that label
- #3260 Do not log users errors at error level
- #3342 workflow controller is unable to write events in other namespaces for versions >= v2.9-rc1

#### Other

- #1080 argo-ui workflow list api need support pagination
- #1139 Memory Configurations for Argo Operator
- #1376 [argo-ui] css loads Heebo font from the internet
- #1383 Running Argo on hybrid Kubernetes cluster
- #1813 Argo Workflow UI - Authentication and Authorization Feature
- #2860 Need documentation on "nodeFieldSelector"
- #976 [UI] list view performance improvements

#### Pull Requests

- #2450 feat: Enhanced filters for argo {watch,get,submit}
- #2543 test: Increase timeout for flaky test
- #2548 fix(controller): Workflow stop and resume by node didn't properly support offloaded nodes. Fixes #2543
- #2673 feat: Enhanced depends logic
- #2745 feat(argo-server): Add support for SSO. See #1813
- #2747 feat: Windows Container Support. Fixes #1507 and #1383
- #2781 docs(users): Adding Habx to the users list
- #2786 fix(argo-server)!: Implement missing instanceID code. Fixes #2780
- #2807 docs: Update README with new features
- #2816 chore: Upgraded to Node 14.0.0
- #2825 fix(ui): Use LogsViewer for container logs
- #2836 feat: Add metric retention policy
- #2837 fix(swagger): Generate correct Swagger for inline objects. Fixes #2835
- #2839 ci: Build less and therefore faster
- #2851 fix(controller): Add mutex to nameEntryIDMap in cron controller. Fix #2638
- #2854 feat(cli): Refactor `argo list --chunk-size` and add `argo archive list --chunk-size`. Fixes #2820
- #2855 fix: Nodes with pods deleted out-of-band should be Errored, not Failed
- #2863 feat(ui): Add pagination to workflow list. Fixes #1080 and #976
- #2869 fix: Cannot create WorkflowTemplate with un-supplied inputs
- #2872 docs: Update getting-started.md
- #2874 test: Fixes various tests
- #2877 feat(cli): Tolerate deleted workflow when running `argo delete`. Fixes #2821
- #2882 docs: Document node field selector. Closes #2860
- #2889 fix: ConfigMap syntax
- #2896 fix: Display Workflow finish time in UI
- #2904 fix: remove doubled secret entry in server cluster role deployment
- #2907 fix(swagger)!: Fixes invalid K8S definitions in `swagger.json`. Fixes #2888
- #2910 ci: Remove context to stop unauthorized errors on test jobs
- #2911 feat: add local variable pod.retryAttempt (see #2808, #2898)
- #2912 feat: Support Top level workflow template reference 
- #2917 test: Use argoproj/argosay:v1
- #2918 docs: Add docs/scaling.md
- #2920 build: Fix Darwin build
- #2921 feat(controller): Improve throughput of many workflows. Fixes #2908
- #2925 feat(controller): Remove the excessive logging of node data
- #2933 fix: Fixes MySQL 5.7 issue - default null value for timestamp column - Fixes #2932
- #2935 feat(ui): Allow opening workflow logs in a new tab; Closes #2887
- #2937 feat(controller)!: Updates the resource duration calculation. Fixes #2934
- #2939 fix: typo in port-forward.sh
- #2941 fix(controller): Implement offloading for workflow updates that are re-applied. Fixes #2856
- #2943 fix(ui): Change default pagination to all and sort workflows
- #2944 fix(cli): Re-establish watch on EOF
- #2950 feat: adds millisecond-level timestamps to argoexec, implements #2795
- #2951 fix: Don't update backoff message to save operations
- #2958 fix(cli): Remove info logging from watches. Fixes #2955
- #2959 feat(ui): Render 2000+ nodes DAG acceptably.
- #2960 fix(examples): Error with unknown flag: --show-all
- #2964 fix: Remove duplicate node event. Fixes #2961
- #2966 fix: Consider Shutdown when assesing DAG Phase for incomplete Retry node
- #2968 build: Build dev images from cache
- #2971 feat(ui): Enable CSP, HSTS, X-Frame-Options. Fixes #2760, #1376, #2761
- #2972 docs: Document cost optimizations. Fixes #1139
- #2976 fix: Begin counting maxDuration from first child start
- #2977 fix(docs): Typo with link reference
- #2979 refactor(metrics)!: Refactor Metric interface
- #2982 feat(ui): Add Suspend and Resume for Cronworkflow in UI. Closes #1975
- #2984 build: Fix Docker build. Fixes #2983
- #2995 fix(executor/pns): remove sleep before sigkill
- #2997 docs: Use keyFormat instead of keyPrefix in docs
- #2999 fix(events): Correct event API Version. Fixes #2994
- #3000 chore: Update Mockery
- #3001 test: Upgrade to argosay:v2
- #3008 docs: Add StatefulSet and Service doc
- #3009 fix: Improve robustness of releases. Fixes #3004
- #3010 docs: Fix Deprecated formatting
- #3011 fix: Linters should error if nothing was validated
- #3014 fix(executor): Small gzipped files shouldn't be recognized as tarballs. Fixes #3012
- #3015 build: Mockery v1.1.1
- #3018 fix(ui): Displays command args correctly pre-formatted.
- #3019 fix(executor): Optional input artifacts. Fixes #2990
- #3020 docs: Add Ravelin as a user of Argo
- #3023 fix(controller)!: Correctly format workflow.creationTimestamp as RFC3339. Fixes #2974
- #3024 fix(artifacts): Allow tar check to be ignored. Fixes #2140
- #3025 fix(executor): Save script results before artifacts in case of error. Fixes #1472
- #3029 fix: Consider missing optional input/output artifacts with same name
- #3032 chore: Add ability to configure maximum DB connection lifetime
- #3033 fix: Consider metrics that were created and completed in the same operation
- #3035 refactor: Refactor assesDAGPhase logic
- #3037 fix(executor): Properly handle empty resource results, like for a missing get. Fixes #1823
- #3047 fix(artifacts): Revert allow tar check to be ignored. Reverts #3024
- #3052 fix(artifacts): Explicit archive strategy. Fixes #2140
- #3055 feat: Add CronWorkflowConditions to report errors
- #3060 feat(controller): Add default name for artifact repository ref.
- #3064 fix: Update container delete grace period to match Kubernetes default
- #3066 docs: Document work avoidance.
- #3068 docs(users): Add Isbank to users.md
- #3071 fix: Graceful error handling of malformatted log lines in watch
- #3074 build: Use goreman for starting locally.
- #3076 chore: Rename files that include 'top-level' terminology
- #3079 fix(OSS): Fix bug in OSS artifacts
- #3083 fix: Differentiate between Fulfilled and Completed
- #3084 build(swagger): Fix Swagger build problems
- #3086 docs: Add link to USERS.md in PR template
- #3088 feat: Added Label selector and Field selector in Argo list 
- #3089 feat(ui): Add cost optimisation nudges.
- #3094 docs: Document how to backfill a cron workflow
- #3099 docs: Update Getting Started
- #3101 test: fix TestContinueOnFailDag. Closes #2624
- #3107 chore: goimports
- #3108 docs: Add Alibaba Cloud OSS to the list of supported artifacts
- #3116 feat: Add 'submit --from' to CronWorkflow and WorkflowTemplate in UI. Closes #3112
- #3117 feat(cli): More `argo list` and `argo delete` options
- #3119 fix(controller): Do not panic if `woc.orig` in not hydrated. Fixes #3118
- #3123 fix: Remove unnecessary panic
- #3124 docs: add AppDirect to the list of users
- #3125 fix(ui): Display error message instead of DAG when DAG cannot be rendered. Fixes #3091
- #3126 feat(ui): Persist DAG rendering options in local storage. Fixes #3120
- #3127 fix: Panic on invalid WorkflowTemplateRef
- #3129 fix(item): Support ItemValue.Type == List. Fixes #2660
- #3130 fix(ui): Fix label error
- #3131 fix(ui): Input artifacts labelled in UI. Fixes #3098
- #3135 chore: Move default metrics server port/path to consts
- #3137 docs: Updated WorkflowTemplateRef  on WFT and CWFT
- #3140 feat(ui): Add Alibaba Cloud OSS related models in UI
- #3143 enhancement(ui): Add workflow labels column to workflow list. Fixes #2782
- #3144 feat(metrics): Report controller error counters via metrics. Closes #3034
- #3146 fix(cli): Sort expanded nodes by index. Closes #3145
- #3149 feat: Add mode to require Workflows to use workflowTemplateRef
- #3151 feat(ui): Add drawer with more details for each workflow in Workflow List
- #3152 chore: Master needs lint
- #3153 chore: Remove unused nodeType in initializeNodeOrMarkError()
- #3159 build: Fix path to staticfiles and goreman binaries
- #3160 fix(controller): Maybe bug with nil woc.wfSpec. Fixes #3121
- #3161 feat(metrics): Add node-level resources duration as Argo variable for metrics. Closes #3110
- #3162 docs: Add instructions on using Minikube as an alternative to K3D
- #3165 fix(server): Allow field selection for workflow-event endpoint (fixes #3163)
- #3167 docs: fix api swagger file path in docs
- #3174 fix: Do not use alphabetical order if index exists
- #3177 build: Only check Dex in hosts file when SSO is enabled
- #3178 chore: Update Community Meeting link and specify Go@v1.13
- #3179 feat(cli): Add --latest flag for argo get command as per #3128
- #3180 feat(controller): Add `--qps` and `--burst` flags to controller
- #3181 feat(controller): Only process significant pod changes
- #3187 docs: Add Graviti as official Argo user
- #3196 fix(metrics): Ensure stable desc/hash for metrics. Fixes #3193
- #3199 feat: Add '--schedule' flag to 'argo cron create'
- #3200 chore: Remove unused pod in addArchiveLocation()
- #3205 fix(events): Adds config flag. Reduce number of dupe events emitted.
- #3207 feat(sso): Allow reading SSO clientID from a secret.
- #3215 fix(controller): Ensure image name is present in containers. Fixes #3213
- #3216 build: Change "DB=..." to "PROFILE=..."
- #3219 feat: Tick CLI Workflow watch even if there are no new events
- #3220 fix(ui): Correctly update workflow list when workflow are modified/deleted
- #3223 feat: Validate CronWorkflows before execution
- #3228 fix(ui/server): Fix broken label filter functionality on UI due to bug on server. Fix #3226
- #3230 fix(controller): set pod finish timestamp when it is deleted
- #3233 build: Migrate to Github Actions
- #3238 docs: Correct available fields in {{workflow.failures}}
- #3239 fix: Support the TTLStrategy for WorkflowTemplateRef
- #3240 feat(logging): Made more controller err/warn logging structured
- #3242 chore(cli): Add examples of @latest alias for relevant commands. Fixes #3225
- #3245 chore: Covered steps.<STEPNAME>.outputs.parameters in variables document
- #3247 fix: Ensure subscription is closed in log viewer
- #3249 feat: Configure ArchiveLabelSelector for Workflow Archive
- #3251 fix(jqFilter)!: remove extra quotes around output parameter value
- #3253 build: Disable Circle CI and Sonar
- #3256 fix(ui): Update workflow drawer with new duration format
- #3258 chore: update mysql yaml port
- #3261 feat: Append previous workflow name as label to resubmitted workflow
- #3262 fix(controller): More structured logging. Fixes #3260
- #3263 fix: ExitHandler support on workflowtempalteRef
- #3268 fix: Avoid unnecessary nil check for annotations of resubmitted workflow
- #3270 fix: Fixed panic on archiveLabelSelector nil
- #3271 fix: Add {{workflow.status}} to workflow-metrics
- #3272 fix: Reapply Update if CronWorkflow resource changed
- #3273 build: Add warning to ensure 'v' is present on release versions
- #3274 fix(ui): Allow render of templates without entrypoint. Fixes #2891
- #3276 docs: Add example for handling large output resutls
- #3278 fix: Fix delete --complete
- #3280 fix: Ensure child pods respect maxDuration
- #3281 build: Allow to change k8s namespace for installation
- #3282 docs: Update CI Badges
- #3283 docs: Update releasing.md
- #3284 docs: ArchiveLabelSelector document
- #3286 fix(server): Fix validation of overridden ref template parameters.
- #3294 build: Upload E2E diagnostics after failure
- #3297 build: Remove generated Swagger files.
- #3298 chore: Clean up unused constants
- #3302 ci: Remove CircleCI
- #3304 docs: Rename Ant Financial to Ant Group
- #3311 build: Pin `goimports` to working version
- #3315 fix(controller): Fix panic logging.
- #3316 docs: Document access token creation and usage
- #3327 fix: Remove broken SSO from quick-starts
- #3345 fix(controller): Allow events to be sent to non-argo namespace. Fixes #3342
- #3350 fix: Don't double-count metric events
- #3368 fix: Fix UI bug in DAGs

#### Contributors

* Adam Gilat <!-- num=1 -->
* Alex Collins <!-- num=73 -->
* Alex Stein <!-- num=1 -->
* Ben Ye <!-- num=1 -->
* Caden <!-- num=1 -->
* Caglar Gulseni <!-- num=1 -->
* Daisuke Taniwaki <!-- num=1 -->
* Daniel Sutton <!-- num=1 -->
* Florent Clairambault <!-- num=1 -->
* Grant Stephens <!-- num=1 -->
* Huan-Cheng Chang <!-- num=3 -->
* Jie Zhang <!-- num=1 -->
* Kannappan Sirchabesan <!-- num=1 -->
* Leonardo Luz <!-- num=1 -->
* Markus Lippert <!-- num=1 -->
* Matt Brant <!-- num=1 -->
* Michael Crenshaw <!-- num=1 -->
* Mike Seddon <!-- num=1 -->
* Pierre Houssin <!-- num=1 -->
* Pradip Caulagi <!-- num=2 -->
* Remington Breeze <!-- num=8 -->
* Romain GUICHARD <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=11 -->
* Sascha Grunert <!-- num=1 -->
* Simon Behar <!-- num=49 -->
* Stephen Steiner <!-- num=1 -->
* Tomas Valasek <!-- num=1 -->
* Vardan Manucharyan <!-- num=1 -->
* Vlad Losev <!-- num=2 -->
* William <!-- num=1 -->
* Youngjoon Lee <!-- num=1 -->
* Yuan Tang <!-- num=13 -->
* Yunhai Luo <!-- num=1 -->
* dmayle <!-- num=1 -->
* maguowei <!-- num=1 -->
* mark9white <!-- num=4 -->
* shibataka000 <!-- num=1 -->

v2.9.1: tag_name: v2.9.1
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.1/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.1/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.9.1/manifests/install.yaml
```

# Changes

#### Other

- fix: Running pods are garaged in PodGC onSuccess

#### Contributors

* Alex Collins <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->

## v2.9.0

#### Enhancements

* #1507 Argoexec for windows containers
* #2760 Implement Content Security Policy
* #2761 Add XSS protection to API
* #2782 Workflow Labels - Annotations on Rows
* #2820 Augment `argo list --chunk-size` with `--continue` and `--limit`
* #2908 Do not sleep for 1s each time we reconcile
* #3034 Metrics should display controller error counts by type
* #3098 Inputs and outputs should be labelled in UI
* #3110 Add a way to expose Reource Duration (Memory/CPU) of Workflows in Metrics
* #3112 Cron Workflow Run Now
* #3128 Convenience flag in CLI for latest workflow
* #3225 fix(cli): argo --help does not display @latest alias introduced in #3179

#### Bug Fixes

- #1472 Script results aren't saved if artifacts aren't found
- #2140 Concaternated 20GB GZIP Input Archives Cause Stalling
- #2638 Workflow controller restarts with 'fatal error: concurrent map read and map write'
- #2660 Issue passing List of Objects from script 
- #2780 argo list does not show workflows from all instances or accept --instanceid 
- #2821 Argo delete all/completed should not abort on missing Workflow
- #2835 UserContainer swagger definition not matching command line client
- #2856 Persistence race condition with merging offloaded nodes
- #2888 Swagger giving wrong Kubernetes definitions.
- #2891 Workflow Template UI - "Empty" workflow template causes error when rendering 
- #2934 Enhanced resource duration
- #2955 "Re-establishing workflow watch" should be debug-level
- #2961 Duplicated events for Workflow Node Event
- #2974 Workflow parameter `creationTimestamp` is not RFC3339 compliant
- #2983 `latest` images not built for 20 days
- #2990 Cannot use `optional` with input artifacts/S3
- #2994 apiVersion field in Workflow Event violates API conventions
- #3004 not found latest release version docker image in docker hub
- #3091 In the UI, if the workflow could not start, we should show why - not sit there loading the DAG
- #3118 Fix panics
- #3121 `deletePDBResource` panics if `workflowRef not found`
- #3145 argo get/watch should list parallel entries in order, not alphabetize
- #3163 bug(ui): Workflow List component receiving too much information from server
- #3226 bug(ui): Clicking a label in workflow drawer does not filter workflows by that label
- #3260 Do not log users errors at error level
- #3342 workflow controller is unable to write events in other namespaces for versions >= v2.9-rc1

#### Other

- #1080 argo-ui workflow list api need support pagination
- #1139 Memory Configurations for Argo Operator
- #1376 [argo-ui] css loads Heebo font from the internet
- #1383 Running Argo on hybrid Kubernetes cluster
- #1813 Argo Workflow UI - Authentication and Authorization Feature
- #2860 Need documentation on "nodeFieldSelector"
- #976 [UI] list view performance improvements

#### Pull Requests

- #2450 feat: Enhanced filters for argo {watch,get,submit}
- #2543 test: Increase timeout for flaky test
- #2548 fix(controller): Workflow stop and resume by node didn't properly support offloaded nodes. Fixes #2543
- #2673 feat: Enhanced depends logic
- #2745 feat(argo-server): Add support for SSO. See #1813
- #2747 feat: Windows Container Support. Fixes #1507 and #1383
- #2781 docs(users): Adding Habx to the users list
- #2786 fix(argo-server)!: Implement missing instanceID code. Fixes #2780
- #2807 docs: Update README with new features
- #2816 chore: Upgraded to Node 14.0.0
- #2825 fix(ui): Use LogsViewer for container logs
- #2836 feat: Add metric retention policy
- #2837 fix(swagger): Generate correct Swagger for inline objects. Fixes #2835
- #2839 ci: Build less and therefore faster
- #2851 fix(controller): Add mutex to nameEntryIDMap in cron controller. Fix #2638
- #2854 feat(cli): Refactor `argo list --chunk-size` and add `argo archive list --chunk-size`. Fixes #2820
- #2855 fix: Nodes with pods deleted out-of-band should be Errored, not Failed
- #2863 feat(ui): Add pagination to workflow list. Fixes #1080 and #976
- #2869 fix: Cannot create WorkflowTemplate with un-supplied inputs
- #2872 docs: Update getting-started.md
- #2874 test: Fixes various tests
- #2877 feat(cli): Tolerate deleted workflow when running `argo delete`. Fixes #2821
- #2882 docs: Document node field selector. Closes #2860
- #2889 fix: ConfigMap syntax
- #2896 fix: Display Workflow finish time in UI
- #2904 fix: remove doubled secret entry in server cluster role deployment
- #2907 fix(swagger)!: Fixes invalid K8S definitions in `swagger.json`. Fixes #2888
- #2910 ci: Remove context to stop unauthorized errors on test jobs
- #2911 feat: add local variable pod.retryAttempt (see #2808, #2898)
- #2912 feat: Support Top level workflow template reference 
- #2917 test: Use argoproj/argosay:v1
- #2918 docs: Add docs/scaling.md
- #2920 build: Fix Darwin build
- #2921 feat(controller): Improve throughput of many workflows. Fixes #2908
- #2925 feat(controller): Remove the excessive logging of node data
- #2933 fix: Fixes MySQL 5.7 issue - default null value for timestamp column - Fixes #2932
- #2935 feat(ui): Allow opening workflow logs in a new tab; Closes #2887
- #2937 feat(controller)!: Updates the resource duration calculation. Fixes #2934
- #2939 fix: typo in port-forward.sh
- #2941 fix(controller): Implement offloading for workflow updates that are re-applied. Fixes #2856
- #2943 fix(ui): Change default pagination to all and sort workflows
- #2944 fix(cli): Re-establish watch on EOF
- #2950 feat: adds millisecond-level timestamps to argoexec, implements #2795
- #2951 fix: Don't update backoff message to save operations
- #2958 fix(cli): Remove info logging from watches. Fixes #2955
- #2959 feat(ui): Render 2000+ nodes DAG acceptably.
- #2960 fix(examples): Error with unknown flag: --show-all
- #2964 fix: Remove duplicate node event. Fixes #2961
- #2966 fix: Consider Shutdown when assesing DAG Phase for incomplete Retry node
- #2968 build: Build dev images from cache
- #2971 feat(ui): Enable CSP, HSTS, X-Frame-Options. Fixes #2760, #1376, #2761
- #2972 docs: Document cost optimizations. Fixes #1139
- #2976 fix: Begin counting maxDuration from first child start
- #2977 fix(docs): Typo with link reference
- #2979 refactor(metrics)!: Refactor Metric interface
- #2982 feat(ui): Add Suspend and Resume for Cronworkflow in UI. Closes #1975
- #2984 build: Fix Docker build. Fixes #2983
- #2995 fix(executor/pns): remove sleep before sigkill
- #2997 docs: Use keyFormat instead of keyPrefix in docs
- #2999 fix(events): Correct event API Version. Fixes #2994
- #3000 chore: Update Mockery
- #3001 test: Upgrade to argosay:v2
- #3008 docs: Add StatefulSet and Service doc
- #3009 fix: Improve robustness of releases. Fixes #3004
- #3010 docs: Fix Deprecated formatting
- #3011 fix: Linters should error if nothing was validated
- #3014 fix(executor): Small gzipped files shouldn't be recognized as tarballs. Fixes #3012
- #3015 build: Mockery v1.1.1
- #3018 fix(ui): Displays command args correctly pre-formatted.
- #3019 fix(executor): Optional input artifacts. Fixes #2990
- #3020 docs: Add Ravelin as a user of Argo
- #3023 fix(controller)!: Correctly format workflow.creationTimestamp as RFC3339. Fixes #2974
- #3024 fix(artifacts): Allow tar check to be ignored. Fixes #2140
- #3025 fix(executor): Save script results before artifacts in case of error. Fixes #1472
- #3029 fix: Consider missing optional input/output artifacts with same name
- #3032 chore: Add ability to configure maximum DB connection lifetime
- #3033 fix: Consider metrics that were created and completed in the same operation
- #3035 refactor: Refactor assesDAGPhase logic
- #3037 fix(executor): Properly handle empty resource results, like for a missing get. Fixes #1823
- #3047 fix(artifacts): Revert allow tar check to be ignored. Reverts #3024
- #3052 fix(artifacts): Explicit archive strategy. Fixes #2140
- #3055 feat: Add CronWorkflowConditions to report errors
- #3060 feat(controller): Add default name for artifact repository ref.
- #3064 fix: Update container delete grace period to match Kubernetes default
- #3066 docs: Document work avoidance.
- #3068 docs(users): Add Isbank to users.md
- #3071 fix: Graceful error handling of malformatted log lines in watch
- #3074 build: Use goreman for starting locally.
- #3076 chore: Rename files that include 'top-level' terminology
- #3079 fix(OSS): Fix bug in OSS artifacts
- #3083 fix: Differentiate between Fulfilled and Completed
- #3084 build(swagger): Fix Swagger build problems
- #3086 docs: Add link to USERS.md in PR template
- #3088 feat: Added Label selector and Field selector in Argo list 
- #3089 feat(ui): Add cost optimisation nudges.
- #3094 docs: Document how to backfill a cron workflow
- #3099 docs: Update Getting Started
- #3101 test: fix TestContinueOnFailDag. Closes #2624
- #3107 chore: goimports
- #3108 docs: Add Alibaba Cloud OSS to the list of supported artifacts
- #3116 feat: Add 'submit --from' to CronWorkflow and WorkflowTemplate in UI. Closes #3112
- #3117 feat(cli): More `argo list` and `argo delete` options
- #3119 fix(controller): Do not panic if `woc.orig` in not hydrated. Fixes #3118
- #3123 fix: Remove unnecessary panic
- #3124 docs: add AppDirect to the list of users
- #3125 fix(ui): Display error message instead of DAG when DAG cannot be rendered. Fixes #3091
- #3126 feat(ui): Persist DAG rendering options in local storage. Fixes #3120
- #3127 fix: Panic on invalid WorkflowTemplateRef
- #3129 fix(item): Support ItemValue.Type == List. Fixes #2660
- #3130 fix(ui): Fix label error
- #3131 fix(ui): Input artifacts labelled in UI. Fixes #3098
- #3135 chore: Move default metrics server port/path to consts
- #3137 docs: Updated WorkflowTemplateRef  on WFT and CWFT
- #3140 feat(ui): Add Alibaba Cloud OSS related models in UI
- #3143 enhancement(ui): Add workflow labels column to workflow list. Fixes #2782
- #3144 feat(metrics): Report controller error counters via metrics. Closes #3034
- #3146 fix(cli): Sort expanded nodes by index. Closes #3145
- #3149 feat: Add mode to require Workflows to use workflowTemplateRef
- #3151 feat(ui): Add drawer with more details for each workflow in Workflow List
- #3152 chore: Master needs lint
- #3153 chore: Remove unused nodeType in initializeNodeOrMarkError()
- #3159 build: Fix path to staticfiles and goreman binaries
- #3160 fix(controller): Maybe bug with nil woc.wfSpec. Fixes #3121
- #3161 feat(metrics): Add node-level resources duration as Argo variable for metrics. Closes #3110
- #3162 docs: Add instructions on using Minikube as an alternative to K3D
- #3165 fix(server): Allow field selection for workflow-event endpoint (fixes #3163)
- #3167 docs: fix api swagger file path in docs
- #3174 fix: Do not use alphabetical order if index exists
- #3177 build: Only check Dex in hosts file when SSO is enabled
- #3178 chore: Update Community Meeting link and specify Go@v1.13
- #3179 feat(cli): Add --latest flag for argo get command as per #3128
- #3180 feat(controller): Add `--qps` and `--burst` flags to controller
- #3181 feat(controller): Only process significant pod changes
- #3187 docs: Add Graviti as official Argo user
- #3196 fix(metrics): Ensure stable desc/hash for metrics. Fixes #3193
- #3199 feat: Add '--schedule' flag to 'argo cron create'
- #3200 chore: Remove unused pod in addArchiveLocation()
- #3205 fix(events): Adds config flag. Reduce number of dupe events emitted.
- #3207 feat(sso): Allow reading SSO clientID from a secret.
- #3215 fix(controller): Ensure image name is present in containers. Fixes #3213
- #3216 build: Change "DB=..." to "PROFILE=..."
- #3219 feat: Tick CLI Workflow watch even if there are no new events
- #3220 fix(ui): Correctly update workflow list when workflow are modified/deleted
- #3223 feat: Validate CronWorkflows before execution
- #3228 fix(ui/server): Fix broken label filter functionality on UI due to bug on server. Fix #3226
- #3230 fix(controller): set pod finish timestamp when it is deleted
- #3233 build: Migrate to Github Actions
- #3238 docs: Correct available fields in {{workflow.failures}}
- #3239 fix: Support the TTLStrategy for WorkflowTemplateRef
- #3240 feat(logging): Made more controller err/warn logging structured
- #3242 chore(cli): Add examples of @latest alias for relevant commands. Fixes #3225
- #3245 chore: Covered steps.<STEPNAME>.outputs.parameters in variables document
- #3247 fix: Ensure subscription is closed in log viewer
- #3249 feat: Configure ArchiveLabelSelector for Workflow Archive
- #3251 fix(jqFilter)!: remove extra quotes around output parameter value
- #3253 build: Disable Circle CI and Sonar
- #3256 fix(ui): Update workflow drawer with new duration format
- #3258 chore: update mysql yaml port
- #3261 feat: Append previous workflow name as label to resubmitted workflow
- #3262 fix(controller): More structured logging. Fixes #3260
- #3263 fix: ExitHandler support on workflowtempalteRef
- #3268 fix: Avoid unnecessary nil check for annotations of resubmitted workflow
- #3270 fix: Fixed panic on archiveLabelSelector nil
- #3271 fix: Add {{workflow.status}} to workflow-metrics
- #3272 fix: Reapply Update if CronWorkflow resource changed
- #3273 build: Add warning to ensure 'v' is present on release versions
- #3274 fix(ui): Allow render of templates without entrypoint. Fixes #2891
- #3276 docs: Add example for handling large output resutls
- #3278 fix: Fix delete --complete
- #3280 fix: Ensure child pods respect maxDuration
- #3281 build: Allow to change k8s namespace for installation
- #3282 docs: Update CI Badges
- #3283 docs: Update releasing.md
- #3284 docs: ArchiveLabelSelector document
- #3286 fix(server): Fix validation of overridden ref template parameters.
- #3294 build: Upload E2E diagnostics after failure
- #3297 build: Remove generated Swagger files.
- #3298 chore: Clean up unused constants
- #3302 ci: Remove CircleCI
- #3304 docs: Rename Ant Financial to Ant Group
- #3311 build: Pin `goimports` to working version
- #3315 fix(controller): Fix panic logging.
- #3316 docs: Document access token creation and usage
- #3327 fix: Remove broken SSO from quick-starts
- #3345 fix(controller): Allow events to be sent to non-argo namespace. Fixes #3342
- #3350 fix: Don't double-count metric events
- #3368 fix: Fix UI bug in DAGs

#### Contributors

* Adam Gilat <!-- num=1 -->
* Alex Collins <!-- num=73 -->
* Alex Stein <!-- num=1 -->
* Ben Ye <!-- num=1 -->
* Caden <!-- num=1 -->
* Caglar Gulseni <!-- num=1 -->
* Daisuke Taniwaki <!-- num=1 -->
* Daniel Sutton <!-- num=1 -->
* Florent Clairambault <!-- num=1 -->
* Grant Stephens <!-- num=1 -->
* Huan-Cheng Chang <!-- num=3 -->
* Jie Zhang <!-- num=1 -->
* Kannappan Sirchabesan <!-- num=1 -->
* Leonardo Luz <!-- num=1 -->
* Markus Lippert <!-- num=1 -->
* Matt Brant <!-- num=1 -->
* Michael Crenshaw <!-- num=1 -->
* Mike Seddon <!-- num=1 -->
* Pierre Houssin <!-- num=1 -->
* Pradip Caulagi <!-- num=2 -->
* Remington Breeze <!-- num=8 -->
* Romain GUICHARD <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=11 -->
* Sascha Grunert <!-- num=1 -->
* Simon Behar <!-- num=49 -->
* Stephen Steiner <!-- num=1 -->
* Tomas Valasek <!-- num=1 -->
* Vardan Manucharyan <!-- num=1 -->
* Vlad Losev <!-- num=2 -->
* William <!-- num=1 -->
* Youngjoon Lee <!-- num=1 -->
* Yuan Tang <!-- num=13 -->
* Yunhai Luo <!-- num=1 -->
* dmayle <!-- num=1 -->
* maguowei <!-- num=1 -->
* mark9white <!-- num=4 -->
* shibataka000 <!-- num=1 -->

v2.9.0: tag_name: v2.9.0
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.0/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.0/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.9.0/manifests/install.yaml
```

# Changes

#### Enhancements

* #1507 Argoexec for windows containers
* #2760 Implement Content Security Policy
* #2761 Add XSS protection to API
* #2782 Workflow Labels - Annotations on Rows
* #2820 Augment `argo list --chunk-size` with `--continue` and `--limit`
* #2908 Do not sleep for 1s each time we reconcile
* #3034 Metrics should display controller error counts by type
* #3098 Inputs and outputs should be labelled in UI
* #3110 Add a way to expose Reource Duration (Memory/CPU) of Workflows in Metrics
* #3112 Cron Workflow Run Now
* #3128 Convenience flag in CLI for latest workflow
* #3225 fix(cli): argo --help does not display @latest alias introduced in #3179

#### Bug Fixes

- #1472 Script results aren't saved if artifacts aren't found
- #2140 Concaternated 20GB GZIP Input Archives Cause Stalling
- #2638 Workflow controller restarts with 'fatal error: concurrent map read and map write'
- #2660 Issue passing List of Objects from script 
- #2780 argo list does not show workflows from all instances or accept --instanceid 
- #2821 Argo delete all/completed should not abort on missing Workflow
- #2835 UserContainer swagger definition not matching command line client
- #2856 Persistence race condition with merging offloaded nodes
- #2888 Swagger giving wrong Kubernetes definitions.
- #2891 Workflow Template UI - "Empty" workflow template causes error when rendering 
- #2934 Enhanced resource duration
- #2955 "Re-establishing workflow watch" should be debug-level
- #2961 Duplicated events for Workflow Node Event
- #2974 Workflow parameter `creationTimestamp` is not RFC3339 compliant
- #2983 `latest` images not built for 20 days
- #2990 Cannot use `optional` with input artifacts/S3
- #2994 apiVersion field in Workflow Event violates API conventions
- #3004 not found latest release version docker image in docker hub
- #3091 In the UI, if the workflow could not start, we should show why - not sit there loading the DAG
- #3118 Fix panics
- #3121 `deletePDBResource` panics if `workflowRef not found`
- #3145 argo get/watch should list parallel entries in order, not alphabetize
- #3163 bug(ui): Workflow List component receiving too much information from server
- #3226 bug(ui): Clicking a label in workflow drawer does not filter workflows by that label
- #3260 Do not log users errors at error level
- #3342 workflow controller is unable to write events in other namespaces for versions >= v2.9-rc1

#### Other

- #1080 argo-ui workflow list api need support pagination
- #1139 Memory Configurations for Argo Operator
- #1376 [argo-ui] css loads Heebo font from the internet
- #1383 Running Argo on hybrid Kubernetes cluster
- #1813 Argo Workflow UI - Authentication and Authorization Feature
- #2860 Need documentation on "nodeFieldSelector"
- #976 [UI] list view performance improvements

#### Pull Requests

- #2450 feat: Enhanced filters for argo {watch,get,submit}
- #2543 test: Increase timeout for flaky test
- #2548 fix(controller): Workflow stop and resume by node didn't properly support offloaded nodes. Fixes #2543
- #2673 feat: Enhanced depends logic
- #2745 feat(argo-server): Add support for SSO. See #1813
- #2747 feat: Windows Container Support. Fixes #1507 and #1383
- #2781 docs(users): Adding Habx to the users list
- #2786 fix(argo-server)!: Implement missing instanceID code. Fixes #2780
- #2807 docs: Update README with new features
- #2816 chore: Upgraded to Node 14.0.0
- #2825 fix(ui): Use LogsViewer for container logs
- #2836 feat: Add metric retention policy
- #2837 fix(swagger): Generate correct Swagger for inline objects. Fixes #2835
- #2839 ci: Build less and therefore faster
- #2851 fix(controller): Add mutex to nameEntryIDMap in cron controller. Fix #2638
- #2854 feat(cli): Refactor `argo list --chunk-size` and add `argo archive list --chunk-size`. Fixes #2820
- #2855 fix: Nodes with pods deleted out-of-band should be Errored, not Failed
- #2863 feat(ui): Add pagination to workflow list. Fixes #1080 and #976
- #2869 fix: Cannot create WorkflowTemplate with un-supplied inputs
- #2872 docs: Update getting-started.md
- #2874 test: Fixes various tests
- #2877 feat(cli): Tolerate deleted workflow when running `argo delete`. Fixes #2821
- #2882 docs: Document node field selector. Closes #2860
- #2889 fix: ConfigMap syntax
- #2896 fix: Display Workflow finish time in UI
- #2904 fix: remove doubled secret entry in server cluster role deployment
- #2907 fix(swagger)!: Fixes invalid K8S definitions in `swagger.json`. Fixes #2888
- #2910 ci: Remove context to stop unauthorized errors on test jobs
- #2911 feat: add local variable pod.retryAttempt (see #2808, #2898)
- #2912 feat: Support Top level workflow template reference 
- #2917 test: Use argoproj/argosay:v1
- #2918 docs: Add docs/scaling.md
- #2920 build: Fix Darwin build
- #2921 feat(controller): Improve throughput of many workflows. Fixes #2908
- #2925 feat(controller): Remove the excessive logging of node data
- #2933 fix: Fixes MySQL 5.7 issue - default null value for timestamp column - Fixes #2932
- #2935 feat(ui): Allow opening workflow logs in a new tab; Closes #2887
- #2937 feat(controller)!: Updates the resource duration calculation. Fixes #2934
- #2939 fix: typo in port-forward.sh
- #2941 fix(controller): Implement offloading for workflow updates that are re-applied. Fixes #2856
- #2943 fix(ui): Change default pagination to all and sort workflows
- #2944 fix(cli): Re-establish watch on EOF
- #2950 feat: adds millisecond-level timestamps to argoexec, implements #2795
- #2951 fix: Don't update backoff message to save operations
- #2958 fix(cli): Remove info logging from watches. Fixes #2955
- #2959 feat(ui): Render 2000+ nodes DAG acceptably.
- #2960 fix(examples): Error with unknown flag: --show-all
- #2964 fix: Remove duplicate node event. Fixes #2961
- #2966 fix: Consider Shutdown when assesing DAG Phase for incomplete Retry node
- #2968 build: Build dev images from cache
- #2971 feat(ui): Enable CSP, HSTS, X-Frame-Options. Fixes #2760, #1376, #2761
- #2972 docs: Document cost optimizations. Fixes #1139
- #2976 fix: Begin counting maxDuration from first child start
- #2977 fix(docs): Typo with link reference
- #2979 refactor(metrics)!: Refactor Metric interface
- #2982 feat(ui): Add Suspend and Resume for Cronworkflow in UI. Closes #1975
- #2984 build: Fix Docker build. Fixes #2983
- #2995 fix(executor/pns): remove sleep before sigkill
- #2997 docs: Use keyFormat instead of keyPrefix in docs
- #2999 fix(events): Correct event API Version. Fixes #2994
- #3000 chore: Update Mockery
- #3001 test: Upgrade to argosay:v2
- #3008 docs: Add StatefulSet and Service doc
- #3009 fix: Improve robustness of releases. Fixes #3004
- #3010 docs: Fix Deprecated formatting
- #3011 fix: Linters should error if nothing was validated
- #3014 fix(executor): Small gzipped files shouldn't be recognized as tarballs. Fixes #3012
- #3015 build: Mockery v1.1.1
- #3018 fix(ui): Displays command args correctly pre-formatted.
- #3019 fix(executor): Optional input artifacts. Fixes #2990
- #3020 docs: Add Ravelin as a user of Argo
- #3023 fix(controller)!: Correctly format workflow.creationTimestamp as RFC3339. Fixes #2974
- #3024 fix(artifacts): Allow tar check to be ignored. Fixes #2140
- #3025 fix(executor): Save script results before artifacts in case of error. Fixes #1472
- #3029 fix: Consider missing optional input/output artifacts with same name
- #3032 chore: Add ability to configure maximum DB connection lifetime
- #3033 fix: Consider metrics that were created and completed in the same operation
- #3035 refactor: Refactor assesDAGPhase logic
- #3037 fix(executor): Properly handle empty resource results, like for a missing get. Fixes #1823
- #3047 fix(artifacts): Revert allow tar check to be ignored. Reverts #3024
- #3052 fix(artifacts): Explicit archive strategy. Fixes #2140
- #3055 feat: Add CronWorkflowConditions to report errors
- #3060 feat(controller): Add default name for artifact repository ref.
- #3064 fix: Update container delete grace period to match Kubernetes default
- #3066 docs: Document work avoidance.
- #3068 docs(users): Add Isbank to users.md
- #3071 fix: Graceful error handling of malformatted log lines in watch
- #3074 build: Use goreman for starting locally.
- #3076 chore: Rename files that include 'top-level' terminology
- #3079 fix(OSS): Fix bug in OSS artifacts
- #3083 fix: Differentiate between Fulfilled and Completed
- #3084 build(swagger): Fix Swagger build problems
- #3086 docs: Add link to USERS.md in PR template
- #3088 feat: Added Label selector and Field selector in Argo list 
- #3089 feat(ui): Add cost optimisation nudges.
- #3094 docs: Document how to backfill a cron workflow
- #3099 docs: Update Getting Started
- #3101 test: fix TestContinueOnFailDag. Closes #2624
- #3107 chore: goimports
- #3108 docs: Add Alibaba Cloud OSS to the list of supported artifacts
- #3116 feat: Add 'submit --from' to CronWorkflow and WorkflowTemplate in UI. Closes #3112
- #3117 feat(cli): More `argo list` and `argo delete` options
- #3119 fix(controller): Do not panic if `woc.orig` in not hydrated. Fixes #3118
- #3123 fix: Remove unnecessary panic
- #3124 docs: add AppDirect to the list of users
- #3125 fix(ui): Display error message instead of DAG when DAG cannot be rendered. Fixes #3091
- #3126 feat(ui): Persist DAG rendering options in local storage. Fixes #3120
- #3127 fix: Panic on invalid WorkflowTemplateRef
- #3129 fix(item): Support ItemValue.Type == List. Fixes #2660
- #3130 fix(ui): Fix label error
- #3131 fix(ui): Input artifacts labelled in UI. Fixes #3098
- #3135 chore: Move default metrics server port/path to consts
- #3137 docs: Updated WorkflowTemplateRef  on WFT and CWFT
- #3140 feat(ui): Add Alibaba Cloud OSS related models in UI
- #3143 enhancement(ui): Add workflow labels column to workflow list. Fixes #2782
- #3144 feat(metrics): Report controller error counters via metrics. Closes #3034
- #3146 fix(cli): Sort expanded nodes by index. Closes #3145
- #3149 feat: Add mode to require Workflows to use workflowTemplateRef
- #3151 feat(ui): Add drawer with more details for each workflow in Workflow List
- #3152 chore: Master needs lint
- #3153 chore: Remove unused nodeType in initializeNodeOrMarkError()
- #3159 build: Fix path to staticfiles and goreman binaries
- #3160 fix(controller): Maybe bug with nil woc.wfSpec. Fixes #3121
- #3161 feat(metrics): Add node-level resources duration as Argo variable for metrics. Closes #3110
- #3162 docs: Add instructions on using Minikube as an alternative to K3D
- #3165 fix(server): Allow field selection for workflow-event endpoint (fixes #3163)
- #3167 docs: fix api swagger file path in docs
- #3174 fix: Do not use alphabetical order if index exists
- #3177 build: Only check Dex in hosts file when SSO is enabled
- #3178 chore: Update Community Meeting link and specify Go@v1.13
- #3179 feat(cli): Add --latest flag for argo get command as per #3128
- #3180 feat(controller): Add `--qps` and `--burst` flags to controller
- #3181 feat(controller): Only process significant pod changes
- #3187 docs: Add Graviti as official Argo user
- #3196 fix(metrics): Ensure stable desc/hash for metrics. Fixes #3193
- #3199 feat: Add '--schedule' flag to 'argo cron create'
- #3200 chore: Remove unused pod in addArchiveLocation()
- #3205 fix(events): Adds config flag. Reduce number of dupe events emitted.
- #3207 feat(sso): Allow reading SSO clientID from a secret.
- #3215 fix(controller): Ensure image name is present in containers. Fixes #3213
- #3216 build: Change "DB=..." to "PROFILE=..."
- #3219 feat: Tick CLI Workflow watch even if there are no new events
- #3220 fix(ui): Correctly update workflow list when workflow are modified/deleted
- #3223 feat: Validate CronWorkflows before execution
- #3228 fix(ui/server): Fix broken label filter functionality on UI due to bug on server. Fix #3226
- #3230 fix(controller): set pod finish timestamp when it is deleted
- #3233 build: Migrate to Github Actions
- #3238 docs: Correct available fields in {{workflow.failures}}
- #3239 fix: Support the TTLStrategy for WorkflowTemplateRef
- #3240 feat(logging): Made more controller err/warn logging structured
- #3242 chore(cli): Add examples of @latest alias for relevant commands. Fixes #3225
- #3245 chore: Covered steps.<STEPNAME>.outputs.parameters in variables document
- #3247 fix: Ensure subscription is closed in log viewer
- #3249 feat: Configure ArchiveLabelSelector for Workflow Archive
- #3251 fix(jqFilter)!: remove extra quotes around output parameter value
- #3253 build: Disable Circle CI and Sonar
- #3256 fix(ui): Update workflow drawer with new duration format
- #3258 chore: update mysql yaml port
- #3261 feat: Append previous workflow name as label to resubmitted workflow
- #3262 fix(controller): More structured logging. Fixes #3260
- #3263 fix: ExitHandler support on workflowtempalteRef
- #3268 fix: Avoid unnecessary nil check for annotations of resubmitted workflow
- #3270 fix: Fixed panic on archiveLabelSelector nil
- #3271 fix: Add {{workflow.status}} to workflow-metrics
- #3272 fix: Reapply Update if CronWorkflow resource changed
- #3273 build: Add warning to ensure 'v' is present on release versions
- #3274 fix(ui): Allow render of templates without entrypoint. Fixes #2891
- #3276 docs: Add example for handling large output resutls
- #3278 fix: Fix delete --complete
- #3280 fix: Ensure child pods respect maxDuration
- #3281 build: Allow to change k8s namespace for installation
- #3282 docs: Update CI Badges
- #3283 docs: Update releasing.md
- #3284 docs: ArchiveLabelSelector document
- #3286 fix(server): Fix validation of overridden ref template parameters.
- #3294 build: Upload E2E diagnostics after failure
- #3297 build: Remove generated Swagger files.
- #3298 chore: Clean up unused constants
- #3302 ci: Remove CircleCI
- #3304 docs: Rename Ant Financial to Ant Group
- #3311 build: Pin `goimports` to working version
- #3315 fix(controller): Fix panic logging.
- #3316 docs: Document access token creation and usage
- #3327 fix: Remove broken SSO from quick-starts
- #3345 fix(controller): Allow events to be sent to non-argo namespace. Fixes #3342
- #3350 fix: Don't double-count metric events
- #3368 fix: Fix UI bug in DAGs

#### Contributors

* Adam Gilat <!-- num=1 -->
* Alex Collins <!-- num=73 -->
* Alex Stein <!-- num=1 -->
* Ben Ye <!-- num=1 -->
* Caden <!-- num=1 -->
* Caglar Gulseni <!-- num=1 -->
* Daisuke Taniwaki <!-- num=1 -->
* Daniel Sutton <!-- num=1 -->
* Florent Clairambault <!-- num=1 -->
* Grant Stephens <!-- num=1 -->
* Huan-Cheng Chang <!-- num=3 -->
* Jie Zhang <!-- num=1 -->
* Kannappan Sirchabesan <!-- num=1 -->
* Leonardo Luz <!-- num=1 -->
* Markus Lippert <!-- num=1 -->
* Matt Brant <!-- num=1 -->
* Michael Crenshaw <!-- num=1 -->
* Mike Seddon <!-- num=1 -->
* Pierre Houssin <!-- num=1 -->
* Pradip Caulagi <!-- num=2 -->
* Remington Breeze <!-- num=8 -->
* Romain GUICHARD <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=11 -->
* Sascha Grunert <!-- num=1 -->
* Simon Behar <!-- num=49 -->
* Stephen Steiner <!-- num=1 -->
* Tomas Valasek <!-- num=1 -->
* Vardan Manucharyan <!-- num=1 -->
* Vlad Losev <!-- num=2 -->
* William <!-- num=1 -->
* Youngjoon Lee <!-- num=1 -->
* Yuan Tang <!-- num=13 -->
* Yunhai Luo <!-- num=1 -->
* dmayle <!-- num=1 -->
* maguowei <!-- num=1 -->
* mark9white <!-- num=4 -->
* shibataka000 <!-- num=1 -->

v2.9.0-rc4: tag_name: v2.9.0-rc4
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.0-rc4/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.0-rc4/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.9.0-rc3/manifests/install.yaml
```

# Changes

#### Pull Requests

- #3137 docs: Updated WorkflowTemplateRef  on WFT and CWFT
- #3272 fix: Reapply Update if CronWorkflow resource changed
- #3276 docs: Add example for handling large output resutls
- #3278 fix: Fix delete --complete
- #3283 docs: Update releasing.md
- #3284 docs: ArchiveLabelSelector document
- #3286 fix(server): Fix validation of overridden ref template parameters.
- #3294 build: Upload E2E diagnostics after failure
- #3297 build: Remove generated Swagger files.
- #3298 chore: Clean up unused constants
- #3302 ci: Remove CircleCI
- #3304 docs: Rename Ant Financial to Ant Group
- #3311 build: Pin `goimports` to working version
- #3315 fix(controller): Fix panic logging.
- #3316 docs: Document access token creation and usage

#### Contributors

* Alex Collins <!-- num=8 -->
* Michael Crenshaw <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=3 -->
* Simon Behar <!-- num=2 -->
* Vlad Losev <!-- num=1 -->
* Yuan Tang <!-- num=1 -->

## v2.9.0-rc3

#### Enhancements

* #3225 fix(cli): argo --help does not display @latest alias introduced in #3179

#### Bug Fixes

- #2891 Workflow Template UI - "Empty" workflow template causes error when rendering 
- #3260 Do not log users errors at error level

#### Pull Requests

- #3149 feat: Add mode to require Workflows to use workflowTemplateRef
- #3230 fix(controller): set pod finish timestamp when it is deleted
- #3238 docs: Correct available fields in {{workflow.failures}}
- #3242 chore(cli): Add examples of @latest alias for relevant commands. Fixes #3225
- #3245 chore: Covered steps.<STEPNAME>.outputs.parameters in variables document
- #3247 fix: Ensure subscription is closed in log viewer
- #3249 feat: Configure ArchiveLabelSelector for Workflow Archive
- #3251 fix(jqFilter)!: remove extra quotes around output parameter value
- #3253 build: Disable Circle CI and Sonar
- #3256 fix(ui): Update workflow drawer with new duration format
- #3258 chore: update mysql yaml port
- #3261 feat: Append previous workflow name as label to resubmitted workflow
- #3262 fix(controller): More structured logging. Fixes #3260
- #3263 fix: ExitHandler support on workflowtempalteRef
- #3268 fix: Avoid unnecessary nil check for annotations of resubmitted workflow
- #3270 fix: Fixed panic on archiveLabelSelector nil
- #3271 fix: Add {{workflow.status}} to workflow-metrics
- #3273 build: Add warning to ensure 'v' is present on release versions
- #3274 fix(ui): Allow render of templates without entrypoint. Fixes #2891
- #3281 build: Allow to change k8s namespace for installation
- #3282 docs: Update CI Badges

#### Contributors

* Alex Collins <!-- num=4 -->
* Ben Ye <!-- num=1 -->
* Jie Zhang <!-- num=1 -->
* Pierre Houssin <!-- num=1 -->
* Remington Breeze <!-- num=2 -->
* Saravanan Balasubramanian <!-- num=3 -->
* Simon Behar <!-- num=7 -->
* Yuan Tang <!-- num=3 -->
* mark9white <!-- num=1 -->

## v2.9.0-rc2

#### Enhancements

* #2908 Do not sleep for 1s each time we reconcile
* #3128 Convenience flag in CLI for latest workflow

#### Bug Fixes

- #3226 bug(ui): Clicking a label in workflow drawer does not filter workflows by that label

#### Pull Requests

- #2921 feat(controller): Improve throughput of many workflows. Fixes #2908
- #3179 feat(cli): Add --latest flag for argo get command as per #3128
- #3205 fix(events): Adds config flag. Reduce number of dupe events emitted.
- #3207 feat(sso): Allow reading SSO clientID from a secret.
- #3215 fix(controller): Ensure image name is present in containers. Fixes #3213
- #3216 build: Change "DB=..." to "PROFILE=..."
- #3219 feat: Tick CLI Workflow watch even if there are no new events
- #3220 fix(ui): Correctly update workflow list when workflow are modified/deleted
- #3223 feat: Validate CronWorkflows before execution
- #3228 fix(ui/server): Fix broken label filter functionality on UI due to bug on server. Fix #3226
- #3233 build: Migrate to Github Actions
- #3239 fix: Support the TTLStrategy for WorkflowTemplateRef
- #3240 feat(logging): Made more controller err/warn logging structured

#### Contributors

* Alex Collins <!-- num=7 -->
* Remington Breeze <!-- num=2 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=4 -->
* Vlad Losev <!-- num=1 -->

# v2.9.0-rc1

#### Enhancements

* #1507 Argoexec for windows containers
* #2760 Implement Content Security Policy
* #2761 Add XSS protection to API
* #2782 Workflow Labels - Annotations on Rows
* #2820 Augment `argo list --chunk-size` with `--continue` and `--limit`
* #3034 Metrics should display controller error counts by type
* #3098 Inputs and outputs should be labelled in UI
* #3110 Add a way to expose Reource Duration (Memory/CPU) of Workflows in Metrics
* #3112 Cron Workflow Run Now

#### Bug Fixes

- #1472 Script results aren't saved if artifacts aren't found
- #2140 Concaternated 20GB GZIP Input Archives Cause Stalling
- #2638 Workflow controller restarts with 'fatal error: concurrent map read and map write'
- #2660 Issue passing List of Objects from script 
- #2780 argo list does not show workflows from all instances or accept --instanceid 
- #2821 Argo delete all/completed should not abort on missing Workflow
- #2835 UserContainer swagger definition not matching command line client
- #2856 Persistence race condition with merging offloaded nodes
- #2888 Swagger giving wrong Kubernetes definitions.
- #2934 Enhanced resource duration
- #2955 "Re-establishing workflow watch" should be debug-level
- #2961 Duplicated events for Workflow Node Event
- #2974 Workflow parameter `creationTimestamp` is not RFC3339 compliant
- #2983 `latest` images not built for 20 days
- #2990 Cannot use `optional` with input artifacts/S3
- #2994 apiVersion field in Workflow Event violates API conventions
- #3004 not found latest release version docker image in docker hub
- #3091 In the UI, if the workflow could not start, we should show why - not sit there loading the DAG
- #3118 Fix panics
- #3121 `deletePDBResource` panics if `workflowRef not found`
- #3145 argo get/watch should list parallel entries in order, not alphabetize
- #3163 bug(ui): Workflow List component receiving too much information from server

#### Other

- #1080 argo-ui workflow list api need support pagination
- #1139 Memory Configurations for Argo Operator
- #1376 [argo-ui] css loads Heebo font from the internet
- #1383 Running Argo on hybrid Kubernetes cluster
- #1813 Argo Workflow UI - Authentication and Authorization Feature
- #2860 Need documentation on "nodeFieldSelector"
- #976 [UI] list view performance improvements
- Update manifests to v2.9.0-rc1

#### Pull Requests

- #2450 feat: Enhanced filters for argo {watch,get,submit}
- #2543 test: Increase timeout for flaky test
- #2548 fix(controller): Workflow stop and resume by node didn't properly support offloaded nodes. Fixes #2543
- #2673 feat: Enhanced depends logic
- #2745 feat(argo-server): Add support for SSO. See #1813
- #2747 feat: Windows Container Support. Fixes #1507 and #1383
- #2781 docs(users): Adding Habx to the users list
- #2786 fix(argo-server)!: Implement missing instanceID code. Fixes #2780
- #2807 docs: Update README with new features
- #2816 chore: Upgraded to Node 14.0.0
- #2825 fix(ui): Use LogsViewer for container logs
- #2836 feat: Add metric retention policy
- #2837 fix(swagger): Generate correct Swagger for inline objects. Fixes #2835
- #2839 ci: Build less and therefore faster
- #2851 fix(controller): Add mutex to nameEntryIDMap in cron controller. Fix #2638
- #2854 feat(cli): Refactor `argo list --chunk-size` and add `argo archive list --chunk-size`. Fixes #2820
- #2855 fix: Nodes with pods deleted out-of-band should be Errored, not Failed
- #2863 feat(ui): Add pagination to workflow list. Fixes #1080 and #976
- #2869 fix: Cannot create WorkflowTemplate with un-supplied inputs
- #2872 docs: Update getting-started.md
- #2874 test: Fixes various tests
- #2877 feat(cli): Tolerate deleted workflow when running `argo delete`. Fixes #2821
- #2882 docs: Document node field selector. Closes #2860
- #2889 fix: ConfigMap syntax
- #2896 fix: Display Workflow finish time in UI
- #2904 fix: remove doubled secret entry in server cluster role deployment
- #2907 fix(swagger)!: Fixes invalid K8S definitions in `swagger.json`. Fixes #2888
- #2910 ci: Remove context to stop unauthorized errors on test jobs
- #2911 feat: add local variable pod.retryAttempt (see #2808, #2898)
- #2912 feat: Support Top level workflow template reference 
- #2917 test: Use argoproj/argosay:v1
- #2918 docs: Add docs/scaling.md
- #2920 build: Fix Darwin build
- #2925 feat(controller): Remove the excessive logging of node data
- #2933 fix: Fixes MySQL 5.7 issue - default null value for timestamp column - Fixes #2932
- #2935 feat(ui): Allow opening workflow logs in a new tab; Closes #2887
- #2937 feat(controller)!: Updates the resource duration calculation. Fixes #2934
- #2939 fix: typo in port-forward.sh
- #2941 fix(controller): Implement offloading for workflow updates that are re-applied. Fixes #2856
- #2943 fix(ui): Change default pagination to all and sort workflows
- #2944 fix(cli): Re-establish watch on EOF
- #2950 feat: adds millisecond-level timestamps to argoexec, implements #2795
- #2951 fix: Don't update backoff message to save operations
- #2958 fix(cli): Remove info logging from watches. Fixes #2955
- #2959 feat(ui): Render 2000+ nodes DAG acceptably.
- #2960 fix(examples): Error with unknown flag: --show-all
- #2964 fix: Remove duplicate node event. Fixes #2961
- #2966 fix: Consider Shutdown when assesing DAG Phase for incomplete Retry node
- #2968 build: Build dev images from cache
- #2971 feat(ui): Enable CSP, HSTS, X-Frame-Options. Fixes #2760, #1376, #2761
- #2972 docs: Document cost optimizations. Fixes #1139
- #2976 fix: Begin counting maxDuration from first child start
- #2977 fix(docs): Typo with link reference
- #2979 refactor(metrics)!: Refactor Metric interface
- #2982 feat(ui): Add Suspend and Resume for Cronworkflow in UI. Closes #1975
- #2984 build: Fix Docker build. Fixes #2983
- #2995 fix(executor/pns): remove sleep before sigkill
- #2997 docs: Use keyFormat instead of keyPrefix in docs
- #2999 fix(events): Correct event API Version. Fixes #2994
- #3000 chore: Update Mockery
- #3001 test: Upgrade to argosay:v2
- #3008 docs: Add StatefulSet and Service doc
- #3009 fix: Improve robustness of releases. Fixes #3004
- #3010 docs: Fix Deprecated formatting
- #3011 fix: Linters should error if nothing was validated
- #3014 fix(executor): Small gzipped files shouldn't be recognized as tarballs. Fixes #3012
- #3015 build: Mockery v1.1.1
- #3018 fix(ui): Displays command args correctly pre-formatted.
- #3019 fix(executor): Optional input artifacts. Fixes #2990
- #3020 docs: Add Ravelin as a user of Argo
- #3023 fix(controller)!: Correctly format workflow.creationTimestamp as RFC3339. Fixes #2974
- #3024 fix(artifacts): Allow tar check to be ignored. Fixes #2140
- #3025 fix(executor): Save script results before artifacts in case of error. Fixes #1472
- #3029 fix: Consider missing optional input/output artifacts with same name
- #3032 chore: Add ability to configure maximum DB connection lifetime
- #3033 fix: Consider metrics that were created and completed in the same operation
- #3035 refactor: Refactor assesDAGPhase logic
- #3037 fix(executor): Properly handle empty resource results, like for a missing get. Fixes #1823
- #3047 fix(artifacts): Revert allow tar check to be ignored. Reverts #3024
- #3052 fix(artifacts): Explicit archive strategy. Fixes #2140
- #3055 feat: Add CronWorkflowConditions to report errors
- #3060 feat(controller): Add default name for artifact repository ref.
- #3064 fix: Update container delete grace period to match Kubernetes default
- #3066 docs: Document work avoidance.
- #3068 docs(users): Add Isbank to users.md
- #3071 fix: Graceful error handling of malformatted log lines in watch
- #3074 build: Use goreman for starting locally.
- #3076 chore: Rename files that include 'top-level' terminology
- #3079 fix(OSS): Fix bug in OSS artifacts
- #3083 fix: Differentiate between Fulfilled and Completed
- #3084 build(swagger): Fix Swagger build problems
- #3086 docs: Add link to USERS.md in PR template
- #3088 feat: Added Label selector and Field selector in Argo list 
- #3089 feat(ui): Add cost optimisation nudges.
- #3094 docs: Document how to backfill a cron workflow
- #3099 docs: Update Getting Started
- #3101 test: fix TestContinueOnFailDag. Closes #2624
- #3107 chore: goimports
- #3108 docs: Add Alibaba Cloud OSS to the list of supported artifacts
- #3116 feat: Add 'submit --from' to CronWorkflow and WorkflowTemplate in UI. Closes #3112
- #3117 feat(cli): More `argo list` and `argo delete` options
- #3119 fix(controller): Do not panic if `woc.orig` in not hydrated. Fixes #3118
- #3123 fix: Remove unnecessary panic
- #3124 docs: add AppDirect to the list of users
- #3125 fix(ui): Display error message instead of DAG when DAG cannot be rendered. Fixes #3091
- #3126 feat(ui): Persist DAG rendering options in local storage. Fixes #3120
- #3127 fix: Panic on invalid WorkflowTemplateRef
- #3129 fix(item): Support ItemValue.Type == List. Fixes #2660
- #3130 fix(ui): Fix label error
- #3131 fix(ui): Input artifacts labelled in UI. Fixes #3098
- #3135 chore: Move default metrics server port/path to consts
- #3140 feat(ui): Add Alibaba Cloud OSS related models in UI
- #3143 enhancement(ui): Add workflow labels column to workflow list. Fixes #2782
- #3144 feat(metrics): Report controller error counters via metrics. Closes #3034
- #3146 fix(cli): Sort expanded nodes by index. Closes #3145
- #3151 feat(ui): Add drawer with more details for each workflow in Workflow List
- #3152 chore: Master needs lint
- #3153 chore: Remove unused nodeType in initializeNodeOrMarkError()
- #3159 build: Fix path to staticfiles and goreman binaries
- #3160 fix(controller): Maybe bug with nil woc.wfSpec. Fixes #3121
- #3161 feat(metrics): Add node-level resources duration as Argo variable for metrics. Closes #3110
- #3162 docs: Add instructions on using Minikube as an alternative to K3D
- #3165 fix(server): Allow field selection for workflow-event endpoint (fixes #3163)
- #3167 docs: fix api swagger file path in docs
- #3174 fix: Do not use alphabetical order if index exists
- #3177 build: Only check Dex in hosts file when SSO is enabled
- #3178 chore: Update Community Meeting link and specify Go@v1.13
- #3180 feat(controller): Add `--qps` and `--burst` flags to controller
- #3181 feat(controller): Only process significant pod changes
- #3187 docs: Add Graviti as official Argo user
- #3196 fix(metrics): Ensure stable desc/hash for metrics. Fixes #3193
- #3199 feat: Add '--schedule' flag to 'argo cron create'
- #3200 chore: Remove unused pod in addArchiveLocation()

#### Contributors

* Adam Gilat <!-- num=1 -->
* Alex Collins <!-- num=51 -->
* Alex Stein <!-- num=1 -->
* Caden <!-- num=1 -->
* Caglar Gulseni <!-- num=1 -->
* Daisuke Taniwaki <!-- num=1 -->
* Daniel Sutton <!-- num=1 -->
* Florent Clairambault <!-- num=1 -->
* Grant Stephens <!-- num=1 -->
* Huan-Cheng Chang <!-- num=3 -->
* Kannappan Sirchabesan <!-- num=1 -->
* Leonardo Luz <!-- num=1 -->
* Markus Lippert <!-- num=1 -->
* Matt Brant <!-- num=1 -->
* Mike Seddon <!-- num=1 -->
* Pradip Caulagi <!-- num=2 -->
* Remington Breeze <!-- num=4 -->
* Romain GUICHARD <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=4 -->
* Sascha Grunert <!-- num=1 -->
* Simon Behar <!-- num=33 -->
* Stephen Steiner <!-- num=1 -->
* Tomas Valasek <!-- num=1 -->
* Vardan Manucharyan <!-- num=1 -->
* William <!-- num=1 -->
* Youngjoon Lee <!-- num=1 -->
* Yuan Tang <!-- num=9 -->
* Yunhai Luo <!-- num=1 -->
* dmayle <!-- num=1 -->
* maguowei <!-- num=1 -->
* mark9white <!-- num=3 -->
* shibataka000 <!-- num=1 -->
v2.9.0-rc3: tag_name: v2.9.0-rc3
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.0-rc3/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.0-rc3/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.9.0-rc3/manifests/install.yaml
```

# Changes

#### Enhancements

* #3225 fix(cli): argo --help does not display @latest alias introduced in #3179

#### Bug Fixes

- #2891 Workflow Template UI - "Empty" workflow template causes error when rendering 
- #3260 Do not log users errors at error level

#### Pull Requests

- #3149 feat: Add mode to require Workflows to use workflowTemplateRef
- #3230 fix(controller): set pod finish timestamp when it is deleted
- #3238 docs: Correct available fields in {{workflow.failures}}
- #3242 chore(cli): Add examples of @latest alias for relevant commands. Fixes #3225
- #3245 chore: Covered steps.<STEPNAME>.outputs.parameters in variables document
- #3247 fix: Ensure subscription is closed in log viewer
- #3249 feat: Configure ArchiveLabelSelector for Workflow Archive
- #3251 fix(jqFilter)!: remove extra quotes around output parameter value
- #3253 build: Disable Circle CI and Sonar
- #3256 fix(ui): Update workflow drawer with new duration format
- #3258 chore: update mysql yaml port
- #3261 feat: Append previous workflow name as label to resubmitted workflow
- #3262 fix(controller): More structured logging. Fixes #3260
- #3263 fix: ExitHandler support on workflowtempalteRef
- #3268 fix: Avoid unnecessary nil check for annotations of resubmitted workflow
- #3270 fix: Fixed panic on archiveLabelSelector nil
- #3271 fix: Add {{workflow.status}} to workflow-metrics
- #3273 build: Add warning to ensure 'v' is present on release versions
- #3274 fix(ui): Allow render of templates without entrypoint. Fixes #2891
- #3281 build: Allow to change k8s namespace for installation
- #3282 docs: Update CI Badges

#### Contributors

* Alex Collins <!-- num=4 -->
* Ben Ye <!-- num=1 -->
* Jie Zhang <!-- num=1 -->
* Pierre Houssin <!-- num=1 -->
* Remington Breeze <!-- num=2 -->
* Saravanan Balasubramanian <!-- num=3 -->
* Simon Behar <!-- num=7 -->
* Yuan Tang <!-- num=3 -->
* mark9white <!-- num=1 -->

## v2.9.0-rc2

#### Enhancements

* #2908 Do not sleep for 1s each time we reconcile
* #3128 Convenience flag in CLI for latest workflow

#### Bug Fixes

- #3226 bug(ui): Clicking a label in workflow drawer does not filter workflows by that label

#### Pull Requests

- #2921 feat(controller): Improve throughput of many workflows. Fixes #2908
- #3179 feat(cli): Add --latest flag for argo get command as per #3128
- #3205 fix(events): Adds config flag. Reduce number of dupe events emitted.
- #3207 feat(sso): Allow reading SSO clientID from a secret.
- #3215 fix(controller): Ensure image name is present in containers. Fixes #3213
- #3216 build: Change "DB=..." to "PROFILE=..."
- #3219 feat: Tick CLI Workflow watch even if there are no new events
- #3220 fix(ui): Correctly update workflow list when workflow are modified/deleted
- #3223 feat: Validate CronWorkflows before execution
- #3228 fix(ui/server): Fix broken label filter functionality on UI due to bug on server. Fix #3226
- #3233 build: Migrate to Github Actions
- #3239 fix: Support the TTLStrategy for WorkflowTemplateRef
- #3240 feat(logging): Made more controller err/warn logging structured

#### Contributors

* Alex Collins <!-- num=7 -->
* Remington Breeze <!-- num=2 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=4 -->
* Vlad Losev <!-- num=1 -->

# v2.9.0-rc1

#### Enhancements

* #1507 Argoexec for windows containers
* #2760 Implement Content Security Policy
* #2761 Add XSS protection to API
* #2782 Workflow Labels - Annotations on Rows
* #2820 Augment `argo list --chunk-size` with `--continue` and `--limit`
* #3034 Metrics should display controller error counts by type
* #3098 Inputs and outputs should be labelled in UI
* #3110 Add a way to expose Reource Duration (Memory/CPU) of Workflows in Metrics
* #3112 Cron Workflow Run Now

#### Bug Fixes

- #1472 Script results aren't saved if artifacts aren't found
- #2140 Concaternated 20GB GZIP Input Archives Cause Stalling
- #2638 Workflow controller restarts with 'fatal error: concurrent map read and map write'
- #2660 Issue passing List of Objects from script 
- #2780 argo list does not show workflows from all instances or accept --instanceid 
- #2821 Argo delete all/completed should not abort on missing Workflow
- #2835 UserContainer swagger definition not matching command line client
- #2856 Persistence race condition with merging offloaded nodes
- #2888 Swagger giving wrong Kubernetes definitions.
- #2934 Enhanced resource duration
- #2955 "Re-establishing workflow watch" should be debug-level
- #2961 Duplicated events for Workflow Node Event
- #2974 Workflow parameter `creationTimestamp` is not RFC3339 compliant
- #2983 `latest` images not built for 20 days
- #2990 Cannot use `optional` with input artifacts/S3
- #2994 apiVersion field in Workflow Event violates API conventions
- #3004 not found latest release version docker image in docker hub
- #3091 In the UI, if the workflow could not start, we should show why - not sit there loading the DAG
- #3118 Fix panics
- #3121 `deletePDBResource` panics if `workflowRef not found`
- #3145 argo get/watch should list parallel entries in order, not alphabetize
- #3163 bug(ui): Workflow List component receiving too much information from server

#### Other

- #1080 argo-ui workflow list api need support pagination
- #1139 Memory Configurations for Argo Operator
- #1376 [argo-ui] css loads Heebo font from the internet
- #1383 Running Argo on hybrid Kubernetes cluster
- #1813 Argo Workflow UI - Authentication and Authorization Feature
- #2860 Need documentation on "nodeFieldSelector"
- #976 [UI] list view performance improvements
- Update manifests to v2.9.0-rc1

#### Pull Requests

- #2450 feat: Enhanced filters for argo {watch,get,submit}
- #2543 test: Increase timeout for flaky test
- #2548 fix(controller): Workflow stop and resume by node didn't properly support offloaded nodes. Fixes #2543
- #2673 feat: Enhanced depends logic
- #2745 feat(argo-server): Add support for SSO. See #1813
- #2747 feat: Windows Container Support. Fixes #1507 and #1383
- #2781 docs(users): Adding Habx to the users list
- #2786 fix(argo-server)!: Implement missing instanceID code. Fixes #2780
- #2807 docs: Update README with new features
- #2816 chore: Upgraded to Node 14.0.0
- #2825 fix(ui): Use LogsViewer for container logs
- #2836 feat: Add metric retention policy
- #2837 fix(swagger): Generate correct Swagger for inline objects. Fixes #2835
- #2839 ci: Build less and therefore faster
- #2851 fix(controller): Add mutex to nameEntryIDMap in cron controller. Fix #2638
- #2854 feat(cli): Refactor `argo list --chunk-size` and add `argo archive list --chunk-size`. Fixes #2820
- #2855 fix: Nodes with pods deleted out-of-band should be Errored, not Failed
- #2863 feat(ui): Add pagination to workflow list. Fixes #1080 and #976
- #2869 fix: Cannot create WorkflowTemplate with un-supplied inputs
- #2872 docs: Update getting-started.md
- #2874 test: Fixes various tests
- #2877 feat(cli): Tolerate deleted workflow when running `argo delete`. Fixes #2821
- #2882 docs: Document node field selector. Closes #2860
- #2889 fix: ConfigMap syntax
- #2896 fix: Display Workflow finish time in UI
- #2904 fix: remove doubled secret entry in server cluster role deployment
- #2907 fix(swagger)!: Fixes invalid K8S definitions in `swagger.json`. Fixes #2888
- #2910 ci: Remove context to stop unauthorized errors on test jobs
- #2911 feat: add local variable pod.retryAttempt (see #2808, #2898)
- #2912 feat: Support Top level workflow template reference 
- #2917 test: Use argoproj/argosay:v1
- #2918 docs: Add docs/scaling.md
- #2920 build: Fix Darwin build
- #2925 feat(controller): Remove the excessive logging of node data
- #2933 fix: Fixes MySQL 5.7 issue - default null value for timestamp column - Fixes #2932
- #2935 feat(ui): Allow opening workflow logs in a new tab; Closes #2887
- #2937 feat(controller)!: Updates the resource duration calculation. Fixes #2934
- #2939 fix: typo in port-forward.sh
- #2941 fix(controller): Implement offloading for workflow updates that are re-applied. Fixes #2856
- #2943 fix(ui): Change default pagination to all and sort workflows
- #2944 fix(cli): Re-establish watch on EOF
- #2950 feat: adds millisecond-level timestamps to argoexec, implements #2795
- #2951 fix: Don't update backoff message to save operations
- #2958 fix(cli): Remove info logging from watches. Fixes #2955
- #2959 feat(ui): Render 2000+ nodes DAG acceptably.
- #2960 fix(examples): Error with unknown flag: --show-all
- #2964 fix: Remove duplicate node event. Fixes #2961
- #2966 fix: Consider Shutdown when assesing DAG Phase for incomplete Retry node
- #2968 build: Build dev images from cache
- #2971 feat(ui): Enable CSP, HSTS, X-Frame-Options. Fixes #2760, #1376, #2761
- #2972 docs: Document cost optimizations. Fixes #1139
- #2976 fix: Begin counting maxDuration from first child start
- #2977 fix(docs): Typo with link reference
- #2979 refactor(metrics)!: Refactor Metric interface
- #2982 feat(ui): Add Suspend and Resume for Cronworkflow in UI. Closes #1975
- #2984 build: Fix Docker build. Fixes #2983
- #2995 fix(executor/pns): remove sleep before sigkill
- #2997 docs: Use keyFormat instead of keyPrefix in docs
- #2999 fix(events): Correct event API Version. Fixes #2994
- #3000 chore: Update Mockery
- #3001 test: Upgrade to argosay:v2
- #3008 docs: Add StatefulSet and Service doc
- #3009 fix: Improve robustness of releases. Fixes #3004
- #3010 docs: Fix Deprecated formatting
- #3011 fix: Linters should error if nothing was validated
- #3014 fix(executor): Small gzipped files shouldn't be recognized as tarballs. Fixes #3012
- #3015 build: Mockery v1.1.1
- #3018 fix(ui): Displays command args correctly pre-formatted.
- #3019 fix(executor): Optional input artifacts. Fixes #2990
- #3020 docs: Add Ravelin as a user of Argo
- #3023 fix(controller)!: Correctly format workflow.creationTimestamp as RFC3339. Fixes #2974
- #3024 fix(artifacts): Allow tar check to be ignored. Fixes #2140
- #3025 fix(executor): Save script results before artifacts in case of error. Fixes #1472
- #3029 fix: Consider missing optional input/output artifacts with same name
- #3032 chore: Add ability to configure maximum DB connection lifetime
- #3033 fix: Consider metrics that were created and completed in the same operation
- #3035 refactor: Refactor assesDAGPhase logic
- #3037 fix(executor): Properly handle empty resource results, like for a missing get. Fixes #1823
- #3047 fix(artifacts): Revert allow tar check to be ignored. Reverts #3024
- #3052 fix(artifacts): Explicit archive strategy. Fixes #2140
- #3055 feat: Add CronWorkflowConditions to report errors
- #3060 feat(controller): Add default name for artifact repository ref.
- #3064 fix: Update container delete grace period to match Kubernetes default
- #3066 docs: Document work avoidance.
- #3068 docs(users): Add Isbank to users.md
- #3071 fix: Graceful error handling of malformatted log lines in watch
- #3074 build: Use goreman for starting locally.
- #3076 chore: Rename files that include 'top-level' terminology
- #3079 fix(OSS): Fix bug in OSS artifacts
- #3083 fix: Differentiate between Fulfilled and Completed
- #3084 build(swagger): Fix Swagger build problems
- #3086 docs: Add link to USERS.md in PR template
- #3088 feat: Added Label selector and Field selector in Argo list 
- #3089 feat(ui): Add cost optimisation nudges.
- #3094 docs: Document how to backfill a cron workflow
- #3099 docs: Update Getting Started
- #3101 test: fix TestContinueOnFailDag. Closes #2624
- #3107 chore: goimports
- #3108 docs: Add Alibaba Cloud OSS to the list of supported artifacts
- #3116 feat: Add 'submit --from' to CronWorkflow and WorkflowTemplate in UI. Closes #3112
- #3117 feat(cli): More `argo list` and `argo delete` options
- #3119 fix(controller): Do not panic if `woc.orig` in not hydrated. Fixes #3118
- #3123 fix: Remove unnecessary panic
- #3124 docs: add AppDirect to the list of users
- #3125 fix(ui): Display error message instead of DAG when DAG cannot be rendered. Fixes #3091
- #3126 feat(ui): Persist DAG rendering options in local storage. Fixes #3120
- #3127 fix: Panic on invalid WorkflowTemplateRef
- #3129 fix(item): Support ItemValue.Type == List. Fixes #2660
- #3130 fix(ui): Fix label error
- #3131 fix(ui): Input artifacts labelled in UI. Fixes #3098
- #3135 chore: Move default metrics server port/path to consts
- #3140 feat(ui): Add Alibaba Cloud OSS related models in UI
- #3143 enhancement(ui): Add workflow labels column to workflow list. Fixes #2782
- #3144 feat(metrics): Report controller error counters via metrics. Closes #3034
- #3146 fix(cli): Sort expanded nodes by index. Closes #3145
- #3151 feat(ui): Add drawer with more details for each workflow in Workflow List
- #3152 chore: Master needs lint
- #3153 chore: Remove unused nodeType in initializeNodeOrMarkError()
- #3159 build: Fix path to staticfiles and goreman binaries
- #3160 fix(controller): Maybe bug with nil woc.wfSpec. Fixes #3121
- #3161 feat(metrics): Add node-level resources duration as Argo variable for metrics. Closes #3110
- #3162 docs: Add instructions on using Minikube as an alternative to K3D
- #3165 fix(server): Allow field selection for workflow-event endpoint (fixes #3163)
- #3167 docs: fix api swagger file path in docs
- #3174 fix: Do not use alphabetical order if index exists
- #3177 build: Only check Dex in hosts file when SSO is enabled
- #3178 chore: Update Community Meeting link and specify Go@v1.13
- #3180 feat(controller): Add `--qps` and `--burst` flags to controller
- #3181 feat(controller): Only process significant pod changes
- #3187 docs: Add Graviti as official Argo user
- #3196 fix(metrics): Ensure stable desc/hash for metrics. Fixes #3193
- #3199 feat: Add '--schedule' flag to 'argo cron create'
- #3200 chore: Remove unused pod in addArchiveLocation()

#### Contributors

* Adam Gilat <!-- num=1 -->
* Alex Collins <!-- num=51 -->
* Alex Stein <!-- num=1 -->
* Caden <!-- num=1 -->
* Caglar Gulseni <!-- num=1 -->
* Daisuke Taniwaki <!-- num=1 -->
* Daniel Sutton <!-- num=1 -->
* Florent Clairambault <!-- num=1 -->
* Grant Stephens <!-- num=1 -->
* Huan-Cheng Chang <!-- num=3 -->
* Kannappan Sirchabesan <!-- num=1 -->
* Leonardo Luz <!-- num=1 -->
* Markus Lippert <!-- num=1 -->
* Matt Brant <!-- num=1 -->
* Mike Seddon <!-- num=1 -->
* Pradip Caulagi <!-- num=2 -->
* Remington Breeze <!-- num=4 -->
* Romain GUICHARD <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=4 -->
* Sascha Grunert <!-- num=1 -->
* Simon Behar <!-- num=33 -->
* Stephen Steiner <!-- num=1 -->
* Tomas Valasek <!-- num=1 -->
* Vardan Manucharyan <!-- num=1 -->
* William <!-- num=1 -->
* Youngjoon Lee <!-- num=1 -->
* Yuan Tang <!-- num=9 -->
* Yunhai Luo <!-- num=1 -->
* dmayle <!-- num=1 -->
* maguowei <!-- num=1 -->
* mark9white <!-- num=3 -->
* shibataka000 <!-- num=1 -->
v2.8.2: tag_name: v2.8.2
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.8.2/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.8.2/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.8.2/manifests/install.yaml
```

# Changes

[Blog post](https://blog.argoproj.io/whats-new-in-argo-workflow-v2-8-5356ee1d4f7f)

#### Pull Requests

- #2976 fix: Begin counting maxDuration from first child start
- #3230 fix(controller): set pod finish timestamp when it is deleted

#### Contributors

* Jie Zhang  <!--num=1-->
* Simon Behar <!-- num=1 -->
v2.9.0-rc2: tag_name: v2.9.0-rc2
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.0-rc2/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.0-rc2/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.9.0-rc2/manifests/install.yaml
```

# Changes

#### Enhancements

* #2908 Do not sleep for 1s each time we reconcile
* #3128 Convenience flag in CLI for latest workflow

#### Bug Fixes

- #3226 bug(ui): Clicking a label in workflow drawer does not filter workflows by that label

#### Pull Requests

- #2921 feat(controller): Improve throughput of many workflows. Fixes #2908
- #3179 feat(cli): Add --latest flag for argo get command as per #3128
- #3205 fix(events): Adds config flag. Reduce number of dupe events emitted.
- #3207 feat(sso): Allow reading SSO clientID from a secret.
- #3215 fix(controller): Ensure image name is present in containers. Fixes #3213
- #3216 build: Change "DB=..." to "PROFILE=..."
- #3219 feat: Tick CLI Workflow watch even if there are no new events
- #3220 fix(ui): Correctly update workflow list when workflow are modified/deleted
- #3223 feat: Validate CronWorkflows before execution
- #3228 fix(ui/server): Fix broken label filter functionality on UI due to bug on server. Fix #3226
- #3233 build: Migrate to Github Actions
- #3239 fix: Support the TTLStrategy for WorkflowTemplateRef
- #3240 feat(logging): Made more controller err/warn logging structured

#### Contributors

* Alex Collins <!-- num=7 -->
* Remington Breeze <!-- num=2 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=4 -->
* Vlad Losev <!-- num=1 -->

# v2.9.0-rc1

#### Enhancements

* #1507 Argoexec for windows containers
* #2760 Implement Content Security Policy
* #2761 Add XSS protection to API
* #2782 Workflow Labels - Annotations on Rows
* #2820 Augment `argo list --chunk-size` with `--continue` and `--limit`
* #3034 Metrics should display controller error counts by type
* #3098 Inputs and outputs should be labelled in UI
* #3110 Add a way to expose Reource Duration (Memory/CPU) of Workflows in Metrics
* #3112 Cron Workflow Run Now

#### Bug Fixes

- #1472 Script results aren't saved if artifacts aren't found
- #2140 Concaternated 20GB GZIP Input Archives Cause Stalling
- #2638 Workflow controller restarts with 'fatal error: concurrent map read and map write'
- #2660 Issue passing List of Objects from script 
- #2780 argo list does not show workflows from all instances or accept --instanceid 
- #2821 Argo delete all/completed should not abort on missing Workflow
- #2835 UserContainer swagger definition not matching command line client
- #2856 Persistence race condition with merging offloaded nodes
- #2888 Swagger giving wrong Kubernetes definitions.
- #2934 Enhanced resource duration
- #2955 "Re-establishing workflow watch" should be debug-level
- #2961 Duplicated events for Workflow Node Event
- #2974 Workflow parameter `creationTimestamp` is not RFC3339 compliant
- #2983 `latest` images not built for 20 days
- #2990 Cannot use `optional` with input artifacts/S3
- #2994 apiVersion field in Workflow Event violates API conventions
- #3004 not found latest release version docker image in docker hub
- #3091 In the UI, if the workflow could not start, we should show why - not sit there loading the DAG
- #3118 Fix panics
- #3121 `deletePDBResource` panics if `workflowRef not found`
- #3145 argo get/watch should list parallel entries in order, not alphabetize
- #3163 bug(ui): Workflow List component receiving too much information from server

#### Other

- #1080 argo-ui workflow list api need support pagination
- #1139 Memory Configurations for Argo Operator
- #1376 [argo-ui] css loads Heebo font from the internet
- #1383 Running Argo on hybrid Kubernetes cluster
- #1813 Argo Workflow UI - Authentication and Authorization Feature
- #2860 Need documentation on "nodeFieldSelector"
- #976 [UI] list view performance improvements
- Update manifests to v2.9.0-rc1

#### Pull Requests

- #2450 feat: Enhanced filters for argo {watch,get,submit}
- #2543 test: Increase timeout for flaky test
- #2548 fix(controller): Workflow stop and resume by node didn't properly support offloaded nodes. Fixes #2543
- #2673 feat: Enhanced depends logic
- #2745 feat(argo-server): Add support for SSO. See #1813
- #2747 feat: Windows Container Support. Fixes #1507 and #1383
- #2781 docs(users): Adding Habx to the users list
- #2786 fix(argo-server)!: Implement missing instanceID code. Fixes #2780
- #2807 docs: Update README with new features
- #2816 chore: Upgraded to Node 14.0.0
- #2825 fix(ui): Use LogsViewer for container logs
- #2836 feat: Add metric retention policy
- #2837 fix(swagger): Generate correct Swagger for inline objects. Fixes #2835
- #2839 ci: Build less and therefore faster
- #2851 fix(controller): Add mutex to nameEntryIDMap in cron controller. Fix #2638
- #2854 feat(cli): Refactor `argo list --chunk-size` and add `argo archive list --chunk-size`. Fixes #2820
- #2855 fix: Nodes with pods deleted out-of-band should be Errored, not Failed
- #2863 feat(ui): Add pagination to workflow list. Fixes #1080 and #976
- #2869 fix: Cannot create WorkflowTemplate with un-supplied inputs
- #2872 docs: Update getting-started.md
- #2874 test: Fixes various tests
- #2877 feat(cli): Tolerate deleted workflow when running `argo delete`. Fixes #2821
- #2882 docs: Document node field selector. Closes #2860
- #2889 fix: ConfigMap syntax
- #2896 fix: Display Workflow finish time in UI
- #2904 fix: remove doubled secret entry in server cluster role deployment
- #2907 fix(swagger)!: Fixes invalid K8S definitions in `swagger.json`. Fixes #2888
- #2910 ci: Remove context to stop unauthorized errors on test jobs
- #2911 feat: add local variable pod.retryAttempt (see #2808, #2898)
- #2912 feat: Support Top level workflow template reference 
- #2917 test: Use argoproj/argosay:v1
- #2918 docs: Add docs/scaling.md
- #2920 build: Fix Darwin build
- #2925 feat(controller): Remove the excessive logging of node data
- #2933 fix: Fixes MySQL 5.7 issue - default null value for timestamp column - Fixes #2932
- #2935 feat(ui): Allow opening workflow logs in a new tab; Closes #2887
- #2937 feat(controller)!: Updates the resource duration calculation. Fixes #2934
- #2939 fix: typo in port-forward.sh
- #2941 fix(controller): Implement offloading for workflow updates that are re-applied. Fixes #2856
- #2943 fix(ui): Change default pagination to all and sort workflows
- #2944 fix(cli): Re-establish watch on EOF
- #2950 feat: adds millisecond-level timestamps to argoexec, implements #2795
- #2951 fix: Don't update backoff message to save operations
- #2958 fix(cli): Remove info logging from watches. Fixes #2955
- #2959 feat(ui): Render 2000+ nodes DAG acceptably.
- #2960 fix(examples): Error with unknown flag: --show-all
- #2964 fix: Remove duplicate node event. Fixes #2961
- #2966 fix: Consider Shutdown when assesing DAG Phase for incomplete Retry node
- #2968 build: Build dev images from cache
- #2971 feat(ui): Enable CSP, HSTS, X-Frame-Options. Fixes #2760, #1376, #2761
- #2972 docs: Document cost optimizations. Fixes #1139
- #2976 fix: Begin counting maxDuration from first child start
- #2977 fix(docs): Typo with link reference
- #2979 refactor(metrics)!: Refactor Metric interface
- #2982 feat(ui): Add Suspend and Resume for Cronworkflow in UI. Closes #1975
- #2984 build: Fix Docker build. Fixes #2983
- #2995 fix(executor/pns): remove sleep before sigkill
- #2997 docs: Use keyFormat instead of keyPrefix in docs
- #2999 fix(events): Correct event API Version. Fixes #2994
- #3000 chore: Update Mockery
- #3001 test: Upgrade to argosay:v2
- #3008 docs: Add StatefulSet and Service doc
- #3009 fix: Improve robustness of releases. Fixes #3004
- #3010 docs: Fix Deprecated formatting
- #3011 fix: Linters should error if nothing was validated
- #3014 fix(executor): Small gzipped files shouldn't be recognized as tarballs. Fixes #3012
- #3015 build: Mockery v1.1.1
- #3018 fix(ui): Displays command args correctly pre-formatted.
- #3019 fix(executor): Optional input artifacts. Fixes #2990
- #3020 docs: Add Ravelin as a user of Argo
- #3023 fix(controller)!: Correctly format workflow.creationTimestamp as RFC3339. Fixes #2974
- #3024 fix(artifacts): Allow tar check to be ignored. Fixes #2140
- #3025 fix(executor): Save script results before artifacts in case of error. Fixes #1472
- #3029 fix: Consider missing optional input/output artifacts with same name
- #3032 chore: Add ability to configure maximum DB connection lifetime
- #3033 fix: Consider metrics that were created and completed in the same operation
- #3035 refactor: Refactor assesDAGPhase logic
- #3037 fix(executor): Properly handle empty resource results, like for a missing get. Fixes #1823
- #3047 fix(artifacts): Revert allow tar check to be ignored. Reverts #3024
- #3052 fix(artifacts): Explicit archive strategy. Fixes #2140
- #3055 feat: Add CronWorkflowConditions to report errors
- #3060 feat(controller): Add default name for artifact repository ref.
- #3064 fix: Update container delete grace period to match Kubernetes default
- #3066 docs: Document work avoidance.
- #3068 docs(users): Add Isbank to users.md
- #3071 fix: Graceful error handling of malformatted log lines in watch
- #3074 build: Use goreman for starting locally.
- #3076 chore: Rename files that include 'top-level' terminology
- #3079 fix(OSS): Fix bug in OSS artifacts
- #3083 fix: Differentiate between Fulfilled and Completed
- #3084 build(swagger): Fix Swagger build problems
- #3086 docs: Add link to USERS.md in PR template
- #3088 feat: Added Label selector and Field selector in Argo list 
- #3089 feat(ui): Add cost optimisation nudges.
- #3094 docs: Document how to backfill a cron workflow
- #3099 docs: Update Getting Started
- #3101 test: fix TestContinueOnFailDag. Closes #2624
- #3107 chore: goimports
- #3108 docs: Add Alibaba Cloud OSS to the list of supported artifacts
- #3116 feat: Add 'submit --from' to CronWorkflow and WorkflowTemplate in UI. Closes #3112
- #3117 feat(cli): More `argo list` and `argo delete` options
- #3119 fix(controller): Do not panic if `woc.orig` in not hydrated. Fixes #3118
- #3123 fix: Remove unnecessary panic
- #3124 docs: add AppDirect to the list of users
- #3125 fix(ui): Display error message instead of DAG when DAG cannot be rendered. Fixes #3091
- #3126 feat(ui): Persist DAG rendering options in local storage. Fixes #3120
- #3127 fix: Panic on invalid WorkflowTemplateRef
- #3129 fix(item): Support ItemValue.Type == List. Fixes #2660
- #3130 fix(ui): Fix label error
- #3131 fix(ui): Input artifacts labelled in UI. Fixes #3098
- #3135 chore: Move default metrics server port/path to consts
- #3140 feat(ui): Add Alibaba Cloud OSS related models in UI
- #3143 enhancement(ui): Add workflow labels column to workflow list. Fixes #2782
- #3144 feat(metrics): Report controller error counters via metrics. Closes #3034
- #3146 fix(cli): Sort expanded nodes by index. Closes #3145
- #3151 feat(ui): Add drawer with more details for each workflow in Workflow List
- #3152 chore: Master needs lint
- #3153 chore: Remove unused nodeType in initializeNodeOrMarkError()
- #3159 build: Fix path to staticfiles and goreman binaries
- #3160 fix(controller): Maybe bug with nil woc.wfSpec. Fixes #3121
- #3161 feat(metrics): Add node-level resources duration as Argo variable for metrics. Closes #3110
- #3162 docs: Add instructions on using Minikube as an alternative to K3D
- #3165 fix(server): Allow field selection for workflow-event endpoint (fixes #3163)
- #3167 docs: fix api swagger file path in docs
- #3174 fix: Do not use alphabetical order if index exists
- #3177 build: Only check Dex in hosts file when SSO is enabled
- #3178 chore: Update Community Meeting link and specify Go@v1.13
- #3180 feat(controller): Add `--qps` and `--burst` flags to controller
- #3181 feat(controller): Only process significant pod changes
- #3187 docs: Add Graviti as official Argo user
- #3196 fix(metrics): Ensure stable desc/hash for metrics. Fixes #3193
- #3199 feat: Add '--schedule' flag to 'argo cron create'
- #3200 chore: Remove unused pod in addArchiveLocation()

#### Contributors

* Adam Gilat <!-- num=1 -->
* Alex Collins <!-- num=51 -->
* Alex Stein <!-- num=1 -->
* Caden <!-- num=1 -->
* Caglar Gulseni <!-- num=1 -->
* Daisuke Taniwaki <!-- num=1 -->
* Daniel Sutton <!-- num=1 -->
* Florent Clairambault <!-- num=1 -->
* Grant Stephens <!-- num=1 -->
* Huan-Cheng Chang <!-- num=3 -->
* Kannappan Sirchabesan <!-- num=1 -->
* Leonardo Luz <!-- num=1 -->
* Markus Lippert <!-- num=1 -->
* Matt Brant <!-- num=1 -->
* Mike Seddon <!-- num=1 -->
* Pradip Caulagi <!-- num=2 -->
* Remington Breeze <!-- num=4 -->
* Romain GUICHARD <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=4 -->
* Sascha Grunert <!-- num=1 -->
* Simon Behar <!-- num=33 -->
* Stephen Steiner <!-- num=1 -->
* Tomas Valasek <!-- num=1 -->
* Vardan Manucharyan <!-- num=1 -->
* William <!-- num=1 -->
* Youngjoon Lee <!-- num=1 -->
* Yuan Tang <!-- num=9 -->
* Yunhai Luo <!-- num=1 -->
* dmayle <!-- num=1 -->
* maguowei <!-- num=1 -->
* mark9white <!-- num=3 -->
* shibataka000 <!-- num=1 -->
v2.9.0-rc1: tag_name: v2.9.0-rc1
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.0-rc1/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.9.0-rc1/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.9.0-rc1/manifests/install.yaml
```

# Changes

#### Enhancements

* #1507 Argoexec for windows containers
* #2760 Implement Content Security Policy
* #2761 Add XSS protection to API
* #2782 Workflow Labels - Annotations on Rows
* #2820 Augment `argo list --chunk-size` with `--continue` and `--limit`
* #3034 Metrics should display controller error counts by type
* #3098 Inputs and outputs should be labelled in UI
* #3110 Add a way to expose Reource Duration (Memory/CPU) of Workflows in Metrics
* #3112 Cron Workflow Run Now

#### Bug Fixes

- #1472 Script results aren't saved if artifacts aren't found
- #2140 Concaternated 20GB GZIP Input Archives Cause Stalling
- #2638 Workflow controller restarts with 'fatal error: concurrent map read and map write'
- #2660 Issue passing List of Objects from script 
- #2780 argo list does not show workflows from all instances or accept --instanceid 
- #2821 Argo delete all/completed should not abort on missing Workflow
- #2835 UserContainer swagger definition not matching command line client
- #2856 Persistence race condition with merging offloaded nodes
- #2888 Swagger giving wrong Kubernetes definitions.
- #2934 Enhanced resource duration
- #2955 "Re-establishing workflow watch" should be debug-level
- #2961 Duplicated events for Workflow Node Event
- #2974 Workflow parameter `creationTimestamp` is not RFC3339 compliant
- #2983 `latest` images not built for 20 days
- #2990 Cannot use `optional` with input artifacts/S3
- #2994 apiVersion field in Workflow Event violates API conventions
- #3004 not found latest release version docker image in docker hub
- #3091 In the UI, if the workflow could not start, we should show why - not sit there loading the DAG
- #3118 Fix panics
- #3121 `deletePDBResource` panics if `workflowRef not found`
- #3145 argo get/watch should list parallel entries in order, not alphabetize
- #3163 bug(ui): Workflow List component receiving too much information from server

#### Other

- #1080 argo-ui workflow list api need support pagination
- #1139 Memory Configurations for Argo Operator
- #1376 [argo-ui] css loads Heebo font from the internet
- #1383 Running Argo on hybrid Kubernetes cluster
- #1813 Argo Workflow UI - Authentication and Authorization Feature
- #2860 Need documentation on "nodeFieldSelector"
- #976 [UI] list view performance improvements
- Update manifests to v2.9.0-rc1

#### Pull Requests

- #2450 feat: Enhanced filters for argo {watch,get,submit}
- #2543 test: Increase timeout for flaky test
- #2548 fix(controller): Workflow stop and resume by node didn't properly support offloaded nodes. Fixes #2543
- #2673 feat: Enhanced depends logic
- #2745 feat(argo-server): Add support for SSO. See #1813
- #2747 feat: Windows Container Support. Fixes #1507 and #1383
- #2781 docs(users): Adding Habx to the users list
- #2786 fix(argo-server)!: Implement missing instanceID code. Fixes #2780
- #2807 docs: Update README with new features
- #2816 chore: Upgraded to Node 14.0.0
- #2825 fix(ui): Use LogsViewer for container logs
- #2836 feat: Add metric retention policy
- #2837 fix(swagger): Generate correct Swagger for inline objects. Fixes #2835
- #2839 ci: Build less and therefore faster
- #2851 fix(controller): Add mutex to nameEntryIDMap in cron controller. Fix #2638
- #2854 feat(cli): Refactor `argo list --chunk-size` and add `argo archive list --chunk-size`. Fixes #2820
- #2855 fix: Nodes with pods deleted out-of-band should be Errored, not Failed
- #2863 feat(ui): Add pagination to workflow list. Fixes #1080 and #976
- #2869 fix: Cannot create WorkflowTemplate with un-supplied inputs
- #2872 docs: Update getting-started.md
- #2874 test: Fixes various tests
- #2877 feat(cli): Tolerate deleted workflow when running `argo delete`. Fixes #2821
- #2882 docs: Document node field selector. Closes #2860
- #2889 fix: ConfigMap syntax
- #2896 fix: Display Workflow finish time in UI
- #2904 fix: remove doubled secret entry in server cluster role deployment
- #2907 fix(swagger)!: Fixes invalid K8S definitions in `swagger.json`. Fixes #2888
- #2910 ci: Remove context to stop unauthorized errors on test jobs
- #2911 feat: add local variable pod.retryAttempt (see #2808, #2898)
- #2912 feat: Support Top level workflow template reference 
- #2917 test: Use argoproj/argosay:v1
- #2918 docs: Add docs/scaling.md
- #2920 build: Fix Darwin build
- #2925 feat(controller): Remove the excessive logging of node data
- #2933 fix: Fixes MySQL 5.7 issue - default null value for timestamp column - Fixes #2932
- #2935 feat(ui): Allow opening workflow logs in a new tab; Closes #2887
- #2937 feat(controller)!: Updates the resource duration calculation. Fixes #2934
- #2939 fix: typo in port-forward.sh
- #2941 fix(controller): Implement offloading for workflow updates that are re-applied. Fixes #2856
- #2943 fix(ui): Change default pagination to all and sort workflows
- #2944 fix(cli): Re-establish watch on EOF
- #2950 feat: adds millisecond-level timestamps to argoexec, implements #2795
- #2951 fix: Don't update backoff message to save operations
- #2958 fix(cli): Remove info logging from watches. Fixes #2955
- #2959 feat(ui): Render 2000+ nodes DAG acceptably.
- #2960 fix(examples): Error with unknown flag: --show-all
- #2964 fix: Remove duplicate node event. Fixes #2961
- #2966 fix: Consider Shutdown when assesing DAG Phase for incomplete Retry node
- #2968 build: Build dev images from cache
- #2971 feat(ui): Enable CSP, HSTS, X-Frame-Options. Fixes #2760, #1376, #2761
- #2972 docs: Document cost optimizations. Fixes #1139
- #2976 fix: Begin counting maxDuration from first child start
- #2977 fix(docs): Typo with link reference
- #2979 refactor(metrics)!: Refactor Metric interface
- #2982 feat(ui): Add Suspend and Resume for Cronworkflow in UI. Closes #1975
- #2984 build: Fix Docker build. Fixes #2983
- #2995 fix(executor/pns): remove sleep before sigkill
- #2997 docs: Use keyFormat instead of keyPrefix in docs
- #2999 fix(events): Correct event API Version. Fixes #2994
- #3000 chore: Update Mockery
- #3001 test: Upgrade to argosay:v2
- #3008 docs: Add StatefulSet and Service doc
- #3009 fix: Improve robustness of releases. Fixes #3004
- #3010 docs: Fix Deprecated formatting
- #3011 fix: Linters should error if nothing was validated
- #3014 fix(executor): Small gzipped files shouldn't be recognized as tarballs. Fixes #3012
- #3015 build: Mockery v1.1.1
- #3018 fix(ui): Displays command args correctly pre-formatted.
- #3019 fix(executor): Optional input artifacts. Fixes #2990
- #3020 docs: Add Ravelin as a user of Argo
- #3023 fix(controller)!: Correctly format workflow.creationTimestamp as RFC3339. Fixes #2974
- #3024 fix(artifacts): Allow tar check to be ignored. Fixes #2140
- #3025 fix(executor): Save script results before artifacts in case of error. Fixes #1472
- #3029 fix: Consider missing optional input/output artifacts with same name
- #3032 chore: Add ability to configure maximum DB connection lifetime
- #3033 fix: Consider metrics that were created and completed in the same operation
- #3035 refactor: Refactor assesDAGPhase logic
- #3037 fix(executor): Properly handle empty resource results, like for a missing get. Fixes #1823
- #3047 fix(artifacts): Revert allow tar check to be ignored. Reverts #3024
- #3052 fix(artifacts): Explicit archive strategy. Fixes #2140
- #3055 feat: Add CronWorkflowConditions to report errors
- #3060 feat(controller): Add default name for artifact repository ref.
- #3064 fix: Update container delete grace period to match Kubernetes default
- #3066 docs: Document work avoidance.
- #3068 docs(users): Add Isbank to users.md
- #3071 fix: Graceful error handling of malformatted log lines in watch
- #3074 build: Use goreman for starting locally.
- #3076 chore: Rename files that include 'top-level' terminology
- #3079 fix(OSS): Fix bug in OSS artifacts
- #3083 fix: Differentiate between Fulfilled and Completed
- #3084 build(swagger): Fix Swagger build problems
- #3086 docs: Add link to USERS.md in PR template
- #3088 feat: Added Label selector and Field selector in Argo list 
- #3089 feat(ui): Add cost optimisation nudges.
- #3094 docs: Document how to backfill a cron workflow
- #3099 docs: Update Getting Started
- #3101 test: fix TestContinueOnFailDag. Closes #2624
- #3107 chore: goimports
- #3108 docs: Add Alibaba Cloud OSS to the list of supported artifacts
- #3116 feat: Add 'submit --from' to CronWorkflow and WorkflowTemplate in UI. Closes #3112
- #3117 feat(cli): More `argo list` and `argo delete` options
- #3119 fix(controller): Do not panic if `woc.orig` in not hydrated. Fixes #3118
- #3123 fix: Remove unnecessary panic
- #3124 docs: add AppDirect to the list of users
- #3125 fix(ui): Display error message instead of DAG when DAG cannot be rendered. Fixes #3091
- #3126 feat(ui): Persist DAG rendering options in local storage. Fixes #3120
- #3127 fix: Panic on invalid WorkflowTemplateRef
- #3129 fix(item): Support ItemValue.Type == List. Fixes #2660
- #3130 fix(ui): Fix label error
- #3131 fix(ui): Input artifacts labelled in UI. Fixes #3098
- #3135 chore: Move default metrics server port/path to consts
- #3140 feat(ui): Add Alibaba Cloud OSS related models in UI
- #3143 enhancement(ui): Add workflow labels column to workflow list. Fixes #2782
- #3144 feat(metrics): Report controller error counters via metrics. Closes #3034
- #3146 fix(cli): Sort expanded nodes by index. Closes #3145
- #3151 feat(ui): Add drawer with more details for each workflow in Workflow List
- #3152 chore: Master needs lint
- #3153 chore: Remove unused nodeType in initializeNodeOrMarkError()
- #3159 build: Fix path to staticfiles and goreman binaries
- #3160 fix(controller): Maybe bug with nil woc.wfSpec. Fixes #3121
- #3161 feat(metrics): Add node-level resources duration as Argo variable for metrics. Closes #3110
- #3162 docs: Add instructions on using Minikube as an alternative to K3D
- #3165 fix(server): Allow field selection for workflow-event endpoint (fixes #3163)
- #3167 docs: fix api swagger file path in docs
- #3174 fix: Do not use alphabetical order if index exists
- #3177 build: Only check Dex in hosts file when SSO is enabled
- #3178 chore: Update Community Meeting link and specify Go@v1.13
- #3180 feat(controller): Add `--qps` and `--burst` flags to controller
- #3181 feat(controller): Only process significant pod changes
- #3187 docs: Add Graviti as official Argo user
- #3196 fix(metrics): Ensure stable desc/hash for metrics. Fixes #3193
- #3199 feat: Add '--schedule' flag to 'argo cron create'
- #3200 chore: Remove unused pod in addArchiveLocation()

#### Contributors

* Adam Gilat <!-- num=1 -->
* Alex Collins <!-- num=51 -->
* Alex Stein <!-- num=1 -->
* Caden <!-- num=1 -->
* Caglar Gulseni <!-- num=1 -->
* Daisuke Taniwaki <!-- num=1 -->
* Daniel Sutton <!-- num=1 -->
* Florent Clairambault <!-- num=1 -->
* Grant Stephens <!-- num=1 -->
* Huan-Cheng Chang <!-- num=3 -->
* Kannappan Sirchabesan <!-- num=1 -->
* Leonardo Luz <!-- num=1 -->
* Markus Lippert <!-- num=1 -->
* Matt Brant <!-- num=1 -->
* Mike Seddon <!-- num=1 -->
* Pradip Caulagi <!-- num=2 -->
* Remington Breeze <!-- num=4 -->
* Romain GUICHARD <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=4 -->
* Sascha Grunert <!-- num=1 -->
* Simon Behar <!-- num=33 -->
* Stephen Steiner <!-- num=1 -->
* Tomas Valasek <!-- num=1 -->
* Vardan Manucharyan <!-- num=1 -->
* William <!-- num=1 -->
* Youngjoon Lee <!-- num=1 -->
* Yuan Tang <!-- num=9 -->
* Yunhai Luo <!-- num=1 -->
* dmayle <!-- num=1 -->
* maguowei <!-- num=1 -->
* mark9white <!-- num=3 -->
* shibataka000 <!-- num=1 -->
v2.8.1: tag_name: v2.8.1
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.8.1/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.8.1/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.8.1/manifests/install.yaml
```

# Changes

[Blog post](https://blog.argoproj.io/whats-new-in-argo-workflow-v2-8-5356ee1d4f7f)

#### Bug Fixes

- #2660 Issue passing List of Objects from script 
- #2974 Workflow parameter `creationTimestamp` is not RFC3339 compliant
- #2994 apiVersion field in Workflow Event violates API conventions

#### Pull Requests

- #2869 fix: Cannot create WorkflowTemplate with un-supplied inputs
- #2999 fix(events): Correct event API Version. Fixes #2994
- #3011 fix: Linters should error if nothing was validated
- #3023 fix(controller)!: Correctly format workflow.creationTimestamp as RFC3339. Fixes #2974
- #3029 fix: Consider missing optional input/output artifacts with same name
- #3033 fix: Consider metrics that were created and completed in the same operation
- #3037 fix(executor): Properly handle empty resource results, like for a missing get. Fixes #1823
- #3071 fix: Graceful error handling of malformatted log lines in watch
- #3129 fix(item): Support ItemValue.Type == List. Fixes #2660

#### Contributors

* Alex Collins <!-- num=9 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=5 -->
* dmayle <!-- num=1 -->
v2.8.0: tag_name: v2.8.0
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.8.0/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.8.0/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.8.0/manifests/install.yaml
```

# Changes

[Blog post](https://blog.argoproj.io/whats-new-in-argo-workflow-v2-8-5356ee1d4f7f)

#### Enhancements

* #2273 Workflow Archive data retention
* #2274 Emit events to event bus
* #2334 Step restart on workflow retry
* #2540 Add Kubernetes node name to workflow node detail in Web UI and CLI output
* #2764 Add TLS support to Argo Server

#### Bug Fixes

- #2285 Argo server should start without configmap
- #2571 When trying to delete a pod, and we do not find it, this should not be an error
- #2589 v2.7.0 CLI argo logs for workflows are broken
- #2596 continue on fail doesn't work with DAG
- #2603 onExit step gets stuck if the workflow exceeds activeDeadlineSeconds
- #2618 Fix TestCreateWorkflowDryRun
- #2626 Correctly emit events for node completion
- #2638 Workflow controller restarts with 'fatal error: concurrent map read and map write'
- #2678 argo watch does not update/refresh screen
- #2682  argo/docs/CONTRIBUTING.md has broken link to pull request templage
- #2715 Workflow Deployments Use Image Tag :latest
- #2759 Improve cookie security
- #2796 argo watch fails with an "EOF" error for workflows lasting > 90 seconds
- #2824 bug: cannot get artifact log with state "pod termination" (502 Bad Gateway)
- #2833 Fix flakey test TestFunctionalSuite/TestStopBehavior 
- #2835 UserContainer swagger definition not matching command line client
- #2888 Swagger giving wrong Kubernetes definitions.
- #2955 "Re-establishing workflow watch" should be debug-level

#### Other

- #2860 Need documentation on "nodeFieldSelector"

#### Pull Requests

- #1779 feat: Allow to pass optional flags to resource template
- #2111 feat: Add exit code as output variable
- #2312 feat(archive): Implement data retention. Closes #2273
- #2431 feat: Allow step restart on workflow retry. Closes #2334
- #2451 feat: Cluster scoped workflow template
- #2521 feat: Create K8S events on node completion. Closes #2274
- #2525 feat: UI enhancement for Cluster Workflow Template
- #2538 docs: Storage region should be specified
- #2543 test: Increase timeout for flaky test
- #2544 feat: Added Workflow SubmitFromResource API
- #2548 fix(controller): Workflow stop and resume by node didn't properly support offloaded nodes. Fixes #2543
- #2552 fix(cli): Show lint errors of all files
- #2558 docs: Add Riskified to the user list
- #2561 chore(docker): upgrade base image for executor image
- #2562 fix: Fixes empty/missing CM. Fixes #2285
- #2563 chore: fix typos in the workflow template docs
- #2565 fix: Use outputs of last child instead of retry node itslef
- #2566 chore: Error -> Warn when Parent CronWf no longer exists
- #2568 feat: Show workflow duration in the index UI page
- #2572 fix: Fix bug in deleting pods. Fixes #2571
- #2573 refactor: Refactor Template context interfaces
- #2575 feat(archive): allow specifying a compression level
- #2576 chore: Added ClusterWorkflowTemplate RBAC on quick-start manifests
- #2577 style: Correct the confused logic in resource executor
- #2584 feat: Add 'outputs.result' to Container templates
- #2586 chore: fix wrong Configuring Your Artifact Repository document.
- #2587 chore: Lint UI on CI, test diagnostics, skip bad test
- #2591 docs: Fix inaccurate field name in docs
- #2594 fix: Fixes lint errors
- #2595 fix: Fix logging problems. See #2589
- #2597 fix(controller): dag continue on failed. Fixes #2596
- #2598 fix(error handling): use Errorf instead of New when throwing errors with formatted text
- #2604 fix: Fixes panic in toWorkflow method
- #2605 fix: onExit step gets stuck if the workflow exceeds activeDeadlineSeconds. Fixes #2603
- #2607 fix: Fix WorkflowTemplate icons to be more cohesive
- #2608 fix: Validating Item Param in Steps Template
- #2609 test: Enhancements and repairs to e2e test framework
- #2610 docs: Add fields and core concepts doc
- #2612 feat: Added Client validation on Workflow/WFT/CronWF/CWFT
- #2613 fix: Flakey TestNestedClusterWorkflowTemplate testcase failure
- #2627 chore: Add comments to issues
- #2628 test: Fixes TestCreateWorkflowDryRun. Closes #2618
- #2629 fix: Correctly emit events. Fixes #2626
- #2630 test: Fix teething problems
- #2631 fix: fix test cases. Fixes #2619
- #2632  docs: Added doc generator code 
- #2633 fix: Support minimal mysql version 5.7.8. Fixes #2625
- #2636 chore: Use error equals instead of strings.Contains
- #2639 fix: Fix logs part 2
- #2640 feat(UI): Move Workflow parameters to top of submit
- #2641 docs(users): Add CoreWeave and ConciergeRender
- #2643 docs: Updates docs for CII. See #2641
- #2644 fix: Enhanced WorkflowTemplate and ClusterWorkflowTemplate validation to support Global Variables  
- #2645 fix: Consider offloaded and compressed node in retry and resume
- #2646 fix: Add input paremeters to metric scope
- #2647 fix: Sort log entries.
- #2648 ci: Fix codegen job
- #2649 chore: Fix-up Yarn deps
- #2654 chore: Add newline to fields.md
- #2655 ci: Only run CI jobs if needed
- #2656 fix: DAG should not fail if its tasks have continueOn
- #2657 fix: Don't attempt to resolve artifacts if task is going to be skipped
- #2659 test: Fix flakey DeleteCompleted test
- #2661 fix: Add DAG as default in UI filter and reorder
- #2662 build: Fix codegen for releases
- #2666 ci: Migrate to use Sonar instead of CodeCov for analysis
- #2668 fix: Leaf task with continueOn should not fail DAG
- #2669 fix: a typo
- #2670 fix: Make ClusterWorkflowTemplate optional for namespaced Installation
- #2676 fix: Report metric emission errors via Conditions
- #2680 fix: allow non path output params
- #2681 fix: MySQL config fix
- #2686 fix: Namespace-related validation in UI
- #2689 chore: update running-locally.md - corrects protoc install command
- #2697 docs: Fix artifactory installation guide on getting started page
- #2699 docs: Fix CONTRIBUTING.md and running-locally.md. Fixes #2682
- #2700 feat(ui): Add a YAML panel to view the workflow manifest.
- #2701 test: Fix Goroutine leak that was making controller unit tests slow.
- #2702 fix: Reset all conditions when resubmitting
- #2703 test: Increase runCli timeout to 1m
- #2704 build(ui): Fix compression of UI package.
- #2705 feat: Increase pod workers and workflow workers both to 32 by default.
- #2707 fix: Don't use docker cache when building release images
- #2709 ci: Fix Sonar analysis on master.
- #2713 fix: Print correct version string.
- #2719 fix: Maybe fix watch. Fixes #2678
- #2720 style: Camelcase "clusterScope"
- #2721 fix: Error pending nodes w/o Pods unless resubmitPendingPods is set
- #2722 fix: Children of onExit nodes are also onExit nodes
- #2723 feat: Make phase and templateRef available for unsuspend and retry selectors
- #2724 feat: Add Kustomize as supported install option. Closes #2715
- #2730 docs: Typo in Getting Started
- #2732 feat(controller): adds Kubernetes node name to workflow node detail in web UI and CLI output. Implements #2540
- #2737 test: Longer timeout for deletion
- #2740 feat: Display argo-server version in `argo version` and in UI.
- #2741 chore: Fix typo
- #2744 feat(manifests): add name on workflow-controller-metrics service port
- #2750 docs: Update OWNERS
- #2751 Update README.md
- #2752 docs: Update README
- #2753 fix: ClusterWorkflowTemplate RBAC for  argo server
- #2754 fix: Fix template resolution in UI
- #2756 fix: Consider expanded tasks in getTaskFromNode
- #2757 fix(controller): allow to use global params with withParam
- #2763 fix: Improve cookie security. Fixes #2759
- #2765 fix: Add compatiblity mode to templateReference
- #2766 feat: Add TLS support. Closes #2764
- #2767 test: Get tests running on release branches
- #2768 build: Retry curl 3x
- #2769 ci: Recurl
- #2774 fix: Naming error in Makefile
- #2776 chore: Add CODEOWNERS file
- #2778 fix: Rename Submittable API endpoint to `submit`
- #2779 fix(test): fix template scope tests. Fixes #2432
- #2789 chore: Add GCS native example for output artifact
- #2791 docs: Update the contributing docs 
- #2797 chore: note that tar.gz'ing output artifacts is optional
- #2801 docs: Add example of recursive for loop
- #2804 chore: fix typo
- #2805 fix: Allow empty strings in valueFrom.default
- #2806 fix: Print correct version in logs.
- #2811 fix: Don't configure Sonar on CI for release branches
- #2812 chore: Configure webpack dev server to proxy using HTTPS
- #2813 docs: Update tls.md
- #2814 feat(CLI): Add -v and --verbose to Argo CLI
- #2819 fix: Enforce metric naming validation
- #2822 docs: Add Microba as official Argo user
- #2826 fix: Add Step node outputs to global scope
- #2827 docs: Document how to label creator. Closes #2437
- #2829 fix: Artifact panic on unknown artifact. Fixes #2824
- #2830 fix: Re-establish workflow watch on disconnect. Fixes #2796
- #2834 test: Skip TestStopBehavior. See #2833
- #2837 fix(swagger): Generate correct Swagger for inline objects. Fixes #2835
- #2838 feat: expose workflow.Spec.ServiceAccountName as global variable. See #2794
- #2839 ci: Build less and therefore faster
- #2851 fix(controller): Add mutex to nameEntryIDMap in cron controller. Fix #2638
- #2853 docs: Fix exit code example and docs
- #2858 chore: Display wf.Status.Conditions in CLI
- #2862 docs: Fix typo ".yam" -> ".yaml"
- #2866 fix: Don't error when deleting already-deleted WFs
- #2882 docs: Document node field selector. Closes #2860
- #2907 fix(swagger)!: Fixes invalid K8S definitions in `swagger.json`. Fixes #2888
- #2910 ci: Remove context to stop unauthorized errors on test jobs
- #2917 test: Use argoproj/argosay:v1
- #2920 build: Fix Darwin build
- #2944 fix(cli): Re-establish watch on EOF
- #2958 fix(cli): Remove info logging from watches. Fixes #2955

#### Contributors

* Adam Gilat <!-- num=1 -->
* Alex Collins <!-- num=66 -->
* Alex Stein <!-- num=2 -->
* CWen <!-- num=1 -->
* Daisuke Taniwaki <!-- num=3 -->
* Derek Wang <!-- num=2 -->
* Dustin Specker <!-- num=2 -->
* Ed Lee <!-- num=2 -->
* Ejiah <!-- num=1 -->
* Fabio Rigato <!-- num=2 -->
* Gabriele Santomaggio <!-- num=1 -->
* Heikki Kesa <!-- num=1 -->
* Kannappan Sirchabesan <!-- num=1 -->
* Marek Čermák <!-- num=1 -->
* Michael Crenshaw <!-- num=4 -->
* Mike Seddon <!-- num=1 -->
* Niklas Hansson <!-- num=1 -->
* Omer Kahani <!-- num=1 -->
* Peng Li <!-- num=1 -->
* Peter Salanki <!-- num=2 -->
* Romain Di Giorgio <!-- num=1 -->
* Saradhi Sreegiriraju <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=11 -->
* Simon Behar <!-- num=35 -->
* Song Juchao <!-- num=1 -->
* Vardan Manucharyan <!-- num=1 -->
* Wei Yan <!-- num=1 -->
* dherman <!-- num=1 -->
* lueenavarro <!-- num=1 -->
* mark9white <!-- num=5 -->
* shibataka000 <!-- num=1 -->
* tunoat <!-- num=1 -->
v2.8.0-rc4: tag_name: v2.8.0-rc4
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.8.0-rc3/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.8.0-rc3/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.8.0-rc3/manifests/install.yaml
```

# Changes

[Blog post](https://blog.argoproj.io/whats-new-in-argo-workflow-v2-8-5356ee1d4f7f)

## v2.8.0-rc4

#### Bug Fixes

- #2638 Workflow controller restarts with 'fatal error: concurrent map read and map write'
- #2835 UserContainer swagger definition not matching command line client
- #2888 Swagger giving wrong Kubernetes definitions.
- #2955 "Re-establishing workflow watch" should be debug-level

#### Other

- #2860 Need documentation on "nodeFieldSelector"

#### Pull Requests

- #2543 test: Increase timeout for flaky test
- #2548 fix(controller): Workflow stop and resume by node didn't properly support offloaded nodes. Fixes #2543
- #2837 fix(swagger): Generate correct Swagger for inline objects. Fixes #2835
- #2839 ci: Build less and therefore faster
- #2851 fix(controller): Add mutex to nameEntryIDMap in cron controller. Fix #2638
- #2882 docs: Document node field selector. Closes #2860
- #2907 fix(swagger)!: Fixes invalid K8S definitions in `swagger.json`. Fixes #2888
- #2910 ci: Remove context to stop unauthorized errors on test jobs
- #2917 test: Use argoproj/argosay:v1
- #2920 build: Fix Darwin build
- #2944 fix(cli): Re-establish watch on EOF
- #2958 fix(cli): Remove info logging from watches. Fixes #2955

#### Contributors

* Alex Collins <!-- num=10 -->
* mark9white <!-- num=2 -->
* shibataka000 <!-- num=1 -->

## v2.8.0-rc3

#### Bug Fixes

- #2796 argo watch fails with an "EOF" error for workflows lasting > 90 seconds
- #2824 bug: cannot get artifact log with state "pod termination" (502 Bad Gateway)
- #2833 Fix flakey test TestFunctionalSuite/TestStopBehavior 

#### Pull Requests

- #2797 chore: note that tar.gz'ing output artifacts is optional
- #2811 fix: Don't configure Sonar on CI for release branches
- #2812 chore: Configure webpack dev server to proxy using HTTPS
- #2814 feat(CLI): Add -v and --verbose to Argo CLI
- #2819 fix: Enforce metric naming validation
- #2826 fix: Add Step node outputs to global scope
- #2829 fix: Artifact panic on unknown artifact. Fixes #2824
- #2830 fix: Re-establish workflow watch on disconnect. Fixes #2796
- #2834 test: Skip TestStopBehavior. See #2833
- #2838 feat: expose workflow.Spec.ServiceAccountName as global variable. See #2794
- #2858 chore: Display wf.Status.Conditions in CLI
- #2866 fix: Don't error when deleting already-deleted WFs

#### Contributors

* Alex Collins <!-- num=11 -->
* Fabio Rigato <!-- num=1 -->
* Michael Crenshaw <!-- num=2 -->
* Mike Seddon <!-- num=1 -->
* Simon Behar <!-- num=5 -->

## v2.8.0-rc2

#### Enhancements

* #2273 Workflow Archive data retention
* #2540 Add Kubernetes node name to workflow node detail in Web UI and CLI output
* #2764 Add TLS support to Argo Server

#### Other

- fix: Don't configure Sonar on CI for release branches

#### Pull Requests

- #2312 feat(archive): Implement data retention. Closes #2273
- #2680 fix: allow non path output params
- #2681 fix: MySQL config fix
- #2732 feat(controller): adds Kubernetes node name to workflow node detail in web UI and CLI output. Implements #2540
- #2740 feat: Display argo-server version in `argo version` and in UI.
- #2753 fix: ClusterWorkflowTemplate RBAC for  argo server
- #2757 fix(controller): allow to use global params with withParam
- #2766 feat: Add TLS support. Closes #2764
- #2774 fix: Naming error in Makefile
- #2776 chore: Add CODEOWNERS file
- #2778 fix: Rename Submittable API endpoint to `submit`
- #2779 fix(test): fix template scope tests. Fixes #2432
- #2789 chore: Add GCS native example for output artifact
- #2791 docs: Update the contributing docs 
- #2801 docs: Add example of recursive for loop
- #2804 chore: fix typo
- #2805 fix: Allow empty strings in valueFrom.default
- #2806 fix: Print correct version in logs.

#### Contributors

* Alex Collins <!-- num=10 -->
* Alex Stein <!-- num=1 -->
* Daisuke Taniwaki <!-- num=3 -->
* Fabio Rigato <!-- num=1 -->
* Kannappan Sirchabesan <!-- num=1 -->
* Michael Crenshaw <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=2 -->
* Simon Behar <!-- num=3 -->

## v2.8.0-rc1

#### Enhancements

* #2274 Emit events to event bus
* #2334 Step restart on workflow retry

#### Bug Fixes

- #2285 Argo server should start without configmap
- #2571 When trying to delete a pod, and we do not find it, this should not be an error
- #2589 v2.7.0 CLI argo logs for workflows are broken
- #2596 continue on fail doesn't work with DAG
- #2603 onExit step gets stuck if the workflow exceeds activeDeadlineSeconds
- #2618 Fix TestCreateWorkflowDryRun
- #2626 Correctly emit events for node completion
- #2678 argo watch does not update/refresh screen
- #2682  argo/docs/CONTRIBUTING.md has broken link to pull request templage
- #2715 Workflow Deployments Use Image Tag :latest
- #2759 Improve cookie security

#### Pull Requests

- #1779 feat: Allow to pass optional flags to resource template
- #2111 feat: Add exit code as output variable
- #2431 feat: Allow step restart on workflow retry. Closes #2334
- #2451 feat: Cluster scoped workflow template
- #2521 feat: Create K8S events on node completion. Closes #2274
- #2525 feat: UI enhancement for Cluster Workflow Template
- #2538 docs: Storage region should be specified
- #2544 feat: Added Workflow SubmitFromResource API
- #2552 fix(cli): Show lint errors of all files
- #2558 docs: Add Riskified to the user list
- #2561 chore(docker): upgrade base image for executor image
- #2562 fix: Fixes empty/missing CM. Fixes #2285
- #2563 chore: fix typos in the workflow template docs
- #2565 fix: Use outputs of last child instead of retry node itslef
- #2566 chore: Error -> Warn when Parent CronWf no longer exists
- #2568 feat: Show workflow duration in the index UI page
- #2572 fix: Fix bug in deleting pods. Fixes #2571
- #2573 refactor: Refactor Template context interfaces
- #2575 feat(archive): allow specifying a compression level
- #2576 chore: Added ClusterWorkflowTemplate RBAC on quick-start manifests
- #2577 style: Correct the confused logic in resource executor
- #2584 feat: Add 'outputs.result' to Container templates
- #2586 chore: fix wrong Configuring Your Artifact Repository document.
- #2587 chore: Lint UI on CI, test diagnostics, skip bad test
- #2591 docs: Fix inaccurate field name in docs
- #2594 fix: Fixes lint errors
- #2595 fix: Fix logging problems. See #2589
- #2597 fix(controller): dag continue on failed. Fixes #2596
- #2598 fix(error handling): use Errorf instead of New when throwing errors with formatted text
- #2604 fix: Fixes panic in toWorkflow method
- #2605 fix: onExit step gets stuck if the workflow exceeds activeDeadlineSeconds. Fixes #2603
- #2607 fix: Fix WorkflowTemplate icons to be more cohesive
- #2608 fix: Validating Item Param in Steps Template
- #2609 test: Enhancements and repairs to e2e test framework
- #2610 docs: Add fields and core concepts doc
- #2612 feat: Added Client validation on Workflow/WFT/CronWF/CWFT
- #2613 fix: Flakey TestNestedClusterWorkflowTemplate testcase failure
- #2627 chore: Add comments to issues
- #2628 test: Fixes TestCreateWorkflowDryRun. Closes #2618
- #2629 fix: Correctly emit events. Fixes #2626
- #2630 test: Fix teething problems
- #2631 fix: fix test cases. Fixes #2619
- #2632  docs: Added doc generator code 
- #2633 fix: Support minimal mysql version 5.7.8. Fixes #2625
- #2636 chore: Use error equals instead of strings.Contains
- #2639 fix: Fix logs part 2
- #2640 feat(UI): Move Workflow parameters to top of submit
- #2641 docs(users): Add CoreWeave and ConciergeRender
- #2643 docs: Updates docs for CII. See #2641
- #2644 fix: Enhanced WorkflowTemplate and ClusterWorkflowTemplate validation to support Global Variables  
- #2645 fix: Consider offloaded and compressed node in retry and resume
- #2646 fix: Add input paremeters to metric scope
- #2647 fix: Sort log entries.
- #2648 ci: Fix codegen job
- #2649 chore: Fix-up Yarn deps
- #2654 chore: Add newline to fields.md
- #2655 ci: Only run CI jobs if needed
- #2656 fix: DAG should not fail if its tasks have continueOn
- #2657 fix: Don't attempt to resolve artifacts if task is going to be skipped
- #2659 test: Fix flakey DeleteCompleted test
- #2661 fix: Add DAG as default in UI filter and reorder
- #2662 build: Fix codegen for releases
- #2666 ci: Migrate to use Sonar instead of CodeCov for analysis
- #2668 fix: Leaf task with continueOn should not fail DAG
- #2669 fix: a typo
- #2670 fix: Make ClusterWorkflowTemplate optional for namespaced Installation
- #2676 fix: Report metric emission errors via Conditions
- #2686 fix: Namespace-related validation in UI
- #2689 chore: update running-locally.md - corrects protoc install command
- #2697 docs: Fix artifactory installation guide on getting started page
- #2699 docs: Fix CONTRIBUTING.md and running-locally.md. Fixes #2682
- #2700 feat(ui): Add a YAML panel to view the workflow manifest.
- #2701 test: Fix Goroutine leak that was making controller unit tests slow.
- #2702 fix: Reset all conditions when resubmitting
- #2703 test: Increase runCli timeout to 1m
- #2704 build(ui): Fix compression of UI package.
- #2705 feat: Increase pod workers and workflow workers both to 32 by default.
- #2707 fix: Don't use docker cache when building release images
- #2709 ci: Fix Sonar analysis on master.
- #2713 fix: Print correct version string.
- #2719 fix: Maybe fix watch. Fixes #2678
- #2720 style: Camelcase "clusterScope"
- #2721 fix: Error pending nodes w/o Pods unless resubmitPendingPods is set
- #2722 fix: Children of onExit nodes are also onExit nodes
- #2723 feat: Make phase and templateRef available for unsuspend and retry selectors
- #2724 feat: Add Kustomize as supported install option. Closes #2715
- #2730 docs: Typo in Getting Started
- #2737 test: Longer timeout for deletion
- #2741 chore: Fix typo
- #2744 feat(manifests): add name on workflow-controller-metrics service port
- #2750 docs: Update OWNERS
- #2751 Update README.md
- #2752 docs: Update README
- #2754 fix: Fix template resolution in UI
- #2756 fix: Consider expanded tasks in getTaskFromNode
- #2763 fix: Improve cookie security. Fixes #2759
- #2765 fix: Add compatiblity mode to templateReference
- #2767 test: Get tests running on release branches
- #2768 build: Retry curl 3x
- #2769 ci: Recurl

#### Contributors

* Adam Gilat <!-- num=1 -->
* Alex Collins <!-- num=35 -->
* Alex Stein <!-- num=1 -->
* CWen <!-- num=1 -->
* Derek Wang <!-- num=2 -->
* Dustin Specker <!-- num=2 -->
* Ed Lee <!-- num=2 -->
* Ejiah <!-- num=1 -->
* Gabriele Santomaggio <!-- num=1 -->
* Heikki Kesa <!-- num=1 -->
* Marek Čermák <!-- num=1 -->
* Michael Crenshaw <!-- num=1 -->
* Niklas Hansson <!-- num=1 -->
* Omer Kahani <!-- num=1 -->
* Peng Li <!-- num=1 -->
* Peter Salanki <!-- num=2 -->
* Romain Di Giorgio <!-- num=1 -->
* Saradhi Sreegiriraju <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=9 -->
* Simon Behar <!-- num=27 -->
* Song Juchao <!-- num=1 -->
* Vardan Manucharyan <!-- num=1 -->
* Wei Yan <!-- num=1 -->
* dherman <!-- num=1 -->
* lueenavarro <!-- num=1 -->
* mark9white <!-- num=3 -->
* tunoat <!-- num=1 -->
v2.7.7: tag_name: v2.7.7
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.7/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.7/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.7.7/manifests/install.yaml
```

# Changes

#### Bug Fixes

- #2638 Workflow controller restarts with 'fatal error: concurrent map read and map write'

#### Pull Requests

- #2806 fix: Print correct version in logs.
- #2851 fix(controller): Add mutex to nameEntryIDMap in cron controller. Fix #2638
- #2944 fix(cli): Re-establish watch on EOF

#### Contributors

* Alex Collins <!-- num=3 -->
* shibataka000 <!-- num=1 -->
v2.8.0-rc3: tag_name: v2.8.0-rc3
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.8.0-rc3/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.8.0-rc3/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.8.0-rc3/manifests/install.yaml
```

# Changes

[Blog post](https://blog.argoproj.io/whats-new-in-argo-workflow-v2-8-5356ee1d4f7f)

## v2.8.0-rc3

#### Bug Fixes

- #2796 argo watch fails with an "EOF" error for workflows lasting > 90 seconds
- #2824 bug: cannot get artifact log with state "pod termination" (502 Bad Gateway)
- #2833 Fix flakey test TestFunctionalSuite/TestStopBehavior 

#### Pull Requests

- #2797 chore: note that tar.gz'ing output artifacts is optional
- #2811 fix: Don't configure Sonar on CI for release branches
- #2812 chore: Configure webpack dev server to proxy using HTTPS
- #2814 feat(CLI): Add -v and --verbose to Argo CLI
- #2819 fix: Enforce metric naming validation
- #2826 fix: Add Step node outputs to global scope
- #2829 fix: Artifact panic on unknown artifact. Fixes #2824
- #2830 fix: Re-establish workflow watch on disconnect. Fixes #2796
- #2834 test: Skip TestStopBehavior. See #2833
- #2838 feat: expose workflow.Spec.ServiceAccountName as global variable. See #2794
- #2858 chore: Display wf.Status.Conditions in CLI
- #2866 fix: Don't error when deleting already-deleted WFs

#### Contributors

* Alex Collins <!-- num=11 -->
* Fabio Rigato <!-- num=1 -->
* Michael Crenshaw <!-- num=2 -->
* Mike Seddon <!-- num=1 -->
* Simon Behar <!-- num=5 -->

## v2.8.0-rc2

#### Enhancements

* #2273 Workflow Archive data retention
* #2540 Add Kubernetes node name to workflow node detail in Web UI and CLI output
* #2764 Add TLS support to Argo Server

#### Other

- fix: Don't configure Sonar on CI for release branches

#### Pull Requests

- #2312 feat(archive): Implement data retention. Closes #2273
- #2680 fix: allow non path output params
- #2681 fix: MySQL config fix
- #2732 feat(controller): adds Kubernetes node name to workflow node detail in web UI and CLI output. Implements #2540
- #2740 feat: Display argo-server version in `argo version` and in UI.
- #2753 fix: ClusterWorkflowTemplate RBAC for  argo server
- #2757 fix(controller): allow to use global params with withParam
- #2766 feat: Add TLS support. Closes #2764
- #2774 fix: Naming error in Makefile
- #2776 chore: Add CODEOWNERS file
- #2778 fix: Rename Submittable API endpoint to `submit`
- #2779 fix(test): fix template scope tests. Fixes #2432
- #2789 chore: Add GCS native example for output artifact
- #2791 docs: Update the contributing docs 
- #2801 docs: Add example of recursive for loop
- #2804 chore: fix typo
- #2805 fix: Allow empty strings in valueFrom.default
- #2806 fix: Print correct version in logs.

#### Contributors

* Alex Collins <!-- num=10 -->
* Alex Stein <!-- num=1 -->
* Daisuke Taniwaki <!-- num=3 -->
* Fabio Rigato <!-- num=1 -->
* Kannappan Sirchabesan <!-- num=1 -->
* Michael Crenshaw <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=2 -->
* Simon Behar <!-- num=3 -->

## v2.8.0-rc1

#### Enhancements

* #2274 Emit events to event bus
* #2334 Step restart on workflow retry

#### Bug Fixes

- #2285 Argo server should start without configmap
- #2571 When trying to delete a pod, and we do not find it, this should not be an error
- #2589 v2.7.0 CLI argo logs for workflows are broken
- #2596 continue on fail doesn't work with DAG
- #2603 onExit step gets stuck if the workflow exceeds activeDeadlineSeconds
- #2618 Fix TestCreateWorkflowDryRun
- #2626 Correctly emit events for node completion
- #2678 argo watch does not update/refresh screen
- #2682  argo/docs/CONTRIBUTING.md has broken link to pull request templage
- #2715 Workflow Deployments Use Image Tag :latest
- #2759 Improve cookie security

#### Pull Requests

- #1779 feat: Allow to pass optional flags to resource template
- #2111 feat: Add exit code as output variable
- #2431 feat: Allow step restart on workflow retry. Closes #2334
- #2451 feat: Cluster scoped workflow template
- #2521 feat: Create K8S events on node completion. Closes #2274
- #2525 feat: UI enhancement for Cluster Workflow Template
- #2538 docs: Storage region should be specified
- #2544 feat: Added Workflow SubmitFromResource API
- #2552 fix(cli): Show lint errors of all files
- #2558 docs: Add Riskified to the user list
- #2561 chore(docker): upgrade base image for executor image
- #2562 fix: Fixes empty/missing CM. Fixes #2285
- #2563 chore: fix typos in the workflow template docs
- #2565 fix: Use outputs of last child instead of retry node itslef
- #2566 chore: Error -> Warn when Parent CronWf no longer exists
- #2568 feat: Show workflow duration in the index UI page
- #2572 fix: Fix bug in deleting pods. Fixes #2571
- #2573 refactor: Refactor Template context interfaces
- #2575 feat(archive): allow specifying a compression level
- #2576 chore: Added ClusterWorkflowTemplate RBAC on quick-start manifests
- #2577 style: Correct the confused logic in resource executor
- #2584 feat: Add 'outputs.result' to Container templates
- #2586 chore: fix wrong Configuring Your Artifact Repository document.
- #2587 chore: Lint UI on CI, test diagnostics, skip bad test
- #2591 docs: Fix inaccurate field name in docs
- #2594 fix: Fixes lint errors
- #2595 fix: Fix logging problems. See #2589
- #2597 fix(controller): dag continue on failed. Fixes #2596
- #2598 fix(error handling): use Errorf instead of New when throwing errors with formatted text
- #2604 fix: Fixes panic in toWorkflow method
- #2605 fix: onExit step gets stuck if the workflow exceeds activeDeadlineSeconds. Fixes #2603
- #2607 fix: Fix WorkflowTemplate icons to be more cohesive
- #2608 fix: Validating Item Param in Steps Template
- #2609 test: Enhancements and repairs to e2e test framework
- #2610 docs: Add fields and core concepts doc
- #2612 feat: Added Client validation on Workflow/WFT/CronWF/CWFT
- #2613 fix: Flakey TestNestedClusterWorkflowTemplate testcase failure
- #2627 chore: Add comments to issues
- #2628 test: Fixes TestCreateWorkflowDryRun. Closes #2618
- #2629 fix: Correctly emit events. Fixes #2626
- #2630 test: Fix teething problems
- #2631 fix: fix test cases. Fixes #2619
- #2632  docs: Added doc generator code 
- #2633 fix: Support minimal mysql version 5.7.8. Fixes #2625
- #2636 chore: Use error equals instead of strings.Contains
- #2639 fix: Fix logs part 2
- #2640 feat(UI): Move Workflow parameters to top of submit
- #2641 docs(users): Add CoreWeave and ConciergeRender
- #2643 docs: Updates docs for CII. See #2641
- #2644 fix: Enhanced WorkflowTemplate and ClusterWorkflowTemplate validation to support Global Variables  
- #2645 fix: Consider offloaded and compressed node in retry and resume
- #2646 fix: Add input paremeters to metric scope
- #2647 fix: Sort log entries.
- #2648 ci: Fix codegen job
- #2649 chore: Fix-up Yarn deps
- #2654 chore: Add newline to fields.md
- #2655 ci: Only run CI jobs if needed
- #2656 fix: DAG should not fail if its tasks have continueOn
- #2657 fix: Don't attempt to resolve artifacts if task is going to be skipped
- #2659 test: Fix flakey DeleteCompleted test
- #2661 fix: Add DAG as default in UI filter and reorder
- #2662 build: Fix codegen for releases
- #2666 ci: Migrate to use Sonar instead of CodeCov for analysis
- #2668 fix: Leaf task with continueOn should not fail DAG
- #2669 fix: a typo
- #2670 fix: Make ClusterWorkflowTemplate optional for namespaced Installation
- #2676 fix: Report metric emission errors via Conditions
- #2686 fix: Namespace-related validation in UI
- #2689 chore: update running-locally.md - corrects protoc install command
- #2697 docs: Fix artifactory installation guide on getting started page
- #2699 docs: Fix CONTRIBUTING.md and running-locally.md. Fixes #2682
- #2700 feat(ui): Add a YAML panel to view the workflow manifest.
- #2701 test: Fix Goroutine leak that was making controller unit tests slow.
- #2702 fix: Reset all conditions when resubmitting
- #2703 test: Increase runCli timeout to 1m
- #2704 build(ui): Fix compression of UI package.
- #2705 feat: Increase pod workers and workflow workers both to 32 by default.
- #2707 fix: Don't use docker cache when building release images
- #2709 ci: Fix Sonar analysis on master.
- #2713 fix: Print correct version string.
- #2719 fix: Maybe fix watch. Fixes #2678
- #2720 style: Camelcase "clusterScope"
- #2721 fix: Error pending nodes w/o Pods unless resubmitPendingPods is set
- #2722 fix: Children of onExit nodes are also onExit nodes
- #2723 feat: Make phase and templateRef available for unsuspend and retry selectors
- #2724 feat: Add Kustomize as supported install option. Closes #2715
- #2730 docs: Typo in Getting Started
- #2737 test: Longer timeout for deletion
- #2741 chore: Fix typo
- #2744 feat(manifests): add name on workflow-controller-metrics service port
- #2750 docs: Update OWNERS
- #2751 Update README.md
- #2752 docs: Update README
- #2754 fix: Fix template resolution in UI
- #2756 fix: Consider expanded tasks in getTaskFromNode
- #2763 fix: Improve cookie security. Fixes #2759
- #2765 fix: Add compatiblity mode to templateReference
- #2767 test: Get tests running on release branches
- #2768 build: Retry curl 3x
- #2769 ci: Recurl

#### Contributors

* Adam Gilat <!-- num=1 -->
* Alex Collins <!-- num=35 -->
* Alex Stein <!-- num=1 -->
* CWen <!-- num=1 -->
* Derek Wang <!-- num=2 -->
* Dustin Specker <!-- num=2 -->
* Ed Lee <!-- num=2 -->
* Ejiah <!-- num=1 -->
* Gabriele Santomaggio <!-- num=1 -->
* Heikki Kesa <!-- num=1 -->
* Marek Čermák <!-- num=1 -->
* Michael Crenshaw <!-- num=1 -->
* Niklas Hansson <!-- num=1 -->
* Omer Kahani <!-- num=1 -->
* Peng Li <!-- num=1 -->
* Peter Salanki <!-- num=2 -->
* Romain Di Giorgio <!-- num=1 -->
* Saradhi Sreegiriraju <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=9 -->
* Simon Behar <!-- num=27 -->
* Song Juchao <!-- num=1 -->
* Vardan Manucharyan <!-- num=1 -->
* Wei Yan <!-- num=1 -->
* dherman <!-- num=1 -->
* lueenavarro <!-- num=1 -->
* mark9white <!-- num=3 -->
* tunoat <!-- num=1 -->
v2.7.6: tag_name: v2.7.6
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.6/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.6/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.7.6/manifests/install.yaml
```

# Changes

#### Bug Fixes

- #2759 Improve cookie security
- #2796 argo watch fails with an "EOF" error for workflows lasting > 90 seconds
- #2824 bug: cannot get artifact log with state "pod termination" (502 Bad Gateway)
- #2833 Fix flakey test TestFunctionalSuite/TestStopBehavior 

#### Pull Requests

- #2680 fix: allow non path output params
- #2702 fix: Reset all conditions when resubmitting
- #2721 fix: Error pending nodes w/o Pods unless resubmitPendingPods is set
- #2722 fix: Children of onExit nodes are also onExit nodes
- #2756 fix: Consider expanded tasks in getTaskFromNode
- #2757 fix(controller): allow to use global params with withParam
- #2763 fix: Improve cookie security. Fixes #2759
- #2767 test: Get tests running on release branches
- #2768 build: Retry curl 3x
- #2769 ci: Recurl
- #2805 fix: Allow empty strings in valueFrom.default
- #2819 fix: Enforce metric naming validation
- #2826 fix: Add Step node outputs to global scope
- #2829 fix: Artifact panic on unknown artifact. Fixes #2824
- #2830 fix: Re-establish workflow watch on disconnect. Fixes #2796
- #2834 test: Skip TestStopBehavior. See #2833

#### Contributors

* Alex Collins <!-- num=8 -->
* Daisuke Taniwaki <!-- num=2 -->
* Simon Behar <!-- num=13 -->
v2.8.0-rc2: tag_name: v2.8.0-rc2
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.8.0-rc2/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.8.0-rc2/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.8.0-rc2/manifests/install.yaml
```

# Changes

[Blog post](https://blog.argoproj.io/whats-new-in-argo-workflow-v2-8-5356ee1d4f7f)


## v2.8.0-rc2

#### Enhancements

* #2273 Workflow Archive data retention
* #2540 Add Kubernetes node name to workflow node detail in Web UI and CLI output
* #2764 Add TLS support to Argo Server

#### Other

- fix: Don't configure Sonar on CI for release branches

#### Pull Requests

- #2312 feat(archive): Implement data retention. Closes #2273
- #2680 fix: allow non path output params
- #2681 fix: MySQL config fix
- #2732 feat(controller): adds Kubernetes node name to workflow node detail in web UI and CLI output. Implements #2540
- #2740 feat: Display argo-server version in `argo version` and in UI.
- #2753 fix: ClusterWorkflowTemplate RBAC for  argo server
- #2757 fix(controller): allow to use global params with withParam
- #2766 feat: Add TLS support. Closes #2764
- #2774 fix: Naming error in Makefile
- #2776 chore: Add CODEOWNERS file
- #2778 fix: Rename Submittable API endpoint to `submit`
- #2779 fix(test): fix template scope tests. Fixes #2432
- #2789 chore: Add GCS native example for output artifact
- #2791 docs: Update the contributing docs 
- #2801 docs: Add example of recursive for loop
- #2804 chore: fix typo
- #2805 fix: Allow empty strings in valueFrom.default
- #2806 fix: Print correct version in logs.

#### Contributors

* Alex Collins <!-- num=10 -->
* Alex Stein <!-- num=1 -->
* Daisuke Taniwaki <!-- num=3 -->
* Fabio Rigato <!-- num=1 -->
* Kannappan Sirchabesan <!-- num=1 -->
* Michael Crenshaw <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=2 -->
* Simon Behar <!-- num=3 -->

## v2.8.0-rc1

#### Enhancements

* #2274 Emit events to event bus
* #2334 Step restart on workflow retry

#### Bug Fixes

- #2285 Argo server should start without configmap
- #2571 When trying to delete a pod, and we do not find it, this should not be an error
- #2589 v2.7.0 CLI argo logs for workflows are broken
- #2596 continue on fail doesn't work with DAG
- #2603 onExit step gets stuck if the workflow exceeds activeDeadlineSeconds
- #2618 Fix TestCreateWorkflowDryRun
- #2626 Correctly emit events for node completion
- #2678 argo watch does not update/refresh screen
- #2682  argo/docs/CONTRIBUTING.md has broken link to pull request templage
- #2715 Workflow Deployments Use Image Tag :latest
- #2759 Improve cookie security

#### Pull Requests

- #1779 feat: Allow to pass optional flags to resource template
- #2111 feat: Add exit code as output variable
- #2431 feat: Allow step restart on workflow retry. Closes #2334
- #2451 feat: Cluster scoped workflow template
- #2521 feat: Create K8S events on node completion. Closes #2274
- #2525 feat: UI enhancement for Cluster Workflow Template
- #2538 docs: Storage region should be specified
- #2544 feat: Added Workflow SubmitFromResource API
- #2552 fix(cli): Show lint errors of all files
- #2558 docs: Add Riskified to the user list
- #2561 chore(docker): upgrade base image for executor image
- #2562 fix: Fixes empty/missing CM. Fixes #2285
- #2563 chore: fix typos in the workflow template docs
- #2565 fix: Use outputs of last child instead of retry node itslef
- #2566 chore: Error -> Warn when Parent CronWf no longer exists
- #2568 feat: Show workflow duration in the index UI page
- #2572 fix: Fix bug in deleting pods. Fixes #2571
- #2573 refactor: Refactor Template context interfaces
- #2575 feat(archive): allow specifying a compression level
- #2576 chore: Added ClusterWorkflowTemplate RBAC on quick-start manifests
- #2577 style: Correct the confused logic in resource executor
- #2584 feat: Add 'outputs.result' to Container templates
- #2586 chore: fix wrong Configuring Your Artifact Repository document.
- #2587 chore: Lint UI on CI, test diagnostics, skip bad test
- #2591 docs: Fix inaccurate field name in docs
- #2594 fix: Fixes lint errors
- #2595 fix: Fix logging problems. See #2589
- #2597 fix(controller): dag continue on failed. Fixes #2596
- #2598 fix(error handling): use Errorf instead of New when throwing errors with formatted text
- #2604 fix: Fixes panic in toWorkflow method
- #2605 fix: onExit step gets stuck if the workflow exceeds activeDeadlineSeconds. Fixes #2603
- #2607 fix: Fix WorkflowTemplate icons to be more cohesive
- #2608 fix: Validating Item Param in Steps Template
- #2609 test: Enhancements and repairs to e2e test framework
- #2610 docs: Add fields and core concepts doc
- #2612 feat: Added Client validation on Workflow/WFT/CronWF/CWFT
- #2613 fix: Flakey TestNestedClusterWorkflowTemplate testcase failure
- #2627 chore: Add comments to issues
- #2628 test: Fixes TestCreateWorkflowDryRun. Closes #2618
- #2629 fix: Correctly emit events. Fixes #2626
- #2630 test: Fix teething problems
- #2631 fix: fix test cases. Fixes #2619
- #2632  docs: Added doc generator code 
- #2633 fix: Support minimal mysql version 5.7.8. Fixes #2625
- #2636 chore: Use error equals instead of strings.Contains
- #2639 fix: Fix logs part 2
- #2640 feat(UI): Move Workflow parameters to top of submit
- #2641 docs(users): Add CoreWeave and ConciergeRender
- #2643 docs: Updates docs for CII. See #2641
- #2644 fix: Enhanced WorkflowTemplate and ClusterWorkflowTemplate validation to support Global Variables  
- #2645 fix: Consider offloaded and compressed node in retry and resume
- #2646 fix: Add input paremeters to metric scope
- #2647 fix: Sort log entries.
- #2648 ci: Fix codegen job
- #2649 chore: Fix-up Yarn deps
- #2654 chore: Add newline to fields.md
- #2655 ci: Only run CI jobs if needed
- #2656 fix: DAG should not fail if its tasks have continueOn
- #2657 fix: Don't attempt to resolve artifacts if task is going to be skipped
- #2659 test: Fix flakey DeleteCompleted test
- #2661 fix: Add DAG as default in UI filter and reorder
- #2662 build: Fix codegen for releases
- #2666 ci: Migrate to use Sonar instead of CodeCov for analysis
- #2668 fix: Leaf task with continueOn should not fail DAG
- #2669 fix: a typo
- #2670 fix: Make ClusterWorkflowTemplate optional for namespaced Installation
- #2676 fix: Report metric emission errors via Conditions
- #2686 fix: Namespace-related validation in UI
- #2689 chore: update running-locally.md - corrects protoc install command
- #2697 docs: Fix artifactory installation guide on getting started page
- #2699 docs: Fix CONTRIBUTING.md and running-locally.md. Fixes #2682
- #2700 feat(ui): Add a YAML panel to view the workflow manifest.
- #2701 test: Fix Goroutine leak that was making controller unit tests slow.
- #2702 fix: Reset all conditions when resubmitting
- #2703 test: Increase runCli timeout to 1m
- #2704 build(ui): Fix compression of UI package.
- #2705 feat: Increase pod workers and workflow workers both to 32 by default.
- #2707 fix: Don't use docker cache when building release images
- #2709 ci: Fix Sonar analysis on master.
- #2713 fix: Print correct version string.
- #2719 fix: Maybe fix watch. Fixes #2678
- #2720 style: Camelcase "clusterScope"
- #2721 fix: Error pending nodes w/o Pods unless resubmitPendingPods is set
- #2722 fix: Children of onExit nodes are also onExit nodes
- #2723 feat: Make phase and templateRef available for unsuspend and retry selectors
- #2724 feat: Add Kustomize as supported install option. Closes #2715
- #2730 docs: Typo in Getting Started
- #2737 test: Longer timeout for deletion
- #2741 chore: Fix typo
- #2744 feat(manifests): add name on workflow-controller-metrics service port
- #2750 docs: Update OWNERS
- #2751 Update README.md
- #2752 docs: Update README
- #2754 fix: Fix template resolution in UI
- #2756 fix: Consider expanded tasks in getTaskFromNode
- #2763 fix: Improve cookie security. Fixes #2759
- #2765 fix: Add compatiblity mode to templateReference
- #2767 test: Get tests running on release branches
- #2768 build: Retry curl 3x
- #2769 ci: Recurl

#### Contributors

* Adam Gilat <!-- num=1 -->
* Alex Collins <!-- num=35 -->
* Alex Stein <!-- num=1 -->
* CWen <!-- num=1 -->
* Derek Wang <!-- num=2 -->
* Dustin Specker <!-- num=2 -->
* Ed Lee <!-- num=2 -->
* Ejiah <!-- num=1 -->
* Gabriele Santomaggio <!-- num=1 -->
* Heikki Kesa <!-- num=1 -->
* Marek Čermák <!-- num=1 -->
* Michael Crenshaw <!-- num=1 -->
* Niklas Hansson <!-- num=1 -->
* Omer Kahani <!-- num=1 -->
* Peng Li <!-- num=1 -->
* Peter Salanki <!-- num=2 -->
* Romain Di Giorgio <!-- num=1 -->
* Saradhi Sreegiriraju <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=9 -->
* Simon Behar <!-- num=27 -->
* Song Juchao <!-- num=1 -->
* Vardan Manucharyan <!-- num=1 -->
* Wei Yan <!-- num=1 -->
* dherman <!-- num=1 -->
* lueenavarro <!-- num=1 -->
* mark9white <!-- num=3 -->
* tunoat <!-- num=1 -->
v2.8.0-rc1: tag_name: v2.8.0-rc1
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.8.0-rc1/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.8.0-rc1/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.8.0-rc1/manifests/install.yaml
```

# Changes

[Blog post](https://blog.argoproj.io/whats-new-in-argo-workflow-v2-8-5356ee1d4f7f)

#### Enhancements

* #2274 Emit events to event bus
* #2334 Step restart on workflow retry

#### Bug Fixes

- #2285 Argo server should start without configmap
- #2571 When trying to delete a pod, and we do not find it, this should not be an error
- #2589 v2.7.0 CLI argo logs for workflows are broken
- #2596 continue on fail doesn't work with DAG
- #2603 onExit step gets stuck if the workflow exceeds activeDeadlineSeconds
- #2618 Fix TestCreateWorkflowDryRun
- #2626 Correctly emit events for node completion
- #2678 argo watch does not update/refresh screen
- #2682  argo/docs/CONTRIBUTING.md has broken link to pull request templage
- #2715 Workflow Deployments Use Image Tag :latest
- #2759 Improve cookie security

#### Pull Requests

- #1779 feat: Allow to pass optional flags to resource template
- #2111 feat: Add exit code as output variable
- #2431 feat: Allow step restart on workflow retry. Closes #2334
- #2451 feat: Cluster scoped workflow template
- #2521 feat: Create K8S events on node completion. Closes #2274
- #2525 feat: UI enhancement for Cluster Workflow Template
- #2538 docs: Storage region should be specified
- #2544 feat: Added Workflow SubmitFromResource API
- #2552 fix(cli): Show lint errors of all files
- #2558 docs: Add Riskified to the user list
- #2561 chore(docker): upgrade base image for executor image
- #2562 fix: Fixes empty/missing CM. Fixes #2285
- #2563 chore: fix typos in the workflow template docs
- #2565 fix: Use outputs of last child instead of retry node itslef
- #2566 chore: Error -> Warn when Parent CronWf no longer exists
- #2568 feat: Show workflow duration in the index UI page
- #2572 fix: Fix bug in deleting pods. Fixes #2571
- #2573 refactor: Refactor Template context interfaces
- #2575 feat(archive): allow specifying a compression level
- #2576 chore: Added ClusterWorkflowTemplate RBAC on quick-start manifests
- #2577 style: Correct the confused logic in resource executor
- #2584 feat: Add 'outputs.result' to Container templates
- #2586 chore: fix wrong Configuring Your Artifact Repository document.
- #2587 chore: Lint UI on CI, test diagnostics, skip bad test
- #2591 docs: Fix inaccurate field name in docs
- #2594 fix: Fixes lint errors
- #2595 fix: Fix logging problems. See #2589
- #2597 fix(controller): dag continue on failed. Fixes #2596
- #2598 fix(error handling): use Errorf instead of New when throwing errors with formatted text
- #2604 fix: Fixes panic in toWorkflow method
- #2605 fix: onExit step gets stuck if the workflow exceeds activeDeadlineSeconds. Fixes #2603
- #2607 fix: Fix WorkflowTemplate icons to be more cohesive
- #2608 fix: Validating Item Param in Steps Template
- #2609 test: Enhancements and repairs to e2e test framework
- #2610 docs: Add fields and core concepts doc
- #2612 feat: Added Client validation on Workflow/WFT/CronWF/CWFT
- #2613 fix: Flakey TestNestedClusterWorkflowTemplate testcase failure
- #2627 chore: Add comments to issues
- #2628 test: Fixes TestCreateWorkflowDryRun. Closes #2618
- #2629 fix: Correctly emit events. Fixes #2626
- #2630 test: Fix teething problems
- #2631 fix: fix test cases. Fixes #2619
- #2632  docs: Added doc generator code 
- #2633 fix: Support minimal mysql version 5.7.8. Fixes #2625
- #2636 chore: Use error equals instead of strings.Contains
- #2639 fix: Fix logs part 2
- #2640 feat(UI): Move Workflow parameters to top of submit
- #2641 docs(users): Add CoreWeave and ConciergeRender
- #2643 docs: Updates docs for CII. See #2641
- #2644 fix: Enhanced WorkflowTemplate and ClusterWorkflowTemplate validation to support Global Variables  
- #2645 fix: Consider offloaded and compressed node in retry and resume
- #2646 fix: Add input paremeters to metric scope
- #2647 fix: Sort log entries.
- #2648 ci: Fix codegen job
- #2649 chore: Fix-up Yarn deps
- #2654 chore: Add newline to fields.md
- #2655 ci: Only run CI jobs if needed
- #2656 fix: DAG should not fail if its tasks have continueOn
- #2657 fix: Don't attempt to resolve artifacts if task is going to be skipped
- #2659 test: Fix flakey DeleteCompleted test
- #2661 fix: Add DAG as default in UI filter and reorder
- #2662 build: Fix codegen for releases
- #2666 ci: Migrate to use Sonar instead of CodeCov for analysis
- #2668 fix: Leaf task with continueOn should not fail DAG
- #2669 fix: a typo
- #2670 fix: Make ClusterWorkflowTemplate optional for namespaced Installation
- #2676 fix: Report metric emission errors via Conditions
- #2686 fix: Namespace-related validation in UI
- #2689 chore: update running-locally.md - corrects protoc install command
- #2697 docs: Fix artifactory installation guide on getting started page
- #2699 docs: Fix CONTRIBUTING.md and running-locally.md. Fixes #2682
- #2700 feat(ui): Add a YAML panel to view the workflow manifest.
- #2701 test: Fix Goroutine leak that was making controller unit tests slow.
- #2702 fix: Reset all conditions when resubmitting
- #2703 test: Increase runCli timeout to 1m
- #2704 build(ui): Fix compression of UI package.
- #2705 feat: Increase pod workers and workflow workers both to 32 by default.
- #2707 fix: Don't use docker cache when building release images
- #2709 ci: Fix Sonar analysis on master.
- #2713 fix: Print correct version string.
- #2719 fix: Maybe fix watch. Fixes #2678
- #2720 style: Camelcase "clusterScope"
- #2721 fix: Error pending nodes w/o Pods unless resubmitPendingPods is set
- #2722 fix: Children of onExit nodes are also onExit nodes
- #2723 feat: Make phase and templateRef available for unsuspend and retry selectors
- #2724 feat: Add Kustomize as supported install option. Closes #2715
- #2730 docs: Typo in Getting Started
- #2737 test: Longer timeout for deletion
- #2741 chore: Fix typo
- #2744 feat(manifests): add name on workflow-controller-metrics service port
- #2750 docs: Update OWNERS
- #2751 Update README.md
- #2752 docs: Update README
- #2754 fix: Fix template resolution in UI
- #2756 fix: Consider expanded tasks in getTaskFromNode
- #2763 fix: Improve cookie security. Fixes #2759
- #2765 fix: Add compatiblity mode to templateReference
- #2767 test: Get tests running on release branches
- #2768 build: Retry curl 3x
- #2769 ci: Recurl

#### Contributors

* Adam Gilat <!-- num=1 -->
* Alex Collins <!-- num=35 -->
* Alex Stein <!-- num=1 -->
* CWen <!-- num=1 -->
* Derek Wang <!-- num=2 -->
* Dustin Specker <!-- num=2 -->
* Ed Lee <!-- num=2 -->
* Ejiah <!-- num=1 -->
* Gabriele Santomaggio <!-- num=1 -->
* Heikki Kesa <!-- num=1 -->
* Marek Čermák <!-- num=1 -->
* Michael Crenshaw <!-- num=1 -->
* Niklas Hansson <!-- num=1 -->
* Omer Kahani <!-- num=1 -->
* Peng Li <!-- num=1 -->
* Peter Salanki <!-- num=2 -->
* Romain Di Giorgio <!-- num=1 -->
* Saradhi Sreegiriraju <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=9 -->
* Simon Behar <!-- num=27 -->
* Song Juchao <!-- num=1 -->
* Vardan Manucharyan <!-- num=1 -->
* Wei Yan <!-- num=1 -->
* dherman <!-- num=1 -->
* lueenavarro <!-- num=1 -->
* mark9white <!-- num=3 -->
* tunoat <!-- num=1 -->
v2.7.5: tag_name: v2.7.5
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.5/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.5/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.7.5/manifests/install.yaml
```

# Changes
#### Bug Fixes
- #2678 argo watch does not update/refresh screen
- #2715 Workflow Deployments Use Image Tag :latest
- #2759 Improve cookie security
#### Pull Requests
- #2713 fix: Print correct version string.
- #2719 fix: Maybe fix watch. Fixes #2678
- #2724 feat: Add Kustomize as supported install option. Closes #2715
- #2702  fix: Reset all conditions when resubmitting
- #2756 fix: Consider expanded tasks in getTaskFromNode
- #2763 fix: Improve cookie security. Fixes #2759
- #2721 fix: Error pending nodes w/o Pods unless resubmitPendingPods is set
#### Contributors
* Alex Collins <!-- num=6 -->
* Simon Behar <!-- num=3 -->
v2.7.4: tag_name: v2.7.4
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.4/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.4/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.7.4/manifests/install.yaml
```

# Changes
This includes a security patch to address [`git` security advisory CVE-2020-5260](https://github.com/git/git/security/advisories/GHSA-qm7j-c969-7j4q).

v2.6.4: tag_name: v2.6.4
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.6.4/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.6.4/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.6.4/manifests/install.yaml
```

# Changes
~This includes a security patch to address [`git` security advisory CVE-2020-5260](https://github.com/git/git/security/advisories/GHSA-qm7j-c969-7j4q).~

Previously this release was said to contain a security patch that addressed [`git` security advisory CVE-2020-5260](https://github.com/git/git/security/advisories/GHSA-qm7j-c969-7j4q). We found that due to a release process bug, this was not the case. `v2.7.4` is confirmed to have the security patch has been released here: https://github.com/argoproj/argo/releases/tag/v2.7.4
v2.7.3: tag_name: v2.7.3
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.3/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.3/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.7.3/manifests/install.yaml
```

# Changes
~This includes a security patch to address [`git` security advisory CVE-2020-5260](https://github.com/git/git/security/advisories/GHSA-qm7j-c969-7j4q).~

Previously this release was said to contain a security patch that addressed [`git` security advisory CVE-2020-5260](https://github.com/git/git/security/advisories/GHSA-qm7j-c969-7j4q). We found that due to a release process bug, this was not the case. `v2.7.4` is confirmed to have the security patch has been released here: https://github.com/argoproj/argo/releases/tag/v2.7.4

#### Pull Requests

- #2668 fix: Leaf task with continueOn should not fail DAG
- #2676 fix: Report metric emission errors via Conditions
- #2707 fix: Don't use docker cache when building release images

#### Contributors

* Alex Collins <!-- num=2 -->
* Simon Behar <!-- num=3 -->

v2.7.2: tag_name: v2.7.2
body: # Quick Start
## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.2/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.2/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.7.2/manifests/install.yaml
```

# Changes

Check out [the blog post](https://blog.argoproj.io/argo-workflows-v2-7-6ace8c210798).

#### Bug Fixes

- #2589 v2.7.0 CLI argo logs for workflows are broken
- #2603 onExit step gets stuck if the workflow exceeds activeDeadlineSeconds


#### Pull Requests

- #2595 fix: Fix logging problems. See #2589
- #2605 fix: onExit step gets stuck if the workflow exceeds activeDeadlineSeconds. Fixes #2603
- #2609 test: Enhancements and repairs to e2e test framework
- #2627 chore: Add comments to issues
- #2630 test: Fix teething problems
- #2633 fix: Support minimal mysql version 5.7.8. Fixes #2625
- #2639 fix: Fix logs part 2
- #2645 fix: Consider offloaded and compressed node in retry and resume
- #2646 fix: Add input paremeters to metric scope
- #2647 fix: Sort log entries.
- #2648 ci: Fix codegen job
- #2656 fix: DAG should not fail if its tasks have continueOn
- #2657 fix: Don't attempt to resolve artifacts if task is going to be skipped
- #2659 test: Fix flakey DeleteCompleted test
- #2661 fix: Add DAG as default in UI filter and reorder
- #2662 build: Fix codegen for releases

#### Contributors

* Alex Collins <!-- num=11 -->
* Derek Wang <!-- num=1 -->
* Simon Behar <!-- num=5 -->
* mark9white <!-- num=1 -->
v2.7.1: tag_name: v2.7.1
body: # Quick Start

## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.1/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.1/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.7.1/manifests/install.yaml
```

# Changes

Check out [the blog post](https://blog.argoproj.io/argo-workflows-v2-7-6ace8c210798).

#### Bug Fixes

- #2285 Argo server should start without configmap
- #2571 When trying to delete a pod, and we do not find it, this should not be an error
- #2596 continue on fail doesn't work with DAG

#### Pull Requests

- #2528 fix: Separate global scope processing from local scope building
- #2552 fix(cli): Show lint errors of all files
- #2555 feat: Add node type and phase filter to UI
- #2562 fix: Fixes empty/missing CM. Fixes #2285
- #2565 fix: Use outputs of last child instead of retry node itslef
- #2566 chore: Error -> Warn when Parent CronWf no longer exists
- #2568 feat: Show workflow duration in the index UI page
- #2572 fix: Fix bug in deleting pods. Fixes #2571
- #2577 style: Correct the confused logic in resource executor
- #2587 chore: Lint UI on CI, test diagnostics, skip bad test
- #2591 docs: Fix inaccurate field name in docs
- #2594 fix: Fixes lint errors
- #2597 fix(controller): dag continue on failed. Fixes #2596
- #2598 fix(error handling): use Errorf instead of New when throwing errors with formatted text
- #2604 fix: Fixes panic in toWorkflow method

#### Contributors

* Alex Collins <!-- num=6 -->
* Heikki Kesa <!-- num=1 -->
* Niklas Hansson <!-- num=1 -->
* Peng Li <!-- num=1 -->
* Simon Behar <!-- num=7 -->
* Vardan Manucharyan <!-- num=1 -->
* Wei Yan <!-- num=1 -->
v2.7.0: tag_name: v2.7.0
body: # Quick Start

## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.0/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.0/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.7.0/manifests/install.yaml
```

# Changes

Check out [the blog post](https://blog.argoproj.io/argo-workflows-v2-7-6ace8c210798).

#### Enhancements

* #1066 Feature Request:   Calculate workflow resource usage
* #1728 Adding Pod Disruption budget for each workflow run by argo controller so that Pod/Step does not gets deleted during autoscaling event
* #1891 Enable retryStrategy to be specified for non-leaf nodes
* #1893 More control over resuming suspended nodes
* #1911 Support GCS natively
* #1923 Provide a way to set default Workflow options that will apply to all workflows
* #2004 Argo server should support controller instance ids
* #2007 Workflow templates should be submittable
* #2116 Migrate CLI workflow commands to use `apiclient.Client`
* #2117 Clean-up any deprecated code not needed after migration to use `apiclient.Client`
* #2421 Add `Conditions` to workflow status
* #2436 Search archive by started at between two dates and times
* #2438 Deep link into Splunk (or other logging facility) from UI
* #2439 Remember namespace across UI pages
* #2460 Expose resource duration in the UI
* #2463 Update configm ap to support strategic-merge-patch
* #2471 Show environment variables in Argo UI

#### Bug Fixes

- #1722 When using script template input artifact is not able to save in volume mount
- #1866 Argo Database Persistence SSL does not work
- #1907 GetTaskAncestry loop through steps that are already visited and cause performance issue
- #2337 Argo Workflow UI stops refreshing
- #2374 Log version on start-up
- #2381 Make Argo UI not indexed
- #2420 v2.6.1: argo list --chunk-size truncation should apply after other filters
- #2427 Updating the workflow archive entry for a retried workflow fails with "current transaction is aborted"
- #2432 Fix flakey tests in operator_template_scope_test.go
- #2446 Fix flakey test: `TestPendingRetryWorkflowWithRetryStrategy` 
- #2492 FATA[0000] invalid configuration: no configuration has been provided
- #2512 SecurityContext settings for executor container not fully honoured

#### Other

- #2300 Logs does not automatically fail over to artifact in v2.5.1

#### Pull Requests

- #1867 fix(persistence): set postgres ssl config to string Fixes #1866
- #1892 feat: Allow retry strategy on non-leaf nodes, eg for step groups. Fixes #1891
- #1904 feat: More control over resuming suspended nodes Fixes #1893
- #1908 fix(controller): Updates GetTaskAncestry to skip visited nod. Fixes #1907
- #1919 feat: Add support for Alibaba Cloud OSS artifact
- #2044 fix: Updated the TTLcontroller to fix issue related to TTL default settings. Fixes #1923
- #2177 chore(cli): Migrate `argo logs` to use API client. See #2116
- #2219 feat(usage): Report resource duration. Closes #1066
- #2222 feat: Support workflow templates submission. Closes #2007
- #2254 feat: Custom, step-level, and usage metrics
- #2282 chore(cli): Migrate `argo wait` to use API client. See #2116
- #2286 feat: Support workflow level poddisruptionbudge for workflow pods #1728
- #2301 fix(ui): Provide a link to archived logs. Fixes #2300
- #2303 chore(cli): Clean-up code. Closes #2117
- #2309 build: Improve reliability of release.
- #2311 chore: update getting-started guide for 2.5.2 and apply other tweaks
- #2317 fix(swagger): Fix the broken swagger.
- #2319 feat(ui): Adds ability zoom and hide successful steps. POC
- #2323 docs: the link has changed slightly
- #2326 feat: Ability to include or exclude fields in the response. Closes #2294
- #2327 fix(auth): Fixed returning  expired  Auth token for GKE
- #2329 fix(Dockerfile): Using `--no-install-recommends` (Optimization)
- #2330 fix(ui): Removed tailLines from EventSource
- #2331 feat: Allow for setting default configurations for workflows, Fixes #1923, #2044
- #2332 chore: Tidy after make codegen
- #2335 fix: Add timezone support to startingDeadlineSeconds
- #2336 docs: Update Argo Rollouts description
- #2338 fix(ui): fixed worflow UI refresh. Fixes #argoproj#2337
- #2340 feat: Allow Worfklows to be submitted as files from UI
- #2341 feat: Expose workflow.paramteres with JSON string of all params
- #2342 fix: Always validate templates with different input parameters. Fixes #2313
- #2344 fix: Simplify completion detection logic in DAGs
- #2345 fix(docker): remove NopCloser from the executor. See #2261
- #2346 docs: correct server authentication default
- #2349 feat(ui): Compact graph by using circles rather than panels
- #2350 chore: update getting started guide to use 2.6.0
- #2352 feat: Add `argo stop` command
- #2353 docs(README): Add Prudential to the users list.
- #2357 fix: rerun codegen after merging OSS artifact support
- #2360 fix: Restart server ConfigMap watch when closed
- #2361 chore: Master needs make lint
- #2364 feat: Add support for arm64 platform
- #2365 feat: instanceID support for argo server. Closes #2004
- #2368 fix(docker): fix streaming of combined stdout/stderr
- #2369 chore: Master needs codegen
- #2371 docs: Make Getting Started agnostic to version
- #2373 fix: Say no logs were outputted when pod is done
- #2375 chore: Log version (structured) on component start-up
- #2377 fix(controller): Mount volumes defined in script templates. Closes #1722
- #2379 fix: Update readme for UI
- #2380 fix (docs): change duration to a string
- #2383 fix: add noindex meta tag to solve #2381
- #2385 feat: Retry pending nodes
- #2388 fix(doc strings): Fix bug related documentation/clean up of default configurations #2331
- #2389 docs: Create USERS.md
- #2390 fix: Don't display Retry Nodes in UI if len(children) == 1
- #2394 feat(ui): Use a monospace font family for yaml editors. Closes #2378
- #2400 feat: Allow WF metadata spec on Cron WF
- #2401 chore: Update pull_request_template.md
- #2402 fix: Correctly report version. Fixes #2374
- #2405 chore: Fix typo
- #2407 fix: Check child node status before backoff in retry
- #2409 fix(server): Update manifests to figure "Unable to retry workflow".
- #2410 docs: Update CONTRIBUTING.md with argo auth token command fix. 
- #2411 docs: Example showing how to use default settings for workflow spec. Related to ##2388
- #2414 fix: Allow numbers in steps.args.params.value
- #2416 docs: Added Survey Results
- #2417 fix: Remove lazy workflow template
- #2418 chore: document BASE_HREF
- #2423 fix: Build with the correct version if you check out a specific version
- #2425 docs: update CHANGELOG.md. Closes #2397
- #2433 test: Skip flakey tests in operator_template_scope_test.go. See #2432
- #2434 fix(archive): Fix edge-cast error for archiving. Fixes #2427
- #2441 feat(ui): cache namespace selection. Closes #2439
- #2443 feat(ui): Add the ability to have links to logging facility in UI. Closes #2438
- #2445 fix: Don't error when optional artifacts are not found
- #2447 fix: Deprecate template.{template,templateRef,arguments}
- #2448 chore: Master needs codegen
- #2449 fix: Delete PVCs unless WF Failed/Errored
- #2453 fix(controller): Updates to add condition to workflow status. Fixes #2421
- #2455 fix(example) make dir if needed
- #2456 test: Maybe fix TestPendingRetryWorkflowWithRetryStrategy. Fixes #2446
- #2459 fix: ParallelSteps swagger.json
- #2464 feat(config): Make configuration mangement easier. Closes #2463
- #2465 chore: make codegen + make start
- #2467 fix: Duration must be a string. Make it a string.
- #2468 feat: Add support for IRSA and aws default provider chain.
- #2470 ci: Run lint on CI and fix GolangCI
- #2472 feat(ui): add Env to Node Container Info pane. Closes #2471
- #2473 feat: search archived wf by startat. Closes #2436
- #2476 feat: Logging the Pod Spec in controller log
- #2478 fix: ParallelSteps child type so replacements happen correctly
- #2479 fix: Build image with SHA tag when a git tag is not available
- #2482 chore: Revert "feat: Add support for arm64 platform (#2364)"
- #2483 chore: Fix Swagger for PDB to support Java client
- #2484 feat: Native Google Cloud Storage support for artifact. Closes #1911
- #2485 fix(cli): Rearrange the order of chunk size argument in list command. Closes #2420
- #2487 chore: Move quickstart Prometheus port to 9090
- #2489 feat(ui): Report resources duration in UI. Closes #2460
- #2490 test: Fix test
- #2491 feat: Updated arm64 support patch
- #2498 fix: fix template scope tests
- #2499 docs: add official user
- #2500 feat: Add default field in parameters.valueFrom
- #2501 fix: Allow runtime resolution for workflow parameter names
- #2505 docs: Add separate ConfigMap doc for 2.7+
- #2507  fix: Read ConfigMap before starting servers 
- #2508 feat: Extend workflowDefaults to full Workflow and clean up docs and code
- #2510 fix(controller): Ensure we copy any executor securityContext when creating wait containers; fixes #2512
- #2514 fix: Increase client gRPC max size to match server. Fixes #2513
- #2516 fix: Fix potential panic
- #2517 chore: minor fix and refactory
- #2518 chore(docs): Update docs for useSDKCreds
- #2519 docs: couple of examples for REST API usage of argo-server
- #2523 fix(archive): Fix bug that prevents listing archive workflows. Fixes …
- #2526 chore: Revert "fix: fix template scope tests (#2498)"
- #2531 fix: fix wrong assertions
- #2532 fix: Validate CronWorkflow before creation
- #2533 chore: Remove deprecated example
- #2534 test: fix master
- #2535 fix: Show template on its own field in CLI
- #2539 fix: Omit config key in configure artifact document.
- #2541 feat: Report SpecWarnings in status.conditions
- #2542 docs: Add example of template-level volume declaration.
- #2543 test: Increase timeout for flaky test
- #2553 fix: Fixes --kubeconfig flag. Fixes #2492

#### Contributors

* Aaron Curtis <!-- num=2 -->
* Alex Collins <!-- num=39 -->
* Antoine Dao <!-- num=1 -->
* Antonio Macías Ojeda <!-- num=1 -->
* Daisuke Taniwaki <!-- num=3 -->
* Daniel Moran <!-- num=1 -->
* Derek Wang <!-- num=9 -->
* EDGsheryl <!-- num=1 -->
* Ejiah <!-- num=1 -->
* Huan-Cheng Chang <!-- num=4 -->
* Michael Crenshaw <!-- num=7 -->
* Mingjie Tang <!-- num=1 -->
* Mukulikak <!-- num=1 -->
* Niklas Hansson <!-- num=5 -->
* Pascal VanDerSwalmen <!-- num=1 -->
* Pratik Raj <!-- num=1 -->
* Rafael Rodrigues <!-- num=1 -->
* Roman Galeev <!-- num=1 -->
* Saradhi Sreegiriraju <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=4 -->
* Simon Behar <!-- num=34 -->
* StoneHuang <!-- num=1 -->
* Theodore Messinezis <!-- num=1 -->
* Tristan Colgate-McFarlane <!-- num=1 -->
* Xin Wang <!-- num=2 -->
* Zach Aller <!-- num=2 -->
* fsiegmund <!-- num=1 -->
* mark9white <!-- num=3 -->
* maryoush <!-- num=1 -->
* tkilpela <!-- num=1 -->
* vatine <!-- num=1 -->
* モハメド <!-- num=1 -->

v2.7.0-rc4: tag_name: v2.7.0-rc4
body: # Quick Start

## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.0-rc4/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.0-rc4/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.7.0-rc4/manifests/install.yaml
```

# Changes
#### Enhancements

* #1893 More control over resuming suspended nodes

#### Pull Requests

- #1904 feat: More control over resuming suspended nodes Fixes #1893
- #2498 fix: fix template scope tests
- #2517 chore: minor fix and refactory
- #2518 chore(docs): Update docs for useSDKCreds
- #2519 docs: couple of examples for REST API usage of argo-server
- #2523 fix(archive): Fix bug that prevents listing archive workflows. Fixes …
- #2526 chore: Revert "fix: fix template scope tests (#2498)"
- #2531 fix: fix wrong assertions
- #2532 fix: Validate CronWorkflow before creation
- #2533 chore: Remove deprecated example
- #2534 test: fix master
- #2535 fix: Show template on its own field in CLI
- #2539 fix: Omit config key in configure artifact document.
- #2541 feat: Report SpecWarnings in status.conditions
- #2542 docs: Add example of template-level volume declaration.
- #2543 test: Increase timeout for flaky test

#### Contributors

* Alex Collins <!-- num=7 -->
* Daisuke Taniwaki <!-- num=2 -->
* Daniel Moran <!-- num=1 -->
* Derek Wang <!-- num=1 -->
* Ejiah <!-- num=1 -->
* Simon Behar <!-- num=5 -->
* Zach Aller <!-- num=1 -->
* mark9white <!-- num=1 -->
* maryoush <!-- num=1 -->
v2.7.0-rc3: tag_name: v2.7.0-rc3
body: # Quick Start

## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.0-rc3/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.0-rc3/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.7.0-rc3/manifests/install.yaml
```

# Changes

#### Enhancements

* #1911 Support GCS natively
* #2460 Expose resource duration in the UI
* #2463 Update config map to support strategic-merge-patch

#### Bug Fixes

- #1907 GetTaskAncestry loop through steps that are already visited and cause performance issue
- #2512 SecurityContext settings for executor container not fully honored

#### Pull Requests

- #1908 fix(controller): Updates GetTaskAncestry to skip visited nod. Fixes #1907
- #2464 feat(config): Make configuration management easier. Closes #2463
- #2484 feat: Native Google Cloud Storage support for artifact. Closes #1911
- #2489 feat(ui): Report resources duration in UI. Closes #2460
- #2491 feat: Updated arm64 support patch
- #2499 docs: add official user
- #2500 feat: Add default field in parameters.valueFrom
- #2501 fix: Allow runtime resolution for workflow parameter names
- #2505 docs: Add separate ConfigMap doc for 2.7+
- #2507  fix: Read ConfigMap before starting servers 
- #2508 feat: Extend workflowDefaults to full Workflow and clean up docs and code
- #2510 fix(controller): Ensure we copy any executor securityContext when creating wait containers; fixes #2512
- #2514 fix: Increase client gRPC max size to match server. Fixes #2513
- #2516 fix: Fix potential panic

#### Contributors

* Alex Collins <!-- num=4 -->
* Derek Wang <!-- num=1 -->
* Rafael Rodrigues <!-- num=1 -->
* Simon Behar <!-- num=6 -->
* StoneHuang <!-- num=1 -->
* Xin Wang <!-- num=1 -->
* mark9white <!-- num=1 -->
* vatine <!-- num=1 -->

v2.7.0-rc2: tag_name: v2.7.0-rc2
body: # Quick Start

## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.0-rc2/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.0-rc2/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.7.0-rc2/manifests/install.yaml
```

# Changes
#### Enhancements

* #1066 Feature Request:   Calculate workflow resource usage
* #2436 Search archive by started at between two dates and times

#### Bug Fixes

- #2420 v2.6.1: argo list --chunk-size truncation should apply after other filters

#### Other

- #5 Add workflow executor unit tests

#### Pull Requests

- #2219 feat(usage): Report resource duration. Closes #1066
- #2468 feat: Add support for IRSA and aws default provider chain.
- #2470 ci: Run lint on CI and fix GolangCI
- #2473 feat: search archived wf by startat. Closes #2436
- #2476 feat: Logging the Pod Spec in controller log
- #2478 fix: ParallelSteps child type so replacements happen correctly
- #2479 fix: Build image with SHA tag when a git tag is not available
- #2483 chore: Fix Swagger for PDB to support Java client
- #2485 fix(cli): Rearrange the order of chunk size argument in list command. Closes #2420
- #2487 chore: Move quickstart Prometheus port to 9090
- #2490 test: Fix test

#### Contributors

* Alex Collins <!-- num=6 -->
* Derek Wang <!-- num=2 -->
* Huan-Cheng Chang <!-- num=1 -->
* Michael Crenshaw <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=2 -->
* Xin Wang <!-- num=1 -->
* Zach Aller <!-- num=1 -->

v2.7.0-rc1: tag_name: v2.7.0-rc1
body: # Quick Start

## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.0-rc1/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.7.0-rc1/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.7.0-rc1/manifests/install.yaml
```

# Changes

Since [v2.6.3](https://github.com/argoproj/argo/releases/tag/v2.6.3).

#### Enhancements

* #1728 Adding Pod Disruption budget for each workflow run by argo controller so that Pod/Step does not gets deleted during autoscaling event
* #1891 Enable retryStrategy to be specified for non-leaf nodes
* #1923 Provide a way to set default Workflow options that will apply to all workflows
* #2004 Argo server should support controller instance ids
* #2007 Workflow templates should be submittable
* #2116 Migrate CLI workflow commands to use `apiclient.Client`
* #2117 Clean-up any deprecated code not needed after migration to use `apiclient.Client`
* #2421 Add `Conditions` to workflow status
* #2438 Deep link into Splunk (or other logging facility) from UI
* #2439 Remember namespace across UI pages
* #2471 Show environment variables in Argo UI

#### Bug Fixes

- #1722 When using script template input artifact is not able to save in volume mount
- #1866 Argo Database Persistence SSL does not work
- #2337 Argo Workflow UI stops refreshing
- #2374 Log version on start-up
- #2381 Make Argo UI not indexed
- #2427 Updating the workflow archive entry for a retried workflow fails with "current transaction is aborted"
- #2432 Fix flakey tests in operator_template_scope_test.go
- #2446 Fix flakey test: `TestPendingRetryWorkflowWithRetryStrategy` 

#### Other

- #2300 Logs does not automatically fail over to artifact in v2.5.1
- Update manifests to v2.7.0-rc1

#### Pull Requests

- #1867 fix(persistence): set postgres ssl config to string Fixes #1866
- #1892 feat: Allow retry strategy on non-leaf nodes, eg for step groups. Fixes #1891
- #1919 feat: Add support for Alibaba Cloud OSS artifact
- #2044 fix: Updated the TTLcontroller to fix issue related to TTL default settings. Fixes #1923
- #2177 chore(cli): Migrate `argo logs` to use API client. See #2116
- #2222 feat: Support workflow templates submission. Closes #2007
- #2254 feat: Custom, step-level, and usage metrics
- #2282 chore(cli): Migrate `argo wait` to use API client. See #2116
- #2286 feat: Support workflow level poddisruptionbudge for workflow pods #1728
- #2301 fix(ui): Provide a link to archived logs. Fixes #2300
- #2303 chore(cli): Clean-up code. Closes #2117
- #2309 build: Improve reliability of release.
- #2311 chore: update getting-started guide for 2.5.2 and apply other tweaks
- #2317 fix(swagger): Fix the broken swagger.
- #2319 feat(ui): Adds ability zoom and hide successful steps. POC
- #2323 docs: the link has changed slightly
- #2326 feat: Ability to include or exclude fields in the response. Closes #2294
- #2327 fix(auth): Fixed returning  expired  Auth token for GKE
- #2329 fix(Dockerfile): Using `--no-install-recommends` (Optimization)
- #2330 fix(ui): Removed tailLines from EventSource
- #2331 feat: Allow for setting default configurations for workflows, Fixes #1923, #2044
- #2332 chore: Tidy after make codegen
- #2335 fix: Add timezone support to startingDeadlineSeconds
- #2336 docs: Update Argo Rollouts description
- #2338 fix(ui): fixed worflow UI refresh. Fixes #argoproj#2337
- #2340 feat: Allow Worfklows to be submitted as files from UI
- #2341 feat: Expose workflow.paramteres with JSON string of all params
- #2342 fix: Always validate templates with different input parameters. Fixes #2313
- #2344 fix: Simplify completion detection logic in DAGs
- #2345 fix(docker): remove NopCloser from the executor. See #2261
- #2346 docs: correct server authentication default
- #2349 feat(ui): Compact graph by using circles rather than panels
- #2350 chore: update getting started guide to use 2.6.0
- #2352 feat: Add `argo stop` command
- #2353 docs(README): Add Prudential to the users list.
- #2357 fix: rerun codegen after merging OSS artifact support
- #2360 fix: Restart server ConfigMap watch when closed
- #2361 chore: Master needs make lint
- #2365 feat: instanceID support for argo server. Closes #2004
- #2368 fix(docker): fix streaming of combined stdout/stderr
- #2369 chore: Master needs codegen
- #2371 docs: Make Getting Started agnostic to version
- #2373 fix: Say no logs were outputted when pod is done
- #2375 chore: Log version (structured) on component start-up
- #2377 fix(controller): Mount volumes defined in script templates. Closes #1722
- #2379 fix: Update readme for UI
- #2380 fix (docs): change duration to a string
- #2383 fix: add noindex meta tag to solve #2381
- #2385 feat: Retry pending nodes
- #2388 fix(doc strings): Fix bug related documentation/clean up of default configurations #2331
- #2389 docs: Create USERS.md
- #2390 fix: Don't display Retry Nodes in UI if len(children) == 1
- #2394 feat(ui): Use a monospace font family for yaml editors. Closes #2378
- #2400 feat: Allow WF metadata spec on Cron WF
- #2401 chore: Update pull_request_template.md
- #2402 fix: Correctly report version. Fixes #2374
- #2405 chore: Fix typo
- #2407 fix: Check child node status before backoff in retry
- #2409 fix(server): Update manifests to figure "Unable to retry workflow".
- #2410 docs: Update CONTRIBUTING.md with argo auth token command fix. 
- #2411 docs: Example showing how to use default settings for workflow spec. Related to ##2388
- #2414 fix: Allow numbers in steps.args.params.value
- #2416 docs: Added Survey Results
- #2417 fix: Remove lazy workflow template
- #2418 chore: document BASE_HREF
- #2423 fix: Build with the correct version if you check out a specific version
- #2425 docs: update CHANGELOG.md. Closes #2397
- #2433 test: Skip flakey tests in operator_template_scope_test.go. See #2432
- #2434 fix(archive): Fix edge-cast error for archiving. Fixes #2427
- #2441 feat(ui): cache namespace selection. Closes #2439
- #2443 feat(ui): Add the ability to have links to logging facility in UI. Closes #2438
- #2445 fix: Don't error when optional artifacts are not found
- #2447 fix: Deprecate template.{template,templateRef,arguments}
- #2448 chore: Master needs codegen
- #2449 fix: Delete PVCs unless WF Failed/Errored
- #2453 fix(controller): Updates to add condition to workflow status. Fixes #2421
- #2455 fix(example) make dir if needed
- #2456 test: Maybe fix TestPendingRetryWorkflowWithRetryStrategy. Fixes #2446
- #2459 fix: ParallelSteps swagger.json
- #2465 chore: make codegen + make start
- #2467 fix: Duration must be a string. Make it a string.
- #2472 feat(ui): add Env to Node Container Info pane. Closes #2471

#### Contributors

* Aaron Curtis <!-- num=2 -->
* Alex Collins <!-- num=19 -->
* Antoine Dao <!-- num=1 -->
* Antonio Macías Ojeda <!-- num=1 -->
* Daisuke Taniwaki <!-- num=1 -->
* Derek Wang <!-- num=5 -->
* EDGsheryl <!-- num=1 -->
* Huan-Cheng Chang <!-- num=3 -->
* Michael Crenshaw <!-- num=6 -->
* Mingjie Tang <!-- num=1 -->
* Mukulikak <!-- num=1 -->
* Niklas Hansson <!-- num=5 -->
* Pascal VanDerSwalmen <!-- num=1 -->
* Pratik Raj <!-- num=1 -->
* Roman Galeev <!-- num=1 -->
* Saradhi Sreegiriraju <!-- num=3 -->
* Saravanan Balasubramanian <!-- num=3 -->
* Simon Behar <!-- num=21 -->
* Theodore Messinezis <!-- num=1 -->
* Tristan Colgate-McFarlane <!-- num=1 -->
* fsiegmund <!-- num=1 -->
* mark9white <!-- num=1 -->
* tkilpela <!-- num=1 -->
* モハメド <!-- num=1 -->
v2.6.3: tag_name: v2.6.3
body: # Quick Start

## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.6.3/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.6.3/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.6.3/manifests/install.yaml
```

# Changes

Since [v2.6.2](https://github.com/argoproj/argo/releases/tag/v2.6.2).

#### Pull Requests

- #2330 fix(ui): Removed tailLines from EventSource
- #2373 fix: Say no logs were outputted when pod is done
- #2407 fix: Check child node status before backoff in retry
- #2409 fix(server): Update manifests to figure "Unable to retry workflow".
- #2414 fix: Allow numbers in steps.args.params.value
- #2423 fix: Build with the correct version if you check out a specific version
- #2445 fix: Don't error when optional artifacts are not found
- #2449 fix: Delete PVCs unless WF Failed/Errored

#### Contributors

* Alex Collins <!-- num=2 -->
* EDGsheryl <!-- num=1 -->
* Simon Behar <!-- num=5 -->
* tkilpela <!-- num=1 -->

v2.6.2: tag_name: v2.6.2
body: # Quick Start

## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.6.2/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.6.2/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.6.2/manifests/install.yaml
```

# Changes

Since [v2.6.1](https://github.com/argoproj/argo/releases/tag/v2.6.1).

#### Bug Fixes

- #2374 Log version on start-up

#### Pull Requests

- #2368 fix(docker): fix streaming of combined stdout/stderr
- #2402 fix: Correctly report version. Fixes #2374

#### Contributors

* Alex Collins <!-- num=3 -->
v2.6.1: tag_name: v2.6.1
body: # Quick Start

## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.6.1/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.6.1/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.6.1/manifests/install.yaml
```

# Changes

Since [v2.6.0](https://github.com/argoproj/argo/releases/tag/v2.6.0).

#### Bug Fixes

- #2337 Argo Workflow UI stops refreshing

#### Pull Requests

- #2327 fix(auth): Fixed returning  expired  Auth token for GKE
- #2335 fix: Add timezone support to startingDeadlineSeconds
- #2338 fix(ui): fixed worflow UI refresh. Fixes #argoproj#2337
- #2342 fix: Always validate templates with different input parameters. Fixes #2313
- #2344 fix: Simplify completion detection logic in DAGs
- #2345 fix(docker): remove NopCloser from the executor. See #2261
- #2360 fix: Restart server ConfigMap watch when closed

#### Contributors

* Alex Collins <!-- num=1 -->
* Derek Wang <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=3 -->
* Tristan Colgate-McFarlane <!-- num=1 -->
* fsiegmund <!-- num=1 -->

v2.6.0: tag_name: v2.6.0
body: # Quick Start

## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.6.0/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.6.0/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.6.0/manifests/install.yaml
```
# Changes

Since [v2.5.2](https://github.com/argoproj/argo/releases/tag/v2.5.2).

#### Enhancements

* #1375 Add support for Go modules, upgrade to Go 1.13
* #1896 Mark suspended nodes as suspended with a unique symbol in the CLI
* #2114 Migrate CLI cron commands to use `apiclient.Client`
* #2115 Migrate CLI workflow template commands to use `apiclient.Client`
* #2116 Migrate CLI workflow commands to use `apiclient.Client`
* #2171 Listing archived workflows ignores label selector
* #2231 Reduce API calls when changing filters on wf list page
* #802 [UI] Feature Request: Show and filter by labels in the UI

#### Bug Fixes

- #1884 Unhandled race condition in DockerExecutor.Kill 
- #2046 Template within Workflow can not directly call a WorkflowTemplate with arguments
- #2206 Offload GC is not deleted old data
- #2233 Offload GC deleting completed wf data
- #2244 parameter-aggregation.yaml in examples failing without errors
- #2246 Offloaded nodes does not fit into MySQL TEXT field
- #2248 Sequence broken in 2.5-rc10
- #2249 Pod argo-server keeps restarting on GCP
- #2255 Archived WF pagination issue 
- #2264 Incorrect version info in release v2.5.0
- #2270 Double logging in UI
- #2272 2.5.0 Argo UI Workflow View Blank while workflow is running
- #2281 `argo wait` removed from v2.5.0
- #2285 Argo server should start without configmap

#### Pull Requests

- #1821 feat: ArtifactRepositoryRef ConfigMap is now taken from the workflow namespace
- #1890 feat: Label workflow-created pvc with workflow name
- #2097 feat: upgrade to Go 1.13. Closes #1375
- #2166 feat: Add failed node info to exit handler
- #2196 feat(ui): Add label filter to workflow list page. Fixes #802
- #2205 feat(archive): Add support to filter list by labels. Closes #2171
- #2207 fix(offloading): Correctly deleted offloaded data. Fixes #2206
- #2208 fix: Fixed race condition in kill container method. Fixes #1884
- #2210 fix: Enforce UnknownField requirement in WorkflowStep
- #2212 feat: This add support to enable debug logging for all CLI commands
- #2213 fix: Remove quotes from UI
- #2214 test: Correctly report e2e test diagnostics
- #2215 build: Fix ARGO_TOKEN
- #2216 feat(swagger): Adds a make api/argo-server/swagger.json
- #2218 feat: Create API clients
- #2221 fix: UI Responsive design on filter box
- #2225 chore: Run `go mod tidy`
- #2226 docs: added Ramboll Shair to the official users
- #2227 feat: Add Pod Name to UI
- #2232 feat: Reduce API calls when changing filters. Closes #2231
- #2234 fix(offload): Fix bug which deleted completed workflows. Fixes #2233
- #2235 fix: display error message when deleting archived workflow fails. Fix #2145
- #2240 feat: Add a new symbol for suspended nodes. Closes #1896
- #2241 docs: Add BasisAI to the company list
- #2243 fix(docs): Corrects presumed typo, checks --> chunks
- #2250 fix(offloading): Change offloaded nodes datatype to JSON to support 1GB. Fixes #2246
- #2251 docs: Add Cartrack into officially using Argo
- #2253 fix: Ignore bookmark events for restart. Fixes #2249
- #2256 fix(archive): Return correct next page info. Fixes #2255
- #2257 feat(ui): Add filters for archived workflows. Closes #2259
- #2262 fix: Removed duplicate Watch Command
- #2263 fix(sequence): broken in 2.5. Fixes #2248
- #2267 fix: Removes Template.Arguments as this is never used. Fixes #2046
- #2268 fix: Correctly report version. Fixes #2264
- #2271 fix: Fixes double logging in UI. Fixes #2270
- #2275 chore(cli): Migrate `argo suspend` and `argo resume` to use API client. See #2116
- #2276 chore(cli): Migrate `argo resubmit` to use client API. See #2116
- #2277 chore(cli): Migrate `argo retry` to use API client. See #2116
- #2279 fix(persistence): Fix bug in migrating cluster name. Fixes #2278
- #2280 chore(cli): Migrate `argo terminate` to use API client. See #2116
- #2283 fix(cli): Reinstate `argo wait`. Fixes #2281
- #2284 fix: Skip empty withParam steps. Fixes #1864
- #2290 refactor(cli): 2x simplify migration to API client. See #2116
- #2291 build(swagger): Fix argo-server swagger so version does not change.
- #2292 docs: More detail for namespaced installation
- #2293 fix: Start Argo server with out Configmap #2285
- #2295 chore(cli): Migrate `argo cron` to use API client. Closes #2114
- #2296 chore(cli): Migrate `argo template` to use API client. Closes #2115
- #2299 fix: Remove active wf from Cron when deleted
- #2304 fix(controller): Get correct Step or DAG name. Fixes #2244

#### Contributors

* Aaron Curtis <!-- num=1 -->
* Alex Collins <!-- num=34 -->
* Alexey Volkov <!-- num=1 -->
* Derek Wang <!-- num=8 -->
* Huan-Cheng Chang <!-- num=2 -->
* Nasrudin Bin Salim <!-- num=1 -->
* Roman Galeev <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=6 -->
* fsiegmund <!-- num=1 -->
* mark9white <!-- num=1 -->
* mdvorakramboll <!-- num=1 -->
* tkilpela <!-- num=1 -->
v2.6.0-rc3: tag_name: v2.6.0-rc3
body: ## Quick Start

https://github.com/argoproj/argo/tree/v2.6.0-rc2/manifests

# Changes

Since [v2.6.0-rc2](https://github.com/argoproj/argo/releases/tag/v2.6.0-rc2).

#### Enhancements

* #2114 Migrate CLI cron commands to use `apiclient.Client`
* #2115 Migrate CLI workflow template commands to use `apiclient.Client`
* #2116 Migrate CLI workflow commands to use `apiclient.Client`

#### Bug Fixes

- #2244 parameter-aggregation.yaml in examples failing without errors

#### Pull Requests

- #2218 feat: Create API clients
- #2277 chore(cli): Migrate `argo retry` to use API client. See #2116
- #2280 chore(cli): Migrate `argo terminate` to use API client. See #2116
- #2284 fix: Skip empty withParam steps. Fixes #1864
- #2295 chore(cli): Migrate `argo cron` to use API client. Closes #2114
- #2296 chore(cli): Migrate `argo template` to use API client. Closes #2115
- #2299 fix: Remove active wf from Cron when deleted
- #2304 fix(controller): Get correct Step or DAG name. Fixes #2244

#### Contributors

* Alex Collins <!-- num=10 -->
* Derek Wang <!-- num=2 -->
* Simon Behar <!-- num=1 -->
v2.5.2: tag_name: v2.5.2
body: # Quick Start

## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.5.2/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.5.2/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.5.2/manifests/install.yaml
```

# Changes

Since [v2.5.1](https://github.com/argoproj/argo/releases/tag/v2.5.1)

#### Bug Fixes

- #2272 2.5.0 Argo UI Workflow View Blank while workflow is running

#### Pull Requests

- #2279 fix(persistence): Fix bug in migrating cluster name. Fixes #2278

#### Contributors

* Alex Collins <!-- num=2 -->
v2.6.0-rc2: tag_name: v2.6.0-rc2
body: ## Quick Start

https://github.com/argoproj/argo/tree/v2.6.0-rc2/manifests

# Changes

Since [v2.6.0-rc1](https://github.com/argoproj/argo/releases/tag/v2.6.0-rc1).

#### Enhancements

* #2116 Migrate CLI workflow commands to use `apiclient.Client`

#### Bug Fixes

- #2046 Template within Workflow can not directly call a WorkflowTemplate with arguments
- #2248 Sequence broken in 2.5-rc10
- #2264 Incorrect version info in release v2.5.0
- #2270 Double logging in UI
- #2272 2.5.0 Argo UI Workflow View Blank while workflow is running
- #2281 `argo wait` removed from v2.5.0
- #2285 Argo server should start without configmap

#### Other

- Merge branch 'master' into release-2.6
- Update manifests to v2.6.0-rc2

#### Pull Requests

- #2263 fix(sequence): broken in 2.5. Fixes #2248
- #2267 fix: Removes Template.Arguments as this is never used. Fixes #2046
- #2268 fix: Correctly report version. Fixes #2264
- #2271 fix: Fixes double logging in UI. Fixes #2270
- #2275 chore(cli): Migrate `argo suspend` and `argo resume` to use API client. See #2116
- #2276 chore(cli): Migrate `argo resubmit` to use client API. See #2116
- #2279 fix(persistence): Fix bug in migrating cluster name. Fixes #2278
- #2283 fix(cli): Reinstate `argo wait`. Fixes #2281
- #2290 refactor(cli): 2x simplify migration to API client. See #2116
- #2291 build(swagger): Fix argo-server swagger so version does not change.
- #2292 docs: More detail for namespaced installation
- #2293 fix: Start Argo server with out Configmap #2285

#### Contributors

* Alex Collins <!-- num=11 -->
* Derek Wang <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* mark9white <!-- num=1 -->
v2.5.1: tag_name: v2.5.1
body: # Quick Start

## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.5.1/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.5.1/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.5.1/manifests/install.yaml
```

# Changes

Since [v2.5.0](https://github.com/argoproj/argo/releases/tag/v2.5.0)

#### Enhancements
#### Bug Fixes

- #2264 Incorrect version info in release v2.5.0
- #2270 Double logging in UI

#### Pull Requests

- #2262 fix: Removed duplicate Watch Command
- #2268 fix: Correctly report version. Fixes #2264
- #2271 fix: Fixes double logging in UI. Fixes #2270

#### Contributors

* Alex Collins <!-- num=3 -->
* tkilpela <!-- num=1 -->
v2.6.0-rc1: tag_name: v2.6.0-rc1
body: ## Quick Start

https://github.com/argoproj/argo/tree/v2.6.0-rc1/manifests

# Changes

#### Enhancements

* #1375 Add support for Go modules, upgrade to Go 1.13
* #1896 Mark suspended nodes as suspended with a unique symbol in the CLI
* #2171 Listing archived workflows ignores label selector
* #2231 Reduce API calls when changing filters on wf list page
* #802 [UI] Feature Request: Show and filter by labels in the UI

#### Bug Fixes

- #1884 Unhandled race condition in DockerExecutor.Kill 
- #2206 Offload GC is not deleted old data
- #2233 Offload GC deleting completed wf data
- #2246 Offloaded nodes does not fit into MySQL TEXT field
- #2249 Pod argo-server keeps restarting on GCP
- #2255 Archived WF pagination issue 

#### Pull Requests

- #1821 feat: ArtifactRepositoryRef ConfigMap is now taken from the workflow namespace
- #1890 feat: Label workflow-created pvc with workflow name
- #2097 feat: upgrade to Go 1.13. Closes #1375
- #2166 feat: Add failed node info to exit handler
- #2196 feat(ui): Add label filter to workflow list page. Fixes #802
- #2205 feat(archive): Add support to filter list by labels. Closes #2171
- #2207 fix(offloading): Correctly deleted offloaded data. Fixes #2206
- #2208 fix: Fixed race condition in kill container method. Fixes #1884
- #2210 fix: Enforce UnknownField requirement in WorkflowStep
- #2212 feat: This add support to enable debug logging for all CLI commands
- #2213 fix: Remove quotes from UI
- #2214 test: Correctly report e2e test diagnostics
- #2215 build: Fix ARGO_TOKEN
- #2216 feat(swagger): Adds a make api/argo-server/swagger.json
- #2221 fix: UI Responsive design on filter box
- #2225 chore: Run `go mod tidy`
- #2226 docs: added Ramboll Shair to the official users
- #2227 feat: Add Pod Name to UI
- #2232 feat: Reduce API calls when changing filters. Closes #2231
- #2234 fix(offload): Fix bug which deleted completed workflows. Fixes #2233
- #2235 fix: display error message when deleting archived workflow fails. Fix #2145
- #2240 feat: Add a new symbol for suspended nodes. Closes #1896
- #2241 docs: Add BasisAI to the company list
- #2243 fix(docs): Corrects presumed typo, checks --> chunks
- #2250 fix(offloading): Change offloaded nodes datatype to JSON to support 1GB. Fixes #2246
- #2251 docs: Add Cartrack into officially using Argo
- #2253 fix: Ignore bookmark events for restart. Fixes #2249
- #2256 fix(archive): Return correct next page info. Fixes #2255
- #2257 feat(ui): Add filters for archived workflows. Closes #2259
- #2262 fix: Removed duplicate Watch Command

#### Contributors

* Aaron Curtis <!-- num=1 -->
* Alex Collins <!-- num=12 -->
* Alexey Volkov <!-- num=1 -->
* Derek Wang <!-- num=5 -->
* Huan-Cheng Chang <!-- num=2 -->
* Nasrudin Bin Salim <!-- num=1 -->
* Roman Galeev <!-- num=1 -->
* Simon Behar <!-- num=5 -->
* fsiegmund <!-- num=1 -->
* mdvorakramboll <!-- num=1 -->
* tkilpela <!-- num=1 -->
v2.5.0: tag_name: v2.5.0
body: # Quick Start

## Argo CLI

### Mac

Available via `brew`
```sh
brew install argoproj/tap/argo
```
And via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.5.0/argo-darwin-amd64

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version
```

### Linux

Available via `curl`
```sh
# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.5.0/argo-linux-amd64

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version
```

## Argo Controller

```sh
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.5.0/manifests/install.yaml
```

# Community Meeting Demo

https://www.youtube.com/watch?v=cqqAajxFaiI

# Changes
#### Enhancements

* #1331 Argo API Server
* #1712 SSL enabled database connection for workflow repository
* #1769 Add audit logging for Workflow resources
* #1905 Provide values of withItems maps as JSON in {{item}}
* #1931 Add timezone support to CronWorkflows
* #1944 Offload node status should use resourceVersion/generation
* #1945 MySQL support for offload node status
* #1946 Set MAX_WORKFLOW_SIZE for e2e tests 
* #1949 TODO - we should not put the token in the URL - OSWAP obvs
* #1952 ARGO_NAMESPACE appears to be unused
* #1959 Replace FORCE_NAMESPACE with NAMESPACED/WATCHED_NAMESPACE
* #1966 `argo server`
* #1971 Lint test files
* #1990 Put quick start manifests into Git
* #2027 Support --token option for Argo API Server
* #2069 invalid config can allow updateConfig to put controller in invalid state
* #2090 Restart Argo Server when config map changes
* #2116 Migrate CLI workflow commands to use `apiclient.Client`
* #2133 Archived workflow `workflow` column should be json
* #2149 Change `argo token` to `argo auth token` 
* #678 Utilize k3s for e2e testing

#### Bug Fixes

- #1817 continue on failed doesn't work with nested dag and retries
- #1868 WorkflowTemplate withParam causes "template not found" 
- #1982 All proto requests should use name and not resourceNameName
- #1984 Unable to submit workflow due to validation done on variables taken from inputs
- #2010 Make is broken
- #2015 UI gives 403 Forbidden rather than correctly using managed namespace
- #2095 Issues with the PNS executor and CRI-O
- #2100 Support for base URL in new argo UI server
- #2107 Error while using rc6
- #2125 "TestCLIWithServerSuite/TestArchive" is flakey
- #2129 downloading artifact from s3 in ui, timed out waiting for condition
- #2156 unclear documentation comments for persistence in workflow-controller-configmap.yaml
- #2170 Offload GC deletes offloaded data it should not
- #2179 Argo UI shows exception error in workflow list on connection loss
- #2201 UI regressions in workflow list
- #2206 Offload GC is not deleted old data
- #2233 Offload GC deleting completed wf data
- #2246 Offloaded nodes does not fit into MySQL TEXT field
- #2249 Pod argo-server keeps restarting on GCP

#### Other

- #1634 inconsistent label cardinality when trying to report metrics
- #1790 [Feature Request] Globally-defined logging to artifact repository

#### Pull Requests

- #1369 fix: Fix workflow level timeouts
- #1482 Code duplication
- #1601 Added  Protobuf extension 
- #1622 pin colinmarc/hdfs to the next commit, which no longer has vendored deps
- #1639 Fixed the Parallelism makes workflow failure
- #1640 Fixed the Global param Lint issue on DAG
- #1641 Fix global lint issue
- #1643 Fixed the example wrong comment
- #1645 Delay killing sidecars until artifacts are saved
- #1647 Removed unneeded  code from previous PR
- #1648 Fix DAG output aggregation
- #1649 Fix DAG output aggregation correctly
- #1650 Print multiple workflows in one command
- #1651 Use stored templates to aggregate step outputs
- #1653 Stop failing if artifact file exists, but empty
- #1654 Fix child node template handling
- #1655 Resolve WorkflowTemplate lazily
- #1656 Bug fixes in getting started
- #1657 Fix e2e function testcase name.
- #1660 Don't provision VM for empty artifacts
- #1661 [User] Update Argo users list
- #1669 Handle retried node properly
- #1670 Store locally referenced templates properly
- #1673 Add new community blog post to README
- #1675 Handle sidecar killing properly
- #1679 Fix typo
- #1681 Added status of previous steps as variables
- #1687 PodSpecPatch functionality 
- #1690 Fix issue that workflow.priority substitution didn't pass validation
- #1694 Fix retry node processing
- #1695 Fixed broken metrics endpoint per issue #1634
- #1696 Add ability to retry nodes after errors
- #1699 Fixed incorrect `pod.name` in retry pods
- #1700 Fixes bugs in demo
- #1702 `restartPolicy` -> `retryStrategy` in examples
- #1704 Fail suspended steps after deadline
- #1710 Fix invitation link.
- #1715 Added ability to auto-resume from suspended state
- #1716 feat: Added onExit handlers to arbitrary templates
- #1721 Filter workflows in list  based on name prefix
- #1724 template for pod spec from output of previous step
- #1726 Add gonum.org/v1/gonum/graph to Gopkg.toml
- #1732 Fix retry node name issue on error
- #1733 unquote strings from parameter-file
- #1739 Fixed lint issues
- #1741 Removed debug `Println`
- #1744 Update Template Resolution Logic
- #1745 Fix typo
- #1748 binary up version
- #1752 Minor rework of suspened node
- #1753 fix blank lines
- #1754 typo fix.
- #1756 SSL enabled database connection for workflow repository (#1712)
- #1758 feat: Support for scheduled Workflows with CronWorkflow CRD
- #1760 Support no-headers flag
- #1762 Handle operation level errors
- #1766 Make kubectl print status and start/finished time
- #1768 Update README.md
- #1776 Wait container error on pod watch failure and exponential backoff
- #1777 Add `go fmt` to linter
- #1778 Add documentation for executors
- #1782 Add exponential back-off to retryStrategy
- #1787 Do not resolve remote templates in lint
- #1800 Fix withParam node naming issue
- #1804 Fix some issues in examples
- #1808 Minor doc fix
- #1810 Added hint when using certain tokens in when expressions
- #1811 Fix code-gen docs
- #1818 fix: Revert node creation logic
- #1820 Adding Fairwinds to the list of companies that use Argo
- #1825 Add HOVER to the list of who uses Argo
- #1828 Added Red Hat to the list of Argo users
- #1829 fix: Ensure timer channel is empty after stop
- #1830 docs: biobox analytics
- #1835 InsideBoard uses Argo
- #1836 fix: Fix template scope
- #1843 docs: Update doc based on helm 3.x changes
- #1844 fix: Use dynamically generated placeholders
- #1845 docs: Add CCRi to list of users in README
- #1847 fix: Fix a couple of nil derefs
- #1848 docs: Updates issue and PR templates.
- #1850 docs: Add Sidecar Technologies to list of who uses Argo
- #1851 fix: Panic if DB context has issue
- #1852 docs: Adding Wavefront to the users list
- #1854 test: Adds core e2e test infra. Fixes #678
- #1855 fix: Fix support for continueOn failed for DAG. Fixes #1817
- #1856 docs: Refactored and cleaned up docs
- #1858 fix: Move ISSUE_TEMPLATE/ under .github/
- #1859 refactor: Move Workflows UI from argo-ui repo
- #1860 feat!(logging): Always archive logs if in config. Closes #1790
- #1865 fix: quick fail after pod termination
- #1869 test: Adds 'test' and 'ui' jobs to CI
- #1870 fix(docs): Update instructions for linux users
- #1872 fix(persistence): Update comment in sqldb.go to match function name
- #1873 docs: Fix e2e testing link
- #1878 refactor: Format Argo UI using prettier
- #1882 feat(server): Argo Server. Closes #1331
- #1883  feat: Enhanced Different TTLSecondsAfterFinished depending on if job is in Succeeded, Failed or Error, Fixes
- #1898 fix: Update Gopkg.lock with dep ensure -update
- #1899 feat(artifacts): Add support for IAM roles for service accounts in artifact storage. Fixes #1774
- #1906 feat: Provide values of withItems maps as JSON in {{item}}. Fixes #1905
- #1909 chore: Decrease docker build time by ignoring node_modules
- #1910 docs: Add question option to issue templates
- #1916 docs: Updated Readme.md for companies using Argo:
- #1920 fix(controller): Fix template resolution for step groups. Fixes #1868 
- #1922 docs: Minor formatting fix
- #1925 feat: Add suspend and resume to CronWorkflows CLI
- #1926 docs: Add CyberAgent to the list of Argo users
- #1929 docs: Update PR template to demand tests.
- #1930 feat(controller): Add audit logs to workflows. Fixes #1769
- #1934 fix: Added decompress in retry, resubmit and resume.
- #1937 fix(argoexec): updated jq version to 1.6. Fixes #1936
- #1939 feat: Enhancement for namespace installation mode configuration
- #1965 feat: Renders namespace in UI. Fixes #1952 and #1959
- #1972 feat: Adds `argo server` command. Fixes #1966
- #1974 feat: Add version to offload nodes. Fixes #1944 and #1946
- #1986 feat(cron): Added timezone support to cron workflows. Closes #1931
- #1987 chore: Fix UI TODOs
- #1989 chore: Added WorkflowTemplate test
- #1991 fix: v2 token bug
- #1992 fix: WorkflowTempalteTest fix
- #1993 feat: Add quick start manifests to Git. Change auth-mode to default to server. Fixes #1990
- #1995 fix: No longer delete the argo ns as this is dangerous
- #1996 docs: Encourage users to upvote issues relevant to them
- #1998 feat: Auth refactoring to support single version token
- #2003 feat: Add ability to submit CronWorkflow from CLI
- #2006 fix: Fixed grammar on TTLStrategy
- #2008 fix: Fixes the `test` job on master
- #2009 feat: Enable s3 trace support
- #2013 feat: Adds support for MySQL. Fixes #1945
- #2014 feat(controller): Exposes container runtime executor as CLI option.
- #2019 build: `make clean` now only deletes dist directories
- #2021 chore: fix typo
- #2023 docs: fix README.md under argo/examples
- #2025 build: Enable linting for tests. Closes #1971
- #2028 fix(validate): Allow placeholder in values taken from inputs. Fixes #1984
- #2029 fix: Redirect to correct page when using managed namespace. Fixes #2015
- #2030 feat: Allow workflow-level parameters to be modified in the UI when submitting a workflow
- #2032 chore: Smoke tests are timing out, give them more time
- #2033 fix(api): Change `CronWorkflowName` to `Name`. Fixes #1982
- #2034 fix(api): Updates proto message naming
- #2035 fix: Fix permission test cases
- #2038 fix(archive): upsert archive + ci: Pin images on CI, add readiness probes, clean-up logging and other tweaks
- #2040 fix(Makefile): Rename staticfiles make target. Fixes #2010
- #2041 docs: Update link to configure-artifact-repository.md
- #2045 docs: Update README.md
- #2047 ci: Run using our own cowsay image
- #2048 refactor(cli): Introduce v1.Interface for CLI. Closes #2107
- #2050 fix(persistence): Allow `argo server` to run without persistence
- #2051 fix: offload Node Status in Get and List api call
- #2055 fix: nil pointer in GC
- #2058 feat(ui): Use cookies in the UI. Closes #1949
- #2059 fix: Only run archived wf testing when persistence is enabled
- #2067 fix: "base64 -d" not always available, using "base64 --decode"
- #2068 fix: Do not expect workflowChange to always be defined
- #2070 fix(controller): Do not crash if cm is empty. Fixes #2069
- #2071 refactor: Move server code (cmd/server/ -> server/)
- #2079 fix(security): Fixes an issue that allowed you to list archived workf…
- #2081 feat: Allow CronWorkflows to have instanceId
- #2084 fix: Fix Resource Deletion Bug
- #2087 build: adds `make env` to make testing easier
- #2089 feat: support arg --token when talking to argo-server (#2027)
- #2092 feat(server): Restart server when config changes. Fixes #2090
- #2093 feat: Implemented Basic Auth scheme
- #2094 docs(README): Add Capital One to user list
- #2096 fix: container ID parser in PNS executor for CRI-O. Fixes #2095
- #2104 fix: Skip running --token testing if it is not on CI
- #2105 fix(ui): Add support for bash href. Fixes #2100
- #2106  fix: Namespace redirects no longer error and are snappier
- #2109 docs: Add company name to the list
- #2112 fix: Disable webpack dot rule
- #2118 test: Parallelize Cron tests
- #2119 fix: mark CLI common.go vars and funcs as DEPRECATED. See #1951
- #2122 feat: Implemented open default browser in local mode
- #2123 feat: Add support to delete by using labels. Depended on by #2116
- #2124 docs: Add CronWorkflow usage docs
- #2127 test: Try and make e2e more robust. Fixes #2125
- #2128 build: Update release process and docs
- #2130 fix(ui): fixed ui navigation issues with basehref. Fixes #2113
- #2131 chore: Update lint command to use apiclient. See #2116
- #2134 fix: route all unknown web content requests to index.html
- #2136 fix: archiveLogs needs to copy stderr
- #2139 fix: logs UI should fall back to archive. Fixes  #2137
- #2141 fix: Correct SQL syntax.
- #2143 fix: Add certs to argocli image. Fixes #2129
- #2147 fix: Allow download of artifacts in server auth-mode. Fixes #2129
- #2148 chore: Add Mock gen to make codegen
- #2150 fix: Change `argo token` to `argo auth token`. Closes #2149
- #2152 feat: Update archived workflow column to be JSON. Closes #2133
- #2160 fix(k8sapi-executor): Fix KillContainer impl
- #2164 fix: Specify download .tgz extension
- #2172 fix(archive): Only delete offloaded data we do not need. Fixes #2170 and #2156
- #2178 fix: Correctly create code from changed protos.
- #2180  fix(ui): Retry workflow event stream on connection loss. Fixes #2179
- #2181 fix: Fixed the Exec Provider token bug
- #2182 docs(README): Sort list and add Greenhouse
- #2184 chore: Improved error handling and refactor
- #2187 test: Remove podGC
- #2189 fix: Fixed the e2e test . failure
- #2191 fix: Namespace and phase selection in UI
- #2193 chore: Move info.proto et al to correct package
- #2194 test: Invoke tests using s.T()
- #2195 docs: Update ReadMe for EBSCO
- #2198 fix: Correct login instructions.
- #2202 fix(ui): fixed workflow filtering and ordering. Fixes #2201
- #2207 fix(offloading): Correctly deleted offloaded data. Fixes #2206
- #2213 fix: Remove quotes from UI
- #2234 fix(offload): Fix bug which deleted completed workflows. Fixes #2233
- #2250 fix(offloading): Change offloaded nodes datatype to JSON to support 1GB. Fixes #2246
- #2253 fix: Ignore bookmark events for restart. Fixes #2249

#### Contributors

* Adam Thornton <!-- num=1 -->
* Aditya Sundaramurthy <!-- num=1 -->
* Akshay Chitneni <!-- num=1 -->
* Alessandro Marrella <!-- num=1 -->
* Alex Collins <!-- num=104 -->
* Alexander Matyushentsev <!-- num=1 -->
* Alexey Volkov <!-- num=1 -->
* Anastasia Satonina <!-- num=1 -->
* Andrew Suderman <!-- num=1 -->
* Antoine Dao <!-- num=1 -->
* Avi Weit <!-- num=1 -->
* Daisuke Taniwaki <!-- num=19 -->
* David Seapy <!-- num=1 -->
* Deepen Mehta <!-- num=1 -->
* Derek Wang <!-- num=8 -->
* Dineshmohan Rajaveeran <!-- num=1 -->
* Ed Lee <!-- num=1 -->
* Elton <!-- num=1 -->
* Erik Parmann <!-- num=1 -->
* Huan-Cheng Chang <!-- num=1 -->
* Jesse Suen <!-- num=1 -->
* Jialu Zhu <!-- num=2 -->
* Jonathan Steele <!-- num=1 -->
* Jonathon Belotti <!-- num=1 -->
* Juan C. Muller <!-- num=1 -->
* Julian Fahrer <!-- num=1 -->
* Julian Mazzitelli <!-- num=1 -->
* Marek Čermák <!-- num=2 -->
* MengZeLee <!-- num=1 -->
* Michael Crenshaw <!-- num=3 -->
* Neutron Soutmun <!-- num=1 -->
* Nick Groszewski <!-- num=1 -->
* Niklas Hansson <!-- num=1 -->
* Patryk Jeziorowski <!-- num=1 -->
* Pavel Kravchenko <!-- num=1 -->
* Per Buer <!-- num=1 -->
* Praneet Chandra <!-- num=1 -->
* Rafał Bigaj <!-- num=1 -->
* Rick Avendaño <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=28 -->
* Shubham Koli (FaultyCarry) <!-- num=1 -->
* Simon Behar <!-- num=50 -->
* Takashi Abe <!-- num=1 -->
* Tobias Bradtke <!-- num=1 -->
* Tom Wieczorek <!-- num=1 -->
* Tristan Colgate-McFarlane <!-- num=3 -->
* Vincent Boulineau <!-- num=1 -->
* Wei Yan <!-- num=1 -->
* William Reed <!-- num=1 -->
* Zhipeng Wang <!-- num=1 -->
* descrepes <!-- num=1 -->
* dherman <!-- num=2 -->
* fsiegmund <!-- num=3 -->
* gerdos82 <!-- num=1 -->
* mark9white <!-- num=3 -->
* nglinh <!-- num=1 -->
* sang <!-- num=1 -->
* vdinesh2461990 <!-- num=1 -->
* zhujl1991 <!-- num=1 -->
v2.5.0-rc12: tag_name: v2.5.0-rc12
body: ## Quick Start

https://github.com/argoproj/argo/tree/v2.5.0-rc12/manifests

## Community Meeting Demo

https://www.youtube.com/watch?v=cqqAajxFaiI

# Changes

#### Bug Fixes

- #2233 Offload GC deleting completed wf data

#### Pull Requests

- #2234 fix(offload): Fix bug which deleted completed workflows. Fixes #2233

#### Contributors

* Alex Collins <!-- num=2 -->
v2.5.0-rc11: tag_name: v2.5.0-rc11
body: ## Quick Start

https://github.com/argoproj/argo/tree/v2.5.0-rc11/manifests

## Community Meeting Demo

https://www.youtube.com/watch?v=cqqAajxFaiI

# Changes


#### Bug Fixes

- #2201 UI regressions in workflow list
- #2206 Offload GC is not deleted old data

#### Pull Requests

- #2198 fix: Correct login instructions.
- #2202 fix(ui): fixed workflow filtering and ordering. Fixes #2201
- #2207 fix(offloading): Correctly deleted offloaded data. Fixes #2206
- #2213 fix: Remove quotes from UI

#### Contributors

* Alex Collins <!-- num=5 -->
* fsiegmund <!-- num=1 -->
v2.5.0-rc10: tag_name: v2.5.0-rc10
body: ## Quick Start

https://github.com/argoproj/argo/tree/v2.5.0-rc10/manifests

## Community Meeting Demo

https://www.youtube.com/watch?v=cqqAajxFaiI

# Changes

#### Pull Requests

- #2003 feat: Add ability to submit CronWorkflow from CLI
- #2160 fix(k8sapi-executor): Fix KillContainer impl
- #2187 test: Remove podGC
- #2189 fix: Fixed the e2e test . failure
- #2191 fix: Namespace and phase selection in UI
- #2193 chore: Move info.proto et al to correct package
- #2194 test: Invoke tests using s.T()
- #2195 docs: Update ReadMe for EBSCO

#### Contributors

* Alex Collins <!-- num=7 -->
* Dineshmohan Rajaveeran <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=2 -->
* Tom Wieczorek <!-- num=1 -->
v2.5.0-rc9: tag_name: v2.5.0-rc9
body: ## Quick Start

https://github.com/argoproj/argo/tree/v2.5.0-rc9/manifests

## Community Meeting Demo

https://www.youtube.com/watch?v=cqqAajxFaiI

# Changes
#### Enhancements

* #2116 Migrate CLI workflow commands to use `apiclient.Client`
* #2133 Archived workflow `workflow` column should be json
* #2149 Change `argo token` to `argo auth token` 

#### Bug Fixes

- #2156 unclear documentation comments for persistence in workflow-controller-configmap.yaml
- #2170 Offload GC deletes offloaded data it should not
- #2179 Argo UI shows exception error in workflow list on connection loss

#### Pull Requests

- #2081 feat: Allow CronWorkflows to have instanceId
- #2122 feat: Implemented open default browser in local mode
- #2128 build: Update release process and docs
- #2131 chore: Update lint command to use apiclient. See #2116
- #2148 chore: Add Mock gen to make codegen
- #2150 fix: Change `argo token` to `argo auth token`. Closes #2149
- #2152 feat: Update archived workflow column to be JSON. Closes #2133
- #2164 fix: Specify download .tgz extension
- #2172 fix(archive): Only delete offloaded data we do not need. Fixes #2170 and #2156
- #2178 fix: Correctly create code from changed protos.
- #2180  fix(ui): Retry workflow event stream on connection loss. Fixes #2179
- #2181 fix: Fixed the Exec Provider token bug
- #2182 docs(README): Sort list and add Greenhouse
- #2184 chore: Improved error handling and refactor

#### Contributors

* Alex Collins <!-- num=10 -->
* Juan C. Muller <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=2 -->
* Simon Behar <!-- num=4 -->
* fsiegmund <!-- num=1 -->
v2.5.0-rc8: tag_name: v2.5.0-rc8
body: ## Quick Start

https://github.com/argoproj/argo/tree/v2.5.0-rc8/manifests

## Community Meeting Demo

https://www.youtube.com/watch?v=cqqAajxFaiI

# Changes

#### Enhancements

* #2116 Migrate CLI workflow commands to use `apiclient.Client`

#### Bug Fixes

- #2125 "TestCLIWithServerSuite/TestArchive" is flakey
- #2129 downloading artifact from s3 in ui, timed out waiting for condition

#### Pull Requests

- #2123 feat: Add support to delete by using labels. Depended on by #2116
- #2124 docs: Add CronWorkflow usage docs
- #2127 test: Try and make e2e more robust. Fixes #2125
- #2130 fix(ui): fixed ui navigation issues with basehref. Fixes #2113
- #2134 fix: route all unknown web content requests to index.html
- #2136 fix: archiveLogs needs to copy stderr
- #2139 fix: logs UI should fall back to archive. Fixes  #2137
- #2141 fix: Correct SQL syntax.
- #2143 fix: Add certs to argocli image. Fixes #2129
- #2147 fix: Allow download of artifacts in server auth-mode. Fixes #2129

#### Contributors

* Alex Collins <!-- num=12 -->
* Simon Behar <!-- num=1 -->
* Tristan Colgate-McFarlane <!-- num=3 -->
* fsiegmund <!-- num=1 -->

v2.5.0-rc7: tag_name: v2.5.0-rc7
body: ## Quick Start

https://github.com/argoproj/argo/tree/v2.5.0-rc7/manifests

## Community Meeting Demo

https://www.youtube.com/watch?v=cqqAajxFaiI

# Changes

#### Enhancements

* #2090 Restart Argo Server when config map changes

#### Bug Fixes

- #2107 Error while using rc6

#### Pull Requests

- #2048 refactor(cli): Introduce v1.Interface for CLI. Closes #2107
- #2084 fix: Fix Resource Deletion Bug
- #2092 feat(server): Restart server when config changes. Fixes #2090
- #2093 feat: Implemented Basic Auth scheme
- #2112 fix: Disable webpack dot rule

#### Contributors

* Alex Collins <!-- num=7 -->
* Saravanan Balasubramanian <!-- num=1 -->
* Simon Behar <!-- num=2 -->

v2.5.0-rc6: tag_name: v2.5.0-rc6
body: ## Quick Start

```
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.5.0-rc6/manifests/install.yaml
```

## Community Meeting Demo

https://www.youtube.com/watch?v=cqqAajxFaiI

# Changes
#### Bug Fixes

- #2095 Issues with the PNS executor and CRI-O
- #2100 Support for base URL in new argo UI server

#### Pull Requests

- #2096 fix: container ID parser in PNS executor for CRI-O. Fixes #2095
- #2104 fix: Skip running --token testing if it is not on CI
- #2105 fix(ui): Add support for bash href. Fixes #2100
- #2106  fix: Namespace redirects no longer error and are snappier

#### Contributors

* Alex Collins <!-- num=3 -->
* Derek Wang <!-- num=1 -->
* Rafał Bigaj <!-- num=1 -->
* Simon Behar <!-- num=1 -->
v2.5.0-rc5: tag_name: v2.5.0-rc5
body: ## Quick Start

```
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.5.0-rc5/manifests/install.yaml
```

## Community Meeting Demo

https://www.youtube.com/watch?v=cqqAajxFaiI

# Changes
#### Enhancements

* #2027 Support --token option for Argo API Server

#### Bug Fixes

- #1868 WorkflowTemplate withParam causes "template not found" 

#### Pull Requests

- #1920 fix(controller): Fix template resolution for step groups. Fixes #1868 
- #2079 fix(security): Fixes an issue that allowed you to list archived workf…
- #2087 build: adds `make env` to make testing easier
- #2089 feat: support arg --token when talking to argo-server (#2027)
- #2094 docs(README): Add Capital One to user list

#### Contributors

* Alex Collins <!-- num=5 -->
* Daisuke Taniwaki <!-- num=1 -->
* Derek Wang <!-- num=1 -->
* Nick Groszewski <!-- num=1 -->
v2.5.0-rc4: tag_name: v2.5.0-rc4
body: ## Quick Start

```
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.5.0-rc4/manifests/install.yaml
```

## Community Meeting Demo

https://www.youtube.com/watch?v=cqqAajxFaiI

# Changes
#### Enhancements

* #2069 invalid config can allow updateConfig to put controller in invalid state

#### Pull Requests

- #2070 fix(controller): Do not crash if cm is empty. Fixes #2069
- #2071 refactor: Move server code (cmd/server/ -> server/)

#### Contributors

* Alex Collins <!-- num=3 -->
* Simon Behar <!-- num=1 -->
v2.5.0-rc3: tag_name: v2.5.0-rc3
body: ## Quick Start

```
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.5.0-rc3/manifests/install.yaml
```

## Community Meeting Demo

https://www.youtube.com/watch?v=cqqAajxFaiI

# Changes
#### Enhancements

* #1949 TODO - we should not put the token in the URL - OSWAP obvs

#### Bug Fixes

- #1982 All proto requests should use name and not resourceNameName

#### Pull Requests

- #2033 fix(api): Change `CronWorkflowName` to `Name`. Fixes #1982
- #2035 fix: Fix permission test cases
- #2058 feat(ui): Use cookies in the UI. Closes #1949
- #2059 fix: Only run archived wf testing when persistence is enabled
- #2067 fix: "base64 -d" not always available, using "base64 --decode"
- #2068 fix: Do not expect workflowChange to always be defined

#### Contributors

* Alex Collins <!-- num=10 -->
* Derek Wang <!-- num=2 -->
* Simon Behar <!-- num=2 -->
v2.5.0-rc2: tag_name: v2.5.0-rc2
body: ## Quick Start

```
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.5.0-rc2/manifests/install.yaml
```
## Community Meeting Demo
https://www.youtube.com/watch?v=cqqAajxFaiI

## Changelog since v2.4.3

### New Features
* Argo Server
* Brand new UI with a lot of functionalities (Submit, Retry, Resubmit, etc ...)
* Refactored offload Nodestatus
* Workflow Archive 

## Deprecated Features
* Argo UI ( v2.5 onwards, Argo UI is bundled with `argo server`)

## You want to try out the new UI or API? 

Run the server on your desktop.

Download the appropriate `argo-*` binary and run `argo server` locally. It'll start up a server on port 2746 and you can connect to it.

Deploy to a test cluster (e.g. minikube) using one of the manifests:

* ` https://raw.githubusercontent.com/argoproj/argo/v2.5.0-rc2/manifests/install.yaml` - standard install manifests
* ` https://raw.githubusercontent.com/argoproj/argo/v2.5.0-rc2/manifests/namespace-install.yaml` - standard namespace install manifests
* ` https://raw.githubusercontent.com/argoproj/argo/v2.5.0-rc2/manifests/quick-start-postgres.yaml` - quick-start install into a blank namespace with MinIO and Postgres DB
* ` https://raw.githubusercontent.com/argoproj/argo/v2.5.0-rc2/manifests/quick-start-mysql.yaml` - quick-start install into a blank namespace with MinIO and MySQL

# Changes
#### Pull Requests

- #2045 docs: Update README.md
- #2047 ci: Run using our own cowsay image
- #2050 fix(persistence): Allow `argo server` to run without persistence
- #2051 fix: offload Node Status in Get and List api call
- #2055 fix: nil pointer in GC

#### Contributors

* Alex Collins <!-- num=9 -->
* Ed Lee <!-- num=1 -->
* Saravanan Balasubramanian <!-- num=7 -->
v2.5.0-rc1: tag_name: v2.5.0-rc1
body: ## Quick Start

```
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.5.0-rc1/manifests/install.yaml
```
## Community Meeting Demo
https://www.youtube.com/watch?v=cqqAajxFaiI

## Changelog since v2.4.3

### New Features
* Argo Server
* Brand new UI with a lot of functionalities (Submit, Retry, Resubmit, etc ...)
* Refactored offload Nodestatus
* Workflow Archive 

## Deprecated Features
* Argo UI ( v2.5 onwards, Argo UI is bundled with `argo server`)

## You want to try out the new UI or API? 

Run the server on your desktop.

Download the appropriate `argo-*` binary and run `argo server` locally. It'll start up a server on port 2746 and you can connect to it.


Deploy to a test cluster (e.g. minikube) using one of the manifests:

* ` https://raw.githubusercontent.com/argoproj/argo/v2.5.0-rc1/manifests/install.yaml` - standard install manifests
* ` https://raw.githubusercontent.com/argoproj/argo/v2.5.0-rc1/manifests/namespace-install.yaml` - standard namespace install manifests
* ` https://raw.githubusercontent.com/argoproj/argo/v2.5.0-rc1/manifests/quick-start-postgres.yaml` - quick-start install into a blank namespace with MinIO and Postgres DB
* ` https://raw.githubusercontent.com/argoproj/argo/v2.5.0-rc1/manifests/quick-start-mysql.yaml` - quick-start install into a blank namespace with MinIO and MySQL

# Changes

#### Enhancements

* #1331 Argo API Server
* #1712 SSL enabled database connection for workflow repository
* #1905 Provide values of withItems maps as JSON in {{item}}

#### Bug Fixes

- #1817 continue on failed doesn't work with nested dag and retries

#### Other

- #1634 inconsistent label cardinality when trying to report metrics
- #1790 [Feature Request] Globally-defined logging to artifact repository
- Add back SetGlogLevel calls

#### Pull Requests

- #1482 Code duplication
- #1536 Update main.go
- #1537 Remove GLog config from argo executor
- #1601 Added  Protobuf extension 
- #1622 pin colinmarc/hdfs to the next commit, which no longer has vendored deps
- #1639 Fixed the Parallelism makes workflow failure
- #1640 Fixed the Global param Lint issue on DAG
- #1641 Fix global lint issue
- #1643 Fixed the example wrong comment
- #1645 Delay killing sidecars until artifacts are saved
- #1647 Removed unneeded  code from previous PR
- #1648 Fix DAG output aggregation
- #1649 Fix DAG output aggregation correctly
- #1650 Print multiple workflows in one command
- #1651 Use stored templates to aggregate step outputs
- #1653 Stop failing if artifact file exists, but empty
- #1654 Fix child node template handling
- #1655 Resolve WorkflowTemplate lazily
- #1656 Bug fixes in getting started
- #1657 Fix e2e function testcase name.
- #1660 Don't provision VM for empty artifacts
- #1661 [User] Update Argo users list
- #1669 Handle retried node properly
- #1670 Store locally referenced templates properly
- #1673 Add new community blog post to README
- #1675 Handle sidecar killing properly
- #1679 Fix typo
- #1681 Added status of previous steps as variables
- #1687 PodSpecPatch functionality 
- #1690 Fix issue that workflow.priority substitution didn't pass validation
- #1694 Fix retry node processing
- #1695 Fixed broken metrics endpoint per issue #1634
- #1696 Add ability to retry nodes after errors
- #1699 Fixed incorrect `pod.name` in retry pods
- #1700 Fixes bugs in demo
- #1702 `restartPolicy` -> `retryStrategy` in examples
- #1704 Fail suspended steps after deadline
- #1710 Fix invitation link.
- #1715 Added ability to auto-resume from suspended state
- #1716 feat: Added onExit handlers to arbitrary templates
- #1721 Filter workflows in list  based on name prefix
- #1724 template for pod spec from output of previous step
- #1726 Add gonum.org/v1/gonum/graph to Gopkg.toml
- #1732 Fix retry node name issue on error
- #1733 unquote strings from parameter-file
- #1739 Fixed lint issues
- #1741 Removed debug `Println`
- #1744 Update Template Resolution Logic
- #1745 Fix typo
- #1748 binary up version
- #1752 Minor rework of suspened node
- #1753 fix blank lines
- #1754 typo fix.
- #1756 SSL enabled database connection for workflow repository (#1712)
- #1758 feat: Support for scheduled Workflows with CronWorkflow CRD
- #1760 Support no-headers flag
- #1762 Handle operation level errors
- #1766 Make kubectl print status and start/finished time
- #1768 Update README.md
- #1776 Wait container error on pod watch failure and exponential backoff
- #1777 Add `go fmt` to linter
- #1778 Add documentation for executors
- #1782 Add exponential back-off to retryStrategy
- #1787 Do not resolve remote templates in lint
- #1800 Fix withParam node naming issue
- #1804 Fix some issues in examples
- #1808 Minor doc fix
- #1810 Added hint when using certain tokens in when expressions
- #1811 Fix code-gen docs
- #1818 fix: Revert node creation logic
- #1820 Adding Fairwinds to the list of companies that use Argo
- #1825 Add HOVER to the list of who uses Argo
- #1828 Added Red Hat to the list of Argo users
- #1829 fix: Ensure timer channel is empty after stop
- #1830 docs: biobox analytics
- #1835 InsideBoard uses Argo
- #1836 fix: Fix template scope
- #1843 docs: Update doc based on helm 3.x changes
- #1844 fix: Use dynamically generated placeholders
- #1845 docs: Add CCRi to list of users in README
- #1847 fix: Fix a couple of nil derefs
- #1848 docs: Updates issue and PR templates.
- #1850 docs: Add Sidecar Technologies to list of who uses Argo
- #1851 fix: Panic if DB context has issue
- #1852 docs: Adding Wavefront to the users list
- #1854 test: Adds core e2e test infra. Fixes #678
- #1855 fix: Fix support for continueOn failed for DAG. Fixes #1817
- #1856 docs: Refactored and cleaned up docs
- #1858 fix: Move ISSUE_TEMPLATE/ under .github/
- #1859 refactor: Move Workflows UI from argo-ui repo
- #1860 feat!(logging): Always archive logs if in config. Closes #1790
- #1865 fix: quick fail after pod termination
- #1869 test: Adds 'test' and 'ui' jobs to CI
- #1870 fix(docs): Update instructions for linux users
- #1872 fix(persistence): Update comment in sqldb.go to match function name
- #1873 docs: Fix e2e testing link
- #1878 refactor: Format Argo UI using prettier
- #1882 feat(server): Argo Server. Closes #1331
- #1883  feat: Enhanced Different TTLSecondsAfterFinished depending on if job is in Succeeded, Failed or Error, Fixes
- #1898 fix: Update Gopkg.lock with dep ensure -update
- #1899 feat(artifacts): Add support for IAM roles for service accounts in artifact storage. Fixes #1774
- #1906 feat: Provide values of withItems maps as JSON in {{item}}. Fixes #1905
- #1909 chore: Decrease docker build time by ignoring node_modules
- #1910 docs: Add question option to issue templates
- #1916 docs: Updated Readme.md for companies using Argo:
- #1922 docs: Minor formatting fix
- #1925 feat: Add suspend and resume to CronWorkflows CLI
- #1926 docs: Add CyberAgent to the list of Argo users
- #1929 docs: Update PR template to demand tests.
- #1934 fix: Added decompress in retry, resubmit and resume.
- #1937 fix(argoexec): updated jq version to 1.6. Fixes #1936
- #1939 feat: Enhancement for namespace installation mode configuration
- #1965 feat: Renders namespace in UI. Fixes #1952 and #1959
- #1972 feat: Adds `argo server` command. Fixes #1966
- #1987 chore: Fix UI TODOs
- #1989 chore: Added WorkflowTemplate test
- #1992 fix: WorkflowTempalteTest fix
- #1930 feat:Add audit logs to workflows. Fixes #1769 
- #2040 fix(Makefile): Rename staticfiles make target. Fixes #2010 
- #1369 fix: Fix workflow level timeouts 



#### Contributors

* Adam Thornton <!-- num=1 -->
* Aditya Sundaramurthy <!-- num=1 -->
* Akshay Chitneni <!-- num=1 -->
* Alessandro Marrella <!-- num=1 -->
* Alex Collins <!-- num=9 -->
* Alexander Matyushentsev <!-- num=2 -->
* Alexey Volkov <!-- num=2 -->
* Anastasia Satonina <!-- num=2 -->
* Andrew Suderman <!-- num=1 -->
* Antoine Dao <!-- num=2 -->
* Avi Weit <!-- num=1 -->
* Daisuke Taniwaki <!-- num=33 -->
* David Seapy <!-- num=2 -->
* Deepen Mehta <!-- num=1 -->
* Derek Wang <!-- num=4 -->
* Elton <!-- num=1 -->
* Erik Parmann <!-- num=1 -->
* Huan-Cheng Chang <!-- num=1 -->
* Jesse Suen <!-- num=3 -->
* Jonathan Steele <!-- num=1 -->
* Jonathon Belotti <!-- num=2 -->
* Julian Fahrer <!-- num=1 -->
* Julian Mazzitelli <!-- num=1 -->
* Marek Čermák <!-- num=3 -->
* MengZeLee <!-- num=1 -->
* Michael Crenshaw <!-- num=2 -->
* Neutron Soutmun <!-- num=1 -->
* Niklas Hansson <!-- num=1 -->
* Pavel Kravchenko <!-- num=1 -->
* Per Buer <!-- num=1 -->
* Praneet Chandra <!-- num=1 -->
* Rick Avendaño <!-- num=2 -->
* Saravanan Balasubramanian <!-- num=20 -->
* Shubham Koli (FaultyCarry) <!-- num=1 -->
* Simon Behar <!-- num=37 -->
* Takashi Abe <!-- num=1 -->
* Tobias Bradtke <!-- num=2 -->
* Wei Yan <!-- num=1 -->
* William Reed <!-- num=1 -->
* descrepes <!-- num=1 -->
* dherman <!-- num=2 -->
* gerdos82 <!-- num=2 -->
* mark9white <!-- num=4 -->
* nglinh <!-- num=1 -->
* sang <!-- num=2 -->
* vdinesh2461990 <!-- num=1 -->
* zhujl1991 <!-- num=1 -->

v2.4.3: tag_name: v2.4.3
body: ## Quick Start

```
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.4.3/manifests/install.yaml
```
## Changelog since v2.4.2

### Bugs
- Error occurred on pod watch should result in an error on the wait container (#1776) (@gerdos82)
- SSL enabled database connection for workflow repository (#1756) (@AntoineDao)
- Added hint when using certain tokens in when expressions (#1810) (@simster7)
- Handle operation level errors PVC in Retry (#1762) (@dtaniwaki)
- Do not resolve remote templates in lint (#1787) (@dtaniwaki)
- Fix retry node name issue on error (#1732) (@dtaniwaki)
- Refactoring Template Resolution Logic (#1744) (@dtaniwaki)
- Support no-headers flag (#1760) (@dtaniwaki)
- Filter workflows in list  based on name prefix (#1721) (@sanoojm)
- Added ability to auto-resume from suspended state (#1715) (@simster7)
- Fixed incorrect `pod.name` in retry pods (#1699) (@simster7)
v2.4.2: tag_name: v2.4.2
body: ## Quick Start

```
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.4.2/manifests/install.yaml
```
## Changelog since v2.4.1

### New Features
+ Apply Strategic merge patch against the pod spec (#1687) (@sarabala1979)
+ Added status of previous steps as variables (#1681)(@simster7)
+ Print multiple workflows in one command (#1650) (@dtaniwaki)

### Bugs 
- Fixed broke metrics endpoint per #1634 (#1695) (@RichardAvendano)
- Fix issue that workflow.priority substitution didn't pass validation (#1690) (@mark9white)
v2.4.1: tag_name: v2.4.1
body: ## Quick Start

```
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.4.1/manifests/install.yaml
```
## Changelog since v2.4.0

### Bugs
- Stop failing if artifact file exists, but empty (#1653) (@Ark-kun)
- Don't provision VM for empty artifacts(#1660) (@simster7)
-  Resolve WorkflowTemplate lazily (#1655) (@dtaniwaki )
v2.4.0: tag_name: v2.4.0
body: ## Quick Start

```
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.4.0/manifests/install.yaml
```
## Changelog since v2.3

### New Features
+ WorkflowTemplate CRD (#1312) (@dtaniwaki)
+ Centralized Longterm workflow persistence storage (#1344) (@sarabala1979)
+ Support PodSecurityContext (#1463) (@dtaniwaki)
+ Conditionally annotate outputs of script template only when consumed #1359 (#1462) (@sarabala1979)
+ Support for WorkflowSpec.ArtifactRepositoryRef (#1350) (@Ark-kun)
+ Ability to configure hostPath mount for /var/run/docker.sock (#1419) (@sarabala1979)
+ Support hostAliases in WorkflowSpec #1265 (#1365) (@sarabala1979)
+ Template level service account (#1354) (@sarabala1979)
+ Provide failFast flag, allow a DAG to run all branches of the DAG (either success or failure) (#1443) 
(@xianlubird)
+ Add paging function for list command (#1420) (@xianlubird)
+ Allow overriding workflow labels in 'argo submit' (#1475) (@mark9white)
+ Support git shallow clones and additional ref fetches (#1521) (@marxarelli)
+ Add --dry-run option to argo submit (#1506) (@AnesBenmerzoug)
+ Store resolved templates (#1552) (@dtaniwaki)


### Refactoring & Improvements:
* Allow output parameters with .value, not only .valueFrom (#1336) (@Ark-kun)
* Exposed workflow priority as a variable (#1476) (@mark9white)
* Expose all input parameters to template as JSON (#1488) (@mark9white)
* Argo CLI should show warning if there is no workflow definition in file #1486 (@sarabala1979)
* argo wait and argo submit --wait should exit 1 if workflow fails (#1467) (@sarabala1979)
* Improve bash completion (#1437) (@edwinpjacques)
* Add --no-color flag to logs (#1479) (@dtaniwaki)
* mention sidecar in failure message for sidecar containers (#1430) (@tralexa)
* changing temp directory for output artifacts from root to tmp (#1458) (@alexcapras)
* Format sources and order imports with the help of goimports (#1504) (@muesli)
* Support ability to assume IAM roles in S3 Artifacts  (#1587) (@sarabala1979)
* Added WorkflowStatus and NodeStatus types to the Open API Spec. (#1614) (@smileprem)
* Add merge keys to Workflow objects to allow for StrategicMergePatches (#1611)(@ian-howell )

* Documentation (@ofaz, @bvwells, @pbrit, @shimmerjs, @ianCambrio, @jqueguiner, @ntwrkguru, @thundergolfer, @delwaterman, @Ziyang2go, @Aisuko, @mark9white, @mostaphaRoudsari, @commodus-sebastien, @thundergolfer, @xianlubird)


### Bug Fixes
- Fix: Support the List within List type in withParam #1471 (#1473) (@sarabala1979)
- Fix #1366 unpredictable global artifact behavior (#1461) (@schrodit)
- Fix a compiler error (#1500) (@ian-howell)
- Fixed: failed to save outputs: verify serviceaccount default:default has necessary privileges (#1362) (@sarabala1979)
- Fixed: withParam parsing of JSON/YAML lists #1389 (#1397) (@ian-howell)
- Fixed: persistentvolumeclaims already exists #1130 (#1363) (@sarabala1979)
- PNS executor intermitently failed to capture entire log of script templates (#1406) (@jessesuen)
- Fix argo logs empty content when workflow run in virtual kubelet env (#1201) (@xianlubird)
- Terminate all containers within pod after main container completes (#1423) (@SeriousSem)
- Delay killing sidecars until artifacts are saved (#1645) (@ddseapy)
- Pin colin marc/hdfs to the next commit, which no longer has vendored deps (#1622) (@jonathon)
- Increase timeout of golangci-lint (#1623) (@dtaniwaki)
- Updated the API Rule Violations list (#1618) (@smileprem )
- Prevent controller from crashing due to glog writing to /tmp (#1613) (@jessesuen)
- DAG enable failFast will hang in some case (#1595) (@xianlubird)
- Do not relocate the mounted docker.sock (#1607) (@jw3)


v2.4.0-rc1: tag_name: v2.4.0-rc1
body: ## Quick Start

```
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.4.0-rc1/manifests/install.yaml
```

## Changelog since v2.3

### New Features
+ WorkflowTemplate CRD (#1312) (@dtaniwaki)
+ Centralized Longterm workflow persistence storage (#1344) (@sarabala1979)
+ Support PodSecurityContext (#1463) (@dtaniwaki)
+ Conditionally annotate outputs of script template only when consumed #1359 (#1462) (@sarabala1979)
+ Support for WorkflowSpec.ArtifactRepositoryRef (#1350) (@Ark-kun)
+ Ability to configure hostPath mount for /var/run/docker.sock (#1419) (@sarabala1979)
+ Support hostAliases in WorkflowSpec #1265 (#1365) (@sarabala1979)
+ Template level service account (#1354) (@sarabala1979)
+ Provide failFast flag, allow a DAG to run all branches of the DAG (either success or failure) (#1443) (@xianlubird)
+ Add paging function for list command (#1420) (@xianlubird)
+ Allow overriding workflow labels in 'argo submit' (#1475) (@mark9white)
+ Support git shallow clones and additional ref fetches (#1521) (@marxarelli)
+ Add --dry-run option to argo submit (#1506) (@AnesBenmerzoug)
### Refactoring & Improvements:
* Allow output parameters with .value, not only .valueFrom (#1336) (@Ark-kun)
* Exposed workflow priority as a variable (#1476) (@mark9white)
* Expose all input parameters to template as JSON (#1488) (@mark9white)
* Argo CLI should show warning if there is no workflow definition in file #1486 (@sarabala1979)
* argo wait and argo submit --wait should exit 1 if workflow fails (#1467) (@sarabala1979)
* Improve bash completion (#1437) (@edwinpjacques)
* Add --no-color flag to logs (#1479) (@dtaniwaki)
* mention sidecar in failure message for sidecar containers (#1430) (@tralexa)
* changing temp directory for output artifacts from root to tmp (#1458) (@alexcapras)
* Format sources and order imports with the help of goimports (#1504) (@muesli)
* Documentation (@ofaz, @bvwells, @pbrit, @shimmerjs, @ianCambrio, @jqueguiner, @ntwrkguru, @thundergolfer, @delwaterman, @Ziyang2go, @Aisuko, @mark9white, @mostaphaRoudsari, @commodus-sebastien, @thundergolfer, @xianlubird)
### Bug Fixes
- Fix: Support the List within List type in withParam #1471 (#1473) (@sarabala1979)
- Fix #1366 unpredictable global artifact behavior (#1461) (@schrodit)
- Fix a compiler error (#1500) (@ian-howell)
- Fixed: failed to save outputs: verify serviceaccount default:default has necessary privileges (#1362) (@sarabala1979)
- Fixed: withParam parsing of JSON/YAML lists #1389 (#1397) (@ian-howell)
- Fixed: persistentvolumeclaims already exists #1130 (#1363) (@sarabala1979)
- PNS executor intermitently failed to capture entire log of script templates (#1406) (@jessesuen)
- Fix argo logs empty content when workflow run in virtual kubelet env (#1201) (@xianlubird)
- Terminate all containers within pod after main container completes (#1423) (@SeriousSem)

v2.3.0: tag_name: v2.3.0
body: ## Quick Start
```
kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.3.0/manifests/install.yaml
```

## Changelog since v2.2

### Notes about upgrading from v2.2

* Artifact repository secrets are passed to the wait sidecar using volumeMounts instead of the
  previous behavior of performing K8s API calls performed by the executor. This is much more secure
  since it removes privileges of the workflow pod to no longer require secret access. However, as a
  consequence, workflow pods which reference a secret that does not exist, will now indefinitely
  stay in a Pending state, as opposed to the previous behavior of failing during runtime.

### Deprecation Notice
The workflow-controller-configmap introduces a new config field, `executor`, which is a container
spec and provides controls over the executor sidecar container (i.e. `init`/`wait`). The fields
`executorImage`, `executorResources`, and `executorImagePullPolicy` are deprecated and will be
removed in a future release.

### New Features:
+ Support for PNS (Process Namespace Sharing) executor (#1214)
+ Support for K8s API based Executor (#1010) (@dtaniwaki)
+ Adds limited support for Kubelet/K8s API artifact collection by mirroring volume mounts to wait sidecar
+ Support HDFS Artifact (#1159) (@dtaniwaki)
+ System level workflow parallelism limits & priorities (#1065)
+ Support larger workflows through node status compression (#1264)
+ Support nested steps workflow parallelism (#1046) (@WeiTang114)
+ Add feature to continue workflow on failed/error steps/tasks (#1205) (@schrodit)
+ Parameter and Argument names should support snake case (#1048) (@bbc88ks)
+ Add support for ppc64le and s390x (#1102) (@chenzhiwei)
+ Install mime-support in argoexec to set proper mime types for S3 artifacts
+ Allow owner reference to be set in submit util (#1120) (@nareshku)
+ add support for hostNetwork & dnsPolicy config (#1161) (@Dreamheart)
+ Add schedulerName to workflow and template spec (#1184) (@houz42)
+ Executor can access the k8s apiserver with a out-of-cluster config file (@houz42)
+ Proxy Priority and PriorityClassName to pods (#1179) (@dtaniwaki)
+ Add the `mergeStrategy` option to resource patching (#1269) (@ian-howell)
+ Add workflow labels and annotations global vars (#1280) (@discordianfish)
+ Support for optional input/output artifacts (#1277)
+ Add dns config support (#1301) (@xianlubird)
+ Added support for artifact path references (#1300) (@Ark-kun)
+ Add support for init containers (#1183) (@dtaniwaki)
+ Secrets should be passed to pods using volumes instead of API calls (#1302)
+ Azure AKS authentication issues #1079 (@gerardaus)
+ Support parameter substitution in the volumes attribute (#1238)

### Refactoring & Improvements:
* Update dependencies to K8s v1.12 and client-go 9.0
* Add namespace explicitly to pod metadata (#1059) (@dvavili)
* Raise not implemented error when artifact saving is unsupported (#1062) (@dtaniwaki)
* Retry logic to s3 load and save function (#1082) (@kshamajain99)
* Remove docker_lib mount volume which is not needed anymore (#1115) (@ywskycn)
* Documentation improvements and fixes (@protochron, @jmcarp, @locona, @kivio, @fischerjulian, @annawinkler, @jdfalko, @groodt, @migggy, @nstott, @adrienjt)
* Validate ArchiveLocation artifacts (#1167) (@dtaniwaki)
* Git cloning via SSH was not verifying host public key (#1261)
* Speed up podReconciliation using parallel goroutine (#1286) (@xianlubird)

### Bug Fixes
- Initialize child node before marking phase. Fixes panic on invalid `When` (#1075) (@jmcarp)
- Submodules are dirty after checkout -- need to update (#1052) (@andreimc)
- Fix output artifact and parameter conflict (#1125) (@Ark-kun)
- Remove container wait timeout from 'argo logs --follow' (#1142)
- Fix panic in ttl controller (#1143)
- Kill daemoned step if workflow consist of single daemoned step (#1144)
- Fix global artifact overwriting in nested workflow (#1086) (@WeiTang114)
- Fix issue where steps with exhausted retires would not complete (#1148)
- Fix metadata for DAG with loops (#1149)
- Replace exponential retry with poll (#1166) (@kzadorozhny)
- Dockerfile: argoexec base image correction (#1213) (@elikatsis)
- Set executor image pull policy for resource template (#1174) (@dtaniwaki)
- fix dag retries (#1221) (@houz42)
- Remove extra quotes around output parameter value (#1232) (@elikatsis)
- Include stderr when retrieving docker logs (#1225) (@shahin)
- Fix the Prometheus address references (#1237) (@spacez320)
- Kubernetes Resource action: patch is not supported (#1245)
- Fake outputs don't notify and task completes successfully (#1247)
- Reduce redundancy pod label action (#1271) (@xianlubird)
- Fix bug with DockerExecutor's CopyFile (#1275)
- Fix for Resource creation where template has same parameter templating (#1283)
- Fixes an issue where daemon steps were not getting terminated properly
- argo submit --wait and argo wait quits while workflow is running (#1347)
- Fix input artifacts with multiple ssh keys (#1338) (@almariah)
- Add when test for character that included `/` (@hideto0710)
- Fix parameter substitution bug (#1345) (@elikatsis)
- Fix missing template local volumes, Handle volumes only used in init containers (#1342)
- Export the methods of `KubernetesClientInterface` (#1294)
v2.3.0-rc3: tag_name: v2.3.0-rc3
body: ### Changes since 2.3.0-rc2
- argo submit --wait and argo wait quits while workflow is running (#1347)
- Fix validate the secret credentials name and key (#1358)
- Fix input artifacts with multiple ssh keys (#1338) (@almariah)
- Add when test for character that included `/` (@hideto0710)
- Fix parameter substitution bug (#1345) (@elikatsis)
- Fix missing template local volumes, Handle volumes only used in init containers (#1342)
v2.3.0-rc2: tag_name: v2.3.0-rc2
body: ### Changes since 2.3.0-rc1
+ Support parameter substitution in the volumes attribute (#1238)
- Fix regression where argoexec wait would not return when podname was too long
- wait will conditionally become privileged if main/sidecar privileged (issue #1323)
- `argo list` was not displaying non-zero priorities correctly
- Pod creation with secret volumemount (#1318)
- Export the methods of `KubernetesClientInterface` (#1294)


v2.3.0-rc1: tag_name: v2.3.0-rc1
body: 
# 2.3.0-rc1 (2019-04-10)

## Changelog since v2.2

### Features:
+ Support for PNS (Process Namespace Sharing) executor (#1214)
+ Support for K8s API based Executor (#1010) (@dtaniwaki)
+ Adds limited support for Kubelet/K8s API artifact collection by mirroring volume mounts to wait sidecar
+ Support HDFS Artifact (#1159) (@dtaniwaki)
+ System level workflow parallelism limits & priorities (#1065)
+ Support larger workflows through node status compression (#1264)
+ Support nested steps workflow parallelism (#1046) (@WeiTang114)
+ Add feature to continue workflow on failed/error steps/tasks (#1205) (@schrodit)
+ Parameter and Argument names should support snake case (#1048) (@bbc88ks)
+ Add support for ppc64le and s390x (#1102) (@chenzhiwei)
+ Install mime-support in argoexec to set proper mime types for S3 artifacts
+ Allow owner reference to be set in submit util (#1120) (@nareshku)
+ add support for hostNetwork & dnsPolicy config (#1161) (@Dreamheart)
+ Add schedulerName to workflow and template spec (#1184) (@houz42)
+ Executor can access the k8s apiserver with a out-of-cluster config file (@houz42)
+ Proxy Priority and PriorityClassName to pods (#1179) (@dtaniwaki)
+ Add the `mergeStrategy` option to resource patching (#1269) (@ian-howell)
+ Add workflow labels and annotations global vars (#1280) (@discordianfish)
+ Support for optional input/output artifacts (#1277)
+ Add dns config support (#1301) (@xianlubird)
+ Added support for artifact path references (#1300) (@Ark-kun)
+ Add support for init containers (#1183) (@dtaniwaki)
+ Secrets should be passed to pods using volumes instead of API calls (#1302)
+ Azure AKS authentication issues #1079 (@gerardaus)

### Refactoring & Improvements
* Update dependencies to K8s v1.12 and client-go 9.0
* Add namespace explicitly to pod metadata (#1059) (@dvavili)
* Raise not implemented error when artifact saving is unsupported (#1062) (@dtaniwaki)
* Retry logic to s3 load and save function (#1082) (@kshamajain99)
* Remove docker_lib mount volume which is not needed anymore (#1115) (@ywskycn)
* Documentation improvements and fixes (@protochron, @jmcarp, @locona, @kivio, @fischerjulian, @annawinkler, @jdfalko, @groodt, @migggy, @nstott, @adrienjt)
* Validate ArchiveLocation artifacts (#1167) (@dtaniwaki)
* Git cloning via SSH was not verifying host public key (#1261)
* Speed up podReconciliation using parallel goroutine (#1286) (@xianlubird)

### Bug Fixes
- Initialize child node before marking phase. Fixes panic on invalid `When` (#1075) (@jmcarp)
- Submodules are dirty after checkout -- need to update (#1052) (@andreimc)
- Fix output artifact and parameter conflict (#1125) (@Ark-kun)
- Remove container wait timeout from 'argo logs --follow' (#1142)
- Fix panic in ttl controller (#1143)
- Kill daemoned step if workflow consist of single daemoned step (#1144)
- Fix global artifact overwriting in nested workflow (#1086) (@WeiTang114)
- Fix issue where steps with exhausted retires would not complete (#1148)
- Fix metadata for DAG with loops (#1149)
- Replace exponential retry with poll (#1166) (@kzadorozhny)
- Dockerfile: argoexec base image correction (#1213) (@elikatsis)
- Set executor image pull policy for resource template (#1174) (@dtaniwaki)
- fix dag retries (#1221) (@houz42)
- Remove extra quotes around output parameter value (#1232) (@elikatsis)
- Include stderr when retrieving docker logs (#1225) (@shahin)
- Fix the Prometheus address references (#1237) (@spacez320)
- Kubernetes Resource action: patch is not supported (#1245)
- Fake outputs don't notify and task completes successfully (#1247)
- Reduce redundancy pod label action (#1271) (@xianlubird)
- Fix bug with DockerExecutor's CopyFile (#1275)
- Fix for Resource creation where template has same parameter templating (#1283)
- Fixes an issue where daemon steps were not getting terminated properly

### Deprecation Notice
The workflow-controller-configmap introduces a new config field, `executor`, which is a container 
spec and provides controls over the executor sidecar container (i.e. `init`/`wait`). The fields
`executorImage`, `executorResources`, and `executorImagePullPolicy` are deprecated and will be
removed in a future release.
v2.2.1: tag_name: v2.2.1
body: ## 2.2.1 (2018-10-18)

### Changelog since v2.2.0
+ UI retrieve logs from artifacts location if logs archiving is enabled (issue #1018)
+ Add imagePullPolicy config for executors (@dtaniwaki)
+ Detect and indicate when container was OOMKilled
+ support force namespace isolation in UI
- Workflow executor panic: workflows.argoproj.io/template not found (issue #1033)
- gc-ttl dose not work (issue #1004)
- Resubmission of a terminated workflow creates a new workflow that is already terminated (issue #1011)
- ZIP containing single file cannot be used as an artifact due to errors in init container (issue #984) (@mthx)
- Regression when S3 secret has trailing newline (issue #981)
* Documentation fixes (@gsf, @davidB, @dtaniwaki)
v2.2.0: tag_name: v2.2.0
body: ## 2.2.0 (2018-08-30)

### Notes about upgrading from v2.1

* The `argo install` and `argo uninstall` commands have been removed from the CLI. Instead, plain
kubernetes manifests are provided to be installed using `kubectl apply`, or downstreamed into other
tools (e.g. helm chart, ksonnet prototype, kustomize, etc...).
* In 2.1, argo would install into the kube-system namespace by default. The new install instructions
have been updated to install into a different namespace, `argo`. In order to move to the recommended
installation location, you should delete the v2.1 resources from kube-system before applying the
new manifests to the `argo` namespace.

    The following commands migrates the workflow-controller-configmap from the `kube-system` to the
`argo` namespace, and deletes all argo resources from the `kube-system` namespace. Note that this
will delete the argo-ui service, resulting in the LoadBalancer being deleted (if created).

    ```
    kubectl get cm workflow-controller-configmap -o yaml -n kube-system --export | kubectl apply -n argo -f -
    kubectl delete -n kube-system cm workflow-controller-configmap
    kubectl delete -n kube-system deploy workflow-controller argo-ui
    kubectl delete -n kube-system sa argo argo-ui
    kubectl delete -n kube-system svc argo-ui
    ```

* In 2.1, the argoexec sidecar image was configured in the workflow-controller-configmap. This is
now configured using a new `--executor-image` flag in the `workflow-controller` deployment. This is
the preferred way to configure the executor image, since upgrades can now be performed without
changing the workflow-controller configmap. The executorImage setting in the config is deprecated
and may be removed/ignored in a future release.

### Changelog since v2.1
+ Support withItems/withParam and parameter aggregation with DAG templates (issue #801)
+ Add ability to aggregate and reference output parameters expanded by loops (issue #861)
+ Support for sophisticated expressions in `when` conditionals (issue #860)
+ Introduce Pending node state to highlight failures when starting workflow pods (issue #525)
+ Support additional container runtimes through kubelet executor (issue #902) (@JulienBalestra)
+ Introduce archive strategies with ability to disable tar.gz archiving (issue #784)
+ Introduce `keyFormat` workflow config to enable flexibility in archive location path (issue #953)
+ Introduce `argo watch` command to watch live workflows from terminal (issue #969)
+ Add ability to archive container logs to the artifact repository (issue #454)
+ Support for workflow level timeouts (issue #848)
+ Introduce `argo terminate` to terminate a workflow without deleting it (issue #527)
+ Introduce `withSequence` to iterate a range of numbers in a loop (issue #945)
+ Github login using go-git, with support for ssh keys (issue #793) (@andreimc)
+ Add TTLSecondsAfterFinished field and controller to garbage collect completed workflows (issue #911)
+ Add `argo delete --older` flag to delete completed workflows older than a duration
+ Support referencing of global workflow artifacts (issue #900)
+ Support submission of workflows from json files (issue #926)
+ Support submission of workflows from stdin (issue #926)
+ Prometheus metrics and telemetry (issue #896) (@bbc88ks)
+ Detect and fail upon unknown fields during argo submit & lint (issue #892)
+ Allow scaling of workflow and pod workers via controller CLI flags (issue #962)
+ Allow supplying of parameters from a file during `argo submit` (issue #796) (@vosmith)
+ [UI] UI support/spinning clock for pending pods (@EdanSneh)
* Remove installer/uninstaller (issue #928)
* Update golang compiler to v1.10.3
* Update k8s dependencies to v1.10 and client-go to v7.0
* Update argo-cluster-role to work with OpenShift
- Fix issue where retryStrategy with DAGs fails, even if the step passes after retries (issue #885)
- Fix issue where sidecars and daemons were not reliably killed (issue #879)
- Redundant verifyResolvedVariables check in controller precluded the ability to use {{ }} in other circumstances
- Fix issue where retryStrategy with DAGs fails, even if the step passes after retries (issue #885)
- Fix outbound node metadata with steps templates causing incorrect edges to be rendered in UI
- Fix outbound node metadata with retry nodes causing disconnected nodes to be rendered in UI (issue #880)
- Error workflows which hit k8s/etcd 1M resource size limit (issue #913)
- [UI] Fixed 'X' hiding under page (@EdanSneh)
- [UI] Beautified resource template. Yaml will now indent 2 spaces instead of one space
v2.1.1: tag_name: v2.1.1
body: ### Changelog since v2.1.0

- Switch to an UnstructuredInformer to guard controller against malformed workflow manifests (issue #632)
- Fix issue where suspend templates were not properly being connected to their children (issue #869)
- Fix issue where a failed step in a template with parallelism would not complete (issue #868)
- Fix issue where `argo list` age column maxed out at 1d (issue #857)
- Fix issue where volumes were not supported in script templates (issue #852)
- Fix implementation of DAG task targets (issue #865)
- Retrying failed steps templates could potentially result in disconnected children
- [UI] Fix crash while rendering failed workflow with exit handler (issue #815)
- [UI] Fix locating outbound nodes for skipped node
- [UI] Fix JS crash caused by inconsistent workflow state
- [UI] Fix blank help page when using browser navigation
- [UI] API server can filter workflows managed by specific workflow controller (@kzadorozhny)
- [UI] Restore support for accessing the UI using `kubectl proxy` (@mthx)
- [UI] Pass the namespace when querying the logs (issue #777) (@mthx)
- [UI] Improve workflow sorting (issue #866)
+ Add windows support for Argo CLI (@cuericlee)
* Documentation fixes (@mthx, @bodepd)

v2.1.0: tag_name: v2.1.0
body: ### Changelog since v2.0
+ Support for DAG based definition of workflows
+ Add `spec.parallelism` field to limit concurrent pod execution at a workflow level
+ Add `template.parallelism` field to limit concurrent pod execution at a template level
+ Add `argo suspend`, `argo resume` to suspend and resume workflows
+ Add `argo resubmit` to resubmit a failed workflow
+ Add `argo retry` to retry a failed workflow with the same name
+ Add `--instanceid` flag to `argo submit` command to submit workflow with controller's specific instance id label
+ Add `--name` and `--generate-name` to override metadata.name and/or metadata.generateName during submission
+ Add `argo logs -w` to support rendering combined workflow logs
+ Experimental support for resubmitting workflows with memoized steps
+ Improved parameters and output validation
+ UI migrated to React
+ Workflow details page redesigned: added DAG view support, added workflow timeline tab.
+ Workflow details page enhancements: added sidecar containers details; workflow exist handler is available on DAG diagram and timeline view.
+ Support for pod tolerations (@discordianfish)
+ Make `workflow.namespace` available as a global variable (@vreon)
+ Support for exported global output parameters and artifacts
+ Trim a trailing newline from path-based output parameters
+ Add ability to reference global parameters in spec level fields
+ Make {{pod.name}} available as a parameter in pod templates
+ Argo CLI shell completion support (@mthx)
+ Add ability to pass pod annotations and labels at the template levels (@wookasz)
+ Add ability to use IAM role from EC2 instance for AWS S3 credentials (@wookasz)
* Abstract the container runtime as an interface to support mocking and future runtimes
* Documentation and examples fixes (@IronPan, @dmonakhov, @bodepd, @mthx, @javierbq, @sebdoido)
* Rewrite the installer
* install & uninstall commands use --namespace flag (@Fitzse)
* Trim spaces from aws keys (@bodepd)
* Update base image to debian 9.4 (from 9.1) (@mthx)
- Global parameters were not referenceable from artifact arguments
- spec.arguments are optionally supplied during linting
- Fix for CLI not rendering edges correctly for nested workflows
- Fix template.parallelism limiting parallelism of entire workflow
- Fix artifact saving to artifactory (@dougsc)
- Use socket type for hostPath to mount docker.sock (@DSchmidtDev)
- Fix rbac resource versions in install (@dvavili)
- Fix input parameters on a steps template prevent daemon pods from terminating (@adampearse)
- Fix locating outbound nodes for skipped node (issue #825)
- Avoid `println` which outputs to stderr (@mthx)
- Fix issue where daemoned steps were not terminated properly in DAG templates
v2.1.0-beta2: tag_name: v2.1.0-beta2
body: - `argo install`does not install argo ui deployment
v2.1.0-beta1: tag_name: v2.1.0-beta1
body: + Support for exported global output parameters and artifacts
+ Introduce `argo retry` to retry a failed workflow with the same name
+ Trim a trailing newline from path-based output parameters
+ Add ability to reference global parameters in spec level fields
+ Make {{pod.name}} available as a parameter in pod templates
+ Argo CLI shell completion support (@mthx)
+ Support rendering combined workflow logs using `argo logs -w`
+ Add ability to pass pod annotations and labels at the template levels (@wookasz)
+ Add ability to use IAM role from EC2 instance for AWS S3 credentials (@wookasz)
* Rewrite the installer
* Abstract the container runtime as an interface to support mocking and future runtimes
* Documentation and examples fixes (@IronPan, @dmonakhov)
- Global parameters were not referenceable from artifact arguments
- spec.arguments are optionally supplied during linting
- Fix for CLI not rendering edges correctly for nested workflows
- Fix template.parallelism limiting parallelism of entire workflow
- Fix artifact saving to artifactory (@dougsc)
- Use socket type for hostPath to mount docker.sock (@DSchmidtDev)
v2.1.0-alpha1: tag_name: v2.1.0-alpha1
body: + Support for DAG based definition of workflows
+ Add `spec.parallelism` field to limit concurrent pod execution at a workflow level
+ Add `template.parallelism` field to limit concurrent pod execution at a template level
+ Add `argo suspend`, `argo resume` to suspend and resume workflows
+ Add `argo resubmit` to resubmit a failed workflow
+ Add `instanceid` parameter support to `argo submit` command to submit workflow with controller's specific instance id label
+ Experimental support for resubmitting workflows with memoized steps
+ Improved parameters and output validation
+ UI migrated to React.
+ Workflow details page redesigned: added DAG view support, added workflow timeline tab.
+ Workflow details page enhancements: added sidecar containers details; workflow exist handler is available on DAG diagram and timeline view.
+ Support for pod tolerations (@discordianfish)
+ Make `workflow.namespace` available as a global variable (@vreon)
* Trim spaces from aws keys (@bodepd)
* Documentation fixes (@bodepd)
- Fix rbac resource versions in install (@dvavili)
v2.0.0: tag_name: v2.0.0
body: GA Release for Argo v2.0.0

+ Add ability to specify affinity rules at both the workflow and template level
+ Add ability to specify imagePullSecrets in the workflow.spec
+ Generate OpenAPI models for the workflow spec
+ Support setting the UI base url
- Fix issue preventing the referencing of artifacts in a container with retries
- Fix issue preventing the use of volumes in a sidecar
v2.0.0-beta1: tag_name: v2.0.0-beta1
body: + Use and install minimal RBAC ClusterRoles for workflow-controller and argo-ui deployments
+ Introduce `retryStrategy` field to control set retries for failed/errored containers
+ Introduce `raw` input artifacts
+ Add `argo install --dry-run` to print Kubernetes YAML manifests without installing
+ Add `argo list` sorts by running pods, then by completion time
+ Add `argo list -o wide` to show pod counts and parameter information
+ Add `argo list --running --completed --status` workflow filtering
+ Add `argo list --since DURATION` to filter workflows based on a time duration
+ Add ability for steps and resource templates to have outputs parameters
+ OpenID Connect auth support (@mthx)
* Increase controller rate limits for much faster processing of highly parallized workflows
* Executor sidecar hardening (retrying of Kube API queries)
* Switch to k8s-codegen generated workflow client and informer
* {{workflow.uuid}} variable corrected to {{workflow.uid}}
* Documentation fixes (@reasonthearchitect, @mtx)
- Prevent a potential k8s scheduler panic from incomplete setting of pod ownership reference
- Fix issues in controller operating on stale workflow state, and incorrectly identifying deleted pods
v2.0.0-alpha3: tag_name: v2.0.0-alpha3
body: + Introduce the "resource" template type for performing CRUD operations on k8s resources
+ Support for workflow exit handlers
+ Support artifactory as an artifact repository
+ Add ability to timeout a container/script using activeDeadlineSeconds
+ Add CLI command and flags to wait for a workflow to complete `argo wait`/`argo submit --wait`
+ Add ability to run multiple workflow controllers operating on separate instance ids
+ Add ability to run workflows using a specified service account
* Scalability improvements for highly parallelized workflows
* Improved validation of volume mounts with input artifacts
* Argo UI bug fixes and improvements
- Recover from unexpected panics when operating on workflows
- Fix a controller panic when using a script templates with input artifacts
- Fix issue preventing ability to pass JSON as a command line argument
v2.0.0-alpha2: tag_name: v2.0.0-alpha2
body: Argo release v2.0.0-alpha2 for KubeCon 2017.
v2.0.0-alpha1: tag_name: v2.0.0-alpha1
body: Argo v2.0.0-alpha1 demo for Bay Area Kubernetes meet-up