-
Notifications
You must be signed in to change notification settings - Fork 18k
x/tools/gopls: support renaming a package #41567
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
There is some tips to implement this? I think that this could be super useful and I would like to implements. I think that the implementation should be in qualifiedObjsAtProtocolPos function, I'm in the right way? |
@msAlcantara: Thanks for your interest! I think this is slightly more complicated than that because the package name declaration does not have a |
Thanks very much for your awnser, but I have some question about it.
Sorry is this questions is too dump, I'm a just getting started with gopls source code and I'm trying to understand |
Please don't apologize--this is a tricky issue! I think the easiest thing would be to do something like |
Should an implementation for this also rename the directory and the package comment? And if "yes", is this still possible by looking at the position in the AST? What would happen if the |
Hi I think this is something that @dle8 might look into.
IMO yes it should do both (note that LSP supports renaming files via TextDocumentEdits, so I think this should be possible). To start we can implement |
Right now our protocol package only supports DocumentChanges that are It's probably also worth researching exactly how well supported renaming files is among LSP clients, as I can imaging this might be a tricky operation. |
Change https://go.dev/cl/408714 mentions this issue: |
Update References to detect if the package is referenced and a regtest to test within and external package references. Updates golang/go#41567 Change-Id: I607a47bf15f1c9f8236336f795fcef081db49d6a Reviewed-on: https://go-review.googlesource.com/c/tools/+/408714 Reviewed-by: Robert Findley <[email protected]> Run-TryBot: Dylan Le <[email protected]> gopls-CI: kokoro <[email protected]>
Change https://go.dev/cl/418535 mentions this issue: |
Change https://go.dev/cl/419107 mentions this issue: |
Change https://go.dev/cl/420219 mentions this issue: |
This CL contains a partial implementation of package renaming. Currently gopls is only able to rename references to the renaming package within the renaming package itself. prepareRename is still expected to return an error for renaming a package. For golang/go#41567 Change-Id: I3683a0a7128bba7620ef30db528f45b753e6c08f Reviewed-on: https://go-review.googlesource.com/c/tools/+/420219 Reviewed-by: Robert Findley <[email protected]> TryBot-Result: Gopher Robot <[email protected]> Run-TryBot: Dylan Le <[email protected]>
Change https://go.dev/cl/427538 mentions this issue: |
Change DocumentChanges field type from []TextDocumentEdit to []DocumentChanges. DocumentChanges is a union type of TextDocumentEdit and RenameFile used for renaming package feature. It distinguishes a renaming directory ops from a text document edit ops. For golang/go#41567 Change-Id: I25d106b34821effc53b712800f7175248e59ee25 Reviewed-on: https://go-review.googlesource.com/c/tools/+/427538 gopls-CI: kokoro <[email protected]> Run-TryBot: Dylan Le <[email protected]> Reviewed-by: Robert Findley <[email protected]> TryBot-Result: Gopher Robot <[email protected]>
Change https://go.dev/cl/427903 mentions this issue: |
This CL implements the fake.Editor.RenameFile method, which mimic's the behavior of VS Code when renaming files. Specifically: - open buffers affected by the renaming are closed, and then reopened with new URIs - files are moved on disk - didChangeWatchedFile notifications are sent Along the way, add missing comments and fix one place where the editor mutex was held while sending notifications (in Editor.CreateBuffer). Generally, the editor should not hold any mutex while making a remote call. For golang/go#41567 Change-Id: I2abfa846e923de566a21c096502a68f125e7e671 Reviewed-on: https://go-review.googlesource.com/c/tools/+/427903 Auto-Submit: Robert Findley <[email protected]> Reviewed-by: Alan Donovan <[email protected]> Run-TryBot: Robert Findley <[email protected]> TryBot-Result: Gopher Robot <[email protected]>
The initial version of this was implemented in CL 420958, though there are several improvements yet to land. |
This is awesome. Thanks! |
Change https://go.dev/cl/443637 mentions this issue: |
We need to search intermediate test variants to find all imports of a renamed package, but were missing them because we only considered "active packages". Fix this by building up the set of renamed packages based on metadata alone: it is unnecessary and potentially too costly to request all (typechecked) known packages, when we only need access to the metadata graph to determine which packages must be renamed. In doing so, it becomes possible that we produce duplicate edits by renaming through a test variant. Avoid this by keeping track of import path changes that we have already processed. While at it, add a few more checks for package renaming: - check for valid identifiers - disallow renaming x_test packages - disallow renaming to x_test packages Also refactor package renaming slightly to pass around an edit map. This fixes a bug where nested import paths were not renamed in the original renaming package. Fix some testing bugs that were exercised by new tests. For golang/go#41567 Change-Id: I18ab442b33a3ee5bf527f078dcaa81d47f0220c7 Reviewed-on: https://go-review.googlesource.com/c/tools/+/443637 Reviewed-by: Dylan Le <[email protected]> gopls-CI: kokoro <[email protected]> TryBot-Result: Gopher Robot <[email protected]> Run-TryBot: Robert Findley <[email protected]> Reviewed-by: Alan Donovan <[email protected]>
Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.9.3 to 0.10.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/golang/tools/releases">golang.org/x/tools's releases</a>.</em></p> <blockquote> <h2>gopls/v0.10.0</h2> <p>This release contains initial support for standalone packages and package renaming. Please see below for more details.</p> <p>We are also changing our release policy to better align with semver.</p> <h2>Support changes</h2> <p>This version of gopls contains changes to our release policy, deprecates support for some older Go versions, and deprecates support for several experimental features.</p> <h3>New release policy</h3> <p>As described in <a href="https://redirect.github.com/golang/go/issues/55267">golang/go#55267</a>, we are tightening our release policy to better follow semver, increase stability, and reduce release-related toil. Significant new features will only be introduced in <code>*.*.0</code> patch versions, and subsequent patch releases will consist only of bugfixes. For example, this version (v0.10.0) introduces several new features, described below. Subsequent v0.10.* releases will contain only bugfixes.</p> <h3>Final support for Go 1.13-1.15</h3> <p>Consistent with the above release policy and our stated <a href="https://github.com/golang/tools/tree/master/gopls#supported-go-versions-and-build-systems">support window</a>, the <code>v0.10.*</code> minor version will be the final set of releases to support being used with Go 1.13-1.15. See <a href="https://redirect.github.com/golang/go/issues/52982">golang/go#52982</a> for details.</p> <p>Gopls will pop up a warning if it resolves a version of the <code>go</code> command that is older than 1.16. Starting with [email protected], gopls will cease to function when used with a <code>go</code> command with a version older than 1.16.</p> <h3>Deprecated experimental features</h3> <p>The following experimental features are deprecated, and will be removed in [email protected]:</p> <ul> <li><strong>experimentalWorkspaceModule</strong><code>golang/go#52897</code><code>go.work</code> files. See our <a href="https://github.com/golang/tools/blob/master/gopls/doc/workspace.md#go-workspaces-go-118">documentation</a> for information on how to use <code>go.work</code> files to work on multiple modules.</li> <li><strong>experimentalWatchedFileDelay</strong><code>golang/go#55268</code><code>workspace/didChangeWatchedFiles</code> notifications.</li> <li><strong>experimentalUseInvalidMetadata</strong><code>golang/go#54180</code></li> </ul> <h2>New Features</h2> <h3>Support for "standalone packages"</h3> <p>Gopls now recognizes certain files as "standalone main packages", meaning they should be interpreted as main packages consisting of a single file. To do this, gopls looks for packages named <code>main</code> containing a single build constraint that matches one of the tags configured by the new <a href="https://github.com/golang/tools/blob/master/gopls/doc/settings.md#standalonetags-string"><code>standaloneTags</code></a> setting.</p> <p>This enables cross references and other features when working in a file such as the example below that contains a <code>//go:build ignore</code> build constraint.</p> <p><img src="https://user-images.githubusercontent.com/57144380/197039428-72d78300-cbea-4abe-a408-e171991094b8.png" alt="image" /></p> <h3>(preview) Support for package renaming</h3> <p><code>golang/go#41567</code><a href="https://redirect.github.com/golang/go/issues/56184">golang/go#56184</a>.</p> <p>To rename a package, initiate a rename request on the package clause of a file in the package: <img src="https://user-images.githubusercontent.com/57144380/197041786-bf9e617c-9961-46ae-b21a-c240a18a3014.png" alt="image" /></p> <p>When this renaming is applied, gopls will adjust other package files accordingly, rename the package directory, and update import paths referencing the current package or any nested package in the renamed directory. <img src="https://user-images.githubusercontent.com/57144380/197042160-e034e38d-3cd3-4c62-b912-747d8dc2f4ff.png" alt="image" /></p> <h3>Method information in hover</h3> <p>Hovering over a type now shows a summary of its methods.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/golang/tools/commit/7261b3269227f2c7636f7d4316ed3dd5122d17ff"><code>7261b32</code></a> gopls/internal/regtest: fix goimports on windows when using vendoring</li> <li><a href="https://github.com/golang/tools/commit/41e4e565498859435a2ad44a71cf6701a6afb585"><code>41e4e56</code></a> gopls/internal/lsp/source/completion: ensuring completion completeness</li> <li><a href="https://github.com/golang/tools/commit/ac2946029ad3806349fa00546449da9f59320e89"><code>ac29460</code></a> go/ssa: fix bug in writeSignature on external functions</li> <li><a href="https://github.com/golang/tools/commit/3b62e7e25641fc2dabe915a738906d0779724bf1"><code>3b62e7e</code></a> go/ssa: use core type within (*builder).receiver</li> <li><a href="https://github.com/golang/tools/commit/f394d451f85a030254df453bf84a450b228c4250"><code>f394d45</code></a> gopls/internal/lsp/cache: compute xrefs and methodsets asynchronously</li> <li><a href="https://github.com/golang/tools/commit/27dbf85279a5e6e906a8c1b5cc5b73e8229a8efa"><code>27dbf85</code></a> go.mod: update golang.org/x dependencies</li> <li><a href="https://github.com/golang/tools/commit/c6c983054920f47ed9e5ba1b55a7a5934dd8bf53"><code>c6c9830</code></a> go/types/objectpath: memoize scope lookup in objectpath.Encoder</li> <li><a href="https://github.com/golang/tools/commit/0245e1dfc6b09a30ad018bdcdadef4961067cfd4"><code>0245e1d</code></a> gopls/internal/regtest/codelens: set GOWORK=off for go mod vendor</li> <li><a href="https://github.com/golang/tools/commit/85be8882c905a9b24abcec8363e48a14ad5cd4e2"><code>85be888</code></a> go/analysis/passes/defers: add analyser for defer mistake</li> <li><a href="https://github.com/golang/tools/commit/c43232f868439dcfd25d98501dafa5e695cd1d35"><code>c43232f</code></a> cmd/digraph: improve examples using go list, mod</li> <li>Additional commits viewable in <a href="https://github.com/golang/tools/compare/v0.9.3...v0.10.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.9.3 to 0.10.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/golang/tools/releases">golang.org/x/tools's releases</a>.</em></p> <blockquote> <h2>gopls/v0.10.0</h2> <p>This release contains initial support for standalone packages and package renaming. Please see below for more details.</p> <p>We are also changing our release policy to better align with semver.</p> <h2>Support changes</h2> <p>This version of gopls contains changes to our release policy, deprecates support for some older Go versions, and deprecates support for several experimental features.</p> <h3>New release policy</h3> <p>As described in <a href="https://redirect.github.com/golang/go/issues/55267">golang/go#55267</a>, we are tightening our release policy to better follow semver, increase stability, and reduce release-related toil. Significant new features will only be introduced in <code>*.*.0</code> patch versions, and subsequent patch releases will consist only of bugfixes. For example, this version (v0.10.0) introduces several new features, described below. Subsequent v0.10.* releases will contain only bugfixes.</p> <h3>Final support for Go 1.13-1.15</h3> <p>Consistent with the above release policy and our stated <a href="https://github.com/golang/tools/tree/master/gopls#supported-go-versions-and-build-systems">support window</a>, the <code>v0.10.*</code> minor version will be the final set of releases to support being used with Go 1.13-1.15. See <a href="https://redirect.github.com/golang/go/issues/52982">golang/go#52982</a> for details.</p> <p>Gopls will pop up a warning if it resolves a version of the <code>go</code> command that is older than 1.16. Starting with [email protected], gopls will cease to function when used with a <code>go</code> command with a version older than 1.16.</p> <h3>Deprecated experimental features</h3> <p>The following experimental features are deprecated, and will be removed in [email protected]:</p> <ul> <li><strong>experimentalWorkspaceModule</strong><code>golang/go#52897</code><code>go.work</code> files. See our <a href="https://github.com/golang/tools/blob/master/gopls/doc/workspace.md#go-workspaces-go-118">documentation</a> for information on how to use <code>go.work</code> files to work on multiple modules.</li> <li><strong>experimentalWatchedFileDelay</strong><code>golang/go#55268</code><code>workspace/didChangeWatchedFiles</code> notifications.</li> <li><strong>experimentalUseInvalidMetadata</strong><code>golang/go#54180</code></li> </ul> <h2>New Features</h2> <h3>Support for "standalone packages"</h3> <p>Gopls now recognizes certain files as "standalone main packages", meaning they should be interpreted as main packages consisting of a single file. To do this, gopls looks for packages named <code>main</code> containing a single build constraint that matches one of the tags configured by the new <a href="https://github.com/golang/tools/blob/master/gopls/doc/settings.md#standalonetags-string"><code>standaloneTags</code></a> setting.</p> <p>This enables cross references and other features when working in a file such as the example below that contains a <code>//go:build ignore</code> build constraint.</p> <p><img src="https://user-images.githubusercontent.com/57144380/197039428-72d78300-cbea-4abe-a408-e171991094b8.png" alt="image" /></p> <h3>(preview) Support for package renaming</h3> <p><code>golang/go#41567</code><a href="https://redirect.github.com/golang/go/issues/56184">golang/go#56184</a>.</p> <p>To rename a package, initiate a rename request on the package clause of a file in the package: <img src="https://user-images.githubusercontent.com/57144380/197041786-bf9e617c-9961-46ae-b21a-c240a18a3014.png" alt="image" /></p> <p>When this renaming is applied, gopls will adjust other package files accordingly, rename the package directory, and update import paths referencing the current package or any nested package in the renamed directory. <img src="https://user-images.githubusercontent.com/57144380/197042160-e034e38d-3cd3-4c62-b912-747d8dc2f4ff.png" alt="image" /></p> <h3>Method information in hover</h3> <p>Hovering over a type now shows a summary of its methods.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/golang/tools/commit/7261b3269227f2c7636f7d4316ed3dd5122d17ff"><code>7261b32</code></a> gopls/internal/regtest: fix goimports on windows when using vendoring</li> <li><a href="https://github.com/golang/tools/commit/41e4e565498859435a2ad44a71cf6701a6afb585"><code>41e4e56</code></a> gopls/internal/lsp/source/completion: ensuring completion completeness</li> <li><a href="https://github.com/golang/tools/commit/ac2946029ad3806349fa00546449da9f59320e89"><code>ac29460</code></a> go/ssa: fix bug in writeSignature on external functions</li> <li><a href="https://github.com/golang/tools/commit/3b62e7e25641fc2dabe915a738906d0779724bf1"><code>3b62e7e</code></a> go/ssa: use core type within (*builder).receiver</li> <li><a href="https://github.com/golang/tools/commit/f394d451f85a030254df453bf84a450b228c4250"><code>f394d45</code></a> gopls/internal/lsp/cache: compute xrefs and methodsets asynchronously</li> <li><a href="https://github.com/golang/tools/commit/27dbf85279a5e6e906a8c1b5cc5b73e8229a8efa"><code>27dbf85</code></a> go.mod: update golang.org/x dependencies</li> <li><a href="https://github.com/golang/tools/commit/c6c983054920f47ed9e5ba1b55a7a5934dd8bf53"><code>c6c9830</code></a> go/types/objectpath: memoize scope lookup in objectpath.Encoder</li> <li><a href="https://github.com/golang/tools/commit/0245e1dfc6b09a30ad018bdcdadef4961067cfd4"><code>0245e1d</code></a> gopls/internal/regtest/codelens: set GOWORK=off for go mod vendor</li> <li><a href="https://github.com/golang/tools/commit/85be8882c905a9b24abcec8363e48a14ad5cd4e2"><code>85be888</code></a> go/analysis/passes/defers: add analyser for defer mistake</li> <li><a href="https://github.com/golang/tools/commit/c43232f868439dcfd25d98501dafa5e695cd1d35"><code>c43232f</code></a> cmd/digraph: improve examples using go list, mod</li> <li>Additional commits viewable in <a href="https://github.com/golang/tools/compare/v0.9.3...v0.10.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) You can trigger a rebase of this PR by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details>
…s/@jsii/go-runtime-test/project (#4151) Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.9.3 to 0.10.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/golang/tools/releases">golang.org/x/tools's releases</a>.</em></p> <blockquote> <h2>gopls/v0.10.0</h2> <p>This release contains initial support for standalone packages and package renaming. Please see below for more details.</p> <p>We are also changing our release policy to better align with semver.</p> <h2>Support changes</h2> <p>This version of gopls contains changes to our release policy, deprecates support for some older Go versions, and deprecates support for several experimental features.</p> <h3>New release policy</h3> <p>As described in <a href="https://redirect.github.com/golang/go/issues/55267">golang/go#55267</a>, we are tightening our release policy to better follow semver, increase stability, and reduce release-related toil. Significant new features will only be introduced in <code>*.*.0</code> patch versions, and subsequent patch releases will consist only of bugfixes. For example, this version (v0.10.0) introduces several new features, described below. Subsequent v0.10.* releases will contain only bugfixes.</p> <h3>Final support for Go 1.13-1.15</h3> <p>Consistent with the above release policy and our stated <a href="https://github.com/golang/tools/tree/master/gopls#supported-go-versions-and-build-systems">support window</a>, the <code>v0.10.*</code> minor version will be the final set of releases to support being used with Go 1.13-1.15. See <a href="https://redirect.github.com/golang/go/issues/52982">golang/go#52982</a> for details.</p> <p>Gopls will pop up a warning if it resolves a version of the <code>go</code> command that is older than 1.16. Starting with [email protected], gopls will cease to function when used with a <code>go</code> command with a version older than 1.16.</p> <h3>Deprecated experimental features</h3> <p>The following experimental features are deprecated, and will be removed in [email protected]:</p> <ul> <li><strong>experimentalWorkspaceModule</strong><code>golang/go#52897</code><code>go.work</code> files. See our <a href="https://github.com/golang/tools/blob/master/gopls/doc/workspace.md#go-workspaces-go-118">documentation</a> for information on how to use <code>go.work</code> files to work on multiple modules.</li> <li><strong>experimentalWatchedFileDelay</strong><code>golang/go#55268</code><code>workspace/didChangeWatchedFiles</code> notifications.</li> <li><strong>experimentalUseInvalidMetadata</strong><code>golang/go#54180</code></li> </ul> <h2>New Features</h2> <h3>Support for "standalone packages"</h3> <p>Gopls now recognizes certain files as "standalone main packages", meaning they should be interpreted as main packages consisting of a single file. To do this, gopls looks for packages named <code>main</code> containing a single build constraint that matches one of the tags configured by the new <a href="https://github.com/golang/tools/blob/master/gopls/doc/settings.md#standalonetags-string"><code>standaloneTags</code></a> setting.</p> <p>This enables cross references and other features when working in a file such as the example below that contains a <code>//go:build ignore</code> build constraint.</p> <p><img src="https://user-images.githubusercontent.com/57144380/197039428-72d78300-cbea-4abe-a408-e171991094b8.png" alt="image" /></p> <h3>(preview) Support for package renaming</h3> <p><code>golang/go#41567</code><a href="https://redirect.github.com/golang/go/issues/56184">golang/go#56184</a>.</p> <p>To rename a package, initiate a rename request on the package clause of a file in the package: <img src="https://user-images.githubusercontent.com/57144380/197041786-bf9e617c-9961-46ae-b21a-c240a18a3014.png" alt="image" /></p> <p>When this renaming is applied, gopls will adjust other package files accordingly, rename the package directory, and update import paths referencing the current package or any nested package in the renamed directory. <img src="https://user-images.githubusercontent.com/57144380/197042160-e034e38d-3cd3-4c62-b912-747d8dc2f4ff.png" alt="image" /></p> <h3>Method information in hover</h3> <p>Hovering over a type now shows a summary of its methods.</p> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/golang/tools/commit/7261b3269227f2c7636f7d4316ed3dd5122d17ff"><code>7261b32</code></a> gopls/internal/regtest: fix goimports on windows when using vendoring</li> <li><a href="https://github.com/golang/tools/commit/41e4e565498859435a2ad44a71cf6701a6afb585"><code>41e4e56</code></a> gopls/internal/lsp/source/completion: ensuring completion completeness</li> <li><a href="https://github.com/golang/tools/commit/ac2946029ad3806349fa00546449da9f59320e89"><code>ac29460</code></a> go/ssa: fix bug in writeSignature on external functions</li> <li><a href="https://github.com/golang/tools/commit/3b62e7e25641fc2dabe915a738906d0779724bf1"><code>3b62e7e</code></a> go/ssa: use core type within (*builder).receiver</li> <li><a href="https://github.com/golang/tools/commit/f394d451f85a030254df453bf84a450b228c4250"><code>f394d45</code></a> gopls/internal/lsp/cache: compute xrefs and methodsets asynchronously</li> <li><a href="https://github.com/golang/tools/commit/27dbf85279a5e6e906a8c1b5cc5b73e8229a8efa"><code>27dbf85</code></a> go.mod: update golang.org/x dependencies</li> <li><a href="https://github.com/golang/tools/commit/c6c983054920f47ed9e5ba1b55a7a5934dd8bf53"><code>c6c9830</code></a> go/types/objectpath: memoize scope lookup in objectpath.Encoder</li> <li><a href="https://github.com/golang/tools/commit/0245e1dfc6b09a30ad018bdcdadef4961067cfd4"><code>0245e1d</code></a> gopls/internal/regtest/codelens: set GOWORK=off for go mod vendor</li> <li><a href="https://github.com/golang/tools/commit/85be8882c905a9b24abcec8363e48a14ad5cd4e2"><code>85be888</code></a> go/analysis/passes/defers: add analyser for defer mistake</li> <li><a href="https://github.com/golang/tools/commit/c43232f868439dcfd25d98501dafa5e695cd1d35"><code>c43232f</code></a> cmd/digraph: improve examples using go list, mod</li> <li>Additional commits viewable in <a href="https://github.com/golang/tools/compare/v0.9.3...v0.10.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details>
…s/@jsii/go-runtime/jsii-runtime-go (#4150) Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.9.3 to 0.10.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/golang/tools/releases">golang.org/x/tools's releases</a>.</em></p> <blockquote> <h2>gopls/v0.10.0</h2> <p>This release contains initial support for standalone packages and package renaming. Please see below for more details.</p> <p>We are also changing our release policy to better align with semver.</p> <h2>Support changes</h2> <p>This version of gopls contains changes to our release policy, deprecates support for some older Go versions, and deprecates support for several experimental features.</p> <h3>New release policy</h3> <p>As described in <a href="https://redirect.github.com/golang/go/issues/55267">golang/go#55267</a>, we are tightening our release policy to better follow semver, increase stability, and reduce release-related toil. Significant new features will only be introduced in <code>*.*.0</code> patch versions, and subsequent patch releases will consist only of bugfixes. For example, this version (v0.10.0) introduces several new features, described below. Subsequent v0.10.* releases will contain only bugfixes.</p> <h3>Final support for Go 1.13-1.15</h3> <p>Consistent with the above release policy and our stated <a href="https://github.com/golang/tools/tree/master/gopls#supported-go-versions-and-build-systems">support window</a>, the <code>v0.10.*</code> minor version will be the final set of releases to support being used with Go 1.13-1.15. See <a href="https://redirect.github.com/golang/go/issues/52982">golang/go#52982</a> for details.</p> <p>Gopls will pop up a warning if it resolves a version of the <code>go</code> command that is older than 1.16. Starting with [email protected], gopls will cease to function when used with a <code>go</code> command with a version older than 1.16.</p> <h3>Deprecated experimental features</h3> <p>The following experimental features are deprecated, and will be removed in [email protected]:</p> <ul> <li><strong>experimentalWorkspaceModule</strong><code>golang/go#52897</code><code>go.work</code> files. See our <a href="https://github.com/golang/tools/blob/master/gopls/doc/workspace.md#go-workspaces-go-118">documentation</a> for information on how to use <code>go.work</code> files to work on multiple modules.</li> <li><strong>experimentalWatchedFileDelay</strong><code>golang/go#55268</code><code>workspace/didChangeWatchedFiles</code> notifications.</li> <li><strong>experimentalUseInvalidMetadata</strong><code>golang/go#54180</code></li> </ul> <h2>New Features</h2> <h3>Support for "standalone packages"</h3> <p>Gopls now recognizes certain files as "standalone main packages", meaning they should be interpreted as main packages consisting of a single file. To do this, gopls looks for packages named <code>main</code> containing a single build constraint that matches one of the tags configured by the new <a href="https://github.com/golang/tools/blob/master/gopls/doc/settings.md#standalonetags-string"><code>standaloneTags</code></a> setting.</p> <p>This enables cross references and other features when working in a file such as the example below that contains a <code>//go:build ignore</code> build constraint.</p> <p><img src="https://user-images.githubusercontent.com/57144380/197039428-72d78300-cbea-4abe-a408-e171991094b8.png" alt="image" /></p> <h3>(preview) Support for package renaming</h3> <p><code>golang/go#41567</code><a href="https://redirect.github.com/golang/go/issues/56184">golang/go#56184</a>.</p> <p>To rename a package, initiate a rename request on the package clause of a file in the package: <img src="https://user-images.githubusercontent.com/57144380/197041786-bf9e617c-9961-46ae-b21a-c240a18a3014.png" alt="image" /></p> <p>When this renaming is applied, gopls will adjust other package files accordingly, rename the package directory, and update import paths referencing the current package or any nested package in the renamed directory. <img src="https://user-images.githubusercontent.com/57144380/197042160-e034e38d-3cd3-4c62-b912-747d8dc2f4ff.png" alt="image" /></p> <h3>Method information in hover</h3> <p>Hovering over a type now shows a summary of its methods.</p> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/golang/tools/commit/7261b3269227f2c7636f7d4316ed3dd5122d17ff"><code>7261b32</code></a> gopls/internal/regtest: fix goimports on windows when using vendoring</li> <li><a href="https://github.com/golang/tools/commit/41e4e565498859435a2ad44a71cf6701a6afb585"><code>41e4e56</code></a> gopls/internal/lsp/source/completion: ensuring completion completeness</li> <li><a href="https://github.com/golang/tools/commit/ac2946029ad3806349fa00546449da9f59320e89"><code>ac29460</code></a> go/ssa: fix bug in writeSignature on external functions</li> <li><a href="https://github.com/golang/tools/commit/3b62e7e25641fc2dabe915a738906d0779724bf1"><code>3b62e7e</code></a> go/ssa: use core type within (*builder).receiver</li> <li><a href="https://github.com/golang/tools/commit/f394d451f85a030254df453bf84a450b228c4250"><code>f394d45</code></a> gopls/internal/lsp/cache: compute xrefs and methodsets asynchronously</li> <li><a href="https://github.com/golang/tools/commit/27dbf85279a5e6e906a8c1b5cc5b73e8229a8efa"><code>27dbf85</code></a> go.mod: update golang.org/x dependencies</li> <li><a href="https://github.com/golang/tools/commit/c6c983054920f47ed9e5ba1b55a7a5934dd8bf53"><code>c6c9830</code></a> go/types/objectpath: memoize scope lookup in objectpath.Encoder</li> <li><a href="https://github.com/golang/tools/commit/0245e1dfc6b09a30ad018bdcdadef4961067cfd4"><code>0245e1d</code></a> gopls/internal/regtest/codelens: set GOWORK=off for go mod vendor</li> <li><a href="https://github.com/golang/tools/commit/85be8882c905a9b24abcec8363e48a14ad5cd4e2"><code>85be888</code></a> go/analysis/passes/defers: add analyser for defer mistake</li> <li><a href="https://github.com/golang/tools/commit/c43232f868439dcfd25d98501dafa5e695cd1d35"><code>c43232f</code></a> cmd/digraph: improve examples using go list, mod</li> <li>Additional commits viewable in <a href="https://github.com/golang/tools/compare/v0.9.3...v0.10.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details>
Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.9.3 to 0.10.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/golang/tools/releases">golang.org/x/tools's releases</a>.</em></p> <blockquote> <h2>gopls/v0.10.0</h2> <p>This release contains initial support for standalone packages and package renaming. Please see below for more details.</p> <p>We are also changing our release policy to better align with semver.</p> <h2>Support changes</h2> <p>This version of gopls contains changes to our release policy, deprecates support for some older Go versions, and deprecates support for several experimental features.</p> <h3>New release policy</h3> <p>As described in <a href="https://redirect.github.com/golang/go/issues/55267">golang/go#55267</a>, we are tightening our release policy to better follow semver, increase stability, and reduce release-related toil. Significant new features will only be introduced in <code>*.*.0</code> patch versions, and subsequent patch releases will consist only of bugfixes. For example, this version (v0.10.0) introduces several new features, described below. Subsequent v0.10.* releases will contain only bugfixes.</p> <h3>Final support for Go 1.13-1.15</h3> <p>Consistent with the above release policy and our stated <a href="https://github.com/golang/tools/tree/master/gopls#supported-go-versions-and-build-systems">support window</a>, the <code>v0.10.*</code> minor version will be the final set of releases to support being used with Go 1.13-1.15. See <a href="https://redirect.github.com/golang/go/issues/52982">golang/go#52982</a> for details.</p> <p>Gopls will pop up a warning if it resolves a version of the <code>go</code> command that is older than 1.16. Starting with [email protected], gopls will cease to function when used with a <code>go</code> command with a version older than 1.16.</p> <h3>Deprecated experimental features</h3> <p>The following experimental features are deprecated, and will be removed in [email protected]:</p> <ul> <li><strong>experimentalWorkspaceModule</strong><code>golang/go#52897</code><code>go.work</code> files. See our <a href="https://github.com/golang/tools/blob/master/gopls/doc/workspace.md#go-workspaces-go-118">documentation</a> for information on how to use <code>go.work</code> files to work on multiple modules.</li> <li><strong>experimentalWatchedFileDelay</strong><code>golang/go#55268</code><code>workspace/didChangeWatchedFiles</code> notifications.</li> <li><strong>experimentalUseInvalidMetadata</strong><code>golang/go#54180</code></li> </ul> <h2>New Features</h2> <h3>Support for "standalone packages"</h3> <p>Gopls now recognizes certain files as "standalone main packages", meaning they should be interpreted as main packages consisting of a single file. To do this, gopls looks for packages named <code>main</code> containing a single build constraint that matches one of the tags configured by the new <a href="https://github.com/golang/tools/blob/master/gopls/doc/settings.md#standalonetags-string"><code>standaloneTags</code></a> setting.</p> <p>This enables cross references and other features when working in a file such as the example below that contains a <code>//go:build ignore</code> build constraint.</p> <p><img src="https://user-images.githubusercontent.com/57144380/197039428-72d78300-cbea-4abe-a408-e171991094b8.png" alt="image" /></p> <h3>(preview) Support for package renaming</h3> <p><code>golang/go#41567</code><a href="https://redirect.github.com/golang/go/issues/56184">golang/go#56184</a>.</p> <p>To rename a package, initiate a rename request on the package clause of a file in the package: <img src="https://user-images.githubusercontent.com/57144380/197041786-bf9e617c-9961-46ae-b21a-c240a18a3014.png" alt="image" /></p> <p>When this renaming is applied, gopls will adjust other package files accordingly, rename the package directory, and update import paths referencing the current package or any nested package in the renamed directory. <img src="https://user-images.githubusercontent.com/57144380/197042160-e034e38d-3cd3-4c62-b912-747d8dc2f4ff.png" alt="image" /></p> <h3>Method information in hover</h3> <p>Hovering over a type now shows a summary of its methods.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/golang/tools/commit/7261b3269227f2c7636f7d4316ed3dd5122d17ff"><code>7261b32</code></a> gopls/internal/regtest: fix goimports on windows when using vendoring</li> <li><a href="https://github.com/golang/tools/commit/41e4e565498859435a2ad44a71cf6701a6afb585"><code>41e4e56</code></a> gopls/internal/lsp/source/completion: ensuring completion completeness</li> <li><a href="https://github.com/golang/tools/commit/ac2946029ad3806349fa00546449da9f59320e89"><code>ac29460</code></a> go/ssa: fix bug in writeSignature on external functions</li> <li><a href="https://github.com/golang/tools/commit/3b62e7e25641fc2dabe915a738906d0779724bf1"><code>3b62e7e</code></a> go/ssa: use core type within (*builder).receiver</li> <li><a href="https://github.com/golang/tools/commit/f394d451f85a030254df453bf84a450b228c4250"><code>f394d45</code></a> gopls/internal/lsp/cache: compute xrefs and methodsets asynchronously</li> <li><a href="https://github.com/golang/tools/commit/27dbf85279a5e6e906a8c1b5cc5b73e8229a8efa"><code>27dbf85</code></a> go.mod: update golang.org/x dependencies</li> <li><a href="https://github.com/golang/tools/commit/c6c983054920f47ed9e5ba1b55a7a5934dd8bf53"><code>c6c9830</code></a> go/types/objectpath: memoize scope lookup in objectpath.Encoder</li> <li><a href="https://github.com/golang/tools/commit/0245e1dfc6b09a30ad018bdcdadef4961067cfd4"><code>0245e1d</code></a> gopls/internal/regtest/codelens: set GOWORK=off for go mod vendor</li> <li><a href="https://github.com/golang/tools/commit/85be8882c905a9b24abcec8363e48a14ad5cd4e2"><code>85be888</code></a> go/analysis/passes/defers: add analyser for defer mistake</li> <li><a href="https://github.com/golang/tools/commit/c43232f868439dcfd25d98501dafa5e695cd1d35"><code>c43232f</code></a> cmd/digraph: improve examples using go list, mod</li> <li>Additional commits viewable in <a href="https://github.com/golang/tools/compare/v0.9.3...v0.10.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
29: build(deps): bump golang.org/x/tools from 0.8.0 to 0.10.0 r=xen0n a=dependabot[bot] Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.8.0 to 0.10.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/golang/tools/releases">golang.org/x/tools's releases</a>.</em></p> <blockquote> <h2>gopls/v0.10.0</h2> <p>This release contains initial support for standalone packages and package renaming. Please see below for more details.</p> <p>We are also changing our release policy to better align with semver.</p> <h2>Support changes</h2> <p>This version of gopls contains changes to our release policy, deprecates support for some older Go versions, and deprecates support for several experimental features.</p> <h3>New release policy</h3> <p>As described in <a href="https://redirect.github.com/golang/go/issues/55267">golang/go#55267</a>, we are tightening our release policy to better follow semver, increase stability, and reduce release-related toil. Significant new features will only be introduced in <code>*.*.0</code> patch versions, and subsequent patch releases will consist only of bugfixes. For example, this version (v0.10.0) introduces several new features, described below. Subsequent v0.10.* releases will contain only bugfixes.</p> <h3>Final support for Go 1.13-1.15</h3> <p>Consistent with the above release policy and our stated <a href="https://github.com/golang/tools/tree/master/gopls#supported-go-versions-and-build-systems">support window</a>, the <code>v0.10.*</code> minor version will be the final set of releases to support being used with Go 1.13-1.15. See <a href="https://redirect.github.com/golang/go/issues/52982">golang/go#52982</a> for details.</p> <p>Gopls will pop up a warning if it resolves a version of the <code>go</code> command that is older than 1.16. Starting with [email protected], gopls will cease to function when used with a <code>go</code> command with a version older than 1.16.</p> <h3>Deprecated experimental features</h3> <p>The following experimental features are deprecated, and will be removed in [email protected]:</p> <ul> <li><strong>experimentalWorkspaceModule</strong><code>golang/go#52897</code><code>go.work</code> files. See our <a href="https://github.com/golang/tools/blob/master/gopls/doc/workspace.md#go-workspaces-go-118">documentation</a> for information on how to use <code>go.work</code> files to work on multiple modules.</li> <li><strong>experimentalWatchedFileDelay</strong><code>golang/go#55268</code><code>workspace/didChangeWatchedFiles</code> notifications.</li> <li><strong>experimentalUseInvalidMetadata</strong><code>golang/go#54180</code></li> </ul> <h2>New Features</h2> <h3>Support for "standalone packages"</h3> <p>Gopls now recognizes certain files as "standalone main packages", meaning they should be interpreted as main packages consisting of a single file. To do this, gopls looks for packages named <code>main</code> containing a single build constraint that matches one of the tags configured by the new <a href="https://github.com/golang/tools/blob/master/gopls/doc/settings.md#standalonetags-string"><code>standaloneTags</code></a> setting.</p> <p>This enables cross references and other features when working in a file such as the example below that contains a <code>//go:build ignore</code> build constraint.</p> <p><img src="https://user-images.githubusercontent.com/57144380/197039428-72d78300-cbea-4abe-a408-e171991094b8.png" alt="image" /></p> <h3>(preview) Support for package renaming</h3> <p><code>golang/go#41567</code><a href="https://redirect.github.com/golang/go/issues/56184">golang/go#56184</a>.</p> <p>To rename a package, initiate a rename request on the package clause of a file in the package: <img src="https://user-images.githubusercontent.com/57144380/197041786-bf9e617c-9961-46ae-b21a-c240a18a3014.png" alt="image" /></p> <p>When this renaming is applied, gopls will adjust other package files accordingly, rename the package directory, and update import paths referencing the current package or any nested package in the renamed directory. <img src="https://user-images.githubusercontent.com/57144380/197042160-e034e38d-3cd3-4c62-b912-747d8dc2f4ff.png" alt="image" /></p> <h3>Method information in hover</h3> <p>Hovering over a type now shows a summary of its methods.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/golang/tools/commit/7261b3269227f2c7636f7d4316ed3dd5122d17ff"><code>7261b32</code></a> gopls/internal/regtest: fix goimports on windows when using vendoring</li> <li><a href="https://github.com/golang/tools/commit/41e4e565498859435a2ad44a71cf6701a6afb585"><code>41e4e56</code></a> gopls/internal/lsp/source/completion: ensuring completion completeness</li> <li><a href="https://github.com/golang/tools/commit/ac2946029ad3806349fa00546449da9f59320e89"><code>ac29460</code></a> go/ssa: fix bug in writeSignature on external functions</li> <li><a href="https://github.com/golang/tools/commit/3b62e7e25641fc2dabe915a738906d0779724bf1"><code>3b62e7e</code></a> go/ssa: use core type within (*builder).receiver</li> <li><a href="https://github.com/golang/tools/commit/f394d451f85a030254df453bf84a450b228c4250"><code>f394d45</code></a> gopls/internal/lsp/cache: compute xrefs and methodsets asynchronously</li> <li><a href="https://github.com/golang/tools/commit/27dbf85279a5e6e906a8c1b5cc5b73e8229a8efa"><code>27dbf85</code></a> go.mod: update golang.org/x dependencies</li> <li><a href="https://github.com/golang/tools/commit/c6c983054920f47ed9e5ba1b55a7a5934dd8bf53"><code>c6c9830</code></a> go/types/objectpath: memoize scope lookup in objectpath.Encoder</li> <li><a href="https://github.com/golang/tools/commit/0245e1dfc6b09a30ad018bdcdadef4961067cfd4"><code>0245e1d</code></a> gopls/internal/regtest/codelens: set GOWORK=off for go mod vendor</li> <li><a href="https://github.com/golang/tools/commit/85be8882c905a9b24abcec8363e48a14ad5cd4e2"><code>85be888</code></a> go/analysis/passes/defers: add analyser for defer mistake</li> <li><a href="https://github.com/golang/tools/commit/c43232f868439dcfd25d98501dafa5e695cd1d35"><code>c43232f</code></a> cmd/digraph: improve examples using go list, mod</li> <li>Additional commits viewable in <a href="https://github.com/golang/tools/compare/v0.8.0...v0.10.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting ``@dependabot` rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - ``@dependabot` rebase` will rebase this PR - ``@dependabot` recreate` will recreate this PR, overwriting any edits that have been made to it - ``@dependabot` merge` will merge this PR after your CI passes on it - ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it - ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging - ``@dependabot` reopen` will reopen this PR if it is closed - ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - ``@dependabot` ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - ``@dependabot` ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - ``@dependabot` ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…1097) Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.9.3 to 0.10.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/golang/tools/releases">golang.org/x/tools's releases</a>.</em></p> <blockquote> <h2>gopls/v0.10.0</h2> <p>This release contains initial support for standalone packages and package renaming. Please see below for more details.</p> <p>We are also changing our release policy to better align with semver.</p> <h2>Support changes</h2> <p>This version of gopls contains changes to our release policy, deprecates support for some older Go versions, and deprecates support for several experimental features.</p> <h3>New release policy</h3> <p>As described in <a href="https://redirect.github.com/golang/go/issues/55267">golang/go#55267</a>, we are tightening our release policy to better follow semver, increase stability, and reduce release-related toil. Significant new features will only be introduced in <code>*.*.0</code> patch versions, and subsequent patch releases will consist only of bugfixes. For example, this version (v0.10.0) introduces several new features, described below. Subsequent v0.10.* releases will contain only bugfixes.</p> <h3>Final support for Go 1.13-1.15</h3> <p>Consistent with the above release policy and our stated <a href="https://github.com/golang/tools/tree/master/gopls#supported-go-versions-and-build-systems">support window</a>, the <code>v0.10.*</code> minor version will be the final set of releases to support being used with Go 1.13-1.15. See <a href="https://redirect.github.com/golang/go/issues/52982">golang/go#52982</a> for details.</p> <p>Gopls will pop up a warning if it resolves a version of the <code>go</code> command that is older than 1.16. Starting with [email protected], gopls will cease to function when used with a <code>go</code> command with a version older than 1.16.</p> <h3>Deprecated experimental features</h3> <p>The following experimental features are deprecated, and will be removed in [email protected]:</p> <ul> <li><strong>experimentalWorkspaceModule</strong><code>golang/go#52897</code><code>go.work</code> files. See our <a href="https://github.com/golang/tools/blob/master/gopls/doc/workspace.md#go-workspaces-go-118">documentation</a> for information on how to use <code>go.work</code> files to work on multiple modules.</li> <li><strong>experimentalWatchedFileDelay</strong><code>golang/go#55268</code><code>workspace/didChangeWatchedFiles</code> notifications.</li> <li><strong>experimentalUseInvalidMetadata</strong><code>golang/go#54180</code></li> </ul> <h2>New Features</h2> <h3>Support for "standalone packages"</h3> <p>Gopls now recognizes certain files as "standalone main packages", meaning they should be interpreted as main packages consisting of a single file. To do this, gopls looks for packages named <code>main</code> containing a single build constraint that matches one of the tags configured by the new <a href="https://github.com/golang/tools/blob/master/gopls/doc/settings.md#standalonetags-string"><code>standaloneTags</code></a> setting.</p> <p>This enables cross references and other features when working in a file such as the example below that contains a <code>//go:build ignore</code> build constraint.</p> <p><img src="https://user-images.githubusercontent.com/57144380/197039428-72d78300-cbea-4abe-a408-e171991094b8.png" alt="image" /></p> <h3>(preview) Support for package renaming</h3> <p><code>golang/go#41567</code><a href="https://redirect.github.com/golang/go/issues/56184">golang/go#56184</a>.</p> <p>To rename a package, initiate a rename request on the package clause of a file in the package: <img src="https://user-images.githubusercontent.com/57144380/197041786-bf9e617c-9961-46ae-b21a-c240a18a3014.png" alt="image" /></p> <p>When this renaming is applied, gopls will adjust other package files accordingly, rename the package directory, and update import paths referencing the current package or any nested package in the renamed directory. <img src="https://user-images.githubusercontent.com/57144380/197042160-e034e38d-3cd3-4c62-b912-747d8dc2f4ff.png" alt="image" /></p> <h3>Method information in hover</h3> <p>Hovering over a type now shows a summary of its methods.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/golang/tools/commit/7261b3269227f2c7636f7d4316ed3dd5122d17ff"><code>7261b32</code></a> gopls/internal/regtest: fix goimports on windows when using vendoring</li> <li><a href="https://github.com/golang/tools/commit/41e4e565498859435a2ad44a71cf6701a6afb585"><code>41e4e56</code></a> gopls/internal/lsp/source/completion: ensuring completion completeness</li> <li><a href="https://github.com/golang/tools/commit/ac2946029ad3806349fa00546449da9f59320e89"><code>ac29460</code></a> go/ssa: fix bug in writeSignature on external functions</li> <li><a href="https://github.com/golang/tools/commit/3b62e7e25641fc2dabe915a738906d0779724bf1"><code>3b62e7e</code></a> go/ssa: use core type within (*builder).receiver</li> <li><a href="https://github.com/golang/tools/commit/f394d451f85a030254df453bf84a450b228c4250"><code>f394d45</code></a> gopls/internal/lsp/cache: compute xrefs and methodsets asynchronously</li> <li><a href="https://github.com/golang/tools/commit/27dbf85279a5e6e906a8c1b5cc5b73e8229a8efa"><code>27dbf85</code></a> go.mod: update golang.org/x dependencies</li> <li><a href="https://github.com/golang/tools/commit/c6c983054920f47ed9e5ba1b55a7a5934dd8bf53"><code>c6c9830</code></a> go/types/objectpath: memoize scope lookup in objectpath.Encoder</li> <li><a href="https://github.com/golang/tools/commit/0245e1dfc6b09a30ad018bdcdadef4961067cfd4"><code>0245e1d</code></a> gopls/internal/regtest/codelens: set GOWORK=off for go mod vendor</li> <li><a href="https://github.com/golang/tools/commit/85be8882c905a9b24abcec8363e48a14ad5cd4e2"><code>85be888</code></a> go/analysis/passes/defers: add analyser for defer mistake</li> <li><a href="https://github.com/golang/tools/commit/c43232f868439dcfd25d98501dafa5e695cd1d35"><code>c43232f</code></a> cmd/digraph: improve examples using go list, mod</li> <li>Additional commits viewable in <a href="https://github.com/golang/tools/compare/v0.9.3...v0.10.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.9.3 to 0.10.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/golang/tools/releases">golang.org/x/tools's releases</a>.</em></p> <blockquote> <h2>gopls/v0.10.0</h2> <p>This release contains initial support for standalone packages and package renaming. Please see below for more details.</p> <p>We are also changing our release policy to better align with semver.</p> <h2>Support changes</h2> <p>This version of gopls contains changes to our release policy, deprecates support for some older Go versions, and deprecates support for several experimental features.</p> <h3>New release policy</h3> <p>As described in <a href="https://redirect.github.com/golang/go/issues/55267">golang/go#55267</a>, we are tightening our release policy to better follow semver, increase stability, and reduce release-related toil. Significant new features will only be introduced in <code>*.*.0</code> patch versions, and subsequent patch releases will consist only of bugfixes. For example, this version (v0.10.0) introduces several new features, described below. Subsequent v0.10.* releases will contain only bugfixes.</p> <h3>Final support for Go 1.13-1.15</h3> <p>Consistent with the above release policy and our stated <a href="https://github.com/golang/tools/tree/master/gopls#supported-go-versions-and-build-systems">support window</a>, the <code>v0.10.*</code> minor version will be the final set of releases to support being used with Go 1.13-1.15. See <a href="https://redirect.github.com/golang/go/issues/52982">golang/go#52982</a> for details.</p> <p>Gopls will pop up a warning if it resolves a version of the <code>go</code> command that is older than 1.16. Starting with [email protected], gopls will cease to function when used with a <code>go</code> command with a version older than 1.16.</p> <h3>Deprecated experimental features</h3> <p>The following experimental features are deprecated, and will be removed in [email protected]:</p> <ul> <li><strong>experimentalWorkspaceModule</strong><code>golang/go#52897</code><code>go.work</code> files. See our <a href="https://github.com/golang/tools/blob/master/gopls/doc/workspace.md#go-workspaces-go-118">documentation</a> for information on how to use <code>go.work</code> files to work on multiple modules.</li> <li><strong>experimentalWatchedFileDelay</strong><code>golang/go#55268</code><code>workspace/didChangeWatchedFiles</code> notifications.</li> <li><strong>experimentalUseInvalidMetadata</strong><code>golang/go#54180</code></li> </ul> <h2>New Features</h2> <h3>Support for "standalone packages"</h3> <p>Gopls now recognizes certain files as "standalone main packages", meaning they should be interpreted as main packages consisting of a single file. To do this, gopls looks for packages named <code>main</code> containing a single build constraint that matches one of the tags configured by the new <a href="https://github.com/golang/tools/blob/master/gopls/doc/settings.md#standalonetags-string"><code>standaloneTags</code></a> setting.</p> <p>This enables cross references and other features when working in a file such as the example below that contains a <code>//go:build ignore</code> build constraint.</p> <p><img src="https://user-images.githubusercontent.com/57144380/197039428-72d78300-cbea-4abe-a408-e171991094b8.png" alt="image" /></p> <h3>(preview) Support for package renaming</h3> <p><code>golang/go#41567</code><a href="https://redirect.github.com/golang/go/issues/56184">golang/go#56184</a>.</p> <p>To rename a package, initiate a rename request on the package clause of a file in the package: <img src="https://user-images.githubusercontent.com/57144380/197041786-bf9e617c-9961-46ae-b21a-c240a18a3014.png" alt="image" /></p> <p>When this renaming is applied, gopls will adjust other package files accordingly, rename the package directory, and update import paths referencing the current package or any nested package in the renamed directory. <img src="https://user-images.githubusercontent.com/57144380/197042160-e034e38d-3cd3-4c62-b912-747d8dc2f4ff.png" alt="image" /></p> <h3>Method information in hover</h3> <p>Hovering over a type now shows a summary of its methods.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/golang/tools/commit/7261b3269227f2c7636f7d4316ed3dd5122d17ff"><code>7261b32</code></a> gopls/internal/regtest: fix goimports on windows when using vendoring</li> <li><a href="https://github.com/golang/tools/commit/41e4e565498859435a2ad44a71cf6701a6afb585"><code>41e4e56</code></a> gopls/internal/lsp/source/completion: ensuring completion completeness</li> <li><a href="https://github.com/golang/tools/commit/ac2946029ad3806349fa00546449da9f59320e89"><code>ac29460</code></a> go/ssa: fix bug in writeSignature on external functions</li> <li><a href="https://github.com/golang/tools/commit/3b62e7e25641fc2dabe915a738906d0779724bf1"><code>3b62e7e</code></a> go/ssa: use core type within (*builder).receiver</li> <li><a href="https://github.com/golang/tools/commit/f394d451f85a030254df453bf84a450b228c4250"><code>f394d45</code></a> gopls/internal/lsp/cache: compute xrefs and methodsets asynchronously</li> <li><a href="https://github.com/golang/tools/commit/27dbf85279a5e6e906a8c1b5cc5b73e8229a8efa"><code>27dbf85</code></a> go.mod: update golang.org/x dependencies</li> <li><a href="https://github.com/golang/tools/commit/c6c983054920f47ed9e5ba1b55a7a5934dd8bf53"><code>c6c9830</code></a> go/types/objectpath: memoize scope lookup in objectpath.Encoder</li> <li><a href="https://github.com/golang/tools/commit/0245e1dfc6b09a30ad018bdcdadef4961067cfd4"><code>0245e1d</code></a> gopls/internal/regtest/codelens: set GOWORK=off for go mod vendor</li> <li><a href="https://github.com/golang/tools/commit/85be8882c905a9b24abcec8363e48a14ad5cd4e2"><code>85be888</code></a> go/analysis/passes/defers: add analyser for defer mistake</li> <li><a href="https://github.com/golang/tools/commit/c43232f868439dcfd25d98501dafa5e695cd1d35"><code>c43232f</code></a> cmd/digraph: improve examples using go list, mod</li> <li>Additional commits viewable in <a href="https://github.com/golang/tools/compare/v0.9.3...v0.10.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
What did you do?
package somepackage
.What did you expect to see?
Let me rename package.
What did you see instead?
This element cannot be renamed.
Build info
golang.org/x/tools/gopls v0.5.0
go version go1.15 linux/amd64
The text was updated successfully, but these errors were encountered: