diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 46c25632..0fa8608f 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,25 +1,70 @@ on: push jobs: - test: + test-windows: strategy: matrix: - os: [ubuntu-latest, macos-latest, windows-latest] - emacs-version: [27.2, 28.2, 29.3, snapshot] + #emacs-version: [27.2, 28.2, 29.3, snapshot] + emacs-version: [29.3] + runs-on: windows-latest defaults: run: shell: bash -el {0} - runs-on: ${{ matrix.os }} continue-on-error: true steps: - uses: actions/checkout@v3 - - uses: purcell/setup-emacs@master + - uses: jcs090218/setup-emacs-windows@master with: version: ${{ matrix.emacs-version }} - if: ${{ matrix.os != 'windows-latest' }} - - uses: jcs090218/setup-emacs-windows@master + - uses: msys2/setup-msys2@v2 + with: + msystem: MSYS + update: true + install: >- + make + - uses: conda-incubator/setup-miniconda@v3 + with: + python-version: 3.9 + - name: Install requirements + run: | + conda install -c conda-forge pandoc + conda install -c anaconda jupyter + curl -fsSL https://raw.github.com/doublep/eldev/master/webinstall/eldev | sh + + # Make eldev available to all future actions + echo "$HOME/.local/bin" >> $GITHUB_PATH + - name: Check Jupyter version + run: | + mkdir -p $(jupyter --runtime-dir) + jupyter --paths + jupyter --version + jupyter kernelspec list + - name: Byte compilation + shell: powershell + run: | + msys2 -c 'make compile' + - name: Run tests + shell: powershell + run: | + msys2 -c 'make test' + test-unix-like: + strategy: + matrix: + os: [ubuntu-latest, macos-latest] + #emacs-version: [27.2, 28.2, 29.3, snapshot] + emacs-version: [29.3] + exclude: + - os: macos-latest + emacs-version: 27.2 + defaults: + run: + shell: bash -el {0} + runs-on: ${{ matrix.os }} + continue-on-error: true + steps: + - uses: actions/checkout@v3 + - uses: purcell/setup-emacs@master with: version: ${{ matrix.emacs-version }} - if: ${{ matrix.os == 'windows-latest' }} - uses: conda-incubator/setup-miniconda@v3 with: python-version: 3.9 @@ -37,6 +82,13 @@ jobs: jupyter --paths jupyter --version jupyter kernelspec list + # FIXME: It may be necessary to compile ZMQ since the runners can have + # a different architecture than what is available in the + # releases of that package. Should consider the architecture in + # the releases of Emacs-ZMQ. + - name: Install packages for compiling Emacs-ZMQ when needed + run: brew install automake libtool + if: matrix.os == 'macos-latest' - name: Byte compilation run: | make compile