{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":72477752,"defaultBranch":"master","name":"pulumi","ownerLogin":"pulumi","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2016-10-31T21:02:47.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/21992475?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1716493151.0","currentOid":""},"activityList":{"items":[{"before":"76a4de55b3cbfd87cc1e93c946dfa1c40380076f","after":"dea74ec2e8bbb80708bd93f583f354222a24dca8","ref":"refs/heads/pgavlin/js-wasm","pushedAt":"2024-05-23T20:44:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pgavlin","name":"Pat Gavlin","path":"/pgavlin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1224093?s=80&v=4"},"commit":{"message":"copyrights","shortMessageHtmlLink":"copyrights"}},{"before":"4ff1f562cc691971a1bf0ae51db912f905c14c02","after":"76a4de55b3cbfd87cc1e93c946dfa1c40380076f","ref":"refs/heads/pgavlin/js-wasm","pushedAt":"2024-05-23T20:41:12.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"pgavlin","name":"Pat Gavlin","path":"/pgavlin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1224093?s=80&v=4"},"commit":{"message":"[display] Enable WASM compilation\n\nThese changes contain some minor refactorings to conditionally disable\nthe use of packages that are cannot be built for `GOOS=js GOARCH=wasm`.\nWith these edits, `pkg/display` can be built targeting WASM.\n\nThese changes act as a safeguard to ensure that we are not adding\nadditional code that will _prevent_ building `pkg/display` for WASM\ntargets. They are not sufficient to produce a version of the display\nrenderer that is appropriate for actual use in a WASM environment:\n\n- The current renderer API is not well-suited for use outside the\n context of the CLI\n- The current event stream format has no versioning data\n- Actually building this code into a WASM module results in an\n unpleasantly large file (70M uncompressed, 13M gzipped)\n\nThese changes also add a size gate for the built WASM module. The gate\nis set to the 110% of the size of the WASM module as of this commit. Our\ngoal is to lower the size of the WASM module over time; as we do so we\nwill tighten this gate.\n\nPart of #13258.","shortMessageHtmlLink":"[display] Enable WASM compilation"}},{"before":null,"after":"92bb050e0a4c37b884ee5e19668d2a4335e09103","ref":"refs/heads/gh-readonly-queue/master/pr-16233-6b4805672cb5ff0251fa16b7d25b75f17ee5ff94","pushedAt":"2024-05-23T19:39:11.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"Update set-default command description (#16233)\n\nfixes: https://github.com/pulumi/docs/issues/11869\n\nUpdates the command description to be more explicit that this only\nalters default org configuration locally.","shortMessageHtmlLink":"Update set-default command description (#16233)"}},{"before":null,"after":"bd5c9286c4a160892819efd09e1b4702d726ce73","ref":"refs/heads/justin/v3.117.0","pushedAt":"2024-05-23T18:08:06.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"justinvp","name":"Justin Van Patten","path":"/justinvp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/710598?s=80&v=4"},"commit":{"message":"Prepare for v3.117.0 release","shortMessageHtmlLink":"Prepare for v3.117.0 release"}},{"before":"ab691c3b521ae385e2a051f4506e0fa47cdbf0df","after":"5b7821cd30a1c80d71770bbcc0d371a0f8f14ca3","ref":"refs/heads/tg/default-providers-take-2","pushedAt":"2024-05-23T16:20:08.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tgummerer","name":"Thomas Gummerer","path":"/tgummerer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/191004?s=80&v=4"},"commit":{"message":"implement programmatic default providers based on context in the engine and Go\n\nThis PR takes an alternative approach for implementing programmatic\ndefault providers, that was suggested in the internal design doc.\n\nInstead of making the default provider global, we create an API with a\ncallback that creates a new subcontext. In that subcontext and only\nin that subcontext is the provider set as the default provider. We\nachieve this by setting up a new monitor with a different port, so the\nengine can distinguish between the contexts.","shortMessageHtmlLink":"implement programmatic default providers based on context in the engi…"}},{"before":"bd7b9192372757bd28e7b564f5977588624be5dc","after":"20f7168a992a12423a4e3eb30e24d62cc2762c88","ref":"refs/heads/julienp/poetry","pushedAt":"2024-05-23T15:06:52.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"julienp","name":"Julien P","path":"/julienp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/387068?s=80&v=4"},"commit":{"message":"WIP","shortMessageHtmlLink":"WIP"}},{"before":"537cac90977ab2d316ff8d1cbb75d84d0071e15f","after":"bd7b9192372757bd28e7b564f5977588624be5dc","ref":"refs/heads/julienp/poetry","pushedAt":"2024-05-23T13:39:46.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"julienp","name":"Julien P","path":"/julienp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/387068?s=80&v=4"},"commit":{"message":"WIP","shortMessageHtmlLink":"WIP"}},{"before":"d7a70017739b14b7e7abf57ca9f8df49821ce0f8","after":null,"ref":"refs/heads/untargeted-dependencies","pushedAt":"2024-05-23T13:18:22.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"lunaris","name":"Will Jones","path":"/lunaris","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/163793?s=80&v=4"}},{"before":"6b4805672cb5ff0251fa16b7d25b75f17ee5ff94","after":null,"ref":"refs/heads/gh-readonly-queue/master/pr-16247-9f6c5208a87051bddd587b66dce30b0f989f07af","pushedAt":"2024-05-23T13:18:20.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"}},{"before":"9f6c5208a87051bddd587b66dce30b0f989f07af","after":"6b4805672cb5ff0251fa16b7d25b75f17ee5ff94","ref":"refs/heads/master","pushedAt":"2024-05-23T13:18:19.000Z","pushType":"merge_queue_merge","commitsCount":1,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"Propagate deleted dependencies of untargeted resources (#16247)\n\nWhen using `--target` to target specific resources during an update, we\nuse the list of targets to decide which steps to generate given a set of\nresource registrations. Specifically:\n\n* If the registration event names a resource that is targeted, we\nprocess it as usual.\n* If the registration event names a resource that _is not_ targeted, we\nemit a `SameStep` for it.\n\nIn the latter case, the emission of a `SameStep` means that the old\nstate for the resource will be copied across to the new state. This is\nthe desired behaviour -- the resource was not targeted and so the new\nstate should contain the resource exactly as it was prior to the update.\nHowever, this presents a problem if the old state has references to\nresources that either will not appear in the new state, or will appear\nin the wrong place. Consider the following program in TypeScript-esque\npseudocode:\n\n```typescript\nconst a = new Resource(\"a\")\nconst b = new Resource(\"b\", { dependency: a })\nconst c = new Resource(\"c\")\n```\n\nHere, `b` depends on `a`, while `a` and `c` have no dependencies. We run\nthis program without specifying targets and obtain a state containing\n`a`, `b` and `c`, with `a` appearing before `b` due to `b`'s dependency\non `a`. We now modify the program as follows:\n\n```typescript\nconst b = new Resource(\"b\")\nconst c = new Resource(\"c\")\n```\n\n`a` has been removed from the program and consequently `b` no longer\ndepends on it. We once more run the program, this time with a `--target`\nof `c`. That is to say, neither `a` nor `b` is targeted. The execution\nproceeds as follows:\n\n* `a` is not in the program, so no `RegisterResourceEvent` will be\nemitted and processed for it.\n* `b` is in the program, but it is not targeted. Its\n`RegisterResourceEvent` will be turned into a `SameStep` and `b`'s _old\nstate will be copied as-is to the new state_.\n* `c` is in the program and is targeted. It will be processed as normal.\n\nAt the end of execution when we come to write the snapshot, we take the\nfollowing actions:\n\n* We first write the processed resources: `b`'s old state and `c`'s new\nstate.\n* We then copy over any unprocessed resources from the base (previous)\nsnapshot. This includes `a` (which is again desirable since its deletion\nshould not be processed due to it not being targeted).\n\nOur snapshot is now not topologically sorted and thus invalid: `b` has a\ndependency on `a`, but `a` appears after it. Presently this bug will\nmanifest irrespective of the nature of the dependency: `.Dependencies`,\n`.PropertyDependencies` and `.DeletedWith` are all affected.\n\nThis commit fixes this issue by traversing all untargeted resource\ndependency relationships and ensuring that `SameStep`s (or better if\nthey have been targeted) are emitted before emitting the depending\nresource's `SameStep`.\n\n* Fixes #16052 \n* Fixes #15959","shortMessageHtmlLink":"Propagate deleted dependencies of untargeted resources (#16247)"}},{"before":null,"after":"6b4805672cb5ff0251fa16b7d25b75f17ee5ff94","ref":"refs/heads/gh-readonly-queue/master/pr-16247-9f6c5208a87051bddd587b66dce30b0f989f07af","pushedAt":"2024-05-23T12:31:19.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"Propagate deleted dependencies of untargeted resources (#16247)\n\nWhen using `--target` to target specific resources during an update, we\nuse the list of targets to decide which steps to generate given a set of\nresource registrations. Specifically:\n\n* If the registration event names a resource that is targeted, we\nprocess it as usual.\n* If the registration event names a resource that _is not_ targeted, we\nemit a `SameStep` for it.\n\nIn the latter case, the emission of a `SameStep` means that the old\nstate for the resource will be copied across to the new state. This is\nthe desired behaviour -- the resource was not targeted and so the new\nstate should contain the resource exactly as it was prior to the update.\nHowever, this presents a problem if the old state has references to\nresources that either will not appear in the new state, or will appear\nin the wrong place. Consider the following program in TypeScript-esque\npseudocode:\n\n```typescript\nconst a = new Resource(\"a\")\nconst b = new Resource(\"b\", { dependency: a })\nconst c = new Resource(\"c\")\n```\n\nHere, `b` depends on `a`, while `a` and `c` have no dependencies. We run\nthis program without specifying targets and obtain a state containing\n`a`, `b` and `c`, with `a` appearing before `b` due to `b`'s dependency\non `a`. We now modify the program as follows:\n\n```typescript\nconst b = new Resource(\"b\")\nconst c = new Resource(\"c\")\n```\n\n`a` has been removed from the program and consequently `b` no longer\ndepends on it. We once more run the program, this time with a `--target`\nof `c`. That is to say, neither `a` nor `b` is targeted. The execution\nproceeds as follows:\n\n* `a` is not in the program, so no `RegisterResourceEvent` will be\nemitted and processed for it.\n* `b` is in the program, but it is not targeted. Its\n`RegisterResourceEvent` will be turned into a `SameStep` and `b`'s _old\nstate will be copied as-is to the new state_.\n* `c` is in the program and is targeted. It will be processed as normal.\n\nAt the end of execution when we come to write the snapshot, we take the\nfollowing actions:\n\n* We first write the processed resources: `b`'s old state and `c`'s new\nstate.\n* We then copy over any unprocessed resources from the base (previous)\nsnapshot. This includes `a` (which is again desirable since its deletion\nshould not be processed due to it not being targeted).\n\nOur snapshot is now not topologically sorted and thus invalid: `b` has a\ndependency on `a`, but `a` appears after it. Presently this bug will\nmanifest irrespective of the nature of the dependency: `.Dependencies`,\n`.PropertyDependencies` and `.DeletedWith` are all affected.\n\nThis commit fixes this issue by traversing all untargeted resource\ndependency relationships and ensuring that `SameStep`s (or better if\nthey have been targeted) are emitted before emitting the depending\nresource's `SameStep`.\n\n* Fixes #16052 \n* Fixes #15959","shortMessageHtmlLink":"Propagate deleted dependencies of untargeted resources (#16247)"}},{"before":"e8090b6bab40c3d1f6c0fffedfe2f963cec0ac19","after":"537cac90977ab2d316ff8d1cbb75d84d0071e15f","ref":"refs/heads/julienp/poetry","pushedAt":"2024-05-23T09:53:23.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"julienp","name":"Julien P","path":"/julienp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/387068?s=80&v=4"},"commit":{"message":"WIP","shortMessageHtmlLink":"WIP"}},{"before":"a10b772d1668ab1d42593a9470658841814b5021","after":"e8090b6bab40c3d1f6c0fffedfe2f963cec0ac19","ref":"refs/heads/julienp/poetry","pushedAt":"2024-05-23T09:38:39.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"julienp","name":"Julien P","path":"/julienp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/387068?s=80&v=4"},"commit":{"message":"WIP","shortMessageHtmlLink":"WIP"}},{"before":"d0ce289b9456474c07a347c459420a656cf79582","after":null,"ref":"refs/heads/julienp/py-output-static-typevar","pushedAt":"2024-05-23T09:35:42.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"julienp","name":"Julien P","path":"/julienp","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/387068?s=80&v=4"}},{"before":"9f6c5208a87051bddd587b66dce30b0f989f07af","after":null,"ref":"refs/heads/gh-readonly-queue/master/pr-16172-9eb49a281820b56144d01ce76fcd3ab068489a5e","pushedAt":"2024-05-23T09:35:41.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"}},{"before":"9eb49a281820b56144d01ce76fcd3ab068489a5e","after":"9f6c5208a87051bddd587b66dce30b0f989f07af","ref":"refs/heads/master","pushedAt":"2024-05-23T09:35:40.000Z","pushType":"merge_queue_merge","commitsCount":1,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"Use a separate type variable for static methods on Output (#16172)\n\n\n\n# Description\n\nPyright >= 1.1.354 assumes the typevar is Unknown if the generic class\nthat holds the staticmethods has no default type parameter, however in\nour case the staticmethods have no link to the class's typevar.\n\nFixes https://github.com/pulumi/pulumi/issues/15914\nFixes https://github.com/pulumi/pulumi/issues/16194\n\n## Checklist\n\n- [ ] I have run `make tidy` to update any new dependencies\n- [ ] I have run `make lint` to verify my code passes the lint check\n - [ ] I have formatted my code using `gofumpt`\n\n\n- [ ] I have added tests that prove my fix is effective or that my\nfeature works\n\n- [ ] I have run `make changelog` and committed the\n`changelog/pending/` documenting my change\n\n- [ ] Yes, there are changes in this PR that warrants bumping the Pulumi\nCloud API version\n","shortMessageHtmlLink":"Use a separate type variable for static methods on Output (#16172)"}},{"before":"b9355be45826ad5b8cc1906e9a3e153f2d071deb","after":"d7a70017739b14b7e7abf57ca9f8df49821ce0f8","ref":"refs/heads/untargeted-dependencies","pushedAt":"2024-05-23T09:13:07.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"lunaris","name":"Will Jones","path":"/lunaris","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/163793?s=80&v=4"},"commit":{"message":"Propagate deleted dependencies of untargeted resources\n\nWhen using `--target` to target specific resources during an update, we\nuse the list of targets to decide which steps to generate given a set of\nresource registrations. Specifically:\n\n* If the registration event names a resource that is targeted, we\n process it as usual.\n* If the registration event names a resource that _is not_ targeted, we\n emit a `SameStep` for it.\n\nIn the latter case, the emission of a `SameStep` means that the old\nstate for the resource will be copied across to the new state. This is\nthe desired behaviour -- the resource was not targeted and so the new\nstate should contain the resource exactly as it was prior to the update.\nHowever, this presents a problem if the old state has references to\nresources that either will not appear in the new state, or will appear\nin the wrong place. Consider the following program in TypeScript-esque\npseudocode:\n\n```typescript\nconst a = new Resource(\"a\")\nconst b = new Resource(\"b\", { dependency: a })\nconst c = new Resource(\"c\")\n```\n\nHere, `b` depends on `a`, while `a` and `c` have no dependencies. We run\nthis program without specifying targets and obtain a state containing\n`a`, `b` and `c`, with `a` appearing before `b` due to `b`'s dependency\non `a`. We now modify the program as follows:\n\n```typescript\nconst b = new Resource(\"b\")\nconst c = new Resource(\"c\")\n```\n\n`a` has been removed from the program and consequently `b` no longer\ndepends on it. We once more run the program, this time with a `--target`\nof `c`. That is to say, neither `a` nor `b` is targeted. The execution\nproceeds as follows:\n\n* `a` is not in the program, so no `RegisterResourceEvent` will be\n emitted and processed for it.\n* `b` is in the program, but it is not targeted. Its\n `RegisterResourceEvent` will be turned into a `SameStep` and `b`'s\n _old state will be copied as-is to the new state_.\n* `c` is in the program and is targeted. It will be processed as normal.\n\nAt the end of execution when we come to write the snapshot, we take the\nfollowing actions:\n\n* We first write the processed resources: `b`'s old state and `c`'s new\n state.\n* We then copy over any unprocessed resources from the base (previous)\n snapshot. This includes `a` (which is again desirable since its\n deletion should not be processed due to it not being targeted).\n\nOur snapshot is now not topologically sorted and thus invalid: `b` has a\ndependency on `a`, but `a` appears after it. Presently this bug will\nmanifest irrespective of the nature of the dependency: `.Dependencies`,\n`.PropertyDependencies` and `.DeletedWith` are all affected.\n\nThis commit fixes this issue by traversing all untargeted resource\ndependency relationships and ensuring that `SameStep`s (or better if\nthey have been targeted) are emitted before emitting the depending\nresource's `SameStep`.","shortMessageHtmlLink":"Propagate deleted dependencies of untargeted resources"}},{"before":"4451116c96cb25fde2fb102f079b534e0649b510","after":"ab691c3b521ae385e2a051f4506e0fa47cdbf0df","ref":"refs/heads/tg/default-providers-take-2","pushedAt":"2024-05-23T09:02:12.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tgummerer","name":"Thomas Gummerer","path":"/tgummerer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/191004?s=80&v=4"},"commit":{"message":"implement programmatic default providers based on context in the engine and Go\n\nThis PR takes an alternative approach for implementing programmatic\ndefault providers, that was suggested in the internal design doc.\n\nInstead of making the default provider global, we create an API with a\ncallback that creates a new subcontext. In that subcontext and only\nin that subcontext is the provider set as the default provider. We\nachieve this by setting up a new monitor with a different port, so the\nengine can distinguish between the contexts.","shortMessageHtmlLink":"implement programmatic default providers based on context in the engi…"}},{"before":null,"after":"9f6c5208a87051bddd587b66dce30b0f989f07af","ref":"refs/heads/gh-readonly-queue/master/pr-16172-9eb49a281820b56144d01ce76fcd3ab068489a5e","pushedAt":"2024-05-23T08:49:52.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"Use a separate type variable for static methods on Output (#16172)\n\n\n\n# Description\n\nPyright >= 1.1.354 assumes the typevar is Unknown if the generic class\nthat holds the staticmethods has no default type parameter, however in\nour case the staticmethods have no link to the class's typevar.\n\nFixes https://github.com/pulumi/pulumi/issues/15914\nFixes https://github.com/pulumi/pulumi/issues/16194\n\n## Checklist\n\n- [ ] I have run `make tidy` to update any new dependencies\n- [ ] I have run `make lint` to verify my code passes the lint check\n - [ ] I have formatted my code using `gofumpt`\n\n\n- [ ] I have added tests that prove my fix is effective or that my\nfeature works\n\n- [ ] I have run `make changelog` and committed the\n`changelog/pending/` documenting my change\n\n- [ ] Yes, there are changes in this PR that warrants bumping the Pulumi\nCloud API version\n","shortMessageHtmlLink":"Use a separate type variable for static methods on Output (#16172)"}},{"before":"fb119bf7877dd6817be8812f31aaa44a12cb59a3","after":null,"ref":"refs/heads/fraser/registerProvider","pushedAt":"2024-05-23T07:36:10.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"Frassle","name":"Fraser Waters","path":"/Frassle","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1398274?s=80&v=4"}},{"before":"9eb49a281820b56144d01ce76fcd3ab068489a5e","after":null,"ref":"refs/heads/gh-readonly-queue/master/pr-16241-fe03af2bd57956c1605fad985e7c3c0c4a7ce855","pushedAt":"2024-05-23T07:36:09.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"}},{"before":"fe03af2bd57956c1605fad985e7c3c0c4a7ce855","after":"9eb49a281820b56144d01ce76fcd3ab068489a5e","ref":"refs/heads/master","pushedAt":"2024-05-23T07:36:08.000Z","pushType":"merge_queue_merge","commitsCount":1,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"RegisterProvider engine work (#16241)\n\n\n\n# Description\n\n\n\nThis adds support for a `RegisterProvider` method to the engine. This\nallows an SDK process to send the information for a package (name,\nversion, url, etc, and parameter in the future) and get back a UUID for\nthat run of the engine that can be used to re-lookup that information.\n\nThat allows the SDK to just send the `provider` field in\n`RegisterResourceRequest` instead of filling in `version`,\n`pluginDownloadURL` etc (and importantly not having to fill in\n`parameter` for parameterised providers, which could be a large amount\nof data).\n\nThis doesn't update any of the SDKs to yet use this method. We can do\nthat piecemeal, but it will require core sdk and codegen changes for\neach language.\n\n## Checklist\n\n- [x] I have run `make tidy` to update any new dependencies\n- [x] I have run `make lint` to verify my code passes the lint check\n - [x] I have formatted my code using `gofumpt`\n\n\n- [x] I have added tests that prove my fix is effective or that my\nfeature works\n\n- [ ] I have run `make changelog` and committed the\n`changelog/pending/` documenting my change\n\n- [ ] Yes, there are changes in this PR that warrants bumping the Pulumi\nCloud API version\n","shortMessageHtmlLink":"RegisterProvider engine work (#16241)"}},{"before":null,"after":"9eb49a281820b56144d01ce76fcd3ab068489a5e","ref":"refs/heads/gh-readonly-queue/master/pr-16241-fe03af2bd57956c1605fad985e7c3c0c4a7ce855","pushedAt":"2024-05-23T06:17:15.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"RegisterProvider engine work (#16241)\n\n\n\n# Description\n\n\n\nThis adds support for a `RegisterProvider` method to the engine. This\nallows an SDK process to send the information for a package (name,\nversion, url, etc, and parameter in the future) and get back a UUID for\nthat run of the engine that can be used to re-lookup that information.\n\nThat allows the SDK to just send the `provider` field in\n`RegisterResourceRequest` instead of filling in `version`,\n`pluginDownloadURL` etc (and importantly not having to fill in\n`parameter` for parameterised providers, which could be a large amount\nof data).\n\nThis doesn't update any of the SDKs to yet use this method. We can do\nthat piecemeal, but it will require core sdk and codegen changes for\neach language.\n\n## Checklist\n\n- [x] I have run `make tidy` to update any new dependencies\n- [x] I have run `make lint` to verify my code passes the lint check\n - [x] I have formatted my code using `gofumpt`\n\n\n- [x] I have added tests that prove my fix is effective or that my\nfeature works\n\n- [ ] I have run `make changelog` and committed the\n`changelog/pending/` documenting my change\n\n- [ ] Yes, there are changes in this PR that warrants bumping the Pulumi\nCloud API version\n","shortMessageHtmlLink":"RegisterProvider engine work (#16241)"}},{"before":"825beea59e39a176263a9b32d7c20392118f360d","after":null,"ref":"refs/heads/gh-readonly-queue/master/pr-16241-fe03af2bd57956c1605fad985e7c3c0c4a7ce855","pushedAt":"2024-05-22T19:54:51.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"}},{"before":null,"after":"825beea59e39a176263a9b32d7c20392118f360d","ref":"refs/heads/gh-readonly-queue/master/pr-16241-fe03af2bd57956c1605fad985e7c3c0c4a7ce855","pushedAt":"2024-05-22T19:08:25.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"RegisterProvider engine work (#16241)\n\n\n\n# Description\n\n\n\nThis adds support for a `RegisterProvider` method to the engine. This\nallows an SDK process to send the information for a package (name,\nversion, url, etc, and parameter in the future) and get back a UUID for\nthat run of the engine that can be used to re-lookup that information.\n\nThat allows the SDK to just send the `provider` field in\n`RegisterResourceRequest` instead of filling in `version`,\n`pluginDownloadURL` etc (and importantly not having to fill in\n`parameter` for parameterised providers, which could be a large amount\nof data).\n\nThis doesn't update any of the SDKs to yet use this method. We can do\nthat piecemeal, but it will require core sdk and codegen changes for\neach language.\n\n## Checklist\n\n- [x] I have run `make tidy` to update any new dependencies\n- [x] I have run `make lint` to verify my code passes the lint check\n - [x] I have formatted my code using `gofumpt`\n\n\n- [x] I have added tests that prove my fix is effective or that my\nfeature works\n\n- [ ] I have run `make changelog` and committed the\n`changelog/pending/` documenting my change\n\n- [ ] Yes, there are changes in this PR that warrants bumping the Pulumi\nCloud API version\n","shortMessageHtmlLink":"RegisterProvider engine work (#16241)"}},{"before":"b063a2ecebeaab70ba72bfc3675fd360c40f1729","after":"fb119bf7877dd6817be8812f31aaa44a12cb59a3","ref":"refs/heads/fraser/registerProvider","pushedAt":"2024-05-22T18:37:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Frassle","name":"Fraser Waters","path":"/Frassle","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1398274?s=80&v=4"},"commit":{"message":"RegisterProvider engine work","shortMessageHtmlLink":"RegisterProvider engine work"}},{"before":"1ef0e830ce5def1cde9f8756a70f418f03eb22bf","after":"b9355be45826ad5b8cc1906e9a3e153f2d071deb","ref":"refs/heads/untargeted-dependencies","pushedAt":"2024-05-22T18:05:53.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"lunaris","name":"Will Jones","path":"/lunaris","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/163793?s=80&v=4"},"commit":{"message":"Propagate deleted dependencies of untargeted resources\n\nWhen using `--target` to target specific resources during an update, we\nuse the list of targets to decide which steps to generate given a set of\nresource registrations. Specifically:\n\n* If the registration event names a resource that is targeted, we\n process it as usual.\n* If the registration event names a resource that _is not_ targeted, we\n emit a `SameStep` for it.\n\nIn the latter case, the emission of a `SameStep` means that the old\nstate for the resource will be copied across to the new state. This is\nthe desired behaviour -- the resource was not targeted and so the new\nstate should contain the resource exactly as it was prior to the update.\nHowever, this presents a problem if the old state has references to\nresources that either will not appear in the new state, or will appear\nin the wrong place. Consider the following program in TypeScript-esque\npseudocode:\n\n```typescript\nconst a = new Resource(\"a\")\nconst b = new Resource(\"b\", { dependency: a })\nconst c = new Resource(\"c\")\n```\n\nHere, `b` depends on `a`, while `a` and `c` have no dependencies. We run\nthis program without specifying targets and obtain a state containing\n`a`, `b` and `c`, with `a` appearing before `b` due to `b`'s dependency\non `a`. We now modify the program as follows:\n\n```typescript\nconst b = new Resource(\"b\")\nconst c = new Resource(\"c\")\n```\n\n`a` has been removed from the program and consequently `b` no longer\ndepends on it. We once more run the program, this time with a `--target`\nof `c`. That is to say, neither `a` nor `b` is targeted. The execution\nproceeds as follows:\n\n* `a` is not in the program, so no `RegisterResourceEvent` will be\n emitted and processed for it.\n* `b` is in the program, but it is not targeted. Its\n `RegisterResourceEvent` will be turned into a `SameStep` and `b`'s\n _old state will be copied as-is to the new state_.\n* `c` is in the program and is targeted. It will be processed as normal.\n\nAt the end of execution when we come to write the snapshot, we take the\nfollowing actions:\n\n* We first write the processed resources: `b`'s old state and `c`'s new\n state.\n* We then copy over any unprocessed resources from the base (previous)\n snapshot. This includes `a` (which is again desirable since its\n deletion should not be processed due to it not being targeted).\n\nOur snapshot is now not topologically sorted and thus invalid: `b` has a\ndependency on `a`, but `a` appears after it. Presently this bug will\nmanifest irrespective of the nature of the dependency: `.Dependencies`,\n`.PropertyDependencies` and `.DeletedWith` are all affected.\n\nThis commit fixes this issue by traversing all untargeted resource\ndependency relationships and ensuring that `SameStep`s (or better if\nthey have been targeted) are emitted before emitting the depending\nresource's `SameStep`.","shortMessageHtmlLink":"Propagate deleted dependencies of untargeted resources"}},{"before":"e7359c9ab69cec40d789248399d89fa0cad4705c","after":null,"ref":"refs/heads/gh-readonly-queue/master/pr-16172-fe03af2bd57956c1605fad985e7c3c0c4a7ce855","pushedAt":"2024-05-22T16:47:50.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"}},{"before":null,"after":"e7359c9ab69cec40d789248399d89fa0cad4705c","ref":"refs/heads/gh-readonly-queue/master/pr-16172-fe03af2bd57956c1605fad985e7c3c0c4a7ce855","pushedAt":"2024-05-22T15:50:54.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"Use a separate type variable for static methods on Output (#16172)\n\n\n\n# Description\n\nPyright >= 1.1.354 assumes the typevar is Unknown if the generic class\nthat holds the staticmethods has no default type parameter, however in\nour case the staticmethods have no link to the class's typevar.\n\nFixes https://github.com/pulumi/pulumi/issues/15914\nFixes https://github.com/pulumi/pulumi/issues/16194\n\n## Checklist\n\n- [ ] I have run `make tidy` to update any new dependencies\n- [ ] I have run `make lint` to verify my code passes the lint check\n - [ ] I have formatted my code using `gofumpt`\n\n\n- [ ] I have added tests that prove my fix is effective or that my\nfeature works\n\n- [ ] I have run `make changelog` and committed the\n`changelog/pending/` documenting my change\n\n- [ ] Yes, there are changes in this PR that warrants bumping the Pulumi\nCloud API version\n","shortMessageHtmlLink":"Use a separate type variable for static methods on Output (#16172)"}},{"before":"fe03af2bd57956c1605fad985e7c3c0c4a7ce855","after":null,"ref":"refs/heads/gh-readonly-queue/master/pr-16249-769428f395084f5b9a67ea9623d526b380d4c0b6","pushedAt":"2024-05-22T15:18:56.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEUm9njwA","startCursor":null,"endCursor":null}},"title":"Activity · pulumi/pulumi"}