Files
zhamao-framework/.github/workflows/static-analysis.yml
crazywhalecc d188936c17 fix: add SIGHUP/SIGTERM handling, modernize PHP support and CI
Signal handling fixes:
- SignalListener: add SIGHUP/SIGTERM handling for both Swoole
  and Workerman drivers in master and worker processes
- Prevent 100% CPU when IDE terminal is closed by ensuring
  graceful shutdown on terminal hangup

PHP version support:
- Widen PHP constraint to 8.3, 8.4, 8.5
- Bump doctrine/dbal from ^2.13.1 to ^4.4
- Bump php-cs-fixer to ^3.64, phpstan to ^1.12
- Bump swoole/ide-helper to ^5.0
- Drop phpunit ^8.5 (EOL), keep ^9.0

CI updates:
- actions/checkout@v3 → @v4 (Node.js 20 deprecated)
- Bump static analysis/code style PHP from 8.1 to 8.3
2026-06-30 10:47:49 +08:00

44 lines
1.1 KiB
YAML

name: Static Analysis
on:
push:
pull_request:
workflow_dispatch:
jobs:
pre_job:
runs-on: ubuntu-latest
outputs:
should_skip: ${{ steps.skip_check.outputs.should_skip }}
steps:
- id: skip_check
uses: fkirc/skip-duplicate-actions@v5
with:
concurrent_skipping: same_content_newer
skip_after_successful_duplicate: true
paths: '["src/**", "tests/**"]'
do_not_skip: '["workflow_dispatch", "schedule"]'
analyse:
needs: pre_job
if: ${{ needs.pre_job.outputs.should_skip != 'true' }}
name: Static Analysis
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup PHP
uses: sunxyw/workflows/setup-environment@main
with:
php-version: 8.3
php-extensions: swoole, posix, json
operating-system: ubuntu-latest
use-cache: true
- name: Static Analysis
uses: sunxyw/workflows/static-analysis@main