diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 00000000..f4575746 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,80 @@ +name: build +on: + push: + tags: + - v* + branches: + - main + pull_request: + branches: + - main + +concurrency: + group: ${{ github.workflow }}-${{ github.event.number || github.ref }} + cancel-in-progress: true + +env: + GOPRIVATE: github.com/stealthrocket + GH_ACCESS_TOKEN: ${{ secrets.PRIVATE_ACCESS_TOKEN }} + +jobs: + spellcheck: + name: Spell Check + runs-on: ubuntu-latest + steps: + - name: Checkout Actions Repository + uses: actions/checkout@v3 + + - name: Check spelling of Go files + uses: crate-ci/typos@master + with: + files: '*.go' + write_changes: true + + # TODO: golangci-lint does not work well with the dot-import of wasi-go, + # it fails to find the symbols; maybe related to not being able to download + # private dependencies? + # + # golangci-lint: + # name: Go Lint + # runs-on: ubuntu-latest + # timeout-minutes: 30 + # steps: + # - uses: actions/checkout@v3 + + # - name: Set up Go + # uses: actions/setup-go@v4 + # with: + # go-version-file: go.mod + # check-latest: true + + # - name: golangci-lint + # uses: golangci/golangci-lint-action@v3 + # with: + # version: v1.52.2 + # args: --timeout 5m + + # TODO: figure out why the private access token is not working + # + # test: + # name: Go Test + # runs-on: ubuntu-latest + # steps: + # - uses: actions/checkout@v3 + + # - name: Set up Go + # uses: actions/setup-go@v4 + # with: + # go-version-file: go.mod + # check-latest: true + + # - name: Install Go tip + # run: | + # curl -sL https://storage.googleapis.com/go-build-snap/go/linux-amd64/$(git ls-remote https://github.com/golang/go.git HEAD | awk '{print $1;}').tar.gz -o gotip.tar.gz + # ls -lah gotip.tar.gz + # mkdir -p $HOME/gotip + # tar -C $HOME/gotip -xzf gotip.tar.gz + + # - run: git config --global url.https://$GH_ACCESS_TOKEN@github.com.insteadOf https://github.com + # - run: make testdata GO=$HOME/gotip/bin/go + # - run: make test diff --git a/Makefile b/Makefile index 471230c3..7838e556 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,8 @@ .PHONY: clean flatbuffers generate test testdata .PRECIOUS: %.wasm +GO ?= go + testdata.go.src = $(wildcard testdata/go/*.go) testdata.go.wasm = $(testdata.go.src:.go=.wasm) @@ -16,7 +18,7 @@ timecraft.src.go = \ $(wildcard internal/*/*.go) timecraft: go.mod $(timecraft.src.go) - go build -o timecraft + $(GO) build -o timecraft clean: rm -f timecraft $(format.src.go) $(testdata.go.wasm) @@ -24,15 +26,15 @@ clean: generate: flatbuffers flatbuffers: go.mod $(format.src.go) - go build ./format/... + $(GO) build ./format/... test: flatbuffers testdata - go test -v ./... + $(GO) test -v ./... testdata: $(testdata.go.wasm) testdata/go/%.wasm: testdata/go/%.go - GOARCH=wasm GOOS=wasip1 gotip build -o $@ $< + GOARCH=wasm GOOS=wasip1 $(GO) build -o $@ $< # We run goimports because the flatc compiler sometimes adds an unused import of # strconv. diff --git a/format/logcache/logcache_generated.go b/format/logcache/logcache_generated.go index b7d0b379..ba67dd00 100644 --- a/format/logcache/logcache_generated.go +++ b/format/logcache/logcache_generated.go @@ -13,8 +13,6 @@ type RecordSet struct { _tab flatbuffers.Table } -const RecordSetIdentifier = "TL.3" - func GetRootAsRecordSet(buf []byte, offset flatbuffers.UOffsetT) *RecordSet { n := flatbuffers.GetUOffsetT(buf[offset:]) x := &RecordSet{} @@ -22,15 +20,6 @@ func GetRootAsRecordSet(buf []byte, offset flatbuffers.UOffsetT) *RecordSet { return x } -func FinishRecordSetBuffer(builder *flatbuffers.Builder, offset flatbuffers.UOffsetT) { - identifierBytes := []byte(RecordSetIdentifier) - builder.FinishWithFileIdentifier(offset, identifierBytes) -} - -func RecordSetBufferHasIdentifier(buf []byte) bool { - return flatbuffers.BufferHasIdentifier(buf, RecordSetIdentifier) -} - func GetSizePrefixedRootAsRecordSet(buf []byte, offset flatbuffers.UOffsetT) *RecordSet { n := flatbuffers.GetUOffsetT(buf[offset+flatbuffers.SizeUint32:]) x := &RecordSet{} @@ -38,15 +27,6 @@ func GetSizePrefixedRootAsRecordSet(buf []byte, offset flatbuffers.UOffsetT) *Re return x } -func FinishSizePrefixedRecordSetBuffer(builder *flatbuffers.Builder, offset flatbuffers.UOffsetT) { - identifierBytes := []byte(RecordSetIdentifier) - builder.FinishSizePrefixedWithFileIdentifier(offset, identifierBytes) -} - -func SizePrefixedRecordSetBufferHasIdentifier(buf []byte) bool { - return flatbuffers.SizePrefixedBufferHasIdentifier(buf, RecordSetIdentifier) -} - func (rcv *RecordSet) Init(buf []byte, i flatbuffers.UOffsetT) { rcv._tab.Bytes = buf rcv._tab.Pos = i diff --git a/format/logsnapshot/logsnapshot_generated.go b/format/logsnapshot/logsnapshot_generated.go index 65161f0e..9b45121c 100644 --- a/format/logsnapshot/logsnapshot_generated.go +++ b/format/logsnapshot/logsnapshot_generated.go @@ -12,8 +12,6 @@ type RecordRange struct { _tab flatbuffers.Table } -const RecordRangeIdentifier = "TL.1" - func GetRootAsRecordRange(buf []byte, offset flatbuffers.UOffsetT) *RecordRange { n := flatbuffers.GetUOffsetT(buf[offset:]) x := &RecordRange{} @@ -21,15 +19,6 @@ func GetRootAsRecordRange(buf []byte, offset flatbuffers.UOffsetT) *RecordRange return x } -func FinishRecordRangeBuffer(builder *flatbuffers.Builder, offset flatbuffers.UOffsetT) { - identifierBytes := []byte(RecordRangeIdentifier) - builder.FinishWithFileIdentifier(offset, identifierBytes) -} - -func RecordRangeBufferHasIdentifier(buf []byte) bool { - return flatbuffers.BufferHasIdentifier(buf, RecordRangeIdentifier) -} - func GetSizePrefixedRootAsRecordRange(buf []byte, offset flatbuffers.UOffsetT) *RecordRange { n := flatbuffers.GetUOffsetT(buf[offset+flatbuffers.SizeUint32:]) x := &RecordRange{} @@ -37,15 +26,6 @@ func GetSizePrefixedRootAsRecordRange(buf []byte, offset flatbuffers.UOffsetT) * return x } -func FinishSizePrefixedRecordRangeBuffer(builder *flatbuffers.Builder, offset flatbuffers.UOffsetT) { - identifierBytes := []byte(RecordRangeIdentifier) - builder.FinishSizePrefixedWithFileIdentifier(offset, identifierBytes) -} - -func SizePrefixedRecordRangeBufferHasIdentifier(buf []byte) bool { - return flatbuffers.SizePrefixedBufferHasIdentifier(buf, RecordRangeIdentifier) -} - func (rcv *RecordRange) Init(buf []byte, i flatbuffers.UOffsetT) { rcv._tab.Bytes = buf rcv._tab.Pos = i @@ -317,10 +297,6 @@ func GetRootAsOpenFile(buf []byte, offset flatbuffers.UOffsetT) *OpenFile { return x } -func FinishOpenFileBuffer(builder *flatbuffers.Builder, offset flatbuffers.UOffsetT) { - builder.Finish(offset) -} - func GetSizePrefixedRootAsOpenFile(buf []byte, offset flatbuffers.UOffsetT) *OpenFile { n := flatbuffers.GetUOffsetT(buf[offset+flatbuffers.SizeUint32:]) x := &OpenFile{} @@ -328,10 +304,6 @@ func GetSizePrefixedRootAsOpenFile(buf []byte, offset flatbuffers.UOffsetT) *Ope return x } -func FinishSizePrefixedOpenFileBuffer(builder *flatbuffers.Builder, offset flatbuffers.UOffsetT) { - builder.FinishSizePrefixed(offset) -} - func (rcv *OpenFile) Init(buf []byte, i flatbuffers.UOffsetT) { rcv._tab.Bytes = buf rcv._tab.Pos = i @@ -400,10 +372,6 @@ func GetRootAsOpenHandle(buf []byte, offset flatbuffers.UOffsetT) *OpenHandle { return x } -func FinishOpenHandleBuffer(builder *flatbuffers.Builder, offset flatbuffers.UOffsetT) { - builder.Finish(offset) -} - func GetSizePrefixedRootAsOpenHandle(buf []byte, offset flatbuffers.UOffsetT) *OpenHandle { n := flatbuffers.GetUOffsetT(buf[offset+flatbuffers.SizeUint32:]) x := &OpenHandle{} @@ -411,10 +379,6 @@ func GetSizePrefixedRootAsOpenHandle(buf []byte, offset flatbuffers.UOffsetT) *O return x } -func FinishSizePrefixedOpenHandleBuffer(builder *flatbuffers.Builder, offset flatbuffers.UOffsetT) { - builder.FinishSizePrefixed(offset) -} - func (rcv *OpenHandle) Init(buf []byte, i flatbuffers.UOffsetT) { rcv._tab.Bytes = buf rcv._tab.Pos = i