From 50139dc1c2650c251f4ab89d384bf799abaaef17 Mon Sep 17 00:00:00 2001 From: Xavier Godart Date: Thu, 28 Nov 2024 14:35:54 +0100 Subject: [PATCH 1/8] add windows 32 bits build attempt --- .github/workflows/build.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f08778f..ef82870 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -46,6 +46,10 @@ jobs: run: go build -ldflags "-linkmode 'external' -extldflags '-static'" -o bin/signls.exe if: startsWith(matrix.os, 'windows') + - name: Build windows 32 + run: go build GOARCH=386 -ldflags "-linkmode 'external' -extldflags '-static'" -o bin/signls32.exe + if: startsWith(matrix.os, 'windows') + - name: Tar.gz linux|mac files run: tar -zcvf signls_${{ github.ref_name }}_${{ runner.os}}.tar.gz LICENSE -C bin signls if: ${{ !startsWith(matrix.os, 'windows') }} @@ -56,6 +60,12 @@ jobs: Compress-Archive bin\signls.exe signls_${{ github.ref_name }}_${{ runner.os}}.zip if: ${{ startsWith(matrix.os, 'windows') }} + - name: Zip windows 32 files + shell: pwsh + run: | + Compress-Archive bin\signls32.exe signls_${{ github.ref_name }}_${{ runner.os}}_32.zip + if: ${{ startsWith(matrix.os, 'windows') }} + - name: Upload linux|mac artifact uses: actions/upload-artifact@v4 with: @@ -72,6 +82,14 @@ jobs: if-no-files-found: error if: ${{ startsWith(matrix.os, 'windows') }} + - name: Upload windows 32 artifact + uses: actions/upload-artifact@v4 + with: + name: signls_${{ github.sha }}_${{ runner.os}}_32 + path: signls_${{ github.ref_name }}_${{ runner.os}}_32.zip + if-no-files-found: error + if: ${{ startsWith(matrix.os, 'windows') }} + release: needs: build if: startsWith(github.ref, 'refs/tags/v') From c396fccdbbe4363ddc5db4ecf87541c4dc083a94 Mon Sep 17 00:00:00 2001 From: Xavier Godart Date: Thu, 28 Nov 2024 14:40:57 +0100 Subject: [PATCH 2/8] fix win build --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ef82870..bd33311 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -47,7 +47,7 @@ jobs: if: startsWith(matrix.os, 'windows') - name: Build windows 32 - run: go build GOARCH=386 -ldflags "-linkmode 'external' -extldflags '-static'" -o bin/signls32.exe + run: GOARCH=386 go build -ldflags "-linkmode 'external' -extldflags '-static'" -o bin/signls32.exe if: startsWith(matrix.os, 'windows') - name: Tar.gz linux|mac files From 8023cca29e7ffc8ff47f96033281a8e593bd6e50 Mon Sep 17 00:00:00 2001 From: Xavier Godart Date: Thu, 28 Nov 2024 14:42:55 +0100 Subject: [PATCH 3/8] keep only windows build for now --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index bd33311..1f5c57f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -14,7 +14,7 @@ jobs: build: strategy: matrix: - os: [ubuntu-20.04, macos-13, windows-2019] + os: [windows-2019] runs-on: ${{ matrix.os }} env: CGO_ENABLED: 1 From bc6c45a9248085c223f90be1587efd4d239c8ea3 Mon Sep 17 00:00:00 2001 From: Xavier Godart Date: Thu, 28 Nov 2024 14:52:18 +0100 Subject: [PATCH 4/8] set win architecture --- .github/workflows/build.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1f5c57f..e974c58 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -18,6 +18,7 @@ jobs: runs-on: ${{ matrix.os }} env: CGO_ENABLED: 1 + GOARCH: 386 steps: - uses: actions/checkout@v4 @@ -47,7 +48,7 @@ jobs: if: startsWith(matrix.os, 'windows') - name: Build windows 32 - run: GOARCH=386 go build -ldflags "-linkmode 'external' -extldflags '-static'" -o bin/signls32.exe + run: go build -ldflags "-linkmode 'external' -extldflags '-static'" -o bin/signls32.exe if: startsWith(matrix.os, 'windows') - name: Tar.gz linux|mac files From 777c2474457df571fa8aca4f8927daa45ca0a29f Mon Sep 17 00:00:00 2001 From: Xavier Godart Date: Fri, 29 Nov 2024 10:13:20 +0100 Subject: [PATCH 5/8] downgrade go and gomidi --- .github/workflows/build.yml | 2 +- go.mod | 2 +- go.sum | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e974c58..90e4aa6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -29,7 +29,7 @@ jobs: - name: Install Go uses: actions/setup-go@v5 with: - go-version: 1.23 + go-version: 1.20 - name: Release version number run: echo '${{ github.ref_name}}' > VERSION diff --git a/go.mod b/go.mod index 5a8cce1..d6706ab 100644 --- a/go.mod +++ b/go.mod @@ -6,7 +6,7 @@ require ( github.com/charmbracelet/bubbles v0.20.0 github.com/charmbracelet/bubbletea v1.2.4 github.com/charmbracelet/lipgloss v1.0.0 - gitlab.com/gomidi/midi/v2 v2.2.19 + gitlab.com/gomidi/midi/v2 v2.1.7 ) require ( diff --git a/go.sum b/go.sum index f200f5f..ca60efc 100644 --- a/go.sum +++ b/go.sum @@ -31,8 +31,8 @@ github.com/muesli/termenv v0.15.2/go.mod h1:Epx+iuz8sNs7mNKhxzH4fWXGNpZwUaJKRS1n github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= -gitlab.com/gomidi/midi/v2 v2.2.19 h1:/Ktpf21SIOX61gg8PJ7wYLSsD+dOU1e3z3tlO9OS+Zs= -gitlab.com/gomidi/midi/v2 v2.2.19/go.mod h1:ENtYaJPOwb2N+y7ihv/L7R4GtWjbknouhIIkMrJ5C0g= +gitlab.com/gomidi/midi/v2 v2.1.7 h1:lIjVXH+bnGG04j/kUVOFILt0BQvBeGz8Kyz0l6aM830= +gitlab.com/gomidi/midi/v2 v2.1.7/go.mod h1:Cj6K9VH5GhYvPgL2JddxHBmZiP3nxKxB5XyTxiXvL9U= golang.org/x/sync v0.9.0 h1:fEo0HyrW1GIgZdpbhCRO0PkJajUS5H9IFUztCgEo2jQ= golang.org/x/sync v0.9.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= From b65f012ed35a23cc7dc444fcc0b75a2daf339fb6 Mon Sep 17 00:00:00 2001 From: Xavier Godart Date: Fri, 29 Nov 2024 10:18:53 +0100 Subject: [PATCH 6/8] downgrade go --- go.mod | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go.mod b/go.mod index d6706ab..56abc62 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module signls -go 1.23 +go 1.20 require ( github.com/charmbracelet/bubbles v0.20.0 From cd4b73bc64bd64587fb1e0032b588431cb61a6ac Mon Sep 17 00:00:00 2001 From: Xavier Godart Date: Fri, 29 Nov 2024 10:30:56 +0100 Subject: [PATCH 7/8] fix go verison --- .github/workflows/build.yml | 2 +- .github/workflows/checks.yml | 26 -------------------------- 2 files changed, 1 insertion(+), 27 deletions(-) delete mode 100644 .github/workflows/checks.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 90e4aa6..b813527 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -29,7 +29,7 @@ jobs: - name: Install Go uses: actions/setup-go@v5 with: - go-version: 1.20 + go-version: "1.20" - name: Release version number run: echo '${{ github.ref_name}}' > VERSION diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml deleted file mode 100644 index ff7cb8a..0000000 --- a/.github/workflows/checks.yml +++ /dev/null @@ -1,26 +0,0 @@ -name: checks -on: - # push: - # branches: ["main"] - # tags: ["v*"] - pull_request: - branches: ["main"] - -permissions: - contents: read - pull-requests: read - -jobs: - golangci: - name: checks - runs-on: ubuntu-latest - steps: - - uses: actions/setup-go@v5 - with: - go-version: 1.23 - - uses: actions/checkout@v4 - - name: golangci-lint - uses: golangci/golangci-lint-action@v4 - with: - args: -c .golangci.yml - only-new-issues: true From 2d1bfc043ac772301b28e51d1ecaf7ddf82cc547 Mon Sep 17 00:00:00 2001 From: Xavier Godart Date: Fri, 29 Nov 2024 10:41:08 +0100 Subject: [PATCH 8/8] add min max functions --- core/common/control_value.go | 14 ++++++++++++++ ui/util/value.go | 14 ++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/core/common/control_value.go b/core/common/control_value.go index 7efcd53..6e2ab24 100644 --- a/core/common/control_value.go +++ b/core/common/control_value.go @@ -98,3 +98,17 @@ func (p *ControlValue[T]) SetMax(max T) { } p.max = max } + +func min[T Number](a, b T) T { + if a < b { + return a + } + return b +} + +func max[T Number](a, b T) T { + if a > b { + return a + } + return b +} diff --git a/ui/util/value.go b/ui/util/value.go index dc16471..4b49ac8 100644 --- a/ui/util/value.go +++ b/ui/util/value.go @@ -9,3 +9,17 @@ func Clamp(value, minimum, maximum int) int { func Mod(a, b int) int { return (a%b + b) % b } + +func min(a, b int) int { + if a < b { + return a + } + return b +} + +func max(a, b int) int { + if a > b { + return a + } + return b +}