Skip to content

Commit fa2c70b

Browse files
authored
Update runner to Go 1.22,1.23 (two most recent releases). (#887)
* Update runner to Go 1.22,1.23 (two most recent releases). * Update runner to Go 1.22,1.23 (two most recent releases). * Update Go mod to 1.22 as well. * Update staticcheck to 0.5.1 so it works with 1.23 code * Update golangci-lint to 1.60.3. v1.51 fails with errors related to old slices package. * Require Go 1.22 for bootstrapping Go tip * Github actions do not support else statements * Another attempt at Workflow syntax * Another attempt at Workflow syntax * Fix caching for Go bootstrap compiler * Fix caching for Go bootstrap compiler * Fix caching for Go bootstrap compiler * Fix caching for Go bootstrap compiler * Fix caching for Go bootstrap compiler * Fix caching for Go bootstrap compiler * Fix caching for Go bootstrap compiler * Add comments saying why we need cache directives
1 parent 813a5fb commit fa2c70b

3 files changed

Lines changed: 58 additions & 24 deletions

File tree

.github/workflows/ci.yaml

Lines changed: 56 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
strategy:
1919
fail-fast: false
2020
matrix:
21-
go: ['1.20', '1.21', 'tip']
21+
go: ['1.22', '1.23', 'tip']
2222
# Supported macOS versions can be found in
2323
# https://github.com/actions/virtual-environments#available-environments.
2424
# TODO: Add macos-13. As of now there are build errors when installing graphviz.
@@ -28,11 +28,31 @@ jobs:
2828
# - https://github.com/actions/virtual-environments/blob/main/images/macos/macos-13-Readme.md#xcode
2929
xcode-version: ['14.2', '14.1', '14.0.1', '13.4.1', '13.3.1', '13.2.1', '13.1']
3030
steps:
31+
- name: Checkout the repo
32+
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
33+
with:
34+
path: ${{ env.WORKING_DIR }}
35+
3136
- name: Update Go version using setup-go
3237
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
3338
if: matrix.go != 'tip'
3439
with:
40+
# Include cache directives to allow proper caching. Without them, we
41+
# get setup-go "Restore cache failed" warnings.
3542
go-version: ${{ matrix.go }}
43+
cache: true
44+
cache-dependency-path: '**/go.sum'
45+
46+
- name: Install Go bootstrap compiler
47+
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
48+
if: matrix.go == 'tip'
49+
with:
50+
# Bootstrapping go tip requires 1.22.6
51+
# Include cache directives to allow proper caching. Without them, we
52+
# get setup-go "Restore cache failed" warnings.
53+
go-version: 1.22
54+
cache: true
55+
cache-dependency-path: '**/go.sum'
3656

3757
- name: Update Go version manually
3858
if: matrix.go == 'tip'
@@ -46,11 +66,6 @@ jobs:
4666
echo "RUN_GOLANGCI_LINTER=false" >> $GITHUB_ENV
4767
echo "$HOME/gotip/bin:$PATH" >> $GITHUB_PATH
4868
49-
- name: Checkout the repo
50-
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
51-
with:
52-
path: ${{ env.WORKING_DIR }}
53-
5469
- name: Set up Xcode
5570
uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd # v1.6.0
5671
with:
@@ -61,8 +76,8 @@ jobs:
6176
brew install graphviz
6277
# Do not let tools interfere with the main module's go.mod.
6378
cd && go mod init tools
64-
go install honnef.co/go/tools/cmd/staticcheck@v0.4.6
65-
go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.51.0
79+
go install honnef.co/go/tools/cmd/staticcheck@v0.5.1
80+
go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.60.3
6681
# Add PATH for installed tools.
6782
echo "$GOPATH/bin:$PATH" >> $GITHUB_PATH
6883
@@ -84,14 +99,34 @@ jobs:
8499
strategy:
85100
fail-fast: false
86101
matrix:
87-
go: ['1.20', '1.21', 'tip']
102+
go: ['1.22', '1.23', 'tip']
88103
os: ['ubuntu-22.04', 'ubuntu-20.04']
89104
steps:
105+
- name: Checkout the repo
106+
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
107+
with:
108+
path: ${{ env.WORKING_DIR }}
109+
90110
- name: Update Go version using setup-go
91111
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
92112
if: matrix.go != 'tip'
93113
with:
114+
# Include cache directives to allow proper caching. Without them, we
115+
# get setup-go "Restore cache failed" warnings.
94116
go-version: ${{ matrix.go }}
117+
cache: true
118+
cache-dependency-path: '**/go.sum'
119+
120+
- name: Install Go bootstrap compiler
121+
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
122+
if: matrix.go == 'tip'
123+
with:
124+
# Bootstrapping go tip requires 1.22.6
125+
# Include cache directives to allow proper caching. Without them, we
126+
# get setup-go "Restore cache failed" warnings.
127+
go-version: 1.22
128+
cache: true
129+
cache-dependency-path: '**/go.sum'
95130

96131
- name: Update Go version manually
97132
if: matrix.go == 'tip'
@@ -105,11 +140,6 @@ jobs:
105140
echo "RUN_GOLANGCI_LINTER=false" >> $GITHUB_ENV
106141
echo "$HOME/gotip/bin" >> $GITHUB_PATH
107142
108-
- name: Checkout the repo
109-
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
110-
with:
111-
path: ${{ env.WORKING_DIR }}
112-
113143
- name: Check chrome for browser tests
114144
run: |
115145
google-chrome --version
@@ -119,8 +149,8 @@ jobs:
119149
sudo apt-get install graphviz
120150
# Do not let tools interfere with the main module's go.mod.
121151
cd && go mod init tools
122-
go install honnef.co/go/tools/cmd/staticcheck@v0.4.6
123-
go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.51.0
152+
go install honnef.co/go/tools/cmd/staticcheck@v0.5.1
153+
go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.60.3
124154
# Add PATH for installed tools.
125155
echo "$GOPATH/bin:$PATH" >> $GITHUB_PATH
126156
@@ -139,18 +169,22 @@ jobs:
139169
strategy:
140170
fail-fast: false
141171
matrix:
142-
go: ['1.20', '1.21']
172+
go: ['1.22', '1.23']
143173
steps:
144-
- name: Update Go version using setup-go
145-
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
146-
with:
147-
go-version: ${{ matrix.go }}
148-
149174
- name: Checkout the repo
150175
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
151176
with:
152177
path: ${{ env.WORKING_DIR }}
153178

179+
- name: Update Go version using setup-go
180+
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
181+
with:
182+
# Include cache directives to allow proper caching. Without them, we
183+
# get setup-go "Restore cache failed" warnings.
184+
go-version: ${{ matrix.go }}
185+
cache: true
186+
cache-dependency-path: '**/go.sum'
187+
154188
- name: Fetch Windows dependency
155189
uses: crazy-max/ghaction-chocolatey@0e015857dd851f84fcb7fb53380eb5c4c8202333 # v3.0.0
156190
with:

browsertests/go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module github.com/google/pprof/browsertests
22

3-
go 1.19
3+
go 1.22
44

55
// Use the version of pprof in this directory tree.
66
replace github.com/google/pprof => ../

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module github.com/google/pprof
22

3-
go 1.19
3+
go 1.22
44

55
require (
66
github.com/chzyer/readline v1.5.1

0 commit comments

Comments
 (0)