Skip to content

fix(rp2040): do not infer Bluetooth-only Arduino-Pico libraries when Bluetooth is off #1835

fix(rp2040): do not infer Bluetooth-only Arduino-Pico libraries when Bluetooth is off

fix(rp2040): do not infer Bluetooth-only Arduino-Pico libraries when Bluetooth is off #1835

Workflow file for this run

name: Crate Gate
on:
push:
branches: [main]
pull_request:
workflow_dispatch:
workflow_call:
inputs:
ref:
type: string
required: false
default: ""
# Auto-cancel superseded PR runs: pushing again to a feature branch
# supersedes the in-flight run instead of queueing behind it. Non-PR
# events key on run_id so each gets its own group -- a shared group keeps
# only ONE pending run, which would silently drop queued main SHAs.
concurrency:
group: crate-gate.yml-${{ inputs.ref != '' && github.run_id || (github.event_name == 'pull_request' && github.ref || github.run_id) }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
jobs:
crate-gate:
name: Reject new workspace crates (monocrate policy)
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
with:
ref: ${{ inputs.ref }}
- name: Install uv
uses: astral-sh/setup-uv@v3
- name: Check workspace members against the approved allowlist
# `--script` runs the standalone PEP-723 script in isolation. Plain
# `uv run python ...` would first build the `fbuild` project package,
# which requires `soldr` (absent in this job) and fails the gate for an
# unrelated reason. The script declares its own inline metadata.
run: uv run --script ci/check_workspace_crates.py
- name: Check integration tests stay in their 8 category binaries
# FastLED/fbuild#1577: a new top-level crates/*/tests/*.rs is a new
# test binary that re-links the whole dependency graph.
run: uv run --script ci/check_test_layout.py