v1.20.1
Changes by Kind
Enhancement
- Func build and func deploy commands now provide clearer error messages when registry is missing, with actionable guidance instead of confusing prompts. (#3058, @RayyanSeliya)
- Func build and func deploy commands now provide clearer, more educational error messages when the --platform flag is used without the S2I builder, with actionable guidance and builder capability explanations. (#3062, @RayyanSeliya)
- Func build and func deploy commands now validate conflicting --image and --registry flags before starting the build process, providing clear error messages and actionable guidance instead of misleading build failures. (#3066, @RayyanSeliya)
- Improve error message when
--languageflag is missing infunc create
to be more beginner-friendly, include example usage, and point tofunc languages. (#3016, @RayyanSeliya) - Improve error message when
func invokeis run outside function directory
to be more beginner-friendly, include step-by-step workflow guidance. (#3018, @RayyanSeliya) - Improve error message when
func runis run outside function directory
to be more beginner-friendly, include step-by-step workflow guidance, and
explain that func run is used for local testing. (#3022, @RayyanSeliya) - Improve error message when
func subscribeis run outside function directory
to be more beginner-friendly and provide clear guidance on creating functions
before subscribing to events. (#3025, @RayyanSeliya) - Improve error messages for
func listcommand to be more beginner-friendly.
Connection errors now include workflow guidance, prerequisites, troubleshooting
steps, and links to official Knative installation documentation. (#3038, @RayyanSeliya) - Improve func delete user experience by replacing cryptic "name required" error with clear guidance on how to delete functions using name or path options. (#3054, @RayyanSeliya)
- Improve func deploy user experience by showing clear error guidance immediately when run outside a function directory, instead of prompting for registry configuration first. (#3042, @RayyanSeliya)
Bug or Regression
- Enhanced builder/container flag handling: pack/s2i builders now default to container mode, --container=false automatically selects host builder, with validation for incompatible combinations. (#2966, @RayyanSeliya)
- Fix: Python pack build/run doesn't pick up code changes (#3079) (#3080, @matejvasek)
- Fix: fallback to python3 if python not present (#3082, @matejvasek)
- Fix: host builder can push images to cluster internal registries (#3130, @matejvasek)
- Fix: host builder uses base-image with correct version of Python (#2965, @matejvasek)
Other (Cleanup or Flake)
- Remove the --container flag - builds are determined via builder itself for func run command (#2987, @gauron99)
Uncategorized
-
Release Note (#2953, @RayyanSeliya)
- $ func deploy --remote --builder=pack --registry=registry.default.svc.cluster.local:5000/func -v
Error: cannot upload sources to the PVC: cannot start the pod: pod prematurely exited (output: "ERROR: cannot purge dest dir: unlinkat
/tmp/volume_mnt/source/.s2i/bin/assemble: permission denied\n", exitcode: 1)
e2e_test.go:1249: exit status 1 (#2946, @lkingland) - Fix: backward compatibility for building old Python Functions with newer func (#2962, @matejvasek)
Dependencies
Added
- al.essio.dev/pkg/shellescape: v1.6.0
- buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go: 52f3232
- buf.build/go/protovalidate: v0.14.0
- buf.build/go/protoyaml: v0.6.0
- cloud.google.com/go/monitoring: v1.24.2
- github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric: v0.51.0
- github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping: v0.51.0
- github.com/MakeNowJust/heredoc/v2: v2.0.1
- github.com/containerd/accelerated-container-image: v1.2.3
- github.com/containerd/containerd/v2: v2.1.1
- github.com/containerd/errdefs/pkg: v0.3.0
- github.com/containerd/fuse-overlayfs-snapshotter/v2: v2.1.1
- github.com/containerd/plugin: v1.0.0
- github.com/keybase/go-keychain: v0.0.1
- github.com/moby/go-archive: v0.1.0
- github.com/moby/sys/atomicwriter: v0.1.0
- github.com/moby/sys/capability: v0.4.0
- github.com/moby/sys/reexec: v0.1.0
- github.com/opencontainers/runtime-tools: 2e043c6
- github.com/otiai10/mint: v1.6.3
- github.com/petermattis/goid: 4fcff4a
- github.com/prometheus/otlptranslator: v1.0.0
- github.com/santhosh-tekuri/jsonschema/v5: v5.3.1
- github.com/santhosh-tekuri/jsonschema/v6: v6.0.1
- github.com/sasha-s/go-deadlock: v0.3.5
- github.com/sigstore/protobuf-specs: v0.4.1
- github.com/smallstep/pkcs7: v0.1.1
- github.com/tonistiigi/dchapes-mode: 73d941a
- github.com/zalando/go-keyring: v0.2.6
- golang.org/x/tools/go/expect: v0.1.1-deprecated
- gonum.org/v1/gonum: v0.16.0
- tags.cncf.io/container-device-interface/specs-go: v1.0.0
- tags.cncf.io/container-device-interface: v1.0.1
Changed
- cel.dev/expr: v0.23.0 → v0.24.0
- cloud.google.com/go/auth/oauth2adapt: v0.2.5 → v0.2.8
- cloud.google.com/go/auth: v0.10.0 → v0.16.1
- cloud.google.com/go/compute/metadata: v0.6.0 → v0.7.0
- cloud.google.com/go/iam: v1.1.8 → v1.5.2
- cloud.google.com/go/storage: v1.42.0 → v1.54.0
- cloud.google.com/go: v0.116.0 → v0.121.1
- github.com/AdaLogics/go-fuzz-headers: ced1acd → e8a1dd7
- github.com/AdamKorcz/go-118-fuzz-build: 8075edf → 2b5cbb2
- github.com/Azure/azure-sdk-for-go/sdk/azcore: v1.14.0 → v1.18.0
- github.com/Azure/azure-sdk-for-go/sdk/azidentity: v1.7.0 → v1.8.0
- github.com/Azure/azure-sdk-for-go/sdk/internal: v1.10.0 → v1.11.1
- github.com/Azure/azure-sdk-for-go/sdk/storage/azblob: v1.3.2 → v1.6.1
- github.com/Azure/go-ansiterm: 306776e → faa5f7b
- github.com/AzureAD/microsoft-authentication-library-for-go: v1.2.2 → v1.3.2
- github.com/BurntSushi/toml: v1.4.0 → v1.5.0
- github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp: v1.27.0 → v1.29.0
- github.com/GoogleContainerTools/kaniko: v1.23.2 → v1.24.0
- github.com/Microsoft/cosesign1go: v1.2.0 → v1.4.0
- github.com/Microsoft/hcsshim: v0.12.7 → v0.13.0
- github.com/ProtonMail/go-crypto: v1.1.3 → v1.2.0
- github.com/agnivade/levenshtein: v1.1.1 → v1.2.0
- github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream: v1.6.3 → v1.6.10
- github.com/aws/aws-sdk-go-v2/config: v1.29.6 → v1.29.14
- github.com/aws/aws-sdk-go-v2/credentials: v1.17.59 → v1.17.67
- github.com/aws/aws-sdk-go-v2/feature/ec2/imds: v1.16.28 → v1.16.30
- github.com/aws/aws-sdk-go-v2/feature/s3/manager: v1.17.5 → v1.17.75
- github.com/aws/aws-sdk-go-v2/internal/configsources: v1.3.32 → v1.3.34
- github.com/aws/aws-sdk-go-v2/internal/endpoints/v2: v2.6.32 → v2.6.34
- github.com/aws/aws-sdk-go-v2/internal/ini: v1.8.2 → v1.8.3
- github.com/aws/aws-sdk-go-v2/internal/v4a: v1.3.13 → v1.3.34
- github.com/aws/aws-sdk-go-v2/service/ecr: v1.40.3 → v1.44.0
- github.com/aws/aws-sdk-go-v2/service/ecrpublic: v1.31.2 → v1.33.0
- github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding: v1.12.2 → v1.12.3
- github.com/aws/aws-sdk-go-v2/service/internal/checksum: v1.3.15 → v1.7.1
- github.com/aws/aws-sdk-go-v2/service/internal/presigned-url: v1.12.13 → v1.12.15
- github.com/aws/aws-sdk-go-v2/service/internal/s3shared: v1.17.13 → v1.18.15
- github.com/aws/aws-sdk-go-v2/service/s3: v1.58.0 → v1.79.3
- github.com/aws/aws-sdk-go-v2/service/sso: v1.24.15 → v1.25.3
- github.com/aws/aws-sdk-go-v2/service/ssooidc: v1.28.14 → v1.30.1
- github.com/aws/aws-sdk-go-v2/service/sts: v1.33.14 → v1.33.19
- github.com/aws/aws-sdk-go-v2: v1.36.1 → v1.36.3
- github.com/aws/smithy-go: v1.22.2 → v1.22.3
- github.com/awslabs/amazon-ecr-credential-helper/ecr-login: d2398ba → v0.9.1
- github.com/buildpacks/imgutil: 186f89b → 7c19c27
- github.com/buildpacks/lifecycle: v0.20.4 → v0.20.11
- github.com/buildpacks/pack: v0.36.4 → v0.38.2
- github.com/cenkalti/backoff/v5: v5.0.2 → v5.0.3
- github.com/cilium/ebpf: v0.11.0 → v0.16.0
- github.com/cloudflare/circl: v1.3.7 → v1.6.1
- github.com/cncf/xds/go: ae57f3c → 2ac532f
- github.com/containerd/cgroups/v3: v3.0.3 → v3.0.5
- github.com/containerd/containerd/api: v1.7.19 → v1.9.0
- github.com/containerd/containerd: v1.7.23 → v1.7.27
- github.com/containerd/continuity: v0.4.3 → v0.4.5
- github.com/containerd/errdefs: v0.3.0 → v1.0.0
- github.com/containerd/go-cni: v1.1.10 → v1.1.12
- github.com/containerd/nydus-snapshotter: v0.14.0 → v0.15.0
- github.com/containerd/platforms: v0.2.1 → v1.0.0-rc.1
- github.com/containerd/stargz-snapshotter: v0.15.1 → v0.16.3
- github.com/containerd/ttrpc: v1.2.5 → v1.2.7
- github.com/containerd/typeurl/v2: v2.2.0 → v2.2.3
- github.com/containernetworking/cni: v1.2.2 → v1.2.3
- github.com/containernetworking/plugins: v1.4.0 → v1.5.1
- github.com/containers/image/v5: v5.31.1 → v5.35.0
- github.com/containers/ocicrypt: v1.2.0 → v1.2.1
- github.com/containers/storage: v1.54.0 → v1.58.0
- github.com/coreos/go-oidc/v3: v3.10.0 → v3.13.0
- github.com/cpuguy83/go-md2man/v2: v2.0.6 → v2.0.7
- github.com/cyberphone/json-canonicalization: ba74d44 → 19d51d7
- github.com/cyphar/filepath-securejoin: v0.3.6 → v0.4.1
- github.com/danieljoos/wincred: v1.2.1 → v1.2.3
- github.com/docker/cli: v27.5.1+incompatible → v28.3.0+incompatible
- github.com/docker/docker-credential-helpers: v0.8.2 → v0.9.3
- github.com/docker/docker: v27.5.0+incompatible → v28.3.0+incompatible
- github.com/docker/go-events: e31b211 → c867878
- github.com/elazarl/goproxy: v1.2.3 → v1.7.2
- github.com/fsnotify/fsnotify: v1.7.0 → v1.9.0
- github.com/gdamore/tcell/v2: v2.8.0 → v2.8.1
- github.com/go-git/go-billy/v5: v5.6.1 → v5.6.2
- github.com/go-git/go-git/v5: v5.13.1 → v5.16.2
- github.com/go-imports-organizer/goio: v1.3.3 → v1.5.0
- github.com/go-jose/go-jose/v4: v4.0.5 → v4.1.1
- github.com/go-openapi/errors: v0.22.0 → v0.22.1
- github.com/go-viper/mapstructure/v2: v2.2.1 → v2.3.0
- github.com/golang-jwt/jwt/v5: v5.2.1 → v5.2.2
- github.com/golang/glog: v1.2.4 → v1.2.5
- github.com/golang/groupcache: 41bb18b → 2c02b82
- github.com/google/cel-go: v0.23.2 → v0.26.1
- github.com/google/go-containerregistry: v0.20.3 → v0.20.6
- github.com/google/s2a-go: v0.1.8 → v0.1.9
- github.com/google/slowjam: v1.1.1 → v1.1.2
- github.com/googleapis/enterprise-certificate-proxy: v0.3.4 → v0.3.6
- github.com/googleapis/gax-go/v2: v2.13.0 → v2.14.2
- github.com/grpc-ecosystem/grpc-gateway/v2: v2.27.1 → v2.27.2
- github.com/hanwen/go-fuse/v2: v2.4.0 → v2.6.3
- github.com/hashicorp/go-memdb: v1.3.4 → v1.3.5
- github.com/hashicorp/go-retryablehttp: v0.7.7 → v0.7.8
- github.com/letsencrypt/boulder: 000cd05 → de9c061
- github.com/mattn/go-sqlite3: v1.14.22 → v1.14.27
- github.com/minio/highwayhash: v1.0.2 → v1.0.3
- github.com/moby/buildkit: v0.16.0 → v0.22.0
- github.com/moby/swarmkit/v2: f082dd7 → 8c19597
- github.com/moby/sys/mount: v0.3.3 → v0.3.4
- github.com/moby/sys/sequential: v0.5.0 → v0.6.0
- github.com/moby/sys/symlink: v0.2.0 → v0.3.0
- github.com/moby/sys/user: v0.3.0 → v0.4.0
- github.com/moby/term: v0.5.0 → v0.5.2
- github.com/onsi/ginkgo/v2: v2.22.1 → v2.23.3
- github.com/onsi/gomega: v1.36.2 → v1.37.0
- github.com/open-policy-agent/opa: v0.68.0 → v0.70.0
- github.com/opencontainers/image-spec: v1.1.0 → v1.1.1
- github.com/opencontainers/runc: v1.1.14 → v1.2.3
- github.com/opencontainers/runtime-spec: v1.2.0 → v1.2.1
- github.com/opencontainers/selinux: v1.11.0 → v1.12.0
- github.com/openshift/source-to-image: v1.5.0 → v1.6.0
- github.com/otiai10/copy: v1.14.0 → v1.14.1
- github.com/package-url/packageurl-go: 8907843 → v0.1.1
- github.com/pelletier/go-toml/v2: v2.2.1 → v2.2.4
- github.com/pjbgf/sha1cd: v0.3.0 → v0.3.2
- github.com/proglottis/gpgme: v0.1.3 → v0.1.4
- github.com/prometheus/client_golang: v1.22.0 → v1.23.2
- github.com/prometheus/common: v0.65.0 → v0.66.1
- github.com/prometheus/procfs: v0.16.1 → v0.17.0
- github.com/rogpeppe/go-internal: v1.13.1 → v1.14.1
- github.com/sebdah/goldie/v2: v2.5.3 → v2.5.5
- github.com/secure-systems-lab/go-securesystemslib: v0.8.0 → v0.9.0
- github.com/sigstore/fulcio: v1.4.5 → v1.6.6
- github.com/sigstore/rekor: v1.3.6 → v1.3.10
- github.com/sigstore/sigstore: v1.8.4 → v1.9.3
- github.com/skeema/knownhosts: v1.3.0 → v1.3.1
- github.com/spf13/afero: v1.11.0 → v1.14.0
- github.com/spf13/cobra: v1.8.1 → v1.9.1
- github.com/spf13/pflag: v1.0.6 → v1.0.10
- github.com/stefanberger/go-pkcs11uri: 78d3cae → 7828495
- github.com/stoewer/go-strcase: v1.3.0 → v1.3.1
- github.com/stretchr/testify: v1.10.0 → v1.11.1
- github.com/sylabs/sif/v2: v2.18.0 → v2.21.1
- github.com/tchap/go-patricia/v2: v2.3.1 → v2.3.2
- github.com/tonistiigi/fsutil: 91a3fc4 → 3f76f81
- github.com/tonistiigi/go-actions-cache: 58651d5 → 3e9a664
- github.com/tonistiigi/go-csvvalue: ddb21b7 → 030d3b2
- github.com/urfave/cli: v1.22.15 → v1.22.16
- github.com/vbatts/tar-split: v0.11.6 → v0.12.1
- github.com/vbauerster/mpb/v8: v8.7.3 → v8.9.3
- github.com/vishvananda/netlink: v1.3.0 → 084abd9
- github.com/vishvananda/netns: v0.0.4 → v0.0.5
- gitlab.com/gitlab-org/api/client-go: v0.116.0 → v0.150.0
- go.etcd.io/bbolt: v1.3.11 → v1.4.0
- go.opentelemetry.io/contrib/detectors/gcp: v1.35.0 → v1.36.0
- go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc: v0.58.0 → v0.60.0
- go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace: v0.46.1 → v0.56.0
- go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp: v0.62.0 → v0.63.0
- go.opentelemetry.io/contrib/instrumentation/runtime: v0.62.0 → v0.63.0
- go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc: v1.37.0 → v1.38.0
- go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp: v1.37.0 → v1.38.0
- go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc: v1.37.0 → v1.38.0
- go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp: v1.37.0 → v1.38.0
- go.opentelemetry.io/otel/exporters/otlp/otlptrace: v1.37.0 → v1.38.0
- go.opentelemetry.io/otel/exporters/prometheus: v0.59.0 → v0.60.0
- go.opentelemetry.io/otel/exporters/stdout/stdouttrace: v1.37.0 → v1.38.0
- go.opentelemetry.io/otel/metric: v1.37.0 → v1.38.0
- go.opentelemetry.io/otel/sdk/metric: v1.37.0 → v1.38.0
- go.opentelemetry.io/otel/sdk: v1.37.0 → v1.38.0
- go.opentelemetry.io/otel/trace: v1.37.0 → v1.38.0
- go.opentelemetry.io/otel: v1.37.0 → v1.38.0
- go.opentelemetry.io/proto/otlp: v1.7.0 → v1.7.1
- go.uber.org/mock: v0.4.0 → v0.6.0
- go.yaml.in/yaml/v3: v3.0.3 → v3.0.4
- golang.org/x/crypto: v0.39.0 → v0.43.0
- golang.org/x/exp: 939b2ce → 7e4ce0a
- golang.org/x/mod: v0.25.0 → v0.29.0
- golang.org/x/net: v0.41.0 → v0.46.0
- golang.org/x/sync: v0.15.0 → v0.17.0
- golang.org/x/sys: v0.33.0 → v0.37.0
- golang.org/x/term: v0.32.0 → v0.36.0
- golang.org/x/text: v0.26.0 → v0.30.0
- golang.org/x/tools: v0.34.0 → v0.38.0
- google.golang.org/api: v0.204.0 → v0.233.0
- google.golang.org/genproto/googleapis/api: 513f239 → c5933d9
- google.golang.org/genproto/googleapis/bytestream: 324edc3 → f936aa4
- google.golang.org/genproto/googleapis/rpc: 513f239 → c5933d9
- google.golang.org/genproto: 324edc3 → 55703ea
- google.golang.org/grpc: v1.73.0 → v1.75.0
- google.golang.org/protobuf: v1.36.6 → v1.36.10
- gotest.tools/v3: v3.5.1 → v3.5.2
- k8s.io/api: v0.33.1 → v0.33.5
- k8s.io/apiextensions-apiserver: v0.33.1 → v0.33.5
- k8s.io/apimachinery: v0.33.1 → v0.33.5
- k8s.io/apiserver: v0.33.1 → v0.33.5
- k8s.io/client-go: v0.33.1 → v0.33.5
- k8s.io/code-generator: v0.33.1 → v0.33.5
- k8s.io/component-base: v0.33.1 → v0.33.5
- k8s.io/kms: v0.33.1 → v0.33.5
- kernel.org/pub/linux/libs/security/libcap/cap: v1.2.70 → v1.2.73
- kernel.org/pub/linux/libs/security/libcap/psx: v1.2.70 → v1.2.73
- knative.dev/caching: fd36b19 → 09d3ca0
- knative.dev/client/pkg: fcc5f74 → b66b3da
- knative.dev/eventing: v0.46.0 → v0.47.0
- knative.dev/hack/schema: 70d4b00 → 4fae780
- knative.dev/hack: 70d4b00 → 4fae780
- knative.dev/networking: edb1a4a → 0bde191
- knative.dev/reconciler-test: 806fb6a → 2187daa
- knative.dev/serving: v0.46.0 → v0.47.0
- sigs.k8s.io/yaml: v1.5.0 → v1.6.0
Removed
- github.com/containerd/cgroups: v1.1.0
- github.com/containerd/fuse-overlayfs-snapshotter: v1.0.8
- github.com/gogo/googleapis: v1.4.1
- github.com/googleapis/google-cloud-go-testing: 1c9a4c6
- github.com/kr/fs: v0.1.0
- github.com/mmcloughlin/avo: v0.5.0
- github.com/pkg/sftp: v1.13.6
- go.mozilla.org/pkcs7: 33d0574