diff --git a/.gitattributes b/.gitattributes index 26873e9..337ff0a 100644 --- a/.gitattributes +++ b/.gitattributes @@ -4,7 +4,6 @@ /.gitattributes export-ignore /.github export-ignore /.gitignore export-ignore -/.travis.yml export-ignore /phpunit.xml.dist export-ignore /CHANGELOG.md export-ignore /README.md export-ignore diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml new file mode 100644 index 0000000..e0ad0b9 --- /dev/null +++ b/.github/workflows/tests.yml @@ -0,0 +1,61 @@ +name: Tests + +on: + push: + pull_request: + schedule: + - cron: '0 4 * * 1' + +jobs: + test: + + runs-on: ubuntu-latest + + strategy: + matrix: + php: [7.1, 7.2, 7.3, 7.4] + laravel: [5.5, 5.6, 5.7, 5.8, 6, 7] + httplug: [1, 2] + exclude: + - php: 7.1 + laravel: 6 + httplug: 1 + - php: 7.1 + laravel: 6 + httplug: 2 + - php: 7.1 + laravel: 7 + httplug: 1 + - php: 7.1 + laravel: 7 + httplug: 2 + + name: PHP ${{ matrix.php }}; Laravel ${{ matrix.laravel }}; HTTPlug ${{ matrix.httplug }} + + steps: + - uses: actions/checkout@v2 + - name: Pull Docker Image + run: docker pull registry.gitlab.com/grahamcampbell/php:${{ matrix.php }} + - name: Select Laravel 5.5 + run: docker run --rm -w /data -v ${{ github.workspace }}:/data --entrypoint composer registry.gitlab.com/grahamcampbell/php:${{ matrix.php }} require "laravel/framework:5.5.*" "phpunit/phpunit:^6.5" --no-update -n + if: "matrix.laravel == 5.5" + - name: Select Laravel 5.6 + run: docker run --rm -w /data -v ${{ github.workspace }}:/data --entrypoint composer registry.gitlab.com/grahamcampbell/php:${{ matrix.php }} require "laravel/framework:5.6.*" "phpunit/phpunit:^7.5" --no-update -n + if: "matrix.laravel == 5.6" + - name: Select Laravel 5.7 + run: docker run --rm -w /data -v ${{ github.workspace }}:/data --entrypoint composer registry.gitlab.com/grahamcampbell/php:${{ matrix.php }} require "laravel/framework:5.7.*" "phpunit/phpunit:^7.5" --no-update -n + if: "matrix.laravel == 5.7" + - name: Select Laravel 5.8 + run: docker run --rm -w /data -v ${{ github.workspace }}:/data --entrypoint composer registry.gitlab.com/grahamcampbell/php:${{ matrix.php }} require "laravel/framework:${{ matrix.laravel }}.*" "phpunit/phpunit:^7.5|^8.5" --no-update -n + if: "matrix.laravel == 5.8" + - name: Select Laravel 6/7 + run: docker run --rm -w /data -v ${{ github.workspace }}:/data --entrypoint composer registry.gitlab.com/grahamcampbell/php:${{ matrix.php }} require "laravel/framework:${{ matrix.laravel }}.*" "phpunit/phpunit:^8.5|^9.0" --no-update -n + if: "matrix.laravel >= 6" + - name: Select HTTPlug + run: docker run --rm -w /data -v ${{ github.workspace }}:/data --entrypoint composer registry.gitlab.com/grahamcampbell/php:${{ matrix.php }} require "php-http/httplug:^${{ matrix.httplug }}" --no-update -n + - name: Run Composer + run: docker run --rm -w /data -v ${{ github.workspace }}:/data --entrypoint composer registry.gitlab.com/grahamcampbell/php:${{ matrix.php }} install --prefer-dist -n -o + - name: Run PHPUnit + run: docker run --rm -w /data -v ${{ github.workspace }}:/data --entrypoint vendor/bin/phpunit registry.gitlab.com/grahamcampbell/php:${{ matrix.php }} --coverage-clover build/logs/clover.xml + - name: Upload Coverage + run: docker run --rm -w /data -v ${{ github.workspace }}:/data --entrypoint ocular registry.gitlab.com/grahamcampbell/php:${{ matrix.php }} code-coverage:upload --format=php-clover build/logs/clover.xml diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index b0e7466..0000000 --- a/.travis.yml +++ /dev/null @@ -1,329 +0,0 @@ -dist: bionic - -matrix: - include: - - name: PHP 7.1; Laravel 5.5; HTTPlug 1 - env: - - PHP_VERSION=7.1 - - LARAVEL_VERSION=5.5.* - - SYMFONY_VERSION=^3.0 - - PHPUNIT_VERSION=^6.5 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.1; Laravel 5.5; HTTPlug 2 - env: - - PHP_VERSION=7.1 - - LARAVEL_VERSION=5.5.* - - SYMFONY_VERSION=^3.0 - - PHPUNIT_VERSION=^6.5 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.1; Laravel 5.6; HTTPlug 1 - env: - - PHP_VERSION=7.1 - - LARAVEL_VERSION=5.6.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.1; Laravel 5.6; HTTPlug 2 - env: - - PHP_VERSION=7.1 - - LARAVEL_VERSION=5.6.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.1; Laravel 5.7; HTTPlug 1 - env: - - PHP_VERSION=7.1 - - LARAVEL_VERSION=5.7.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.1; Laravel 5.7; HTTPlug 2 - env: - - PHP_VERSION=7.1 - - LARAVEL_VERSION=5.7.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.1; Laravel 5.8; HTTPlug 1 - env: - - PHP_VERSION=7.1 - - LARAVEL_VERSION=5.8.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.1; Laravel 5.8; HTTPlug 2 - env: - - PHP_VERSION=7.1 - - LARAVEL_VERSION=5.8.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.2; Laravel 5.5; HTTPlug 1 - env: - - PHP_VERSION=7.2 - - LARAVEL_VERSION=5.5.* - - SYMFONY_VERSION=^3.0 - - PHPUNIT_VERSION=^6.5 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.2; Laravel 5.5; HTTPlug 2 - env: - - PHP_VERSION=7.2 - - LARAVEL_VERSION=5.5.* - - SYMFONY_VERSION=^3.0 - - PHPUNIT_VERSION=^6.5 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.2; Laravel 5.6; HTTPlug 1 - env: - - PHP_VERSION=7.2 - - LARAVEL_VERSION=5.6.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.2; Laravel 5.6; HTTPlug 2 - env: - - PHP_VERSION=7.2 - - LARAVEL_VERSION=5.6.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.2; Laravel 5.7; HTTPlug 1 - env: - - PHP_VERSION=7.2 - - LARAVEL_VERSION=5.7.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.2; Laravel 5.7; HTTPlug 2 - env: - - PHP_VERSION=7.2 - - LARAVEL_VERSION=5.7.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.2; Laravel 5.8; HTTPlug 1 - env: - - PHP_VERSION=7.2 - - LARAVEL_VERSION=5.8.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.2; Laravel 5.8; HTTPlug 2 - env: - - PHP_VERSION=7.2 - - LARAVEL_VERSION=5.8.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.2; Laravel 6; HTTPlug 1 - env: - - PHP_VERSION=7.2 - - LARAVEL_VERSION=^6.0 - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.2; Laravel 6; HTTPlug 2 - env: - - PHP_VERSION=7.2 - - LARAVEL_VERSION=^6.0 - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.2; Laravel 7; HTTPlug 1 - env: - - PHP_VERSION=7.2 - - LARAVEL_VERSION=^7.0 - - SYMFONY_VERSION=^5.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.2; Laravel 7; HTTPlug 2 - env: - - PHP_VERSION=7.2 - - LARAVEL_VERSION=^7.0 - - SYMFONY_VERSION=^5.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.3; Laravel 5.5; HTTPlug 1 - env: - - PHP_VERSION=7.3 - - LARAVEL_VERSION=5.5.* - - SYMFONY_VERSION=^3.0 - - PHPUNIT_VERSION=^6.5 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.3; Laravel 5.5; HTTPlug 2 - env: - - PHP_VERSION=7.3 - - LARAVEL_VERSION=5.5.* - - SYMFONY_VERSION=^3.0 - - PHPUNIT_VERSION=^6.5 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.3; Laravel 5.6; HTTPlug 1 - env: - - PHP_VERSION=7.3 - - LARAVEL_VERSION=5.6.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.3; Laravel 5.6; HTTPlug 2 - env: - - PHP_VERSION=7.3 - - LARAVEL_VERSION=5.6.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.3; Laravel 5.7; HTTPlug 1 - env: - - PHP_VERSION=7.3 - - LARAVEL_VERSION=5.7.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.3; Laravel 5.7; HTTPlug 2 - env: - - PHP_VERSION=7.3 - - LARAVEL_VERSION=5.7.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.3; Laravel 5.8; HTTPlug 1 - env: - - PHP_VERSION=7.3 - - LARAVEL_VERSION=5.8.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.3; Laravel 5.8; HTTPlug 2 - env: - - PHP_VERSION=7.3 - - LARAVEL_VERSION=5.8.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.3; Laravel 6; HTTPlug 1 - env: - - PHP_VERSION=7.3 - - LARAVEL_VERSION=^6.0 - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.3; Laravel 6; HTTPlug 2 - env: - - PHP_VERSION=7.3 - - LARAVEL_VERSION=^6.0 - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.3; Laravel 7; HTTPlug 1 - env: - - PHP_VERSION=7.3 - - LARAVEL_VERSION=^7.0 - - SYMFONY_VERSION=^5.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.3; Laravel 7; HTTPlug 2 - env: - - PHP_VERSION=7.3 - - LARAVEL_VERSION=^7.0 - - SYMFONY_VERSION=^5.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.4; Laravel 5.5; HTTPlug 1 - env: - - PHP_VERSION=7.4 - - LARAVEL_VERSION=5.5.* - - SYMFONY_VERSION=^3.0 - - PHPUNIT_VERSION=^6.5 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.4; Laravel 5.5; HTTPlug 2 - env: - - PHP_VERSION=7.4 - - LARAVEL_VERSION=5.5.* - - SYMFONY_VERSION=^3.0 - - PHPUNIT_VERSION=^6.5 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.4; Laravel 5.6; HTTPlug 1 - env: - - PHP_VERSION=7.4 - - LARAVEL_VERSION=5.6.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.4; Laravel 5.6; HTTPlug 2 - env: - - PHP_VERSION=7.4 - - LARAVEL_VERSION=5.6.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.4; Laravel 5.7; HTTPlug 1 - env: - - PHP_VERSION=7.4 - - LARAVEL_VERSION=5.7.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.4; Laravel 5.7; HTTPlug 2 - env: - - PHP_VERSION=7.4 - - LARAVEL_VERSION=5.7.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^7.5 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.4; Laravel 5.8; HTTPlug 1 - env: - - PHP_VERSION=7.4 - - LARAVEL_VERSION=5.8.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.4; Laravel 5.8; HTTPlug 2 - env: - - PHP_VERSION=7.4 - - LARAVEL_VERSION=5.8.* - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^2.0 - - name: PHP 7.4; Laravel 6; HTTPlug 1 - env: - - PHP_VERSION=7.4 - - LARAVEL_VERSION=^6.0 - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.4; Laravel 6; HTTPlug 2 - env: - - PHP_VERSION=7.4 - - LARAVEL_VERSION=^6.0 - - SYMFONY_VERSION=^4.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^2.0 - - - name: PHP 7.4; Laravel 7; HTTPlug 1 - env: - - PHP_VERSION=7.4 - - LARAVEL_VERSION=^7.0 - - SYMFONY_VERSION=^5.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^1.1 - - name: PHP 7.4; Laravel 7; HTTPlug 2 - env: - - PHP_VERSION=7.4 - - LARAVEL_VERSION=^7.0 - - SYMFONY_VERSION=^5.0 - - PHPUNIT_VERSION=^8.0 - - HTTPPLUG_VERSION=^2.0 - -before_install: - - travis_retry docker pull registry.gitlab.com/grahamcampbell/php:$PHP_VERSION - - docker run -it -w /data -v ${PWD}:/data:delegated --entrypoint composer registry.gitlab.com/grahamcampbell/php:$PHP_VERSION require "laravel/framework:${LARAVEL_VERSION}" --no-update -n - - if [ "$SYMFONY_VERSION" != "^5.0" ]; then docker run -it -w /data -v ${PWD}:/data:delegated --entrypoint composer registry.gitlab.com/grahamcampbell/php:$PHP_VERSION require "symfony/lts:${SYMFONY_VERSION}" --no-update -n; fi - - docker run -it -w /data -v ${PWD}:/data:delegated --entrypoint composer registry.gitlab.com/grahamcampbell/php:$PHP_VERSION require "phpunit/phpunit:${PHPUNIT_VERSION}" --dev --no-update -n - - docker run -it -w /data -v ${PWD}:/data:delegated --entrypoint composer registry.gitlab.com/grahamcampbell/php:$PHP_VERSION require "php-http/httplug:${HTTPPLUG_VERSION}" --no-update -n - -install: - - travis_retry docker run -it -w /data -v ${PWD}:/data:delegated --entrypoint composer registry.gitlab.com/grahamcampbell/php:$PHP_VERSION install --no-suggest --prefer-dist -n -o - -script: - - docker run -it -w /data -v ${PWD}:/data:delegated --entrypoint vendor/bin/phpunit registry.gitlab.com/grahamcampbell/php:$PHP_VERSION --coverage-clover build/logs/clover.xml - -after_script: - - travis_retry docker run -it -w /data -v ${PWD}:/data:delegated --entrypoint ocular registry.gitlab.com/grahamcampbell/php:$PHP_VERSION code-coverage:upload --format=php-clover build/logs/clover.xml diff --git a/README.md b/README.md index 5f4a3a1..8bac655 100644 --- a/README.md +++ b/README.md @@ -6,12 +6,12 @@ Laravel GitHub was created by, and is maintained by [Graham Campbell](https://gi ![Banner](https://user-images.githubusercontent.com/2829600/71477348-60993680-27e1-11ea-845e-fbc2ee79ed7d.png)

-StyleCI Status -Build Status -Coverage Status -Quality Score -Software License -Latest Version +StyleCI Status +Build Status +Coverage Status +Quality Score +Software License +Latest Version