3 on: [push, pull_request]
11 go-version: [ '1.16', '1.17' ]
14 - uses: actions/checkout@v2
15 - uses: ./.github/actions/go-common
16 - run: go test -race -count 2 ./...
19 runs-on: ubuntu-latest
22 go-version: [ '1.17' ]
25 - uses: actions/checkout@v2
26 - uses: ./.github/actions/go-common
27 - run: go test -race -run @ -bench . -benchtime 2x ./...
30 runs-on: ubuntu-latest
33 go-version: [ '1.17' ]
36 - uses: actions/checkout@v2
37 - uses: ./.github/actions/go-common
38 - run: go test -run @ -bench . ./...
41 runs-on: ubuntu-latest
44 go-version: [ '1.16', '1.17' ]
47 - uses: actions/checkout@v2
48 - uses: ./.github/actions/go-common
49 - run: GOARCH=386 go test ./...
50 - run: GOARCH=386 go test ./... -run @ -bench .
53 runs-on: ubuntu-latest
56 go-version: [ '1.16', '1.17' ]
59 - uses: actions/checkout@v2
60 - uses: ./.github/actions/go-common
61 - name: Some packages compile for WebAssembly
62 run: GOOS=js GOARCH=wasm go build -v . ./storage ./tracker/...
65 runs-on: ubuntu-latest
68 go-version: [ '1.17' ]
71 - uses: actions/checkout@v2
72 - uses: ./.github/actions/go-common
75 # Need master for cross-compiling fix
76 go install -v -x github.com/anacrolix/godo@master
80 run: sudo apt install pv fuse
82 - name: torrentfs end-to-end test
83 # Test on 386 for atomic alignment and other bad 64-bit assumptions
84 run: GOARCH=386 fs/test.sh