Skip to content

Commit d87c614

Browse files
authored
all: (mostly) automated clean up (#1513)
- Unset any user-defined Go environment variables `devbox.json` to make builds more reproducible. Clean up some of the build scripts. - Remove `exp/slices` and `exp/maps` now that they're in the Go 1.21 stdlib. - Run `find . -name '*.go' -exec gofumpt -extra -w {} \+` to format Go files. - Upgrade dependencies that don't have any backwards incompatible changes. - Organize direct vs. indirect modules and run `go mod tidy`.
1 parent 3213f07 commit d87c614

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+536
-309
lines changed

.github/workflows/cli-tests.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ jobs:
6464
- uses: actions/setup-go@v4
6565
with:
6666
go-version-file: ./go.mod
67+
- run: go run ./cmd/devbox run fmt
6768
- name: golangci-lint
6869
uses: golangci/[email protected]
6970
with:

devbox.json

Lines changed: 26 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,23 +4,42 @@
44
"go@latest"
55
],
66
"env": {
7+
"GOENV": "off",
78
"PATH": "$PATH:$PWD/dist"
89
},
910
"shell": {
1011
"init_hook": [
11-
"export \"GOROOT=$(go env GOROOT)\""
12+
"unset CGO_ENABLED GO111MODULE GOARCH GOFLAGS GOMOD GOOS GOROOT GOTOOLCHAIN GOWORK"
1213
],
1314
"scripts": {
14-
"build": "go build -o dist/devbox cmd/devbox/main.go",
15-
"build-linux": "GOOS=linux go build -o dist/devbox-linux cmd/devbox/main.go",
16-
"build-linux-amd64": "GOOS=linux GOARCH=amd64 go build -o dist/devbox-linux-amd64 cmd/devbox/main.go",
15+
"build": "go build -o dist/devbox ./cmd/devbox",
16+
"build-all": [
17+
"GOOS=darwin GOARCH=amd64 go build -o dist/devbox-darwin-amd64 ./cmd/devbox",
18+
"GOOS=darwin GOARCH=arm64 go build -o dist/devbox-darwin-arm64 ./cmd/devbox",
19+
"GOOS=linux GOARCH=amd64 go build -o dist/devbox-linux-amd64 ./cmd/devbox",
20+
"GOOS=linux GOARCH=arm64 go build -o dist/devbox-linux-arm64 ./cmd/devbox"
21+
],
1722
"code": "code .",
1823
"lint": "golangci-lint run",
24+
"fmt": [
25+
"mkdir -p dist/tools",
26+
"export GOBIN=\"$PWD/dist/tools\"",
27+
"go install mvdan.cc/gofumpt@latest",
28+
"if [ -n \"${CI:-}\" ]; then",
29+
" unformatted=\"$(find . -name '*.go' -exec \"$GOBIN/gofumpt\" -l {} \\+ | awk '{ print \"\t\" $0 }')\"",
30+
" if [ -n \"$unformatted\" ]; then",
31+
" echo 'The following files need to be formatted with gofumpt:'",
32+
" echo",
33+
" echo \"$unformatted\"",
34+
" echo",
35+
" echo 'Run `devbox run fmt` to format them.'",
36+
" exit 1",
37+
" fi",
38+
"fi",
39+
"find . -name '*.go' -exec \"$GOBIN/gofumpt\" -extra -w {} \\+"
40+
],
1941
"test": "go test -race -cover ./...",
2042
"update-examples": "devbox run build && go run testscripts/testrunner/updater/main.go"
2143
}
22-
},
23-
"nixpkgs": {
24-
"commit": "3364b5b117f65fe1ce65a3cdd5612a078a3b31e3"
2544
}
2645
}

go.mod

Lines changed: 41 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -3,32 +3,32 @@ module go.jetpack.io/devbox
33
go 1.21
44

55
require (
6-
github.com/AlecAivazis/survey/v2 v2.3.6
6+
github.com/AlecAivazis/survey/v2 v2.3.7
77
github.com/MakeNowJust/heredoc/v2 v2.0.1
8-
github.com/alessio/shellescape v1.4.1
9-
github.com/aws/aws-sdk-go-v2 v1.18.0
10-
github.com/aws/aws-sdk-go-v2/config v1.18.25
11-
github.com/aws/aws-sdk-go-v2/credentials v1.13.24
12-
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.11.67
13-
github.com/aws/aws-sdk-go-v2/service/s3 v1.33.1
14-
github.com/aws/aws-sdk-go-v2/service/sts v1.19.0
8+
github.com/alessio/shellescape v1.4.2
9+
github.com/aws/aws-sdk-go-v2 v1.21.0
10+
github.com/aws/aws-sdk-go-v2/config v1.18.42
11+
github.com/aws/aws-sdk-go-v2/credentials v1.13.40
12+
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.11.87
13+
github.com/aws/aws-sdk-go-v2/service/s3 v1.40.0
14+
github.com/aws/aws-sdk-go-v2/service/sts v1.22.0
1515
github.com/bmatcuk/doublestar/v4 v4.6.0
1616
github.com/briandowns/spinner v1.23.0
1717
github.com/cavaliergopher/grab/v3 v3.0.1
1818
github.com/cloudflare/ahocorasick v0.0.0-20210425175752-730270c3e184
1919
github.com/creekorful/mvnparser v1.5.0
2020
github.com/denisbrodbeck/machineid v1.0.1
21+
github.com/f1bonacc1/process-compose v0.43.1
2122
github.com/fatih/color v1.15.0
2223
github.com/fsnotify/fsnotify v1.6.0
23-
github.com/getsentry/sentry-go v0.20.0
24+
github.com/getsentry/sentry-go v0.24.1
2425
github.com/google/go-cmp v0.5.9
25-
github.com/google/uuid v1.3.0
26+
github.com/google/uuid v1.3.1
2627
github.com/hashicorp/go-envparse v0.1.0
2728
github.com/joho/godotenv v1.5.1
2829
github.com/mattn/go-isatty v0.0.19
29-
github.com/mholt/archiver/v4 v4.0.0-alpha.7
30-
github.com/pelletier/go-toml/v2 v2.0.7
31-
github.com/pkg/browser v0.0.0-20210911075715-681adbf594b8 // indirect
30+
github.com/mholt/archiver/v4 v4.0.0-alpha.8
31+
github.com/pelletier/go-toml/v2 v2.1.0
3232
github.com/pkg/errors v0.9.1
3333
github.com/rogpeppe/go-internal v1.11.0
3434
github.com/samber/lo v1.38.1
@@ -39,9 +39,8 @@ require (
3939
github.com/wk8/go-ordered-map/v2 v2.1.8
4040
github.com/zealic/go2node v0.1.0
4141
go.jetpack.io/pkg v0.0.0-20230920232528-54278537129b
42-
golang.org/x/exp v0.0.0-20230807204917-050eac23e9de
43-
golang.org/x/mod v0.11.0
44-
golang.org/x/sync v0.1.0
42+
golang.org/x/mod v0.12.0
43+
golang.org/x/sync v0.3.0
4544
gopkg.in/natefinch/lumberjack.v2 v2.2.1
4645
gopkg.in/yaml.v3 v3.0.1
4746
)
@@ -51,29 +50,32 @@ require (
5150
github.com/InVisionApp/go-logger v1.0.1 // indirect
5251
github.com/ProtonMail/go-crypto v0.0.0-20230217124315-7d5c6f04bbb8 // indirect
5352
github.com/andybalholm/brotli v1.0.5 // indirect
54-
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.4.10 // indirect
55-
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.13.3 // indirect
56-
github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.33 // indirect
57-
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.27 // indirect
58-
github.com/aws/aws-sdk-go-v2/internal/ini v1.3.34 // indirect
59-
github.com/aws/aws-sdk-go-v2/internal/v4a v1.0.25 // indirect
60-
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.9.11 // indirect
61-
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.1.28 // indirect
62-
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.27 // indirect
63-
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.14.2 // indirect
64-
github.com/aws/aws-sdk-go-v2/service/sso v1.12.10 // indirect
65-
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.14.10 // indirect
66-
github.com/aws/smithy-go v1.13.5 // indirect
53+
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.4.13 // indirect
54+
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.13.11 // indirect
55+
github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.41 // indirect
56+
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.35 // indirect
57+
github.com/aws/aws-sdk-go-v2/internal/ini v1.3.43 // indirect
58+
github.com/aws/aws-sdk-go-v2/internal/v4a v1.1.4 // indirect
59+
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.9.14 // indirect
60+
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.1.36 // indirect
61+
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.35 // indirect
62+
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.15.4 // indirect
63+
github.com/aws/aws-sdk-go-v2/service/sso v1.14.1 // indirect
64+
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.17.1 // indirect
65+
github.com/aws/smithy-go v1.14.2 // indirect
6766
github.com/bahlo/generic-list-go v0.2.0 // indirect
6867
github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869 // indirect
68+
github.com/bodgit/plumbing v1.2.0 // indirect
69+
github.com/bodgit/sevenzip v1.3.0 // indirect
70+
github.com/bodgit/windows v1.0.0 // indirect
6971
github.com/buger/jsonparser v1.1.1 // indirect
7072
github.com/cloudflare/circl v1.3.3 // indirect
7173
github.com/codeclysm/extract v2.2.0+incompatible // indirect
74+
github.com/connesc/cipherio v0.2.1 // indirect
7275
github.com/coreos/go-oidc/v3 v3.6.0 // indirect
7376
github.com/cpuguy83/go-md2man/v2 v2.0.2 // indirect
7477
github.com/davecgh/go-spew v1.1.1 // indirect
7578
github.com/dsnet/compress v0.0.1 // indirect
76-
github.com/f1bonacc1/process-compose v0.43.1
7779
github.com/go-jose/go-jose/v3 v3.0.0 // indirect
7880
github.com/golang/protobuf v1.5.3 // indirect
7981
github.com/golang/snappy v0.0.4 // indirect
@@ -85,26 +87,31 @@ require (
8587
github.com/gosimple/unidecode v1.0.1 // indirect
8688
github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 // indirect
8789
github.com/h2non/filetype v1.1.3 // indirect
90+
github.com/hashicorp/errwrap v1.0.0 // indirect
91+
github.com/hashicorp/go-multierror v1.1.1 // indirect
8892
github.com/inconshreveable/mousetrap v1.1.0 // indirect
8993
github.com/jmespath/go-jmespath v0.4.0 // indirect
9094
github.com/juju/errors v1.0.0 // indirect
9195
github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 // indirect
92-
github.com/klauspost/compress v1.16.3 // indirect
96+
github.com/klauspost/compress v1.16.0 // indirect
9397
github.com/klauspost/pgzip v1.2.5 // indirect
9498
github.com/mailru/easyjson v0.7.7 // indirect
9599
github.com/mattn/go-colorable v0.1.13 // indirect
96-
github.com/mgutz/ansi v0.0.0-20200706080929-d51e80ef957d // indirect
100+
github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b // indirect
97101
github.com/nwaples/rardecode/v2 v2.0.0-beta.2 // indirect
98102
github.com/peterbourgon/diskv v2.0.1+incompatible // indirect
99-
github.com/pierrec/lz4/v4 v4.1.17 // indirect
103+
github.com/pierrec/lz4/v4 v4.1.15 // indirect
104+
github.com/pkg/browser v0.0.0-20210911075715-681adbf594b8 // indirect
100105
github.com/pmezard/go-difflib v1.0.0 // indirect
101106
github.com/rs/zerolog v1.29.0 // indirect
102107
github.com/russross/blackfriday/v2 v2.1.0 // indirect
103108
github.com/segmentio/backo-go v1.0.1 // indirect
104109
github.com/therootcompany/xz v1.0.1 // indirect
105-
github.com/ulikunitz/xz v0.5.11 // indirect
110+
github.com/ulikunitz/xz v0.5.10 // indirect
106111
github.com/xtgo/uuid v0.0.0-20140804021211-a0b114877d4c // indirect
112+
go4.org v0.0.0-20200411211856-f5505b9728dd // indirect
107113
golang.org/x/crypto v0.13.0 // indirect
114+
golang.org/x/exp v0.0.0-20220303212507-bbda1eaf7a17 // indirect
108115
golang.org/x/net v0.15.0 // indirect
109116
golang.org/x/oauth2 v0.12.0 // indirect
110117
golang.org/x/sys v0.12.0 // indirect

0 commit comments

Comments
 (0)