Skip to content

Commit 7eb50f3

Browse files
authored
Replace init() by hardcoded standard package names (#29)
* chore: generate std packages mapping * chore: add Makefile
1 parent 8f975be commit 7eb50f3

File tree

5 files changed

+274
-20
lines changed

5 files changed

+274
-20
lines changed

.gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
dist/
2+
.gitcookies
3+
.idea/
4+
.vscode/

Makefile

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
.PHONY: clean generate test build
2+
3+
BIN_OUTPUT := $(if $(filter $(shell go env GOOS), windows), dist/gci.exe, dist/gci)
4+
5+
default: clean generate test build
6+
7+
clean:
8+
@echo BIN_OUTPUT: ${BIN_OUTPUT}
9+
rm -rf dist/ cover.out
10+
11+
build: clean
12+
go build -v -trimpath -o ${BIN_OUTPUT} .
13+
14+
test: clean
15+
go test -v -cover ./...
16+
17+
generate:
18+
go generate ./...

internal/generate.go

+91
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/gci/gci.go

-20
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@ import (
1010
"path/filepath"
1111
"sort"
1212
"strings"
13-
14-
"golang.org/x/tools/go/packages"
1513
)
1614

1715
const (
@@ -28,29 +26,11 @@ var (
2826
importStartFlag = []byte(`
2927
import (
3028
`)
31-
3229
importEndFlag = []byte(`
3330
)
3431
`)
35-
standardPackages = make(map[string]struct{})
3632
)
3733

38-
func init() {
39-
pkgs, err := packages.Load(nil, "std")
40-
if err != nil {
41-
panic(err)
42-
}
43-
44-
for _, p := range pkgs {
45-
standardPackages[p.PkgPath] = struct{}{}
46-
}
47-
}
48-
49-
func isStandardPackage(pkg string) bool {
50-
_, ok := standardPackages[pkg]
51-
return ok
52-
}
53-
5434
type FlagSet struct {
5535
LocalFlag string
5636
DoWrite, DoDiff *bool

pkg/gci/std.go

+161
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)