An update to my Elisp ERT / Travis CI setup
30 Mar 2015This post might be interesting to people who use Travis CI to test their Elisp packages.
I've noticed a few days ago that my tests on Travis CI started failing randomly. Turns out that the
widely used ppa:cassou/emacs has become
deprecated. It still sort of works, but sometimes apt-get update
just times out, and I get a build
error.
Since it was the only one that I was using, I had to find another one. I went with emacs-snapshot
from ppa:ubuntu-elisp.
Here's my current .travis.yml:
language: emacs-lisp
env:
matrix:
- emacs=emacs-snapshot
before_install:
- sudo add-apt-repository -y ppa:ubuntu-elisp
- sudo apt-get update -qq
- sudo apt-get install -qq $emacs
- curl -fsSkL --max-time 10 --retry 10 --retry-delay 10 https://raw.github.com/cask/cask/master/go | python
script:
- make cask
- make test
I've adopted one more change in the above code: EMACS
is replaced by emacs
.
The reason for this is that both ansi-term
and compile
for legacy reasons set EMACS
to strange values,
like "24.4.91.2 (term:0.96)"
.
So if you have in your Makefile:
EMACS ?= emacs
you're going to have a bad time. So I changed my Makefile to:
emacs ?= emacs
And now I can compile and test while inside Emacs with no issues. The only issue left is that I don't yet know which PPA I should use for a stable Emacs. Maybe someone has a suggestion.