Tyk Gateway 5.1 Release Notes
Last updated: 4 minutes read.
Open Source (Mozilla Public License)
Support Lifetime
Minor releases are supported until our next minor comes out in Q3.
5.1 Release Notes
Release Date 23 June 2023
Breaking Changes
*Attention warning: Please read carefully this section.
Golang Version upgrade
Our Gateway is using Golang 1.19 programming language starting with the 5.1 release. This brings improvements to the code base and allows us to benefit from the latest features and security enhancements in Go. Don’t forget that, if you’re using GoPlugins, you’ll need to recompile these to maintain compatibility with the latest Gateway.
Early Access Features:
Please note that the Tyk OAS APIs
feature, currently marked as Early Access, is subject to breaking changes in subsequent releases. Please refer to our Early Access guide for specific details. Upgrading to a new version may introduce changes that are not backward-compatible. Downgrading to a previous version after upgrading may result in a broken installation.
Users are strongly advised to follow the recommended upgrade instructions provided by Tyk before applying any updates.
Deprecations
There are no deprecations in this release.
Upgrade Instructions
Go to the Upgrading Tyk section for detailed upgrade instructions.
Release Highlights
Request Body Size Limits
We have introduced a new Gateway-level option to limit the size of requests made to your APIs. You can use this as a first line of defence against overly large requests that might affect your Tyk Gateways or upstream services. Of course, being Tyk, we also provide the flexibility to configure API-level and per-endpoint size limits so you can be as granular as you need to protect and optimise your services. Check out our improved documentation for full description of how to use these powerful features.
Changed default RPC pool size for MDCB deployments
We have reduced the default RPC pool size from 20 to 5. This can reduce the CPU and memory footprint in high throughput scenarios. Please monitor the CPU and memory allocation of your environment and adjust accordingly. You can change the pool size using slave_options.rpc_pool_size
Downloads
Changelog
Added
- Added
HasOperation
,Operation
andVariables
to GraphQL data source API definition for easier nesting - Added abstractions/interfaces for ExecutionEngineV2 and ExecutionEngine2Executor with respect to graphql-go-tools
- Added support for the
:authority
header when making GRPC requests. If the:authority
header is not present then some GRPC servers return PROTOCOL_ERROR which prevents custom GRPC plugins from running. Thanks to vanhtuan0409 from the Tyk Community for his contribution!
Changed
- Tyk Gateway updated to use Go 1.19
- Updated <em>kin-openapi</em> dependency to the version v0.114.0
- Enhanced the UDG parser to comprehensively extract all necessary information for UDG configuration when users import to Tyk their OpenAPI document as an API definition
- Reduced default CPU and memory footprint by changing the default RPC pool size from 20 to 5 connections.
Fixed
- Fixed an issue where invalid IP addresses could be added to the IP allow list
- Fixed an issue when using custom authentication with multiple authentication methods, custom authentication could not be selected to provide the base identity
- Fixed an issue where OAuth access keys were physically removed from Redis on expiry. Behaviour for OAuth is now the same as for other authorisation methods
- Fixed an issue where the
global_size_limit
setting didn’t enable request size limit middleware. Thanks to PatrickTaibel for the contribution! - Fixed minor versioning, URL and field mapping issues when importing OpenAPI document as an API definition to UDG
- When the control API is not protected with mTLS we now do not ask for a cert, even if all the APIs registered have mTLS as an authorization mechanism
Tyk Classic Portal Changelog
Changed
- Improved performance when opening the Portal page by optimising the pre-fetching of required data
Community Contributions
Special thanks to the following members of the Tyk community for their contributions in this release:
-
Thanks to PatrickTaibel for fixing an issue where
global_size_limit
was not enabling request size limit middleware. -
Thanks to vanhtuan0409 for adding support to the
:authority
header when making gRPC requests.
Further Information
Upgrading Tyk
Please refer to the upgrading Tyk page for further guidance with respect to the upgrade strategy.
API Documentation
FAQ
Please visit our Developer Support page for further information relating to reporting bugs, upgrading Tyk, technical support and how to contribute.