- Use go1.17 for github actions.
- Use go mod edit instead of go get for testing other packages. There's two
benefits:
- This removes the round trip to pkg.go.dev and use the already present local
checkout.
- The go get periph.io/x/conn/v3@${GITHUB_SHA} command worked if a maintainer
push a branch, but fails for a PR. This is because the go get command does a
clone with all the branches, so it finds the commit even if it's not in main.
For a PR, one has to pull a specific refs/pull/ID/head ref that is not a
branch, thus go get cannot find it because git clone doesn't know about it.
The only way to work around is to git clone manually.
- Remove 'go version' and 'go env' since they are already run as part of
setup-go@v2.
- Fix a new check in go vet in example code.
First I imported the commits from v3.6.6 with:
PKG=devices
git init $PKG
cd $PKG
git remote add origin https://github.com/google/periph
git fetch origin
git filter-repo \
--path AUTHORS \
--path CONTRIBUTING.md \
--path CONTRIBUTORS \
--path LICENSE \
--path README.md \
--path $PKG --path experimental/$PKG $@
git remote add origin git@github.com:periph/$PKG
git fetch origin
# Use the occasion to rename from master to main since we are starting from
# scratch.
git branch -m main
git push origin main
Then I fixed the layout to get rid of experimental with:
git rm experimental/devices/README.md
git mv experimental/devices/* .
git mv devices/* .
The import paths will be fixed in a follow up.