Skip to content

Dependencies

Dependencies #24682

Workflow file for this run

# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
name: Dependencies
concurrency:
group: ${{ github.repository }}-${{ github.head_ref || github.sha }}-${{ github.workflow }}
cancel-in-progress: true
on:
push:
branches-ignore:
# Commits reach main through the merge queue, which runs this workflow at
# the same SHA, so do not repeat the jobs after the merge. Release
# branches and every other branch keep their post-push runs.
- 'main'
- 'gh-readonly-queue/**'
- 'dependabot/**'
pull_request:
merge_group:
# manual trigger
# https://docs.github.com/en/actions/managing-workflow-runs/manually-running-a-workflow
workflow_dispatch:
permissions:
contents: read
jobs:
depcheck:
name: Circular Dependency Check
runs-on: ubuntu-latest
container:
image: amd64/rust
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
submodules: true
fetch-depth: 1
- name: Setup Rust toolchain
uses: ./.github/actions/setup-builder
with:
rust-version: stable
- name: Check dependencies
run: bash ci/scripts/check_circular_dependencies.sh
detect-unused-dependencies:
name: Detect Unused Dependencies
runs-on: ubuntu-latest
container:
image: amd64/rust
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Load tool versions
run: |
. ci/scripts/utils/tool_versions.sh
echo "CARGO_MACHETE_VERSION=${CARGO_MACHETE_VERSION}" >> "$GITHUB_ENV"
- name: Install cargo-machete
uses: taiki-e/install-action@861a07ce7084f55488e375df125cdc99bba60eb7 # v2.87.23
with:
tool: cargo-machete@${{ env.CARGO_MACHETE_VERSION }}
- name: Detect unused dependencies
run: bash ci/scripts/check_unused_dependencies.sh