Quick Start
Non-HA:
kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/v3.0.0-rc1/manifests/install.yaml
HA:
kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/v3.0.0-rc1/manifests/ha/install.yaml
Release Signatures and Provenance
All Argo CD container images are signed by cosign. A Provenance is generated for container images and CLI binaries which meet the SLSA Level 3 specifications. See the documentation on how to verify.
Upgrading
If upgrading from a different minor version, be sure to read the upgrading documentation.
Changelog
Features
- 402802b: feat!: Logs rbac enforce by default (#21678) (@reggie-k)
- cca7485: feat!: update compareoptions default values (#22230) (@agaudreault)
- 029927b: feat(appcontroller): store application health status in redis by default (#10312) (#21532) (@rumstead)
- f775e7b: feat(appset): Add values to PR generator (#21557) (@dudo)
- b9131c1: feat(cmp): pass empty env vars to plugins (#18720) (#22096) (@crenshaw-dev)
- ac50d8e: feat(config)!: exclude known interim resources by default (#20013) (#21635) (@agaudreault)
- 910b951: feat(controller): enable batch event processing by default (#22338) (@crenshaw-dev)
- 7edaef5: feat(helm): upgrading helm to 3.17.0 (#21722) (@rumstead)
- 88e43cb: feat(kubectl): upgrading kubectl to 1.32.1 (#21724) (@rumstead)
- c675757: feat(kustomize): support --include-templates for labels (#15283) (#22069) (@crenshaw-dev)
- 6f9389c: feat(log): support match case in pod log search (#21919) (@linghaoSu)
- feb7097: feat(metrics): add more kubectl metrics (#21720) (@crenshaw-dev)
- 606bd5b: feat(rbac)!: disable fine-grained inheritance by default (#19988) (#20671) (@fffinkel)
- e3bd569: feat(server): make deep copies of objects returned by informers (#22173) (#22179) (@rumstead)
- 7296201: feat(ui): Added link to start page in argo logo (#21461) (@surajyadav1108)
- 6d27928: feat(ui): highlight log lines by pod name (#21001) (@aali309)
- b8508f2: feat(ui): rename filter message status on SYNC STATUS view (#21061) (@aali309)
- 55f8a43: feat(ui): split arrays in yaml to fix ambiguous collapse when array items have nested objects (#21064) (@aali309)
- 0fab3cf: feat(ui): support display sync wave (#20614) (@linghaoSu)
- 922c9e9: feat(ui): support filter repo when input (#21451) (@linghaoSu)
- 89c4817: feat: Add support for Azure workload identity for Git and OCI repositories. (#21118) (@jagpreetstamber)
- f9ffb6a: feat: Added env reference objects to manifests for otlp.attrs (#21563) (@almoelda)
- 0973409: feat: Kustomize ignore missing components (#18634) (#21674) (@bradkwadsworth)
- 74b3532: feat: Make certain Status panel items look more 'clickable' (#19698) (#22232) (@keithchong)
- c0b2787: feat: Support kube 1.32 (#21805) (@sivchari)
- d301b40: feat: Upgrade notifications engine (#22273) (@sivchari)
- c9c4068: feat: add AND operator opt-in option for sync windows matches (#16846) (@adriananeci)
- f258c45: feat: add
ARGOCD_APP_PROJECT_NAME
to the build environment (#15185) (#21586) (@MacroPower) - c71dd1a: feat: add a check for user defined role referential integrity (#21065) (@devopsjedi)
- 8044d68: feat: add bearer token auth (#21462) (@reggie-k)
- fa0b5f5: feat: add force promote actions for Numaplane rollouts (#22141) (@dpadhiar)
- e4311d8: feat: add name and labels in cluster metrics (#17870) (#18453) (@flbla)
- ecb9dba: feat: add support for azure workload identity in Microsoft Entra SSO (#21433) (@jagpreetstamber)
- 951d9d3: feat: add the
--redis-compress
as the global flag to set redis compression. (#21786) (@nitishfy) - 561cbef: feat: checking user defined roles and policies for referential integrity (#20825) (#22132) (@devopsjedi)
- d23e6ac: feat: configurable log timestamp format (#21478) (@crenshaw-dev)
- c09e6fa: feat: improve StatefulSet immutable field error messages (#21209) (@aali309)
- 1698370: feat: replace spdy with websocket for portforward and pod exec #21517 (#21518) (@maoqide)
- 3e09f94: feat: resource customization for CustomResourceDefinition (#21416) (@almoelda)
- 6b002a5: feat: upgrade to v1.32.2 (#22168) (@sivchari)
- fbd7f29: feat: use errors.Join for debuggable (#22235) (@sivchari)
- dbdc1e7: feat: use log format config for klog (#5715) (#21458) (@crenshaw-dev)
Bug fixes
- 46bfc10: Revert "fix: Graceful shutdown for the API server (#18642) (#20981)" (#21221) (@pasha-codefresh)
- c6b0000: fix(actions): don't run empty Lua scripts (#22084) (#22161) (@crenshaw-dev)
- e6f94f2: fix(appcontroller): selfhealattemptscount needs to be reset at times (#22095) (@blakepettersson)
- 079341c: fix(applicationset): ApplicationSets with rolling sync stuck in Pending (#20230) (@Fsero)
- f6a84a4: fix(appset): Reconcile appset only once when appset is refreshed (fix 21171) (#21172) (@dacofr)
- f3509d2: fix(appset): dont requeue appsets on status change (#21364) (@rumstead)
- e852142: fix(appset): events not honouring configured namespaces (#21219) (#21241) (@eadred)
- e44ae96: fix(appset): generated app errors should use the default requeue (#21887) (#21936) (@rumstead)
- 922dd77: fix(appset): improve git generator repo credential fallback (#21167) (@blakepettersson)
- 55aab6e: fix(appset): reverted Gitlab SCM HasPath search and consider 404 errors as file not found (#16253) (#21597) (@prune998)
- 37a7231: fix(appset): update gitlab SCM provider to search on parent folder (#16253) (#21491) (@prune998)
- 06bd2ad: fix(ci): all version bump changes go in the PR (#21409) (@crenshaw-dev)
- 2933154: fix(ci): get correct previous version, fail workflow if not (cherry-pick #22376) (#22377) (@gcp-cherry-pick-bot[bot])
- 15046b9: fix(ci): handle major versions in compatibility table generator (cherry-pick #22370) (#22371) (@gcp-cherry-pick-bot[bot])
- 43d2a3d: fix(ci): proto references bump (#21391) (@crenshaw-dev)
- 05c7625: fix(ci): updating action-gh-release after upstream fix (#21407) (@rumstead)
- eb6732e: fix(ci): use pinned Helm version for init-release (#22164) (#22165) (@crenshaw-dev)
- 6e4c8fd: fix(ci): use tags instead of branches (cherry-pick #22372) (#22373) (@gcp-cherry-pick-bot[bot])
- 99cd3c7: fix(cli): add flags to admin import for retrying updates on conflicts and skipping resources with specific labels. (#21694) (@ashutosh16)
- 85684a8: fix(cli): application cannot be refreshed when invalid and hangs (#21615) (@agaudreault)
- eb6dd46: fix(cli): ignored resources should not be pruned during restore (#21894) (@agaudreault)
- 9c443b6: fix(cli): improve performance for admin export/import cmd (#22322) (@agaudreault)
- 546383a: fix(cli): log correct error message when updating a cluster that is not present (#22190) (@nitishfy)
- 613d06d: fix(cli): use correct CA when adding kube-public clusters (#21326) (#21327) (@aminarefzadeh)
- f2ee9a6: fix(cli): wrong variable to store --no-proxy value (#21226) (@the-technat)
- 1a9f226: fix(controller): rename cluster batch param and add to argocd-cmd-params-cm (#21402) (@crenshaw-dev)
- d54ae98: fix(controller): wrong tracking annotation for malformed resources (#22325) (@crenshaw-dev)
- b4a63ae: fix(dex): always request
federated:id
scope (#17908) (#21726) (@agaudreault) - ad09b9c: fix(docs): 2.14 upgrading docs (#21756) (@rumstead)
- 4382281: fix(docs): Fix syntax in e2e test docs (#21796) (@pjiang-dev)
- 8545d21: fix(docs): update --auth-token description in argocd_appset_update.md to account for environment variable (#22350) (@chengfang)
- 68d60cd: fix(docs): update mkdocs for upgrade guide (#21768) (@rumstead)
- 7c7dda0: fix(grafanadashboard): add memory units to panels showing memory usage (#22078) (@BWagenerGenerali)
- 9429275: fix(hydrator): UI nil checks (#21598) (@crenshaw-dev)
- 3baca9b: fix(hydrator): don't get cluster or API versions for hydrator (#21985) (@crenshaw-dev)
- 35009a7: fix(hydrator): don't use manifest-generate-paths (#22039) (#22015) (@crenshaw-dev)
- 8a97c1d: fix(hydrator): refresh by annotation instead of work queue (#22016) (@crenshaw-dev)
- d1574c2: fix(rbac): Add rights on applicationsets for the application controller (#20352) (@OpenGuidou)
- 13b7b09: fix(settings): race condition on settings configMap (#21225) (@agaudreault)
- 416b7d0: fix(test): Use t.Fatal instead of os.Exit in tests (part 1) (#21003) (#22114) (@andrii-korotkov-verkada)
- 2afcb6f: fix(test): delete CRD between tests, install CRD before syncing CRs (#22299) (@crenshaw-dev)
- fa747f9: fix(tests): Improved the e2e tests for app sync with impersonation feature (#21792) (@anandf)
- b88ad57: fix(ui): Added SSV option to helm type repos (#22006) (@surajyadav1108)
- 544aea1: fix(ui): Cannot add an app that has both name and server destination (#21440) (@rpelczar)
- 1ce0123: fix(ui): Group Nodes breaks Kinds counts / views (#21337) (@surajyadav1108)
- 71c7700: fix(ui): Show error message when max pods to view logs are reached (#21725) (@pjiang-dev)
- 854c62f: fix(ui): Solve issue with navigating with dropdown from an application's page (#21737) (@amit-o)
- 38b0fd5: fix(ui): columns-adjusted for kind and Namespace in sync details. (#21038) (@surajyadav1108)
- bfb04dd: fix(ui): parameter tab null ref w/ hydrator (#22097) (#22131) (@crenshaw-dev)
- e2e6faa: fix(ui): prevent parameter editor from resetting when props update (fixes #14351) (#21625) (@k4r1)
- 4202168: fix(ui): reduce rerender in pod log view (#22241) (@linghaoSu)
- 0d34340: fix: 21062 Support GitLab "System Hook" webhooks for ApplicationSets (#21243) (@eadred)
- 911a9c6: fix: Add proxy registry key by dest server + name (#21791) (@leoluz)
- f39b425: fix: CVE-2024-21538 upgrading the indirect dep cross-spawn to greater than 7.0.5 (#21259) (@nmirasch)
- 644315a: fix: Change applicationset generate HTTP method to avoid route conflicts (#20758) (@amit-o)
- 1905d12: fix: Check placement exists before length check (#22060) (#22057) (@dhaiducek)
- 8841b0d: fix: Fix calculating SelfHealBackOff delay when exceeding maximum (#20976) (#20978) (@mrysavy)
- 4dcabb9: fix: Fix link about http middlewear and add adopter hetao101 (#21802) (@wanghonglei5181)
- e3b333a: fix: JSON format (#22237) (@sivchari)
- 5b79c34: fix: New kube applier for server side diff dry run with refactoring (#21488) (#21749) (@andrii-korotkov-verkada)
- a8f646e: fix: Notifications on-deployed would now be delivered if sync didn't change the health status of the app in a process (#22203) (#22204) (@andrii-korotkov-verkada)
- 7b1ed52: fix: On deployed trigger must consider race between last transition time and sync finished time (#9070) (#21944) (@andrii-korotkov-verkada)
- ed3cc48: fix: Policy/policy.open-cluster-management.io stuck in progressing status when no clusters match the policy (#21296) (#21297) (@mbaldessari)
- 43e5941: fix: Race condition occurs during initial sharding (#22264) (@kahou82)
- 7424432: fix: Rephrased sentence to a meaningfull one (#22113) (@babugeet)
- bfd72b4: fix: Revert "fix: Race condition occurs during initial sharding (#22264)" (#22354) (@andrii-korotkov-verkada)
- f542ae5: fix: Revert "split arrays in yaml to fix ambiguous collapse when array items have nested objects (#21064)" (#22099) (#22128) (@andrii-korotkov-verkada)
- 4a1d0f3: fix: Switch default logging to JSON (issue: 20897) (#21656) (@teddy-wahle)
- 0ed7c56: fix: Unable to edit http repo credentials from ArgoCD UI (#22065) (@aali309)
- e8a3f7a: fix: Update argo-ui dependency to pull in OCI icon (#18646) (#21698) (@keithchong)
- 376e8d5: fix: Update haproxy version to match the chart (#22226) (#22236) (@andrii-korotkov-verkada)
- 9f81cd4: fix: Use ARGOCD_SERVER for default value (#21930) (@sivchari)
- 62ec9fe: fix: Use t.Fatal instead of os.Exit in tests (part 2) (#21003) (#22187) (@andrii-korotkov-verkada)
- c93924b: fix: Wait for Subscription resources to reach AtLatestKnown (#21425) (@vinzent)
- e6e9255: fix: correct lookup for the kustomization file when applying patches (#22024) (@nitishfy)
- f548fd7: fix: correctly set compareWith when requesting app refresh with delay (fixes #18998) (#21298) (@shenxn)
- d183d9c: fix: dynamic cluster distribution issue 20965, update the shard… (#21042) (@ivan-cai)
- 49a4b7f: fix: fetch syncedRevision in UpdateRevisionForPaths (#21014) (#21015) (@toyamagu-2021)
- 563ccb2: fix: fix KustomizeImage Match function to pass added unit tests (#21872) (@chengfang)
- 6959e54: fix: have argocd server pass the appLabelKey for proper caching (#22186) (@gdsoumya)
- 87671f5: fix: ignore prune=false resources from PruningRequired count (#21941) (@gdsoumya)
- 75cb7fc: fix: issue 22206 - fixes overlapping lines in logs by increasing line height (#22207) (@GP3-RS)
- eed70ee: fix: login return_url doesn't work with custom server paths (#21588) (@alexmt)
- b600c5e: fix: make codegen permissions (#21667) (@dudo)
- c7e02ee: fix: make test fails with exec format error (#21630) (@reggie-k)
- 85c6d26: fix: override sub with federated_claims.user_id when dex is used (#20683) (@aali309)
- 11b8665: fix: remove kustomize binary from git (#21526) (@rumstead)
- 686964d: fix: removed null security context from redis-ha values.yaml to placate helm 3.17.1 (#22035) (@reggie-k)
- 6f38327: fix: resolve the failing e2e appset tests for ksonnet applications (#21580) (@reggie-k)
- 806c5f6: fix: return cluster URL in error message, not full cluster object (#22094) (@crenshaw-dev)
- 94b34f8: fix: upgrade x/crypto to v0.35.0 to solve CVE-2025-22869 (#22048) (@gergelyfabian)
Documentation
- e3caeba: docs(hydrator): document signature verification limitation (#21504) (@crenshaw-dev)
- 04a1608: docs: 3.0 release date on May 06 (#22189) (@reggie-k)
- fdf9a30: docs: 3.0 upgrade guide (#21457) (@crenshaw-dev)
- c687247: docs: Add LY Corporation to list of users (#21592) (@Asuforce)
- 898a126: docs: Add section on how to lock down/restrict the default project (#21757) (@dag-andersen)
- 3f74b24: docs: Adding Argo CD CLI plugin support proposal (#19624) (@christianh814)
- 7ba7fc0: docs: Auto Sync toggle does not work for Applications created with an ApplicationSet (#21577) (@revitalbarletz)
- f275157: docs: Document Helm 3.17.1 breaking changes (#22283) (@reggie-k)
- c4183aa: docs: Document askpass socket sharing between reposerver and cmp sidecar (#22083) (@peschmae)
- d19b02d: docs: Ensure Argo CD Hydrator branch prefix consistency (#21836) (@dag-andersen)
- 167e122: docs: Fix typo code-gen/codegen contributors-quickstart.md (#21922) (@fe-ax)
- dc32867: docs: Fix typos and grammar in tls.md (#22229) (@todaywasawesome)
- 87539aa: docs: Surface blog with (actual) release notes better (#21572) (@revitalbarletz)
- 499f74d: docs: Update USERS.md (#22093) (@mreparaz)
- 961147d: docs: Update sync-kubectl.md - Correct kubectl command for a sample (#22030) (@taeyeopkim1)
- 1823d8f: docs: add applicationset controller doc to preserve annotations and labels (#22008) (@leoluz)
- 77ff8f0: docs: add missing word (#21428) (@nitishfy)
- 2d10d4e: docs: add mkdocs configuration stanza to .readthedocs.yaml (#21475) (@reggie-k)
- 975e966: docs: add more info on what
login --core
does (#21487) (@nitishfy) - db8d2f0: docs: add note about comments in policy.csv files (#21339) (@morremeyer)
- 9fd6bee: docs: add statusbadge.url override information (#21529) (@tobiasehlert)
- 1645d57: docs: add wildcard globbing example to docs (#21429) (@LRost)
- 65664ce: docs: clarify wording on cluster secrets (#21865) (@todaywasawesome)
- 7327093: docs: custom resource action UI tweaks (#22202) (@crenshaw-dev)
- 8a752a5: docs: document bearerToken in repo example doc (#22195) (@crenshaw-dev)
- 8d12e35: docs: document logs RBAC enforcement remediation (#22285) (@reggie-k)
- f63f5f9: docs: document source hydrator maturity (#21969) (@crenshaw-dev)
- c32afb4: docs: endorse secrets operators, caution against plugins (#21629) (#21631) (@crenshaw-dev)
- 05cde71: docs: fix aws sso documentation (#20681) (@chansuke)
- 40d86e7: docs: fix broken link in notifications overview (#21684) (@jeanmorais)
- ce81912: docs: fix project role docs (#21832) (@klemmster)
- bd1018a: docs: fix tmp path and document Rancher caveat (#22252) (@crenshaw-dev)
- 3c3410c: docs: fix typo in declarative-setup.md (#22256) (@muffl0n)
- 846503b: docs: note idle connections issue for cluster namespaces (#21978) (@crenshaw-dev)
- 1a56ea7: docs: remove branch var outdated from the cluster param (#21549) (@afzal442)
- 070287c: docs: update contributors guide with repo clone and make targets (#21473) (@reggie-k)
- 9f8d68f: docs: various wording fixes for 3.0 migration guide (#22343) (@todaywasawesome)
Dependency updates
- f2c5093: chore(deps): bump @types/selenium-webdriver from 4.1.27 to 4.1.28 in /ui-test (#21414) (@dependabot[bot])
- e6b110d: chore(deps): bump SonarSource/sonarqube-scan-action from 4.1.0 to 4.2.1 (#21230) (@dependabot[bot])
- cb135fd: chore(deps): bump axios from 1.7.4 to 1.8.2 in /ui-test (#22247) (@dependabot[bot])
- 5e30858: chore(deps): bump bitnami/kubectl from 1.31 to 1.32 in /test/container (#21234) (@dependabot[bot])
- 812a9da: chore(deps): bump chromedriver from 131.0.3 to 131.0.4 in /ui-test (#21268) (@dependabot[bot])
- c3600d2: chore(deps): bump chromedriver from 131.0.4 to 131.0.5 in /ui-test (#21415) (@dependabot[bot])
- 742d45a: chore(deps): bump chromedriver from 131.0.5 to 132.0.0 in /ui-test (#21512) (@dependabot[bot])
- cdb7995: chore(deps): bump chromedriver from 132.0.0 to 132.0.1 in /ui-test (#21646) (@dependabot[bot])
- 6c64d5f: chore(deps): bump chromedriver from 132.0.1 to 133.0.2 in /ui-test (#21916) (@dependabot[bot])
- c47152d: chore(deps): bump chromedriver from 133.0.2 to 133.0.3 in /ui-test (#22018) (@dependabot[bot])
- 2cefcc5: chore(deps): bump chromedriver from 133.0.3 to 134.0.0 in /ui-test (#22218) (@dependabot[bot])
- a45f715: chore(deps): bump chromedriver from 134.0.0 to 134.0.2 in /ui-test (#22307) (@dependabot[bot])
- 5207508: chore(deps): bump code.gitea.io/sdk/gitea from 0.19.0 to 0.20.0 (#21464) (@dependabot[bot])
- 8ce1c33: chore(deps): bump docker/setup-buildx-action from 3.7.1 to 3.8.0 (#21210) (@dependabot[bot])
- 1d47e1c: chore(deps): bump github.com/Azure/azure-sdk-for-go/sdk/azidentity from 1.8.0 to 1.8.1 (#21566) (@dependabot[bot])
- b3bf182: chore(deps): bump github.com/Azure/azure-sdk-for-go/sdk/azidentity from 1.8.1 to 1.8.2 (#21867) (@dependabot[bot])
- 627da11: chore(deps): bump github.com/Azure/kubelogin from 0.1.6 to 0.1.8 (#22271) (@dependabot[bot])
- c8e1de6: chore(deps): bump github.com/Azure/kubelogin from 0.1.8 to 0.1.9 (#22308) (@dependabot[bot])
- 2a760e1: chore(deps): bump github.com/alicebob/miniredis/v2 from 2.33.0 to 2.34.0 (#21232) (@dependabot[bot])
- 2194443: chore(deps): bump github.com/aws/aws-sdk-go from 1.55.5 to 1.55.6 (#21514) (@dependabot[bot])
- 5d84eb4: chore(deps): bump github.com/bmatcuk/doublestar/v4 from 4.7.1 to 4.8.0 (#21483) (@dependabot[bot])
- 5e5ec1b: chore(deps): bump github.com/bmatcuk/doublestar/v4 from 4.8.0 to 4.8.1 (#21677) (@dependabot[bot])
- 4723abd: chore(deps): bump github.com/bradleyfalzon/ghinstallation/v2 (#21353) (@dependabot[bot])
- ecee599: chore(deps): bump github.com/bradleyfalzon/ghinstallation/v2 from 2.13.0 to 2.14.0 (#21955) (@dependabot[bot])
- 635e592: chore(deps): bump github.com/casbin/casbin/v2 from 2.102.0 to 2.103.0 (#21330) (@dependabot[bot])
- 84f2ab8: chore(deps): bump github.com/casbin/govaluate from 1.2.0 to 1.3.0 (#21331) (@dependabot[bot])
- b3e31ed: chore(deps): bump github.com/coreos/go-oidc/v3 from 3.11.0 to 3.12.0 (#21383) (@dependabot[bot])
- de40dc2: chore(deps): bump github.com/coreos/go-oidc/v3 from 3.12.0 to 3.13.0 (#22347) (@dependabot[bot])
- d29124f: chore(deps): bump github.com/cyphar/filepath-securejoin (#21233) (@dependabot[bot])
- 9a51757: chore(deps): bump github.com/cyphar/filepath-securejoin from 0.3.6 to 0.4.0 (#21484) (@dependabot[bot])
- eb8f05a: chore(deps): bump github.com/cyphar/filepath-securejoin from 0.4.0 to 0.4.1 (#21700) (@dependabot[bot])
- ab05f35: chore(deps): bump github.com/dlclark/regexp2 from 1.11.4 to 1.11.5 (#21853) (@dependabot[bot])
- b9f49df: chore(deps): bump github.com/evanphx/json-patch from 5.9.0+incompatible to 5.9.11+incompatible (#21699) (@dependabot[bot])
- dd366f5: chore(deps): bump github.com/go-git/go-git/v5 from 5.12.0 to 5.13.0 (#21329) (@dependabot[bot])
- 8200e3d: chore(deps): bump github.com/go-git/go-git/v5 from 5.13.0 to 5.13.1 (#21352) (@dependabot[bot])
- bcf2143: chore(deps): bump github.com/go-git/go-git/v5 from 5.13.1 to 5.13.2 (#21641) (@dependabot[bot])
- cbef55e: chore(deps): bump github.com/go-git/go-git/v5 from 5.13.2 to 5.14.0 (#22076) (@dependabot[bot])
- 0b0c737: chore(deps): bump github.com/go-jose/go-jose/v3 to v4 (#22154) (@nitishfy)
- c897e94: chore(deps): bump github.com/go-jose/go-jose/v4 from 4.0.2 to 4.0.5 (#21989) (@dependabot[bot])
- 1b1735f: chore(deps): bump github.com/golang/glog from 1.2.2 to 1.2.4 (#21693) (@dependabot[bot])
- f32f69f: chore(deps): bump github.com/google/go-cmp from 0.6.0 to 0.7.0 (#21956) (@dependabot[bot])
- f429352: chore(deps): bump github.com/gosimple/slug from 1.14.0 to 1.15.0 (#21304) (@dependabot[bot])
- 7870200: chore(deps): bump github.com/prometheus/client_golang from 1.20.5 to 1.21.0 (#21915) (@dependabot[bot])
- 0444fcd: chore(deps): bump github.com/prometheus/client_golang from 1.21.0 to 1.21.1 (#22180) (@dependabot[bot])
- 562fa06: chore(deps): bump github.com/redis/go-redis/v9 from 9.7.0 to 9.7.1 (#21957) (@dependabot[bot])
- ca9da79: chore(deps): bump github.com/spf13/cobra from 1.8.1 to 1.9.1 (#21889) (@dependabot[bot])
- b17c5e4: chore(deps): bump github.com/spf13/pflag from 1.0.5 to 1.0.6 (#21717) (@dependabot[bot])
- edbce2a: chore(deps): bump gitops-engine to latest (#22071) (@pjiang-dev)
- d46f224: chore(deps): bump gitpod/workspace-full from
230285e
tobec45eb
(#20980) (@dependabot[bot]) - 84b49c8: chore(deps): bump gitpod/workspace-full from
bec45eb
toa47a68e
(#21843) (@dependabot[bot]) - e784c47: chore(deps): bump go 1.23.5 & tools (#21748) (@agaudreault)
- 21ea59d: chore(deps): bump go.opentelemetry.io/otel from 1.33.0 to 1.34.0 (#21569) (@dependabot[bot])
- 64569e6: chore(deps): bump go.opentelemetry.io/otel from 1.34.0 to 1.35.0 (#22217) (@dependabot[bot])
- f2490fc: chore(deps): bump go.opentelemetry.io/otel/sdk from 1.33.0 to 1.34.0 (#21570) (@dependabot[bot])
- cce74a3: chore(deps): bump golang.org/x/crypto from 0.31.0 to 0.32.0 (#21397) (@dependabot[bot])
- 50fb7bc: chore(deps): bump golang.org/x/crypto from 0.32.0 to 0.33.0 (#21827) (@dependabot[bot])
- bf2c4e8: chore(deps): bump golang.org/x/net from 0.32.0 to 0.33.0 (#21254) (@dependabot[bot])
- a807c0e: chore(deps): bump golang.org/x/net from 0.33.0 to 0.34.0 (#21396) (@dependabot[bot])
- 9783c5e: chore(deps): bump golang.org/x/net from 0.35.0 to 0.36.0 (#22182) (@dependabot[bot])
- a8b76f2: chore(deps): bump golang.org/x/net from 0.36.0 to 0.37.0 (#22209) (@dependabot[bot])
- 0c1d218: chore(deps): bump golang.org/x/oauth2 from 0.24.0 to 0.25.0 (#21384) (@dependabot[bot])
- 4641e80: chore(deps): bump golang.org/x/oauth2 from 0.25.0 to 0.26.0 (#21777) (@dependabot[bot])
- 94d3899: chore(deps): bump golang.org/x/oauth2 from 0.26.0 to 0.27.0 (#21990) (@dependabot[bot])
- 4c27f73: chore(deps): bump golang.org/x/oauth2 from 0.27.0 to 0.28.0 (#22211) (@dependabot[bot])
- 4b08708: chore(deps): bump golang.org/x/sync from 0.10.0 to 0.11.0 (#21778) (@dependabot[bot])
- 2d99403: chore(deps): bump golang.org/x/sync from 0.11.0 to 0.12.0 (#22216) (@dependabot[bot])
- 38ad4f4: chore(deps): bump golang.org/x/term from 0.27.0 to 0.28.0 (#21382) (@dependabot[bot])
- 73c3935: chore(deps): bump golang.org/x/term from 0.28.0 to 0.29.0 (#21776) (@dependabot[bot])
- 270b352: chore(deps): bump golang.org/x/time from 0.10.0 to 0.11.0 (#22212) (@dependabot[bot])
- 76d28b5: chore(deps): bump golang.org/x/time from 0.8.0 to 0.9.0 (#21385) (@dependabot[bot])
- 7d0c10e: chore(deps): bump golang.org/x/time from 0.9.0 to 0.10.0 (#21779) (@dependabot[bot])
- 6b57b16: chore(deps): bump google.golang.org/grpc from 1.68.1 to 1.69.0 (#21163) (@dependabot[bot])
- f15e1bc: chore(deps): bump google.golang.org/grpc from 1.69.0 to 1.69.2 (#21270) (@dependabot[bot])
- 9a02f9b: chore(deps): bump google.golang.org/grpc from 1.69.2 to 1.69.4 (#21485) (@dependabot[bot])
- b4753d8: chore(deps): bump google.golang.org/grpc from 1.69.4 to 1.70.0 (#21657) (@dependabot[bot])
- 2731c3f: chore(deps): bump google.golang.org/grpc from 1.70.0 to 1.71.0 (#22183) (@dependabot[bot])
- e052670: chore(deps): bump google.golang.org/protobuf from 1.35.2 to 1.36.0 (#21211) (@dependabot[bot])
- 728b31e: chore(deps): bump google.golang.org/protobuf from 1.36.0 to 1.36.1 (#21303) (@dependabot[bot])
- 2a497ef: chore(deps): bump google.golang.org/protobuf from 1.36.1 to 1.36.2 (#21412) (@dependabot[bot])
- d4d6713: chore(deps): bump google.golang.org/protobuf from 1.36.2 to 1.36.3 (#21513) (@dependabot[bot])
- 7333c75: chore(deps): bump google.golang.org/protobuf from 1.36.3 to 1.36.4 (#21676) (@dependabot[bot])
- 4e2902d: chore(deps): bump google.golang.org/protobuf from 1.36.4 to 1.36.5 (#21813) (@dependabot[bot])
- 4f179a1: chore(deps): bump jinja2 from 3.1.5 to 3.1.6 in /docs (#22219) (@dependabot[bot])
- 0dddb9e: chore(deps): bump library/busybox from
a5d0ce4
to498a000
in /test/e2e/multiarch-container (#21959) (@dependabot[bot]) - d3dda53: chore(deps): bump library/busybox in /test/e2e/multiarch-container (#21486) (@dependabot[bot])
- 780285b: chore(deps): bump library/golang from 1.23.4 to 1.23.5 in /test/remote (#21535) (@dependabot[bot])
- 7efd2fe: chore(deps): bump library/golang from 1.23.5 to 1.23.6 in /test/container (#21774) (@dependabot[bot])
- 8e91ce9: chore(deps): bump library/golang from 1.23.5 to 1.23.6 in /test/remote (#21799) (@dependabot[bot])
- 9e6b28b: chore(deps): bump library/golang from 1.23.6 to 1.24.0 in /test/container (#21866) (@dependabot[bot])
- ee83eea: chore(deps): bump library/golang from 1.23.6 to 1.24.0 in /test/remote (#21868) (@dependabot[bot])
- 2168221: chore(deps): bump library/golang from 1.24.0 to 1.24.1 in /test/remote (#22184) (@dependabot[bot])
- 98cd061: chore(deps): bump library/golang from
2b1cbf2
tocd0c949
in /test/remote (#22020) (@dependabot[bot]) - dbf9393: chore(deps): bump library/golang in /test/container (#21533) (@dependabot[bot])
- fe8bab0: chore(deps): bump library/redis from 7.4.1 to 7.4.2 in /test/container (#21395) (@dependabot[bot])
- f108332: chore(deps): bump library/redis in /test/container (#20776) (@dependabot[bot])
- e920e71: chore(deps): bump library/redis in /test/container (#21253) (@dependabot[bot])
- 87a7a6e: chore(deps): bump library/redis in /test/container (#21310) (@dependabot[bot])
- 9011397: chore(deps): bump library/redis in /test/container (#21494) (@dependabot[bot])
- 3639bfe: chore(deps): bump library/registry in /test/container (#20775) (@dependabot[bot])
- 683e4e0: chore(deps): bump selenium-webdriver from 4.27.0 to 4.29.0 in /ui-test (#22117) (@dependabot[bot])
- 871ed62: chore(deps): bump sigs.k8s.io/controller-runtime from 0.19.3 to 0.19.4 (#21411) (@dependabot[bot])
- 527ef92: chore(deps): bump sigs.k8s.io/structured-merge-diff/v4 from 4.4.4-0.20241211184406-7bf59b3d70ee to 4.6.0 (#22181) (@dependabot[bot])
- e18b4d7: chore(deps): switch to new expr package (#21982) (@crenshaw-dev)
- 36d563a: chore(deps): update dependency gotestyourself/gotestsum to v1.12.0 (#21900) (@renovate[bot])
- cae840b: chore(deps): update dependency gotestyourself/gotestsum to v1.12.1 (#22328) (@renovate[bot])
- cf89ee6: chore(deps): update dependency jinja2 to v3.1.5 (#21289) (@renovate[bot])
- 1029388: chore(deps): update dependency pygments to v2.19.0 (#21379) (@renovate[bot])
- 9cc5224: chore(deps): update dependency pygments to v2.19.1 (#21392) (@renovate[bot])
- a415822: chore(deps): update dependency pymdown-extensions to v10.13 (#21301) (@renovate[bot])
- 4fee6b5: chore(deps): update dependency pymdown-extensions to v10.14 (#21403) (@renovate[bot])
- 42fa72d: chore(deps): update dependency pymdown-extensions to v10.14.3 (#21619) (@renovate[bot])
- 065fc31: chore(deps): update module github.com/golangci/golangci-lint to v1.63.2 (#21343) (@renovate[bot])
- 33f2a6f: chore(deps): update module github.com/golangci/golangci-lint to v1.63.3 (#21348) (@renovate[bot])
- 8245cd9: chore(deps): update module github.com/golangci/golangci-lint to v1.63.4 (#21368) (@renovate[bot])
- 2e1db11: chore(deps): update module github.com/golangci/golangci-lint to v1.64.5 (#21850) (@renovate[bot])
- 95a43e0: chore(deps): update module github.com/golangci/golangci-lint to v1.64.6 (#22115) (@renovate[bot])
- 12928cb: chore(deps): update module github.com/golangci/golangci-lint to v1.64.7 (#22306) (@renovate[bot])
- d84ac3a: chore(deps-dev): bump @types/mocha from 10.0.9 to 10.0.10 in /ui-test (#21251) (@dependabot[bot])
- 1f1c339: chore(deps-dev): bump @types/node from 22.10.10 to 22.13.4 in /ui-test (#21874) (@dependabot[bot])
- 41dec01: chore(deps-dev): bump @types/node from 22.10.2 to 22.10.5 in /ui-test (#21381) (@dependabot[bot])
- 2f57940: chore(deps-dev): bump @types/node from 22.10.5 to 22.10.6 in /ui-test (#21482) (@dependabot[bot])
- 3a29a74: chore(deps-dev): bump @types/node from 22.10.6 to 22.10.7 in /ui-test (#21511) (@dependabot[bot])
- 7706644: chore(deps-dev): bump @types/node from 22.10.7 to 22.10.8 in /ui-test (#21644) (@dependabot[bot])
- 75def4f: chore(deps-dev): bump @types/node from 22.10.8 to 22.10.10 in /ui-test (#21658) (@dependabot[bot])
- 33ad0a7: chore(deps-dev): bump @types/node from 22.13.4 to 22.13.5 in /ui-test (#21960) (@dependabot[bot])
- 111cf2c: chore(deps-dev): bump @types/node from 22.13.5 to 22.13.10 in /ui-test (#22272) (@dependabot[bot])
- 235470f: chore(deps-dev): bump @types/node from 22.9.3 to 22.10.2 in /ui-test (#21143) (@dependabot[bot])
- 5b482d7: chore(deps-dev): bump mocha from 10.7.3 to 11.0.1 in /ui-test (#21030) (@dependabot[bot])
- b77d9d9: chore(deps-dev): bump typescript from 5.7.2 to 5.7.3 in /ui-test (#21443) (@dependabot[bot])
- 05a9171: chore(deps-dev): bump typescript from 5.7.3 to 5.8.2 in /ui-test (#22118) (@dependabot[bot])
Other work
- fdf21f7: Add pollinate to USERS.md (#21247) (@shavmohin)
- 3f0a155: Fix application url for custom base href (#21377) (@amit-o)
- c689352: Fixing the link in the docs (#21316) (@ali-hamza-noor)
- 6f5537b: Merge commit from fork (@svghadi)
- 4d59154: Replace deprecated go-gitlab dependency with client-go. (#21175) (@gbw)
- 9309688: Stabilize on-deployed notification trigger (#21333) (@svghadi)
- cce4a28: Update ingress.md (#21324) (@aliabbasjaffri)
- 80edbfe: Update toolchain-guide.md (#21288) (@Jonty16117)
- 0b542ba: add
project
missing field to spec (#21277) (@afzal442) - 1194766: added-ACL (#21238) (@surajyadav1108)
- fe598a8: chore!: add 60s default jitter (#22342) (@agaudreault)
- 47bec8b: chore!: remove legacy repo support (#19768) (#21249) (@crenshaw-dev)
- 5d147a3: chore(appset)!: always apply nested selectors (#14152) (#21492) (@crenshaw-dev)
- 928fd19: chore(appset): simplify cluster list code (#21820) (@crenshaw-dev)
- 75bbb50: chore(appset): use DB instead of kube client for cluster validation (#21190) (@crenshaw-dev)
- 226a670: chore(ci): improve previous-version script readability, fix bug (cherry-pick #22378) (#22381) (@gcp-cherry-pick-bot[bot])
- 77ad48a: chore(ci): run codegen as part of version bump job (#21404) (@crenshaw-dev)
- 335b65b: chore(config)!: Ignore all
.status
updates & known high churn changes by default (#21760) (@agaudreault) - ab07b0a: chore(controller): simplify sharding code (#21244) (@crenshaw-dev)
- 261137d: chore(health): report progressing status for AppSets (#22092) (@crenshaw-dev)
- be293fe: chore(hydrator): improve error message (#21987) (@crenshaw-dev)
- 42219fd: chore(lint): fix deep copy informers lint (#22290) (@crenshaw-dev)
- 4e08b8d: chore(metrics)!: remove deprecated metrics (#21697) (@crenshaw-dev)
- bd37458: chore(refactor): remove app destination inferrence logic (#21189) (@crenshaw-dev)
- 34fd729: chore(refactor): remove unused function/file (#21245) (@crenshaw-dev)
- bd9923f: chore(repo-server): simplify Kustomize/Helm version detection (#21540) (@crenshaw-dev)
- 566bc2e: chore(test): simplify test assertions (#21242) (@crenshaw-dev)
- ecd0bcd: chore(ui): resolve
ts-jest
config underglobals
is deprecated (#20036) (@jsoref) - b6770bd: chore: Add divar.ir to USERS.md (#21344) (@aminarefzadeh)
- 12a4dab: chore: Fix data race detection failures in application tests (#21271) (@eadred)
- 45e4886: chore: Graceful shutdown for API Server (#18642) (#21224) (@andrii-korotkov-verkada)
- 2ce593b: chore: Optimize Docker image layers (#21525) (@marcofranssen)
- 07da3d4: chore: Option to disable sync with replace on API Server level (#21427) (#22073) (@andrii-korotkov-verkada)
- 9d66e89: chore: Remove k8s 1.28 from e2e testing (#22245) (@andrii-korotkov-verkada)
- e14d6b7: chore: Update notifications to be less spammy (#20871) (#21884) (@andrii-korotkov-verkada)
- 8d1aeb5: chore: Update some dependencies and add some comments about old libs (#22104) (#22208) (@andrii-korotkov-verkada)
- 5223ce5: chore: Upgrade Redis from 7.0.15-alpine to 7.2.7-alpine and haproxy (#22108) (#22110) (@andrii-korotkov-verkada)
- d765aab: chore: Upgrade ubuntu base image to latest 24.04 digest (#21524) (@marcofranssen)
- 91cb693: chore: action docker warnings (#21556) (@Softyy)
- 8a447d9: chore: add e2e test for hook finalizer which prevents external resource deletion (#21113) (@dejanzele)
- 6daaac5: chore: add log context to proxy extension requests (#21834) (@leoluz)
- acb47b4: chore: add script to bump major version (#21363) (@crenshaw-dev)
- 944f9f7: chore: add the Argo CD type definitions and method comments (#21854) (@nitishfy)
- f044200: chore: bump gitops-engine (#22335) (@pjiang-dev)
- 76dbaaa: chore: bump to github.com/grpc-ecosystem/go-grpc-middleware/v2 (#22098) (@mmorel-35)
- 9b91454: chore: cleanup
diff-cache
testdata (#21600) (@llavaud) - 8507a87: chore: define apiextensionsv1 alias with importas (#21823) (@mmorel-35)
- 74582e9: chore: embed trivial rand string function (#22177) (@crenshaw-dev)
- 35a174b: chore: enable badCond from gocritic (#21632) (@mmorel-35)
- b04a7c1: chore: enable context-as-argument from revive (#21371) (@mmorel-35)
- c803257: chore: enable duplicated-imports from revive (#21378) (@mmorel-35)
- 6c45721: chore: enable early-return from revive (#21423) (@mmorel-35)
- f245e8b: chore: enable err-error and strconcat of perfsprint linter (#21267) (@mmorel-35)
- 8a6f53d: chore: enable errorf of perfsprint linter (#21280) (@mmorel-35)
- bf082c2: chore: enable ifElseChain from gocritic (#21636) (@mmorel-35)
- 5508d1f: chore: enable importas for k8s.io/apimachinery/pkg/api/errors (#21262) (@mmorel-35)
- 8126508: chore: enable importas for k8s.io/apimachinery/pkg/apis/meta/v1 (#21284) (@mmorel-35)
- 4e5db16: chore: enable increment-decrement from revive (#21366) (@mmorel-35)
- 947a7b8: chore: enable indent-error-flow from revive (#21394) (@mmorel-35)
- 5ef4faa: chore: enable nolintlint (#21559) (@mmorel-35)
- 753f7b6: chore: enable parallel helm manifest generation by default (#22224) (@nitishfy)
- c739478: chore: enable receiver-naming from revive (#21372) (@mmorel-35)
- 9f0dc94: chore: enable redundant-import-alias from revive (#21386) (@mmorel-35)
- 24893ad: chore: enable several rules from revive (#21638) (@mmorel-35)
- 27915da: chore: enable singleCaseSwitch and commentFormatting rules from gocritic (#21616) (@mmorel-35)
- cb3024c: chore: enable superfluous-else from revive (#21373) (@mmorel-35)
- 50c49ec: chore: enable unnecessary-stmt from revive (#21398) (@mmorel-35)
- 53bc19b: chore: enable unused-parameter from revive (#21365) (@mmorel-35)
- 9ea979b: chore: enable use-any from revive (#21282) (@mmorel-35)
- 37aaeb3: chore: enable usetesting linter (#21935) (@mmorel-35)
- e66068c: chore: enable var-declaration from revive (#21370) (@mmorel-35)
- c1b2f78: chore: enable var-naming from revive (#21861) (@mmorel-35)
- ceb758c: chore: import k8s.io/api/core/v1 as corev1 (#21345) (@mmorel-35)
- 3593f24: chore: mark with-hydrator manifests as generated (#21639) (@crenshaw-dev)
- 045a027: chore: reggie-k as release champion for 3.0 (#21736) (@reggie-k)
- ffdbcb6: chore: reuse common PermissionDeniedAPIError (#21283) (@mmorel-35)
- 2b1220c: chore: revise wrong resource customization usage example (#22074) (@hanxiaop)
- aeb0002: chore: set default tracking to annotation (#22289) (@crenshaw-dev)
- 9b17495: chore: update go-github to use token (#21292) (@aburan28)
- 38c2b34: chore: update gotestsum automatically (#21828) (@mikutas)
- 228b86d: chore: update mockery version (#22126) (@gdsoumya)
- e3bcc48: chore: updates to Numaplane health checks (#21671) (@juliev0)
- 922d080: chore: upgrade Go to 1.24 (#22242) (@sivchari)
- ef55ba5: chore: use dario.cat/mergo instead of github.com/imdario/mergo (#21274) (@mmorel-35)
- 6087b4f: chore: use github.com/golang-jwt/jwt/v5 (#21276) (@mmorel-35)
- 795bda5: chore: use github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus (#21937) (@mmorel-35)
- 83257a9: chore: use grpc-middleware interceptors (#22329) (@mmorel-35)
- db82e23: chore: use internal errors util instead of pkg's (#22174) (@crenshaw-dev)
- 48334cf: chore: use standard errors instead of github.com/pkg/errors (#21266) (@mmorel-35)
- 9843bfb: chore: use testify instead of native testing (#21781) (@mmorel-35)
- 13235ad: chore: use testify instead of testing.Fatal (#21258) (@mmorel-35)
- d7ccf47: chore: use testify instead of testing.Fatal or testing.Error in pkg (#20761) (@mmorel-35)
- e7d9091: chore: use testify instead of testing.Fatal or testing.Error in reposerver (#20762) (@mmorel-35)
- 644af54: chore: version bumping helm3 (#22009) (@igaskin)
- e147247: ci: disable nolintlint linter (#21707) (@agaudreault)
- 976a849: ci: fixes #21862 Concurrency in pr-title-check (#21863) (@appiepollo14)
- e5df999: crepocreds-short-changed (#21285) (@surajyadav1108)
- 9a3cfcb: docs(2.14): adding basic upgrading docs for 2.14 (#21744) (@rumstead)
- 622847b: docs(2.14): use 2.14.1 manifests as remote bases (#21759) (@rumstead)
- 073ccf7: fix(#19314, #15700): allow
ssh
/altssh
subdomains in repo URLs to match webhook payload (#21227) (@mtbennett-godaddy) - 8f285a5: fix(in-cluster): do not allow the cluster to be used when disabled (#21208) (@agaudreault)
- a1431be: fix(ui, rbac): project-roles (#21829) (@blakepettersson)
- 26ebb9b: fixed the broken link while version upgrade/degrade (#21279) (@afzal442)
- 2bcaa19: revert: add a check for user defined role referential integrity #21065 (#22130) (@rumstead)
Full Changelog: v2.14.5...v3.0.0-rc1