Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
25 changes: 25 additions & 0 deletions .github/workflows/lint-workflows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Lint GitHub Actions workflows

on:
pull_request:
branches: [ master ]
paths:
- '.github/workflows/**.yml'
- '.github/workflows/**.yaml'
push:
branches: [ master ]
paths:
- '.github/workflows/**.yml'
- '.github/workflows/**.yaml'

jobs:
actionlint:
name: actionlint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Run actionlint
run: |
bash <(curl -s https://raw.githubusercontent.com/rhysd/actionlint/main/scripts/download-actionlint.bash)
./actionlint -color
14 changes: 11 additions & 3 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,11 @@ env:
# Extensions compiled into the static PHP binary.
# yaml is pure-PHP via symfony/yaml so it is excluded here.
SPC_EXTENSIONS: "phar,pdo_mysql,pdo_pgsql,pdo_sqlite,openssl,zlib,mbstring,dom,libxml,tokenizer,ctype,json,iconv"
# Native C library sources SPC must download alongside the extensions
# Native C library sources SPC must download alongside the extensions (Unix)
SPC_LIBS: "libiconv,libxml2,ncurses,libedit,postgresql,sqlite"
# Windows-specific library names (ncurses/libedit are Unix-only; SPC maps
# postgresql → postgresql-win and libiconv → libiconv-win automatically)
SPC_WINDOWS_LIBS: "libiconv,libxml2,postgresql,sqlite"
SPC_PHP_VERSION: "8.3"

# ═══════════════════════════════════════════════════════════════════════════
Expand Down Expand Up @@ -98,7 +101,7 @@ jobs:

# ── macOS ─────────────────────────────────────────────────────────
- target: darwin-x64
os: macos-13 # GitHub Intel runner
os: macos-15-intel # GitHub Intel (x64) runner — macos-13 was retired
musl: false
artifact: dbdiff-darwin-x64

Expand Down Expand Up @@ -155,6 +158,11 @@ jobs:
# ── Build static PHP micro SAPI (all Unix targets) ────────────────────
- name: Build static PHP binary (Unix)
if: runner.os != 'Windows'
env:
# Authenticated token prevents GitHub API 403 rate-limit errors that
# occur on macOS runners after doctor --auto-fix makes many brew/API
# calls before the spc download step runs.
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
./spc doctor --auto-fix
./spc download \
Expand Down Expand Up @@ -190,7 +198,7 @@ jobs:
# target directory to already exist — failing otherwise with
# "The system cannot find the path specified."
New-Item -ItemType Directory -Force -Path source | Out-Null
.\spc.exe download "php-src,micro,${{ env.SPC_EXTENSIONS }}" --with-php="${{ env.SPC_PHP_VERSION }}"
.\spc.exe download "php-src,micro,${{ env.SPC_EXTENSIONS }},${{ env.SPC_WINDOWS_LIBS }}" --with-php="${{ env.SPC_PHP_VERSION }}"
.\spc.exe build "${{ env.SPC_EXTENSIONS }}" --build-micro

- name: Combine PHP + PHAR → binary (Windows)
Expand Down