From 4dbbdf9f8e3761b9731d7bcebac29c9a4065f0f6 Mon Sep 17 00:00:00 2001 From: Vincent Viloria Date: Tue, 11 Mar 2025 14:08:52 -0700 Subject: [PATCH] update documentation for upgrading to KCL v2.7.x --- README.md | 3 +++ docs/multilang/configuring-credential-providers.md | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/README.md b/README.md index 48085b78..c63733e4 100644 --- a/README.md +++ b/README.md @@ -48,6 +48,9 @@ To make it easier for developers to write record processors in other languages, ## Using the KCL The recommended way to use the KCL for Java is to consume it from Maven. +## Must read if you are migrating to a version using KCL 2.7 or later +KCL version 2.7.0 and beyond does not use the AWS SDK v1. Because of this, all multilang users upgrading from a prior version must update their multilang `.properties` AwsCredentialsProvider property to an AWS SDK v2 credential provider name. Please see the credentials provider name mapping [here](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/migration-client-credentials.html#credentials-changes-mapping), and reference our Configuring Credential Providers documentation [here](https://github.com/vincentvilo-aws/amazon-kinesis-client/blob/remove-sdk-v1/docs/multilang/configuring-credential-providers.md). If this is not done, your multilang KCL will fail to construct an AwsCredentialsProvider on startup. + ### Version 2.x ``` xml diff --git a/docs/multilang/configuring-credential-providers.md b/docs/multilang/configuring-credential-providers.md index 2f418b16..7363adb8 100644 --- a/docs/multilang/configuring-credential-providers.md +++ b/docs/multilang/configuring-credential-providers.md @@ -6,6 +6,10 @@ KCL multilang does not, and is not intended to, proxy the full breadth of the AW However, KCL now provides better extensibility to handle, and be enhanced to handle, additional configurations. This document should help multilang customers configure a suitable `CredentialProvider` (or contribute changes to support a new use case!). +In KCL versions prior to 2.7, the AWSCredentialsProvider property expected AWS SDK v1 provider names. If you are using +KCL version 2.7 or beyond, ensure that you are passing an AWS SDK v2 credentials provider name to your AwsCredentialsProvider +property. See list of providers [here](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/migration-client-credentials.html#credentials-changes-mapping) and several examples below. + ## Sample Provider Configuration In a Properties file, an `AwsCredentialsProperty` configuration might look like: