pulumi/pkg/codegen/python
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
..
gen_program_test all: gofmt -w -s 2023-01-10 19:03:24 -08:00
.gitignore Simplify output-funcs codegen test (#8039) 2021-09-23 13:42:20 -04:00
doc.go all: Reformat with gofumpt 2023-03-03 09:00:24 -08:00
gen.go Use slice.Prealloc instead of make([]T, 0, ...) 2023-06-29 11:27:50 +01:00
gen_intrinsics.go ci: gofmt 1.18+ clean 2022-09-21 09:48:39 -07:00
gen_program.go Extend SkipResourceTypechecking to allow generating unknown resources 2023-06-14 19:02:56 +02:00
gen_program_expressions.go Fixes python panic when emiting code for index expressions that aren't typechecked 2023-06-09 01:44:09 +02:00
gen_program_lower.go all: Reformat with gofumpt 2023-03-03 09:00:24 -08:00
gen_program_quotes.go Fixes python panic when emiting code for index expressions that aren't typechecked 2023-06-09 01:44:09 +02:00
gen_program_quotes_test.go Add missing required attributes for TestLowerPropertyAccess 2023-03-08 15:42:02 +01:00
gen_program_test.go chore: Update makefile, ensure make test_codegen_go 2022-10-17 00:22:48 -07:00
gen_program_utils.go throw/raise an error when input list does not have a single element 2023-05-30 13:38:01 +02:00
gen_resource_mappings.go Use slice.Prealloc instead of make([]T, 0, ...) 2023-06-29 11:27:50 +01:00
gen_resource_mappings_test.go sdk/go: Remove 'nolint' directives from package docs 2023-01-06 09:06:47 -08:00
gen_test.go Regen test docs 2023-05-28 14:08:57 -04:00
importer.go Add Pyproject schema. 2023-05-27 13:18:27 -04:00
pyproject.go Set a minimum version of Python supported. 2023-05-28 14:08:56 -04:00
python.go ci: gofmt 1.18+ clean 2022-09-21 09:48:39 -07:00
python_test.go Support a logical name for config vars 2022-11-02 12:39:57 -07:00
requirements.txt Simplify output-funcs codegen test (#8039) 2021-09-23 13:42:20 -04:00
test.go fix(ci): Split programgen tests over more jobs 2022-10-16 23:20:45 -07:00
utilities.go Use slice.Prealloc instead of make([]T, 0, ...) 2023-06-29 11:27:50 +01:00
utilities_test.go Merge #11052 2022-10-18 01:15:49 +00:00