Commit Graph

85 Commits

Author SHA1 Message Date
Uli Schlachter 43dba09c28 Add& use Luacheck support
This commit adds a new "luacheck" target to the Makefiles. This target is
automatically included in "make check" when luacheck is found in $PATH.
Additionally, this includes luacheck in Travis so that the build fails when
luacheck complains about something.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-02-16 19:45:10 +01:00
Uli Schlachter 029a6a18b0 Lua 5.3: Disable Lua 5.2 compatibility
Lua 5.3's build system provides the LUA_COMPAT_5_2 and LUA_COMPAT_5_1 defines to
enable some compatibility with these older Lua versions. LUA_COMPAT_5_2 is
defined by default while LUA_COMPAT_5_1 is not.

This commit also disables LUA_COMPAT_5_2 on the Lua version that we build on
Travis so that the build will hopefully break if some feature is used that was
removed.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-02-15 20:51:52 +01:00
Uli Schlachter 9e05ff63ce Code coverage: Also consider functional tests
Lots of our code depends on the C API and thus can only be tested when that is
available. Hence, it makes sense to also run the functional tests under LuaCov.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-02-12 09:26:29 +01:00
Uli Schlachter b823dd4ed4 Add code coverage support
This uses coveralls.io and integrates the collection of coverage information
with Travis.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-02-12 09:26:07 +01:00
Uli Schlachter 7ec7483928 Travis: Run "make check"
Wait, what? Up to now Travis hasn't actually used "make check" but called some
things individually?!?

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-02-11 21:55:32 +01:00
Daniel Hahler 2a57f0335f .travis.yml: fix indent 2016-02-11 21:40:46 +01:00
Uli Schlachter 6479baf0ba Travis: also run against Lua 5.3
This also removes some obsolete dependencies and it also and creates
`/usr/bin/lua` even when using luajit.  Without this, our lgi-check.sh
script complains about a missing lgi installation because it cannot find
a lua binary.

Closes https://github.com/awesomeWM/awesome/pull/652.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-01-29 23:57:52 +01:00
Daniel Hahler 0eac1ee91e Travis: use travis_retry with `apt-get update`
Ref: https://travis-ci.org/awesomeWM/awesome/jobs/96732636
2015-12-17 00:22:23 +01:00
Frederik 0d2e6d2068 Get LuaRocks via HTTPS instead of HTTP
[ci skip]

Closes https://github.com/awesomeWM/awesome/pull/570.
2015-11-20 17:17:52 +01:00
Daniel Hahler 339e2b0ecc Add failing test: c.startup_id should be nil when snid is disabled
When using `spawn` without startup notification support, the
`startup_id` property on the client should be nil.

This adds rxvt-unicode to the Travis build, because it supports startup
notifications, but xterm does not.  We should replace xterm with it in
the existing tests then later.
2015-11-05 23:03:59 +01:00
Daniel Hahler c4d21d5f12 Travis: use dist=trusty
http://blog.travis-ci.com/2015-10-14-opening-up-ubuntu-trusty-beta/

 - Use apt-get install -y, and not -qq.
 - Fix LUAROCKS_ARGS for Trusty.
 - Installing libxcb-cursor-dev, libxcb-xkb-dev, libxkbcommon-x11-dev
   and libxkbcommon-dev via apt-get.
 - Use before_install to set LUAINCLUDE
 - Cleanup the apt-get install block.
 - Use travis_retry with 'luarocks install' and 'wget'.

Ref: https://github.com/travis-infrastructure/packer-templates/issues/42.
Closes: https://github.com/awesomeWM/awesome/pull/533.
2015-11-05 23:01:17 +01:00
Daniel Hahler 6902e4bf5b Travis: fix building apidoc: add missing $ 2015-10-10 23:08:26 +02:00
Daniel Hahler d544421c67 Travis: add luajit-5.1
This refactors the env vars for the build matrix:

 - add LUANAME
 - drop LUALIB
 - add LUAINCLUDE for special luajit include dir.
 - add LUAROCKS_ARGS for luarocks' `configure --lua-suffix=jit-2.0.0-beta9`.

Closes https://github.com/awesomeWM/awesome/pull/484.
2015-09-28 23:35:22 +02:00
Daniel Hahler e47773933c Bump required lgi version to 0.7.1
Ref: https://github.com/pavouk/lgi/issues/41
Ref: https://github.com/awesomeWM/awesome/pull/392
2015-08-11 19:08:35 +02:00
Daniel Hahler 71f549ee79 Travis: add lgi 0.7.0 to the build matrix
This makes sure that the build and tests succeed with the minimal required
version.
2015-08-11 19:08:35 +02:00
Daniel Hahler 88ba798ae3 Travis: apidoc: script, compare view, PR comment
This moves the apidoc uploading to build-utils/travis-apidoc.sh, which
makes it more pleasant to maintain/read.

Additional enhancements:
 - handle all branches and PRs, and provide compare view links as a comment
   for the latter, via awesome-robot.  This gets skipped for PRs for
   forks, because then the Github secret is not available for security
   reasons.
 - use a merge commit to keep relevant changes and boilerplate together.
 - simplified/shorter AWESOME_VERSION override.
 - add last commit message of the repo to the apidoc's commit message.

Closes https://github.com/awesomeWM/awesome/pull/358.
2015-08-02 21:55:16 +02:00
Daniel Hahler 836aded988 Travis: build apidoc only once, for latest Lua 2015-07-30 01:18:54 +02:00
Daniel Hahler d5eef64a5d Travis: remove cmake from apt-get install, we install a more recent one anyway 2015-07-29 04:16:57 +02:00
Daniel Hahler bed8b26c60 Travis: add Lua 5.1 to the build matrix
Closes https://github.com/awesomeWM/awesome/pull/362.
2015-07-28 13:08:42 +02:00
Daniel Hahler af06a47ad0 Travis: update docs only for relevant changes
It uses "diff -I .." to check if there are relevant changes, and then adds
them in two separate commits.  This allows to more easily see real changes to
the documentation.
2015-07-27 13:42:41 +02:00
Daniel Hahler 08b78f537a Travis: install lua-discount 2015-07-25 18:02:05 +02:00
Daniel Hahler fb4a709f77 Travis: build and upload API doc on success for master
Closes https://github.com/awesomeWM/awesome/pull/343.
2015-07-25 18:02:05 +02:00
Daniel Hahler fdc3f2cc17 build: add OVERRIDE_VERSION, used in Travis
Fixes https://github.com/awesomeWM/awesome/issues/160.
2015-07-25 17:59:44 +02:00
Daniel Hahler 0f3bf03cd2 travis: unpin luassert
Closes #258.

Build tested in https://travis-ci.org/blueyed/awesome/builds/70387485.
2015-07-10 15:54:26 +02:00
Daniel Hahler 611438a892 Add functional tests via Xephyr/Xvfb/xdotool
Closes https://github.com/awesomeWM/awesome/pull/133
2015-07-10 15:19:51 +02:00
Daniel Hahler 7989096cc2 Travis: install CMake 3+ (for newer FindLua) 2015-06-20 01:55:31 +02:00
Daniel Hahler e4c547d36b Travis: 'make build' for luarocks
I am not sure if this is required, but documented like that.
2015-06-13 16:40:54 +02:00
Daniel Hahler bf389e4cce Travis: workaround: actually install/pin busted 2.0.rc8
This fixes the previous commit (6733cff).
2015-06-10 21:29:39 +02:00
Daniel Hahler 6733cff842 Travis: workaround: use luassert 1.7.6 / busted 2.0.rc8
Temporarily fix infinite loop with luassert 1.7.7 (required by busted
2.0.rc9).  Ref: https://github.com/awesomeWM/awesome/issues/258
2015-06-10 20:58:32 +02:00
Daniel Hahler 6d5973cb8c Travis: update luarocks to 2.2.2 2015-06-10 20:01:38 +02:00
Daniel Hahler f9a3b97b50 Travis: use tarballs instead of git-clone
This should improve performance and make it more reliable in general
(also in terms of timeouts when cloning).
2015-06-10 18:19:19 +02:00
Daniel Hahler 9be4a0368b travis: install libxkbcommon-dev libxkbcommon-x11-dev 2015-05-28 23:20:17 +02:00
Daniel Hahler 9c443adc61 Travis: output cmake version in before_install 2015-05-26 16:05:07 +02:00
Daniel Hahler 1542722055 travis: only install and run if make succeeded 2015-05-04 18:59:55 +02:00
Daniel Hahler 9b9334976a Add config for Travis CI
This builds and installs awesome (which runs its checks) and displays
--version.

 - Build libxcb-cursor-dev and lua-lgi manually.
 - A lot of dependencies are installed manually from Git or luarocks.
 - Include Travis status in README.

Closes https://github.com/awesomeWM/awesome/pull/208.
2015-04-26 04:01:32 +02:00