pulumi/pkg/codegen/pcl
Zaid Ajaj f8236e125e
[docs/go-program-gen] Fix generating constructor syntax examples in Go for package awsx (#16583)
Currently, when generating docs for the AWSX package, Go constructor
syntax examples were not generated due to a panic. This causes all
constructor examples to not be emitted in the docs.

The panic occurred when trying to get the version of referenced packages
in the PCL program to emit import paths. However, _transitive_ package
references were not resolved in the PCL binder when binding resource
types. This PR fixes the problem such that now we do find the transitive
package references from any input or output property of the resources
being bound.

In the case of the awsx package, the top-level package is awsx itself
and aws is the transitive dependency. Anytime in codegen we call
`program.PackageReferences()` we should get both of them. Added a unit
test for this as well.

Testing this fix locally against the awsx package showed constructor
examples being generated for every language, however there was still a
problem in the _formatting_ of Go code which is also fixed (see change
in `gen_program_expressions.go`)

Resolves part of #16463
2024-07-08 23:23:47 +00:00
..
binder.go Clean up uses of .Error() (#14965) 2023-12-20 15:54:06 +00:00
binder_component.go fix: close files in PCL binder (#15961) 2024-05-07 23:36:10 +00:00
binder_nodes.go Allow null literal as a default value for config variables 2023-05-04 00:38:38 +02:00
binder_resource.go [docs/go-program-gen] Fix generating constructor syntax examples in Go for package awsx (#16583) 2024-07-08 23:23:47 +00:00
binder_resource_test.go pcl/options: Support retainOnDelete 2023-03-03 10:29:59 -08:00
binder_schema.go [docs] Fix generating constructor examples for resources that have numeric enums as input (#16223) 2024-05-30 22:43:12 +00:00
binder_schema_test.go all: Assert => Assertf 2023-03-03 14:37:43 -08:00
binder_test.go [docs/go-program-gen] Fix generating constructor syntax examples in Go for package awsx (#16583) 2024-07-08 23:23:47 +00:00
component.go lint 2023-07-27 16:32:06 +02:00
config.go Implement description as comments or docstring for config variables in program-gen 2023-03-21 15:01:16 +01:00
diagnostics.go Extend SkipResourceTypechecking to allow generating unknown resources 2023-06-14 19:02:56 +02:00
functions.go Add StackReference conformance test (#15935) 2024-04-16 11:13:25 +00:00
functions_test.go [program-gen] Fix stack overflow when binding invoke that resolves to promise (#15463) 2024-02-20 15:49:08 +00:00
intrinsics.go all: Assert => Assertf 2023-03-03 14:37:43 -08:00
invoke.go Update golangci-lint (#14624) 2023-11-21 15:16:13 +00:00
local.go Do not panic when the type of PCL local variable isn't known 2023-04-13 20:05:16 +02:00
output.go codegen: preserve externally visible names of a resources and outputs (#9464) 2022-04-25 15:07:25 -07:00
program.go Use slice.Prealloc instead of make([]T, 0, ...) 2023-06-29 11:27:50 +01:00
resource.go Implement lenient traversal for resources 2023-06-20 13:50:18 +02:00
rewrite_apply.go Vendor the inflector library (#16421) 2024-06-20 09:04:33 +00:00
rewrite_apply_test.go [program-gen] Emit Output-returning JSON serialization methods without rewriting applies (#15371) 2024-02-20 15:48:46 +00:00
rewrite_convert.go [program-gen] Fix enum resolution from types of the form Union[string, Enum] and emit fully qualified enum cases (#15696) 2024-03-15 17:49:12 +00:00
rewrite_convert_test.go Fixes panic when generating go from pulumi yaml (#10047) 2022-07-07 13:15:47 -07:00
rewrite_properties.go all: Assert => Assertf 2023-03-03 14:37:43 -08:00
type.go [codegen] simplify opaque types to string newtype (#9770) 2022-06-13 11:13:03 -07:00
utilities.go lint 2023-07-28 20:47:36 +02:00
utilities_test.go lint 2023-05-25 22:16:00 +02:00