1
0
mirror of https://github.com/golang/go synced 2024-11-19 04:54:41 -07:00
go/internal/imports
Heschi Kreinick 7871c2d767 internal/imports: sort import candidates by "relevance"
When proposing packages to import, we can propose more relevant packages
first. Introduce that concept to the pkg struct, and sort by it when
returning candidates.

In all cases we prefer stdlib packages first. Then, in module mode, we
prefer packages that are in the module's dependencies over those that
aren't. We could go further and prefer direct deps over indirect too,
but I didn't have the code for that handy.

I also changed the alphabetical sort from import path to package name,
because that's what the user sees first in the UI.

Updates golang/go#31906

Change-Id: Ia981ee9ffe3202e2a68eef3a36f65e81849a4ac2
Reviewed-on: https://go-review.googlesource.com/c/tools/+/204203
Run-TryBot: Heschi Kreinick <heschi@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
2019-10-30 22:54:52 +00:00
..
testdata/mod imports: rename to internal/imports 2019-05-20 21:49:35 +00:00
fix_test.go internal/imports: sort import candidates by "relevance" 2019-10-30 22:54:52 +00:00
fix.go internal/imports: sort import candidates by "relevance" 2019-10-30 22:54:52 +00:00
imports_test.go all: skip more memory-intensive tests on linux-arm 2019-08-30 17:05:41 +00:00
imports.go internal/imports: get candidate imports 2019-08-16 16:26:37 +00:00
mkindex.go imports: rename to internal/imports 2019-05-20 21:49:35 +00:00
mkstdlib.go internal/imports: add all interfaces in mkstdlib 2019-09-10 20:25:02 +00:00
mod_112_test.go imports: rename to internal/imports 2019-05-20 21:49:35 +00:00
mod_114_test.go internal/imports: support vendoring in module mode 2019-10-24 21:04:39 +00:00
mod_cache_test.go internal/imports: cache things outside the mod cache 2019-10-21 20:45:41 +00:00
mod_cache.go internal/imports: cache module information 2019-10-21 22:41:28 +00:00
mod_pre114_test.go internal/imports: support vendoring in module mode 2019-10-24 21:04:39 +00:00
mod_test.go internal/imports: sort import candidates by "relevance" 2019-10-30 22:54:52 +00:00
mod.go internal/imports: sort import candidates by "relevance" 2019-10-30 22:54:52 +00:00
proxy_112_test.go imports: rename to internal/imports 2019-05-20 21:49:35 +00:00
proxy_113_test.go imports: rename to internal/imports 2019-05-20 21:49:35 +00:00
sortimports.go internal/imports: merge import declarations 2019-08-14 23:54:02 +00:00
zstdlib.go internal/imports: add all interfaces in mkstdlib 2019-09-10 20:25:02 +00:00