Skip to content

Commit

Permalink
Refactoring: PHP 7.1, Bootstrap3/4 Renderers (#8)
Browse files Browse the repository at this point in the history
  • Loading branch information
mabar authored and Milan Felix Šulc committed May 7, 2018
1 parent 441077b commit 8d40423
Show file tree
Hide file tree
Showing 20 changed files with 773 additions and 87 deletions.
13 changes: 2 additions & 11 deletions .docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,7 @@ final class UserPresenter extends BasePresenter
/** @var IFormFactory @inject */
public $factory;

/**
* @return Form
*/
protected function createComponentUserForm()
protected function createComponentUserForm(): Form
{
$form = $this->factory->create();

Expand All @@ -57,18 +54,12 @@ final class UserFormFactory
/** @var IFormFactory */
private $factory;

/**
* @param IFormFactory $factory
*/
public function __construct(IFormFactory $factory)
{
$this->factory = $factory;
}

/**
* @return Form
*/
public function create()
public function create(): Form
{
$form = $this->factory->create();

Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@
/composer.lock

# Tests
/temp
/tests/*.log
/tests/tmp
/tests/coverage.html
/coverage.xml
79 changes: 43 additions & 36 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,51 +1,58 @@
language: php

php:
- 5.6
- 7.0
- 7.1
- hhvm
- 7.2

matrix:
fast_finish: true
before_install:
# turn off XDebug
- phpenv config-rm xdebug.ini || return 0

allow_failures:
- php: hhvm

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

before_script:
install:
# Composer
- travis_retry composer install --no-interaction
# Coverage
- if [[ "$TRAVIS_PHP_VERSION" == "7.1" && "$COMPOSER_FLAG" == "" ]]; then COVERAGE=1; fi
- travis_retry composer install --no-progress --prefer-dist

script:
# Quality Assurance
- travis_retry composer qa

# Nette\Tester
# Nette/Tester
- composer run-script tester

# Nette\Tester + CodeCoverage
- if [ "$COVERAGE" != "" ]; then composer tester-coverage; fi
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 tester

- env: title="Lowest Dependencies 7.2"
php: 7.2
install:
- travis_retry composer update --no-progress --prefer-dist --prefer-lowest
script:
- composer run-script tester

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

- stage: Test Coverage
php: 7.2
script:
- composer run-script coverage
after_script:
- wget https://github.com/php-coveralls/php-coveralls/releases/download/v2.0.0/php-coveralls.phar
- php coveralls.phar --verbose --config tests/.coveralls.yml

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
- stage: Phpstan
php: 7.2
script:
- composer run-script phpstan-install
- composer run-script phpstan

allow_failures:
- stage: Test Coverage

after_failure:
# Print *.actual content
Expand Down
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ composer require contributte/forms

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

## Overview
Expand All @@ -44,6 +45,13 @@ composer require contributte/forms
</br>
<a href="https://github.com/f3l1x">Milan Felix Šulc</a>
</td>
<td align="center">
<a href="https://github.com/mabar">
<img width="150" height="150" src="https://avatars0.githubusercontent.com/u/20974277?s=400&v=4">
</a>
</br>
<a href="https://github.com/mabar">Marek Bartoš</a>
</td>
</tr>
<tbody>
</table>
Expand Down
34 changes: 27 additions & 7 deletions composer.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,15 @@
{
"name": "contributte/forms",
"description": "Extra contrib to nette/forms",
"keywords": ["nette", "forms", "inputs", "checkbox", "rules", "validation"],
"keywords": [
"nette",
"forms",
"inputs",
"checkbox",
"rules",
"validation",
"renderers"
],
"type": "library",
"license": "MIT",
"homepage": "https://github.com/contributte/forms",
Expand All @@ -12,13 +20,14 @@
}
],
"require": {
"php": ">= 5.6",
"nette/forms": "^2.4.3"
"php": ">= 7.1",
"nette/forms": "~2.4.3"
},
"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",
"nette/di": "~2.4.11",
"nette/utils": "~2.5.2"
},
"suggest": {
"nette/di": "to use FormFactoryExtension[CompilerExtension]"
Expand All @@ -28,6 +37,8 @@
"Contributte\\Forms\\": "src"
}
},
"minimum-stability": "dev",
"prefer-stable": true,
"scripts": {
"qa": [
"linter src tests",
Expand All @@ -36,8 +47,17 @@
"tester": [
"tester -s -p php --colors 1 -c tests/php-unix.ini tests/cases"
],
"tester-coverage": [
"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-install": [
"mkdir -p temp/phpstan",
"composer require -d temp/phpstan phpstan/phpstan:0.9.2",
"composer require -d temp/phpstan phpstan/phpstan-nette:0.9",
"composer require -d temp/phpstan phpstan/phpstan-strict-rules:0.9"
],
"phpstan": [
"temp/phpstan/vendor/bin/phpstan analyse -l max -c phpstan.neon src"
]
}
}
4 changes: 4 additions & 0 deletions phpstan.neon
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
includes:
- temp/phpstan/vendor/phpstan/phpstan-strict-rules/rules.neon
- temp/phpstan/vendor/phpstan/phpstan-nette/extension.neon
- temp/phpstan/vendor/phpstan/phpstan-nette/rules.neon
17 changes: 17 additions & 0 deletions ruleset.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<?xml version="1.0"?>
<ruleset name="Contributte">
<!-- Extending rulesets -->
<rule ref="vendor/ninjify/coding-standard/contributte.xml"/>

<!-- My rules -->
<rule ref="SlevomatCodingStandard.Files.TypeNameMatchesFileName">
<properties>
<property name="rootNamespaces" type="array" value="
src=>Contributte\Forms
"/>
</properties>
</rule>

<!-- Exclude folders -->
<exclude-pattern>/tests/tmp</exclude-pattern>
</ruleset>
14 changes: 14 additions & 0 deletions src/.editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
root = true

[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
indent_style = tab
indent_size = tab
tab_width = 4

[{composer.json,package.json,.travis.yml}]
indent_style = space
indent_size = 2
9 changes: 2 additions & 7 deletions src/DI/FormFactoryExtension.php
Original file line number Diff line number Diff line change
@@ -1,22 +1,17 @@
<?php
<?php declare(strict_types = 1);

namespace Contributte\Forms\DI;

use Contributte\Forms\FormFactory;
use Nette\DI\CompilerExtension;

/**
* @author Milan Felix Sulc <[email protected]>
*/
class FormFactoryExtension extends CompilerExtension
{

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

Expand Down
5 changes: 1 addition & 4 deletions src/Form.php
Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
<?php
<?php declare(strict_types = 1);

namespace Contributte\Forms;

use Nette\Forms\Form as NetteForm;

/**
* @author Milan Felix Sulc <[email protected]>
*/
class Form extends NetteForm
{

Expand Down
10 changes: 2 additions & 8 deletions src/FormFactory.php
Original file line number Diff line number Diff line change
@@ -1,17 +1,11 @@
<?php
<?php declare(strict_types = 1);

namespace Contributte\Forms;

/**
* @author Milan Felix Sulc <[email protected]>
*/
class FormFactory implements IFormFactory
{

/**
* @return Form
*/
public function create()
public function create(): Form
{
return new Form();
}
Expand Down
10 changes: 2 additions & 8 deletions src/IFormFactory.php
Original file line number Diff line number Diff line change
@@ -1,16 +1,10 @@
<?php
<?php declare(strict_types = 1);

namespace Contributte\Forms;

/**
* @author Milan Felix Sulc <[email protected]>
*/
interface IFormFactory
{

/**
* @return Form
*/
public function create();
public function create(): Form;

}
Loading

0 comments on commit 8d40423

Please sign in to comment.