Kazan v0.6.0 Release Notes

Release Date: 2018-02-19 // about 6 years ago
  • ๐Ÿ’ฅ Breaking Changes

    • The module names of most APIs & many models has been changed.
      • APIs module names have changed slightly to have a dot between the group name
        and the version. For example: Kazan.Apis.CoreV1 is now Kazan.Apis.Core.V1.
      • Models that are associated with an API now live inside that APIs module,
        rather than under Kazan.Models. For example Kazan.Models.Api.V1.Container
        now lives under Kazan.Apis.Core.V1.Container
      • Models that are not associated with specific APIs (e.g. Apimachinery models)
        still live under Kazan.Models. However, the capitalization of modules may
        have changed. For example ApiMachinery is now Apimachinery. This is
        mostly for consistencies sake - most module names only have the first letter
        capitalized, so Apimachinery etc. should be no different.
      • Some underlying changes in the names of models in the k8s spec may also have
        ๐Ÿšš caused things to move around.
    • It wasn't public API, but Kazan.Codegen.Models.property_name/1 has been
      โœ‚ removed.

    ๐Ÿ†• New Features

    • โšก๏ธ Updated Kubernetes specs to 1.8 (Thanks @chazsconi).
    • ๐Ÿ”ง Kazan can now load server details from kubeconfig provided in Mix configuration.
    • ๐Ÿ”ง Kazan can now be configured to use in cluster authentication from the Mix
      ๐Ÿ”ง configuration.
    • ๐Ÿ‘ We now support watch requests with Kazan.Watcher. (Thanks @chazsconi)

    ๐Ÿ”„ Changes

    • Switched CHANGELOG to use a format based on Keep a Changelog.
    • ๐Ÿ‘ Better documentation around how to authenticate with kubernetes.
    • ๐Ÿ”„ Changed the way "unknown" models are deserialized from k8s. We now try to
      match the apiVersion and kind fields with the data provided in the
      x-kubernetes-group-version-kind field in the OAI spec. If we're attempting
      to deserialize a model that doesn't hae this present in the spec, things may
      go wrong.
    • ๐Ÿ‘Œ Improved the documentation of API modules.

    ๐Ÿ—„ Deprecations

    • Kazan.Models.oai_name_to_module still supports the older OAI name format,
      ๐Ÿšš but this is now deprecated and will be removed in a future version.
    • ๐Ÿ—„ Kazan.Client has been deprecated in favor of exposing these functions in
      ๐Ÿ‘€ Kazan. See #23 for the justification.

    ๐Ÿ› Bug Fixes

    • API functions that take no arguments will no longer raise
      Protocol.UndefinedError.
    • read_namespaced_pod_log and other calls that return plain text will now
      return that text, rather than attempting & failing to decode JSON. (thanks
      @chazsconi)
    • In cluster authentication using Kazan.Server.in_cluster should now work
      properly. It now reads the correct ca.crt file, and gets server details from
      environment variables, similar to the Go client. (Thanks @mayppong)