Merge pull request #436 from ledger/dependabot/github_actions/cachix/… #485
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
pull_request: | |
push: | |
paths-ignore: | |
- '**/*.md' | |
- '**/*.org' | |
- '.dir-locals.el' | |
jobs: | |
build: | |
runs-on: ${{ matrix.os }} | |
continue-on-error: ${{ matrix.experimental }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macos-latest] | |
emacs_version: [25.1, 25.2, 25.3, 26.1, 26.2, 26.3, 27.1, 27.2, 28.1, 28.2, 29.1, 29.3, snapshot] | |
experimental: [false] | |
# Exclude Emacs versions that are unavailable on Apple Silicon | |
exclude: | |
- emacs_version: 25.1 | |
os: macos-latest | |
- emacs_version: 25.2 | |
os: macos-latest | |
- emacs_version: 25.3 | |
os: macos-latest | |
- emacs_version: 26.1 | |
os: macos-latest | |
- emacs_version: 26.2 | |
os: macos-latest | |
- emacs_version: 26.3 | |
os: macos-latest | |
- emacs_version: 27.1 | |
os: macos-latest | |
- emacs_version: 27.2 | |
os: macos-latest | |
- emacs_version: 28.1 | |
os: macos-latest | |
include: | |
- emacs_version: snapshot | |
ledger_version: github:ledger/ledger#ledger | |
experimental: true | |
os: ubuntu-latest | |
steps: | |
- uses: cachix/install-nix-action@V28 | |
with: | |
nix_path: nixpkgs=channel:nixos-unstable | |
- uses: purcell/setup-emacs@master | |
with: | |
version: ${{ matrix.emacs_version }} | |
- uses: actions/checkout@v4 | |
# Byte compilation is known to fail in Emacs < 26.1 due to ledger-flymake.el, which should | |
# be packaged separately | |
- name: Byte compilation | |
run: emacs --eval "(setq byte-compile-error-on-warn (>= emacs-major-version 26))" -L . --batch -f batch-byte-compile ./*.el | |
- name: Tests | |
run: nix shell ${{ matrix.ledger_version || 'nixpkgs#ledger' }} --print-build-logs -c make -C test | |
# This is currently for information only, since a lot of docstrings need fixing up | |
- name: Checkdoc | |
run: make -C test checkdoc || true |