From 1a586f2935764bce56c4658165291ffacde7e0b1 Mon Sep 17 00:00:00 2001 From: paulhcsun <47882901+paulhcsun@users.noreply.github.com> Date: Wed, 29 Nov 2023 12:20:05 -0500 Subject: [PATCH] docs(s3): bad type definition for objectsKeyPattern parameter (#28176) Improve docstrings to explain that parameter objectsKeyPattern of type any should take in string inputs. Unable to directly change the parameter type because of backwards compatibility concerns (mentioned in https://github.com/aws/aws-cdk/pull/27486)so we are improving documentation as an alternative solution. Closes https://github.com/aws/aws-cdk/issues/27481. ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license* --- packages/aws-cdk-lib/aws-s3/lib/bucket.ts | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/aws-cdk-lib/aws-s3/lib/bucket.ts b/packages/aws-cdk-lib/aws-s3/lib/bucket.ts index 9f4cd6b122163..cb14f945fe69b 100644 --- a/packages/aws-cdk-lib/aws-s3/lib/bucket.ts +++ b/packages/aws-cdk-lib/aws-s3/lib/bucket.ts @@ -184,7 +184,7 @@ export interface IBucket extends IResource { * of the bucket will also be granted to the same principal. * * @param identity The principal - * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*') + * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*'). Parameter type is `any` but `string` should be passed in. */ grantRead(identity: iam.IGrantable, objectsKeyPattern?: any): iam.Grant; @@ -203,7 +203,7 @@ export interface IBucket extends IResource { * use the `grantPutAcl` method. * * @param identity The principal - * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*') + * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*'). Parameter type is `any` but `string` should be passed in. * @param allowedActionPatterns Restrict the permissions to certain list of action patterns */ grantWrite(identity: iam.IGrantable, objectsKeyPattern?: any, allowedActionPatterns?: string[]): iam.Grant; @@ -214,7 +214,7 @@ export interface IBucket extends IResource { * If encryption is used, permission to use the key to encrypt the contents * of written files will also be granted to the same principal. * @param identity The principal - * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*') + * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*'). Parameter type is `any` but `string` should be passed in. */ grantPut(identity: iam.IGrantable, objectsKeyPattern?: any): iam.Grant; @@ -235,7 +235,7 @@ export interface IBucket extends IResource { * in this bucket. * * @param identity The principal - * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*') + * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*'). Parameter type is `any` but `string` should be passed in. */ grantDelete(identity: iam.IGrantable, objectsKeyPattern?: any): iam.Grant; @@ -255,7 +255,7 @@ export interface IBucket extends IResource { * use the `grantPutAcl` method. * * @param identity The principal - * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*') + * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*'). Parameter type is `any` but `string` should be passed in. */ grantReadWrite(identity: iam.IGrantable, objectsKeyPattern?: any): iam.Grant; @@ -765,7 +765,7 @@ export abstract class BucketBase extends Resource implements IBucket { * of the bucket will also be granted to the same principal. * * @param identity The principal - * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*') + * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*'). Parameter type is `any` but `string` should be passed in. */ public grantRead(identity: iam.IGrantable, objectsKeyPattern: any = '*') { return this.grant(identity, perms.BUCKET_READ_ACTIONS, perms.KEY_READ_ACTIONS, @@ -786,7 +786,7 @@ export abstract class BucketBase extends Resource implements IBucket { * If encryption is used, permission to use the key to encrypt the contents * of written files will also be granted to the same principal. * @param identity The principal - * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*') + * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*'). Parameter type is `any` but `string` should be passed in. */ public grantPut(identity: iam.IGrantable, objectsKeyPattern: any = '*') { return this.grant(identity, this.putActions, perms.KEY_WRITE_ACTIONS, @@ -803,7 +803,7 @@ export abstract class BucketBase extends Resource implements IBucket { * in this bucket. * * @param identity The principal - * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*') + * @param objectsKeyPattern Restrict the permission to a certain key pattern (default '*'). Parameter type is `any` but `string` should be passed in. */ public grantDelete(identity: iam.IGrantable, objectsKeyPattern: any = '*') { return this.grant(identity, perms.BUCKET_DELETE_ACTIONS, [],