fix #91: get rid of most of the yearly failing test
[m6w6/ext-http] / .travis.yml
index a281b7e1bfc9fb7f97757257d2714bd287bce259..eafe539363f90ea5af35bded5a5c5a266b3b65b3 100644 (file)
@@ -1,56 +1,73 @@
 # autogenerated file; do not edit
 language: c
-sudo: required
-dist: trusty
 
 addons:
  apt:
   packages:
-   - php5-cli
+   - php-cli
    - php-pear
    - libcurl4-openssl-dev
-   - zlib1g-dev
    - libidn11-dev
+   - libidn2-0-dev
+   - libicu-dev
    - libevent-dev
+   - libbrotli-dev
+
+dist: xenial
+
+cache:
+ apt: true
+ directories:
+  - $HOME/cache
+before_cache:
+ - find $HOME/cache -name '*.gcda' -o -name '*.gcno' -delete
 
 env:
- - PHP=7.0 enable_debug=no enable_maintainer_zts=no enable_json=no enable_hash=yes enable_iconv=yes
- - PHP=7.1 enable_debug=no enable_maintainer_zts=no enable_json=no enable_hash=yes enable_iconv=yes
- - PHP=master enable_debug=no enable_maintainer_zts=no enable_json=no enable_hash=yes enable_iconv=yes
- - PHP=7.0 enable_debug=yes enable_maintainer_zts=no enable_json=no enable_hash=yes enable_iconv=yes
- - PHP=7.1 enable_debug=yes enable_maintainer_zts=no enable_json=no enable_hash=yes enable_iconv=yes
- - PHP=master enable_debug=yes enable_maintainer_zts=no enable_json=no enable_hash=yes enable_iconv=yes
- - PHP=7.0 enable_debug=no enable_maintainer_zts=yes enable_json=no enable_hash=yes enable_iconv=yes
- - PHP=7.1 enable_debug=no enable_maintainer_zts=yes enable_json=no enable_hash=yes enable_iconv=yes
- - PHP=master enable_debug=no enable_maintainer_zts=yes enable_json=no enable_hash=yes enable_iconv=yes
- - PHP=7.0 enable_debug=yes enable_maintainer_zts=yes enable_json=no enable_hash=yes enable_iconv=yes
- - PHP=7.1 enable_debug=yes enable_maintainer_zts=yes enable_json=no enable_hash=yes enable_iconv=yes
- - PHP=master enable_debug=yes enable_maintainer_zts=yes enable_json=no enable_hash=yes enable_iconv=yes
- - PHP=7.0 enable_debug=no enable_maintainer_zts=no enable_json=yes enable_hash=yes enable_iconv=yes
- - PHP=7.1 enable_debug=no enable_maintainer_zts=no enable_json=yes enable_hash=yes enable_iconv=yes
- - PHP=master enable_debug=no enable_maintainer_zts=no enable_json=yes enable_hash=yes enable_iconv=yes
- - PHP=7.0 enable_debug=yes enable_maintainer_zts=no enable_json=yes enable_hash=yes enable_iconv=yes
- - PHP=7.1 enable_debug=yes enable_maintainer_zts=no enable_json=yes enable_hash=yes enable_iconv=yes
- - PHP=master enable_debug=yes enable_maintainer_zts=no enable_json=yes enable_hash=yes enable_iconv=yes
- - PHP=7.0 enable_debug=no enable_maintainer_zts=yes enable_json=yes enable_hash=yes enable_iconv=yes
- - PHP=7.1 enable_debug=no enable_maintainer_zts=yes enable_json=yes enable_hash=yes enable_iconv=yes
- - PHP=master enable_debug=no enable_maintainer_zts=yes enable_json=yes enable_hash=yes enable_iconv=yes
  - PHP=7.0 enable_debug=yes enable_maintainer_zts=yes enable_json=yes enable_hash=yes enable_iconv=yes
  - PHP=7.1 enable_debug=yes enable_maintainer_zts=yes enable_json=yes enable_hash=yes enable_iconv=yes
+ - PHP=7.2 enable_debug=yes enable_maintainer_zts=yes enable_json=yes enable_hash=yes enable_iconv=yes
+ - PHP=7.4 enable_debug=yes enable_maintainer_zts=yes enable_json=yes enable_hash=yes enable_iconv=yes
  - PHP=master enable_debug=yes enable_maintainer_zts=yes enable_json=yes enable_hash=yes enable_iconv=yes
-# once with gcov
- - CFLAGS="-O0 -g --coverage" CXXFLAGS="-O0 -g --coverage" PHP=master enable_json=yes enable_hash=yes enable_iconv=yes 
+ - PHP=7.3 with_http_libicu_dir=no with_http_libidn_dir=no with_http_libidn2_dir=no with_http_libcurl_dir=no with_http_libevent_dir=no with_http_libbrotli_dir=no
+ - PHP=7.3 PECLs=event enable_sockets=yes enable_debug=no enable_maintainer_zts=no enable_json=yes enable_hash=yes enable_iconv=yes
+ - PHP=7.3 PECLs=event enable_sockets=yes enable_debug=yes enable_maintainer_zts=no enable_json=yes enable_hash=yes enable_iconv=yes
+ - PHP=7.3 PECLs=event enable_sockets=yes enable_debug=no enable_maintainer_zts=yes enable_json=yes enable_hash=yes enable_iconv=yes
+ - PHP=7.3 PECLs=event enable_sockets=yes enable_debug=yes enable_maintainer_zts=yes enable_json=yes enable_hash=yes enable_iconv=yes
+ - CFLAGS='-O0 -g --coverage' CXXFLAGS='-O0 -g --coverage' PHP=7.3 PECLs=event enable_sockets=yes enable_json=yes enable_hash=yes enable_iconv=yes with_http_libicu_dir=yes with_http_libidn_dir=no with_http_libidn2_dir=no 
+ - CFLAGS='-O0 -g --coverage' CXXFLAGS='-O0 -g --coverage' PHP=7.3 PECLs=event enable_sockets=yes enable_json=yes enable_hash=yes enable_iconv=yes with_http_libidn_dir=yes with_http_libicu_dir=no with_http_libidn2_dir=no 
+ - CFLAGS='-O0 -g --coverage' CXXFLAGS='-O0 -g --coverage' PHP=7.3 PECLs=event enable_sockets=yes enable_json=yes enable_hash=yes enable_iconv=yes with_http_libidn2_dir=yes with_http_libicu_dir=no with_http_libidn_dir=no 
 
-before_script:
- - make -f travis/pecl/Makefile php
- - make -f travis/pecl/Makefile pecl PECL=raphf:raphf:2.0.0
- - make -f travis/pecl/Makefile pecl PECL=propro:propro:2.0.1
- - make -f travis/pecl/Makefile ext PECL=http
+matrix:
+ fast_finish: true
+ allow_failures:
+  - env: PHP=7.4 enable_debug=yes enable_maintainer_zts=yes enable_json=yes enable_hash=yes enable_iconv=yes
+  - env: PHP=master enable_debug=yes enable_maintainer_zts=yes enable_json=yes enable_hash=yes enable_iconv=yes
+
+install:
+ - |
+   if test "$PHP" = master; then \
+     make -f travis/pecl/Makefile reconf; \
+     make -f travis/pecl/Makefile pecl-rm pecl-clean PECL=ext-raphf.git:raphf:master; \
+     make -f travis/pecl/Makefile pecl-rm pecl-clean PECL=ext-propro.git:propro:master; \
+   fi
+ - make -f travis/pecl/Makefile php || make -f travis/pecl/Makefile clean php
+ - make -f travis/pecl/Makefile pecl PECL=ext-raphf.git:raphf:master
+ - make -f travis/pecl/Makefile pecl PECL=ext-propro.git:propro:master
+ - |
+   if test -n "$PECLs"; then \
+     IFS=$','; \
+     for pecl in $PECLs; do \
+       make -f travis/pecl/Makefile pecl PECL=$pecl; \
+     done; \
+     unset IFS; \
+   fi
 
 script:
+ - make -f travis/pecl/Makefile ext PECL=http
  - make -f travis/pecl/Makefile test
- - make -f travis/pecl/Makefile cppcheck
 
+after_script:
+ - make -f travis/pecl/Makefile cppcheck
 after_failure:
  - test -e tests/helper/server.log && cat tests/helper/server.log
 after_success: