Skip to content

slint-viewer: show the file name in the window title #16951

slint-viewer: show the file name in the window title

slint-viewer: show the file name in the window title #16951

Workflow file for this run

# Copyright © SixtyFPS GmbH <info@slint.dev>
# SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-2.0 OR LicenseRef-Slint-Software-3.0
name: autofix.ci # needed to securely identify the workflow
on:
pull_request:
branches: [master, "feature/*", "pre-release/*"]
workflow_dispatch:
merge_group:
permissions:
contents: read
concurrency:
group: ci-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
env:
CARGO_INCREMENTAL: false
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
jobs:
format_fix:
runs-on: ubuntu-latest
timeout-minutes: 5
permissions:
contents: read
pull-requests: read
# The ci workflow waits for this gate anyway, so computing the filter
# here instead of in a job of its own costs no extra latency.
outputs:
changes: ${{ steps.filter.outputs.changes }}
steps:
- uses: actions/checkout@v7
# paths-filter reads the filter file from the working tree. It gets
# PR changes from the GitHub API and compares Git refs for other events.
- uses: dorny/paths-filter@v4
id: filter
with:
filters: .github/ci_path_filters.yaml
predicate-quantifier: some-with-excludes
- uses: jdx/mise-action@v4.2.5
with:
version: 2025.9.18
log_level: debug
- name: Install rust dependencies
run: rustup toolchain install stable-x86_64-unknown-linux-gnu --profile default
- name: Run fixes
env:
SLINT_SKIP_PNPM_DEDUPE: ${{ steps.filter.outputs.pnpm_manifests != 'true' }}
run: mise run --force 'ci:autofix:fix'
- name: Suggest format changes
uses: autofix-ci/action@c5b2d67aa2274e7b5a18224e8171550871fc7e4a
lint_typecheck:
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v7
- uses: jdx/mise-action@v4.2.5
with:
version: 2025.9.18
log_level: debug
- name: Install rust dependencies
run: rustup toolchain install stable-x86_64-unknown-linux-gnu --profile default
- name: Run lints
run: mise run --force 'ci:autofix:lint'
- name: Spell check
uses: streetsidesoftware/cspell-action@v8
with:
incremental_files_only: true
ci:
needs: [format_fix, lint_typecheck]
permissions:
contents: read
deployments: write
uses: ./.github/workflows/ci.yaml
with:
full: false
changes: ${{ needs.format_fix.outputs.changes }}
secrets:
ANDROID_KEYSTORE_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD }}
ANDROID_KEYSTORE_BASE64: ${{ secrets.ANDROID_KEYSTORE_BASE64 }}
CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}
CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
CLOUDFLARE_API_TOKEN_2: ${{ secrets.CLOUDFLARE_API_TOKEN_2 }}
CLOUDFLARE_ACCOUNT_ID_2: ${{ secrets.CLOUDFLARE_ACCOUNT_ID_2 }}
READ_WRITE_PRIVATE_KEY: ${{ secrets.READ_WRITE_PRIVATE_KEY }}
SLINT_TESTING_TOKEN: ${{ secrets.SLINT_TESTING_TOKEN }}
done:
# Note: We use `needs` + `if: always()` here to ensure the "done"
# task is never just "skipped", which would count as success().
# Instead, make the task fail if any job did not succeed. A cancelled
# job (e.g. a GitHub-side abort) must fail the gate too: it is not a
# passing result, so treating it as success would let a change land
# without that check actually running.
needs: [ci, format_fix, lint_typecheck]
if: ${{ always() }}
name: done
runs-on: ubuntu-latest
steps:
- if: ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') }}
run: echo "A required check failed or was cancelled! 🌋" && false
- if: ${{ !(contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled')) }}
run: echo "All checks passed. 🎉"