github.com/argoproj/argo-cd/v2@v2.10.9/CHANGELOG.md (about)

     1  # Changelog
     2  
     3  ## v2.4.8 (2022-07-29)
     4  
     5  ### Bug fixes
     6  
     7  - feat: support application level extensions (#9923)
     8  - feat: support multiple extensions per resource group/kind (#9834)
     9  - fix: extensions is not loading for ConfigMap/Pods (#10010)
    10  - fix: upgrade moment from 2.29.2 to 2.29.3 (#9330)
    11  - fix: skip redirect url validation when it's the base href (#10058) (#10116)
    12  - fix: avoid CVE-2022-28948 (#10093)
    13  - fix: Set HOST_ARCH for yarn build from platform (#10018)
    14  
    15  ### Other changes
    16  
    17  - chore(deps): bump moment from 2.29.3 to 2.29.4 in /ui (#9897)
    18  - docs: add OpenSSH breaking change notes (#10104)
    19  - chore: update parse-url (#10101)
    20  - docs: add api field example in the appset security doc (#10087)
    21  - chore: update redis to 7.0.4 avoid CVE-2022-30065 (#10059)
    22  - docs: add argocd-server grpc metric usage (#10007)
    23  - chore: upgrade Dex to 2.32.0 (#10036) (#10042)
    24  - chore: update redis to avoid CVE-2022-2097 (#10031)
    25  - chore: update haproxy to 2.0.29 for redis-ha (#10045)
    26  
    27  ## v2.4.7 (2022-07-18)
    28  
    29  ### Bug fixes
    30  
    31  fix: Support files in argocd.argoproj.io/manifest-generate-paths annotation (#9908)
    32  fix: terminal websocket write lock to avoid races (#10011)
    33  fix: updated all a tags to Link tags in app summary (#9777)
    34  fix: e2e test to use func from clusterauth instead creating one with old logic (#9989)
    35  fix: add missing download CLI tool URL response for ppc64le, s390x (#9983)
    36  
    37  ### Other
    38  
    39  chore: upgrade parse-url to avoid SNYK-JS-PARSEURL-2936249 (#9826)
    40  docs: use quotes to emphasize that ConfigMap value is a string (#9995)
    41  docs: document directory app include/exclude fields (#9997)
    42  docs: simplify Docker toolchain docs (#9966) (#10006)
    43  docs: supported versions (#9876)
    44  
    45  ## v2.4.6 (2022-07-12)
    46  
    47  ### Features
    48  
    49  * feat: Treat connection reset as a retryable error (#9739)
    50  
    51  ### Bug fixes
    52  
    53  * fix: 'unexpected reserved bits' breaking web terminal (#9605) (#9895)
    54  * fix: argocd login just hangs on 2.4.0 #9679 (#9935)
    55  * fix: CMP manifest generation fails with ENHANCE_YOUR_CALM if over 40s (#9922)
    56  * fix: NotAfter is not set when ValidFor is set (#9911)
    57  * fix: add missing download CLI tool link for ppc64le, s390x (#9649)
    58  * fix: Check tracking annotation for being self-referencing (#9791)
    59  * fix: Make change of tracking method work at runtime (#9820)
    60  * fix: argo-cd git submodule is using SSH auth instead of HTTPs (#3118) (#9821)
    61  
    62  ### Other
    63  
    64  * docs: fix typo in Generators-Git.md (#9949)
    65  * docs: add terminal documentation (#9948)
    66  * test: Use dedicated multi-arch workloads in e2e tests (#9921)
    67  * docs: Adding blank line so list is formatted correctly (#9880)
    68  * docs: small fix for plugin stream filtering (#9871)
    69  * docs: Document the possibility of rendering Helm charts with Kustomize (#9841)
    70  * docs: getting started notes on self-signed cert (#9429) (#9784)
    71  * test: check for error messages from CI env (#9953)
    72  
    73  ## v2.4.5 (2022-07-12)
    74  
    75  ### Security fixes
    76  
    77  * HIGH: Certificate verification is skipped for connections to OIDC providers ([GHSA-7943-82jg-wmw5](https://github.com/argoproj/argo-cd/security/advisories/GHSA-7943-82jg-wmw5))
    78  * LOW: A leaked API server encryption key can allow XSS for SSO users ([GHSA-pmjg-52h9-72qv](https://github.com/argoproj/argo-cd/security/advisories/GHSA-pmjg-52h9-72qv))
    79  
    80  ### Potentially-breaking changes
    81  
    82  The fix for GHSA-7943-82jg-wmw5 enables TLS certificate validation by default for connections to OIDC providers. If
    83  connections to your OIDC provider fails validation, SSO will be broken for your Argo CD instance. You should test 2.4.5
    84  before upgrading it to production. From the new documentation:
    85  
    86  > By default, all connections made by the API server to OIDC providers (either external providers or the bundled Dex
    87  > instance) must pass certificate validation. These connections occur when getting the OIDC provider's well-known
    88  > configuration, when getting the OIDC provider's keys, and  when exchanging an authorization code or verifying an ID
    89  > token as part of an OIDC login flow.
    90  >
    91  > Disabling certificate verification might make sense if:
    92  > * You are using the bundled Dex instance **and** your Argo CD instance has TLS configured with a self-signed certificate
    93      >   **and** you understand and accept the risks of skipping OIDC provider cert verification.
    94  > * You are using an external OIDC provider **and** that provider uses an invalid certificate **and** you cannot solve
    95      >   the problem by setting `oidcConfig.rootCA` **and** you understand and accept the risks of skipping OIDC provider cert
    96      >   verification.
    97  >
    98  > If either of those two applies, then you can disable OIDC provider certificate verification by setting
    99  > `oidc.tls.insecure.skip.verify` to `"true"` in the `argocd-cm` ConfigMap.
   100  
   101  ### Bug fixes
   102  
   103  * fix: webhook typo in case of error in GetManifests (#9671)
   104  
   105  ## v2.4.4 (2022-07-07)
   106  
   107  ### Bug fixes
   108  
   109  - fix: missing path segments for git file generator (#9839)
   110  - fix: make sure api server informer does not stop after setting change (#9842)
   111  - fix: support resource logs and exec (#9833)
   112  - fix: configurable CMP tar exclusions (#9675) (#9789)
   113  - fix: prune any deleted refs before fetching (#9504)
   114  
   115  ### Other
   116  
   117  - test: Remove circular symlinks from testdata (#9886)
   118  - docs: custom secret must be labeled (#9835)
   119  - docs: update archlinux install with official package (#9718)
   120  - docs: explain rightmost git generator path parameter behavior (#9799)
   121  
   122  ## v2.4.3 (2022-06-27)
   123  
   124  ### Bug fixes
   125  
   126  - fix: respect OIDC providers' supported token signing algorithms (#9433) (#9761)
   127  - fix websockets for terminal not working on subPath (#9795)
   128  - fix: avoid closing and re-opening port of api server settings change (#9778)
   129  - fix: [ArgoCD] Fixing webhook typo in case of error in GetManifests (#9671)
   130  - fix: overrides should not appear in the manifest cache key (#9601)
   131  
   132  ## v2.4.2 (2022-06-21)
   133  
   134  ### Bug fixes
   135  
   136  * fix: project filter (#9651) (#9709)
   137  * fix: broken symlink in Dockerfile (#9674)
   138  * fix: updated baseHRefRegex to perform lazy match (#9724)
   139  * fix: updated config file permission requirements for windows (#9666)
   140  
   141  ### Other
   142  
   143  * docs: Update sync-options.md (#9687)
   144  * test/remote: Allow override of base image (#9734)
   145  
   146  ## v2.4.1 (2022-06-21)
   147  
   148  ### Security fixes
   149  
   150  * CRITICAL: External URLs for Deployments can include javascript ([GHSA-h4w9-6x78-8vrj](https://github.com/argoproj/argo-cd/security/advisories/GHSA-h4w9-6x78-8vrj))
   151  * HIGH: Insecure entropy in PKCE/Oauth2/OIDC params ([GHSA-2m7h-86qq-fp4v](https://github.com/argoproj/argo-cd/security/advisories/GHSA-2m7h-86qq-fp4v))
   152  * MODERATE: DoS through large directory app manifest files ([GHSA-jhqp-vf4w-rpwq](https://github.com/argoproj/argo-cd/security/advisories/GHSA-jhqp-vf4w-rpwq))
   153  * MODERATE: Symlink following allows leaking out-of-bounds YAML files from Argo CD repo-server ([GHSA-q4w5-4gq2-98vm](https://github.com/argoproj/argo-cd/security/advisories/GHSA-q4w5-4gq2-98vm))
   154  
   155  ### Potentially-breaking changes
   156  
   157  From the [GHSA-2m7h-86qq-fp4v](https://github.com/argoproj/argo-cd/security/advisories/GHSA-2m7h-86qq-fp4v) description:
   158  
   159  > The patch introduces a new `reposerver.max.combined.directory.manifests.size` config parameter, which you should tune before upgrading in production. It caps the maximum total file size of .yaml/.yml/.json files in directory-type (raw manifest) Applications. The default max is 10M per Application. This max is designed to keep any single app from consuming more than 3G of memory in the repo-server (manifests consume more space in memory than on disk). The 300x ratio assumes a maliciously-crafted manifest file. If you only want to protect against accidental excessive memory use, it is probably safe to use a smaller ratio.
   160  >
   161  > If your organization uses directory-type Applications with very many manifests or very large manifests then check the size of those manifests and tune the config parameter before deploying this change to production. When testing, make sure to do a "hard refresh" in either the CLI or UI to test your directory-type App. That will make sure you're using the new max logic instead of relying on cached manifest responses from Redis.
   162  
   163  ### Other
   164  
   165  * test: directory app manifest generation (#9503)
   166  * chore: Implement tests to validate aws auth retry (#9627)
   167  * chore: Implement a retry in aws auth command (#9618)
   168  * test: Remove temp directories from repo server tests (#9501)
   169  * test: Make context tests idempodent (#9502)
   170  * test: fix plugin var test for OSX (#9590)
   171  * docs: Document how to deploy from the root of the git repository (#9632)
   172  * docs: added environment variables documentation (#8680)
   173  
   174  ## v2.4.0 (2022-06-10)
   175  
   176  ### Web Terminal In Argo CD UI
   177  
   178  Feature enables engineers to start a shell in the running application container without leaving the web interface. Just find the required Kubernetes
   179  Pod using the Application Details page, click on it and select the Terminal tab. The shell starts automatically and enables you to execute the required
   180  commands, and helps to troubleshoot the application state.
   181  
   182  ### Access Control For Pod Logs & Web Terminal
   183  
   184  Argo CD is used to manage the critical infrastructure of multiple organizations, which makes security the top priority of the project. We've listened to
   185  your feedback and introduced additional access control settings that control access to Kubernetes Pod logs and the new Web Terminal feature.
   186  
   187  #### Pod Logs UI
   188  
   189  Since 2.4.9, the LOGS tab in pod view is visible in the UI only for users with explicit allow get logs policy.
   190  
   191  #### Known pod logs UI issue prior to 2.4.9
   192  
   193  Upon pressing the "LOGS" tab in pod view by users who don't have an explicit allow get logs policy, the red "unable to load data: Internal error" is received in the bottom of the screen, and "Failed to load data, please try again" is displayed.
   194  
   195  ### OpenTelemetry Tracing Integration
   196  
   197  The new feature allows emitting richer telemetry data that might make identifying performance bottlenecks easier. The new feature is available for argocd-server
   198  and argocd-repo-server components and can be enabled using the --otlp-address flag.
   199  
   200  ### Power PC and IBM Z Support
   201  
   202  The list of supported architectures has been expanded, and now includes IBM Z (s390x) and PowerPC (ppc64le). Starting with the v2.4 release the official quay.io
   203  repository is going to have images for amd64, arm64, ppc64le, and s390x architectures.
   204  
   205  ### Other Notable Changes
   206  
   207  Overall v2.4 release includes more than 300 hundred commits from nearly 90 contributors. Here is a short sample of the contributions:
   208  
   209  * Enforce the deployment to remote clusters only
   210  * Native support of GCP authentication for GKE
   211  * Secured Redis connection
   212  * ApplicationSet Gitea support
   213  
   214  ## v2.3.7 (2022-07-29)
   215  
   216  ### Notes
   217  
   218  This is mainly a security related release and updates compatibility with Kubernetes 1.24.
   219  
   220  **Attention:** The base image for 2.3.x reached end-of-life on July 14, 2022. This release upgraded the base image to Ubuntu 22.04 LTS. The change should have no effect on the majority of users. But if any of your git providers only supports now-deprecated key hash algorithms, then Application syncing might break. See the [2.2-to-2.3 upgrade notes](https://argo-cd.readthedocs.io/en/latest/operator-manual/upgrading/2.2-2.3/#support-for-private-repo-ssh-keys-using-the-sha-1-signature-hash-algorithm-is-removed-in-237) for details and workaround instructions.
   221  
   222  ### Bug fixes
   223  
   224  - fix: skip redirect url validation when it's the base href (#10058) (#10116)
   225  - fix: upgrade moment from 2.29.2 to 2.29.3 (#9330)
   226  - fix: avoid CVE-2022-28948 (#10093)
   227  - fix: use serviceaccount name instead of struct (#9614)
   228  - fix: create serviceaccount token for v1.24 clusters (#9546)
   229  
   230  ### Other changes
   231  
   232  - test: Remove cluster e2e tests not intended for release-2.3
   233  - test: Remove circular symlinks from testdata (#9886)
   234  - chore(deps): bump moment from 2.29.3 to 2.29.4 in /ui (#9897)
   235  - chore: upgrade moment to latest version to fix CVE (#9005)
   236  - chore: move dependencies to dev dependencies (#8541)
   237  - docs: add OpenSSH breaking change notes (#10104)
   238  - chore: update parse-url (#10101)
   239  - chore: upgrade base image to 22.04 (#10103)
   240  - docs: simplify Docker toolchain docs (#9966) (#10006)
   241  - chore: update redis to 6.2.7 avoid CVE-2022-30065/CVE-2022-2097 (#10062)
   242  - chore: upgrade Dex to 2.32.0 (#10036) (#10042)
   243  - chore: update haproxy to 2.0.29 for redis-ha (#10045)
   244  - test: check for error messages from CI env (#9953)
   245  
   246  ## v2.3.6 (2022-07-12)
   247  
   248  ### Security fixes
   249  
   250  * HIGH: Certificate verification is skipped for connections to OIDC providers ([GHSA-7943-82jg-wmw5](https://github.com/argoproj/argo-cd/security/advisories/GHSA-7943-82jg-wmw5))
   251  * LOW: A leaked API server encryption key can allow XSS for SSO users ([GHSA-pmjg-52h9-72qv](https://github.com/argoproj/argo-cd/security/advisories/GHSA-pmjg-52h9-72qv))
   252  
   253  ### Potentially-breaking changes
   254  
   255  The fix for GHSA-7943-82jg-wmw5 enables TLS certificate validation by default for connections to OIDC providers. If
   256  connections to your OIDC provider fails validation, SSO will be broken for your Argo CD instance. You should test 2.3.6
   257  before upgrading it to production. From the new documentation:
   258  
   259  > By default, all connections made by the API server to OIDC providers (either external providers or the bundled Dex
   260  > instance) must pass certificate validation. These connections occur when getting the OIDC provider's well-known
   261  > configuration, when getting the OIDC provider's keys, and  when exchanging an authorization code or verifying an ID
   262  > token as part of an OIDC login flow.
   263  >
   264  > Disabling certificate verification might make sense if:
   265  > * You are using the bundled Dex instance **and** your Argo CD instance has TLS configured with a self-signed certificate
   266      >   **and** you understand and accept the risks of skipping OIDC provider cert verification.
   267  > * You are using an external OIDC provider **and** that provider uses an invalid certificate **and** you cannot solve
   268      >   the problem by setting `oidcConfig.rootCA` **and** you understand and accept the risks of skipping OIDC provider cert
   269      >   verification.
   270  >
   271  > If either of those two applies, then you can disable OIDC provider certificate verification by setting
   272  > `oidc.tls.insecure.skip.verify` to `"true"` in the `argocd-cm` ConfigMap.
   273  
   274  ### Bug fixes
   275  
   276  * fix: webhook typo in case of error in GetManifests (#9671)
   277  
   278  ## v2.3.5 (2022-06-21)
   279  
   280  ### Security fixes
   281  
   282  * CRITICAL: External URLs for Deployments can include javascript ([GHSA-h4w9-6x78-8vrj](https://github.com/argoproj/argo-cd/security/advisories/GHSA-h4w9-6x78-8vrj))
   283  * HIGH: Insecure entropy in PKCE/Oauth2/OIDC params ([GHSA-2m7h-86qq-fp4v](https://github.com/argoproj/argo-cd/security/advisories/GHSA-2m7h-86qq-fp4v))
   284  * MODERATE: DoS through large directory app manifest files ([GHSA-jhqp-vf4w-rpwq](https://github.com/argoproj/argo-cd/security/advisories/GHSA-jhqp-vf4w-rpwq))
   285  * MODERATE: Symlink following allows leaking out-of-bounds YAML files from Argo CD repo-server ([GHSA-q4w5-4gq2-98vm](https://github.com/argoproj/argo-cd/security/advisories/GHSA-q4w5-4gq2-98vm))
   286  
   287  ### Potentially-breaking changes
   288  
   289  From the [GHSA-2m7h-86qq-fp4v](https://github.com/argoproj/argo-cd/security/advisories/GHSA-2m7h-86qq-fp4v) description:
   290  
   291  > The patch introduces a new `reposerver.max.combined.directory.manifests.size` config parameter, which you should tune before upgrading in production. It caps the maximum total file size of .yaml/.yml/.json files in directory-type (raw manifest) Applications. The default max is 10M per Application. This max is designed to keep any single app from consuming more than 3G of memory in the repo-server (manifests consume more space in memory than on disk). The 300x ratio assumes a maliciously-crafted manifest file. If you only want to protect against accidental excessive memory use, it is probably safe to use a smaller ratio.
   292  >
   293  > If your organization uses directory-type Applications with very many manifests or very large manifests then check the size of those manifests and tune the config parameter before deploying this change to production. When testing, make sure to do a "hard refresh" in either the CLI or UI to test your directory-type App. That will make sure you're using the new max logic instead of relying on cached manifest responses from Redis.
   294  
   295  ### Bug fixes
   296  
   297  * fix: missing Helm params (#9565) (#9566)
   298  
   299  ### Other
   300  
   301  * test: directory app manifest generation (#9503)
   302  * chore: eliminate go-mpatch dependency (#9045)
   303  * chore: Make unit tests run on platforms other than amd64 (#8995)
   304  * chore: remove obsolete repo-server unit test (#9559)
   305  * chore: update golangci-lint (#8988)
   306  * fix: test race (#9469)
   307  * chore: upgrade golangci-lint to v1.46.2 (#9448)
   308  * test: fix ErrorContains (#9445)
   309  
   310  ## v2.3.4 (2022-05-18)
   311  
   312  ### Security fixes
   313  
   314  - CRITICAL: Argo CD will trust invalid JWT claims if anonymous access is enabled (https://github.com/argoproj/argo-cd/security/advisories/GHSA-r642-gv9p-2wjj)
   315  - LOW: Login screen allows message spoofing if SSO is enabled (https://github.com/argoproj/argo-cd/security/advisories/GHSA-xmg8-99r8-jc2j)
   316  - MODERATE: Symlink following allows leaking out-of-bound manifests and JSON files from Argo CD repo-server (https://github.com/argoproj/argo-cd/security/advisories/GHSA-6gcg-hp2x-q54h)
   317  
   318  ### Bug Fixes
   319  
   320  - fix: Fix docs build error (#8895)
   321  - fix: fix broken monaco editor collapse icons (#8709)
   322  - chore: upgrade to go 1.17.8 (#8866) (#9004)
   323  - fix: allow cli/ui to follow logs (#8987) (#9065)
   324  
   325  ## v2.3.3 (2022-03-29)
   326  
   327  - fix: prevent excessive repo-server disk usage for large repos (#8845) (#8897)
   328  - fix: Set QPS and burst rate for resource ops client (#8915)
   329  
   330  ## v2.3.2 (2022-03-22)
   331  
   332  - fix: application resource APIs must enforce project restrictions
   333  
   334  ## v2.3.1 (2022-03-10)
   335  
   336  - fix: Retry checkbox unchecked unexpectedly; Sync up with YAML (#8682) (#8720)
   337  - chore: Bump stable version of application set addon (#8744)
   338  - fix: correct jsonnet paths resolution (#8721)
   339  - fix(ui): Applications page incorrectly resets to tiles view. Fixes #8702 (#8718)
   340  
   341  ## v2.3.0 (2022-03-05)
   342  
   343  ### Argo CD ApplicationSet and Notifications are now part of Argo CD
   344  
   345  Two popular [Argoproj Labs](https://github.com/argoproj-labs) projects [Argo CD ApplicationSet](https://github.com/argoproj/applicationset) and
   346  [Argo CD Notifications](https://github.com/argoproj-labs/argocd-notifications) are now part of Argo CD! The default Argo CD installation manifests now
   347  bundle both projects out of the box. Going forward you can expect more tightened integration of these projects into Argo CD.
   348  
   349  ### New sync and diff strategies
   350  
   351  Users can now configure the Application resource to instruct Argo CD to consider the ignore difference setup during the sync process.
   352  In order to do so, add the new sync option RespectIgnoreDifferences=true in the Application resource. Once the sync option is added,
   353  Argo CD won't change ignored fields during the syncing process.
   354  
   355  Configuring ignored fields is also easier now. Instead of listing fields one by one users can now leverage the 
   356  managedFields metadata to instruct Argo CD about trusted managers and automatically ignore any fields owned by them. A new diff customization
   357  (managedFieldsManagers) is now available allowing users to specify managers the application should trust and to ignore all fields owned by those managers.
   358  Read more about these changes at [New sync and diff strategies in ArgoCD](https://blog.argoproj.io/new-sync-and-diff-strategies-in-argocd-44195d3f8b8c) blog post.
   359  
   360  ### ARM Images
   361  
   362  An officially supported ARM 64 image is now available. Enjoy running Argo CD on your Raspberry Pi! Additionally, the image size was reduced by nearly ~50%
   363  and is only 200MB now. The ARM version of `argocd` CLI is also available and published as a Github release artifact.
   364  
   365  ### Compact Tree View And Click Application Navigation
   366  
   367  The application details page now supports compact application resources tree visualization. Using the "Group Nodes" button, you can collapse the similar resources
   368  into a single group node to remove the clutter and make it easier to understand the state of application resources. You still can get detailed information about the collapsed resources by clicking on the group node. The list of collapsed resources will be available in a sliding panel. Compact resource tree is still too big?
   369  You can use the zoom in and zoom out feature to make it smaller - or even larger!
   370  
   371  You no longer need to move back and forth between the application details page and the application list page. Instead you can navigate directly to the required application by clicking the search icon in the application details page title.
   372  
   373  ### Upgraded Config Management Tools
   374  
   375  Both bundled Helm and Kustomize binaries have been upgraded to the latest versions. Kustomize has been upgraded from 4.2.0 to 4.4.1 and Helm has been upgraded from 3.7.1 to 3.8.0.
   376  
   377  ### Bug Fixes and Performance Enhancements
   378  
   379  * Config management tools enhancements:
   380  * The skipCrds flag and ability to ignore missing values files for Helm (#8012, #8003)
   381  * Additional environment variables for Kustomize (#8096)
   382  * Argo CD CLI follows the XDG Base directory standard (#7638)
   383  * Redis is no longer used during SSO login (#8241)
   384  
   385  
   386  ### Features
   387  
   388  - feat: Add app list and details page views to navigation history (#7776) (#7937)
   389  - feat: Add skipCrds flag for helm charts (#8012)
   390  - feat: Add visual indicator for newly created pods (#8006)
   391  - feat: Added a new Helm option ignoreMissingValueFiles (#7767) (#8003)
   392  - feat: Allow configuring system wide ignore differences for all resources (#8224)
   393  - feat: Allow escaping dollar in Envsubst (#7961)
   394  - feat: Allow external links on Application (#3487) (#8231)
   395  - feat: Allow selecting application on detail page (#8176)
   396  - feat: Bundle applicationset-controller with argocd (#8148)
   397  - feat: Enable specifying root ca for oidc (#6712)
   398  - feat: Expose ARGOCD_APP_NAME to the `kustomize build` command (#8096)
   399  - feat: Ignore differences owned by trusted managers from managedFields (#7869)
   400  - feat: New sync option to use ignore diff configs during sync (#8078)
   401  - feat: Provide address flag for admin dashboard command (#8095)
   402  - feat: Store "Group Nodes" button state in application details preferences (#8036)
   403  - feat: Support specifying cluster by name in addition to API server URL in Cluster API (#8077)
   404  - feat: Support XDG Base directory standard (#7638) (#7791)
   405  - feat: Use encrypted cookie to store OAuth2 state nonce (instead of redis) (#8241)
   406  - feat: Build images on PR and conditionally build arm64 image on push (#8108)
   407  
   408  ### Bug Fixes
   409  
   410  - fix: Add "Restarting MinIO" status to MiniO Tenant health check (#8191)
   411  - fix: Add all resources in list view (#7295)
   412  - fix: Adding pagination to grouped nodes sliding panel#7837 (#7915)
   413  - fix: Allow all resources to add external links (#7923)
   414  - fix: Always call ValidateDestination (#7976)
   415  - fix: Application exist panic when execute api call (#8188)
   416  - fix: Application-icons-alignment (#8054)
   417  - fix: Controller panics if resource manifest has incorrect annotation (#8022)
   418  - fix: Correctly handle project field during partial cluster update (#7994)
   419  - fix: Default value for retry validation #8055 (#8064)
   420  - fix: Fix a possible crash when parsing RBAC (#8165)
   421  - fix: Grouped node list missing resources on Compact resources view #8014 (#8018)
   422  - fix: Issue with headless installation (#7958)
   423  - fix: Issue with project scoped resources (#8048)
   424  - fix: Kubernetes labels normalization for Prometheus  (#7925)
   425  - fix: Nested Refresh dropdown does not work on Application Details page #1524 (#7950)
   426  - fix: Network line colors and menu icon alignment (#8059)
   427  - fix: Opening app details shows UI error on some apps (#8016) (#8019)
   428  - fix: Parse to correct uint32 type (#8177)
   429  - fix: Prevent possible nil-pointer deref in normalizer (#8185)
   430  - fix: Prevent possible out-of-bounds access when loading policies (#8186)
   431  - fix: Provide a semantic version parsed version for KUBE_VERSION (#8250)
   432  - fix: Refreshing label toast (#7979)
   433  - fix: Resource details page crashes when resource is not deployed and hide managed fields is selected (#7971)
   434  - fix: Retry disabled text (#8004)
   435  - fix: Route health check stuck in 'Progressing' (#8170)
   436  - fix: Sync window panel is crashed if resource name not contain letters (#8053)
   437  - fix: Targetervision compatible without prefix refs/heads or refs/tags (#7939)
   438  - fix: Trailing line in Filter Dropdown Menus #7821 (#8001)
   439  - fix: Webhook URL matching edge cases (#7981)
   440  - fix(ui): Use consistent case for diff modes (#7945)
   441  - fix: Use gRPC timeout for sidecar CMPs (#8131) (#8236)
   442  
   443  ### Other
   444  
   445  - chore: Bump go-jsonnet to v0.18.0 (#8011)
   446  - chore: Escape proj in regex (#7985)
   447  - chore: Exclude argocd-server rbac for core-install (#8234)
   448  - chore: Log out the resource triggering reconciliation (#8192)
   449  - chore: Migrate to use golang-jwt/jwt v4.2.0 (#8136)
   450  - chore: Move resolveRevision from api-server to repo-server (#7966)
   451  - chore: Update notifications version (#8267)
   452  - chore: Update slack version (#8299)
   453  - chore: Update to Redis 6.2.4 (#8157)
   454  - chore: Upgrade awscli to 2.4.6 and remove python deps (#7947)
   455  - chore: Upgrade base image to ubuntu:21.10 (#8230)
   456  - chore: Upgrade dex to v2.30.2 (https://github.com/dexidp/dex/issues/2326) (#8237)
   457  - chore: Upgrade gitops engine (#8288)
   458  - chore: Upgrade golang to 1.17.6 (#8229)
   459  - chore: Upgrade helm to most recent version (v3.7.2) (#8226)
   460  - chore: Upgrade k8s client to v1.23 (#8213)
   461  - chore: Upgrade kustomize to most recent version (v4.4.1) (#8227)
   462  - refactor: Introduce 'byClusterName' secret index to speedup cluster server URL lookup (#8133)
   463  - refactor: Move project filtering to server side (#8102)
   464  
   465  ## v2.2.12 (2022-07-29)
   466  
   467  ### Notes
   468  
   469  This is mainly a security related release and updates compatibility with Kubernetes 1.24.
   470  
   471  **Attention:** The base image for 2.2.x reached end-of-life on January 20, 2022. This release upgraded the base image to Ubuntu 22.04 LTS. The change should have no effect on the majority of users. But if any of your git providers only supports now-deprecated key hash algorithms, then Application syncing might break. See the [2.1-to-2.2 upgrade notes](https://argo-cd.readthedocs.io/en/latest/operator-manual/upgrading/2.1-2.2/#support-for-private-repo-ssh-keys-using-the-sha-1-signature-hash-algorithm-is-removed-in-2212) for details and workaround instructions.
   472  
   473  ### Bug fixes
   474  
   475  - fix: create serviceaccount token for v1.24 clusters (#9546)
   476  - fix: upgrade moment from 2.29.2 to 2.29.3 (#9330)
   477  - fix: avoid CVE-2022-28948 (#10093)
   478  
   479  ### Other changes
   480  
   481  - chore: Remove deprecated K8s versions from test matrix
   482  - chore: Go mod tidy
   483  - test: Remove circular symlinks from testdata (#9886)
   484  - test: Fix e2e tests for release-2.2 branch
   485  - chore: bump redoc vesion to avoid CVE-2021-23820 (#8604)
   486  - chore(deps): bump moment from 2.29.3 to 2.29.4 in /ui (#9897)
   487  - chore: upgrade moment to latest version to fix CVE (#9005)
   488  - chore: move dependencies to dev dependencies (#8541)
   489  - docs: add OpenSSH breaking change notes (#10104)
   490  - chore: update parse-url (#10101)
   491  - chore: fix codegen
   492  - chore: fix codegen
   493  - chore: upgrade base image to 22.04 (#10105)
   494  - docs: simplify Docker toolchain docs (#9966) (#10006)
   495  - chore: update redis to 6.2.7 avoid CVE-2022-30065/CVE-2022-2097 (#10068)
   496  - chore: upgrade Dex to 2.32.0 (#10036) (#10042)
   497  - chore: update haproxy to 2.0.29 for redis-ha (#10045)
   498  - test: check for error messages from CI env (#9953)
   499  
   500  ## v2.2.11 (2022-07-12)
   501  
   502  ### Security fixes
   503  
   504  * HIGH: Certificate verification is skipped for connections to OIDC providers ([GHSA-7943-82jg-wmw5](https://github.com/argoproj/argo-cd/security/advisories/GHSA-7943-82jg-wmw5))
   505  * LOW: A leaked API server encryption key can allow XSS for SSO users ([GHSA-pmjg-52h9-72qv](https://github.com/argoproj/argo-cd/security/advisories/GHSA-pmjg-52h9-72qv))
   506  
   507  ### Potentially-breaking changes
   508  
   509  The fix for GHSA-7943-82jg-wmw5 enables TLS certificate validation by default for connections to OIDC providers. If
   510  connections to your OIDC provider fails validation, SSO will be broken for your Argo CD instance. You should test 2.2.11
   511  before upgrading it to production. From the new documentation:
   512  
   513  > By default, all connections made by the API server to OIDC providers (either external providers or the bundled Dex
   514  > instance) must pass certificate validation. These connections occur when getting the OIDC provider's well-known
   515  > configuration, when getting the OIDC provider's keys, and  when exchanging an authorization code or verifying an ID
   516  > token as part of an OIDC login flow.
   517  >
   518  > Disabling certificate verification might make sense if:
   519  > * You are using the bundled Dex instance **and** your Argo CD instance has TLS configured with a self-signed certificate
   520      >   **and** you understand and accept the risks of skipping OIDC provider cert verification.
   521  > * You are using an external OIDC provider **and** that provider uses an invalid certificate **and** you cannot solve
   522      >   the problem by setting `oidcConfig.rootCA` **and** you understand and accept the risks of skipping OIDC provider cert
   523      >   verification.
   524  >
   525  > If either of those two applies, then you can disable OIDC provider certificate verification by setting
   526  > `oidc.tls.insecure.skip.verify` to `"true"` in the `argocd-cm` ConfigMap.
   527  
   528  ### Features
   529  
   530  * feat: enable specifying root ca for oidc (#6712)
   531  
   532  ### Bug fixes
   533  
   534  * fix: webhook typo in case of error in GetManifests (#9671)
   535  
   536  ## v2.2.10 (2022-06-21)
   537  
   538  ### Security fixes
   539  
   540  * CRITICAL: External URLs for Deployments can include javascript ([GHSA-h4w9-6x78-8vrj](https://github.com/argoproj/argo-cd/security/advisories/GHSA-h4w9-6x78-8vrj))
   541  * HIGH: Insecure entropy in PKCE/Oauth2/OIDC params ([GHSA-2m7h-86qq-fp4v](https://github.com/argoproj/argo-cd/security/advisories/GHSA-2m7h-86qq-fp4v))
   542  * MODERATE: DoS through large directory app manifest files ([GHSA-jhqp-vf4w-rpwq](https://github.com/argoproj/argo-cd/security/advisories/GHSA-jhqp-vf4w-rpwq))
   543  * MODERATE: Symlink following allows leaking out-of-bounds YAML files from Argo CD repo-server ([GHSA-q4w5-4gq2-98vm](https://github.com/argoproj/argo-cd/security/advisories/GHSA-q4w5-4gq2-98vm))
   544  
   545  ### Potentially-breaking changes
   546  
   547  From the [GHSA-2m7h-86qq-fp4v](https://github.com/argoproj/argo-cd/security/advisories/GHSA-2m7h-86qq-fp4v) description:
   548  
   549  > The patch introduces a new `reposerver.max.combined.directory.manifests.size` config parameter, which you should tune before upgrading in production. It caps the maximum total file size of .yaml/.yml/.json files in directory-type (raw manifest) Applications. The default max is 10M per Application. This max is designed to keep any single app from consuming more than 3G of memory in the repo-server (manifests consume more space in memory than on disk). The 300x ratio assumes a maliciously-crafted manifest file. If you only want to protect against accidental excessive memory use, it is probably safe to use a smaller ratio.
   550  >
   551  > If your organization uses directory-type Applications with very many manifests or very large manifests then check the size of those manifests and tune the config parameter before deploying this change to production. When testing, make sure to do a "hard refresh" in either the CLI or UI to test your directory-type App. That will make sure you're using the new max logic instead of relying on cached manifest responses from Redis.
   552  
   553  ### Bug fixes
   554  
   555  * fix: missing Helm params (#9565) (#9566)
   556  
   557  ### Other
   558  
   559  * test: directory app manifest generation (#9503)
   560  * test: fix erroneous test change
   561  * chore: eliminate go-mpatch dependency (#9045)
   562  * chore: Make unit tests run on platforms other than amd64 (#8995)
   563  * chore: remove obsolete repo-server unit test (#9559)
   564  * chore: upgrade golangci-lint to v1.46.2 (#9448)
   565  * chore: update golangci-lint (#8988)
   566  
   567  ## v2.2.9 (2022-05-18)
   568  
   569  ### Notes
   570  
   571  This is a security release. We urge all users of the 2.2.z branch to update as soon as possible. Please refer to the _Security fixes_ section below for more details.
   572  
   573  ### Security fixes
   574  
   575  - CRITICAL: Argo CD will trust invalid JWT claims if anonymous access is enabled (https://github.com/argoproj/argo-cd/security/advisories/GHSA-r642-gv9p-2wjj)
   576  - LOW: Login screen allows message spoofing if SSO is enabled (https://github.com/argoproj/argo-cd/security/advisories/GHSA-xmg8-99r8-jc2j)
   577  - MODERATE: Symlink following allows leaking out-of-bound manifests and JSON files from Argo CD repo-server (https://github.com/argoproj/argo-cd/security/advisories/GHSA-6gcg-hp2x-q54h)
   578  
   579  ## v2.2.8 (2022-03-22)
   580  
   581  ### Special notes
   582  
   583  This release contains the fix for a security issue with critical severity. We recommend users on the 2.2 release branch to update to this release as soon as possible.
   584  
   585  More information can be found in the related
   586  [security advisory](https://github.com/argoproj/argo-cd/security/advisories/GHSA-2f5v-8r3f-8pww).
   587  
   588  ### Changes
   589  
   590  As part of the security fix, the Argo CD UI no longer automatically presents child resources of allow-listed resources unless the child resources are also allow-listed. For example, Pods are not going to show up if only Deployment is added to the allow-list.
   591  
   592  If you have [projects](https://argo-cd.readthedocs.io/en/stable/user-guide/projects/) configured with allow-lists, make sure the allow-lists include all the resources you want users to be able to view/manage through the UI. For example, if your project allows `Deployments`, you would add `ReplicaSets` and `Pods`.
   593  
   594  #### Bug Fixes
   595  
   596  - fix: application resource APIs must enforce project restrictions
   597  
   598  ## v2.2.7 (2022-03-08)
   599  
   600  ### Bug Fixes
   601  
   602  - fix: correct jsonnet paths resolution (#8721)
   603  
   604  ## v2.2.6 (2022-03-06)
   605  
   606  ### Bug Fixes
   607  
   608  - fix: prevent file traversal using helm file values param and application details api (#8606)
   609  - fix!: enforce app create/update privileges when getting repo details (#8558)
   610  - feat: support custom helm values file schemes (#8535)
   611  
   612  ## v2.2.5 (2022-02-04)
   613  
   614  - fix: Resolve symlinked value files correctly (#8387)
   615  
   616  ## v2.2.4 (2022-02-03)
   617  
   618  ### Special notes
   619  
   620  This release contains the fix for a security issue with high severity. We recommend users on the 2.2 release branch to update to this release as soon as possible.
   621  
   622  More information can be found in the related
   623  [security advisory](https://github.com/argoproj/argo-cd/security/advisories/GHSA-63qx-x74g-jcr7)
   624  
   625  ### Bug Fixes
   626  
   627  - fix: Prevent value files outside repository root
   628  
   629  ### Other changes
   630  
   631  - chore: upgrade dex to v2.30.2 (backport of #8237) (#8257)
   632  
   633  ## v2.2.3 (2022-01-18)
   634  
   635  - fix: Application exist panic when execute api call (#8188)
   636  - fix: Route health check stuck in 'Progressing' (#8170)
   637  - refactor: Introduce 'byClusterName' secret index to speedup cluster server URL lookup (#8133)
   638  - chore: Update to Redis 6.2.4 (#8157) (#8158)
   639  
   640  ## v2.2.2 (2021-12-31)
   641  
   642  - fix: Issue with project scoped resources (#8048)
   643  - fix: Escape proj in regex (#7985)
   644  - fix: Default value for retry validation #8055 (#8064)
   645  - fix: Sync window panel is crashed if resource name not contain letters (#8053)
   646  - fix: Upgrade github.com/argoproj/gitops-engine to v0.5.2
   647  - fix: Retry disabled text (#8004)
   648  - fix: Opening app details shows UI error on some apps (#8016) (#8019)
   649  - fix: Correctly handle project field during partial cluster update (#7994)
   650  - fix: Cluster API does not support updating labels and annotations (#7901)
   651  
   652  ## v2.2.1 (2021-12-16)
   653  
   654  - fix: Resource details page crashes when resource is not deployed and hide managed fields is selected (#7971)
   655  - fix: Issue with headless installation (#7958)
   656  - fix: Nil pointer (#7905)
   657  
   658  ## v2.2.0 (2021-12-14)
   659  
   660  > [Upgrade instructions](./docs/operator-manual/upgrading/2.1-2.2.md)
   661  
   662  ### Project Scoped repositories and clusters
   663  
   664  The project scoped repositories and clusters is a feature that simplifies registering the repositories and cluster credentials.
   665  Instead of requiring operators to set up in advance all clusters and git repositories that can be used, developers can now do
   666  this on their own in a self-service manner.
   667  
   668  ### Config Management Plugins V2
   669  
   670  The Config Management Plugins V2 is set of enhancement of the existing config management plugins feature.
   671  The list includes improved installation experience, ability to package plugin into a separate image and
   672  improved plugin manifests discovery.
   673  
   674  ### Resource tracking
   675  
   676  Argo CD has traditionally tracked the resources it manages by the well-known "app.kubernetes.io/instance" property.
   677  While using this property works ok in simple scenarios, it also has several limitations. ArgoCD now allows you to use
   678  a new annotation (argocd.argoproj.io/tracking-id) for tracking your resources. Using this annotation is a much more flexible approach
   679  as there are no conflicts with other Kubernetes tools, and you can easily install multiple Argo CD instances on the same clusters.
   680  
   681  ### Bug Fixes and Performance Enhancements
   682  
   683  * Argo CD API server caches RBAC checks that significantly improves the GET /api/v1/applications API performance (#7587)
   684  * Argo CD RBAC supports regex matches (#7165)
   685  * Health check support for KubeVirt (#7176), Cassandra (#7017), Openshift Route (#7112), DeploymentConfig (#7114), Confluent (#6957) and SparkApplication (#7434) CRDs.
   686  * Persistent banner (#7312) with custom positioning (#7462)
   687  * Cluster name support in project destinations (#7198)
   688  * around 30 more features and a total of 84 bug fixes
   689  
   690  ## v2.1.16 (2022-06-21)
   691  
   692  ### Security fixes
   693  
   694  * CRITICAL: External URLs for Deployments can include javascript ([GHSA-h4w9-6x78-8vrj](https://github.com/argoproj/argo-cd/security/advisories/GHSA-h4w9-6x78-8vrj))
   695  * HIGH: Insecure entropy in PKCE/Oauth2/OIDC params ([GHSA-2m7h-86qq-fp4v](https://github.com/argoproj/argo-cd/security/advisories/GHSA-2m7h-86qq-fp4v))
   696  * MODERATE: DoS through large directory app manifest files ([GHSA-jhqp-vf4w-rpwq](https://github.com/argoproj/argo-cd/security/advisories/GHSA-jhqp-vf4w-rpwq))
   697  * MODERATE: Symlink following allows leaking out-of-bounds YAML files from Argo CD repo-server ([GHSA-q4w5-4gq2-98vm](https://github.com/argoproj/argo-cd/security/advisories/GHSA-q4w5-4gq2-98vm))
   698  
   699  **Note:** This will be the last security fix release in the 2.1.x series. Please [upgrade to a newer minor version](https://argo-cd.readthedocs.io/en/latest/operator-manual/upgrading/overview/) to continue to get security fixes.
   700  
   701  ### Potentially-breaking changes
   702  
   703  From the [GHSA-2m7h-86qq-fp4v](https://github.com/argoproj/argo-cd/security/advisories/GHSA-2m7h-86qq-fp4v) description:
   704  
   705  > The patch introduces a new `reposerver.max.combined.directory.manifests.size` config parameter, which you should tune before upgrading in production. It caps the maximum total file size of .yaml/.yml/.json files in directory-type (raw manifest) Applications. The default max is 10M per Application. This max is designed to keep any single app from consuming more than 3G of memory in the repo-server (manifests consume more space in memory than on disk). The 300x ratio assumes a maliciously-crafted manifest file. If you only want to protect against accidental excessive memory use, it is probably safe to use a smaller ratio.
   706  >
   707  > If your organization uses directory-type Applications with very many manifests or very large manifests then check the size of those manifests and tune the config parameter before deploying this change to production. When testing, make sure to do a "hard refresh" in either the CLI or UI to test your directory-type App. That will make sure you're using the new max logic instead of relying on cached manifest responses from Redis.
   708  
   709  ### Bug fixes
   710  
   711  * fix: missing Helm params (#9565) (#9566)
   712  
   713  ### Other
   714  
   715  * test: directory app manifest generation (#9503)
   716  * test: fix erroneous test change
   717  * chore: eliminate go-mpatch dependency (#9045)
   718  * chore: Make unit tests run on platforms other than amd64 (#8995)
   719  * chore: remove obsolete repo-server unit test (#9559)
   720  * chore: upgrade golangci-lint to v1.46.2 (#9448)
   721  * chore: update golangci-lint (#8988)
   722  * test: fix ErrorContains (#9445)
   723  
   724  ## v2.1.15 (2022-05-18)
   725  
   726  ### Notes
   727  
   728  This is a security release. We urge all users of the 2.1.z branch to update as soon as possible. Please refer to the _Security fixes_ section below for more details.
   729  
   730  ### Security fixes
   731  
   732  - CRITICAL: Argo CD will trust invalid JWT claims if anonymous access is enabled (https://github.com/argoproj/argo-cd/security/advisories/GHSA-r642-gv9p-2wjj)
   733  - LOW: Login screen allows message spoofing if SSO is enabled (https://github.com/argoproj/argo-cd/security/advisories/GHSA-xmg8-99r8-jc2j)
   734  - MODERATE: Symlink following allows leaking out-of-bound manifests and JSON files from Argo CD repo-server (https://github.com/argoproj/argo-cd/security/advisories/GHSA-6gcg-hp2x-q54h)
   735  
   736  ## v2.1.14 (2022-03-22)
   737  
   738  ### Special notes
   739  
   740  This release contains the fix for a security issue with critical severity. We recommend users on the 2.1 release branch to update to this release as soon as possible.
   741  
   742  More information can be found in the related
   743  [security advisory](https://github.com/argoproj/argo-cd/security/advisories/GHSA-2f5v-8r3f-8pww).
   744  
   745  ### Changes
   746  
   747  As part of the security fix, the Argo CD UI no longer automatically presents child resources of allow-listed resources unless the child resources are also allow-listed. For example, Pods are not going to show up if only Deployment is added to the allow-list.
   748  
   749  If you have [projects](https://argo-cd.readthedocs.io/en/stable/user-guide/projects/) configured with allow-lists, make sure the allow-lists include all the resources you want users to be able to view/manage through the UI. For example, if your project allows `Deployments`, you would add `ReplicaSets` and `Pods`.
   750  
   751  #### Bug Fixes
   752  
   753  - fix: application resource APIs must enforce project restrictions
   754  
   755  ## v2.1.13 (2022-03-22)
   756  
   757  Unused release number.
   758  
   759  ## v2.1.12 (2022-03-08)
   760  
   761  ### Bug Fixes
   762  
   763  - fix: correct jsonnet paths resolution (#8721)
   764  
   765  ## v2.1.11 (2022-03-06)
   766  
   767  ### Bug Fixes
   768  
   769  - fix: prevent file traversal using helm file values param and application details api (#8606)
   770  - fix!: enforce app create/update privileges when getting repo details (#8558)
   771  - feat: support custom helm values file schemes (#8535)
   772  
   773  ## v2.1.10 (2022-02-04)
   774  
   775  ### Bug Fixes
   776  
   777  - fix: Resolve symlinked value files correctly (#8387)
   778  
   779  ## v2.1.9 (2022-02-03)
   780  
   781  ### Special notes
   782  
   783  This release contains the fix for a security issue with high severity. We recommend users on the 2.1 release branch to update to this release as soon as possible.
   784  
   785  More information can be found in the related
   786  [security advisory](https://github.com/argoproj/argo-cd/security/advisories/GHSA-63qx-x74g-jcr7)
   787  
   788  ### Bug Fixes
   789  
   790  - fix: Prevent value files outside repository root
   791  
   792  ## v2.1.8 (2021-12-13)
   793  
   794  ### Bug Fixes
   795  
   796  - fix: issue with keepalive (#7861)
   797  - fix nil pointer dereference error (#7905)
   798  - fix: env vars to tune cluster cache were broken (#7779)
   799  - fix: upgraded gitops engine to v0.4.2 (fixes #7561)
   800  
   801  ## v2.1.7 (2021-12-14)
   802  
   803  - fix: issue with keepalive (#7861)
   804  - fix nil pointer dereference error (#7905)
   805  - fix: env vars to tune cluster cache were broken (#7779)
   806  - fix: upgraded gitops engine to v0.4.2 (fixes #7561)
   807  
   808  
   809  ## v2.1.6 (2021-11-16)
   810  
   811  - fix: don't use revision caching during app creation (#7508)
   812  - fix: supporting OCI dependencies. Fixes #6062 (#6994)
   813  
   814  ## v2.1.5 (2021-11-16)
   815  
   816  - fix: Invalid memory address or nil pointer dereference in processRequestedAppOperation (#7501)
   817  
   818  ## v2.1.4 (2021-11-15)
   819  
   820  - fix: Operation has completed with phase: Running (#7482)
   821  - fix: Application status panel shows Syncing instead of Deleting (#7486)
   822  - fix(ui): Add Error Boundary around Extensions and comply with new Extensions API (#7215)
   823  
   824  
   825  ## v2.1.3 (2021-10-29)
   826  
   827  - fix: core-install.yaml always refers to latest argocd image (#7321)
   828  - fix: handle applicationset backup forbidden error (#7306)
   829  - fix: Argo CD should not use cached git/helm revision during app creation/update validation (#7244)
   830  
   831  ## v2.1.2 (2021-10-02)
   832  
   833  - fix: cluster filter popping out of box (#7135)
   834  - fix: gracefully shutdown metrics server when dex config changes (#7138)
   835  - fix: upgrade gitops engine version to v0.4.1 (#7088)
   836  - fix: repository name already exists when multiple helm dependencies  (#7096)
   837  
   838  
   839  ## v2.1.1 (2021-08-25)
   840  
   841  ### Bug Fixes
   842  
   843  - fix: password reset requirements (#7071)
   844  - fix: Custom Styles feature is broken (#7067)
   845  - fix(ui): Add State to props passed to Extensions (#7045)
   846  - fix: keep uid_entrypoint.sh for backward compatibility (#7047)
   847  
   848  ## v2.1.0 (2021-08-20)
   849  
   850  > [Upgrade instructions](./docs/operator-manual/upgrading/2.0-2.1.md)
   851  
   852  ### Argo CD Core
   853  
   854  Argo CD Core - lightweight Argo CD distribution that packages only core GitOps features and relies
   855  on Kubernetes API/RBAC to power UI and CLI.
   856  
   857  ### Core Features
   858  
   859  * The synchronization process became much much faster and requires significantly less memory.
   860  * An additional caching that ensures that each repository's target revisions are queried only once per
   861    reconciliation cycle. This dramatically reduces the number of Git requests.
   862  * Improved Diffing Customizations: use JQ path expressions to exclude required fields from the diffing.
   863  * Health assessment support for new CRDs: introduced health assessment of CRDs from trident.netapp.io,
   864    elasticsearch.k8s.elastic.co, cluster.x-k8s.io, and minio.min.io API groups.
   865  
   866  ### Improved Settings
   867  
   868  A set of changes had been implemented to simplify configuring Argo CD.
   869  
   870  * Simplified Repository Registration: you no longer need to modify the argocd-cm ConfigMap to register a
   871    new Git or Helm repository.
   872  * Enhanced Resource Customizations: the resource.customizations key has been deprecated in favor of
   873    a separate ConfigMap key per resource.
   874  * Reference secret values from any Kubernetes secret: starting v2.1 you can use sensitive data stored in 
   875    any Kubernetes secret to configure Argo CD.
   876  * Simplify parametrization of Argo CD server processes: an additional optional ConfigMap argocd-cmd-params-cm
   877    has been introduced.
   878  
   879  ### Refreshed User Interface
   880  
   881  * Enhanced and more consistent filters on Applications List and Applications Details pages.
   882  * Status bar on the Application List page.
   883  * The redesigned search box on the Application List page and more.
   884  
   885  ### The argocd-util CLI deprecation
   886  
   887  The argocd CLI and now available under argocd admin subcommand.
   888  
   889  ## v2.0.5 (2021-07-22)
   890  
   891  * fix: allow argocd-notification ingress to repo-server (#6746)
   892  * fix: argocd-server crashes due to nil pointer dereference (#6757)
   893  * fix: WebUI failure when loading pod view 't.parentRefs is undefined' (#6490) (#6535)
   894  * fix: prevent 'cannot read property "filter" of undefined' during nodes filtering (#6453)
   895  * fix: download Pod Logs button not honouring argocd-server rootpath (#6548) (#6627)
   896  * fix: Version warning banner in docs (#6682)
   897  * fix: upgrade gitops engine to fix workflow health check
   898  
   899  ## v2.0.4 (2021-06-22)
   900  
   901  * fix: typo in networkPolicy definition in manifests (#6532)
   902  * fix: Update redis to 6.2.4 (#6475)
   903  * fix: allows access to dex metrics from any pod (#6420)
   904  * fix: add client side retry to prevent 'transport is closing' errors (#6402)
   905  * fix: Update documentation Argocd app CRD health with app of apps (#6281)
   906  * fix(ui): Crash on application pod view (#6384)
   907  * chore: pin mkdocs version to fix docs build (#6421)
   908  * chore: regenerate manifests using codegen (#6422)
   909  * refactor: use RLock and RUnlock for project to improve performance (#6225)
   910  * chore: Update Golang to v1.16.4 (#6358)
   911  
   912  ## v2.0.3 (2021-05-27)
   913  
   914  ### Bug Fixes
   915  
   916  * fix: add missing --container flag to 'argocd app logs' command (#6320)
   917  * fix: grpc web proxy must ensure to read full header (#6319)
   918  * fix: controller should refresh app before running sync operation (#6294)
   919  
   920  ## v2.0.2 (2021-05-20)
   921  
   922  ### Bug Fixes
   923  
   924  * fix: enable access to metrics port in embedded network policies (#6277)
   925  * fix: display log streaming error in logs viewer (#6100) (#6273)
   926  * fix: Don't count errored or completed neighbor pods toward resource consumption (#6259)
   927  * fix: Enable kex algo diffie-hellman-group-exchange-sha256 for go-git ssh (#6256)
   928  * fix: copy github app key from repocreds (#6140, #6197)
   929  * fix(ui): UI crashes after reinstalling ArgoCD (#6218)
   930  * fix: add network policies to restrict traffic flow between argocd components (#6156)
   931  * fix: Revert "feat: Add health checks for kubernetes-external-secrets (#5435)"
   932  * chore: Allow ingress traffic to argocd-server by default (#6179)
   933  
   934  ## v2.0.1 (2021-04-15)
   935  
   936  ### Bug Fixes
   937  
   938  * fix: spark application check fails on missing section (#6036)
   939  * fix: Adding explicit bind to redis and sentinel for IPv4 clusters #5957 (#6005)
   940  * fix: fix: use correct field for evaluating whether or not GitHub Enterprise is selected (#5987)
   941  
   942  ## v2.0.0 (2021-04-07)
   943  
   944  > [Upgrade instructions](./docs/operator-manual/upgrading/1.8-2.0.md)
   945  
   946  ### Pods View
   947  
   948  Pods View is particularly useful for applications that have hundreds of pods. Instead of visualizing all Kubernetes
   949  resources for the application, it only shows Kubernetes pods and closely related resources. The Pods View supports
   950  grouping related resources by Parent Resource, Top Level Parent, or by Node. Each way of grouping solves a particular
   951  use case. For example grouping by Top Level Parent allows you to quickly find how many pods your application is running
   952  and which resources created them. Grouping by Node allows to see how Pods are spread across the nodes and how many
   953  resources they requested.
   954  
   955  
   956  ### Logs Viewer
   957  
   958  Argo CD provides a way to see live logs of pods, which is very useful for debugging and troubleshooting. In the v2.0
   959  release, the log visualization has been rewritten to support pagination, filtering, the ability to disable/enable log
   960  streaming, and even a dark mode for terminal lovers. Do you want to see aggregated logs of multiple deployment pods?
   961  Not a problem! Just click on the parent resource such as Deployment, ReplicaSet, or StatefulSet and navigate
   962  to the Logs tab.
   963  
   964  ### Banner Feature
   965  
   966  Want to notify your Argo CD users of upcoming changes? Just specify the notification message and optional URL using the
   967  `ui.bannercontent` and `ui.bannerurl` attributes in the `argocd-cm` ConfigMap. 
   968  
   969  ### Core Features
   970  
   971  * The new sync option `PrunePropagationPolicy=background` allows using background deletion during syncing
   972  * New application finalizer `resources-finalizer.argocd.argoproj.io:background` allows using background deletion when the application is deleted
   973  * The new sync option `ApplyOutOfSyncOnly=true` allows skipping syncing resources that are already in the desired state.
   974  * The new sync option `PruneLast=true` allows deferring resource pruning until the last synchronization phase after all other resources are synced and healthy.
   975  
   976  ### The argocd-util CLI
   977  
   978  Argo CD Util is a CLI tool that contains useful commands for operators who manage Argo CD. Starting from this release
   979  the Argo CD Utility is published with every Argo CD release as a Homebrew installation.
   980  
   981  ## v1.8.7 (2021-02-26)
   982  
   983  ### Important note
   984  This release fixed a regression regarding which cluster resources are permitted on the AppProject level.
   985  Previous to this fix, after #3960 has been merged, all cluster resources were allowed on project level when neither of
   986  the allow or deny lists was defined. However, the correct behavior is to block all resources in this case.
   987  
   988  If you have Projects with empty allow and deny lists, but want the associated applications be able to sync cluster
   989  resources, you will have to adapt your cluster resources allow lists to explicitly allow the resources.
   990  
   991  - fix: redact sensitive data in logs (#5662)
   992  - fix: Properly escape HTML for error message from CLI SSO (#5563)
   993  - fix: Empty resource whitelist allowed all resources (#5540) (#5551)
   994  
   995  ## v1.8.6 (2021-02-26)
   996  
   997  - fix: Properly escape HTML for error message from CLI SSO (#5563)
   998  - fix: API server should not print resource body when resource update fails (#5617)
   999  - fix: fix memory leak in application controller (#5604)
  1000  
  1001  ## v1.8.5 (2021-02-19)
  1002  
  1003  - fix: 'argocd app wait --suspended' stuck if operation is in progress (#5511)
  1004  - fix: Presync hooks stop working after namespace resource is added in a Helm chart #5522
  1005  - docs: add the missing rbac resources to the documentation (#5476)
  1006  - refactor: optimize argocd-application-controller redis usage (#5345)
  1007  
  1008  ## v1.8.4 (2021-02-05)
  1009  
  1010  - feat: set X-XSS-Protection while serving static content (#5412)
  1011  - fix: version info should be available if anonymous access is enabled (#5422)
  1012  - fix: disable jwt claim audience validation #5381 (#5413)
  1013  - fix: /api/version should not return tools version for unauthenticated requests (#5415)
  1014  - fix: account tokens should be rejected if required capability is disabled (#5414)
  1015  - fix: tokens keep working after account is deactivated (#5402)
  1016  - fix: a request which was using a revoked project token, would still be allowed to perform requests allowed by default policy (#5378)
  1017  
  1018  ## v1.8.3 (2021-01-21)
  1019  
  1020  - fix: make sure JWT token time fields contain only integer values (#5228)
  1021  
  1022  ## v1.8.2 (2021-01-09)
  1023  
  1024  ### Bug Fixes
  1025  
  1026  - fix: updating cluster drops secret (#5220)
  1027  - fix: remove invalid assumption about OCI helm chart path (#5179)
  1028  - fix: Possible nil pointer dereference in repository API (#5128)
  1029  - fix: Possible nil pointer dereference in repocreds API (#5130)
  1030  - fix: use json serialization to store cache instead of github.com/vmihailenco/msgpack (#4965)
  1031  - fix: add liveness probe to restart repo server if it fails to server tls requests (#5110) (#5119)
  1032  - fix: Allow correct SSO redirect URL for CLI static client (#5098)
  1033  - fix: add grpc health check (#5060)
  1034  - fix: setting 'revision history limit' errors in UI (#5035)
  1035  - fix: add api-server liveness probe that catches bad data in informer (#5026)
  1036  
  1037  ### Refactoring
  1038  
  1039  - chore: Update Dex to v2.27.0 (#5058)
  1040  - chore: Upgrade gorilla/handlers and gorilla/websocket (#5186)
  1041  - chore: Upgrade jwt-go to 4.0.0-preview1 (#5184)
  1042  
  1043  ## v1.8.1 (2020-12-09)
  1044  
  1045  - fix: sync retry is broken for multi-phase syncs (#5017)
  1046  
  1047  ## v1.8.0 (2020-12-09)
  1048  
  1049  ### Mono-Repository Improvements
  1050  
  1051  Enhanced performance during manifest generation from mono-repository - the repository that represents the
  1052  desired state of the whole cluster and contains hundreds of applications. The improved argocd-repo-server
  1053  now able to concurrently generate manifests from the same repository and for the same commit SHA. This
  1054  might provide 10x performance improvement of manifests generation.
  1055  
  1056  ### Annotation Based Path Detection
  1057  
  1058  The feature that allows specifying which source repository directories influence the application manifest generation
  1059  using the `argocd.argoproj.io/manifest-generate-paths` annotation. The annotation improves the Git webhook handler
  1060  behavior. The webhook avoids related applications reconciliation if no related files have been changed by the Git commit
  1061  and even allows to skip manifests generation for new commit by re-using generation manifests for the previous commit.
  1062  
  1063  ### Horizontal Controller Scaling
  1064  
  1065  This release allows scaling the `argocd-application-controller` horizontally. This allows you to manage as many Kubernetes clusters
  1066  as needed using a single Argo CD instance.
  1067  
  1068  ## New Core Functionality Features
  1069  
  1070  Besides performance improvements, Argo CD got a lot of usability enhancements and new features:
  1071  
  1072  * Namespace and CRD creation [#4354](https://github.com/argoproj/argo-cd/issues/4354)
  1073  * Unknown fields of built-in K8S types [#1787](https://github.com/argoproj/argo-cd/issues/1787)
  1074  * Endpoints Diffing [#1816](https://github.com/argoproj/argo-cd/issues/1816)
  1075  * Better compatibility with Helm Hooks [#1816](https://github.com/argoproj/argo-cd/issues/1816)
  1076  * App-of-Apps Health Assessment [#3781](https://github.com/argoproj/argo-cd/issues/3781)
  1077  
  1078  ## Global Projects
  1079  
  1080  This release makes it easy to manage an Argo CD that has hundreds of Projects. Instead of duplicating the same organization-wide rules in all projects
  1081  you can put such rules into one project and make this project “global” for all other projects. Rules defined in the global project are inherited by all
  1082  other projects and therefore don’t have to be duplicated. The sample below demonstrates how you can create a global project and specify which project should
  1083  inherit global project rules using Kubernetes labels. 
  1084  
  1085  ## User Interface Improvements
  1086  
  1087  The Argo CD user interface is an important part of a project and we keep working hard on improving the user experience. Here is an incomplete list of implemented improvements:
  1088  
  1089  * Improved Applications Filters [#4622](https://github.com/argoproj/argo-cd/issues/4622)
  1090  * Git tags and branches autocompletion [#4713](https://github.com/argoproj/argo-cd/issues/4713)
  1091  * Project Details Page [#4400](https://github.com/argoproj/argo-cd/issues/4400)
  1092  * New version information panel [#4376](https://github.com/argoproj/argo-cd/issues/4376)
  1093  * Progress Indicators [#4411](https://github.com/argoproj/argo-cd/issues/4411)
  1094  * External links annotations [#4380](https://github.com/argoproj/argo-cd/issues/4380) and more!
  1095  
  1096  ## Config Management Tools Enhancements
  1097  
  1098  * OCI Based Repositories [#4018](https://github.com/argoproj/argo-cd/issues/4018)
  1099  * Configurable Helm Versions [#4111](https://github.com/argoproj/argo-cd/issues/4111)
  1100  
  1101  ## Bug fixes and under the hood changes
  1102  
  1103  In addition to new features and enhancements, we’ve fixed more than 50 bugs and upgraded third-party components and libraries that Argo CD relies on.
  1104  
  1105  ## v1.7.9 (2020-11-17)
  1106  
  1107  - fix: improve commit verification tolerance (#4825)
  1108  - fix: argocd diff --local should not print data of local secrets (#4850)
  1109  - fix(ui): stack overflow crash of resource tree view for large applications (#4685)
  1110  - chore: Update golang to v1.14.12 [backport to release-1.7] (#4834)
  1111  - chore: Update redis to 5.0.10 (#4767)
  1112  - chore: Replace deprecated GH actions directives for integration tests (#4589)
  1113  
  1114  ## v1.7.8 (2020-10-15)
  1115  
  1116  - fix(logging.go): changing marshaler for JSON logging to use gogo (#4319)
  1117  - fix: login with apiKey capability (#4557)
  1118  - fix: api-server should not try creating default project it is exists already (#4517)
  1119  - fix: JS error on application list page if app has no namespace (#4499)
  1120  
  1121  
  1122  ## v1.7.7 (2020-09-28)
  1123  
  1124  - fix: Support transition from a git managed namespace to auto create (#4401)
  1125  - fix: reduce memory spikes during cluster cache refresh (#4298)
  1126  - fix: No error/warning condition if application destination namespace not monitored by Argo CD (#4329)
  1127  - fix: Fix local diff/sync of apps using cluster name (#4201)
  1128  
  1129  ## v1.7.6 (2020-09-18)
  1130  
  1131  - fix: Added cluster authentication to AKS clusters (#4265)
  1132  - fix: swagger UI stuck loading (#4377)
  1133  - fix: prevent 'argocd app sync' hangs if sync is completed too quickly (#4373)
  1134  - fix: argocd app wait/sync might stuck (#4350)
  1135  - fix: failed syncs are not retried soon enough (#4353)
  1136  
  1137  ## v1.7.5 (2020-09-15)
  1138  
  1139  - fix: app create with -f should not ignore other options (#4322)
  1140  - fix: limit concurrent list requests across all clusters (#4328)
  1141  - fix: fix possible deadlock in /v1/api/stream/applications and /v1/api/application APIs (#4315)
  1142  - fix: WatchResourceTree does not enforce RBAC (#4311)
  1143  - fix: app refresh API should use app resource version (#4303)
  1144  - fix: use informer instead of k8s watch to ensure app is refreshed (#4290)
  1145  
  1146  
  1147  ## v1.7.4 (2020-09-04)
  1148  
  1149  - fix: automatically stop watch API requests when page is hidden (#4269)
  1150  - fix: upgrade gitops-engine dependency (issues #4242, #1881) (#4268)
  1151  - fix: application stream API should not return 'ADDED' events if resource version is provided (#4260)
  1152  - fix: return parsing error (#3942)
  1153  - fix: JS error when using cluster filter in the /application view (#4247)
  1154  - fix: improve applications list page client side performance (#4244)
  1155  
  1156  ## v1.7.3 (2020-09-01)
  1157  
  1158  - fix: application details page crash when app is deleted (#4229)
  1159  - fix: api-server unnecessary normalize projects on every start (#4219)
  1160  - fix: load only project names in UI (#4217)
  1161  - fix: Re-create already initialized ARGOCD_GNUPGHOME on startup (#4214) (#4223)
  1162  - fix: Add openshift as a dex connector type which requires a redirectURI (#4222)
  1163  - fix: Replace status.observedAt with redis pub/sub channels for resource tree updates (#1340) (#4208)
  1164  - fix: cache inconsistency of child resources (#4053) (#4202)
  1165  - fix: do not include kube-api check in application liveness flow (#4163)
  1166  
  1167  ## v1.7.2 (2020-08-27)
  1168  
  1169  - fix: Sync hangs with cert-manager on latest RC (#4105)
  1170  - fix: support for PKCE for cli login (#2932)
  1171  
  1172  ## v1.7.2 (2020-08-25)
  1173  
  1174  - fix: Unable to create project JWT token on K8S v1.15 (#4165)
  1175  - fix: Argo CD does not exclude creationTimestamp from diffing (#4157)
  1176  
  1177  ## v1.7.0 (2020-08-24)
  1178  
  1179  ### GnuPG Signature Verification
  1180  
  1181  The feature allows to only sync against commits that are signed in Git using GnuPG. The list of public 
  1182  GPG keys required for verification is configured at the system level and can be managed using Argo CD CLI or Web user interface.
  1183  The keys management is integrated with Argo CD SSO and access control system (e.g. `argocd gpg add --from <path-to-key>`)
  1184  
  1185  The signature verification is enabled on the project level. The ApplicationProject CRD has a new signatureKeys field that includes
  1186  a list of imported public GPG keys. Argo CD will verify the commit signature by these keys for every project application.
  1187  
  1188  ### Cluster Management Enhancements
  1189  
  1190  The feature allows using the cluster name instead of the URL to specify the application destination cluster.
  1191  Additionally, the cluster CLI and Web user interface have been improved. Argo CD operators now can view and edit cluster
  1192  details using the Cluster Details page. The page includes cluster settings details as well as runtime information such
  1193  as the number of monitored Kubernetes resources.
  1194  
  1195  ### Diffing And Synchronization Usability
  1196  
  1197  * **Diffing logic improvement** Argo CD performs client-side resource diffing to detect deviations and present detected
  1198  differences in the UI and CLI. The 1.7 release aligns a comparison algorithm with server-side Kubernetes implementation
  1199  and removes inaccuracies in some edge cases.
  1200  
  1201  * **Helm Hooks Compatibility** The improvement removes the discrepancy between the way how Argo CD and Helm deletes
  1202  hooks resources. This significantly improves the compatibility and enables additional use cases.
  1203  
  1204  * **Namespace Auto-Creation** With a new option for applications Argo CD will ensure that namespace specified as the
  1205  application destination exists in the destination cluster. 
  1206  
  1207  * **Failed Sync Retry** This feature enables retrying of failed synchronization attempts during both manually-triggered
  1208  and automated synchronization.
  1209  
  1210  ### Orphaned Resources Monitoring Enhancement
  1211  
  1212  The enhancement allows configuring an exception list in Orphaned Resources settings to avoid false alarms.
  1213  
  1214  ## v1.6.2 (2020-08-01)
  1215  
  1216  - feat: adding validate for app create and app set (#4016)
  1217  - fix: use glob matcher in casbin built-in model (#3966)
  1218  - fix: Normalize Helm chart path when chart name contains a slash (#3987)
  1219  - fix: allow duplicates when using generateName (#3878)
  1220  - fix: nil pointer dereference while syncing an app (#3915)
  1221  
  1222  ## v1.6.1 (2020-06-18)
  1223  
  1224  - fix: User unable to generate project token even if account has appropriate permissions (#3804)
  1225  
  1226  ## v1.6.0 (2020-06-16)
  1227  
  1228  [1.6 Release blog post](https://blog.argoproj.io/argo-cd-v1-6-democratizing-gitops-with-gitops-engine-5a17cfc87d62)
  1229  
  1230  ### GitOps Engine
  1231  
  1232  As part of 1.6 release, the core Argo CD functionality has been moved into [GitOps Engine](https://github.com/argoproj/gitops-engine).
  1233  GitOps Engine is a reusable library that empowers you to quickly build specialized tools that implement specific GitOps
  1234  use cases, such as bootstrapping a Kubernetes cluster, or decentralized management of namespaces.
  1235  
  1236  #### Enhancements
  1237  
  1238  - feat: upgrade kustomize to v3.6.1 version (#3696)
  1239  - feat: Add build support for ARM images (#3554)
  1240  - feat: CLI: Allow setting Helm values literal (#3601) (#3646)
  1241  - feat: argocd-util settings resource-overrides list-actions (#3616)
  1242  - feat: adding failure retry (#3548)
  1243  - feat: Implement GKE ManagedCertificate CRD health checks (#3600)
  1244  - feat: Introduce diff normalizer knobs and allow for ignoring aggregated cluster roles (#2382) (#3076)
  1245  - feat: Implement Crossplane CRD health checks (#3581)
  1246  - feat: Adding deploy time and duration label (#3563)
  1247  - feat: support delete cluster from UI (#3555)
  1248  - feat: add button loading status for time-consuming operations (#3559)
  1249  - feat: Add --logformat switch to API server, repository server and controller (#3408)
  1250  - feat: Add a Get Repo command to see if Argo CD has a repo (#3523)
  1251  - feat: Allow selecting TLS ciphers on server (#3524)
  1252  - feat: Support additional metadata in Application sync operation (#3747)
  1253  - feat: upgrade redis to 5.0.8-alpine (#3783)
  1254  
  1255  #### Bug Fixes
  1256  
  1257  - fix: settings manager should invalidate cache after updating repositories/repository credentials (#3672)
  1258  - fix: Allow unsetting the last remaining values file (#3644) (#3645)
  1259  - fix: Read cert data from kubeconfig during cluster addition and use if present (#3655) (#3667)
  1260  - fix: oidc should set samesite cookie (#3632)
  1261  - fix: Allow underscores in hostnames in certificate module (#3596)
  1262  - fix: apply scopes from argocd-rbac-cm to project jwt group searches (#3508)
  1263  - fix: fix nil pointer dereference error after cluster deletion (#3634)
  1264  - fix: Prevent possible nil pointer dereference when getting Helm client (#3613)
  1265  - fix: Allow CLI version command to succeed without server connection (#3049) (#3550)
  1266  - fix: Fix login with port forwarding (#3574)
  1267  - fix: use 'git show-ref' to both retrieve and store generated manifests (#3578)
  1268  - fix: enable redis retries; add redis request duration metric (#3575)
  1269  - fix: Disable keep-alive for HTTPS connection to Git (#3531)
  1270  - fix: use uid instead of named user in Dockerfile (#3108)
  1271  
  1272  #### Other
  1273  
  1274  - refactoring: GitOps engine (#3066)
  1275  
  1276  ## v1.5.8 (2020-06-16)
  1277  
  1278  - fix: upgrade awscli version (#3774)
  1279  - fix: html encode login error/description before rendering it (#3773)
  1280  - fix: oidc should set samesite cookie (#3632)
  1281  - fix: avoid panic in badge handler (#3741)
  1282  
  1283  ## v1.5.7 (2020-06-09)
  1284  
  1285  The 1.5.7 patch release resolves issue #3719 . The ARGOCD_ENABLE_LEGACY_DIFF=true should be added to argocd-application-controller deployment.
  1286  
  1287  - fix: application with EnvoyFilter causes high memory/CPU usage (#3719)
  1288  
  1289  ## v1.5.6 (2020-06-02)
  1290  
  1291  - feat: Upgrade kustomize to 3.6.1
  1292  - fix: Prevent possible nil pointer dereference when getting Helm client (#3613)
  1293  - fix: avoid deadlock in settings manager (#3637)
  1294  
  1295  ## v1.5.5 (2020-05-16)
  1296  
  1297  - feat: add Rollout restart action (#3557)
  1298  - fix: enable redis retries; add redis request duration metric (#3547)
  1299  - fix: when --rootpath is on, 404 is returned when URL contains encoded URI (#3564)
  1300  
  1301  ## v1.5.4 (2020-05-05)
  1302  
  1303  - fix: CLI commands with --grpc-web
  1304  
  1305  ## v1.5.3 (2020-05-01)
  1306  
  1307  This patch release introduces a set of enhancements and bug fixes. Here are most notable changes:
  1308  
  1309  #### Multiple Kustomize Versions
  1310  
  1311  The bundled Kustomize version had been upgraded to v3.5.4. Argo CD allows changing bundled version using
  1312  [custom image or init container](https://argoproj.github.io/argo-cd/operator-manual/custom_tools/). 
  1313  This [feature](https://argoproj.github.io/argo-cd/user-guide/kustomize/#custom-kustomize-versions)
  1314  enables bundling multiple Kustomize versions at the same time and allows end-users to specify the required version per application.
  1315  
  1316  #### Custom Root Path
  1317  
  1318  The feature allows accessing Argo CD UI and API using a custom root path(for example https://myhostname/argocd).
  1319  This enables running Argo CD behind a proxy that takes care of user authentication (such as Ambassador) or hosting
  1320  multiple Argo CD using the same hostname. A set of bug fixes and enhancements had been implemented to makes it easier.
  1321  Use new `--rootpath` [flag](https://argoproj.github.io/argo-cd/operator-manual/ingress/#argocd-server-and-ui-root-path-v153) to enable the feature.
  1322  
  1323  ### Login Rate Limiting
  1324  
  1325  The feature prevents a built-in user password brute force attack and addresses the known 
  1326  [vulnerability](https://argoproj.github.io/argo-cd/security_considerations/#cve-2020-8827-insufficient-anti-automationanti-brute-force).
  1327  
  1328  ### Settings Management Tools
  1329  
  1330  A new set of [CLI commands](https://argoproj.github.io/argo-cd/operator-manual/troubleshooting/) that simplify configuring Argo CD.
  1331  Using the CLI you can test settings changes offline without affecting running Argo CD instance and have ability to troubleshot diffing
  1332  customizations, custom resource health checks, and more.
  1333  
  1334  ### Other
  1335  
  1336  * New Project and Application CRD settings ([#2900](https://github.com/argoproj/argo-cd/issues/2900), [#2873](https://github.com/argoproj/argo-cd/issues/2873)) that allows customizing Argo CD behavior.
  1337  * Upgraded Dex (v2.22.0) enables seamless [SSO integration](https://www.openshift.com/blog/openshift-authentication-integration-with-argocd) with OpenShift.
  1338  
  1339  
  1340  #### Enhancements
  1341  
  1342  * feat: added --grpc-web-root-path for CLI. (#3483)
  1343  * feat: limit the maximum number of concurrent login attempts (#3467)
  1344  * feat: upgrade kustomize version to 3.5.4 (#3472)
  1345  * feat: upgrade dex to 2.22.0 (#3468)
  1346  * feat: support user specified account token ids (#3425)
  1347  * feat: support separate Kustomize version per application (#3414)
  1348  * feat: add support for dex prometheus metrics (#3249)
  1349  * feat: add settings troubleshooting commands to the 'argocd-util' binary (#3398)
  1350  * feat: Let user to define meaningful unique JWT token name (#3388)
  1351  * feat: Display link between OLM ClusterServiceVersion and it's OperatorGroup (#3390)
  1352  * feat: Introduce sync-option SkipDryRunOnMissingResource=true (#2873) (#3247)
  1353  * feat: support normalizing CRD fields that use known built-in K8S types (#3357)
  1354  * feat: Whitelisted namespace resources (#2900)
  1355  
  1356  #### Bug Fixes
  1357  
  1358  * fix: added path to cookie (#3501)
  1359  * fix: 'argocd sync' does not take into account IgnoreExtraneous annotation (#3486)
  1360  * fix: CLI renders flipped diff results (#3480)
  1361  * fix: GetApplicationSyncWindows API should not validate project permissions (#3456)
  1362  * fix: argocd-util kubeconfig should use RawRestConfig to export config (#3447)
  1363  * fix: javascript error on accounts list page (#3453)
  1364  * fix: support both <group>/<kind> as well as <kind> as a resource override key (#3433)
  1365  * fix: Updating to jsonnet v1.15.0 fix issue #3277 (#3431)
  1366  * fix for helm repo add with flag --insecure-skip-server-verification (#3420)
  1367  * fix: app diff --local support for helm repo. #3151 (#3407)
  1368  * fix: Syncing apps incorrectly states "app synced", but this is not true (#3286)
  1369  * fix: for jsonnet when it is located in nested subdirectory and uses import (#3372)
  1370  * fix: Update 4.5.3 redis-ha helm manifest (#3370)
  1371  * fix: return 401 error code if username does not exist (#3369)
  1372  * fix: Do not panic while running hooks with short revision (#3368)
  1373  
  1374  ## v1.5.2 (2020-04-20)
  1375  
  1376  #### Critical security fix
  1377  
  1378  This release contains a critical security fix. Please refer to the
  1379  [security document](https://argoproj.github.io/argo-cd/security_considerations/#CVE-2020-5260-possible-git-credential-leak)
  1380  for more information.
  1381  
  1382  **Upgrading is strongly recommended**
  1383  
  1384  ## v1.4.3 (2020-04-20)
  1385  
  1386  #### Critical security fix
  1387  
  1388  This release contains a critical security fix. Please refer to the
  1389  [security document](https://argoproj.github.io/argo-cd/security_considerations/#CVE-2020-5260-possible-git-credential-leak)
  1390  for more information.
  1391  
  1392  ## v1.5.1 (2020-04-06)
  1393  
  1394  #### Bug Fixes
  1395  
  1396  * fix: return 401 error code if username does not exist (#3369)
  1397  * fix: Do not panic while running hooks with short revision (#3368)
  1398  * fix: Increase HAProxy check interval to prevent intermittent failures (#3356)
  1399  * fix: Helm v3 CRD are not deployed (#3345)
  1400  
  1401  ## v1.5.0 (2020-04-02)
  1402  
  1403  #### Helm Integration Enhancements - Helm 3 Support And More
  1404  
  1405  Introduced native support Helm3 charts. For backward compatibility Helm 2 charts are still rendered using Helm 2 CLI. Argo CD inspects the
  1406  Charts.yaml file and choose the right binary based on `apiVersion` value.
  1407  
  1408  Following enhancement were implemented in addition to Helm 3:
  1409  * The `--api-version` flag is passed to the `helm template` command during manifest generation.
  1410  * The `--set-file` flag can be specified in the application specification.
  1411  * Fixed bug that prevents automatically update Helm chart when new version is published (#3193)
  1412  
  1413  #### Better Performance and Improved Metrics
  1414  
  1415   If you are running Argo CD instances with several hundred applications on it, you should see a
  1416   huge performance boost and significantly less Kubernetes API server load.
  1417  
  1418   The Argo CD controller Prometheus metrics have been reworked to enable a richer Grafana dashboard.
  1419   The improved dashboard is available at [examples/dashboard.json](https://github.com/argoproj/argo-cd/blob/master/examples/dashboard.json).
  1420   You can set `ARGOCD_LEGACY_CONTROLLER_METRICS=true` environment variable and use [examples/dashboard-legacy.json](https://github.com/argoproj/argo-cd/blob/master/examples/dashboard-legacy.json)
  1421   to keep using old dashboard.
  1422  
  1423  #### Local accounts
  1424  
  1425  The local accounts had been introduced additional to `admin` user and SSO integration. The feature is useful for creating authentication
  1426  tokens with limited permissions to automate Argo CD management. Local accounts also could be used small by teams when SSO integration is overkill.
  1427  This enhancement also allows to disable admin user and enforce only SSO logins.
  1428  
  1429  #### Redis HA Proxy mode
  1430  
  1431  As part of this release, the bundled Redis was upgraded to version 4.3.4 with enabled HAProxy.
  1432  The HA proxy replaced the sentinel and provides more reliable Redis connection.
  1433  
  1434  > After publishing 1.5.0 release we've discovered that default HAProxy settings might cause intermittent failures.
  1435  > See [argo-cd#3358](https://github.com/argoproj/argo-cd/issues/3358)
  1436  
  1437  #### Windows CLI
  1438  
  1439  Windows users deploy to Kubernetes too! Now you can use Argo CD CLI on Linux, Mac OS, and Windows. The Windows compatible binary is available 
  1440  in the release details page as well as on the Argo CD Help page.
  1441  
  1442  #### Breaking Changes
  1443  
  1444  The `argocd_app_sync_status`, `argocd_app_health_status` and `argocd_app_created_time` prometheus metrics are deprecated in favor of additional labels
  1445  to `argocd_app_info` metric. The deprecated labels are still available can be re-enabled using `ARGOCD_LEGACY_CONTROLLER_METRICS=true` environment variable.
  1446  The legacy example Grafana dashboard is available at [examples/dashboard-legacy.json](https://github.com/argoproj/argo-cd/blob/master/examples/dashboard-legacy.json). 
  1447  
  1448  ####  Known issues
  1449  Last-minute bugs that will be addressed in 1.5.1 shortly:
  1450   
  1451  * https://github.com/argoproj/argo-cd/issues/3336
  1452  * https://github.com/argoproj/argo-cd/issues/3319
  1453  * https://github.com/argoproj/argo-cd/issues/3339
  1454  * https://github.com/argoproj/argo-cd/issues/3358
  1455  
  1456  #### Enhancements
  1457  * feat: support helm3 (#2383) (#3178)
  1458  * feat: Argo CD Service Account / Local Users #3185
  1459  * feat: Disable Admin Login (fixes #3019) (#3179)
  1460  * feat(ui): add docs to sync policy options present in create application panel (Close #3098) (#3203)
  1461  * feat: add "service-account" flag to "cluster add" command (#3183) (#3184)
  1462  * feat: Supports the validate-false option at an app level. Closes #1063 (#2542)
  1463  * feat: add dest cluster and namespace in the Events (#3093)
  1464  * feat: Rollback disables auto sync issue #2441 (#2591)
  1465  * feat: allow ssh and http repository references in bitbucketserver webhook #2773 (#3036)
  1466  * feat: Add helm --set-file support (#2751)
  1467  * feat: Include resource group for Event's InvolvedObject.APIVersion
  1468  * feat: Add argocd cmd for Windows #2121 (#3015)
  1469  
  1470  #### Bug Fixes
  1471  
  1472  - fix: app reconciliation fails with panic: index out of (#3233)
  1473  - fix: upgrade argoproj/pkg version to fix leaked sensitive information in logs (#3230)
  1474  - fix: set MaxCallSendMsgSize to MaxGRPCMessageSize for the GRPC caller (#3117)
  1475  - fix: stop caching helm index (#3193)
  1476  - fix: dex proxy should forward request to dex preserving the basehref (#3165)
  1477  - fix: set default login redirect to baseHRef (#3164)
  1478  - fix: don't double-prepend basehref to redirect URLs (fixes #3137)
  1479  - fix: ui referring to /api/version using absolute path (#3092)
  1480  - fix: Unhang UI on long app info items by using more sane URL match pattern (#3159)
  1481  - fix: Allow multiple hostnames per SSH known hosts entry and also allow IPv6 (#2814) (#3074)
  1482  - fix: argocd-util backup produced truncated backups. import app status (#3096)
  1483  - fix: upgrade redis-ha chart and enable haproxy (#3147)
  1484  - fix: make dex server deployment init container resilient to restarts (#3136)
  1485  - fix: redact secret values of manifests stored in git (#3088)
  1486  - fix: labels not being deleted via UI (#3081)
  1487  - fix: HTTP|HTTPS|NO_PROXY env variable reading #3055 (#3063)
  1488  - fix: Correct usage text for repo add command regarding insecure repos (#3068)
  1489  - fix: Ensure SSH private key is written out with a final newline character (#2890) (#3064)
  1490  - fix: Handle SSH URLs in 'git@server:org/repo' notation correctly (#3062)
  1491  - fix sso condition when several sso connectors has been configured (#3057)
  1492  - fix: Fix bug where the same pointer is used. (#3059)
  1493  - fix: Opening in new tab bad key binding on Linux (#3020)
  1494  - fix: K8s secrets for repository credential templates are not deleted when credential template is deleted (#3028)
  1495  - fix: SSH credential template not working #3016
  1496  - fix: Unable to parse kubectl pre-release version strings (#3034)
  1497  - fix: Jsonnet TLA parameters of same type are overwritten (#3022)
  1498  - fix: Replace aws-iam-authenticator to support IRSA (#3010)
  1499  - fix: Hide bindPW in dex config (#3025)
  1500  - fix: SSH repo URL with a user different from `git` is not matched correctly when resolving a webhook (#2988)
  1501  - fix: JWT invalid => Password for superuser has changed since token issued (#2108)
  1502  
  1503  #### Contributors
  1504  * alexandrfox
  1505  * alexec
  1506  * alexmt
  1507  * bergur88
  1508  * CBytelabs
  1509  * dbeal-wiser 
  1510  * dnascimento
  1511  * Elgarni
  1512  * eSamS
  1513  * gpaul
  1514  * jannfis
  1515  * jdmulloy
  1516  * machgo
  1517  * masa213f
  1518  * matthyx
  1519  * rayanebel
  1520  * shelby-moore
  1521  * tomcruise81
  1522  * wecger
  1523  * zeph
  1524  
  1525  ## v1.4.2 (2020-01-24)
  1526  
  1527  - fix: correctly replace cache in namespace isolation mode (#3023)
  1528  
  1529  ## v1.4.1 (2020-01-23)
  1530  
  1531  - fix: impossible to config RBAC if group name includes ',' (#3013)
  1532  
  1533  ## v1.4.0 (2020-01-17)
  1534  
  1535  The v1.4.0 is a stability release that brings multiple bug fixes, security, performance enhancements, and multiple usability improvements.
  1536  
  1537  #### New Features
  1538  
  1539  #### Security
  1540  A number of security enhancements and features have been implemented (thanks to [@jannfis](https://github.com/jannfis) for driving it! ):
  1541  * **Repository Credential Templates Management UI/CLI**. Now you can use Argo CD CLI or UI to configure
  1542  [credentials template](https://argoproj.github.io/argo-cd/user-guide/private-repositories/#credential-templates) for multiple repositories!
  1543  * **X-Frame-Options header on serving static assets**. The X-Frame-Options prevents third party sites to trick users into interacting with the application.
  1544  * **Tighten AppProject RBAC enforcement**. We've improved the enforcement of access rules specified in the
  1545  [application project](https://argoproj.github.io/argo-cd/operator-manual/declarative-setup/#projects) configuration.
  1546  
  1547  #### Namespace Isolation
  1548  With the namespace isolation feature, you are no longer have to give full read-only cluster access to the Argo CD. Instead, you can give access only to selected namespaces with-in
  1549  the cluster:
  1550  
  1551  ```bash
  1552  argocd cluster add <mycluster> --namespace <mynamespace1> --namespace <mynamespace2>
  1553  ```
  1554  
  1555  This feature is useful if you don't have full cluster access but still want to use Argo CD to manage some cluster namespaces. The feature also improves performance if Argo CD is
  1556  used to manage a few namespaces of a large cluster.
  1557  
  1558  #### Reconciliation Performance
  1559  The Argo CD no longer fork/exec `kubectl` to apply resource changes in the target cluster or convert resource manifest to the required manifest version. This reduces
  1560  CPU and Memory usage of large Argo CD instances.
  1561  
  1562  #### Resources Health based Hook Status
  1563  The existing Argo CD [resource hooks](https://argoproj.github.io/argo-cd/user-guide/resource_hooks/) feature allows running custom logic during the syncing process. You can mark
  1564  any Kubernetes resource as a hook and Argo CD assess hook status if resource is a `Pod`, `Job` or `Argo Workflow`. In the v1.4.0 release Argo CD is going to leverage resource
  1565  [health assessment](https://argoproj.github.io/argo-cd/operator-manual/health/) to get sync hook status. This allows using any custom CRD as a sync hook and leverage custom health
  1566  check logic.
  1567  
  1568  #### Manifest Generation
  1569  * **Track Helm Charts By Semantic Version**. You've been able to track charts hosted in Git repositories using branches to tags. This is now possible for Helm charts. You no longer
  1570   need to choose the exact version, such as v1.4.0 ,instead you can use a semantic version constraint such as v1.4.* and the latest version that matches will be installed.
  1571  * **Build Environment Variables**. Feature allows config management tool to get access to app details during manifest generation via
  1572  [environment variables](https://argoproj.github.io/argo-cd/user-guide/build-environment/).
  1573  * **Git submodules**. Argo CD is going to automatically fetch sub-modules if your repository has `.gitmodules` directory.
  1574  
  1575  #### UI and CLI
  1576  * **Improved Resource Tree View**. The Application details page got even prettier. The resource view was tuned to fit more resources into the screen, include more information about
  1577  each resource and don't lose usability at the same time.
  1578  * **New Account Management CLI Command**. The CLI allows to check which actions are allowed for your account: `argocd account can-i sync applications '*'`
  1579  
  1580  #### Maintenance Tools
  1581  The team put more effort into building tools that help to maintain Argo CD itself:
  1582  * **Bulk Project Editing**. The `argocd-util` allows to add and remove permissions defined in multiple project roles using one command.
  1583  * **More Prometheus Metrics**. A set of additional metrics that contains useful information managed clusters is exposed by application controller.
  1584  
  1585  More documentation and tools are coming in patch releases.
  1586  
  1587  #### Breaking Changes
  1588  
  1589  The Argo CD deletes all **in-flight** hooks if you terminate running sync operation. The hook state assessment change implemented in this release the Argo CD enables detection of 
  1590  an in-flight state for all Kubernetes resources including `Deployment`, `PVC`, `StatefulSet`, `ReplicaSet` etc. So if you terminate the sync operation that has, for example,
  1591  `StatefulSet` hook that is `Progressing` it will be deleted. The long-running jobs are not supposed to be used as a sync hook and you should consider using
  1592  [Sync Waves](https://argo-cd.readthedocs.io/en/stable/user-guide/sync-waves/) instead.
  1593  
  1594  #### Enhancements
  1595  * feat: Add custom health checks for cert-manager v0.11.0 (#2689) 
  1596  * feat: add git submodule support (#2495)
  1597  * feat: Add repository credential management API and CLI (addresses #2136) (#2207)
  1598  * feat: add support for --additional-headers cli flag (#2467)
  1599  * feat: Add support for ssh-with-port repo url (#2866) (#2948)
  1600  * feat: Add Time to ApplicationCondition. (#2417)
  1601  * feat: Adds `argocd auth can-i` command. Close #2255
  1602  * feat: Adds revision history limit. Closes #2790 (#2818)
  1603  * feat: Adds support for ARGO_CD_[TARGET_REVISION|REVISION] and pass to Custom Tool/Helm/Jsonnet 
  1604  * feat: Adds support for Helm charts to be a semver range. Closes #2552 (#2606)
  1605  * feat: Adds tracing to key external invocations. (#2811)
  1606  * feat: argocd-util should allow editing project policies in bulk  (#2615)
  1607  * feat: Displays controllerrevsion's revision in the UI. Closes #2306 (#2702)
  1608  * feat: Issue #2559 - Add gauge Prometheus metric which represents the number of pending manifest requests. (#2658)
  1609  * feat: Make ConvertToVersion maybe 1090% faster on average (#2820)
  1610  * feat: namespace isolation (#2839)
  1611  * feat: removes redundant mutex usage in controller cache and adds cluster cache metrics (#2898)
  1612  * feat: Set X-Frame-Options on serving static assets (#2706) (#2711)
  1613  * feat: Simplify using Argo CD without users/SSO/UI (#2688)
  1614  * feat: Template Out Data Source in Grafana Dashboard (#2859) 
  1615  * feat: Updates UI icons. Closes #2625 and #2757 (#2653)
  1616  * feat: use editor arguments in InteractiveEditor (#2833)
  1617  * feat: Use kubectl apply library instead of forking binary (#2861)
  1618  * feat: use resource health for hook status evaluation (#2938)
  1619  
  1620  #### Bug Fixes
  1621  
  1622  - fix: Adds support for /api/v1/account* via HTTP. Fixes #2664 (#2701)
  1623  - fix: Allow '@'-character in SSH usernames when connecting a repository (#2612)
  1624  - fix: Allow dot in project policy. Closes #2724 (#2755)
  1625  - fix: Allow you to sync local Helm apps.  Fixes #2741 (#2747)
  1626  - fix: Allows Helm parameters that contains arrays or maps. (#2525)
  1627  - fix: application-controller doesn't deal with rm/add same cluster gracefully (x509 unknown) (#2389)
  1628  - fix: diff local ignore kustomize build options (#2942)
  1629  - fix: Ensures that Helm charts are correctly resolved before sync. Fixes #2758 (#2760)
  1630  - fix: Fix 'Open application' link when using basehref (#2729)
  1631  - fix: fix a bug with cluster add when token secret is not first in list. (#2744)
  1632  - fix: fix bug where manifests are not cached. Fixes #2770 (#2771)
  1633  - fix: Fixes bug whereby retry does not work for CLI. Fixes #2767 (#2768)
  1634  - fix: git contention leads applications into Unknown state (#2877)
  1635  - fix: Issue #1944 - Gracefully handle missing cached app state (#2464)
  1636  - fix: Issue #2668 - Delete a specified context (#2669)
  1637  - fix: Issue #2683 - Make sure app update don't fail due to concurrent modification (#2852)
  1638  - fix: Issue #2721 Optimize helm repo querying (#2816)
  1639  - fix: Issue #2853 - Improve application env variables/labels editing (#2856)
  1640  - fix: Issue 2848 - Application Deployment history panel shows incorrect info for recent releases (#2849)
  1641  - fix: Make BeforeHookCreation the default. Fixes #2754 (#2759)
  1642  - fix: No error on `argocd app create` in CLI if `--revision` is omitted #2665
  1643  - fix: Only delete resources during app delete cascade if permitted to (fixes #2693) (#2695)
  1644  - fix: prevent user from seeing/deleting resources not permitted in project (#2908) (#2910)
  1645  - fix: self-heal should retry syncing an application after specified delay
  1646  - fix: stop logging dex config secrets #(2904) (#2937)
  1647  - fix: stop using jsondiffpatch on clientside to render resource difference  (#2869)
  1648  - fix: Target Revision truncated #2736
  1649  - fix: UI should re-trigger SSO login if SSO JWT token expires (#2891)
  1650  - fix: update argocd-util import was not working properly (#2939)
  1651  
  1652  #### Contributors
  1653  
  1654  * Aalok Ahluwalia
  1655  * Aananth K
  1656  * Abhishek Jaisingh
  1657  * Adam Johnson
  1658  * Alan Tang
  1659  * Alex Collins
  1660  * Alexander Matyushentsev
  1661  * Andrew Waters
  1662  * Byungjin Park
  1663  * Christine Banek
  1664  * Daniel Helfand
  1665  * David Hong
  1666  * David J. M. Karlsen
  1667  * David Maciel
  1668  * Devan Goodwin
  1669  * Devin Stein
  1670  * dthomson25
  1671  * Gene Liverman
  1672  * Gregor Krmelj
  1673  * Guido Maria Serra
  1674  * Ilir Bekteshi
  1675  * Imran Ismail
  1676  * INOUE BANJI
  1677  * Isaac Gaskin
  1678  * jannfis
  1679  * Jeff Hastings
  1680  * Jesse Suen
  1681  * John Girvan
  1682  * Konstantin
  1683  * Lev Aminov
  1684  * Manatsawin Hanmongkolchai
  1685  * Marco Schmid
  1686  * Masayuki Ishii
  1687  * Michael Bridgen
  1688  * Naoki Oketani
  1689  * niqdev
  1690  * nitinpatil1992
  1691  * Olivier Boukili
  1692  * Olivier Lemasle
  1693  * Omer Kahani
  1694  * Paul Brit
  1695  * Qingbo Zhou
  1696  * Saradhi Sreegiriraju
  1697  * Scott Cabrinha
  1698  * shlo
  1699  * Simon Behar
  1700  * stgarf
  1701  * Yujun Zhang
  1702  * Zoltán Reegn
  1703  
  1704  ## v1.3.4 (2019-12-05)
  1705  - #2819 Fixes logging of tracing option in CLI
  1706  
  1707  ## v1.3.3 (2019-12-05)
  1708  - #2721 High CPU utilisation (5 cores) and spammy logs
  1709  
  1710  ## v1.3.2 (2019-12-03)
  1711  - #2797 Fix directory traversal edge case and enhance tests
  1712  
  1713  ## v1.3.1 (2019-12-02)
  1714  - #2664 update account password from API resulted 404
  1715  - #2724 Can't use `DNS-1123` compliant app name when creating project role
  1716  - #2726 App list does not show chart for Helm app
  1717  - #2741 argocd local sync cannot parse kubernetes version
  1718  - #2754 BeforeHookCreation should be the default hook
  1719  - #2767 Fix bug whereby retry does not work for CLI
  1720  - #2770 Always cache miss for manifests
  1721  - #1345 argocd-application-controller: can not retrieve list of objects using index : Index with name namespace does not exist
  1722  
  1723  ## v1.3.0 (2019-11-13)
  1724  
  1725  #### New Features
  1726  
  1727  ##### Helm 1st-Class Support
  1728  
  1729  We know that for many of our users, they want to deploy existing Helm charts using Argo CD. Up until now that has required you to create an Argo CD app in a Git repo that does nothing but point to that chart. Now you can use a Helm chart repository is the same way as a Git repository.
  1730  
  1731  On top of that, we've improved support for Helm apps. The most common types of Helm hooks such as `pre-install` and `post-install` are supported as well as a the delete policy `before-hook-creation` which makes it easier to work with hooks.
  1732  
  1733  https://youtu.be/GP7xtrnNznw
  1734  
  1735  ##### Orphan Resources
  1736  
  1737  Some users would like to make sure that resources in a namespace are managed only by Argo CD. So we've introduced the concept of an "orphan resource" - any resource that is in namespace associated with an app, but not managed by Argo CD. This is enabled in the project settings. Once enabled, Argo CD will show in the app view any resources in the app's namespace that is not managed by Argo CD. 
  1738  
  1739  https://youtu.be/9ZoTevVQf5I
  1740  
  1741  ##### Sync Windows
  1742  
  1743  There may be instances when you want to control the times during which an Argo CD app can sync. Sync Windows now gives you the capability to create windows of time in which apps are either allowed or denied the ability to sync. This can apply to both manual and auto-sync, or just auto-sync. The windows are configured at the project level and assigned to apps using app name, namespace or cluster. Wildcards are supported for all fields.
  1744  
  1745  #### Enhancements
  1746  
  1747  * [UI] Add application labels to Applications list and Applications details page (#1099)
  1748  * Helm repository as first class Argo CD Application source (#1145)
  1749  * Ability to generate a warn/alert when a namespace deviates from the expected state (#1167)
  1750  * Improve diff support for resource requests/limits (#1615)
  1751  * HTTP API should allow JWT to be passed via Authorization header (#1642)
  1752  * Ability to create & upsert projects from spec (#1852)
  1753  * Support for in-line block from helm chart values (#1930)
  1754  * Request OIDC groups claim if groups scope is not supported (#1956)
  1755  * Add a maintenance window for Applications with automated syncing (#1995)
  1756  * Support `argocd.argoproj.io/hook-delete-policy: BeforeHookCreation` (#2036)
  1757  * Support setting Helm string parameters using CLI/UI (#2078)
  1758  * Config management plugin environment variable UI/CLI support (#2203)
  1759  * Helm: auto-detect URLs (#2260)
  1760  * Helm: UI improvements (#2261)
  1761  * Support `helm template --kube-version ` (#2275)
  1762  * Use community icons for resources (#2277)
  1763  * Make `group` optional for `ignoreDifferences` config (#2298)
  1764  * Update Helm docs (#2315)
  1765  * Add cluster information into Splunk (#2354)
  1766  * argocd list command should have filter options like by project (#2396)
  1767  * Add target/current revision to status badge (#2445)
  1768  * Update tooling to use Kustomize v3 (#2487)
  1769  * Update root `Dockerfile` to use the `hack/install.sh` (#2488)
  1770  * Support and document using HPA for repo-server (#2559)
  1771  * Upgrade Helm  (#2587)
  1772  * UI fixes for "Sync Apps" panel. (#2604)
  1773  * Upgrade kustomize from v3.1.0 to v3.2.1 (#2609)
  1774  * Map helm lifecycle hooks to ArgoCD pre/post/sync hooks (#355)
  1775  * [UI] Enhance app creation page with Helm parameters overrides (#1059)
  1776  
  1777  #### Bug Fixes
  1778  
  1779  - failed parsing on parameters with comma (#1660)
  1780  - StatefulSet with OnDelete Update Strategy stuck progressing (#1881)
  1781  - Warning during secret diffing (#1923)
  1782  - Error message "Unable to load data: key is missing" is confusing (#1944)
  1783  - OIDC group bindings are truncated (#2006)
  1784  - Multiple parallel app syncs causes OOM (#2022)
  1785  - Unknown error when setting params with argocd app set on helm app (#2046)
  1786  - Endpoint is no longer shown as a child of services (#2060)
  1787  - SSH known hosts entry cannot be deleted if contains shell pattern in name (#2099)
  1788  - Application 404s on names with periods (#2114)
  1789  - Adding certs for hostnames ending with a dot (.) is not possible (#2116)
  1790  - Fix `TestHookDeleteBeforeCreation` (#2141)
  1791  - v1.2.0-rc1 nil pointer dereference when syncing (#2146)
  1792  - Replacing services failure (#2150)
  1793  - 1.2.0-rc1 - Authentication Required error in Repo Server (#2152)
  1794  - v1.2.0-rc1 Applications List View doesn't work (#2174)
  1795  - Manual sync does not trigger Presync hooks (#2185)
  1796  - SyncError app condition disappears during app reconciliation (#2192)
  1797  - argocd app wait\sync prints 'Unknown' for resources without health (#2198)
  1798  - 1.2.0-rc2 Warning during secret diffing (#2206)
  1799  - SSO redirect url is incorrect if configured Argo CD URL has trailing slash (#2212)
  1800  - Application summary diff page shows hooks (#2215)
  1801  - An app with a single resource and Sync hook remains progressing (#2216)
  1802  - CONTRIBUTING documentation outdated (#2231)
  1803  - v1.2.0-rc2 does not retrieve http(s) based git repository behind the proxy (#2243)
  1804  - Intermittent "git ls-remote" request failures should not fail app reconciliation (#2245)
  1805  - Result of ListApps operation for Git repo is cached incorrectly (#2263)
  1806  - ListApps does not utilize cache (#2287)
  1807  - Controller panics due to nil pointer error (#2290)
  1808  - The Helm --kube-version support does not work on GKE: (#2303)
  1809  - Fixes bug that prevents you creating repos via UI/CLI.  (#2308)
  1810  - The 'helm.repositories' settings is dropped without migration path (#2316)
  1811  - Badge response does not contain cache control header (#2317)
  1812  - Inconsistent sync result from UI and CLI (#2321)
  1813  - Failed edit application with plugin type requiring environment (#2330)
  1814  - AutoSync doesn't work anymore (#2339)
  1815  - End-to-End tests not working with Kubernetes v1.16 (#2371)
  1816  - Creating an application from Helm repository should select "Helm" as source type (#2378)
  1817  - The parameters of ValidateAccess GRPC method should not be logged  (#2386)
  1818  - Maintenance window meaning is confusing (#2398)
  1819  - UI bug when targetRevision is omitted (#2407)
  1820  - Too many vulnerabilities in Docker image (#2425)
  1821  - proj windows commands not consistent with other commands (#2443)
  1822  - Custom resource actions cannot be executed from the UI (#2448)
  1823  - Application controller sometimes accidentally removes duplicated/excluded resource warning condition (#2453)
  1824  - Logic that checks sync windows state in the cli is incorrect (#2455)
  1825  - UI don't allow to create window with `* * * * *` schedule (#2475)
  1826  - Helm Hook is executed twice if annotated with both pre-install and pre-upgrade annotations (#2480)
  1827  - Impossible to edit chart name using App details page (#2484)
  1828  - ArgoCD does not provide CSRF protection (#2496)
  1829  - ArgoCD failing to install CRDs in master from Helm Charts (#2497)
  1830  - Timestamp in Helm package file name causes error in Application with Helm source (#2549)
  1831  - Attempting to create a repo with password but not username panics (#2567)
  1832  - UI incorrectly mark resources as `Required Pruning` (#2577)
  1833  - argocd app diff prints only first difference (#2616)
  1834  - Bump min client cache version (#2619)
  1835  - Cluster list page fails if any cluster is not reachable (#2620)
  1836  - Repository type should be mandatory for repo add command in CLI (#2622)
  1837  - Repo server executes unnecessary ls-remotes (#2626)
  1838  - Application list page incorrectly filter apps by label selector (#2633)
  1839  - Custom actions are disabled in Argo CD UI (#2635)
  1840  - Failure of `argocd version` in the self-building container image (#2645)
  1841  - Application list page is not updated automatically anymore (#2655)
  1842  - Login regression issues (#2659)
  1843  - Regression: Cannot return Kustomize version for 3.1.0 (#2662)
  1844  - API server does not allow creating role with action `action/*` (#2670)
  1845  - Application controller `kubectl-parallelism-limit` flag is broken (#2673)
  1846  - Annoying toolbar flickering (#2691)
  1847  
  1848  ## v1.2.5 (2019-10-29)
  1849  
  1850  - Issue #2339 - Don't update `status.reconciledAt` unless compared with latest git version (#2581)
  1851  
  1852  ## v1.2.4 (2019-10-23)
  1853  
  1854  - Issue #2185 - Manual sync don't trigger hooks (#2477)
  1855  - Issue #2339 - Controller should compare with latest git revision if app has changed (#2543)
  1856  - Unknown child app should not affect app health (#2544)
  1857  - Redact secrets in dex logs (#2538)
  1858  
  1859  ## v1.2.3 (2019-10-1)
  1860  * Make argo-cd docker images openshift friendly (#2362) (@duboisf)
  1861  * Add dest-server and dest-namespace field to reconciliation logs (#2354)
  1862  - Stop logging /repository.RepositoryService/ValidateAccess parameters (#2386)
  1863  
  1864  ## v1.2.2 (2019-09-26)
  1865  + Resource action equivalent to `kubectl rollout restart` (#2177)
  1866  - Badge response does not contain cache-control header (#2317) (@greenstatic)
  1867  - Make sure the controller uses the latest git version if app reconciliation result expired (#2339)
  1868  
  1869  ## v1.2.1 (2019-09-12)
  1870  + Support limiting number of concurrent kubectl fork/execs (#2022)
  1871  + Add --self-heal flag to argocd cli (#2296)
  1872  - Fix degraded proxy support for http(s) git repository (#2243)
  1873  - Fix nil pointer dereference in application controller (#2290)
  1874  
  1875  ## v1.2.0 (2019-09-05)
  1876  
  1877  ### New Features
  1878  
  1879  #### Server Certificate And Known Hosts Management
  1880  
  1881  The Server Certificate And Known Hosts Management feature makes it really easy to connect private Git repositories to Argo CD. Now Argo CD provides UI and CLI which
  1882  enables managing certificates and known hosts which are used to access Git repositories. It is also possible to configure both hosts and certificates in a declarative manner using
  1883  [argocd-ssh-known-hosts-cm](https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/argocd-ssh-known-hosts-cm.yaml) and 
  1884  [argocd-tls-certs-cm.yaml](https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/argocd-tls-certs-cm.yaml) config maps.
  1885  
  1886  #### Self-Healing
  1887  
  1888  The existing Automatic Sync feature allows to automatically apply any new changes in Git to the target Kubernetes cluster. However, Automatic Sync does not cover the case when the
  1889  application is out of sync due to the unexpected change in the target cluster. The Self-Healing feature fills this gap. With Self-Healing enabled Argo CD automatically pushes the desired state from Git into the cluster every time when state deviation is detected.
  1890  
  1891  **Anonymous access** - enable read-only access without authentication to anyone in your organization.
  1892  
  1893  Support for Git LFS enabled repositories - now you can store Helm charts as tar files and enable Git LFS in your repository.
  1894  
  1895  **Compact diff view** - compact diff summary of the whole application in a single view.
  1896  
  1897  **Badge for application status** - add badge with the health and sync status of your application into README.md of your deployment repo.
  1898  
  1899  **Allow configuring google analytics tracking** - use Google Analytics to check how many users are visiting UI or your Argo CD instance.
  1900  
  1901  #### Backward Incompatible Changes
  1902  - Kustomize v1 support is removed. All kustomize charts are built using the same Kustomize version
  1903  - Kustomize v2.0.3 upgraded to v3.1.0 . We've noticed one backward incompatible change: https://github.com/kubernetes-sigs/kustomize/issues/42 . Starting v2.1.0 namespace prefix feature works with CRD ( which might cause renaming of generated resource definitions)
  1904  - Argo CD config maps must be annotated with `app.kubernetes.io/part-of: argocd` label. Make sure to apply updated `install.yaml` manifest in addition to changing image version.
  1905  
  1906  
  1907  #### Enhancements
  1908  + Adds a floating action button with help and chat links to every page.… (#2124)
  1909  + Enhances cookie warning with actual length to help users fix their co… (#2134)
  1910  + Added 'SyncFail' to possible HookTypes in UI (#2147)
  1911  + Support for Git LFS enabled repositories (#1853)
  1912  + Server certificate and known hosts management (#1514)
  1913  + Client HTTPS certificates for private git repositories (#1945)
  1914  + Badge for application status (#1435)
  1915  + Make the health check for APIService a built in (#1841)
  1916  + Bitbucket Server and Gogs webhook providers (#1269)
  1917  + Jsonnet TLA arguments in ArgoCD CLI (#1626)
  1918  + Self Healing (#1736)
  1919  + Compact diff view (#1831)
  1920  + Allow Helm parameters to force ambiguously-typed values to be strings (#1846)
  1921  + Support anonymous argocd access (#1620)
  1922  + Allow configuring google analytics tracking (#738)
  1923  + Bash autocompletion for argocd (#1798)
  1924  + Additional commit metadata (#1219)
  1925  + Displays targetRevision in app dashboards. (#1239)
  1926  + Local path syncing (#839)
  1927  + System level `kustomize build` options (#1789)
  1928  + Adds support for `argocd app set` for Kustomize. (#1843)
  1929  + Allow users to create tokens for projects where they have any role. (#1977)
  1930  + Add Refresh button to applications table and card view (#1606)
  1931  + Adds CLI support for adding and removing groups from project roles. (#1851)
  1932  + Support dry run and hook vs. apply strategy during sync (#798)
  1933  + UI should remember most recent selected tab on resource info panel (#2007)
  1934  + Adds link to the project from the app summary page. (#1911)
  1935  + Different icon for resources which require pruning (#1159)
  1936  
  1937  #### Bug Fixes
  1938  
  1939  - Do not panic if the type is not api.Status (an error scenario) (#2105)
  1940  - Make sure endpoint is shown as a child of service (#2060)
  1941  - Word-wraps app info in the table and list views. (#2004)
  1942  - Project source/destination removal should consider wildcards (#1780)
  1943  - Repo whitelisting in UI does not support wildcards (#2000)
  1944  - Wait for CRD creation during sync process (#1940)
  1945  - Added a button to select out of sync items in the sync panel (#1902)
  1946  - Proper handling of an excluded resource in an application (#1621)
  1947  - Stop repeating logs on stopped container (#1614)
  1948  - Fix git repo url parsing on application list view (#2174)
  1949  - Fix nil pointer dereference error during app reconciliation (#2146)
  1950  - Fix history api fallback implementation to support app names with dots (#2114)
  1951  - Fixes some code issues related to Kustomize build options. (#2146)
  1952  - Adds checks around valid paths for apps (#2133)
  1953  - Endpoint incorrectly considered top level managed resource (#2060)
  1954  - Allow adding certs for hostnames ending on a dot (#2116)
  1955  
  1956  #### Other
  1957  * Upgrade kustomize to v3.1.0 (#2068)
  1958  * Remove support for Kustomize 1. (#1573)
  1959  
  1960  #### Contributors
  1961  
  1962  * [alexec](https://github.com/alexec)
  1963  * [alexmt](https://github.com/alexmt)
  1964  * [dmizelle](https://github.com/dmizelle)
  1965  * [lcostea](https://github.com/lcostea)
  1966  * [jutley](https://github.com/jutley)
  1967  * [masa213f](https://github.com/masa213f)
  1968  * [Rayyis](https://github.com/Rayyis)
  1969  * [simster7](https://github.com/simster7)
  1970  * [dthomson25](https://github.com/dthomson25)
  1971  * [jannfis](https://github.com/jannfis)
  1972  * [naynasiddharth](https://github.com/naynasiddharth)
  1973  * [stgarf](https://github.com/stgarf)
  1974  
  1975  
  1976  ## v1.1.2 (2019-07-30)
  1977  - 'argocd app wait' should print correct sync status (#2049)
  1978  - Check that TLS is enabled when registering DEX Handlers (#2047)
  1979  - Do not ignore Argo hooks when there is a Helm hook. (#1952)
  1980  
  1981  ## v1.1.1 (2019-07-25)
  1982  + Support 'override' action in UI/API (#1984)
  1983  - Fix argocd app wait message (#1982)
  1984  
  1985  ## v1.1.0 (2019-07-24)
  1986  
  1987  ### New Features
  1988  
  1989  #### Sync Waves
  1990  
  1991  Sync waves feature allows executing a sync operation in a number of steps or waves. Within each synchronization phase (pre-sync, sync, post-sync) you can have one or more waves,
  1992  than allows you to ensure certain resources are healthy before subsequent resources are synced.
  1993  
  1994  #### Optimized Interaction With Git
  1995  
  1996  Argo CD needs to execute `git fetch` operation to access application manifests and `git ls-remote` to resolve ambiguous git revision. The `git ls-remote` is executed very frequently
  1997  and although the operation is very lightweight it adds unnecessary load on Git server and might cause performance issues. In v1.1 release, the application reconciliation process was
  1998  optimized which significantly reduced the number of Git requests. With v1.1 release, Argo CD should send 3x ~ 5x fewer Git requests.
  1999  
  2000  #### User Defined Application Metadata
  2001  
  2002  User-defined Application metadata enables the user to define a list of useful URLs for their specific application and expose those links on the UI
  2003  (e.g. reference to a CI pipeline or an application-specific management tool). These links should provide helpful shortcuts that make easier to integrate Argo CD into existing
  2004  systems by making it easier to find other components inside and outside Argo CD.
  2005  
  2006  ### Deprecation Notice
  2007  
  2008  * Kustomize v1.0 is deprecated and support will be removed in the Argo CD v1.2 release.
  2009  
  2010  #### Enhancements
  2011  
  2012  - Sync waves [#1544](https://github.com/argoproj/argo-cd/issues/1544)
  2013  - Adds Prune=false and IgnoreExtraneous options [#1629](https://github.com/argoproj/argo-cd/issues/1629)
  2014  - Forward Git credentials to config management plugins [#1628](https://github.com/argoproj/argo-cd/issues/1628)
  2015  - Improve Kustomize 2 parameters UI [#1609](https://github.com/argoproj/argo-cd/issues/1609)
  2016  - Adds `argocd logout` [#1210](https://github.com/argoproj/argo-cd/issues/1210)
  2017  - Make it possible to set Helm release name different from Argo CD app name.  [#1066](https://github.com/argoproj/argo-cd/issues/1066)
  2018  - Add ability to specify system namespace during cluster add operation [#1661](https://github.com/argoproj/argo-cd/pull/1661) 
  2019  - Make listener and metrics ports configurable [#1647](https://github.com/argoproj/argo-cd/pull/1647) 
  2020  - Using SSH keys to authenticate kustomize bases from git [#827](https://github.com/argoproj/argo-cd/issues/827)
  2021  - Adds `argocd app sync APPNAME --async` [#1728](https://github.com/argoproj/argo-cd/issues/1728)
  2022  - Allow users to define app specific urls to expose in the UI [#1677](https://github.com/argoproj/argo-cd/issues/1677)
  2023  - Error view instead of blank page in UI [#1375](https://github.com/argoproj/argo-cd/issues/1375)
  2024  - Project Editor: Whitelisted Cluster Resources doesn't strip whitespace [#1693](https://github.com/argoproj/argo-cd/issues/1693)
  2025  - Eliminate unnecessary git interactions for top-level resource changes (#1919)
  2026  - Ability to rotate the bearer token used to manage external clusters (#1084)
  2027  
  2028  #### Bug Fixes
  2029  
  2030  - Project Editor: Whitelisted Cluster Resources doesn't strip whitespace [#1693](https://github.com/argoproj/argo-cd/issues/1693)
  2031  - \[ui small bug\] menu position outside block [#1711](https://github.com/argoproj/argo-cd/issues/1711)
  2032  - UI will crash when create application without destination namespace [#1701](https://github.com/argoproj/argo-cd/issues/1701)
  2033  - ArgoCD synchronization failed due to internal error [#1697](https://github.com/argoproj/argo-cd/issues/1697)
  2034  - Replicasets ordering is not stable on app tree view [#1668](https://github.com/argoproj/argo-cd/issues/1668)
  2035  - Stuck processor on App Controller after deleting application with incomplete operation [#1665](https://github.com/argoproj/argo-cd/issues/1665)
  2036  - Role edit page fails with JS error [#1662](https://github.com/argoproj/argo-cd/issues/1662)
  2037  - failed parsing on parameters with comma [#1660](https://github.com/argoproj/argo-cd/issues/1660)
  2038  - Handle nil obj when processing custom actions [#1700](https://github.com/argoproj/argo-cd/pull/1700)
  2039  - Account for missing fields in Rollout HealthStatus [#1699](https://github.com/argoproj/argo-cd/pull/1699) 
  2040  - Sync operation unnecessary waits for a healthy state of all resources [#1715](https://github.com/argoproj/argo-cd/issues/1715)
  2041  - failed parsing on parameters with comma [#1660](https://github.com/argoproj/argo-cd/issues/1660)
  2042  - argocd app sync hangs when cluster is not configured (#1935)
  2043  - Do not allow app-of-app child app's Missing status to affect parent (#1954)
  2044  - Argo CD don't handle well k8s objects which size exceeds 1mb (#1685)
  2045  - Secret data not redacted in last-applied-configuration (#897)
  2046  - Running app actions requires only read privileges (#1827)
  2047  - UI should allow editing repo URL (#1763)
  2048  - Make status fields as optional fields (#1779)
  2049  - Use correct healthcheck for Rollout with empty steps list (#1776)
  2050  
  2051  #### Other
  2052  
  2053  - Add Prometheus metrics for git repo interactions (#1912)
  2054  - App controller should log additional information during app syncing (#1909)
  2055  - Make sure api server to repo server grpc calls have timeout (#1820)
  2056  - Forked tool processes should timeout (#1821)
  2057  - Add health check to the controller deployment (#1785)
  2058  
  2059  #### Contributors
  2060  
  2061  * [Aditya Gupta](https://github.com/AdityaGupta1)
  2062  * [Alex Collins](https://github.com/alexec)
  2063  * [Alex Matyushentsev](https://github.com/alexmt)
  2064  * [Danny Thomson](https://github.com/dthomson25)
  2065  * [jannfis](https://github.com/jannfis)
  2066  * [Jesse Suen](https://github.com/jessesuen)
  2067  * [Liviu Costea](https://github.com/lcostea)
  2068  * [narg95](https://github.com/narg95)
  2069  * [Simon Behar](https://github.com/simster7)
  2070  
  2071  See also [milestone v1.1](https://github.com/argoproj/argo-cd/milestone/13)
  2072  
  2073  ## v1.0.0 (2019-05-16)
  2074  
  2075  ### New Features
  2076  
  2077  #### Network View
  2078  
  2079  A new way to visual application resources had been introduced to the Application Details page. The Network View visualizes connections between Ingresses, Services and Pods
  2080  based on ingress reference service, service's label selectors and labels. The new view is useful to understand the application traffic flow and troubleshot connectivity issues.
  2081  
  2082  #### Custom Actions
  2083  
  2084  Argo CD introduces Custom Resource Actions to allow users to provide their own Lua scripts to modify existing Kubernetes resources in their applications. These actions are exposed in the UI to allow easy, safe, and reliable changes to their resources.  This functionality can be used to introduce functionality such as suspending and enabling a Kubernetes cronjob, continue a BlueGreen deployment with Argo Rollouts, or scaling a deployment. 
  2085  
  2086  #### UI Enhancements & Usability Enhancements
  2087  
  2088  * New color palette intended to highlight unhealthily and out-of-sync resources more clearly.
  2089  * The health of more resources is displayed, so it easier to quickly zoom to unhealthy pods, replica-sets, etc.
  2090  * Resources that do not have health no longer appear to be healthy. 
  2091  * Support for configuring Git repo credentials at a domain/org level
  2092  * Support for configuring requested OIDC provider scopes and enforced RBAC scopes
  2093  * Support for configuring monitored resources whitelist in addition to excluded resources
  2094  
  2095  ### Breaking Changes
  2096  
  2097  * Remove deprecated componentParameterOverrides field #1372
  2098  
  2099  ### Changes since v0.12.2
  2100  
  2101  #### Enhancements
  2102  
  2103  * `argocd app wait` should have `--resource` flag like sync #1206
  2104  * Adds support for `kustomize edit set image`. Closes #1275 (#1324)
  2105  * Allow wait to return on health or suspended (#1392)
  2106  * Application warning when a manifest is defined twice #1070
  2107  * Create new documentation website #1390
  2108  * Default view should resource view instead of diff view #1354
  2109  * Display number of errors on resource tab #1477
  2110  * Displays resources that are being deleted as "Progressing". Closes #1410 (#1426)
  2111  * Generate random name for grpc proxy unix socket file instead of time stamp (#1455)
  2112  * Issue #357 - Expose application nodes networking information (#1333)
  2113  * Issue #1404 - App controller unnecessary set namespace to cluster level resources (#1405)
  2114  * Nils health if the resource does not provide it. Closes #1383 (#1408)
  2115  * Perform health assessments on all resource nodes in the tree. Closes #1382 (#1422)
  2116  * Remove deprecated componentParameterOverrides field #1372
  2117  * Shows the health of the application. Closes #1433 (#1434)
  2118  * Surface Service/Ingress external IPs, hostname to application #908
  2119  * Surface pod status to tree view #1358
  2120  * Support for customizable resource actions as Lua scripts #86
  2121  * UI / API Errors Truncated, Time Out #1386
  2122  * UI Enhancement Proposals Quick Wins #1274
  2123  * Update argocd-util import/export to support proper backup and restore (#1328)
  2124  * Whitelisting repos/clusters in projects should consider repo/cluster permissions #1432
  2125  * Adds support for configuring repo creds at a domain/org level. (#1332)
  2126  * Implement whitelist option analogous to `resource.exclusions` (#1490)
  2127  * Added ability to sync specific labels from the command line (#1241)
  2128  * Improve rendering app image information (#1552)
  2129  * Add liveness probe to repo server/api servers (#1546)
  2130  * Support configuring requested OIDC provider scopes and enforced RBAC scopes (#1471)
  2131  
  2132  #### Bug Fixes
  2133  
  2134  - Don't compare secrets in the CLI, since argo-cd doesn't have access to their data (#1459)
  2135  - Dropdown menu should not have sync item for unmanaged resources #1357
  2136  - Fixes goroutine leak. Closes #1381 (#1457)
  2137  - Improve input style #1217
  2138  - Issue #908 - Surface Service/Ingress external IPs, hostname to application (#1347)
  2139  - kustomization fields are all mandatory #1504
  2140  - Resource node details is crashing if live resource is missing $1505
  2141  - Rollback UI is not showing correct ksonnet parameters in preview #1326
  2142  - See details of applications fails with "r.nodes is undefined" #1371
  2143  - UI fails to load custom actions is resource is not deployed #1502
  2144  - Unable to create app from private repo: x509: certificate signed by unknown authority (#1171)
  2145  - Fix hardcoded 'git' user in `util/git.NewClient` (#1555)
  2146  - Application controller becomes unresponsive (#1476)
  2147  - Load target resource using K8S if conversion fails (#1414)
  2148  - Can't ignore a non-existent pointer anymore (#1586)
  2149  - Impossible to sync to HEAD from UI if auto-sync is enabled (#1579)
  2150  - Application controller is unable to delete self-referenced app (#1570)
  2151  - Prevent reconciliation loop for self-managed apps (#1533)
  2152  - Controller incorrectly report health state of self managed application (#1557)
  2153  - Fix kustomize manifest generation crash is manifest has image without version (#1540)
  2154  - Supply resourceVersion to watch request to prevent reading of stale cache (#1605)
  2155  
  2156  ## v0.12.2 (2019-04-22)
  2157  
  2158  ### Changes since v0.12.1
  2159  
  2160  - Fix racing condition in controller cache (#1498)
  2161  - "bind: address already in use" after switching to gRPC-Web (#1451)
  2162  - Annoying warning while using --grpc-web flag (#1420)
  2163  - Delete helm temp directories (#1446)
  2164  - Fix null pointer exception in secret normalization function (#1389)
  2165  - Argo CD should not delete CRDs(#1425)
  2166  - UI is unable to load cluster level resource manifest (#1429)
  2167  
  2168  ## v0.12.1 (2019-04-09)
  2169  
  2170  ### Changes since v0.12.0
  2171  
  2172  - [UI] applications view blows up when user does not have  permissions (#1368)
  2173  - Add k8s objects circular dependency protection to getApp method (#1374)
  2174  - App controller unnecessary set namespace to cluster level resources (#1404)
  2175  - Changing SSO login URL to be a relative link so it's affected by basehref (#101) (@arnarg)
  2176  - CLI diff should take into account resource customizations (#1294)
  2177  - Don't try deleting application resource if it already has `deletionTimestamp` (#1406)
  2178  - Fix invalid group filtering in 'patch-resource' command (#1319)
  2179  - Fix null pointer dereference error in 'argocd app wait' (#1366)
  2180  - kubectl v1.13 fails to convert extensions/NetworkPolicy (#1012)
  2181  - Patch APIs are not audited (#1397)
  2182  
  2183  + 'argocd app wait' should fail sooner if app transitioned to Degraded state (#733)
  2184  + Add mapping to new canonical Ingress API group - kubernetes 1.14 support (#1348) (@twz123)
  2185  + Adds support for `kustomize edit set image`. (#1275)
  2186  + Allow using any name for secrets which store cluster credentials (#1218)
  2187  + Update argocd-util import/export to support proper backup and restore (#1048)
  2188  
  2189  ## v0.12.0 (2019-03-20)
  2190  
  2191  ### New Features
  2192  
  2193  #### Improved UI
  2194  
  2195  Many improvements to the UI were made, including:
  2196  
  2197  * Table view when viewing applications
  2198  * Filters on applications
  2199  * Table view when viewing application resources
  2200  * YAML editor in UI
  2201  * Switch to text-based diff instead of json diff
  2202  * Ability to edit application specs
  2203  
  2204  #### Custom Health Assessments (CRD Health)
  2205  
  2206  Argo CD has long been able to perform health assessments on resources, however this could only
  2207  assess the health for a few native kubernetes types (deployments, statefulsets, daemonsets, etc...).
  2208  Now, Argo CD can be extended to gain understanding of any CRD health, in the form of Lua scripts.
  2209  For example, using this feature, Argo CD now understands the CertManager Certificate CRD and will
  2210  report a Degraded status when there are issues with the cert.
  2211  
  2212  #### Configuration Management Plugins
  2213  
  2214  Argo CD introduces Config Management Plugins to support custom configuration management tools other
  2215  than the set that Argo CD provides out-of-the-box (Helm, Kustomize, Ksonnet, Jsonnet). Using config
  2216  management plugins, Argo CD can be configured to run specified commands to render manifests. This
  2217  makes it possible for Argo CD to support other config management tools (kubecfg, kapitan, shell
  2218  scripts, etc...).
  2219  
  2220  #### High Availability
  2221  
  2222  Argo CD is now fully HA. A set HA of manifests are provided for users who wish to run Argo CD in
  2223  a highly available manner. NOTE: The HA installation will require at least three different nodes due
  2224  to pod anti-affinity roles in the specs.
  2225  
  2226  #### Improved Application Source
  2227  
  2228  * Support for Kustomize 2
  2229  * YAML/JSON/Jsonnet Directories can now be recursed
  2230  * Support for Jsonnet external variables and top-level arguments
  2231  
  2232  #### Additional Prometheus Metrics
  2233  
  2234  Argo CD provides the following additional prometheus metrics:
  2235  * Sync counter to track sync activity and results over time
  2236  * Application reconciliation (refresh) performance to track Argo CD performance and controller activity
  2237  * Argo CD API Server metrics for monitoring HTTP/gRPC requests
  2238  
  2239  #### Fuzzy Diff Logic
  2240  
  2241  Argo CD can now be configured to ignore known differences for resource types by specifying a json
  2242  pointer to the field path to ignore. This helps prevent OutOfSync conditions when a user has no
  2243  control over the manifests. Ignored differences can be configured either at an application level, 
  2244  or a system level, based on a group/kind.
  2245  
  2246  #### Resource Exclusions
  2247  
  2248  Argo CD can now be configured to completely ignore entire classes of resources group/kinds.
  2249  Excluding high-volume resources improves performance and memory usage, and reduces load and
  2250  bandwidth to the Kubernetes API server. It also allows users to fine-tune the permissions that
  2251  Argo CD needs to a cluster by preventing Argo CD from attempting to watch resources of that
  2252  group/kind.
  2253  
  2254  #### gRPC-Web Support
  2255  
  2256  The argocd CLI can be now configured to communicate to the Argo CD API server using gRPC-Web
  2257  (HTTP1.1) using a new CLI flag `--grpc-web`. This resolves some compatibility issues users were
  2258  experiencing with ingresses and gRPC (HTTP2), and should enable argocd CLI to work with virtually
  2259  any load balancer, ingress controller, or API gateway.
  2260  
  2261  #### CLI features
  2262  
  2263  Argo CD introduces some additional CLI commands:
  2264  
  2265  * `argocd app edit APPNAME` - to edit an application spec using preferred EDITOR
  2266  * `argocd proj edit PROJNAME` - to edit an project spec using preferred EDITOR
  2267  * `argocd app patch APPNAME` - to patch an application spec
  2268  * `argocd app patch-resource APPNAME` - to patch a specific resource which is part of an application
  2269  
  2270  
  2271  ### Breaking Changes
  2272  
  2273  #### Label selector changes, dex-server rename
  2274  
  2275  The label selectors for deployments were been renamed to use kubernetes common labels
  2276  (`app.kubernetes.io/name=NAME` instead of `app=NAME`). Since K8s deployment label selectors are
  2277  immutable, during an upgrade from v0.11 to v0.12, the old deployments should be deleted using
  2278  `--cascade=false` which allows the new deployments to be created without introducing downtime.
  2279  Once the new deployments are ready, the older replicasets can be deleted. Use the following
  2280  instructions to upgrade from v0.11 to v0.12 without introducing downtime:
  2281  
  2282  ```
  2283  # delete the deployments with cascade=false. this orphan the replicasets, but leaves the pods running
  2284  kubectl delete deploy --cascade=false argocd-server argocd-repo-server argocd-application-controller
  2285  
  2286  # apply the new manifests and wait for them to finish rolling out
  2287  kubectl apply <new install manifests>
  2288  kubectl rollout status deploy/argocd-application-controller
  2289  kubectl rollout status deploy/argocd-repo-server
  2290  kubectl rollout status deploy/argocd-application-controller
  2291  
  2292  # delete old replicasets which are using the legacy label
  2293  kubectl delete rs -l app=argocd-server
  2294  kubectl delete rs -l app=argocd-repo-server
  2295  kubectl delete rs -l app=argocd-application-controller
  2296  
  2297  # delete the legacy dex-server which was renamed
  2298  kubectl delete deploy dex-server
  2299  ```
  2300  
  2301  #### Deprecation of spec.source.componentParameterOverrides
  2302  
  2303  For declarative application specs, the `spec.source.componentParameterOverrides` field is now
  2304  deprecated in favor of application source specific config. They are replaced with new fields
  2305  specific to their respective config management. For example, a Helm application spec using the
  2306  legacy field:
  2307  
  2308  ```yaml
  2309  spec:
  2310    source:
  2311      componentParameterOverrides:
  2312      - name: image.tag
  2313        value: v1.2
  2314  ```
  2315  
  2316  should move to:
  2317  
  2318  ```yaml
  2319  spec:
  2320    source:
  2321      helm:
  2322        parameters:
  2323        - name: image.tag
  2324          value: v1.2
  2325  ```
  2326  
  2327  Argo CD will automatically duplicate the legacy field values to the new locations (and vice versa)
  2328  as part of automatic migration. The legacy `spec.source.componentParameterOverrides` field will be
  2329  kept around for the v0.12 release (for migration purposes) and will be removed in the next Argo CD
  2330  release.
  2331  
  2332  #### Removal of spec.source.environment and spec.source.valuesFiles
  2333  
  2334  The `spec.source.environment` and `spec.source.valuesFiles` fields, which were deprecated in v0.11,
  2335  are now completely removed from the Application spec.
  2336  
  2337  
  2338  #### API/CLI compatibility
  2339  
  2340  Due to API spec changes related to the deprecation of componentParameterOverrides, Argo CD v0.12
  2341  has a minimum client version of v0.12.0. Older CLI clients will be rejected.
  2342  
  2343  
  2344  ### Changes since v0.11:
  2345  + Improved UI
  2346  + Custom Health Assessments (CRD Health)
  2347  + Configuration Management Plugins
  2348  + High Availability
  2349  + Fuzzy Diff Logic
  2350  + Resource Exclusions
  2351  + gRPC-Web Support
  2352  + CLI features
  2353  + Additional prometheus metrics
  2354  + Sample Grafana dashboard (#1277) (@hartman17)
  2355  + Support for Kustomize 2
  2356  + YAML/JSON/Jsonnet Directories can now be recursed
  2357  + Support for Jsonnet external variables and top-level arguments
  2358  + Optimized reconciliation performance for applications with very active resources (#1267)
  2359  + Support a separate OAuth2 CLI clientID different from server (#1307)
  2360  + argocd diff: only print to stdout, if there is a diff + exit code (#1288) (@marcb1)
  2361  + Detection and handling of duplicated resource definitions (#1284)
  2362  + Support kustomize apps with remote bases in private repos in the same host (#1264)
  2363  + Support patching resource using REST API (#1186)
  2364  * Deprecate componentParameterOverrides in favor of source specific config (#1207)
  2365  * Support talking to Dex using local cluster address instead of public address (#1211)
  2366  * Use Recreate deployment strategy for controller (#1315)
  2367  * Honor OS environment variables for helm commands (#1306) (@1337andre)
  2368  * Disable CGO_ENABLED for server/controller binaries (#1286)
  2369  * Documentation fixes and improvements (@twz123, @yann-soubeyrand, @OmerKahani, @dulltz)
  2370  - Fix CRD creation/deletion handling (#1249)
  2371  - Git cloning via SSH was not verifying host public key (#1276)
  2372  - Fixed multiple goroutine leaks in controller and api-server
  2373  - Fix issue where `argocd app set -p` required repo privileges. (#1280)
  2374  - Fix local diff of non-namespaced resources. Also handle duplicates in local diff (#1289)
  2375  - Deprecated resource kinds from 'extensions' groups are not reconciled correctly (#1232)
  2376  - Fix issue where CLI would panic after timeout when cli did not have get permissions (#1209)
  2377  - invalidate repo cache on delete (#1182) (@narg95)
  2378  
  2379  ## v0.11.2 (2019-02-19)
  2380  + Adds client retry. Fixes #959 (#1119)
  2381  - Prevent deletion hotloop (#1115)
  2382  - Fix EncodeX509KeyPair function so it takes in account chained certificates (#1137) (@amarruedo)
  2383  - Exclude metrics.k8s.io from watch (#1128)
  2384  - Fix issue where dex restart could cause login failures (#1114)
  2385  - Relax ingress/service health check to accept non-empty ingress list (#1053)
  2386  - [UI] Correctly handle empty response from repository/<repo>/apps API
  2387  
  2388  ## v0.11.1 (2019-01-18)
  2389  + Allow using redis as a cache in repo-server (#1020)
  2390  - Fix controller deadlock when checking for stale cache (#1044)
  2391  - Namespaces are not being sorted during apply (#1038)
  2392  - Controller cache was susceptible to clock skew in managed cluster
  2393  - Fix ability to unset ApplicationSource specific parameters
  2394  - Fix force resource delete API (#1033)
  2395  - Incorrect PermissionDenied error during app creation when using project roles + user-defined RBAC (#1019)
  2396  - Fix `kubctl convert` issue preventing deployment of extensions/NetworkPolicy (#1012)
  2397  - Do not allow metadata.creationTimestamp to affect sync status (#1021)
  2398  - Graceful handling of clusters where API resource discovery is partially successful (#1018)
  2399  - Handle k8s resources circular dependency (#1016)
  2400  - Fix `app diff --local` command (#1008)
  2401  
  2402  ## v0.11.0 (2019-01-10)
  2403  This is Argo CD's biggest release ever and introduces a completely redesigned controller architecture.
  2404  
  2405  ### New Features
  2406  
  2407  #### Performance & Scalability
  2408  The application controller has a completely redesigned architecture which improved performance and
  2409  scalability during application reconciliation.
  2410  
  2411  This was achieved by introducing an in-memory, live state cache of lightweight Kubernetes object 
  2412  metadata. During reconciliation, the controller no longer performs expensive, in-line queries of app
  2413  related resources in K8s API server, instead relying on the metadata available in the live state 
  2414  cache. This dramatically improves performance and responsiveness, and is less burdensome to the K8s
  2415  API server.
  2416  
  2417  #### Object relationship visualization for CRDs
  2418  With the new controller design, Argo CD is now able to understand ownership relationship between
  2419  *all* Kubernetes objects, not just the built-in types. This enables Argo CD to visualize
  2420  parent/child relationships between all kubernetes objects, including CRDs.
  2421  
  2422  #### Multi-namespaced applications
  2423  During sync, Argo CD will now honor any explicitly set namespace in a manifest. Manifests without a
  2424  namespace will continue deploy to the "preferred" namespace, as specified in app's
  2425  `spec.destination.namespace`. This enables support for a class of applications which install to
  2426  multiple namespaces. For example, Argo CD can now install the
  2427  [prometheus-operator](https://github.com/helm/charts/tree/master/stable/prometheus-operator)
  2428  helm chart, which deploys some resources into `kube-system`, and others into the
  2429  `prometheus-operator` namespace.
  2430  
  2431  #### Large application support
  2432  Full resource objects are no longer stored in the Application CRD object status. Instead, only
  2433  lightweight metadata is stored in the status, such as a resource's sync and health status.
  2434  This change enabled Argo CD to support applications with a very large number of resources 
  2435  (e.g. istio), and reduces the bandwidth requirements when listing applications in the UI.
  2436  
  2437  #### Resource lifecycle hook improvements
  2438  Resource lifecycle hooks (e.g. PreSync, PostSync) are now visible/manageable from the UI.
  2439  Additionally, bare Pods with a restart policy of Never can now be used as a resource hook, as an
  2440  alternative to Jobs, Workflows.
  2441  
  2442  #### K8s recommended application labels
  2443  The tracking label for resources has been changed to use `app.kubernetes.io/instance`, as
  2444  recommended in [Kubernetes recommended labels](https://kubernetes.io/docs/concepts/overview/working-with-objects/common-labels/),
  2445  (changed from `applications.argoproj.io/app-name`). This will enable applications managed by Argo CD
  2446  to interoperate with other tooling which are also converging on this labeling, such as the
  2447  Kubernetes dashboard. Additionally, Argo CD no longer injects any tracking labels at the
  2448  `spec.template.metadata` level.
  2449  
  2450  #### External OIDC provider support
  2451  Argo CD now supports auth delegation to an existing, external OIDC providers without the need for
  2452  running Dex (e.g. Okta, OneLogin, Auth0, Microsoft, etc...)
  2453  
  2454  The optional, [Dex IDP OIDC provider](https://github.com/dexidp/dex) is still bundled as part of the
  2455  default installation, in order to provide a seamless out-of-box experience, enabling Argo CD to
  2456  integrate with non-OIDC providers, and to benefit from Dex's full range of
  2457  [connectors](https://dexidp.io/docs/connectors/).
  2458  
  2459  #### OIDC group bindings to Project Roles
  2460  OIDC group claims from an OAuth2 provider can now be bound to a Argo CD project roles. Previously,
  2461  group claims could only be managed in the centralized ConfigMap, `argocd-rbac-cm`. They can now be
  2462  managed at a project level. This enables project admins to self service access to applications
  2463  within a project.
  2464  
  2465  #### Declarative Argo CD configuration
  2466  Argo CD settings can be now be configured either declaratively, or imperatively. The `argocd-cm`
  2467  ConfigMap now has a `repositories` field, which can reference credentials in a normal Kubernetes
  2468  secret which you can create declaratively, outside of Argo CD.
  2469  
  2470  #### Helm repository support
  2471  Helm repositories can be configured at the system level, enabling the deployment of helm charts
  2472  which have a dependency to external helm repositories.
  2473  
  2474  ### Breaking changes:
  2475  
  2476  * Argo CD's resource names were renamed for consistency. For example, the application-controller
  2477    deployment was renamed to argocd-application-controller. When upgrading from v0.10 to v0.11,
  2478    the older resources should be pruned to avoid inconsistent state and controller in-fighting.
  2479  
  2480  * As a consequence to moving to recommended kubernetes labels, when upgrading from v0.10 to v0.11,
  2481    all applications will immediately be OutOfSync due to the change in tracking labels. This will
  2482    correct itself with another sync of the application. However, since Pods will be recreated, please
  2483    take this into consideration, especially if your applications are configured with auto-sync.
  2484  
  2485  * There was significant reworking of the `app.status` fields to reduce the payload size, simplify
  2486    the datastructure and remove fields which were no longer used by the controller. No breaking
  2487    changes were made in `app.spec`.
  2488  
  2489  * An older Argo CD CLI (v0.10 and below) will not be compatible with Argo CD v0.11. To keep
  2490    CI pipelines in sync with the API server, it is recommended to have pipelines download the CLI
  2491    directly from the API server https://${ARGOCD_SERVER}/download/argocd-linux-amd64 during the CI
  2492    pipeline.
  2493  
  2494  ### Changes since v0.10:
  2495  * Improve Application state reconciliation performance (#806)
  2496  * Refactor, consolidate and rename resource type data structures
  2497  + Declarative setup and configuration of ArgoCD (#536)
  2498  + Declaratively add helm repositories (#747)
  2499  + Switch to k8s recommended app.kubernetes.io/instance label (#857)
  2500  + Ability for a single application to deploy into multiple namespaces (#696)
  2501  + Self service group access to project applications (#742)
  2502  + Support for Pods as a sync hook (#801)
  2503  + Support 'crd-install' helm hook (#355)
  2504  + Use external 'diff' utility to render actual vs target state difference
  2505  + Show sync policy in app list view
  2506  * Remove resources state from application CRD (#758)
  2507  * API server & UI should serve argocd binaries instead of linking to GitHub (#716)
  2508  * Update versions for kubectl (v1.13.1), helm (v2.12.1), ksonnet (v0.13.1)
  2509  * Update version of aws-iam-authenticator (0.4.0-alpha.1)
  2510  * Ability to force refresh of application manifests from git
  2511  * Improve diff assessment for Secrets, ClusterRoles, Roles
  2512  - Failed to deploy helm chart with local dependencies and no internet access (#786)
  2513  - Out of sync reported if Secrets with stringData are used (#763)
  2514  - Unable to delete application in K8s v1.12 (#718)
  2515  
  2516  ## v0.10.6 (2018-11-14)
  2517  - Fix issue preventing in-cluster app sync due to go-client changes (issue #774)
  2518  
  2519  ## v0.10.5 (2018-11-13)
  2520  + Increase concurrency of application controller
  2521  * Update dependencies to k8s v1.12 and client-go v9.0 (#729)
  2522  - add argo cluster permission to view logs (#766) (@conorfennell)
  2523  - Fix issue where applications could not be deleted on k8s v1.12
  2524  - Allow 'syncApplication' action to reference target revision rather then hard-coding to 'HEAD' (#69) (@chrisgarland)
  2525  - Issue #768 - Fix application wizard crash
  2526  
  2527  ## v0.10.4 (2018-11-07)
  2528  * Upgrade to Helm v0.11.0 (@amarrella)
  2529  - Health check is not discerning apiVersion when assessing CRDs (issue #753)
  2530  - Fix nil pointer dereference in util/health (@mduarte)
  2531  
  2532  ## v0.10.3 (2018-10-28)
  2533  * Fix applying TLS version settings
  2534  * Update to kustomize 1.0.10 (@twz123)
  2535  
  2536  ## v0.10.2 (2018-10-25)
  2537  * Update to kustomize 1.0.9 (@twz123)
  2538  - Fix app refresh err when k8s patch is too slow
  2539  
  2540  ## v0.10.1 (2018-10-24)
  2541  
  2542  - Handle case where OIDC settings become invalid after dex server restart (issue #710)
  2543  - git clean also needs to clean files under gitignore (issue #711)
  2544  
  2545  ## v0.10.0 (2018-10-19)
  2546  
  2547  ### Changes since v0.9:
  2548  
  2549  + Allow more fine-grained sync (issue #508)
  2550  + Display init container logs (issue #681)
  2551  + Redirect to /auth/login instead of /login when SSO token is used for authentication (issue #348)
  2552  + Support ability to use a helm values files from a URL (issue #624)
  2553  + Support public not-connected repo in app creation UI (issue #426)
  2554  + Use ksonnet CLI instead of ksonnet libs (issue #626)
  2555  + We should be able to select the order of the `yaml` files while creating a Helm App (#664)
  2556  * Remove default params from app history (issue #556)
  2557  * Update to ksonnet v0.13.0
  2558  * Update to kustomize 1.0.8
  2559  - API Server fails to return apps due to grpc max message size limit  (issue #690)
  2560  - App Creation UI for Helm Apps shows only files prefixed with `values-` (issue #663)
  2561  - App creation UI should allow specifying values files outside of helm app directory bug (issue #658)
  2562  - argocd-server logs credentials in plain text when adding git repositories (issue #653)
  2563  - Azure Repos do not work as a repository (issue #643)
  2564  - Better update conflict error handing during app editing (issue #685)
  2565  - Cluster watch needs to be restarted when CRDs get created (issue #627)
  2566  - Credentials not being accepted for Google Source Repositories (issue #651)
  2567  - Default project is created without permission to deploy cluster level resources (issue #679)
  2568  - Generate role token click resets policy changes (issue #655)
  2569  - Input type text instead of password on Connect repo panel (issue #693)
  2570  - Metrics endpoint not reachable through the metrics kubernetes service (issue #672)
  2571  - Operation stuck in 'in progress' state if application has no resources (issue #682)
  2572  - Project should influence options for cluster and namespace during app creation (issue #592)
  2573  - Repo server unable to execute ls-remote for private repos (issue #639)
  2574  - Resource is always out of sync if it has only 'ksonnet.io/component' label (issue #686)
  2575  - Resource nodes are 'jumping' on app details page (issue #683)
  2576  - Sync always suggest using latest revision instead of target UI bug (issue #669)
  2577  - Temporary ignore service catalog resources (issue #650)
  2578  
  2579  ## v0.9.2 (2018-09-28)
  2580  
  2581  * Update to kustomize 1.0.8
  2582  - Fix issue where argocd-server logged credentials in plain text during repo add (issue #653)
  2583  - Credentials not being accepted for Google Source Repositories (issue #651)
  2584  - Azure Repos do not work as a repository (issue #643)
  2585  - Temporary ignore service catalog resources (issue #650)
  2586  - Normalize policies by always adding space after comma
  2587  
  2588  ## v0.9.1 (2018-09-24)
  2589  
  2590  - Repo server unable to execute ls-remote for private repos (issue #639)
  2591  
  2592  ## v0.9.0 (2018-09-24)
  2593  
  2594  ### Notes about upgrading from v0.8
  2595  * Cluster wide resources should be allowed in default project (due to issue #330):
  2596  
  2597  ```
  2598  argocd project allow-cluster-resource default '*' '*'
  2599  ```
  2600  
  2601  * Projects now provide the ability to allow or deny deployments of cluster-scoped resources
  2602  (e.g. Namespaces, ClusterRoles, CustomResourceDefinitions). When upgrading from v0.8 to v0.9, to
  2603  match the behavior of v0.8 (which did not have restrictions on deploying resources) and continue to
  2604  allow deployment of cluster-scoped resources, an additional command should be run:
  2605  
  2606  ```bash
  2607  argocd proj allow-cluster-resource default '*' '*'
  2608  ```
  2609  
  2610  The above command allows the `default` project to deploy any cluster-scoped resources which matches
  2611  the behavior of v0.8.
  2612  
  2613  * The secret keys in the argocd-secret containing the TLS certificate and key, has been renamed from
  2614    `server.crt` and `server.key` to the standard `tls.crt` and `tls.key` keys. This enables Argo CD
  2615    to integrate better with Ingress and cert-manager. When upgrading to v0.9, the `server.crt` and
  2616    `server.key` keys in argocd-secret should be renamed to the new keys.
  2617  
  2618  ### Changes since v0.8:
  2619  + Auto-sync option in application CRD instance (issue #79)
  2620  + Support raw jsonnet as an application source (issue #540)
  2621  + Reorder K8s resources to correct creation order (issue #102)
  2622  + Redact K8s secrets from API server payloads (issue #470)
  2623  + Support --in-cluster authentication without providing a kubeconfig (issue #527)
  2624  + Special handling of CustomResourceDefinitions (issue #613)
  2625  + Argo CD should download helm chart dependencies (issue #582)
  2626  + Export Argo CD stats as prometheus style metrics (issue #513)
  2627  + Support restricting TLS version (issue #609)
  2628  + Use 'kubectl auth reconcile' before 'kubectl apply' (issue #523)
  2629  + Projects need controls on cluster-scoped resources (issue #330)
  2630  + Support IAM Authentication for managing external K8s clusters (issue #482)
  2631  + Compatibility with cert manager (issue #617)
  2632  * Enable TLS for repo server (issue #553)
  2633  * Split out dex into it's own deployment (instead of sidecar) (issue #555)
  2634  + [UI] Support selection of helm values files in App creation wizard (issue #499)
  2635  + [UI] Support specifying source revision in App creation wizard allow (issue #503)
  2636  + [UI] Improve resource diff rendering (issue #457)
  2637  + [UI] Indicate number of ready containers in pod (issue #539)
  2638  + [UI] Indicate when app is overriding parameters (issue #503)
  2639  + [UI] Provide a YAML view of resources (issue #396)
  2640  + [UI] Project Role/Token management from UI (issue #548)
  2641  + [UI] App creation wizard should allow specifying source revision (issue #562)
  2642  + [UI] Ability to modify application from UI (issue #615)
  2643  + [UI] indicate when operation is in progress or has failed (issue #566)
  2644  - Fix issue where changes were not pulled when tracking a branch (issue #567)
  2645  - Lazy enforcement of unknown cluster/namespace restricted resources (issue #599)
  2646  - Fix controller hot loop when app source contains bad manifests (issue #568)
  2647  - Fix issue where Argo CD fails to deploy when resources are in a K8s list format (issue #584)
  2648  - Fix comparison failure when app contains unregistered custom resource (issue #583)
  2649  - Fix issue where helm hooks were being deployed as part of sync (issue #605)
  2650  - Fix race conditions in kube.GetResourcesWithLabel and DeleteResourceWithLabel (issue #587)
  2651  - [UI] Fix issue where projects filter does not work when application got changed
  2652  - [UI] Creating apps from directories is not obvious (issue #565)
  2653  - Helm hooks are being deployed as resources (issue #605)
  2654  - Disagreement in three way diff calculation (issue #597)
  2655  - SIGSEGV in kube.GetResourcesWithLabel (issue #587)
  2656  - Argo CD fails to deploy resources list (issue #584)
  2657  - Branch tracking not working properly (issue #567)
  2658  - Controller hot loop when application source has bad manifests (issue #568)
  2659  
  2660  ## v0.8.2 (2018-09-12)
  2661  - Downgrade ksonnet from v0.12.0 to v0.11.0 due to quote unescape regression
  2662  - Fix CLI panic when performing an initial `argocd sync/wait`
  2663  
  2664  ## v0.8.1 (2018-09-10)
  2665  + [UI] Support selection of helm values files in App creation wizard (issue #499)
  2666  + [UI] Support specifying source revision in App creation wizard allow (issue #503)
  2667  + [UI] Improve resource diff rendering (issue #457)
  2668  + [UI] Indicate number of ready containers in pod (issue #539)
  2669  + [UI] Indicate when app is overriding parameters (issue #503)
  2670  + [UI] Provide a YAML view of resources (issue #396)
  2671  - Fix issue where changes were not pulled when tracking a branch (issue #567)
  2672  - Fix controller hot loop when app source contains bad manifests (issue #568)
  2673  - [UI] Fix issue where projects filter does not work when application got changed
  2674  
  2675  ## v0.8.0 (2018-09-04)
  2676  
  2677  ### Notes about upgrading from v0.7
  2678  * The RBAC model has been improved to support explicit denies. What this means is that any previous
  2679  RBAC policy rules, need to be rewritten to include one extra column with the effect:
  2680  `allow` or `deny`. For example, if a rule was written like this:
  2681      ```
  2682      p, my-org:my-team, applications, get, */*
  2683      ```
  2684      It should be rewritten to look like this:
  2685      ```
  2686      p, my-org:my-team, applications, get, */*, allow
  2687      ```
  2688  
  2689  ### Changes since v0.7:
  2690  + Support kustomize as an application source (issue #510)
  2691  + Introduce project tokens for automation access (issue #498)
  2692  + Add ability to delete a single application resource to support immutable updates (issue #262)
  2693  + Update RBAC model to support explicit denies (issue #497)
  2694  + Ability to view Kubernetes events related to application projects for auditing
  2695  + Add PVC healthcheck to controller (issue #501)
  2696  + Run all containers as an unprivileged user (issue #528)
  2697  * Upgrade ksonnet to v0.12.0
  2698  * Add readiness probes to API server (issue #522)
  2699  * Use gRPC error codes instead of fmt.Errorf (#532)
  2700  - API discovery becomes best effort when partial resource list is returned (issue #524)
  2701  - Fix `argocd app wait` printing incorrect Sync output (issue #542)
  2702  - Fix issue where argocd could not sync to a tag (#541)
  2703  - Fix issue where static assets were browser cached between upgrades (issue #489)
  2704  
  2705  ## v0.7.2 (2018-08-21)
  2706  - API discovery becomes best effort when partial resource list is returned (issue #524)
  2707  
  2708  ## v0.7.1 (2018-08-03)
  2709  + Surface helm parameters to the application level (#485)
  2710  + [UI] Improve application creation wizard (#459)
  2711  + [UI] Show indicator when refresh is still in progress (#493)
  2712  * [UI] Improve data loading error notification (#446)
  2713  * Infer username from claims during an `argocd relogin` (#475)
  2714  * Expand RBAC role to be able to create application events. Fix username claims extraction
  2715  - Fix scalability issues with the ListApps API (#494)
  2716  - Fix issue where application server was retrieving events from incorrect cluster (#478)
  2717  - Fix failure in identifying app source type when path was '.'
  2718  - AppProjectSpec SourceRepos mislabeled (#490)
  2719  - Failed e2e test was not failing CI workflow
  2720  * Fix linux download link in getting_started.md (#487) (@chocopowwwa)
  2721  
  2722  ## v0.7.0 (2018-07-27)
  2723  + Support helm charts and yaml directories as an application source
  2724  + Audit trails in the form of API call logs
  2725  + Generate kubernetes events for application state changes
  2726  + Add ksonnet version to version endpoint (#433)
  2727  + Show CLI progress for sync and rollback
  2728  + Make use of dex refresh tokens and store them into local config
  2729  + Expire local superuser tokens when their password changes
  2730  + Add `argocd relogin` command as a convenience around login to current context
  2731  - Fix saving default connection status for repos and clusters
  2732  - Fix undesired fail-fast behavior of health check
  2733  - Fix memory leak in the cluster resource watch
  2734  - Health check for StatefulSets, DaemonSet, and ReplicaSets were failing due to use of wrong converters
  2735  
  2736  ## v0.6.2 (2018-07-23)
  2737  - Health check for StatefulSets, DaemonSet, and ReplicaSets were failing due to use of wrong converters
  2738  
  2739  ## v0.6.1 (2018-07-18)
  2740  - Fix regression where deployment health check incorrectly reported Healthy
  2741  + Intercept dex SSO errors and present them in Argo login page
  2742  
  2743  ## v0.6.0 (2018-07-16)
  2744  + Support PreSync, Sync, PostSync resource hooks
  2745  + Introduce Application Projects for finer grain RBAC controls
  2746  + Swagger Docs & UI
  2747  + Support in-cluster deployments internal kubernetes service name
  2748  + Refactoring & Improvements
  2749  * Improved error handling, status and condition reporting
  2750  * Remove installer in favor of kubectl apply instructions
  2751  * Add validation when setting application parameters
  2752  * Cascade deletion is decided during app deletion, instead of app creation
  2753  - Fix git authentication implementation when using using SSH key
  2754  - app-name label was inadvertently injected into spec.selector if selector was omitted from v1beta1 specs
  2755  
  2756  ## v0.5.4 (2018-06-27)
  2757  - Refresh flag to sync should be optional, not required
  2758  
  2759  ## v0.5.3 (2018-06-20)
  2760  + Support cluster management using the internal k8s API address https://kubernetes.default.svc (#307)
  2761  + Support diffing a local ksonnet app to the live application state (resolves #239) (#298)
  2762  + Add ability to show last operation result in app get. Show path in app list -o wide (#297)
  2763  + Update dependencies: ksonnet v0.11, golang v1.10, debian v9.4 (#296)
  2764  + Add ability to force a refresh of an app during get (resolves #269) (#293)
  2765  + Automatically restart API server upon certificate changes (#292)
  2766  
  2767  ## v0.5.2 (2018-06-14)
  2768  + Resource events tab on application details page (#286)
  2769  + Display pod status on application details page (#231)
  2770  
  2771  ## v0.5.1 (2018-06-13)
  2772  - API server incorrectly compose application fully qualified name for RBAC check (#283)
  2773  - UI crash while rendering application operation info if operation failed
  2774  
  2775  ## v0.5.0 (2018-06-12)
  2776  + RBAC access control
  2777  + Repository/Cluster state monitoring
  2778  + Argo CD settings import/export
  2779  + Application creation UI wizard
  2780  + argocd app manifests for printing the application manifests
  2781  + argocd app unset command to unset parameter overrides
  2782  + Fail app sync if prune flag is required (#276)
  2783  + Take into account number of unavailable replicas to decided if deployment is healthy or not #270
  2784  + Add ability to show parameters and overrides in CLI (resolves #240)
  2785  - Repo names containing underscores were not being accepted (#258)
  2786  - Cookie token was not parsed properly when mixed with other site cookies
  2787  
  2788  ## v0.4.7 (2018-06-07)
  2789  - Fix argocd app wait health checking logic
  2790  
  2791  ## v0.4.6 (2018-06-06)
  2792  - Retry argocd app wait connection errors from EOF watch. Show detailed state changes
  2793  
  2794  ## v0.4.5 (2018-05-31)
  2795  + Add argocd app unset command to unset parameter overrides
  2796  - Cookie token was not parsed properly when mixed with other site cookies
  2797  
  2798  ## v0.4.4 (2018-05-30)
  2799  + Add ability to show parameters and overrides in CLI (resolves #240)
  2800  + Add Events API endpoint
  2801  + Issue #238 - add upsert flag to 'argocd app create' command
  2802  + Add repo browsing endpoint (#229)
  2803  + Support subscribing to settings updates and auto-restart of dex and API server
  2804  - Issue #233 - Controller does not persist rollback operation result
  2805  - App sync frequently fails due to concurrent app modification
  2806  
  2807  ## v0.4.3 (2018-05-21)
  2808  - Move local branch deletion as part of git Reset() (resolves #185) (#222)
  2809  - Fix exit code for app wait (#219)
  2810  
  2811  ## v0.4.2 (2018-05-21)
  2812  + Show URL in argocd app get
  2813  - Remove interactive context name prompt during login which broke login automation
  2814  * Rename force flag to cascade in argocd app delete
  2815  
  2816  ## v0.4.1 (2018-05-18)
  2817  + Implemented argocd app wait command
  2818  
  2819  ## v0.4.0 (2018-05-17)
  2820  + SSO Integration
  2821  + GitHub Webhook
  2822  + Add application health status
  2823  + Sync/Rollback/Delete is asynchronously handled by controller
  2824  * Refactor CRUD operation on clusters and repos
  2825  * Sync will always perform kubectl apply
  2826  * Synced Status considers last-applied-configuration annotation
  2827  * Server & namespace are mandatory fields (still inferred from app.yaml)
  2828  * Manifests are memoized in repo server
  2829  - Fix connection timeouts to SSH repos
  2830  
  2831  ## v0.3.2 (2018-05-03)
  2832  + Application sync should delete 'unexpected' resources #139
  2833  + Update ksonnet to v0.10.1
  2834  + Detect unexpected resources
  2835  - Fix: App sync frequently fails due to concurrent app modification #147
  2836  - Fix: improve app state comparator: #136, #132
  2837  
  2838  ## v0.3.1 (2018-04-24)
  2839  + Add new rollback RPC with numeric identifiers
  2840  + New argo app history and argo app rollback command
  2841  + Switch to gogo/protobuf for golang code generation
  2842  - Fix: create .argocd directory during argo login (issue #123)
  2843  - Fix: Allow overriding server or namespace separately (issue #110)
  2844  
  2845  ## v0.3.0 (2018-04-23)
  2846  + Auth support
  2847  + TLS support
  2848  + DAG-based application view
  2849  + Bulk watch
  2850  + ksonnet v0.10.0-alpha.3
  2851  + kubectl apply deployment strategy
  2852  + CLI improvements for app management
  2853  
  2854  ## v0.2.0 (2018-04-03)
  2855  + Rollback UI
  2856  + Override parameters
  2857  
  2858  ## v0.1.0 (2018-03-12)
  2859  + Define app in GitHub with dev and preprod environment using KSonnet
  2860  + Add cluster Diff App with a cluster Deploy app in a cluster
  2861  + Deploy a new version of the app in the cluster
  2862  + App sync based on GitHub app config change - polling only
  2863  + Basic UI: App diff between Git and k8s cluster for all environments Basic GUI