Hi. Does anyone have any suggestions how I might debug a `panic: reflect: Call using pulumi.StringAr...
f
Hi. Does anyone have any suggestions how I might debug a
panic: reflect: Call using pulumi.StringArray as type []string
coming from an Apply? The panic stack trace is entirely within the goroutine executing the apply so it doesn’t really show where in my code its coming from
Copy code
panic: reflect: Call using pulumi.StringArray as type []string

goroutine 321 [running]:
reflect.Value.call({0xad18ec0?, 0xc000ea9990?, 0x13?}, {0x9f4156f, 0x4}, {0xc00048f2c0, 0x1, 0x2?})
	/usr/local/Cellar/go/1.23.6/libexec/src/reflect/value.go:437 +0x1b7f
reflect.Value.Call({0xad18ec0?, 0xc000ea9990?, 0x101000000000000?}, {0xc00048f2c0?, 0x0?, 0x0?})
	/usr/local/Cellar/go/1.23.6/libexec/src/reflect/value.go:365 +0xb9
<http://github.com/pulumi/pulumi/sdk/v3/go/internal.(*applier).Call(0xc0002ffa80|github.com/pulumi/pulumi/sdk/v3/go/internal.(*applier).Call(0xc0002ffa80>, {0xc48bec0, 0x11a5edc0}, {0xb5100e0?, 0xc0006ca258?, 0x0?})
	/Users/marknevill/.local/go/pkg/mod/github.com/pulumi/pulumi/sdk/v3@v3.152.0/go/internal/types.go:510 +0x22a
<http://github.com/pulumi/pulumi/sdk/v3/go/internal.(*OutputState).applyTWithApplier.func1()|github.com/pulumi/pulumi/sdk/v3/go/internal.(*OutputState).applyTWithApplier.func1()>
	/Users/marknevill/.local/go/pkg/mod/github.com/pulumi/pulumi/sdk/v3@v3.152.0/go/internal/types.go:622 +0x16a
created by <http://github.com/pulumi/pulumi/sdk/v3/go/internal.(*OutputState).applyTWithApplier|github.com/pulumi/pulumi/sdk/v3/go/internal.(*OutputState).applyTWithApplier> in goroutine 76
	/Users/marknevill/.local/go/pkg/mod/github.com/pulumi/pulumi/sdk/v3@v3.152.0/go/internal/types.go:609 +0x272
exit status 2
based on commenting code in and out, it comes from a line
Copy code
domainIDs.ApplyT(func(ids []string) ...
where
domainIDs
is a
pulumi.StringArrayOutput
, which itself is produced by
Copy code
domainIDs := args.Domains.ToStringMapOutput().ApplyT(func(domains map[string]string) (pulumi.StringArray, error) {
...
}).(pulumi.StringArrayOutput)