Installation
What's Changed
- choir: fix missing markers by @Jooho in https://github.com/kserve/kserve/pull/4793
- fix: update base image for PMML to use eclipse-temurin JDK by @sivanantha321 in https://github.com/kserve/kserve/pull/4794
- add suffix kserve for helm chart of llmisvc by @Jooho in https://github.com/kserve/kserve/pull/4792
- Parallelize blob downloads from azure in storage-initializer by @agoston in https://github.com/kserve/kserve/pull/4709
- Parallelize blob downloads from S3 in storage-initializer by @agoston in https://github.com/kserve/kserve/pull/4714
- chore: bump k8s package versions to v0.34.0 by @murataslan in https://github.com/kserve/kserve/pull/4713
- Prevent path traversal on https.go by @spolti in https://github.com/kserve/kserve/pull/4796
- Refactor existing script to use centralized installation scripts by @Jooho in https://github.com/kserve/kserve/pull/4787
- fix: CI failure caused by deprecated MinIO image by @Jooho in https://github.com/kserve/kserve/pull/4812
- feat: Add a python script to generate quick install script by @Jooho in https://github.com/kserve/kserve/pull/4806
- fix generator to be executable without cloning repo by @Jooho in https://github.com/kserve/kserve/pull/4813
- Fixing LLMISVC CRD Installation Paths by @brettmthompson in https://github.com/kserve/kserve/pull/4811
- feat: Add pathTemplate configuration for inference service routing by @DeepFlame-JR in https://github.com/kserve/kserve/pull/4817
- helmchart: add image pull policy for serving runtimes by @stergem in https://github.com/kserve/kserve/pull/4814
- fix: multiple storage uri volume mount error by @sivanantha321 in https://github.com/kserve/kserve/pull/4822
- Fix Bug in LLMISVC E2E Test Setup by @brettmthompson in https://github.com/kserve/kserve/pull/4841
- fix: Fix various bugs in quickstart scripts by @JonahSussman in https://github.com/kserve/kserve/pull/4832
- Pin starlette to version 0.49.1 to fix CVE-2025-62727 by @hdefazio in https://github.com/kserve/kserve/pull/4846
- fix(llmisvc): adds missing generated clients by @bartoszmajsak in https://github.com/kserve/kserve/pull/4849
- Change security mailing list email address by @terrytangyuan in https://github.com/kserve/kserve/pull/4853
- Allow stopping LLMInferenceService by @pierDipi in https://github.com/kserve/kserve/pull/4839
- Add cjohannsen-cloudera as a reviewer by @terrytangyuan in https://github.com/kserve/kserve/pull/4854
- update go version to 1.25 and kubebuilder version to 1.9.0 by @Jooho in https://github.com/kserve/kserve/pull/4862
- fix: remove cert-manager annotation in inferenceservice crd by @juhyeon-cha in https://github.com/kserve/kserve/pull/4837
- update kserve version and update helm chart name by @Jooho in https://github.com/kserve/kserve/pull/4860
- fix: Address CVE-2025-22872, CVE-2025-47914, CVE-2025-58181 by @sivanantha321 in https://github.com/kserve/kserve/pull/4866
- Add Support For Protocol in S3 Endpoint by @brettmthompson in https://github.com/kserve/kserve/pull/4797
- fix: llmisvc image patch script to use renamed manager yaml file by @sivanantha321 in https://github.com/kserve/kserve/pull/4820
- fix make deploy target in makefile by @Jooho in https://github.com/kserve/kserve/pull/4872
- ci: add manual trigger for helm publish workflow by @sivanantha321 in https://github.com/kserve/kserve/pull/4873
- docs: Update KServe diagram to use the KubeCon NA version by @terrytangyuan in https://github.com/kserve/kserve/pull/4877
- CVE-2024-43598: Update lightgbm version to 4.6.0 by @sivanantha321 in https://github.com/kserve/kserve/pull/4799
- fix: the quick install scripts temporarily. by @Jooho in https://github.com/kserve/kserve/pull/4880
- mock test for ray by @Jooho in https://github.com/kserve/kserve/pull/4885
- fix: synced kserve-helm.sh and kserve-kustomize.sh by @Jooho in https://github.com/kserve/kserve/pull/4891
- fix: update LWS version to 0.7.0 to fix multi-node E2E test failure by @vivekk16 in https://github.com/kserve/kserve/pull/4892
- OCI model storage is not working with multi-node feature by @spolti in https://github.com/kserve/kserve/pull/4889
- Follow up 4787 by @Jooho in https://github.com/kserve/kserve/pull/4810
- Fix CI precommit error by @andyi2it in https://github.com/kserve/kserve/pull/4897
- fix: clear stale router and scheduler conditions on config changes by @vivekk16 in https://github.com/kserve/kserve/pull/4876
- feat: bump up vllm version to 0.11.2 & remove python 3.9 support by @csy1204 in https://github.com/kserve/kserve/pull/4851
- Remove deprecated --disable-log-requests flag for vLLM 0.11 compatibility by @vivekk16 in https://github.com/kserve/kserve/pull/4883
- Improved CA Bundle Management For LLM Inference Services by @brettmthompson in https://github.com/kserve/kserve/pull/4803
- ci: split KServe and Storage publish workflow into separate jobs by @sivanantha321 in https://github.com/kserve/kserve/pull/4801
- chore: Add .gitattributes to mark vendored and generated code by @terrytangyuan in https://github.com/kserve/kserve/pull/4904
- ci: add retry request for e2e tests to reduce transient failures by @sivanantha321 in https://github.com/kserve/kserve/pull/4795
- Address several CVEs by @spolti in https://github.com/kserve/kserve/pull/4912
- fix: make deploy-dev for development env by @Jooho in https://github.com/kserve/kserve/pull/4881
- Add precommit check to sync golangci Go version with go.mod by @Jooho in https://github.com/kserve/kserve/pull/4930
- refactor: replace bash script with Python and improve generate-version by @Jooho in https://github.com/kserve/kserve/pull/4935
- Fix: opentelemetry helm installation script by @Jooho in https://github.com/kserve/kserve/pull/4932
- chore: bump github.com/kedacore/keda/v2 from 2.16.1 to 2.17.3 by @jlost in https://github.com/kserve/kserve/pull/4927
- CVE-2025-66418 - Unbounded number of links in the decompression chain by @spolti in https://github.com/kserve/kserve/pull/4928
- Fix: LLMInferenceService reconciliation for Gateway refs in baseRefs by @vivekk16 in https://github.com/kserve/kserve/pull/4944
- Fix: use correct image tag in LLMISvc E2E workflow by @pierDipi in https://github.com/kserve/kserve/pull/4948
- refactor: deduplicate test configs with helper functions by @Jooho in https://github.com/kserve/kserve/pull/4952
- Fix CVE-2025-68156: Update expr-lang/expr to v1.17.7 by @mholder6 in https://github.com/kserve/kserve/pull/4934
- Separate LocalModelCache webhook from KServe controller. by @Jooho in https://github.com/kserve/kserve/pull/4941
- Bump Gateway API Inference Extension (GIE) to v1.2.0 by @sbekkerm in https://github.com/kserve/kserve/pull/4886
- feat: add automatic modelFormat annotation for InferenceServices by @Jooho in https://github.com/kserve/kserve/pull/4953
- AIOHTTP's HTTP Parser auto_decompress feature is vulnerable to zip bomb by @spolti in https://github.com/kserve/kserve/pull/4939
- ci: PR style check by @sivanantha321 in https://github.com/kserve/kserve/pull/4499
- add openvino model server runtime by @dtrawins in https://github.com/kserve/kserve/pull/4592
- feat: add enqueueOnHttpRouteChange handler by @vivekk16 in https://github.com/kserve/kserve/pull/4955
- feat: add LLMInferenceService CRD webhook + E2E tests by @KillianGolds in https://github.com/kserve/kserve/pull/4967
- fix: watch pod init container status changes by @jlost in https://github.com/kserve/kserve/pull/4910
- ci: centralize image variables by @Jooho in https://github.com/kserve/kserve/pull/4969
- refactor: restructure manifests with component-based by @Jooho in https://github.com/kserve/kserve/pull/4962
- feat: add predictive inference server runtime by @Jooho in https://github.com/kserve/kserve/pull/4954
- feat: add predictiveserver runtime build/publish gitaction by @Jooho in https://github.com/kserve/kserve/pull/4974
- fix: path traversal vulnerability in extractTarFiles by @sivanantha321 in https://github.com/kserve/kserve/pull/4975
- feat: allow llmisvc scheduler config using a CM or inline by @pierDipi in https://github.com/kserve/kserve/pull/4856
- fix: add the (default) zmq port 5557 to scheduler by @pierDipi in https://github.com/kserve/kserve/pull/4964
- feat: add predictiveserver runtime e2e test by @Jooho in https://github.com/kserve/kserve/pull/4973
- fix: use existing serviceAccount when specified by @cyon13 in https://github.com/kserve/kserve/pull/4913
- fix: makefile target 'deploy-dev' by @Jooho in https://github.com/kserve/kserve/pull/4993
- docs: add contributor graph to README by @terrytangyuan in https://github.com/kserve/kserve/pull/4991
- fix: update envoy ai gateway installation script by @Jooho in https://github.com/kserve/kserve/pull/4978
- refactor: interface + factory pattern for reconcilers by @rajatvig in https://github.com/kserve/kserve/pull/4922
- fix: update precise prefix routing example by @pierDipi in https://github.com/kserve/kserve/pull/5004
- feat: llmisvc preserves externally managed replicas by @pierDipi in https://github.com/kserve/kserve/pull/4996
- rm
cleanHeadSvcfrom service reconciler by @cjackal in https://github.com/kserve/kserve/pull/4758 - fix: removed GIE crd from llmisvc kustomzation/Makefile by @Jooho in https://github.com/kserve/kserve/pull/4997
- fix: resolve flaky TestServerTimeout race condition by @jlost in https://github.com/kserve/kserve/pull/5001
- feat: update llmisvc e2e test environment script by @Jooho in https://github.com/kserve/kserve/pull/4999
- refactor: add prefix 'kserve' for llmisvc role by @Jooho in https://github.com/kserve/kserve/pull/4992
- feat: added git download support to storage initializer by @agoston in https://github.com/kserve/kserve/pull/4966
- feat: replace minio with seaweedfs by @Jooho in https://github.com/kserve/kserve/pull/5014
- ci: Add charts/kserve-llmisvc-resources to workflow paths by @terrytangyuan in https://github.com/kserve/kserve/pull/5027
- fix: llmisvc ClusterRoleBinding to point to new ClusterRole by @pierDipi in https://github.com/kserve/kserve/pull/5022
- fix: yq download issue & resolving pseudo-versions by @Jooho in https://github.com/kserve/kserve/pull/5023
- feat(llmisvc): inferencePool auto-migration by @KillianGolds in https://github.com/kserve/kserve/pull/5007
- feat: make LLMInferenceService storageInitializer optional by @cabrinha in https://github.com/kserve/kserve/pull/4970
- fix(build): enforce local yq installation by @bartoszmajsak in https://github.com/kserve/kserve/pull/5046
- fix(build): remove GOPATH dependency from OpenAPI script by @bartoszmajsak in https://github.com/kserve/kserve/pull/5045
- chore: migrate flake to ruff by @moulin-louis in https://github.com/kserve/kserve/pull/4981
- feat(llmisvc): move vLLM args to command field by @KillianGolds in https://github.com/kserve/kserve/pull/5049
- chore(pytest): replaces deprecated get_event_loop by @bartoszmajsak in https://github.com/kserve/kserve/pull/5066
- fix: h11 accepts malformed bodies - CVE-2025-43859 by @sivanantha321 in https://github.com/kserve/kserve/pull/5040
- fix: incl. port 8080 in status.address.url for headless svcs by @jlost in https://github.com/kserve/kserve/pull/4998
- fix: improve storage-initializer error messages by @mwaykole in https://github.com/kserve/kserve/pull/5016
- fix: make Uvicorn event loop configurable by @joshyjoseph in https://github.com/kserve/kserve/pull/4971
- feat(llmisvc): watch pods for init container failures by @jlost in https://github.com/kserve/kserve/pull/5034
- fix: normalize deprec. deploymentMode annos; allow deletion by @jlost in https://github.com/kserve/kserve/pull/5025
- chore: add pierdipi to reviewers by @pierDipi in https://github.com/kserve/kserve/pull/5081
- fix: avoid storage-initializer rollout on operator upgrade by @bartoszmajsak in https://github.com/kserve/kserve/pull/5085
- feat: route only completions through InferencePool by @bartoszmajsak in https://github.com/kserve/kserve/pull/5087
- feat(llmisvc): listener hostname fallback for URL discovery by @bartoszmajsak in https://github.com/kserve/kserve/pull/5079
- fix(llmisvc): allow custom gateway with managed route by @bartoszmajsak in https://github.com/kserve/kserve/pull/5075
- refactor(llmisvc): centralize test namespace management by @bartoszmajsak in https://github.com/kserve/kserve/pull/5077
- fix(llmisvc): readiness logic for multiple ctrl statuses by @bartoszmajsak in https://github.com/kserve/kserve/pull/5055
- test: remove blanket sleeps from E2E test utilities by @bartoszmajsak in https://github.com/kserve/kserve/pull/5071
- fix: broken go tests by @sivanantha321 in https://github.com/kserve/kserve/pull/5091
- fix(build): upgrade golangci-lint to v2.9.0 by @bartoszmajsak in https://github.com/kserve/kserve/pull/5072
- feat: 5024 - Upgrade to Gateway API v1.4.0 by @cjohannsen-cloudera in https://github.com/kserve/kserve/pull/5038
- fix(llmisvc): use server state for Delete owner verification by @bartoszmajsak in https://github.com/kserve/kserve/pull/5088
- chore(scripts): makes script worktree-friendly by @bartoszmajsak in https://github.com/kserve/kserve/pull/5069
- fix(inferenceservice): skip VS if Istio CRD missing by @Siva-Sainath in https://github.com/kserve/kserve/pull/4985
- fix(localmodel): use ObjectOld in node update predicate by @tmvfb in https://github.com/kserve/kserve/pull/5095
- feat(llmisvc): propagate Prometheus annotations to workloads by @bartoszmajsak in https://github.com/kserve/kserve/pull/5086
- chore: change 'owners' to 'project-leads' in OWNERS file by @terrytangyuan in https://github.com/kserve/kserve/pull/5100
- feat: llmisvc supports scaling and HA for scheduler by @pierDipi in https://github.com/kserve/kserve/pull/5032
- feat: faster parallel S3 file downloads by @bluayer in https://github.com/kserve/kserve/pull/5102
- feat(llmisvc): add DNS/IP SAN & renewal to self-signed certs by @bartoszmajsak in https://github.com/kserve/kserve/pull/5099
- feat: inf. log batching, external marshalling support by @cjohannsen-cloudera in https://github.com/kserve/kserve/pull/5061
- feat(llmisvc): add versioned well-known config resolution by @bartoszmajsak in https://github.com/kserve/kserve/pull/5096
- fix(llmisvc): return nil instead of empty InferencePoolSpec by @bartoszmajsak in https://github.com/kserve/kserve/pull/5108
- fix(llmisvc): handle JSON marshal error in ReplaceVariables by @bartoszmajsak in https://github.com/kserve/kserve/pull/5109
- chore: update OWNERS file by @terrytangyuan in https://github.com/kserve/kserve/pull/5112
- fix(llmisvc): restricts GlobalConfig fields for templates by @bartoszmajsak in https://github.com/kserve/kserve/pull/5111
- fix(llmisvc): return error from selectListener on mismatch by @bartoszmajsak in https://github.com/kserve/kserve/pull/5105
- feat: include all required files to installation script by @Jooho in https://github.com/kserve/kserve/pull/5103
- fix: surface failure conditions in InferenceService status by @houshengbo in https://github.com/kserve/kserve/pull/5114
- fix(llmisvc): unblocks certificate renewal by @bartoszmajsak in https://github.com/kserve/kserve/pull/5106
- feat: new env var INFERENCE_SERVICE_NAME by @dkoder20 in https://github.com/kserve/kserve/pull/5013
- fix: skip validation for empty modelcar fields by @bartoszmajsak in https://github.com/kserve/kserve/pull/5083
- fix: add no-cache option for generate-versions-from-gomod.py by @Jooho in https://github.com/kserve/kserve/pull/5123
- fix(llmisvc): preserve SchedulerConfigSpec conversion by @bartoszmajsak in https://github.com/kserve/kserve/pull/5110
- feat(llmisvc): add startupProbe to vLLM containers by @KillianGolds in https://github.com/kserve/kserve/pull/5063
- feat: allow storage init to download only selected files by @pierDipi in https://github.com/kserve/kserve/pull/5119
- feat: add schedulerName field to ServingRuntimePodSpec by @Jooho in https://github.com/kserve/kserve/pull/5073
- fix(isvc): preserve reason/message on true conditions by @Siva-Sainath in https://github.com/kserve/kserve/pull/5129
- ci: add workflow to check if tests are passed before merge by @sivanantha321 in https://github.com/kserve/kserve/pull/5092
- ci: bump k8s & minikube version by @sivanantha321 in https://github.com/kserve/kserve/pull/5125
- feat: make agent container resources configurable by @samuelkim7 in https://github.com/kserve/kserve/pull/5127
- feat: add annotation-based runtime defaults for MLServer by @Jooho in https://github.com/kserve/kserve/pull/5064
- feat: upgrade VLLM open source version to 0.15.1 by @cjohannsen-cloudera in https://github.com/kserve/kserve/pull/5098
- test: harden patch-update E2E tests by @bartoszmajsak in https://github.com/kserve/kserve/pull/5065
- feat: restructure helm charts and the way how to patch by @Jooho in https://github.com/kserve/kserve/pull/5089
- feat(llmisvc): enhance Gateway API URL discovery by @bartoszmajsak in https://github.com/kserve/kserve/pull/5104
- fix: resolve CVE-2026-26007 cryptography subgroup attack by @spolti in https://github.com/kserve/kserve/pull/5151
- feat(llmisvc): enable label/annotation propagation by @khushiiagrawal in https://github.com/kserve/kserve/pull/5009
- fix: generate OpenAPI and Python SDK models for v1alpha2 LLMISVC by @bartoszmajsak in https://github.com/kserve/kserve/pull/5152
- feat(llmisvc): add autoscaling API with WVA support by @vivekk16 in https://github.com/kserve/kserve/pull/5130
- docs: Mention vLLM and llm-d in README by @terrytangyuan in https://github.com/kserve/kserve/pull/5160
- fix: respect user logging config in kserve (#3919) by @KageRyo in https://github.com/kserve/kserve/pull/4687
- fix(llmisvc): change TLS cert mount path to avoid CA bundle conflict by @bartoszmajsak in https://github.com/kserve/kserve/pull/5157
- feat: preserves scheduler config and restart on cert rotation by @bartoszmajsak in https://github.com/kserve/kserve/pull/5084
- test: automatic envtest cleanup and suite alignment by @bartoszmajsak in https://github.com/kserve/kserve/pull/5068
- feat: 5235 update knative-serving to v1.21.1 by @cjohannsen-cloudera in https://github.com/kserve/kserve/pull/5136
- fix: cve-2026-24486: python-multipart arbitrary file write by @spolti in https://github.com/kserve/kserve/pull/5170
- fix: uv dead lock issue between kserve and kserve-storage by @Jooho in https://github.com/kserve/kserve/pull/5176
- fix: update manifests for release by @Jooho in https://github.com/kserve/kserve/pull/5177
- feat: improve KServe release automation and simplify workflow by @Jooho in https://github.com/kserve/kserve/pull/5184
- release: prepare release v0.17.0-rc0 by @Jooho in https://github.com/kserve/kserve/pull/5185
- fix: skip _folder to package helm chart (#5186) by @Jooho in https://github.com/kserve/kserve/pull/5189
- refactor: change kserve chart name to kserve-resources (#5190) by @Jooho in https://github.com/kserve/kserve/pull/5192
New Contributors
- @agoston made their first contribution in https://github.com/kserve/kserve/pull/4709
- @murataslan made their first contribution in https://github.com/kserve/kserve/pull/4713
- @DeepFlame-JR made their first contribution in https://github.com/kserve/kserve/pull/4817
- @stergem made their first contribution in https://github.com/kserve/kserve/pull/4814
- @JonahSussman made their first contribution in https://github.com/kserve/kserve/pull/4832
- @juhyeon-cha made their first contribution in https://github.com/kserve/kserve/pull/4837
- @csy1204 made their first contribution in https://github.com/kserve/kserve/pull/4851
- @jlost made their first contribution in https://github.com/kserve/kserve/pull/4927
- @sbekkerm made their first contribution in https://github.com/kserve/kserve/pull/4886
- @dtrawins made their first contribution in https://github.com/kserve/kserve/pull/4592
- @KillianGolds made their first contribution in https://github.com/kserve/kserve/pull/4967
- @cyon13 made their first contribution in https://github.com/kserve/kserve/pull/4913
- @cjackal made their first contribution in https://github.com/kserve/kserve/pull/4758
- @cabrinha made their first contribution in https://github.com/kserve/kserve/pull/4970
- @moulin-louis made their first contribution in https://github.com/kserve/kserve/pull/4981
- @joshyjoseph made their first contribution in https://github.com/kserve/kserve/pull/4971
- @Siva-Sainath made their first contribution in https://github.com/kserve/kserve/pull/4985
- @bluayer made their first contribution in https://github.com/kserve/kserve/pull/5102
- @dkoder20 made their first contribution in https://github.com/kserve/kserve/pull/5013
- @khushiiagrawal made their first contribution in https://github.com/kserve/kserve/pull/5009
- @KageRyo made their first contribution in https://github.com/kserve/kserve/pull/4687
Full Changelog: https://github.com/kserve/kserve/compare/v0.16.0...v0.17.0