Skip to content

Commit

Permalink
php 7.1, updated builds
Browse files Browse the repository at this point in the history
  • Loading branch information
mabar authored and Milan Felix Šulc committed Nov 25, 2018
1 parent 63cd23b commit e5f4707
Show file tree
Hide file tree
Showing 22 changed files with 215 additions and 259 deletions.
20 changes: 5 additions & 15 deletions .editorconfig
@@ -1,26 +1,16 @@
# EditorConfig is awesome: http://EditorConfig.org

# Top-most EditorConfig file
root = true

# Unix-style newlines with a newline ending every file
[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true

# JS / PHP
[*.{js,php,phpt}]
charset = utf-8
indent_style = tab
indent_size = 4

# NEON
[*.neon]
charset = utf-8
trim_trailing_whitespace = true
indent_style = tab
indent_size = 4
indent_size = tab
tab_width = 4

# Composer, NPM, Travis, BitbucketPipelines
[{composer.json,package.json,.travis.yml,bitbucket-pipelines.yml}]
[{*.json,*.yml,*.md}]
indent_style = space
indent_size = 2
10 changes: 10 additions & 0 deletions .gitattributes
@@ -0,0 +1,10 @@
# Not archived
.docs export-ignore
tests export-ignore
.editorconfig export-ignore
.gitattributes export-ignore
.gitignore export-ignore
.travis.yml export-ignore
phpstan.neon export-ignore
README.md export-ignore
ruleset.xml export-ignore
5 changes: 2 additions & 3 deletions .gitignore
Expand Up @@ -6,6 +6,5 @@
/composer.lock

# Tests
/tests/*.log
/tests/tmp
/tests/coverage.html
/temp
/coverage.xml
94 changes: 51 additions & 43 deletions .travis.yml
@@ -1,62 +1,70 @@
language: php

php:
- 5.6
- 7.0
- 7.1
- hhvm

matrix:
fast_finish: true
- 7.2
- 7.3

allow_failures:
- php: hhvm
before_install:
# Turn off XDebug
- phpenv config-rm xdebug.ini || return 0

include:
- php: 5.6
env: COMPOSER_FLAG=--prefer-lowest
- php: 5.6
env: COMPOSER_FLAG=--prefer-stable
- php: 7.0
env: COMPOSER_FLAG=--prefer-lowest
- php: 7.0
env: COMPOSER_FLAG=--prefer-stable
- php: 7.1
env: COMPOSER_FLAG=--prefer-lowest
- php: 7.1
env: COMPOSER_FLAG=--prefer-stable
install:
# Composer
- travis_retry composer install --no-progress --prefer-dist

before_script:
# Composer
- travis_retry composer install --no-interaction
# Coverage
- if [[ "$TRAVIS_PHP_VERSION" == "7.1" && "$COMPOSER_FLAG" == "" ]]; then COVERAGE=1; fi
# Create database
- mysql -e 'CREATE DATABASE mydb;'

# Create database
- mysql -e 'CREATE DATABASE mydb;'

# Import data
# Import data
- mysql -u root mydb < tests/fixtures/database.sql

script:
# Quality Assurance
- travis_retry composer qa

# Nette\Tester
- composer run-script tester

# Nette\Tester + CodeCoverage
- if [ "$COVERAGE" != "" ]; then composer tester-coverage; fi

after_script:
# Coverage (Coveralls)
- if [ "$COVERAGE" != "" ]; then wget https://github.com/satooshi/php-coveralls/releases/download/v1.0.1/coveralls.phar; fi
- if [ "$COVERAGE" != "" ]; then php coveralls.phar --verbose --config tests/.coveralls.yml; fi
# Tests
- composer run-script tests

after_failure:
# Print *.actual content
- for i in $(find tests -name \*.actual); do echo "--- $i"; cat $i; echo; echo; done

jobs:
include:
- env: title="Lowest Dependencies 7.1"
php: 7.1
install:
- travis_retry composer update --no-progress --prefer-dist --prefer-lowest
script:
- composer run-script tests

- stage: Quality Assurance
php: 7.1
script:
- composer run-script qa

- stage: Phpstan
php: 7.1
script:
- composer run-script phpstan-install
- composer run-script phpstan

- stage: Test Coverage
if: branch = master AND type = push
php: 7.1
script:
- composer run-script coverage
after_script:
- wget https://github.com/php-coveralls/php-coveralls/releases/download/v2.1.0/php-coveralls.phar
- php php-coveralls.phar --verbose --config tests/.coveralls.yml

- stage: Outdated Dependencies
if: branch = master AND type = cron
php: 7.1
script:
- composer outdated --direct --strict

allow_failures:
- stage: Test Coverage

sudo: false

cache:
Expand Down
5 changes: 3 additions & 2 deletions README.md
Expand Up @@ -7,10 +7,10 @@
[![Build Status](https://img.shields.io/travis/contributte/database.svg?style=flat-square)](https://travis-ci.org/contributte/database)
[![Code coverage](https://img.shields.io/coveralls/contributte/database.svg?style=flat-square)](https://coveralls.io/r/contributte/database)
[![Licence](https://img.shields.io/packagist/l/contributte/database.svg?style=flat-square)](https://packagist.org/packages/contributte/database)

[![Downloads this Month](https://img.shields.io/packagist/dm/contributte/database.svg?style=flat-square)](https://packagist.org/packages/contributte/database)
[![Downloads total](https://img.shields.io/packagist/dt/contributte/database.svg?style=flat-square)](https://packagist.org/packages/contributte/database)
[![Latest stable](https://img.shields.io/packagist/v/contributte/database.svg?style=flat-square)](https://packagist.org/packages/contributte/database)
[![PHPStan](https://img.shields.io/badge/PHPStan-enabled-brightgreen.svg?style=flat)](https://github.com/phpstan/phpstan)

## Discussion / Help

Expand All @@ -26,6 +26,7 @@ composer require contributte/database

| State | Version | Branch | PHP |
|-------------|---------|----------|----------|
| stable | `^0.2` | `master` | `>= 7.1` |
| stable | `^0.1` | `master` | `>= 5.6` |

## Overview
Expand All @@ -45,7 +46,7 @@ composer require contributte/database
<a href="https://github.com/f3l1x">Milan Felix Šulc</a>
</td>
</tr>
<tbody>
</tbody>
</table>

---
Expand Down
37 changes: 26 additions & 11 deletions composer.json
@@ -1,24 +1,29 @@
{
"name": "contributte/database",
"description": "Extra contrib to nette/database",
"keywords": ["nette", "database", "transaction", "activerecord"],
"keywords": [
"nette",
"database",
"transaction",
"activerecord"
],
"type": "library",
"license": "MIT",
"homepage": "https://github.com/contributte/database",
"authors": [
{
"name": "Milan Felix Sulc",
"name": "Milan Felix Šulc",
"homepage": "https://f3l1x.io"
}
],
"require": {
"php": ">= 5.6",
"nette/database": "^2.4.4"
"php": ">= 7.1",
"nette/database": "~2.4.7"
},
"require-dev": {
"ninjify/qa": "^0.4.0",
"ninjify/nunjuck": "^0.1.4",
"nette/di": "^2.4.9"
"ninjify/qa": "^0.8.0",
"ninjify/nunjuck": "^0.2.1",
"nette/di": "~2.4.14"
},
"suggest": {
"nette/di": "to use TransactionExtesion [CompilerExtension]"
Expand All @@ -39,11 +44,21 @@
"linter src tests",
"codesniffer src tests"
],
"tester": [
"tester -s -p php --colors 1 -c tests/php-unix.ini tests/cases"
"tests": [
"tester -s -p php --colors 1 -C tests/cases"
],
"coverage": [
"tester -s -p phpdbg --colors 1 -C --coverage ./coverage.xml --coverage-src ./src tests/cases"
],
"phpstan-install": [
"mkdir -p temp/phpstan",
"composer require -d temp/phpstan phpstan/phpstan:^0.10",
"composer require -d temp/phpstan phpstan/phpstan-deprecation-rules:^0.10",
"composer require -d temp/phpstan phpstan/phpstan-nette:^0.10",
"composer require -d temp/phpstan phpstan/phpstan-strict-rules:^0.10"
],
"tester-coverage": [
"tester -s -p php --colors 1 -c tests/php-unix.ini -d extension=xdebug.so --coverage ./coverage.xml --coverage-src ./src tests/cases"
"phpstan": [
"temp/phpstan/vendor/bin/phpstan analyse -l max -c phpstan.neon src"
]
}
}
5 changes: 5 additions & 0 deletions phpstan.neon
@@ -0,0 +1,5 @@
includes:
- temp/phpstan/vendor/phpstan/phpstan-deprecation-rules/rules.neon
- temp/phpstan/vendor/phpstan/phpstan-nette/extension.neon
- temp/phpstan/vendor/phpstan/phpstan-nette/rules.neon
- temp/phpstan/vendor/phpstan/phpstan-strict-rules/rules.neon
29 changes: 19 additions & 10 deletions ruleset.xml
@@ -1,13 +1,22 @@
<?xml version="1.0"?>
<ruleset name="Contributte">
<!-- Extending rulesets -->
<rule ref="vendor/ninjify/coding-standard/ruleset.xml"/>

<!-- Contributte -->
<rule ref="Squiz.Classes.ClassFileName">
<exclude name="Squiz.Classes.ClassFileName.NoMatch"/>
</rule>

<!-- Exclude folders -->
<exclude-pattern>/tests/tmp</exclude-pattern>
<!-- Contributte Coding Standard -->
<rule ref="./vendor/ninjify/coding-standard/contributte.xml">
<exclude name="SlevomatCodingStandard.Operators.DisallowIncrementAndDecrementOperators.DisallowedPostDecrementOperator"/>
</rule>

<!-- Specific rules -->
<rule ref="SlevomatCodingStandard.Files.TypeNameMatchesFileName">
<properties>
<property name="rootNamespaces" type="array" value="
src=>Contributte\Database,
tests/cases/unit=>Tests\Cases\Unit,
tests/helpers=>Tests\Helpers
"/>
<property name="extensions" type="array" value="php, phpt"/>
</properties>
</rule>

<!-- Exclude folders -->
<exclude-pattern>/tests/tmp</exclude-pattern>
</ruleset>
15 changes: 5 additions & 10 deletions src/DI/TransactionExtension.php
@@ -1,31 +1,26 @@
<?php
<?php declare(strict_types = 1);

namespace Contributte\Database\DI;

use Contributte\Database\Transaction\Transaction;
use Nette\Database\Connection;
use Nette\DI\CompilerExtension;

/**
* @author Milan Felix Sulc <sulcmil@gmail.com>
*/
class TransactionExtension extends CompilerExtension
{

/**
* Decorate services
*
* @return void
*/
public function beforeCompile()
public function beforeCompile(): void
{
$builder = $this->getContainerBuilder();

// If connection exists
if ($builder->getByType(Connection::class)) {
if ($builder->getByType(Connection::class) !== null) {
$builder->addDefinition($this->prefix('transaction'))
->setClass(Transaction::class);
};
->setFactory(Transaction::class);
}
}

}
2 changes: 1 addition & 1 deletion src/Exception/InvalidTransactionException.php
@@ -1,4 +1,4 @@
<?php
<?php declare(strict_types = 1);

namespace Contributte\Database\Exception;

Expand Down
2 changes: 1 addition & 1 deletion src/Exception/TransactionException.php
@@ -1,4 +1,4 @@
<?php
<?php declare(strict_types = 1);

namespace Contributte\Database\Exception;

Expand Down
2 changes: 1 addition & 1 deletion src/Exception/UnresolvedTransactionException.php
@@ -1,4 +1,4 @@
<?php
<?php declare(strict_types = 1);

namespace Contributte\Database\Exception;

Expand Down

0 comments on commit e5f4707

Please sign in to comment.