Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
5116ee5
fix(iot): reclaim broker sessions whose CONNACK write failed
Oct 27, 2026
1721aab
fix(iot): sweep custom-auth sessions of closed clients
Oct 27, 2026
2994344
perf(neptune,docdb): compile not-found rewrite regexps once
Oct 27, 2026
74c2b16
chore(lint): satisfy lint on leak-scan fixes
Oct 27, 2026
bfca9dd
fix(timestreaminfluxdb): race-free log follower cancel
Oct 27, 2026
033707e
perf(gcpbigquery,cloudwatchlogs): compile per-call regexps once
Oct 27, 2026
f2b36b7
test: widen alloc thresholds that flaked under -race -count
Oct 27, 2026
677ad00
chore(lint): fix shadow in followLogs
Oct 27, 2026
c93bd77
build(deps): bump root and desktop Go modules (all releases >=14 days…
Oct 27, 2026
a9c34b7
build(deps): bump testcontainers/go module
Oct 27, 2026
d50aa6f
build(deps): bump Go example modules
Oct 27, 2026
c05cb2b
build(deps): bump ui npm dependencies (typescript held at 6.0.3)
Oct 27, 2026
4cd9829
build(deps): bump crosssdk npm/pip and apigw chat handler dependencies
Oct 27, 2026
8b6c013
build(deps): bump codeql-action to v4.38.3
Oct 27, 2026
46adb0d
Merge branch 'perf/leak-scan' into chore/deps-and-leaks
Oct 27, 2026
36c4f79
feat(glue): Data Quality V2 results (Publish/Get/BatchGet/List) after…
Oct 27, 2026
17256eb
style(glue): wrap long test line
Oct 27, 2026
a843dcf
style(glue): wrap long test line
Oct 27, 2026
dedafb1
fix(gcpcloudbuild): make Wait safe against concurrent build launches
Oct 27, 2026
967ca7b
fix(gcpcloudbuild): field alignment and require in Wait test
Oct 27, 2026
ddae2c6
Merge branch 'fix/cloudbuild-wg-race' into chore/deps-and-leaks
Oct 27, 2026
fd6193d
refactor: drop manual response-body drains the Go 1.27 transport make…
Oct 27, 2026
1808d73
refactor(httputils): drop server-side request body draining
Oct 27, 2026
ead37ae
fix(docker): surface image pull errors reported in the pull stream
Oct 27, 2026
6375f17
feat(desktop): port desktop app to Wails v3.0.0
Oct 27, 2026
ffde966
fix(docker): surface image pull errors reported in the pull stream
Oct 27, 2026
cc6f3d3
Merge branch 'chore/drop-server-drain' into chore/deps-and-leaks
Oct 27, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,7 @@ jobs:
- name: Install Linux webview dependencies
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev
sudo apt-get install -y libgtk-4-dev libwebkitgtk-6.0-dev

- name: Verify build with all tag combinations
run: task build-check
Expand All @@ -199,7 +199,7 @@ jobs:
run: |
mkdir -p ../dashboard/static/spa
touch ../dashboard/static/spa/.keep
CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -trimpath -buildvcs=false -tags "production,webkit2_41" -o /dev/null .
CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -trimpath -buildvcs=false -tags "production" -o /dev/null .
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -trimpath -buildvcs=false -tags "production" -ldflags "-H windowsgui" -o /dev/null .
CGO_ENABLED=0 GOOS=windows GOARCH=arm64 go build -trimpath -buildvcs=false -tags "production" -ldflags "-H windowsgui" -o /dev/null .

Expand Down Expand Up @@ -380,7 +380,7 @@ jobs:

- name: Upload govulncheck SARIF
if: always()
uses: github/codeql-action/upload-sarif@6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee # v4
uses: github/codeql-action/upload-sarif@24c54180a607b1449ed407dd24f251e4e9147c8d # v4
with:
sarif_file: govulncheck.sarif
category: govulncheck
Expand Down Expand Up @@ -452,7 +452,7 @@ jobs:
free -h

- name: Initialize CodeQL
uses: github/codeql-action/init@6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee # v4
uses: github/codeql-action/init@24c54180a607b1449ed407dd24f251e4e9147c8d # v4
with:
languages: ${{ matrix.language }}
build-mode: 'manual'
Expand All @@ -464,7 +464,7 @@ jobs:
run: go build -p 2 ./...

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee # v4
uses: github/codeql-action/analyze@24c54180a607b1449ed407dd24f251e4e9147c8d # v4
with:
category: "/language:${{ matrix.language }}"

Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -251,7 +251,7 @@ jobs:
if: runner.os == 'Linux'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev
sudo apt-get install -y libgtk-4-dev libwebkitgtk-6.0-dev

- name: Build SPA
shell: bash
Expand All @@ -271,7 +271,6 @@ jobs:
version="${TAG#v}"
tags=production
ldflags="-s -w -X ${VERSION_PKG}.Build=${version}"
[ "$RUNNER_OS" = "Linux" ] && tags="$tags,webkit2_41"
[ "$RUNNER_OS" = "Windows" ] && ldflags="$ldflags -H windowsgui"
[ "$RUNNER_OS" = "macOS" ] && ldflags="$ldflags -extldflags '-framework UniformTypeIdentifiers'"
mkdir -p ../out/pkg
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/scorecard.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,6 @@ jobs:
publish_results: true

- name: Upload SARIF to code scanning
uses: github/codeql-action/upload-sarif@6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee # v4
uses: github/codeql-action/upload-sarif@24c54180a607b1449ed407dd24f251e4e9147c8d # v4
with:
sarif_file: results.sarif
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ server and dashboard (system webview, no browser needed). Download

- macOS: unzip and open `Gopherstack.app`. It is ad-hoc signed, not notarized, so the first launch needs approval: System Settings → Privacy & Security → Open Anyway, or `xattr -dr com.apple.quarantine Gopherstack.app`
- Windows: unzip and run `gopherstack-desktop.exe` (needs the WebView2 runtime, preinstalled on Windows 11)
- Linux: extract and run `gopherstack-desktop` (needs `libgtk-3` and `libwebkit2gtk-4.1`)
- Linux: extract and run `gopherstack-desktop` (needs GTK 4 and WebKitGTK 6.0: `libgtk-4-1` and `libwebkitgtk-6.0-4`)

It serves on port 8000 if free, otherwise a random loopback port, and accepts
the same flags and environment variables as the headless binary (e.g. `--port`).
Expand Down Expand Up @@ -222,7 +222,7 @@ A built-in UI at `http://localhost:8000/dashboard` for inspecting and managing l
### Desktop App

`gopherstack-desktop` runs the full emulator and its dashboard as a native app on
macOS, Windows and Linux, with no browser or terminal needed. It's built with Wails
macOS, Windows and Linux, with no browser or terminal needed. It's built with Wails v3
on the system webview, so it adds only a few MB over the headless binary, and it
ships with every release next to the headless `gopherstack`. See
[Desktop app](#desktop-app) for install steps.
Expand Down Expand Up @@ -771,7 +771,7 @@ Every service links to its own page with a coverage breakdown — audited operat
| [EMR](services/emr/README.md) | A | 65 | 7 structural gaps |
| [EMR Serverless](services/emrserverless/README.md) | A | 22 | 1 structural gap |
| [Elasticsearch](services/elasticsearch/README.md) | A | 51 | 1 structural gap |
| [Glue](services/glue/README.md) | A | 59 | 3 gaps; 5 structural gaps; 2 deferred |
| [Glue](services/glue/README.md) | A | 59 | 4 gaps; 5 structural gaps; 2 deferred |
| [Glue DataBrew](services/databrew/README.md) | A | 44 | 1 structural gap |
| [Kinesis](services/kinesis/README.md) | A | 39 | 1 gap; 5 structural gaps |
| [Kinesis Analytics](services/kinesisanalytics/README.md) | A | 20 | clean |
Expand Down
14 changes: 7 additions & 7 deletions Taskfile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ tasks:
go build \
-trimpath \
-buildvcs=false \
-tags "production{{if eq OS "linux"}},webkit2_41{{end}}" \
-tags "production" \
-ldflags "-w -s -X {{.VERSION_PKG}}.Build={{.BUILD_VERSION}}{{if eq OS "windows"}} -H windowsgui{{end}}{{if eq OS "darwin"}} -extldflags '-framework UniformTypeIdentifiers'{{end}}" \
-o ../bin/{{.BINARY_NAME}}-desktop{{exeExt}} .

Expand Down Expand Up @@ -68,24 +68,24 @@ tasks:
if [ "$(uname -s)" = "Linux" ]; then
echo "Building desktop linux/$(go env GOARCH)..."
CGO_ENABLED=1 GOOS=linux go -C desktop build \
-trimpath -buildvcs=false -tags "production,webkit2_41" \
-trimpath -buildvcs=false -tags "production" \
-ldflags "-w -s -X {{.VERSION_PKG}}.Build={{.BUILD_VERSION}}" \
-o "../bin/desktop/{{.BINARY_NAME}}-desktop-linux-$(go env GOARCH)" .
elif command -v docker >/dev/null 2>&1 && docker info >/dev/null 2>&1; then
for arch in amd64 arm64; do
echo "Building desktop linux/${arch} via Docker (webkit2gtk-4.1)..."
echo "Building desktop linux/${arch} via Docker (WebKitGTK 6.0)..."
docker run --rm --platform "linux/${arch}" \
-v "$PWD:/src" -w /src/desktop \
-e CGO_ENABLED=1 -e GOTOOLCHAIN=auto \
golang:1.27-bookworm bash -c "
apt-get update -qq && apt-get install -y -qq libgtk-3-dev libwebkit2gtk-4.1-dev >/dev/null &&
go build -trimpath -buildvcs=false -tags 'production,webkit2_41' \
golang:1.27-trixie bash -c "
apt-get update -qq && apt-get install -y -qq libgtk-4-dev libwebkitgtk-6.0-dev >/dev/null &&
go build -trimpath -buildvcs=false -tags 'production' \
-ldflags '-w -s -X {{.VERSION_PKG}}.Build={{.BUILD_VERSION}}' \
-o '../bin/desktop/{{.BINARY_NAME}}-desktop-linux-${arch}' .
"
done
else
echo "Skipping linux desktop builds (requires Linux host or running Docker daemon for webkit2gtk-4.1 CGO headers)"
echo "Skipping linux desktop builds (requires Linux host or running Docker daemon for WebKitGTK 6.0 CGO headers)"
fi
- ls -lh bin/desktop/

Expand Down
Loading
Loading