Commit Graph

113 Commits

Author SHA1 Message Date
Daniel Hahler 326271f73b Travis: remove luajit from allow_failures: seems to be fixed (#1231) 2016-11-22 01:02:06 +01:00
Daniel Hahler cf96296f27 Travis: use Lua 5.3.3, from GitHub mirror (#1208) 2016-11-06 20:43:45 +01:00
Uli Schlachter 0e81479a3f Use xcb-util-xrm
Instead of using Xlib for parsing resource files, this now uses the
dedicated xcb-based library that is meant for exactly this task.

Fixes: https://github.com/awesomeWM/awesome/issues/1176
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-11-03 13:34:43 +01:00
Daniel Hahler b4d6bfa4db Travis: fix codecov (#1105)
tests/run.sh: no slash with --search lib

Fixes https://github.com/awesomeWM/awesome/issues/1049.
2016-09-20 19:53:10 +02:00
Daniel Hahler 99657f49cf Travis: pin ldoc at 1.4.4
Ref: https://github.com/awesomeWM/awesome/pull/1051#issuecomment-241327733
2016-08-22 17:27:48 -04:00
Uli Schlachter c22b939630 Be less strict about warnings from "example tests" (#1045)
The build is no longer aborted when one of the "example tests" produces a
message on stderr. However, on Travis this requirement is still made. This
should catch "bad errors" via Travis while not breaking the build for users.

Fixes: https://github.com/awesomeWM/awesome/issues/821
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-08-20 18:59:28 +02:00
Daniel Hahler 65e8b9c36b Travis: fix return/exit usage (#1043)
Return 0 (success) in do_codecov function.  It is used in "&&" chains,
and should just do nothing for "coverall", but not break it.

This also makes use of "set -ev" instead of "exit" in general.

The "exit" caused the whole build to stop, but it was still green!
https://travis-ci.org/awesomeWM/awesome/jobs/151943526

"exit" is not really supported:
https://docs.travis-ci.com/user/customizing-the-build/#How-does-this-work%3F-(Or%2C-why-you-should-not-use-exit-in-build-steps)

This also wraps (most of) the "cd" commands in a subshell, to ensure
being in the repo directory all the time (except for $BUILD_IN_DIR).
2016-08-14 02:25:20 +02:00
Daniel Hahler 0d1331e592 Travis: allow failures with LuaJIT (#1025)
This is not nice and we should still try to fix it, but it seems better
to have green PRs without triggering a rebuild etc.

See https://github.com/awesomeWM/awesome/issues/982#issuecomment-231522318.
2016-08-13 00:21:33 +02:00
Uli Schlachter 4cc6a8155f Travis: Install luacov 0.11.0-1 (#991)
With luacov 0.12.0-1 our travis build fails. It was always kinda broken, but now
this breakage is revealed.

What likely happens: Our .luacov errors out because some needed environment
variable to figure out where to put the results is not set. Due to the way we
load luacov, it runs with its default config which luckily happens to work. With
luacov 0.12.0-1 the error is propagated instead and the build fails.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-07-08 22:46:41 +02:00
Daniel Hahler a99bfd534c Travis: check each commit separately (for the sake of git-bisect) (#936)
Previous commits are only tested within one build (luajit, which appears
to be the fastest, maybe/also because it does no coverage).

Fixes https://github.com/awesomeWM/awesome/issues/935.
2016-07-05 22:14:41 +02:00
Uli Schlachter d2b9bb8c39 .travis.yml: Add codecov support (#960)
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-06-11 18:47:29 +02:00
Uli Schlachter 0c784d1472 .travis.yml: Stop installing rxvt-unicode (#961)
The last place where we used urxvt for testing was removed in 6b4a2625cb.

[ci skip]

Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-06-11 13:12:33 +02:00
Daniel Hahler 547fec2824 Travis: run "make check" only once with DO_COVERAGE=true (#940)
Fixes https://github.com/awesomeWM/awesome/issues/938.
2016-06-05 16:12:57 +02:00
Emmanuel Lepage Vallee ac7ea4c70f tests: Fix coverage data
As the documentation generation insert increasingly large ammount
of code into the lua files, the coverage data is getting less and
less accurate. This try to fix this by only collecting such data
after the `configure_file` calls are done.
2016-05-30 17:51:19 -04:00
Uli Schlachter cc8e10e4be Travis: Build Lua 5.3 with -DLUA_USE_APICHECK (#907)
This defines some assertions in Lua that should catch API misuses. It might be
that Lua is a bit slower due to this, but so what?

Fixes: https://github.com/awesomeWM/awesome/issues/740
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-05-16 03:10:58 +02:00
Uli Schlachter 9d30bf87ae Merge branch 'more-travis-variance' of https://github.com/psychon/awesome 2016-05-09 18:42:09 +02:00
Daniel Hahler 58209cd89e Use an uneven screen width/height (1921x1079) in one Travis job (#870)
This is meant to trigger issues that would need `math.ceil()` fixes etc.

Ref: https://github.com/awesomeWM/awesome/issues/848#issuecomment-216068831
2016-05-08 20:58:19 +02:00
Uli Schlachter bebdaf4ea3 Use an out-of-tree build for one Travis job
Signed-off-by: Uli Schlachter <psychon@znc.in>
2016-05-08 18:52:19 +02:00
Daniel Hahler 95f1b1ad56 Travis: use new GH_APIDOC_TOKEN
While still being used via Travis' `secure` env mechanism, we could
additionally set it through an env for the repo (not displayed by
default), and revoke/regenerate it when it gets revealed.
The token provides access only to the `apidoc` repo.

Closes https://github.com/awesomeWM/awesome/pull/866.
2016-05-02 00:56:01 +02:00
Emmanuel Lepage Vallee 30a527fcfd travis: Install GTK
So the tests can generate custom clients to suit their purpose.
2016-04-18 23:55:52 -04:00
Daniel Hahler 8387d8fecc .travis.yml: improve comments 2016-04-18 22:35:50 +02:00
Daniel Hahler 5eec87e043 Travis: move BUILD_APIDOC=true (Lua 5.2) to the beginning 2016-04-06 02:12:48 +02:00
Daniel Hahler 7116fda78d Travis: cleanup LGIVER matrix assignment 2016-04-06 02:06:35 +02:00
Daniel Hahler 7cbbfdf181 Travis: move luarocks install into single block 2016-04-06 02:06:35 +02:00
Daniel Hahler 9c76d2dbb6 Travis: build luajit from source (2.0.4 as of now) 2016-04-06 02:06:35 +02:00
Daniel Hahler ce3e6648ac Travis: pin lua-term to 0.4-1 to fix the Lua 5.3 build
Ref: https://github.com/hoelzro/lua-term/issues/16
Ref: https://github.com/awesomeWM/awesome/pull/792#issuecomment-205123319
Closes: https://github.com/awesomeWM/awesome/pull/801
2016-04-04 20:57:28 +02:00
Daniel Hahler 0cbab1320c Travis: update luarocks: 2.2.2 => 2.3.0 2016-04-04 20:41:22 +02:00
Uli Schlachter 02cdb5103b Run shape-example-generation under LuaCov
This is ugly, but at least it works. Hopefully...

Signed-off-by: Uli Schlachter <uli.schlachter@informatik.uni-oldenburg.de>
2016-03-17 10:22:42 +01:00
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