pulumi/sdk
Anton Tayanovskyy d6db21dd55
Avoid repeatedly invoking `pip show` in Python lang host (#7831)
* Avoid repeatedly invoking `pip show` in Python lang host

The Python language host invokes `pip show` for each Pulumi package in a
project at startup. But `pip show` is quite slow in large projects: it
takes 2+ seconds per invocation in a project at @MaterializeInc.

`pip show` is invoked to compute the installed location of each plugin
package. But it turns out `pip list` takes a `-v` flag that can supply
this information in one shot, avoiding the need to ever invoke `pip
show`.

This patch shaves about 20s off our boot time for `pulumi up`.

(There's probably a separate bug in Pip that causes `pip show` to be so
slow, because `pip list` is an order of magnitude faster and does a lot
more work, but I didn't bother tracking that down.)

* Test and fix issue with parsing non-JSON trailer returned by pip

* Fix issues found by Go lint

* CHANGELOG entry

Co-authored-by: Nikhil Benesch <nikhil.benesch@gmail.com>
2021-08-25 11:40:58 -04:00
..
dotnet [sdk/dotnet] Support for calling methods (#7582) 2021-08-24 20:17:05 -07:00
go Tighten up auto test (#7830) 2021-08-24 14:48:09 -04:00
nodejs [sdk/nodejs] Prevent Pulumi from overriding tsconfig.json options. (#7068) 2021-08-15 18:58:43 -07:00
proto Add `replaceOnChanges` resource option (#7226) 2021-07-01 13:32:08 -06:00
python Avoid repeatedly invoking `pip show` in Python lang host (#7831) 2021-08-25 11:40:58 -04:00
README.md Updating .NET references 2020-04-27 12:42:11 -07:00
go.mod Update x/sys for sdk to support go 1.17 (#7781) 2021-08-19 17:11:26 -06:00
go.sum Update x/sys for sdk to support go 1.17 (#7781) 2021-08-19 17:11:26 -06:00

README.md

Pulumi Language SDKs

This directory contains the Pulumi SDKs for all supported languages.

Please see the respective READMEs for information about installing and using these libraries:

The language providers work by implementing gRPC interfaces defined in proto/.