Commit Graph

18 Commits

Author SHA1 Message Date
49b552dcb1 feat: add code coverage with branch coverage
All checks were successful
CI Code / Check spelling (pull_request) Successful in 21s
CI Code / Check coding style (pull_request) Successful in 35s
CI Code / Code Coverage (pull_request) Successful in 15m31s
CI Code / Linux (debian) (pull_request) Successful in 16m1s
CI Code / Linux (arch) (pull_request) Successful in 16m11s
CI Code / Linux (ubuntu) (pull_request) Successful in 18m24s
- Add --enable-coverage configure option
- Add lcov targets for generating coverage reports
- Enable branch coverage (--rc branch_coverage=1)
- Install lcov in all Docker images
- Coverage report displayed via lcov --summary (no Codecov - doesn't work with Gitea)
2026-01-19 20:49:37 +03:00
5a34a4a1d3 perf: optimize CI build performance
- Add -C flag to configure for caching
- Use ccache for faster recompilation
2026-01-19 16:38:34 +03:00
cb2cd1bbf2 feat: parallel functional tests (~3x faster CI)
- Split 69 functional tests into 4 groups for parallel execution
- Add check-functional-parallel target to Makefile.am
- Fix VPATH builds with $(srcdir)/tests path
- Add test failure detection verification in CI
- Update Dockerfiles with parallel make -j$(nproc)
- Add --depth 1 for faster git clone in Dockerfiles
2026-01-19 16:38:19 +03:00
44de29a199 build(docker): add TERM env, fix SSL and reflector handling
- Add TERM=xterm-256color for PTY support in functional tests
- Disable SSL verification for git clone in restricted networks
- Add error handling for Arch reflector installation
2026-01-07 11:46:40 +01:00
Steffen Jaeckel
9fc0326428 Add Valgrind to CI
* Also pass `$*` to `configure` when invoking `ci-build.sh`, so one can
  e.g. run `./ci-build.sh --without-xscreensaver`

Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2025-03-11 12:15:09 +01:00
Michael Vetter
cdebb559bb ci: enable tumbleweed
This reverts commit 5c5c453219.

And removes the old python(2) pull in.

For some reason we get:
`Package python3-embed was not found in the pkg-config search path.`
with python38-devel but not with python310-devel. Let's bump it to that
version.
2022-08-18 15:02:36 +02:00
Michael Vetter
0c7350e2e6 Make qrencode optional and add to CI 2022-05-30 18:06:13 +02:00
Michael Vetter
3aafffded9 Add pixbuf building to CI 2022-05-30 17:49:09 +02:00
Michael Vetter
a7b123abf4 ci: rename TW python packages 2022-04-27 16:47:08 +02:00
Michael Vetter
61cebcdf5b ci: switch from libmesode to libstrophe 2021-10-28 20:13:41 +02:00
Michael Vetter
0211ab0e30 travis: add libstrophe to tw
So far only libstrophe is in 0.10.0 on TW.
Lets just add both since configure will choose libmesode anyways if both
are installed.
And we plan to deprecate libmesode later anyways.
2020-10-09 09:38:47 +02:00
Michael Vetter
9db466dcbd ci os tw: disable building of stabber
libmicrohttpd 0.97.1 changed some types.

These commits adapt stabber:
f33c4b6ba9
81f38c6a33

Tumbleweed does not yet have the latest libmicrohttpd in its
repositories. But it is updated in the devel repo.
So should land there in the next couple of days.

Let's disable building stabber on TW for that time.
2020-07-08 13:03:19 +02:00
Michael Vetter
672f3e22e8 Add sqlite to CI dependencies 2020-04-06 10:50:20 +02:00
William Wennerström
bec7189295 Use latest Docker in CI
Force a Docker upgrade for all Linux runners.

Fixes: #1294
2020-03-30 20:45:22 +02:00
Michael Vetter
6c17a36465 thanks travis..
Regards https://github.com/profanity-im/profanity/issues/1294
2020-03-30 15:19:10 +02:00
Michael Vetter
e88113afa1 os TW 20200325 test 2020-03-30 12:28:42 +02:00
Michael Vetter
67c0d11629 Test oS TW 20200324
Tests fail in TW image. Doesn't seem our fault.
Let's try to find out since when.
2020-03-30 12:16:46 +02:00
William Wennerström
3700c80ad1 Add Travis CI tests for Arch, Debian and OSX/macOS
+ Arch and Debian are run in Docker containers, as openSUSE Tumbleweed.

+ OSX/macOS doesn't use any containers.
   * Homebrew is used to fetch all the dependencies.
   * The dependencies are declared in the Brewfile.travis file.

+ The travis-build.sh script has been modified to check for the current
  OS and the different configure flags has been moved into an array
  that'll be looped through instead.
  The xscreensaver (for libXScrnSaver) flags has been removed for macOS
  as it only makes sense for systems running X11, which macOS doesn't
  (usually) do.

+ Some minor shellcheck fixes, too.

Fixes: #1100
2019-06-06 13:58:26 +02:00