pulumi/sdk/go/common/resource
Fraser Waters 571fadae3f Use slice.Prealloc instead of make([]T, 0, ...)
Fixes https://github.com/pulumi/pulumi/issues/12738

https://github.com/pulumi/pulumi/pull/11834 turned on the prealloc
linter and changed a load of slice uses from just `var x T[]` to `x :=
make([]T, 0, preallocSize)`. This was good for performance but it turns
out there are a number of places in the codebase that treat a `nil`
slice as semnatically different to an empty slice.

Trying to test that, or even reason that through for every callsite is
untractable, so this PR replaces all expressions of the form `make([]T,
0, size)` with a call to `slice.Prealloc[T](size)`. When size is 0 that
returns a nil array, rather than an empty array.
2023-06-29 11:27:50 +01:00
..
config all: Drop //nolint:goconst 2023-03-09 11:15:21 -08:00
plugin Use slice.Prealloc instead of make([]T, 0, ...) 2023-06-29 11:27:50 +01:00
testing deps: Upgrade to pgregory.net/rapid v0.5 2023-02-16 12:04:07 -08:00
alias.go [engine] Fix aliasing children 2023-06-14 05:19:17 -07:00
alias_test.go feat(engine): Adds structured alias support to the engine 2022-10-11 17:56:32 -04:00
asset.go Use slice.Prealloc instead of make([]T, 0, ...) 2023-06-29 11:27:50 +01:00
asset_test.go all: Reformat with gofumpt 2023-03-03 09:00:24 -08:00
custom_timeouts.go move pkg/resource -> sdk/go/common/resource, but leave nested resource packages 2020-03-18 13:36:19 -07:00
errors.go [breaking] Changing the version of go.mod in sdk / pkg to be v3 2021-04-14 19:32:18 +01:00
mapper_test.go Allow decoding *asset and *archive values 2022-10-17 13:28:13 -07:00
properties.go Use slice.Prealloc instead of make([]T, 0, ...) 2023-06-29 11:27:50 +01:00
properties_diff.go Use slice.Prealloc instead of make([]T, 0, ...) 2023-06-29 11:27:50 +01:00
properties_diff_test.go all: Reformat with gofumpt 2023-03-03 09:00:24 -08:00
properties_path.go Fix wildcards and indexers in IgnoreChanges 2023-06-20 09:45:02 +01:00
properties_path_test.go Fix wildcards and indexers in IgnoreChanges 2023-06-20 09:45:02 +01:00
properties_test.go ci: radical idea - what if slow tests & no stdout makes GH consider runner dead? 2022-03-06 14:52:13 -08:00
resource_goal.go all: Reformat with gofumpt 2023-03-03 09:00:24 -08:00
resource_id.go sdk/go: Prefer contract.Assertf over Assert 2023-02-15 10:22:43 -08:00
resource_id_test.go all: Drop //nolint:goconst 2023-03-09 11:15:21 -08:00
resource_operation.go move pkg/resource -> sdk/go/common/resource, but leave nested resource packages 2020-03-18 13:36:19 -07:00
resource_state.go This commit adds the `Created` and `Modified` timestamps to pulumi state that are optional. 2023-03-27 09:28:26 -07:00
stack.go [breaking] Changing the version of go.mod in sdk / pkg to be v3 2021-04-14 19:32:18 +01:00
status.go move pkg/resource -> sdk/go/common/resource, but leave nested resource packages 2020-03-18 13:36:19 -07:00
urn.go pulumi state unprotect command now uses OS specific quoting 2023-06-22 11:42:08 -07:00
urn_test.go ci: radical idea - what if slow tests & no stdout makes GH consider runner dead? 2022-03-06 14:52:13 -08:00