Skip to content

[WIP] Update to Go 1.19 and React with line numbers #1

[WIP] Update to Go 1.19 and React with line numbers

[WIP] Update to Go 1.19 and React with line numbers #1

Workflow file for this run

name: CI
on:
push:
branches: [ "*" ]
pull_request:
branches: [ "*" ]
permissions:
contents: read
pull-requests: read
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
env:
GO_VERSION: 1.19.13
NODE_VERSION: 18
GOLANGCI_VERSION: v1.53.3
SOURCE_MAP_SUPPORT: true
GOPATH: ${{ github.workspace }}/go
GOPHERJS_PATH: ${{ github.workspace }}/go/src/github.com/${{ github.repository }}
jobs:
lint:
name: Lint Checks
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
path: ${{ env.GOPHERJS_PATH }}
- uses: actions/setup-go@v5
with:
go-version: ${{ env.GO_VERSION }}
- name: Install golangci-lint
uses: golangci/golangci-lint-action@v3
with:
working-directory: ${{ env.GOPHERJS_PATH }}
version: ${{ env.GOLANGCI_VERSION }}
only-new-issues: true
- name: Check go.mod
working-directory: ${{ env.GOPHERJS_PATH }}
run: go mod tidy && git diff --exit-code
- name: Check natives build tags
working-directory: ${{ env.GOPHERJS_PATH }}
run: |
echo "Any following packages have at least one file that is missing //go:build js"
diff -u <(echo -n) <(go list ./compiler/natives/src/...)
go_tests:
name: Go Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
path: ${{ env.GOPHERJS_PATH }}
- name: Copy Actions
run: cp -r ${{ env.GOPHERJS_PATH }}/.github .
- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: ${{ env.GO_VERSION }}
- name: Setup Go Environment
working-directory: ${{ env.GOPHERJS_PATH }}
shell: bash
run: echo "GOROOT=$(go env GOROOT)" >> $GITHUB_ENV
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: Install Node.js for Linux
working-directory: ${{ env.GOPHERJS_PATH }}
shell: bash
# Install required Node.js packages including optional (node-syscall).
run: |
npm install --include=optional --no-package-lock
- name: Setup Node.js Environment
working-directory: ${{ env.GOPHERJS_PATH }}
shell: bash
# Make nodejs able to require installed modules from any working path.
run: echo "NODE_PATH=$(npm root)" >> $GITHUB_ENV
- name: Install GopherJS
working-directory: ${{ env.GOPHERJS_PATH }}
shell: bash
run: go install -v
- name: Setup information
shell: bash
run: |
echo ::notice::go version: $(go version)
echo ::notice::node version: $(node -v)
echo ::notice::npm version: $(npm -v)
echo ::notice::gopherjs version: $(gopherjs version)
- name: Run Tests
working-directory: ${{ env.GOPHERJS_PATH }}
run: go test -v -race ./...