name: Perl quality on: pull_request: paths: - 't/**' - 'cpanfile' - '.perlcritic' - '.github/workflows/perl-quality.yml' permissions: contents: read jobs: perl: runs-on: ubuntu-24.04 timeout-minutes: 10 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - uses: shogo82148/actions-setup-perl@v1.43.1 with: perl-version: '5.38' - name: Install dev modules run: cpanm --notest Perl::Critic perltidy cpan-audit - name: Syntax check all test files run: | find t -name '*.t' -o -name '*.pm' | while read -r f; do perl -I t/lib -c "$f" done - name: Perl::Critic run: perlcritic --verbose '%f:%l:%e:%m\n' t/ - name: perltidy (fail on diff) run: | perltidy -p t/ git diff --exit-code - name: Audit CPAN modules for known CVEs run: cpan-audit