Skip to content

Commit 86871f7

Browse files
authored
Merge branch 'develop' into fix/text-improve
2 parents 3fd76ed + 022c72b commit 86871f7

39 files changed

Lines changed: 1194 additions & 128 deletions

.github/actions/setup/action.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ runs:
1111

1212
- name: Restore Bun toolchain cache
1313
id: bun-toolchain-cache
14-
uses: actions/cache@v4
14+
uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5
1515
with:
1616
path: /opt/hostedtoolcache/bun
1717
key: bun-toolchain-${{ runner.os }}-${{ runner.arch }}-${{ env.BUN_VERSION }}
@@ -39,7 +39,7 @@ runs:
3939
run: bun --version
4040

4141
- name: Install Node.js
42-
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
42+
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
4343
with:
4444
node-version-file: .nvmrc
4545
package-manager-cache: false
@@ -49,7 +49,7 @@ runs:
4949
run: npm install --global --force corepack && corepack enable
5050

5151
- name: Configure dependency cache
52-
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
52+
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
5353
with:
5454
cache: pnpm
5555

.github/workflows/cli-go-api-sync.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ permissions:
1212
jobs:
1313
sync:
1414
name: Sync API Types
15-
runs-on: ubuntu-latest
15+
runs-on: blacksmith-2vcpu-ubuntu-2404
1616
steps:
1717
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
1818

.github/workflows/cli-go-ci.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@ permissions:
1919
jobs:
2020
test:
2121
name: Test
22-
runs-on: ubuntu-latest
22+
runs-on: blacksmith-8vcpu-ubuntu-2404
2323
steps:
2424
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
2525

26-
- uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0
26+
- uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
2727
with:
2828
go-version-file: apps/cli-go/go.mod
2929
cache: true
@@ -60,7 +60,7 @@ jobs:
6060
steps:
6161
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
6262

63-
- uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0
63+
- uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
6464
with:
6565
go-version-file: apps/cli-go/go.mod
6666
# Linter requires no cache
@@ -78,7 +78,7 @@ jobs:
7878
runs-on: ubuntu-latest
7979
steps:
8080
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
81-
- uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0
81+
- uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
8282
with:
8383
go-version-file: apps/cli-go/go.mod
8484
cache: true
@@ -102,7 +102,7 @@ jobs:
102102
runs-on: ubuntu-latest
103103
steps:
104104
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
105-
- uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0
105+
- uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
106106
with:
107107
go-version-file: apps/cli-go/go.mod
108108
cache: true
@@ -118,7 +118,7 @@ jobs:
118118
steps:
119119
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
120120

121-
- uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0
121+
- uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
122122
with:
123123
go-version-file: apps/cli-go/go.mod
124124
cache: true

.github/workflows/cli-go-codeql.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
# - https://gh.io/supported-runners-and-hardware-resources
3333
# - https://gh.io/using-larger-runners (GitHub.com only)
3434
# Consider using larger runners or machines with greater resources for possible analysis time improvements.
35-
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
35+
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'blacksmith-8vcpu-ubuntu-2404' }}
3636
timeout-minutes: ${{ (matrix.language == 'swift' && 120) || 360 }}
3737
permissions:
3838
# required for all workflows

.github/workflows/cli-go-mirror.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ permissions:
2222

2323
jobs:
2424
setup:
25-
runs-on: ubuntu-latest
25+
runs-on: blacksmith-2vcpu-ubuntu-2404
2626
outputs:
2727
tags: ${{ steps.list.outputs.tags }}
2828
curr: ${{ steps.curr.outputs.tags }}

.github/workflows/cli-go-pg-prove.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -74,10 +74,12 @@ jobs:
7474
username: ${{ secrets.DOCKER_USERNAME }}
7575
password: ${{ secrets.DOCKER_PASSWORD }}
7676
- name: Merge multi-arch manifests
77+
env:
78+
IMAGE_TAG: ${{ needs.settings.outputs.image_tag }}
7779
run: |
78-
docker buildx imagetools create -t ${{ needs.settings.outputs.image_tag }} \
79-
${{ needs.settings.outputs.image_tag }}_amd64 \
80-
${{ needs.settings.outputs.image_tag }}_arm64
80+
docker buildx imagetools create -t "${IMAGE_TAG}" \
81+
"${IMAGE_TAG}_amd64" \
82+
"${IMAGE_TAG}_arm64"
8183
8284
publish:
8385
needs:

.github/workflows/cli-go-publish-migra.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -74,10 +74,12 @@ jobs:
7474
username: ${{ secrets.DOCKER_USERNAME }}
7575
password: ${{ secrets.DOCKER_PASSWORD }}
7676
- name: Merge multi-arch manifests
77+
env:
78+
IMAGE_TAG: ${{ needs.settings.outputs.image_tag }}
7779
run: |
78-
docker buildx imagetools create -t "${{ needs.settings.outputs.image_tag }}" \
79-
"${{ needs.settings.outputs.image_tag }}_amd64" \
80-
"${{ needs.settings.outputs.image_tag }}_arm64"
80+
docker buildx imagetools create -t "${IMAGE_TAG}" \
81+
"${IMAGE_TAG}_amd64" \
82+
"${IMAGE_TAG}_arm64"
8183
8284
publish:
8385
needs:

.github/workflows/release-shared.yml

Lines changed: 43 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,10 @@ on:
4545

4646
jobs:
4747
build:
48-
runs-on: large-linux-x86
48+
runs-on: blacksmith-32vcpu-ubuntu-2404
49+
env:
50+
BUN_SHELL: ${{ inputs.shell }}
51+
VERSION: ${{ inputs.version }}
4952
steps:
5053
- name: Checkout
5154
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
@@ -54,7 +57,7 @@ jobs:
5457
uses: ./.github/actions/setup
5558

5659
- name: Setup Go
57-
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0
60+
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
5861
with:
5962
go-version-file: apps/cli-go/go.mod
6063
cache: true
@@ -71,10 +74,10 @@ jobs:
7174
sudo apt-get install -y nfpm
7275
7376
- name: Sync versions
74-
run: pnpm exec bun apps/cli/scripts/sync-versions.ts --version ${{ inputs.version }}
77+
run: pnpm exec bun apps/cli/scripts/sync-versions.ts --version "${VERSION}"
7578

7679
- name: Build selected shell
77-
run: pnpm exec bun apps/cli/scripts/build.ts --version ${{ inputs.version }} --shell ${{ inputs.shell }}
80+
run: pnpm exec bun apps/cli/scripts/build.ts --version "${VERSION}" --shell "${BUN_SHELL}"
7881

7982
- name: Verify build artifacts
8083
run: |
@@ -95,11 +98,19 @@ jobs:
9598
9699
smoke-test:
97100
needs: build
101+
# macos-15-intel is the slowest smoke leg and the only one not on
102+
# Blacksmith (Blacksmith macOS is ARM-only). Skip it on prereleases
103+
# (PR smoke + develop -> beta) so beta wall-clock isn't gated by it;
104+
# stable releases on main still run the full matrix.
105+
if: ${{ !(matrix.runner == 'macos-15-intel' && inputs.prerelease) }}
98106
strategy:
99107
fail-fast: false
100108
matrix:
101-
runner: [ubuntu-latest, macos-latest, macos-15-intel, windows-latest]
109+
runner: [blacksmith-8vcpu-ubuntu-2404, blacksmith-6vcpu-macos-latest, macos-15-intel, blacksmith-8vcpu-windows-2025]
102110
runs-on: ${{ matrix.runner }}
111+
env:
112+
NPM_TAG: ${{ inputs.npm_tag }}
113+
VERSION: ${{ inputs.version }}
103114
steps:
104115
- name: Checkout
105116
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
@@ -128,13 +139,21 @@ jobs:
128139
run: chmod +x packages/cli-*/bin/supabase || true
129140

130141
- name: Run smoke tests
131-
run: pnpm run test:smoke -- --version ${{ inputs.version }} --tag ${{ inputs.npm_tag }}
142+
# Force bash so ${VERSION}/${NPM_TAG} expand identically across the
143+
# ubuntu/macos/windows matrix — windows-latest defaults to pwsh, which
144+
# treats those as empty PowerShell variables (env vars are `$env:VAR`).
145+
shell: bash
146+
run: pnpm run test:smoke -- --version "${VERSION}" --tag "${NPM_TAG}"
132147
working-directory: apps/cli
133148

134149
publish:
135150
needs: smoke-test
136151
if: ${{ !inputs.dry_run }}
137-
runs-on: ubuntu-latest
152+
runs-on: blacksmith-2vcpu-ubuntu-2404
153+
env:
154+
CHANNEL: ${{ inputs.channel }}
155+
NPM_TAG: ${{ inputs.npm_tag }}
156+
VERSION: ${{ inputs.version }}
138157
permissions:
139158
contents: write
140159
id-token: write
@@ -151,10 +170,10 @@ jobs:
151170
name: cli-build-${{ inputs.shell }}-${{ inputs.version }}
152171

153172
- name: Sync versions
154-
run: pnpm exec bun apps/cli/scripts/sync-versions.ts --version ${{ inputs.version }}
173+
run: pnpm exec bun apps/cli/scripts/sync-versions.ts --version "${VERSION}"
155174

156175
- name: Publish to npm
157-
run: pnpm exec bun apps/cli/scripts/publish.ts --tag ${{ inputs.npm_tag }}
176+
run: pnpm exec bun apps/cli/scripts/publish.ts --tag "${NPM_TAG}"
158177

159178
# Push the version tag to origin as soon as npm has the bytes, before any
160179
# downstream step that can fail. Without this, a failure in the GH-release
@@ -166,7 +185,7 @@ jobs:
166185
- name: Push version tag
167186
run: |
168187
set -euo pipefail
169-
tag="v${{ inputs.version }}"
188+
tag="v${VERSION}"
170189
git config user.name "github-actions[bot]"
171190
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
172191
if git ls-remote --tags origin "refs/tags/${tag}" | grep -q .; then
@@ -193,8 +212,8 @@ jobs:
193212
if: ${{ inputs.prerelease }}
194213
run: |
195214
set -euo pipefail
196-
tag="v${{ inputs.version }}"
197-
channel="${{ inputs.channel }}"
215+
tag="v${VERSION}"
216+
channel="${CHANNEL}"
198217
note_ref="refs/notes/semantic-release-${tag}"
199218
if git ls-remote origin "${note_ref}" | grep -q .; then
200219
echo "Channel note ${note_ref} already on origin; skipping push."
@@ -211,7 +230,7 @@ jobs:
211230
run: |
212231
set -euo pipefail
213232
for triple in darwin_arm64 darwin_amd64 linux_arm64 linux_amd64 windows_arm64 windows_amd64; do
214-
cp "dist/supabase_${{ inputs.version }}_${triple}.tar.gz" "dist/supabase_${triple}.tar.gz"
233+
cp "dist/supabase_${VERSION}_${triple}.tar.gz" "dist/supabase_${triple}.tar.gz"
215234
done
216235
217236
- name: Create draft GitHub Release
@@ -247,12 +266,15 @@ jobs:
247266
- name: Publish GitHub Release (immutable)
248267
env:
249268
GH_TOKEN: ${{ github.token }}
250-
run: gh release edit v${{ inputs.version }} --draft=false
269+
run: gh release edit "v${VERSION}" --draft=false
251270

252271
publish-homebrew:
253272
needs: publish
254273
if: ${{ !inputs.dry_run && inputs.publish_brew_scoop }}
255-
runs-on: ubuntu-latest
274+
runs-on: blacksmith-2vcpu-ubuntu-2404
275+
env:
276+
BREW_NAME: ${{ inputs.brew_name }}
277+
VERSION: ${{ inputs.version }}
256278
steps:
257279
- name: Checkout
258280
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
@@ -284,14 +306,17 @@ jobs:
284306
git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
285307
286308
- name: Update Homebrew formula
287-
run: pnpm exec bun apps/cli/scripts/update-homebrew.ts --version ${{ inputs.version }} --name ${{ inputs.brew_name }}
309+
run: pnpm exec bun apps/cli/scripts/update-homebrew.ts --version "${VERSION}" --name "${BREW_NAME}"
288310
env:
289311
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
290312

291313
publish-scoop:
292314
needs: publish
293315
if: ${{ !inputs.dry_run && inputs.publish_brew_scoop }}
294-
runs-on: ubuntu-latest
316+
runs-on: blacksmith-2vcpu-ubuntu-2404
317+
env:
318+
SCOOP_NAME: ${{ inputs.scoop_name }}
319+
VERSION: ${{ inputs.version }}
295320
steps:
296321
- name: Checkout
297322
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
@@ -323,6 +348,6 @@ jobs:
323348
git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
324349
325350
- name: Update Scoop manifest
326-
run: pnpm exec bun apps/cli/scripts/update-scoop.ts --version ${{ inputs.version }} --name ${{ inputs.scoop_name }}
351+
run: pnpm exec bun apps/cli/scripts/update-scoop.ts --version "${VERSION}" --name "${SCOOP_NAME}"
327352
env:
328353
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}

.github/workflows/release.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ jobs:
5555
with:
5656
app-id: ${{ secrets.APP_ID }}
5757
private-key: ${{ secrets.GH_APP_PRIVATE_KEY }}
58-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
58+
- uses: useblacksmith/checkout@41cdeedae8edb2e684ba22896a5fd2a3cb85db6b # v1
5959
with:
6060
fetch-depth: 0
6161
token: ${{ steps.app-token.outputs.token }}
@@ -97,7 +97,7 @@ jobs:
9797
# Authorization header overrides the App token semantic-release puts in
9898
# the push URL — making the dry-push identify as `github-actions[bot]`
9999
# and get rejected by branch protection.
100-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
100+
- uses: useblacksmith/checkout@41cdeedae8edb2e684ba22896a5fd2a3cb85db6b # v1
101101
with:
102102
fetch-depth: 0
103103
persist-credentials: false

.github/workflows/test.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,15 @@ jobs:
2525
check:
2626
if: github.event.pull_request.draft == false || github.event_name == 'push'
2727
name: Check code quality
28-
runs-on: ubuntu-latest
28+
runs-on: blacksmith-8vcpu-ubuntu-2404
2929
steps:
3030
- name: Checkout
3131
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
3232

3333
- name: Setup
3434
uses: ./.github/actions/setup
3535
- name: Setup Go
36-
uses: actions/setup-go@v5
36+
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
3737
with:
3838
go-version-file: apps/cli-go/go.mod
3939
cache-dependency-path: apps/cli-go/go.sum
@@ -49,15 +49,15 @@ jobs:
4949
test-core:
5050
if: github.event.pull_request.draft == false || github.event_name == 'push'
5151
name: Run unit and integration tests
52-
runs-on: ubuntu-latest
52+
runs-on: blacksmith-8vcpu-ubuntu-2404
5353
steps:
5454
- name: Checkout
5555
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
5656

5757
- name: Setup
5858
uses: ./.github/actions/setup
5959
- name: Setup Go
60-
uses: actions/setup-go@v5
60+
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
6161
with:
6262
go-version-file: apps/cli-go/go.mod
6363
cache-dependency-path: apps/cli-go/go.sum
@@ -73,14 +73,14 @@ jobs:
7373
test-e2e:
7474
if: github.event.pull_request.draft == false || github.event_name == 'push'
7575
name: Run end-to-end tests (shard ${{ matrix.shard }}/3)
76-
runs-on: ubuntu-latest
76+
runs-on: blacksmith-8vcpu-ubuntu-2404
7777
strategy:
7878
fail-fast: false
7979
matrix:
8080
shard: [ 1, 2, 3 ]
8181
steps:
8282
- name: Checkout
83-
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
83+
uses: useblacksmith/checkout@41cdeedae8edb2e684ba22896a5fd2a3cb85db6b # v1
8484
with:
8585
fetch-depth: 0
8686

@@ -114,7 +114,7 @@ jobs:
114114
- name: Cache Go CLI binary
115115
if: steps.detect.outputs.cli_e2e == 'true'
116116
id: cache-go-binary
117-
uses: actions/cache@v4
117+
uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5
118118
with:
119119
path: apps/cli-go/supabase-go
120120
key: go-cli-${{ runner.os }}-${{ hashFiles('apps/cli-go/**/*.go',
@@ -123,7 +123,7 @@ jobs:
123123
- name: Setup Go
124124
if: steps.detect.outputs.cli_e2e == 'true' &&
125125
steps.cache-go-binary.outputs.cache-hit != 'true'
126-
uses: actions/setup-go@v5
126+
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6
127127
with:
128128
go-version-file: apps/cli-go/go.mod
129129
cache-dependency-path: apps/cli-go/go.sum

0 commit comments

Comments
 (0)