Commit Graph

180 Commits

Author SHA1 Message Date
Jay Satiro 9434864770 travis: Fix error detection
- Stop using inline shell scripts for before_script and script sections.

Prior to this change Travis could ignore errors from commands in inline
scripts. I don't understand how or why it happens. This is a workaround.

Assisted-by: Simon Warta

Ref: https://github.com/travis-ci/travis-ci/issues/1066

Fixes https://github.com/curl/curl/issues/3730
Closes https://github.com/curl/curl/pull/3755
2019-12-31 02:38:18 -05:00
Daniel Stenberg e66d5fa785
travis: make torture use --shallow=40
As a first step to enable it to run over a more diverse set of tests in
a reasonable time.
2019-12-11 09:55:22 +01:00
Daniel Stenberg 83c0e96057
travis: remove "coverage", make it "torture"
The coveralls service and test coverage numbers are just too unreliable.
Removed badge from README.md as well.

Fixes #4694
Closes #4695
2019-12-10 13:39:29 +01:00
Daniel Stenberg 275e02bdea
azure: add libssh2 and cmake macos builds
Removed the macos libssh2 build from travis

Closes #4686
2019-12-10 12:34:46 +01:00
Daniel Stenberg 3b8bbbbd16
azure: add more builds
... removed two from travis (that now runs on azure instead)

Closes #4671
2019-12-04 09:32:54 +01:00
Peter Wu 48da3ac67b
travis: do not use OVERRIDE_CC or OVERRIDE_CXX if empty
Fixes the macOS builds where OVERRIDE_CC and OVERRIDE_CXX are not set.

Reported-by: Jay Satiro
Fixes #4659
Closes #4661
Closes #4664
2019-12-03 11:48:45 +01:00
Daniel Stenberg c393b66df9
travis: build ngtcp2 with --enable-lib-only
... makes it skip the examples and other stuff we don't neeed.

Closes #4646
2019-11-28 08:11:13 +01:00
Daniel Stenberg 113db127ee
travis: export the CC/CXX variables when set
Suggested-by: Peter Wu
Fixes #4637
Closes #4640
2019-11-27 08:24:02 +01:00
Daniel Stenberg 1f73138ce1
checksrc: repair the copyrightyear check
- Consider a modified file to be committed this year.

- Make the travis CHECKSRC also do COPYRIGHTYEAR scan in examples and
  includes

- Ignore 0 parents when getting latest commit date of file.

since in the CI we're dealing with a truncated repo of last 50 commits,
the file's most recent commit may not be available. when this happens
git log and rev-list show the initial commit (ie first commit not to be
truncated) but that's incorrect so ignore it.

Ref: https://github.com/curl/curl/pull/4547

Closes https://github.com/curl/curl/pull/4549

Co-authored-by: Jay Satiro
2019-11-08 14:51:42 +01:00
Dan Fandrich 1d642f0550 travis: Add an ARM64 build
Test 323 is failing for some reason, so disable it there for now.
2019-10-18 21:41:03 +02:00
Jay Satiro 7c7dac4dbb
travis: move the go install to linux-only
... to repair the build again
Closes #4403
2019-09-25 14:34:31 +02:00
Daniel Stenberg e09749dd43
travis: enable ngtcp2 h3-23 builds 2019-09-21 23:11:35 +02:00
Daniel Stenberg 52db0b89d0
travis: use go master
... as the boringssl builds needs a very recent version

Co-authored-by: Jat Satiro
Closes #4361
2019-09-20 13:50:35 +02:00
Daniel Stenberg cb3dc99175
travis: disable ngtcp2 builds (again) 2019-09-10 08:03:05 +02:00
Daniel Stenberg ca06013ed4
travis: enable ngtcp2 builds again
Switched to the openssl-quic-draft-22 openssl branch.

Closes #4271
2019-08-28 00:03:12 +02:00
Daniel Stenberg b0d41faeaa
travis: disable ngtcp2 builds (temporarily)
Just too many API changes right now

Closes #4264
2019-08-26 11:31:38 +02:00
Daniel Stenberg 95507f1dc8
travis: add a build using ngtcp2 + nghttp3 (and a patched OpenSSL)
Runs no tests

Closes #4253
2019-08-22 09:03:30 +02:00
Daniel Stenberg 7037891fa3
travis: bump to using nghttp2 version 1.39.2
Closes #4252
2019-08-21 11:33:31 +02:00
Daniel Stenberg 3e8a9bfd17
openssl: build warning free with boringssl
Closes #4244
2019-08-20 19:55:06 +02:00
Alessandro Ghedini 08b99e17df
configure: use pkg-config to detect quiche
This removes the need to hard-code the quiche target path in
configure.ac.

This depends on https://github.com/cloudflare/quiche/pull/128

Closes #4237
2019-08-20 15:04:58 +02:00
Daniel Stenberg f81bf5def7
travis: add a quiche build
Closes #4207
2019-08-16 10:11:32 +02:00
Daniel Stenberg 0b1e74b6b1
travis: reduce number of torture tests in 'coverage'
... to make it complete in time. This cut seems not almost not affect
the coverage percentage and yet completes within 35 minutes on travis
where the previous runs recently always timed out after 50.

Closes #4223
2019-08-15 16:03:31 +02:00
Marcel Raad 972bdffb9f
travis: enable alt-svc for coverage build
Closes
2019-06-20 13:28:39 +02:00
Marcel Raad 31f8c8f321
travis: enable libssh2 for coverage build
It was enabled by default before commit c92d2e14cf.

Disable torture tests 600 and 601 because of
https://github.com/curl/curl/issues/1678.

Closes
2019-06-20 13:28:38 +02:00
Marcel Raad db4f42a6ff
travis: disable threaded resolver for coverage build
This enables more tests.

Closes
2019-06-20 13:28:37 +02:00
Marcel Raad ce1b0da99e
travis: enable brotli for all xenial jobs
There's no need for a separate job, and no need to build it from source
with Xenial.

Closes
2019-06-20 13:28:36 +02:00
Marcel Raad ba2192e6c8
travis: enable warnings-as-errors for coverage build
Closes
2019-06-20 13:28:21 +02:00
Marcel Raad cf1ec70e72
travis: use xenial LLVM package for scan-build
I missed that in commit 99a49d6.
2019-06-09 13:20:57 +02:00
Marcel Raad 99a49d661f
travis: update scan-build job to xenial
Closes https://github.com/curl/curl/pull/3999
2019-06-09 09:17:25 +02:00
Daniel Stenberg eeb37d7191
travis: add an osx http-only build
Closes #3887
2019-05-16 15:32:42 +02:00
Marcel Raad 21d070a0cb
travis: update mesalink build to xenial
Closes https://github.com/curl/curl/pull/3842
2019-05-08 10:24:19 +02:00
Yiming Jing 87a1a25696
travis: mesalink: temporarily disable test 3001
... due to SHA-1 signatures in test certs
2019-05-01 23:25:40 +02:00
Yiming Jing 6ab569ce0b
travis: upgrade the MesaLink TLS backend to v1.0.0
Closes #3823
Closes #3776
2019-05-01 23:25:05 +02:00
Marcel Raad 9960ec9003
travis: use mbedtls from Xenial
No need to build it from source anymore.

Closes https://github.com/curl/curl/pull/3779
2019-04-15 11:22:53 +02:00
Marcel Raad 1ef146a8db
travis: use libpsl from Xenial
This makes building libpsl and libidn2 from source unnecessary and
removes the need for the autopoint and libunistring-dev packages.

Closes https://github.com/curl/curl/pull/3779
2019-04-15 11:22:49 +02:00
Marcel Raad e507671884
travis: update some builds to xenial
Xenial comes with more up-to-date software versions and more available
packages, some of which we currently build from source. Unfortunately,
some builds would fail with Xenial because of assertion failures in
Valgrind when using OpenSSL, so leave these at Trusty.

Closes https://github.com/curl/curl/pull/3777
2019-04-13 22:33:36 +02:00
Daniel Stenberg 6003422825
travis: remove mesalink builds (temporarily?)
Since the mesalink build started to fail on travis, even though we build
a fixed release version, we disable it to prevent it from blocking
progress.

Closes #3767
2019-04-12 13:29:31 +02:00
Marcel Raad ebc0550110
travis: install libgnutls28-dev only for --with-gnutls build
Reduces the time needed for the other jobs a little.

Closes https://github.com/curl/curl/pull/3721
2019-04-11 21:14:12 +02:00
Marcel Raad a05eb8f16c
travis: install libnss3-dev only for --with-nss build
Reduces the time needed for the other jobs a little.

Closes https://github.com/curl/curl/pull/3721
2019-04-11 21:14:11 +02:00
Marcel Raad b568511b91
travis: install libssh2-dev only for --with-libssh2 build
Reduces the time needed for the other jobs a little.

Closes https://github.com/curl/curl/pull/3721
2019-04-11 21:14:10 +02:00
Marcel Raad 157147f0b0
travis: install libssh-dev only for --with-libssh build
Reduces the time needed for the other jobs a little.

Closes https://github.com/curl/curl/pull/3721
2019-04-11 21:14:09 +02:00
Marcel Raad c3d5f400a4
travis: install krb5-user only for --with-gssapi build
Reduces the time needed for the other jobs a little.

Closes https://github.com/curl/curl/pull/3721
2019-04-11 21:14:07 +02:00
Marcel Raad 22c28284f6
travis: install lcov only for the coverage job
Reduces the time needed for the other jobs a little.

Closes https://github.com/curl/curl/pull/3721
2019-04-11 21:13:58 +02:00
Marcel Raad c6acd33370
travis: install clang only when needed
This reduces the GCC job runtimes a little and it's needed to
selectively update clang builds to xenial.

Closes https://github.com/curl/curl/pull/3721
2019-04-11 21:13:57 +02:00
Dan Fandrich e413baffdc travis: allow builds on branches named "ci"
This allows a way to test changes other than through PRs.
2019-03-28 01:33:04 +01:00
Daniel Stenberg 28a55a5309
travis: bump the used wolfSSL version to 4.0.0
Test 311 is now fine, leaving only 313 (CRL) disabled.

Test 313 details can be found here:
https://github.com/wolfSSL/wolfssl/issues/1546

Closes #3697
2019-03-22 12:32:02 +01:00
Marcel Raad 8bd397de1d
travis: actually use updated compiler versions
For the Linux builds, GCC 8 and 7 and clang 7 were installed, but the
new GCC versions were only used for the coverage build and for building
nghttp2, while the new clang version was not used at all.

BoringSSL needs to use the default GCC as it respects CC, but not CXX,
so it would otherwise pass gcc 8 options to g++ 4.8 and fail.

Also remove GCC 7, it's not needed anymore.

Ref: https://docs.travis-ci.com/user/languages/c/#c11c11-and-beyond-and-toolchain-versioning

Closes https://github.com/curl/curl/pull/3670
2019-03-12 08:36:20 +01:00
Marcel Raad 3ee07e3e72
travis: update clang to version 7
Closes https://github.com/curl/curl/pull/3670
2019-03-12 08:35:51 +01:00
Daniel Stenberg 7eabdefd35
alt-svc: add a travis build 2019-03-03 11:17:52 +01:00
Daniel Stenberg 4331a3b8fa
travis: add build using gnutls
Closes #3637
2019-03-02 14:51:03 +01:00
Daniel Stenberg 9e08b415f4
travis: enable valgrind for the iconv tests too
Closes #3571
2019-02-15 09:11:20 +01:00
Daniel Stenberg 8ae3db510b
travis: add scan-build
Closes #3564
2019-02-14 23:30:44 +01:00
Sergei Nikulov 383fd9dcb4 travis: added cmake build for osx 2019-01-15 07:11:56 +03:00
Daniel Gustafsson 90254d0d65 travis: turn off copyright year checks in checksrc
Invoking the maintainer intended COPYRIGHTYEAR check for everyone
in the PR pipeline is too invasive, especially at the turn of the
year when many files get affected. Remove and leave it as a tool
for maintainers to verify patches before commits.

This reverts f7bdf4b2e1.

After discussion with: Daniel Stenberg
2019-01-11 00:21:27 +01:00
Daniel Gustafsson f7bdf4b2e1 travis: enable COPYRIGHTYEAR extended warning
The extended warning for checking incorrect COPYRIGHTYEAR is quite
expensive to run, so rather than expecting every developer to do it
we ensure it's turned on locally for Travis.
2018-12-03 23:18:59 +01:00
Daniel Stenberg 6987e3730e
travis: remove curl before a normal build
on Linux. To make sure the test suite runs with its newly build tool and
doesn't require an external one present.

Bug: #3198
Closes #3200
2018-11-02 15:59:39 +01:00
Daniel Stenberg 58d04252e1
travis: build with sanitize=address,undefined,signed-integer-overflow
... using clang

Closes #3190
2018-11-01 09:44:59 +01:00
Daniel Stenberg 0c9b09dff4
travis: add a "make tidy" build that runs clang-tidy
Closes #3182
2018-10-29 08:11:33 +01:00
Marcel Raad ac85e49d7a
travis: install gnutls-bin package
This is required for gnutls-serv, which enables a few more tests.

Closes https://github.com/curl/curl/pull/2958
2018-10-27 08:41:18 +02:00
Daniel Stenberg ad547fcf7b
travis: add build for "configure --disable-verbose"
Closes #3144
2018-10-18 14:51:49 +02:00
Daniel Stenberg a47a264492
travis: make distcheck scan for BOM markers
and remove BOM from projects/wolfssl_override.props

Closes #3126
2018-10-12 08:49:31 +02:00
Daniel Stenberg 2b3351b8e3
travis: bump the Secure Transport build to use xcode 10
Due to an issue with travis
(https://github.com/travis-ci/travis-ci/issues/9956) we've been using
Xcode 9.2 for darwinssl builds for a while. Now xcode 10 is offered as
an alternative and as it builds curl+darwinssl fine that seems like a
better choice.

Closes #3062
2018-09-29 14:14:31 +02:00
Yiming Jing 66b3c186fa
travis: build the MesaLink vtls backend with MesaLink 0.7.1 2018-09-13 08:26:45 +02:00
Daniel Stenberg 87fefe5ebf
travis: add the DOH tests to the torture testing 2018-09-06 09:17:25 +02:00
Daniel Stenberg 3001304ad1
travis: revert back to gcc-7 for coverage builds
... since the gcc-8 ones seem to fail frequently.

Follow-up from b852071995

Closes #2886
2018-08-15 15:54:09 +02:00
Daniel Stenberg 9622c350ac
travis: disable h2 torture tests for "coverage"
Since they started to fail almost 100% since a few days.

Closes #2876
2018-08-14 14:02:18 +02:00
Marcel Raad b852071995
travis: update to GCC 8
Closes https://github.com/curl/curl/pull/2869
2018-08-14 13:56:46 +02:00
Kamil Dudka 60000eb82f .travis.yml: verify that man pages can be regenerated
... when curl is built from distribution tarball

Closes #2856
2018-08-13 14:02:16 +02:00
Marcel Raad 9fe9bd7641
travis: execute "set -eo pipefail" for coverage build
Follow-up to 2de63ab179 and
0b87c96325.

Closes https://github.com/curl/curl/pull/2862
2018-08-10 17:24:17 +02:00
Daniel Stenberg 537763f7f5
travis: build darwinssl on macos 10.12
... as building on 10.13.x before 10.13.4 leads to link errors.

Assisted-by: Nick Zitzmann
Fixes #2835
Closes #2845
2018-08-07 14:44:29 +02:00
Daniel Stenberg fe60cbfbbf
travis: run a 'make checksrc' too
... to make sure the examples are all checked.

Closes #2811
2018-07-30 17:56:01 +02:00
Daniel Stenberg eebd3bb68a
travis: add a build using the synchronous name resolver
... since default uses the threaded one and we test the c-ares build
already.

Closes #2689
2018-06-27 16:00:37 +02:00
Daniel Stenberg 6785d0dc70
travis: run more tests for coverage check
... run a few more tortured based and run all tests event-based.

Closes #2664
2018-06-17 14:32:00 +02:00
Viktor Szakats 4bd91bc474 spelling fixes
Detected using the `codespell` tool (version 1.13.0).

Also secure and fix an URL.
2018-06-03 12:14:45 +00:00
Daniel Stenberg c3d7db4ecb travis: add build using NSS
Closes #2558
2018-05-10 17:18:02 +02:00
Daniel Stenberg 3c42fb8d46 travis: add a build using WolfSSL
Assisted-by: Dan Fandrich

Closes #2528
2018-05-09 21:40:19 +02:00
Daniel Stenberg 277d3cdc0f
travis: add an mbedtls build
Closes #2531
2018-05-04 08:36:51 +02:00
Daniel Stenberg 223506fd53
travis: enable libssh2 on both macos and Linux
It seems to not be detected by default anymore (which is a bug I
believe)

Closes #2541
2018-04-30 07:59:31 +02:00
Daniel Stenberg 249a7c9dac
travis: build libpsl and make builds use it
closes #2471
2018-04-11 00:46:03 +02:00
Daniel Stenberg ac6c86732b
travis: bump to clang 6 and gcc 7
Extra-eye-on-this-by: Marcel Raad

Closes #2478
2018-04-10 13:33:10 +02:00
Marcel Raad 0b87c96325
travis: use trusty for coverage build
This works now and precise is in the process of being decommissioned.

Closes https://github.com/curl/curl/pull/2476
2018-04-10 07:52:45 +02:00
Jay Satiro d267dd2c13 travis: enable apt retry on fail
This is a workaround for an unsolved travis issue that is causing CI
instances to sporadically fail due to 'unable to connect' issues during
apt stage.

Ref: https://github.com/travis-ci/travis-ci/issues/8507
Ref: https://github.com/travis-ci/travis-ci/issues/9112#issuecomment-376305909
2018-03-26 18:29:30 -04:00
Sergei Nikulov 22e56194e3
travis-ci: enable -Werror for CMake builds (#2418) 2018-03-22 16:35:33 +03:00
Marcel Raad 828187d86b
travis: update compiler versions
Update clang to version 3.9 and GCC to version 6.

Closes https://github.com/curl/curl/pull/2345
2018-02-28 07:36:31 +01:00
Daniel Stenberg bb5017704a
travis: add build with iconv enabled
... to verify it builds and works fine.

Ref: https://curl.haxx.se/mail/lib-2017-09/0031.html

Closes #1872
2018-02-15 14:18:34 +01:00
Jay Satiro 8eff32f0bf
travis: use pip2 instead of pip
.. since now mac osx image expects pip2 or pip3, and doesn't know pip:

0.01s$ pip install --user cpp-coveralls
/Users/travis/.travis/job_stages: line 57: pip: command not found

Ref: https://github.com/travis-ci/travis-ci/issues/8829

Closes https://github.com/curl/curl/pull/2133
2017-12-02 11:53:11 +01:00
Nikos Mavrogiannopoulos 05675ab5a3
.travis.yml: added build --with-libssh
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
2017-12-01 17:35:15 +01:00
Daniel Stenberg 270494e1a0
travis: add boringssl build
Uses a separate build without --enable-debug and no valgrind.

The debug option causes far too many warnings in boringssl's headers
(C++ comments, trailing commas etc).  Valgrind triggers some false
positive errors in thread-local data used by boringssl.

Closes #2118
2017-11-30 08:16:32 +01:00
Patrick Monnerat c675c40295 travis: add a job with brotli enabled 2017-11-05 15:38:17 +01:00
Max Dymond 2de63ab179
travis: exit if any steps fail
We don't expect any steps to fail in travis. Exit the script if they do.

Closes #1966
2017-10-23 08:59:38 +02:00
Max Dymond 4f38db1d28
fuzzer: move to using external curl-fuzzer
Use the external curl-fuzzer repository for fuzzing.

Closes #1923
2017-10-04 15:33:36 +02:00
Daniel Stenberg 1a072796d3
travis: on mac, don't install openssl or libidn
- openssl is already installed and causes warnings when trying to
  install again

- libidn isn't used these days, and homebrew doesn't seem to have a
  libidn2 package to replace with easily

Closes #1895
2017-09-18 22:53:47 +02:00
Isaac Boukris 9bba664e02
tests: enable gssapi in travis-ci linux build
Closes https://github.com/curl/curl/pull/1687
2017-09-15 14:09:20 +02:00
Daniel Stenberg 7207aaa696
travis: add build without HTTP/SMTP/IMAP 2017-09-11 00:26:14 +02:00
Daniel Stenberg 6b585b1183
travis: add c-ares enabled builds linux + osx
Closes #1868
2017-09-07 10:38:16 +02:00
Max Dymond 57001ce3bb ossfuzz: Move to C++ for curl_fuzzer.
Automake gets confused if you want to use C++ static libraries with C
code - basically we need to involve the clang++ linker. The easiest way
of achieving this is to rename the C code as C++ code. This gets us a
bit further along the path and ought to be compatible with Google's
version of clang.
2017-09-02 11:07:55 +02:00
Max Dymond efeb4a3176
ossfuzz: moving towards the ideal integration
- Start with the basic code from the ossfuzz project.
- Rewrite fuzz corpora to be binary files full of Type-Length-Value
  data, and write a glue layer in the fuzzing function to convert
  corpora into CURL options.
- Have supporting functions to generate corpora from existing tests
- Integrate with Makefile.am
2017-09-01 11:22:51 +02:00
Daniel Stenberg ca9630f128
travis: add metalink to some osx builds
Closes #1790
2017-08-16 13:31:13 +02:00
Max Dymond 8de5e409c5
coverage: Use two coveralls commands to get lib/vtls results
closes #1747
2017-08-16 12:14:56 +02:00
Daniel Stenberg b53b4e4424
travis: build the examples too
to make sure they keep building warning-free

Closes #1777
2017-08-14 23:25:54 +02:00