Skip to content

Latest commit

 

History

History
213 lines (150 loc) · 17.6 KB

CHANGELOG.md

File metadata and controls

213 lines (150 loc) · 17.6 KB

v12.0.1

  • fix: remove checking headers if not preloaded content is returned from rest api (#123, @tomplus

v12.0.0

  • feat: regenerate client for Kubernetes API Version: 1.16.14 using OpenAPI 4.3.1
  • fix: Removed shlex args mangling (#110, @WoLpH
  • fix: remove redundant close() in Watch class (#119, @tomplus

API Change:

  • Resolve regression in metadata.managedFields handling in update/patch requests submitted by older API clients (#91748, @apelisse) [SIG API Machinery and Testing]
  • Fix bug where sending a status update completely wipes managedFields for some types. (#90033, @apelisse) [SIG API Machinery and Testing]
  • The MutatingWebhookConfiguration and ValidatingWebhookConfiguration APIs have been promoted to admissionregistration.k8s.io/v1:
    • failurePolicy default changed from Ignore to Fail for v1
    • matchPolicy default changed from Exact to Equivalent for v1
    • timeout default changed from 30s to 10s for v1
    • sideEffects default value is removed, and the field made required, and only None and NoneOnDryRun are permitted for v1
    • admissionReviewVersions default value is removed and the field made required for v1 (supported versions for AdmissionReview are v1 and v1beta1)
    • The name field for specified webhooks must be unique for MutatingWebhookConfiguration and ValidatingWebhookConfiguration objects created via admissionregistration.k8s.io/v1
  • The AdmissionReview API sent to and received from admission webhooks has been promoted to admission.k8s.io/v1. Webhooks can specify a preference for receiving v1 AdmissionReview objects with admissionReviewVersions: ["v1","v1beta1"], and must respond with an API object in the same apiVersion they are sent. When webhooks use admission.k8s.io/v1, the following additional validation is performed on their responses:
    • response.patch and response.patchType are not permitted from validating admission webhooks
    • apiVersion: "admission.k8s.io/v1" is required
    • kind: "AdmissionReview" is required
    • response.uid: "<value of request.uid>" is required
    • response.patchType: "JSONPatch" is required (if response.patch is set) (#80231, @liggitt)
  • The CustomResourceDefinition API type is promoted to apiextensions.k8s.io/v1 with the following changes:
    • Use of the new default feature in validation schemas is limited to v1
    • spec.scope is no longer defaulted to Namespaced and must be explicitly specified
    • spec.version is removed in v1; use spec.versions instead
    • spec.validation is removed in v1; use spec.versions[*].schema instead
    • spec.subresources is removed in v1; use spec.versions[*].subresources instead
    • spec.additionalPrinterColumns is removed in v1; use spec.versions[*].additionalPrinterColumns instead
    • spec.conversion.webhookClientConfig is moved to spec.conversion.webhook.clientConfig in v1
    • spec.conversion.conversionReviewVersions is moved to spec.conversion.webhook.conversionReviewVersions in v1
    • spec.versions[*].schema.openAPIV3Schema is now required when creating v1 CustomResourceDefinitions
    • spec.preserveUnknownFields: true is disallowed when creating v1 CustomResourceDefinitions; it must be specified within schema definitions as x-kubernetes-preserve-unknown-fields: true
    • In additionalPrinterColumns items, the JSONPath field was renamed to jsonPath in v1 (fixes kubernetes/kubernetes#66531) The apiextensions.k8s.io/v1beta1 version of CustomResourceDefinition is deprecated and will no longer be served in v1.19. (#79604, @liggitt)
  • The ConversionReview API sent to and received from custom resource CustomResourceDefinition conversion webhooks has been promoted to apiextensions.k8s.io/v1. CustomResourceDefinition conversion webhooks can now indicate they support receiving and responding with ConversionReview API objects in the apiextensions.k8s.io/v1 version by including v1 in the conversionReviewVersions list in their CustomResourceDefinition. Conversion webhooks must respond with a ConversionReview object in the same apiVersion they receive. apiextensions.k8s.io/v1 ConversionReview responses must specify a response.uid that matches the request.uid of the object they were sent. (#81476, @liggitt)
  • Add scheduling support for RuntimeClasses. RuntimeClasses can now specify nodeSelector constraints & tolerations, which are merged into the PodSpec for pods using that RuntimeClass. (#80825, @tallclair)
  • Kubelet should now more reliably report the same primary node IP even if the set of node IPs reported by the CloudProvider changes. (#79391, @danwinship)
  • Omit nil or empty field when calculating container hash value to avoid hash changed. For a new field with a non-nil default value in the container spec, the hash would still get changed. (#57741, @dixudx)
  • Property conditions in apiextensions.v1beta1.CustomResourceDefinitionStatus and apiextensions.v1.CustomResourceDefinitionStatus is now optional instead of required. (#64996, @roycaihw)
  • When the status of a CustomResourceDefinition condition changes, its corresponding lastTransitionTime is now updated. (#69655, @CaoShuFeng)

v11.3.0

v11.2.0

  • feat: regenerate client against openapi-generator v4.3.0 (context-manager and close function for http client instead of using __del__ method) (#99, @jnschaeffer)

v11.1.0

v11.0.0

  • feat: regenerate library using the latest version of openapi-generator (4.3.x) (gen/#146, @tomplus)
  • test: add tests for Python 3.8. (#86, @tomplus)
  • fix: prevent installing aiohttp 4.0 and up for now (#88, @sepulworld)
  • fix: watch.stream stores resource_version for the next call (#89, @tomplus)
  • chore: remove unused path import (#92, @aK0nshin)

API Change:

  • Introduce ExtensionsV1beta1RuntimeClassStrategyOptions and PolicyV1beta1RuntimeClassStrategyOptions. Add RuntimeClass restrictions & defaulting to PodSecurityPolicy kubernetes/kubernetes#73795
  • Introduce V1WindowsSecurityContextOptions. Add Windows specific options in Pod Security Context and Container Security Context kubernetes/kubernetes#77147
  • Split V1beta1Webhook into V1beta1MutatingWebhook and V1beta1ValidatingWebhook kubernetes/kubernetes#78491
  • Introduce parameter allow_watch_bookmarks in list options for requesting watch bookmarks from apiserver. The implementation in apiserver is hidden behind feature gate WatchBookmark (currently in Alpha stage) kubernetes/kubernetes#74074
  • Add V1DeleteOptions parameters (dry_run, grace_period_seconds, orphan_dependents, propagation_policy) to delete collection APIs kubernetes/kubernetes#77843
  • Add ListMeta.RemainingItemCount. When responding a LIST request, if the server has more data available, and if the request does not contain label selectors or field selectors, the server sets the ListOptions.RemainingItemCount to the number of remaining objects kubernetes/kubernetes#75993
  • Add controller_expand_secret_ref in V1SecretReference to store CSI volume expansion secrets kubernetes/kubernetes#77516
  • Introduce preemption_policy field to V1PriorityClass kubernetes/kubernetes#74614
  • Add port configuration to service reference in Admission webhook configuration, AuditSink webhook configuration, CRD Conversion webhook configuration and kube-aggregator kubernetes/kubernetes#74855
  • Introduce inline_volume_spec to V1PersistentVolumeSpec kubernetes/kubernetes#77703
  • Add fields x_kubernetes_embedded_resource, x_kubernetes_int_or_string, x_kubernetes_preserve_unknown_fields to V1beta1JSONSchemaProps kubernetes/kubernetes#77207

v10.0.1

  • fix: when _preload_content=False Websocket Stream returns 401 error (#84, @kexirong)
  • fix: e2e tests use apps/v1 api instead of removed extensions/v1beta1 (#85, @tomplus)

v10.0.0

  • feat: add create_form_yaml() functionality (#76, @PidgeyBE)
  • feat: custom objects can be merged by json-patch (gen/#119, @tomplus)
  • fix: parse microseconds in data-time fields (#80, @tomplus)
  • feat: upgrade to API spec from Kubernetes 1.14 (#83, @tomplus)

API Change:

  • Remove the AdmissionregistrationV1alpha1 API group, containing only the InitializationConfiguration type kubernetes/kubernetes#72972
  • Promote Lease API to v1 kubernetes/kubernetes#72239
  • The Ingress API is now available via NetworkingV1beta1Api. ExtensionsV1beta1Api Ingress objects are deprecated and will no longer be served in Kubernetes v1.18 kubernetes/kubernetes#74057
  • Introduce RuntimeClass to NodeV1alpha1Api and NodeV1beta1Api kubernetes/kubernetes#74433
  • Graduate PriorityClass API to GA SchedulingV1Api kubernetes/kubernetes#73555
  • Introduce CSINodeInfo and CSIDriver to StorageV1beta1Api kubernetes/kubernetes#74283
  • The alpha Initializers feature, admissionregistration.k8s.io/v1alpha1 API version, Initializers admission plugin, and use of the metadata.initializers API field have been removed. Discontinue use of the alpha feature and delete any existing InitializerConfiguration API objects before upgrading. The metadata.initializers field will be removed in a future release. The parameter include_uninitialized has been removed. kubernetes/kubernetes#72972

v9.1.0

  • feat: check whether an object key is present on watch (#71, @mickours)
  • feat: merging kubeconfig files (#69, @tomplus)

v9.0.0

  • feat: switch to openapi-generator (#58, @tomplus)
  • feat: add fieldSelector parameter to list/watch methods in custom objects spec (gen/#106)
  • feat: upgrade to API spec from Kubernetes 1.13 (#58, @tomplus)

Breaking Changes:

  • Model v1beta1WebhookClientConfig is renamed to AdmissionregistrationV1beta1WebhookClientConfig, to avoid naming conflict with ApiextensionsV1beta1WebhookClientConfig introduced in: kubernetes/kubernetes#67006
  • Delete request's body parameter is optional kubernetes/kubernetes#70032

v8.1.0

  • feat: watch improvement (context manager, close method) (#61, @hubo1016)

v8.0.3

  • fix: use yaml.safe_load, yaml.safe_dump for security reasons (#57, @tomplus)

v8.0.2

  • feat: remove dependency to urllib3 from kube_config, pin urlllib>=1.23 due to CVE-2018-20060 (#56, @tomplus)

v8.0.1

  • fix: kubeconfig loading failure when server uri contains trailing slash (#53, @tomplus)
  • feat: regenerate client with thread-pool optimization (#54, @tomplus)

v8.0.0

  • feat: upgrade to API spec from Kubernetes 1.12 (#50, @tomplus)

v7.0.0

  • first stable release 7.0.0

v1.0.0-beta9

  • fix: option verify-ssl impacts on server certs only (#46, @tomplus)

v1.0.0-beta8

  • feat: add debug logs to KubeConfigLoader (#45, @tomplus)
  • feat: exec-plugins support in kubeconfig (#44, @tomplus)
  • fix: read config data with bytes (python3) (#41, @tomplus)

v1.0.0-beta7

v1.0.0-beta6

  • feat: regenerate with latest client gen to get custom object status scale api (#37, @juliantaylor)
  • fix: handling timeout by watch loop (#39, @tomplus)

v1.0.0-beta5

  • feat: upgrade to spec from Kuberentes 1.11 (#34, @tomplus)

v1.0.0-beta4

v1.0.0-beta3

  • feat: watch work forever if timeout is not specified (#30, @tomplus)

v1.0.0-beta2

v1.0.0-beta1

  • feat: make function load_kube_config asynchronous
  • feat: function to auto-refresh gke token
  • feat: remove synchronous libraries from dependencies

v1.0.0-alpha4

  • feat: watch stops the iterator for empty responses and do not process ERROR responses (#22, @olitheolix)
  • feat: replace urllib3 by http.client in e2e initializer (#20, @tomplus)
  • feat: new example - tail.py (#19, @tomplus)
  • feat: new example - simultaneously watch multiple event streams without threads (#13, @olitheolix)
  • fix: fix few typos in setup.py (#18, @evemorgen)
  • fix: requirement for requests and urllib3 version (#16, @tomplus)

v1.0.0-alpha3

  • fix e2e and unit tests
  • fix Watch, Stream

v1.0.0-alpha2

  • fix requirements.txt

v1.0.0-alpha1

  • first release