diff --git a/.circleci/config.yml b/.circleci/config.yml deleted file mode 100644 index d3aee258..00000000 --- a/.circleci/config.yml +++ /dev/null @@ -1,66 +0,0 @@ -version: 2.1 -jobs: - test_filters: - description: Test all Lua filters - docker: - - image: pandoc/ubuntu:latest - entrypoint: /bin/bash - steps: - - checkout - - run: | - apt-get -q --no-allow-insecure-repositories update && \ - DEBIAN_FRONTEND=noninteractive \ - apt-get install --assume-yes --no-install-recommends \ - aspell \ - aspell-fr \ - aspell-en \ - default-jre \ - graphviz \ - imagemagick \ - inkscape \ - lilypond \ - lmodern \ - luarocks \ - make \ - python3 \ - python3-pip \ - python3-tk \ - python3-numpy \ - python3-matplotlib \ - python-is-python3 \ - texlive-bibtex-extra \ - texlive-fonts-recommended \ - texlive-latex-recommended \ - texlive-latex-extra \ - texlive-pictures \ - texlive-plain-generic \ - texlive-xetex \ - wget - # Download plantuml.jar for plantuml filter - - run: | - cd $HOME && \ - wget https://sourceforge.net/projects/plantuml/files/plantuml.1.2018.9.jar && \ - cd - - - run: >- - LANG=C.UTF-8 - PLANTUML=$HOME/plantuml.1.2018.9.jar - DIFF="diff -u" - make test - -# Setup builds for each commit, as well as weekly cron job. -workflows: - version: 2.1 - test: - jobs: - - test_filters - weekly: - jobs: - - test_filters - triggers: - - schedule: - # At 4:17am each Monday - cron: "17 4 * * 1" - filters: - branches: - only: - - master diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 00000000..30ff774d --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1 @@ +github: [tarleb, jgm] diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..0f3277fb --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,36 @@ +name: CI + +on: + pull_request: + branches: + - master + paths-ignore: + - '**/README.md' + - CONTRIBUTING.md + - LICENSE + - .editorconfig + push: + branches: + - master + paths-ignore: + - '**/README.md' + - CONTRIBUTING.md + - LICENSE + - .editorconfig + schedule: + # At 4:17am each Monday + - cron: '17 4 * * 1' + +jobs: + test: + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Build Docker image + run: make docker-test-image + + - name: Run tests in Docker image + run: make docker-test diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index b1f122b7..00000000 --- a/.travis.yml +++ /dev/null @@ -1,60 +0,0 @@ -# Use new container infrastructure to enable caching -sudo: false - -# Older Ubuntu versions use Lua 5.1 for luarocks, while 20.04 -# (focal) uses Lua 5.3. -dist: focal - -# Do not choose a language; we provide our own build tools. -language: minimal - -addons: - apt: - packages: - - aspell - - aspell-fr - - aspell-en - - imagemagick - - default-jre - - graphviz - - inkscape - - python3 - - python3-pip - - python3-tk - - python3-numpy - - python3-matplotlib - - python-is-python3 - - lilypond - - lmodern - - texlive-bibtex-extra - - texlive-fonts-recommended - - texlive-latex-recommended - - texlive-latex-extra - - texlive-pictures - - texlive-plain-generic - - texlive-xetex - -before_install: -- unset CC -# Download and unpack the pandoc binary -- | - pushd $HOME - RELEASES_URL='https://github.com/jgm/pandoc/releases' - export PANDOCVERSION=$(curl --silent -I "$RELEASES_URL/latest" | sed -ne 's#[Ll]ocation:.*tag/\(.*\)$#\1#p' | tr -d "\n\r") - echo $PANDOCVERSION - travis_retry wget $RELEASES_URL/download/$PANDOCVERSION/pandoc-$PANDOCVERSION-linux-amd64.tar.gz - tar xvzf pandoc-$PANDOCVERSION-linux-amd64.tar.gz - popd -# Download plantuml.jar for plantuml filter -- | - pushd $HOME - travis_retry wget http://sourceforge.net/projects/plantuml/files/plantuml.jar - popd -- export PATH=$HOME/pandoc-$PANDOCVERSION/bin:$PATH -- export PLANTUML=$HOME/plantuml.jar - -install: [] - -script: -- | - make test diff --git a/Makefile b/Makefile index 03b31aaa..24966a0b 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ FILTERS=$(wildcard $(shell find * -type d | grep -v '[/\\]')) FILTER_FILES=$(shell find * -name "*.lua" -type f) -LUA_FILTERS_TEST_IMAGE = tarleb/lua-filters-test +LUA_FILTERS_TEST_IMAGE = pandoc/lua-filters-test .PHONY: test show-args docker-test docker-test-image archive diff --git a/README.md b/README.md index 1f3acaf9..e695f3d2 100644 --- a/README.md +++ b/README.md @@ -25,8 +25,9 @@ Each filter goes in its own subdirectory. Each subdirectory contains: Requirements ------------ -Filters are tested against the latest pandoc version. There is -no guarantee that filters will work with older versions, but +Filters are tested against the pandoc version in the latest +pandoc/ubuntu Docker image, i.e. usually the latest release. There +is no guarantee that filters will work with older versions, but many do. Some filters depend on external programs, which must be installed