# Kong 2.0.0rc2 released!

**URL:** <https://discuss.konghq.com/t/kong-2-0-0rc2-released/5294>\
**Category:** General\
**Tags:** service-mesh, kong-gateway\
**Created:** [January 13, 2020, 4:43pm UTC](https://discuss.konghq.com/t/kong-2-0-0rc2-released/5294 "2020-01-13T16:43:54Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![hisham](https://yyz2.discourse-cdn.com/flex036/user_avatar/discuss.konghq.com/hisham/32/14_2.png) [@hisham](https://discuss.konghq.com/u/hisham)\
**Post date:** [January 13, 2020, 4:43pm UTC](https://discuss.konghq.com/t/kong-2-0-0rc2-released/5294/1 "2020-01-13T16:43:54Z")

</div>

Hi there, Kong Nation!

🎆 Happy new year! We’re happy to share with you the second release candidate for our next major release, **Kong 2.0.0rc2**!

Kong 2.0 major new features such as **Hybrid mode** , **Go language support for plugins** and **buffered proxying** , and much more. Kong 2.0 also removes the deprecated service mesh functionality, which was been retired in favor of [Kuma](https://kuma.io), as Kong continues to focus on its core gateway capabilities.

Kong 2.0.0rc2 release also includes bug fixes added since rc1, including all fixes bundled in Kong 1.4.3.

## Download

📦 [Download Kong 2.0.0rc2](https://bintray.com/kong) today — as always we are looking forward to your feedback!

For more details about the updated installation, please visit the official docs: [https://konghq.com/install](https://konghq.com/install/).

* * *

## What’s new since 2.0.0rc1

- Usability fixes for Go support:
  - Kong manages the lifecycle of the Go language plugin server by itself [#5366](https://github.com/Kong/kong/pull/5366)
  - godoc documentation for Go PDK [go-pdk#18](https://github.com/Kong/go-pdk/pull/18)

- Fixes for use of TLS connections in stream mode [#5346](https://github.com/Kong/kong/pull/5346)
- Improvements to the Nginx injections system [#5390](https://github.com/Kong/kong/pull/5390)
- Plus all fixes from [Kong 1.4.3](https://discuss.konghq.com/t/announcing-security-bugfix-releases-kong-1-2-3-1-3-1-and-1-4-3/5289)

## And a recap of what’s coming in Kong 2.0 🎆

- 🚀 **Major new features**
  - 🎆 **Hybrid mode** for management of control-plane and data-plane nodes. This allows running control-plane nodes using a database and have them deliver configuration updates to DB-less data-plane nodes. [#5294](https://github.com/Kong/kong/pull/5294)
  - 🎆 **Buffered proxying** - plugins can now request buffered reading of the service response (as opposed to the streaming default), allowing them to modify headers based on the contents of the body [#5234](https://github.com/Kong/kong/pull/5234)
  - 🎆 **Go plugin support** - plugins can now be written in Go as well as Lua, through the use of an out-of-process Go plugin server. [#5326](https://github.com/Kong/kong/pull/5326)

- 🦍 **Core**
  - New property `path_handling` for managing construction of paths in Routes, including two different algorithms: `v0` (the new default, same algorithm as Kong 0.x), and `v1` (algorithm used in Kong 1.x, maintained for compatibility). Migrations automatically detect which version you are migrating from and adjust the algorithm in your routes accordingly. [#5360](https://github.com/Kong/kong/pull/5360)
  - The `transformations` in DAO schemas now also support `on_read`, allowing for two-way (read/write) data transformations between Admin API input/output and database storage. [#5100](https://github.com/Kong/kong/pull/5100)
  - Added `threshold` attribute for health checks [#5206](https://github.com/Kong/kong/pull/5206)
  - Caches for core entities and plugin-controlled entities (such as credentials, etc.) are now separated, protecting the core entities from cache eviction caused by plugin behavior. [#5114](https://github.com/Kong/kong/pull/5114)
  - Cipher suite was updated to the Mozilla v5 release. [#5342](https://github.com/Kong/kong/pull/5342)
  - Better support for using already existing Cassandra keyspaces when migrating  
[#5361](https://github.com/Kong/kong/pull/5361)
  - Better log messages when plugin modules fail to load [#5357](https://github.com/Kong/kong/pull/5357)

- 💻 **CLI**
  - `kong config init` now accepts a filename argument [#4451](https://github.com/Kong/kong/pull/4451)

- 📁 **Configuration**
  - Enable `reuseport` option in the listen directive by default and allow specifying both `reuseport` and `backlog=N` in the listener flags. [#5332](https://github.com/Kong/kong/pull/5332)
  - Check existence of `lua_ssl_trusted_certificate` at startup [#5345](https://github.com/Kong/kong/pull/5345)

- ⚙ **Admin API**
  - Added `/upstreams/<id>/health?balancer_health=1` attribute for detailed information about balancer health based on health threshold configuration [#5206](https://github.com/Kong/kong/pull/5206)

- 👷‍♂️ **PDK**
  - New functions `kong.service.request.enable_buffering`, `kong.service.response.get_raw_body` and `kong.service.response.get_body` for use with buffered proxying [#5315](https://github.com/Kong/kong/pull/5315)

- 🔌 Plugins
  - 🎆 **New plugin: ACME** - Let’s Encrypt and ACMEv2 integration with Kong! [#5333](https://github.com/Kong/kong/pull/5333)
  - 🎆 aws-lambda: bumped version to 3.0.1, with a number of new features! [#5083](https://github.com/Kong/kong/pull/5083)
  - 🎆 prometheus: bumped to version 0.7.0 including major performance improvements [#5295](https://github.com/Kong/kong/pull/5295)
  - zipkin: bumped to version 0.2.1 [#5239](https://github.com/Kong/kong/pull/5239)
  - session: bumped to version 2.2.0, adding `authenticated_groups` support [#5108](https://github.com/Kong/kong/pull/5108)
  - rate-limiting: added experimental support for standardized headers based on the ongoing [RFC draft](https://tools.ietf.org/html/draft-polli-ratelimit-headers-01)[#5335](https://github.com/Kong/kong/pull/5335)
  - rate-limiting: added Retry-After header on HTTP 429 responses [#5329](https://github.com/Kong/kong/pull/5329)
  - datadog: report metrics with tags – Thanks [mvanholsteijn](https://github.com/mvanholsteijn) for the patch! [#5154](https://github.com/Kong/kong/pull/5154)
  - request-size-limiting: added `size_unit` configuration option. [#5214](https://github.com/Kong/kong/pull/5214)
  - request-termination: add extra check for `conf.message` before sending response back with body object included. [#5202](https://github.com/Kong/kong/pull/5202)
  - jwt: add `X-Credential-Identifier` header in response – Thanks [davinwang](https://github.com/davinwang) for the patch! [#4993](https://github.com/Kong/kong/pull/4993)

- 🩹 **Fixes**
  - Correct detection of update upon deleting Targets – Thanks [pyrl247](https://github.com/pyrl247) for the patch!
  - Fix declarative config loading of entities with abstract records [#5343](https://github.com/Kong/kong/pull/5343)
  - Fixed behavior of PUT for `/certificates`[#5321](https://github.com/Kong/kong/pull/5321)
  - Corrected the behavior when overwriting a Service configuration using the `url` shorthand [#5315](https://github.com/Kong/kong/pull/5315)
  - acl: Fixed error when retrieving ACL by group when consumers share the same group [#5322](https://github.com/Kong/kong/pull/5322)

- ⚠ **Removed Service Mesh support** - That has been deprecated in Kong 1.4 and made off-by-default already, and the code is now be gone in 2.0. For Service Mesh, we now have [Kuma](https://kuma.io), which is something designed for Mesh patterns from day one, so we feel at peace with removing Kong’s native Service Mesh functionality and focus on its core capabilities as a gateway.
  - As part of service mesh removal, serviceless proxying was removed. You can still set `service = null` when creating a route for use with serverless plugins such as `aws-lambda`, or `request-termination`. [#5353](https://github.com/Kong/kong/pull/5353)
  - Removed the `origins` property which was used for service mesh. [#5351](https://github.com/Kong/kong/pull/5351)
  - Removed the `transparent` property which was used for service mesh. [#5350](https://github.com/Kong/kong/pull/5350)
  - Removed the Sidecar Injector plugin which was used for service mesh. [#5199](https://github.com/Kong/kong/pull/5199)

* * *

## Quick start for new features

**Hybrid mode:** to get started, please check out this preview of our upcoming [documentation](https://deploy-preview-1670--kongdocs.netlify.com/2.0.x/hybrid-mode/) for the feature. It guides you step-by-step for using Kong nodes with separate Control Plane and Data Plane roles and have the Control Plane nodes manage the Kong datastore and update the DB-less Data Plane nodes.

**Go language support:** for Go plugin support, here’s a preview of our upcoming [documentation](https://github.com/Kong/docs.konghq.com/pull/1707) for the feature as we are working on it. You can also refer to the [Go PDK reference documentation](https://godoc.org/github.com/Kong/go-pdk), as well as check out some of our [sample plugins](https://github.com/kong/go-plugins) and the [go-pluginserver](https://github.com/kong/go-pluginserver) repositories. Note that when using Kong’s binary packages for 2.0.0rc2, Go plugins need to be built with Go 1.13. We’re looking into ways to loosen this restriction if possible. Stay tuned!

* * *

🗒 Here’s a link to the [2.0.0rc2 Changelog](https://github.com/Kong/kong/blob/2.0.0rc2/CHANGELOG.md#200rc2).

🐋 Updated Docker images should be live soon on [Docker Hub](https://hub.docker.com/_/kong).

⬆ The recommended upgrade path is the usual one, and is detailed in the [2.0 Upgrade Path](https://github.com/Kong/kong/blob/2.0.0rc2/UPGRADE.md#upgrade-to-200rc2)

Once again, we encourage everyone to run this release candidate in their test environments and give us your feedback! This forum is a great way to ask questions or post feedback, and [GitHub issues](https://github.com/Kong/kong/issues) is the place for bug reports.

Thank you all for the feedback for the past release candidate, and let’s move one more step towards the best Kong release ever! 🚀

Happy Konging! 🦍
