Skip to content

Commit

Permalink
Merge #11511
Browse files Browse the repository at this point in the history
11511: [typescript/sdk-gen] Generate JS doc comments for output-versioned invokes r=Zaid-Ajaj a=Zaid-Ajaj

 - Generate JS doc comments for output-versioned invokes
 - Use explicit `any` type within apply lambda

This is part of #11418 but irrelevant to that (big) PR so this will help make the changes smaller and more clear 

## Checklist

<!--- Please provide details if the checkbox below is to be left unchecked. -->
- [ ] I have added tests that prove my fix is effective or that my feature works
<!--- 
User-facing changes require a CHANGELOG entry.
-->
- [x] I have run `make changelog` and committed the `changelog/pending/<file>` documenting my change
<!--
If the change(s) in this PR is a modification of an existing call to the Pulumi Service,
then the service should honor older versions of the CLI where this change would not exist.
You must then bump the API version in /pkg/backend/httpstate/client/api.go, as well as add
it to the service.
-->
- [ ] Yes, there are changes in this PR that warrants bumping the Pulumi Service API version
  <!-- `@Pulumi` employees: If yes, you must submit corresponding changes in the service repo. -->


Co-authored-by: Zaid Ajaj <zaid.naom@gmail.com>
  • Loading branch information
bors[bot] and Zaid-Ajaj committed Dec 5, 2022
2 parents a8804fc + 10e69f3 commit a079941
Show file tree
Hide file tree
Showing 22 changed files with 85 additions and 43 deletions.
@@ -0,0 +1,4 @@
changes:
- type: fix
scope: sdkgen/nodejs
description: Generate JS doc comments for output-versioned invokes and use explicit any type.
12 changes: 9 additions & 3 deletions pkg/codegen/nodejs/gen.go
Expand Up @@ -1182,6 +1182,13 @@ func (mod *modContext) genFunctionOutputVersion(
return info, nil
}

// Write the TypeDoc/JSDoc for the data source function.
printComment(w, codegen.FilterExamples(fun.Comment, "typescript"), "", "")

if fun.DeprecationMessage != "" {
fmt.Fprintf(w, "/** @deprecated %s */\n", fun.DeprecationMessage)
}

originalName := tokenToFunctionName(fun.Token)
fnOutput := fmt.Sprintf("%sOutput", originalName)
info.functionOutputVersionName = fnOutput
Expand All @@ -1195,9 +1202,8 @@ func (mod *modContext) genFunctionOutputVersion(
}
argsig = fmt.Sprintf("args%s: %s, ", optFlag, argTypeName)

fmt.Fprintf(w, `
export function %s(%sopts?: pulumi.InvokeOptions): pulumi.Output<%s> {
return pulumi.output(args).apply(a => %s(a, opts))
fmt.Fprintf(w, `export function %s(%sopts?: pulumi.InvokeOptions): pulumi.Output<%s> {
return pulumi.output(args).apply((a: any) => %s(a, opts))
}
`, fnOutput, argsig, functionReturnType(fun), originalName)
fmt.Fprintf(w, "\n")
Expand Down
Expand Up @@ -22,9 +22,8 @@ export interface ArgFunctionArgs {
export interface ArgFunctionResult {
readonly age?: number;
}

export function argFunctionOutput(args?: ArgFunctionOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<ArgFunctionResult> {
return pulumi.output(args).apply(a => argFunction(a, opts))
return pulumi.output(args).apply((a: any) => argFunction(a, opts))
}

export interface ArgFunctionOutputArgs {
Expand Down
Expand Up @@ -24,9 +24,8 @@ export interface FuncWithSecretsResult {
readonly id: string;
readonly plaintext: string;
}

export function funcWithSecretsOutput(args: FuncWithSecretsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<FuncWithSecretsResult> {
return pulumi.output(args).apply(a => funcWithSecrets(a, opts))
return pulumi.output(args).apply((a: any) => funcWithSecrets(a, opts))
}

export interface FuncWithSecretsOutputArgs {
Expand Down
Expand Up @@ -49,9 +49,12 @@ export interface ListConfigurationsResult {
*/
readonly value: outputs.ConfigurationResponse[];
}

/**
* The list of configurations.
* API Version: 2020-12-01-preview.
*/
export function listConfigurationsOutput(args: ListConfigurationsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<ListConfigurationsResult> {
return pulumi.output(args).apply(a => listConfigurations(a, opts))
return pulumi.output(args).apply((a: any) => listConfigurations(a, opts))
}

export interface ListConfigurationsOutputArgs {
Expand Down
Expand Up @@ -54,9 +54,12 @@ export interface ListProductFamiliesResult {
*/
readonly value: outputs.ProductFamilyResponse[];
}

/**
* The list of product families.
* API Version: 2020-12-01-preview.
*/
export function listProductFamiliesOutput(args: ListProductFamiliesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<ListProductFamiliesResult> {
return pulumi.output(args).apply(a => listProductFamilies(a, opts))
return pulumi.output(args).apply((a: any) => listProductFamilies(a, opts))
}

export interface ListProductFamiliesOutputArgs {
Expand Down
Expand Up @@ -71,9 +71,12 @@ export interface GetAmiIdsResult {
readonly owners: string[];
readonly sortAscending?: boolean;
}

/**
* Taken from pulumi-AWS to regress an issue
*/
/** @deprecated aws.getAmiIds has been deprecated in favor of aws.ec2.getAmiIds */
export function getAmiIdsOutput(args: GetAmiIdsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetAmiIdsResult> {
return pulumi.output(args).apply(a => getAmiIds(a, opts))
return pulumi.output(args).apply((a: any) => getAmiIds(a, opts))
}

/**
Expand Down
Expand Up @@ -44,9 +44,12 @@ export interface ListStorageAccountKeysResult {
*/
readonly keys: outputs.StorageAccountKeyResponse[];
}

/**
* The response from the ListKeys operation.
* API Version: 2021-02-01.
*/
export function listStorageAccountKeysOutput(args: ListStorageAccountKeysOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<ListStorageAccountKeysResult> {
return pulumi.output(args).apply(a => listStorageAccountKeys(a, opts))
return pulumi.output(args).apply((a: any) => listStorageAccountKeys(a, opts))
}

export interface ListStorageAccountKeysOutputArgs {
Expand Down
Expand Up @@ -31,9 +31,11 @@ export interface FuncWithAllOptionalInputsArgs {
export interface FuncWithAllOptionalInputsResult {
readonly r: string;
}

/**
* Check codegen of functions with all optional inputs.
*/
export function funcWithAllOptionalInputsOutput(args?: FuncWithAllOptionalInputsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<FuncWithAllOptionalInputsResult> {
return pulumi.output(args).apply(a => funcWithAllOptionalInputs(a, opts))
return pulumi.output(args).apply((a: any) => funcWithAllOptionalInputs(a, opts))
}

export interface FuncWithAllOptionalInputsOutputArgs {
Expand Down
Expand Up @@ -24,9 +24,11 @@ export interface FuncWithDefaultValueArgs {
export interface FuncWithDefaultValueResult {
readonly r: string;
}

/**
* Check codegen of functions with default values.
*/
export function funcWithDefaultValueOutput(args: FuncWithDefaultValueOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<FuncWithDefaultValueResult> {
return pulumi.output(args).apply(a => funcWithDefaultValue(a, opts))
return pulumi.output(args).apply((a: any) => funcWithDefaultValue(a, opts))
}

export interface FuncWithDefaultValueOutputArgs {
Expand Down
Expand Up @@ -25,9 +25,11 @@ export interface FuncWithDictParamArgs {
export interface FuncWithDictParamResult {
readonly r: string;
}

/**
* Check codegen of functions with a Dict<str,str> parameter.
*/
export function funcWithDictParamOutput(args?: FuncWithDictParamOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<FuncWithDictParamResult> {
return pulumi.output(args).apply(a => funcWithDictParam(a, opts))
return pulumi.output(args).apply((a: any) => funcWithDictParam(a, opts))
}

export interface FuncWithDictParamOutputArgs {
Expand Down
Expand Up @@ -24,9 +24,11 @@ export interface FuncWithEmptyOutputsArgs {

export interface FuncWithEmptyOutputsResult {
}

/**
* n/a
*/
export function funcWithEmptyOutputsOutput(args: FuncWithEmptyOutputsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<FuncWithEmptyOutputsResult> {
return pulumi.output(args).apply(a => funcWithEmptyOutputs(a, opts))
return pulumi.output(args).apply((a: any) => funcWithEmptyOutputs(a, opts))
}

export interface FuncWithEmptyOutputsOutputArgs {
Expand Down
Expand Up @@ -25,9 +25,11 @@ export interface FuncWithListParamArgs {
export interface FuncWithListParamResult {
readonly r: string;
}

/**
* Check codegen of functions with a List parameter.
*/
export function funcWithListParamOutput(args?: FuncWithListParamOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<FuncWithListParamResult> {
return pulumi.output(args).apply(a => funcWithListParam(a, opts))
return pulumi.output(args).apply((a: any) => funcWithListParam(a, opts))
}

export interface FuncWithListParamOutputArgs {
Expand Down
Expand Up @@ -44,9 +44,12 @@ export interface GetBastionShareableLinkResult {
*/
readonly nextLink?: string;
}

/**
* Response for all the Bastion Shareable Link endpoints.
* API Version: 2020-11-01.
*/
export function getBastionShareableLinkOutput(args: GetBastionShareableLinkOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetBastionShareableLinkResult> {
return pulumi.output(args).apply(a => getBastionShareableLink(a, opts))
return pulumi.output(args).apply((a: any) => getBastionShareableLink(a, opts))
}

export interface GetBastionShareableLinkOutputArgs {
Expand Down
Expand Up @@ -53,9 +53,12 @@ export interface GetIntegrationRuntimeObjectMetadatumResult {
*/
readonly value?: (outputs.SsisEnvironmentResponse | outputs.SsisFolderResponse | outputs.SsisPackageResponse | outputs.SsisProjectResponse)[];
}

/**
* Another failing example. A list of SSIS object metadata.
* API Version: 2018-06-01.
*/
export function getIntegrationRuntimeObjectMetadatumOutput(args: GetIntegrationRuntimeObjectMetadatumOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetIntegrationRuntimeObjectMetadatumResult> {
return pulumi.output(args).apply(a => getIntegrationRuntimeObjectMetadatum(a, opts))
return pulumi.output(args).apply((a: any) => getIntegrationRuntimeObjectMetadatum(a, opts))
}

export interface GetIntegrationRuntimeObjectMetadatumOutputArgs {
Expand Down
Expand Up @@ -44,9 +44,12 @@ export interface ListStorageAccountKeysResult {
*/
readonly keys: outputs.StorageAccountKeyResponse[];
}

/**
* The response from the ListKeys operation.
* API Version: 2021-02-01.
*/
export function listStorageAccountKeysOutput(args: ListStorageAccountKeysOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<ListStorageAccountKeysResult> {
return pulumi.output(args).apply(a => listStorageAccountKeys(a, opts))
return pulumi.output(args).apply((a: any) => listStorageAccountKeys(a, opts))
}

export interface ListStorageAccountKeysOutputArgs {
Expand Down
Expand Up @@ -33,9 +33,11 @@ export interface FuncWithAllOptionalInputsArgs {
export interface FuncWithAllOptionalInputsResult {
readonly r: string;
}

/**
* Check codegen of functions with all optional inputs.
*/
export function funcWithAllOptionalInputsOutput(args?: FuncWithAllOptionalInputsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<FuncWithAllOptionalInputsResult> {
return pulumi.output(args).apply(a => funcWithAllOptionalInputs(a, opts))
return pulumi.output(args).apply((a: any) => funcWithAllOptionalInputs(a, opts))
}

export interface FuncWithAllOptionalInputsOutputArgs {
Expand Down
Expand Up @@ -33,9 +33,11 @@ export interface FuncWithAllOptionalInputsArgs {
export interface FuncWithAllOptionalInputsResult {
readonly r: string;
}

/**
* Check codegen of functions with all optional inputs.
*/
export function funcWithAllOptionalInputsOutput(args?: FuncWithAllOptionalInputsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<FuncWithAllOptionalInputsResult> {
return pulumi.output(args).apply(a => funcWithAllOptionalInputs(a, opts))
return pulumi.output(args).apply((a: any) => funcWithAllOptionalInputs(a, opts))
}

export interface FuncWithAllOptionalInputsOutputArgs {
Expand Down
Expand Up @@ -31,9 +31,11 @@ export interface FuncWithAllOptionalInputsArgs {
export interface FuncWithAllOptionalInputsResult {
readonly r: string;
}

/**
* Check codegen of functions with all optional inputs.
*/
export function funcWithAllOptionalInputsOutput(args?: FuncWithAllOptionalInputsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<FuncWithAllOptionalInputsResult> {
return pulumi.output(args).apply(a => funcWithAllOptionalInputs(a, opts))
return pulumi.output(args).apply((a: any) => funcWithAllOptionalInputs(a, opts))
}

export interface FuncWithAllOptionalInputsOutputArgs {
Expand Down
Expand Up @@ -22,9 +22,8 @@ export interface ArgFunctionArgs {
export interface ArgFunctionResult {
readonly result?: Resource;
}

export function argFunctionOutput(args?: ArgFunctionOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<ArgFunctionResult> {
return pulumi.output(args).apply(a => argFunction(a, opts))
return pulumi.output(args).apply((a: any) => argFunction(a, opts))
}

export interface ArgFunctionOutputArgs {
Expand Down
Expand Up @@ -22,9 +22,8 @@ export interface ArgFunctionArgs {
export interface ArgFunctionResult {
readonly result?: Resource;
}

export function argFunctionOutput(args?: ArgFunctionOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<ArgFunctionResult> {
return pulumi.output(args).apply(a => argFunction(a, opts))
return pulumi.output(args).apply((a: any) => argFunction(a, opts))
}

export interface ArgFunctionOutputArgs {
Expand Down
Expand Up @@ -22,9 +22,8 @@ export interface ArgFunctionArgs {
export interface ArgFunctionResult {
readonly result?: Resource;
}

export function argFunctionOutput(args?: ArgFunctionOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<ArgFunctionResult> {
return pulumi.output(args).apply(a => argFunction(a, opts))
return pulumi.output(args).apply((a: any) => argFunction(a, opts))
}

export interface ArgFunctionOutputArgs {
Expand Down

0 comments on commit a079941

Please sign in to comment.