Skip to content

Releases: kedacore/http-add-on

v0.15.0

Choose a tag to compare

@linkvt linkvt released this 15 Jun 13:38
4ea8a86

Highlights

HTTP/2 and gRPC support (#1084)

The interceptor now supports HTTP/2 (h2c and h2 over TLS), enabling autoscaling of gRPC workloads. Backend transport is selected based on the Kubernetes appProtocol field on the Service port (#1676): cleartext backends default to HTTP/1.1 unless appProtocol: kubernetes.io/h2c is set; TLS backends negotiate via ALPN.

The KEDA_HTTP_FORCE_HTTP2 environment variable has been removed — HTTP/2 is now negotiated automatically.

Cold-start placeholder responses (#874)

New coldStart.placeholder support lets you return static HTTP responses while a workload scales from zero, instead of holding the request until a pod is ready.

Scaler resilience (#1667)

The scaler now tolerates partial interceptor pod failures instead of restarting on a single unreachable endpoint. Last-known concurrency is cached for unreachable pods to prevent underreporting.

Graceful shutdown (#1636)

The interceptor now drains in-flight requests before exiting. It waits for active handlers to complete (bounded by KEDA_HTTP_DRAIN_TIMEOUT), marks the readiness probe unhealthy immediately on SIGTERM, and delays listener closure by KEDA_HTTP_SHUTDOWN_DELAY to let Kubernetes propagate endpoint removal.

Deprecations

  • KEDAHTTP_OPERATOR_EXTERNAL_SCALER_SERVICE and KEDAHTTP_OPERATOR_EXTERNAL_SCALER_PORT have been renamed to KEDA_HTTP_OPERATOR_EXTERNAL_SCALER_SERVICE and KEDA_HTTP_OPERATOR_EXTERNAL_SCALER_PORT. Old names still work but log a deprecation warning. (#1623)

What's Changed

  • fix(deps): update module github.com/cert-manager/cert-manager to v1.19.5 by @renovate[bot] in #1612
  • fix: disable digest pinning for kindest/node in renovate by @linkvt in #1614
  • chore: group e2e-framework with Kubernetes deps in renovate by @linkvt in #1613
  • chore(deps): update e2e dependencies by @renovate[bot] in #1615
  • chore(deps): update dependency golangci/golangci-lint to v2.12.1 by @renovate[bot] in #1616
  • fix(deps): update go dependencies (non-major) by @renovate[bot] in #1611
  • chore: remove unused .dockerignore file by @linkvt in #1621
  • ci: add stable e2e summary job for branch protection by @linkvt in #1618
  • chore: improve OpenSSF Scorecard security posture by @linkvt in #1620
  • fix(ci): add retry logic to e2e Helm dependency installs by @Fedosin in #1584
  • fix: rename KEDAHTTP_OPERATOR_EXTERNAL_SCALER_* env vars to KEDA_HTTP_OPERATOR_EXTERNAL_SCALER_* by @Fedosin in #1623
  • fix: use downward API for namespace env vars instead of hardcoded value by @Fedosin in #1625
  • chore: add OpenSSF and community badges to README by @linkvt in #1624
  • chore(deps): update github actions by @renovate[bot] in #1630
  • chore(deps): update dependency golangci/golangci-lint to v2.12.2 by @renovate[bot] in #1629
  • chore(deps): update ghcr.io/wolfi-dev/static:alpine docker digest to de720d5 by @renovate[bot] in #1627
  • fix(deps): update k8s.io/utils digest to ff6756f by @renovate[bot] in #1628
  • chore: flatten nested checklist in PR template by @linkvt in #1632
  • chore: exclude gnu.org/make from lychee link checks by @linkvt in #1631
  • feat: add native Go fuzz tests for untrusted-input surfaces by @Fedosin in #1599
  • chore(deps): update actions/upload-artifact action to v7 by @renovate[bot] in #1642
  • chore(deps): update github/codeql-action action to v4.35.5 by @renovate[bot] in #1638
  • chore(deps): update e2e dependencies by @renovate[bot] in #1640
  • fix(deps): update go dependencies (non-major) to v0.34.8 by @renovate[bot] in #1639
  • fix(deps): update go dependencies (non-major) by @renovate[bot] in #1641
  • docs: reference new e2e test suite in contributor docs by @linkvt in #1635
  • chore: remove old HTTPSO examples by @linkvt in #1643
  • Replace gorilla/websocket with coder/websocket by @Akram-saj in #1633
  • fix(deps): update module github.com/coder/websocket to v1.8.14 by @renovate[bot] in #1650
  • perf: strip managed fields from controller-runtime cache by @linkvt in #1651
  • chore(deps): update module golang.org/x/net to v0.55.0 [security] by @renovate[bot] in #1652
  • chore(deps): update github actions by @renovate[bot] in #1653
  • chore(deps): update helm release opentelemetry-collector to v0.156.2 - autoclosed by @renovate[bot] in #1654
  • ci: add workflow to block PRs with 'on hold' label by @linkvt in #1647
  • feat: add coldStart.placeholder support for static responses by @linkvt in #1626
  • feat(scaler): add observability (metrics + tracing) to the external scaler by @Fedosin in #1634
  • chore(deps): update helm release opentelemetry-collector to v0.158.0 by @renovate[bot] in #1660
  • fix: filter GetMetrics response by requested metric name by @linkvt in #1664
  • feat: add s390x to release platforms by @linkvt in #1663
  • chore: clean up README and remove outdated files by @linkvt in #1666
  • fix(deps): update go dependencies (non-major) by @renovate[bot] in #1661
  • fix(interceptor): close request body to prevent panic by @linkvt in #1669
  • fix(deps): update go dependencies (non-major) to v1.44.0 by @renovate[bot] in #1673
  • chore(deps): update github actions by @renovate[bot] in #1671
  • chore(deps): update e2e dependencies by @renovate[bot] in #1672
  • fix: drain in-flight requests on shutdown by @linkvt in #1648
  • feat: add gRPC and HTTP/2 support to interceptor by @linkvt in #1658
  • chore: use pinned version comments for GitHub Actions by @linkvt in #1674
  • fix: tolerate partial interceptor pod failures in scaler by @Fedosin in #1670
  • feat: select backend transport via service appProtocol by @linkvt in #1678
  • chore: pin helm version and add timeouts to e2e helm installs by @linkvt in #1686
  • fix(deps): update go dependencies (non-major) to v0.34.9 by @renovate[bot] in #1682
  • chore(deps): update ghcr.io/wolfi-dev/static:alpine docker digest to 6a4616e by @renovate[bot] in #1680
  • chore(deps): update pre-commit hooks to v2.5.0 by @renovate[bot] in #1683
  • fix(deps): update go dependencies (non-major) by @renovate[bot] in #1684
  • chore: prepare release v0.15.0 by @linkvt in #1687

New Contributors

Full Changelog: v0.14.0...v0.15.0

v0.14.0

Choose a tag to compare

@linkvt linkvt released this 24 Apr 09:37
b9b764f

Breaking Changes

Interceptor timeout defaults changed (#1474)

Default timeout behavior has been redesigned. KEDA_HTTP_REQUEST_TIMEOUT now defaults to 0 (disabled), KEDA_HTTP_RESPONSE_HEADER_TIMEOUT defaults to 300s (was 500ms), and KEDA_HTTP_READINESS_TIMEOUT defaults to 0 (disabled, was 20s). Timeout errors now return 504 instead of 502.

The following environment variables have been removed: KEDA_HTTP_TLS_HANDSHAKE_TIMEOUT, KEDA_HTTP_EXPECT_CONTINUE_TIMEOUT, KEDA_HTTP_KEEP_ALIVE, KEDA_HTTP_IDLE_CONN_TIMEOUT, KEDA_HTTP_DIAL_RETRY_TIMEOUT. These now use Go's DefaultTransport defaults.

Interceptor metrics redesigned (#1563, #1590)

Metrics now use bounded labels: path/host replaced by route_name/route_namespace, and non-standard HTTP methods are normalized to _OTHER. Metrics have also been renamed to follow OTel semantic conventions: interceptor_requests_totalinterceptor_request_count_total, interceptor_pending_requestsinterceptor_request_concurrency. Dashboards must be updated.

Highlights

New documentation (#1516)

The documentation has been completely rewritten and now lives at keda.sh/http-add-on. It features versioned docs, improved navigation, a quick start and guides for different personas (developers, cluster operators). The legacy in-repo docs have been removed.

InterceptorRoute CRD (#1532)

A new InterceptorRoute CRD separates routing/interceptor configuration from scaling configuration. HTTPScaledObject remains supported but is now deprecated — a warning is logged per resource to guide migration.

See the user guide and the migration guide for details.

Per-route timeout configuration (#1562)

InterceptorRoute supports per-route timeouts via the timeouts spec with request, responseHeader, and readiness fields. When unset, global env var defaults are used.

Migration helper: orphan-scaledobject annotation (#1593)

The new httpscaledobject.keda.sh/orphan-scaledobject annotation lets you preserve the auto-created ScaledObject when deleting an HTTPScaledObject during migration to InterceptorRoute, avoiding scaling gaps.

What's Changed

  • refactor: simplify responseWriter using Unwrap pattern by @linkvt in #1555
  • feat: implement InterceptorRoute CRD by @linkvt in #1532
  • refactor: extract endpoint resolution into dedicated middleware by @linkvt in #1558
  • chore(deps): update azure/setup-helm action to v5 by @renovate[bot] in #1561
  • chore(deps): update github actions by @renovate[bot] in #1560
  • refactor: move RPS calculation from interceptor to scaler by @Fedosin in #1557
  • refactor: add new e2e test suite by @linkvt in #1545
  • fix: reduce OTEL_METRIC_EXPORT_INTERVAL from 1ms to 5s by @linkvt in #1564
  • fix(deps): update go dependencies (non-major) (patch) by @renovate[bot] in #1566
  • chore(deps): update e2e dependencies by @renovate[bot] in #1565
  • fix(deps): update go dependencies (non-major) by @renovate[bot] in #1568
  • chore(deps): update github actions by @renovate[bot] in #1567
  • refactor: extract test cert generation into a shared helper by @linkvt in #1569
  • fix: resolve semgrep findings by @linkvt in #1570
  • feat: redesign interceptor metrics with bounded labels by @linkvt in #1563
  • chore(deps): update helm release opentelemetry-collector to v0.150.0 by @renovate[bot] in #1574
  • fix(deps): update module go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp to v0.68.0 by @renovate[bot] in #1576
  • chore: switch whoami test image to ghcr.io by @linkvt in #1572
  • feat: implement per-route timeout configuration by @linkvt in #1562
  • chore(deps): update pre-commit hook thlorenz/doctoc to v2.4.1 by @renovate[bot] in #1575
  • chore(deps): bump github.com/moby/spdystream from 0.5.0 to 0.5.1 by @dependabot[bot] in #1579
  • chore: automate kind version updates via Renovate by @linkvt in #1573
  • refactor: set Content-Type in interceptor queue endpoint handler by @linkvt in #1580
  • ci: reduce lychee link checker flakiness by @linkvt in #1582
  • feat: support OTEL_TRACES_SAMPLER and OTEL_TRACES_SAMPLER_ARG settings by @Fedosin in #1577
  • chore(deps): update github actions by @renovate[bot] in #1586
  • fix(deps): update go dependencies (non-major) to v0.34.7 (patch) by @renovate[bot] in #1587
  • refactor/feat(e2e): improve test reliability and add new InterceptorRoute e2e tests by @Fedosin in #1583
  • fix: restrict metrics endpoint to /metrics path by @linkvt in #1591
  • refactor: align metric names with OTel semantic conventions by @linkvt in #1590
  • refactor: nest cold-start fallback service fields under service key by @linkvt in #1588
  • feat: log deprecation warning for HTTPScaledObject by @linkvt in #1595
  • feat: require explicit targetValue in scaling metric specs by @linkvt in #1597
  • refactor: simplify queue count types and fix RPS naming by @linkvt in #1581
  • feat: add orphan-scaledobject annotation for HTTPSO->IR migration by @linkvt in #1593
  • chore: remove kubebuilder scaffolding artifacts by @linkvt in #1598
  • chore: remove legacy in-repo docs in favor of keda.sh by @linkvt in #1594
  • chore: pin ko base image to digest and track with Renovate by @linkvt in #1605
  • chore: prepare release v0.14.0 by @linkvt in #1607

Full Changelog: v0.13.0...v0.14.0

v0.13.0

Choose a tag to compare

@Fedosin Fedosin released this 23 Mar 12:31
32c6628

What's Changed

  • chore: replace Dependabot with Renovate by @linkvt in #1476
  • chore: exclude existing revive var-naming lint issues by @linkvt in #1475
  • chore: remove unused CurrentNamespace from interceptor config by @Fedosin in #1484
  • fix: update roundToNDigits to use Round instead of Floor by @Fedosin in #1483
  • chore(deps): update actions/checkout action to v6 by @renovate[bot] in #1486
  • fix(deps): update module go.opentelemetry.io/otel/sdk to v1.40.0 [security] by @renovate[bot] in #1481
  • fix: replace deprecated release asset upload actions by @linkvt in #1490
  • refactor: replace kelseyhightower/envconfig with caarlos0/env by @linkvt in #1491
  • chore: move renovate config to .github dir by @linkvt in #1480
  • refactor: migrate build system from Docker to ko by @linkvt in #1465
  • refactor: modernize code with go fix by @linkvt in #1494
  • refactor: remove dead code identified by deadcode analysis by @linkvt in #1493
  • chore: remove archived pre-commit-golang hook by @linkvt in #1495
  • perf: add atomic endpoint readiness cache for O(1) hot-path checks by @Fedosin in #1472
  • chore: replace hack/tools.go with go.mod tool directive by @linkvt in #1498
  • ci: use stable Go version in CI workflows by @linkvt in #1499
  • ci: replace keda-tools container with setup-go in CodeQL workflow by @linkvt in #1502
  • chore: enable Renovate kubernetes manager for config/ and examples/ by @linkvt in #1503
  • chore(config): migrate Renovate config by @renovate[bot] in #1504
  • chore(deps): pin dependencies by @renovate[bot] in #1505
  • chore(deps): pin golang docker tag to 8bbd140 by @renovate[bot] in #1506
  • chore(deps): update pre-commit hook thlorenz/doctoc to v2.3.0 by @renovate[bot] in #1510
  • fix(deps): update k8s.io/utils digest to b8788ab by @renovate[bot] in #1508
  • chore(deps): update golang docker tag to v1.26.0 by @renovate[bot] in #1509
  • chore: improve Renovate dependency grouping by @linkvt in #1507
  • chore: remove unused .whitesource configuration by @linkvt in #1513
  • fix: reorder Renovate packageRules so specific groups override catch-all by @linkvt in #1514
  • chore: extend k8s renovate group with more related pkgs by @linkvt in #1515
  • fix(deps): update go dependencies (non-major) by @renovate[bot] in #1511
  • fix: fix flaky and skipped tracing e2e tests by @linkvt in #1517
  • chore: configure renovate post-update options for Go modules by @linkvt in #1518
  • refactor: modernize golangci-lint config and fix issues by @linkvt in #1497
  • perf: replace global queue lock with per-host atomics and eliminate counting goroutines by @Fedosin in #1482
  • fix: resolve golangci-lint v2.11.1 gosec and nolintlint issues by @Fedosin in #1522
  • chore(deps): update github actions by @renovate[bot] in #1524
  • chore(deps): update golang docker tag to v1.26.1 by @renovate[bot] in #1525
  • chore(deps): update docker/login-action action to v4 by @renovate[bot] in #1529
  • fix(deps): update go dependencies (non-major) by @renovate[bot] in #1526
  • fix: remove configurable EndpointSlice informer resync interval by @Fedosin in #1485
  • fix: drop semconv version-pinned import in favor of schemaless resources by @linkvt in #1531
  • refactor(scaler): use WaitGroup.Go for queue pinger goroutines by @Fedosin in #1535
  • docs: replace deprecated targetPendingRequests with scalingMetric in design.md by @Paul-Weaver in #1536
  • chore: track golangci-lint version with renovate by @linkvt in #1537
  • chore: group regex-managed action versions with GitHub Actions updates by @linkvt in #1539
  • chore: provide minimal devcontainer config by @linkvt in #1538
  • chore(config): migrate Renovate config by @renovate[bot] in #1540
  • chore(deps): update github actions by @renovate[bot] in #1542
  • refactor: replace homebrew endpoints cache with controller-runtime cache by @Fedosin in #1533
  • tracing: Remove B3 trace propagation by @AtharvaPakade in #1543
  • feat: add env-based TLS version, cipher suite, and curve configuration by @Fedosin in #1530
  • fix(deps): update module google.golang.org/grpc to v1.79.3 [security] by @renovate[bot] in #1546
  • chore(deps): update github actions by @renovate[bot] in #1553
  • fix(deps): update k8s.io/utils digest to 28399d8 by @renovate[bot] in #1554
  • chore: improve issue templates and add needs-triage label by @linkvt in #1552
  • chore: prepare release v0.13.0 by @Fedosin in #1556

New Contributors

Full Changelog: v0.12.2...v0.13.0

v0.12.2

Choose a tag to compare

@linkvt linkvt released this 19 Feb 13:25
480a415

Upgrade Notes

  • Interceptor health probe endpoints moved to the admin port (9090). No action needed if using the Helm chart. If you use custom external health checks (e.g., GCP HealthCheckPolicy), update them to target port 9090 for /readyz and /livez.

Improvements

  • Interceptor: Increase default connection pool sizes for higher throughput (#1469)

Fixes

  • Interceptor: Fix health probes failing when HTTPScaledObject has no hosts configured (#1447)
  • Interceptor: Rework dial retry to tolerate slow Service IP propagation and add KEDA_HTTP_DIAL_RETRY_TIMEOUT (#1449)
  • Interceptor: Set endpoint informer resync default to 1s to suppress warning (#1455)

Full Changelog: v0.12.1...v0.12.2

v0.12.1

Choose a tag to compare

@linkvt linkvt released this 03 Feb 12:44
c03d9e2

What's Changed

Full Changelog: v0.12.0...v0.12.1

v0.12.0

Choose a tag to compare

@linkvt linkvt released this 29 Jan 09:38
8f2e332

Breaking Changes

HTTPScaledObject CRD must be updated (#1419)

You must update the HTTPScaledObject CRD before upgrading the operator. The .status.conditions field now uses the standard Kubernetes metav1.Condition format.

If you have tooling that parses HTTPScaledObject conditions, update it to expect standard fields (lastTransitionTime, observedGeneration).

This fixes duplicate Ready conditions that caused issues with GitOps tools like ArgoCD and Flux.

Highlights

Wildcard host matching (#1411)

Use wildcard patterns like *.example.com to match any subdomain with a single HTTPScaledObject.

spec:
  hosts:
    - "*.example.com"  # matches foo.example.com, bar.foo.example.com, etc.

HTTP header-based routing (#1289)

Route requests to different backends based on HTTP headers. Multiple HTTPScaledObjects can now match the same host and path with different header requirements.

apiVersion: http.keda.sh/v1alpha1
kind: HTTPScaledObject
spec:
  hosts:
    - api.example.com
  headers:
    - name: X-API-Version
      value: v2
  scaleTargetRef:
    name: api-v2

Performance improvements (#1404)

The interceptor now uses significantly less memory under load, with reduced memory growth over time. Latency is also improved for high-throughput workloads.

Full-duplex HTTP/1.1 support (#1386)

Bidirectional streaming now works correctly - response bodies can start streaming while request bodies are still being sent.

Configurable request logging (#1375)

Request logging in the interceptor is now optional. Disable it to reduce log volume in high-traffic environments.

What's Changed

  • Update ADOPTERS.md for IMVARIA inc. by @dcb-imvaria in #1366
  • interceptor: make request logging optional by @wozniakjan in #1375
  • feat: add environment variables for leader election timing configuration by @nader-ziada in #1365
  • fix broken link to propulsion ai by @wozniakjan in #1381
  • chore: fix devcontainer build by updating deprecated Go tools by @linkvt in #1384
  • ci: use GitHub-hosted ARM64 runners for e2e tests by @linkvt in #1389
  • chore(deps): bump the all-updates group across 1 directory with 5 updates by @dependabot[bot] in #1377
  • chore(deps): bump github.com/expr-lang/expr from 1.17.6 to 1.17.7 by @dependabot[bot] in #1401
  • Improve interceptor performance and allocations by @linkvt in #1404
  • ci: replace stale bot with official GitHub Actions stale action by @linkvt in #1398
  • fix: spaces are allowed in project basepath (#1392) by @khauser in #1393
  • fix: decouple connection retry backoff from TCP dial timeout by @linkvt in #1387
  • fix: consolidate HTTPScaledObject status updates to prevent conflicts by @Fedosin in #1408
  • fix: prevent duplicate conditions by matching on Type instead of Reason by @linkvt in #1395
  • chore(deps): update OpenTelemetry semconv version to v1.37.0 by @jochbru in #1407
  • ci: update e2e test k8s and kind versions by @linkvt in #1413
  • feat: add wildcard host matching for HTTPScaledObject by @linkvt in #1411
  • feat: expose and secure controller-runtime metrics by @khauser in #1369
  • chore: Fix codeowner and add the notification flow by @JorTurFer in #1416
  • refactor: simplify TableMemory and remove dead code by @linkvt in #1412
  • Support full-duplex http1.1 by @jackkleeman in #1386
  • chore(deps): bump the all-updates group across 1 directory with 3 updates by @dependabot[bot] in #1414
  • Bump golang to 1.25.5 + small fixes by @JorTurFer in #1418
  • chore(deps): bump github.com/kedacore/keda/v2 from 2.18.0 to 2.18.3 by @dependabot[bot] in #1406
  • interceptor: support for HTTP header routing by @wozniakjan in #1289
  • refactor(operator)!: migrate to standard metav1.Condition by @linkvt in #1419
  • e2e test: header routing by @wozniakjan in #1420
  • feat: Add FOSSA to monitor licenses by @JorTurFer in #1422
  • chore: update dependencies and remove version pinning by @linkvt in #1424
  • chore(deps): bump actions/checkout from 6.0.1 to 6.0.2 in the all-updates group by @dependabot[bot] in #1426
  • chore: prepare for release 0.12.0 by @linkvt in #1429

New Contributors

Full Changelog: v0.11.1...v0.12.0

v0.11.1

Choose a tag to compare

@wozniakjan wozniakjan released this 20 Oct 14:53
c343977

What's Changed

  • Update Kubernetes compatibility documentation to include v1.33, v1.34, and v0.11.0 release by @Copilot in #1349
  • fix: check endpoint readiness before forwarding by @wozniakjan in #1348
  • chore: update k8s versions by @zroubalik in #1351
  • chore(deps): bump the all-updates group across 1 directory with 5 updates by @dependabot[bot] in #1343
  • ci: bump go to 1.24.7 and fix link checker by @wozniakjan in #1357
  • feat: add environment variable to control X-KEDA-HTTP-Cold-Start response header by @sean-redmond in #1354
  • e2e: deploy zipkin as part of testsuite setup by @wozniakjan in #1358
  • chore: bump deps to k8s 0.33.4 & KEDA core 2.18.0 by @zroubalik in #1353
  • release v0.11.1 prep by @wozniakjan in #1360

New Contributors

Full Changelog: v0.11.0...v0.11.1

v0.11.0

Choose a tag to compare

@wozniakjan wozniakjan released this 18 Sep 12:56
1e7295c

What's Changed

  • chore(deps): bump the all-updates group with 4 updates by @dependabot[bot] in #1263
  • Update ADOPTERS.md by @rd-zahari-aleksiev in #1265
  • chore(deps): bump the all-updates group across 1 directory with 11 updates by @JorTurFer in #1268
  • chore(deps): bump golang.org/x/net from 0.35.0 to 0.36.0 by @dependabot[bot] in #1269
  • chore(deps): bump github.com/expr-lang/expr from 1.16.9 to 1.17.0 by @dependabot[bot] in #1272
  • chore(deps): bump the all-updates group with 2 updates by @dependabot[bot] in #1271
  • chore(deps): bump github.com/prometheus/common from 0.62.0 to 0.63.0 in the all-updates group by @dependabot[bot] in #1270
  • Change path in walkthrough call to match httpscaledobject from example by @GilbertBckr in #1266
  • chore(deps): bump the all-updates group with 3 updates by @dependabot[bot] in #1275
  • e2e tests: use ghcr registry for otel images by @wozniakjan in #1284
  • feat: Add support for tracing for http addon by @bhussain91 in #1021
  • chore: reformat scaler code to match KEDA go style by @zroubalik in #1295
  • chore: get the correct HTTPScaledObject reference in the scaler by @zroubalik in #1296
  • e2e: fix nginx installation via helm by @zroubalik in #1300
  • scaler: allow using HSO and SO with different names by @zroubalik in #1299
  • Add a way to turn off the profiling for all three http add-on components by @jkremser in #1308
  • feat(interceptor): Add possibility to skip tls verification for upstreams by @ilia-medvedev-codefresh in #1307
  • Implement HTTPScaledObject scoped timeout by @AlexPykavy in #1285
  • chore: Bump go version and deps by @JorTurFer in #1305
  • feat: failover route on cold-start time out by @yyewolf in #1280
  • feat(middleware-logging): implement http.Hijacker by @guilhem in #835
  • chore(deps): bump the all-updates group across 1 directory with 6 updates by @dependabot[bot] in #1325
  • migrate from v1.Endpoints to discoveryv1.EndpointSlices by @jkremser in #1298
  • ci: fix semver release trigger by @wozniakjan in #1336

New Contributors

Full Changelog: v0.10.0...v0.11.0

v0.10.0

Choose a tag to compare

@wozniakjan wozniakjan released this 21 Feb 13:15
6fa0b98

What's Changed

New

  • General: Fix infrastructure crashes when deleting ScaledObject while scaling (#1245)
  • General: Fix kubectl active printcolumn (#1211)
  • General: Support InitialCooldownPeriod for HTTPScaledObject #1213

Other

  • Documentation: Correct the service name used in the walkthrough documentation (#1244)
All merged PRs

New Contributors

Full Changelog: v0.9.0...v0.10.0

v0.9.0

Choose a tag to compare

@JorTurFer JorTurFer released this 26 Dec 17:10
317d474

We are happy to release KEDA HTTP Add-on v0.9.0 🎉

Breaking Changes

  • General: Drop support for deprecated field spec.scaleTargetRef.deployment (#1061)

New

  • General: Support portName in HTTPScaledObject service scaleTargetRef (#1174)
  • General: Support setting multiple TLS certs for different domains on the interceptor proxy (#1116)
  • Interceptor: Add support for for AWS ELB healthcheck probe (#1198)

Fixes

  • General: Align the interceptor metrics env var configuration with the OTEL spec (#1031)
  • General: Include trailing 0 window buckets in RPS calculation (#1075)

Other

  • General: Sign images with Cosign (#1062)

New Contributors

Full Changelog: v0.8.0...v0.9.0