--- /dev/null
+# generated file; do not edit!
+
+name: ci
+on:
+ workflow_dispatch:
+ push:
+ pull_request:
+
+jobs:
+ old-matrix-0:
+ name: old-matrix-0
+ env:
+ PHP: "7.0"
+ enable_debug: "yes"
+ enable_maintainer_zts: "yes"
+ enable_json: "yes"
+ enable_hash: "yes"
+ enable_iconv: "yes"
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Install
+ run: |
+ sudo apt-get install -y \
+ php-cli \
+ php-pear \
+ libcurl4-openssl-dev \
+ libevent-dev \
+ libidn11-dev \
+ libidn2-0-dev \
+ libicu-dev \
+ libevent-dev \
+ libbrotli-dev \
+ re2c
+ - name: Prepare
+ run: |
+ make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+ make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+ make -f scripts/ci/Makefile pecl PECL=ext-propro.git:propro:master
+ if test -n "$PECLs"; then
+ IFS=$','
+ for pecl in $PECLs; do
+ make -f scripts/ci/Makefile pecl PECL=$pecl
+ done
+ unset IFS
+ fi
+
+ - name: Build
+ run: |
+ make -f scripts/ci/Makefile ext PECL=http
+ - name: Test
+ run: |
+ make -f scripts/ci/Makefile test
+
+ old-matrix-1:
+ name: old-matrix-1
+ env:
+ PHP: "7.1"
+ enable_debug: "yes"
+ enable_maintainer_zts: "yes"
+ enable_json: "yes"
+ enable_hash: "yes"
+ enable_iconv: "yes"
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Install
+ run: |
+ sudo apt-get install -y \
+ php-cli \
+ php-pear \
+ libcurl4-openssl-dev \
+ libevent-dev \
+ libidn11-dev \
+ libidn2-0-dev \
+ libicu-dev \
+ libevent-dev \
+ libbrotli-dev \
+ re2c
+ - name: Prepare
+ run: |
+ make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+ make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+ make -f scripts/ci/Makefile pecl PECL=ext-propro.git:propro:master
+ if test -n "$PECLs"; then
+ IFS=$','
+ for pecl in $PECLs; do
+ make -f scripts/ci/Makefile pecl PECL=$pecl
+ done
+ unset IFS
+ fi
+
+ - name: Build
+ run: |
+ make -f scripts/ci/Makefile ext PECL=http
+ - name: Test
+ run: |
+ make -f scripts/ci/Makefile test
+
+ old-matrix-2:
+ name: old-matrix-2
+ env:
+ PHP: "7.2"
+ enable_debug: "yes"
+ enable_maintainer_zts: "yes"
+ enable_json: "yes"
+ enable_hash: "yes"
+ enable_iconv: "yes"
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Install
+ run: |
+ sudo apt-get install -y \
+ php-cli \
+ php-pear \
+ libcurl4-openssl-dev \
+ libevent-dev \
+ libidn11-dev \
+ libidn2-0-dev \
+ libicu-dev \
+ libevent-dev \
+ libbrotli-dev \
+ re2c
+ - name: Prepare
+ run: |
+ make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+ make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+ make -f scripts/ci/Makefile pecl PECL=ext-propro.git:propro:master
+ if test -n "$PECLs"; then
+ IFS=$','
+ for pecl in $PECLs; do
+ make -f scripts/ci/Makefile pecl PECL=$pecl
+ done
+ unset IFS
+ fi
+
+ - name: Build
+ run: |
+ make -f scripts/ci/Makefile ext PECL=http
+ - name: Test
+ run: |
+ make -f scripts/ci/Makefile test
+
+ old-matrix-3:
+ name: old-matrix-3
+ env:
+ PHP: "7.3"
+ enable_debug: "yes"
+ enable_maintainer_zts: "yes"
+ enable_json: "yes"
+ enable_hash: "yes"
+ enable_iconv: "yes"
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Install
+ run: |
+ sudo apt-get install -y \
+ php-cli \
+ php-pear \
+ libcurl4-openssl-dev \
+ libevent-dev \
+ libidn11-dev \
+ libidn2-0-dev \
+ libicu-dev \
+ libevent-dev \
+ libbrotli-dev \
+ re2c
+ - name: Prepare
+ run: |
+ make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+ make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+ make -f scripts/ci/Makefile pecl PECL=ext-propro.git:propro:master
+ if test -n "$PECLs"; then
+ IFS=$','
+ for pecl in $PECLs; do
+ make -f scripts/ci/Makefile pecl PECL=$pecl
+ done
+ unset IFS
+ fi
+
+ - name: Build
+ run: |
+ make -f scripts/ci/Makefile ext PECL=http
+ - name: Test
+ run: |
+ make -f scripts/ci/Makefile test
+
+ cur-none-0:
+ name: cur-none-0
+ env:
+ PHP: "7.4"
+ 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"
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Install
+ run: |
+ sudo apt-get install -y \
+ php-cli \
+ php-pear \
+ libcurl4-openssl-dev \
+ libevent-dev \
+ libidn11-dev \
+ libidn2-0-dev \
+ libicu-dev \
+ libevent-dev \
+ libbrotli-dev \
+ re2c
+ - name: Prepare
+ run: |
+ make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+ make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+ make -f scripts/ci/Makefile pecl PECL=ext-propro.git:propro:master
+ if test -n "$PECLs"; then
+ IFS=$','
+ for pecl in $PECLs; do
+ make -f scripts/ci/Makefile pecl PECL=$pecl
+ done
+ unset IFS
+ fi
+
+ - name: Build
+ run: |
+ make -f scripts/ci/Makefile ext PECL=http
+ - name: Test
+ run: |
+ make -f scripts/ci/Makefile test
+
+ cur-dbg-zts-0:
+ name: cur-dbg-zts-0
+ env:
+ PHP: "7.4"
+ PECLs: "event"
+ enable_sockets: "yes"
+ enable_debug: "yes"
+ enable_maintainer_zts: "yes"
+ enable_json: "yes"
+ enable_hash: "yes"
+ enable_iconv: "yes"
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Install
+ run: |
+ sudo apt-get install -y \
+ php-cli \
+ php-pear \
+ libcurl4-openssl-dev \
+ libevent-dev \
+ libidn11-dev \
+ libidn2-0-dev \
+ libicu-dev \
+ libevent-dev \
+ libbrotli-dev \
+ re2c
+ - name: Prepare
+ run: |
+ make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+ make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+ make -f scripts/ci/Makefile pecl PECL=ext-propro.git:propro:master
+ if test -n "$PECLs"; then
+ IFS=$','
+ for pecl in $PECLs; do
+ make -f scripts/ci/Makefile pecl PECL=$pecl
+ done
+ unset IFS
+ fi
+
+ - name: Build
+ run: |
+ make -f scripts/ci/Makefile ext PECL=http
+ - name: Test
+ run: |
+ make -f scripts/ci/Makefile test
+
+ cur-dbg-zts-1:
+ name: cur-dbg-zts-1
+ env:
+ PHP: "7.4"
+ PECLs: "event"
+ enable_sockets: "yes"
+ enable_debug: "no"
+ enable_maintainer_zts: "yes"
+ enable_json: "yes"
+ enable_hash: "yes"
+ enable_iconv: "yes"
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Install
+ run: |
+ sudo apt-get install -y \
+ php-cli \
+ php-pear \
+ libcurl4-openssl-dev \
+ libevent-dev \
+ libidn11-dev \
+ libidn2-0-dev \
+ libicu-dev \
+ libevent-dev \
+ libbrotli-dev \
+ re2c
+ - name: Prepare
+ run: |
+ make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+ make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+ make -f scripts/ci/Makefile pecl PECL=ext-propro.git:propro:master
+ if test -n "$PECLs"; then
+ IFS=$','
+ for pecl in $PECLs; do
+ make -f scripts/ci/Makefile pecl PECL=$pecl
+ done
+ unset IFS
+ fi
+
+ - name: Build
+ run: |
+ make -f scripts/ci/Makefile ext PECL=http
+ - name: Test
+ run: |
+ make -f scripts/ci/Makefile test
+
+ cur-dbg-zts-2:
+ name: cur-dbg-zts-2
+ env:
+ PHP: "7.4"
+ PECLs: "event"
+ enable_sockets: "yes"
+ enable_debug: "yes"
+ enable_maintainer_zts: "no"
+ enable_json: "yes"
+ enable_hash: "yes"
+ enable_iconv: "yes"
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Install
+ run: |
+ sudo apt-get install -y \
+ php-cli \
+ php-pear \
+ libcurl4-openssl-dev \
+ libevent-dev \
+ libidn11-dev \
+ libidn2-0-dev \
+ libicu-dev \
+ libevent-dev \
+ libbrotli-dev \
+ re2c
+ - name: Prepare
+ run: |
+ make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+ make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+ make -f scripts/ci/Makefile pecl PECL=ext-propro.git:propro:master
+ if test -n "$PECLs"; then
+ IFS=$','
+ for pecl in $PECLs; do
+ make -f scripts/ci/Makefile pecl PECL=$pecl
+ done
+ unset IFS
+ fi
+
+ - name: Build
+ run: |
+ make -f scripts/ci/Makefile ext PECL=http
+ - name: Test
+ run: |
+ make -f scripts/ci/Makefile test
+
+ cur-dbg-zts-3:
+ name: cur-dbg-zts-3
+ env:
+ PHP: "7.4"
+ PECLs: "event"
+ enable_sockets: "yes"
+ enable_debug: "no"
+ enable_maintainer_zts: "no"
+ enable_json: "yes"
+ enable_hash: "yes"
+ enable_iconv: "yes"
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Install
+ run: |
+ sudo apt-get install -y \
+ php-cli \
+ php-pear \
+ libcurl4-openssl-dev \
+ libevent-dev \
+ libidn11-dev \
+ libidn2-0-dev \
+ libicu-dev \
+ libevent-dev \
+ libbrotli-dev \
+ re2c
+ - name: Prepare
+ run: |
+ make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+ make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+ make -f scripts/ci/Makefile pecl PECL=ext-propro.git:propro:master
+ if test -n "$PECLs"; then
+ IFS=$','
+ for pecl in $PECLs; do
+ make -f scripts/ci/Makefile pecl PECL=$pecl
+ done
+ unset IFS
+ fi
+
+ - name: Build
+ run: |
+ make -f scripts/ci/Makefile ext PECL=http
+ - name: Test
+ run: |
+ make -f scripts/ci/Makefile test
+
+ cur-cov-0:
+ name: cur-cov-0
+ env:
+ CFLAGS: "'-O0 -g --coverage'"
+ CXXFLAGS: "'-O0 -g --coverage'"
+ PHP: "7.4"
+ 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"
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Install
+ run: |
+ sudo apt-get install -y \
+ php-cli \
+ php-pear \
+ libcurl4-openssl-dev \
+ libevent-dev \
+ libidn11-dev \
+ libidn2-0-dev \
+ libicu-dev \
+ libevent-dev \
+ libbrotli-dev \
+ re2c
+ - name: Prepare
+ run: |
+ make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+ make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+ make -f scripts/ci/Makefile pecl PECL=ext-propro.git:propro:master
+ if test -n "$PECLs"; then
+ IFS=$','
+ for pecl in $PECLs; do
+ make -f scripts/ci/Makefile pecl PECL=$pecl
+ done
+ unset IFS
+ fi
+
+ - name: Build
+ run: |
+ make -f scripts/ci/Makefile ext PECL=http
+ - name: Test
+ run: |
+ make -f scripts/ci/Makefile test
+ - name: Coverage
+ if: success()
+ run: |
+ cd src/.libs
+ bash <(curl -s https://codecov.io/bash) -X xcode -X coveragepy
+
+ cur-cov-1:
+ name: cur-cov-1
+ env:
+ CFLAGS: "'-O0 -g --coverage'"
+ CXXFLAGS: "'-O0 -g --coverage'"
+ PHP: "7.4"
+ PECLs: "event"
+ enable_sockets: "yes"
+ enable_json: "yes"
+ enable_hash: "yes"
+ enable_iconv: "yes"
+ with_http_libicu_dir: "no"
+ with_http_libidn_dir: "yes"
+ with_http_libidn2_dir: "no"
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Install
+ run: |
+ sudo apt-get install -y \
+ php-cli \
+ php-pear \
+ libcurl4-openssl-dev \
+ libevent-dev \
+ libidn11-dev \
+ libidn2-0-dev \
+ libicu-dev \
+ libevent-dev \
+ libbrotli-dev \
+ re2c
+ - name: Prepare
+ run: |
+ make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+ make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+ make -f scripts/ci/Makefile pecl PECL=ext-propro.git:propro:master
+ if test -n "$PECLs"; then
+ IFS=$','
+ for pecl in $PECLs; do
+ make -f scripts/ci/Makefile pecl PECL=$pecl
+ done
+ unset IFS
+ fi
+
+ - name: Build
+ run: |
+ make -f scripts/ci/Makefile ext PECL=http
+ - name: Test
+ run: |
+ make -f scripts/ci/Makefile test
+ - name: Coverage
+ if: success()
+ run: |
+ cd src/.libs
+ bash <(curl -s https://codecov.io/bash) -X xcode -X coveragepy
+
+ cur-cov-2:
+ name: cur-cov-2
+ env:
+ CFLAGS: "'-O0 -g --coverage'"
+ CXXFLAGS: "'-O0 -g --coverage'"
+ PHP: "7.4"
+ PECLs: "event"
+ enable_sockets: "yes"
+ enable_json: "yes"
+ enable_hash: "yes"
+ enable_iconv: "yes"
+ with_http_libicu_dir: "no"
+ with_http_libidn_dir: "no"
+ with_http_libidn2_dir: "yes"
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Install
+ run: |
+ sudo apt-get install -y \
+ php-cli \
+ php-pear \
+ libcurl4-openssl-dev \
+ libevent-dev \
+ libidn11-dev \
+ libidn2-0-dev \
+ libicu-dev \
+ libevent-dev \
+ libbrotli-dev \
+ re2c
+ - name: Prepare
+ run: |
+ make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+ make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+ make -f scripts/ci/Makefile pecl PECL=ext-propro.git:propro:master
+ if test -n "$PECLs"; then
+ IFS=$','
+ for pecl in $PECLs; do
+ make -f scripts/ci/Makefile pecl PECL=$pecl
+ done
+ unset IFS
+ fi
+
+ - name: Build
+ run: |
+ make -f scripts/ci/Makefile ext PECL=http
+ - name: Test
+ run: |
+ make -f scripts/ci/Makefile test
+ - name: Coverage
+ if: success()
+ run: |
+ cd src/.libs
+ bash <(curl -s https://codecov.io/bash) -X xcode -X coveragepy
+
-[submodule "travis-pecl"]
- path = travis/pecl
- url = https://github.com/m6w6/travis-pecl.git
- branch = master
+[submodule "scripts/ci"]
+ url = https://github.com/m6w6/pecl-ci.git
+++ /dev/null
-# autogenerated file; do not edit
-language: c
-
-addons:
- apt:
- packages:
- - php-cli
- - php-pear
- - libcurl4-openssl-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=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.3 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
- - PHP=7.4 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.4 PECLs=event enable_sockets=yes enable_debug=no enable_maintainer_zts=no enable_json=yes enable_hash=yes enable_iconv=yes
- - PHP=7.4 PECLs=event enable_sockets=yes enable_debug=yes enable_maintainer_zts=no enable_json=yes enable_hash=yes enable_iconv=yes
- - PHP=7.4 PECLs=event enable_sockets=yes enable_debug=no enable_maintainer_zts=yes enable_json=yes enable_hash=yes enable_iconv=yes
- - PHP=7.4 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.4 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.4 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.4 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
-
-matrix:
- fast_finish: true
- allow_failures:
- - 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
-
-after_script:
- - make -f travis/pecl/Makefile cppcheck
-after_failure:
- - test -e tests/helper/server.log && cat tests/helper/server.log
-after_success:
- - test -n "$CFLAGS" && cd src/.libs && bash <(curl -s https://codecov.io/bash) -X xcode -X coveragepy
-
-notifications:
- webhooks:
- urls:
- - https://webhooks.gitter.im/e/28d35158ac7e385bd14d
- on_success: change
- on_failure: always
- on_start: never
--- /dev/null
+Subproject commit 547c8e89e38d6e899914c05ddf6598669bd16532
--- /dev/null
+#!/usr/bin/env php
+<?php echo "# generated file; do not edit!\n"; ?>
+
+name: ci
+on:
+ workflow_dispatch:
+ push:
+ pull_request:
+
+jobs:
+<?php
+
+$gen = include __DIR__ . "/ci/gen-matrix.php";
+$cur = "7.4";
+$job = $gen->github([
+"old-matrix" => [
+// most useful for all additional versions except current
+ "PHP" => ["7.0", "7.1", "7.2", "7.3"],
+ "enable_debug" => "yes",
+ "enable_maintainer_zts" => "yes",
+ "enable_json" => "yes",
+ "enable_hash" => "yes",
+ "enable_iconv" => "yes",
+],
+"cur-none" => [
+// everything disabled for current
+ "PHP" => $cur,
+ "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",
+],
+"cur-dbg-zts" => [
+// everything enabled for current, switching debug/zts
+ "PHP" => $cur,
+ "PECLs" => "event", // for tests/client029.phpt
+ "enable_sockets" => "yes", // needed by pecl/event
+ "enable_debug",
+ "enable_maintainer_zts",
+ "enable_json" => "yes",
+ "enable_hash" => "yes",
+ "enable_iconv" => "yes",
+],
+"cur-cov" => [
+// once everything enabled for current, with coverage
+ "CFLAGS" => "'-O0 -g --coverage'",
+ "CXXFLAGS" => "'-O0 -g --coverage'",
+ "PHP" => $cur,
+ "PECLs" => "event", // for tests/client029.phpt
+ "enable_sockets" => "yes", // needed by pecl/event
+ "enable_json" => "yes",
+ "enable_hash" => "yes",
+ "enable_iconv" => "yes",
+ [
+ "with_http_libicu_dir",
+ "with_http_libidn_dir",
+ "with_http_libidn2_dir",
+ ],
+]]);
+
+foreach ($job as $id => $env) {
+ printf(" %s:\n", $id);
+ printf(" name: %s\n", $id);
+ if ($env["PHP"] == "master") {
+ printf(" continue-on-error: true\n");
+ }
+ printf(" env:\n");
+ foreach ($env as $key => $val) {
+ printf(" %s: \"%s\"\n", $key, $val);
+ }
+?>
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true
+ - name: Install
+ run: |
+ sudo apt-get install -y \
+ php-cli \
+ php-pear \
+ libcurl4-openssl-dev \
+ libevent-dev \
+ libidn11-dev \
+ libidn2-0-dev \
+ libicu-dev \
+ libevent-dev \
+ libbrotli-dev \
+ re2c
+ - name: Prepare
+ run: |
+ make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+ make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+ make -f scripts/ci/Makefile pecl PECL=ext-propro.git:propro:master
+ if test -n "$PECLs"; then
+ IFS=$','
+ for pecl in $PECLs; do
+ make -f scripts/ci/Makefile pecl PECL=$pecl
+ done
+ unset IFS
+ fi
+
+ - name: Build
+ run: |
+ make -f scripts/ci/Makefile ext PECL=http
+ - name: Test
+ run: |
+ make -f scripts/ci/Makefile test
+<?php if (isset($env["CFLAGS"]) && strpos($env["CFLAGS"], "--coverage") != false) : ?>
+ - name: Coverage
+ if: success()
+ run: |
+ cd src/.libs
+ bash <(curl -s https://codecov.io/bash) -X xcode -X coveragepy
+<?php endif; ?>
+
+<?php
+}
+++ /dev/null
-#!/usr/bin/env php
-# autogenerated file; do not edit
-language: c
-
-addons:
- apt:
- packages:
- - php-cli
- - php-pear
- - libcurl4-openssl-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
-
-$gen = include "./travis/pecl/gen-matrix.php";
-$cur = "7.4";
-$env = $gen([
-// most useful for all additional versions except current
- "PHP" => ["7.0", "7.1", "7.2", "7.3", "master"],
- "enable_debug" => "yes",
- "enable_maintainer_zts" => "yes",
- "enable_json" => "yes",
- "enable_hash" => "yes",
- "enable_iconv" => "yes",
-], [
-// everything disabled for current
- "PHP" => $cur,
- "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",
-], [
-// everything enabled for current, switching debug/zts
- "PHP" => $cur,
- "PECLs" => "event", // for tests/client029.phpt
- "enable_sockets" => "yes", // needed by pecl/event
- "enable_debug",
- "enable_maintainer_zts",
- "enable_json" => "yes",
- "enable_hash" => "yes",
- "enable_iconv" => "yes",
-], [
-// once everything enabled for current, with coverage
- "CFLAGS" => "'-O0 -g --coverage'",
- "CXXFLAGS" => "'-O0 -g --coverage'",
- "PHP" => $cur,
- "PECLs" => "event", // for tests/client029.phpt
- "enable_sockets" => "yes", // needed by pecl/event
- "enable_json" => "yes",
- "enable_hash" => "yes",
- "enable_iconv" => "yes",
- [
- "with_http_libicu_dir",
- "with_http_libidn_dir",
- "with_http_libidn2_dir",
- ],
-]);
-foreach ($env as $grp) {
- foreach ($grp as $e) {
- printf(" - %s\n", $e);
- }
-}
-?>
-
-matrix:
- fast_finish: true
- allow_failures:
-<?php
-$allow_failures = array_merge( ... array_map(function($a) {
- return preg_grep('/^PHP=(master) /', $a);
-}, $env));
-foreach ($allow_failures as $e) {
- printf(" - env: %s\n", $e);
-}
-?>
-
-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
-
-after_script:
- - make -f travis/pecl/Makefile cppcheck
-after_failure:
- - test -e tests/helper/server.log && cat tests/helper/server.log
-after_success:
- - test -n "$CFLAGS" && cd src/.libs && bash <(curl -s https://codecov.io/bash) -X xcode -X coveragepy
-
-notifications:
- webhooks:
- urls:
- - https://webhooks.gitter.im/e/28d35158ac7e385bd14d
- on_success: change
- on_failure: always
- on_start: never
+++ /dev/null
-#!/bin/bash
-
-BROTLI_DIR="$with_http_libbrotli_dir"
-BROTLI_SRC="$BROTLI_DIR.git"
-
-if test -n "$BROTLI_DIR" && test "$BROTLI_DIR" != "no"; then
- if test -d "$BROTLI_SRC"; then
- cd "$BROTLI_SRC"
- git pull
- else
- git clone https://github.com/google/brotli.git "$BROTLI_SRC"
- cd "$BROTLI_SRC"
- fi
- git checkout $1
- ./bootstrap
- ./configure -C --prefix="$BROTLI_DIR"
- make -j ${JOBS:2}
- make install INSTALL=install
-fi
+++ /dev/null
-Subproject commit 54a746ab5e068060f53796d0aca55f76656bb8b1