Skip to content

Commit 0a4faca

Browse files
authored
Merge pull request #20 from fmasa/php7.2-compatibility
Kompatibilita s PHP 7.2
2 parents 6907d1a + f052f97 commit 0a4faca

File tree

10 files changed

+33
-221
lines changed

10 files changed

+33
-221
lines changed

.travis.yml

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,26 +4,16 @@ language: php
44
sudo: false
55

66
env:
7-
- NETTE=2.1
8-
- NETTE=2.2
9-
- NETTE=2.3
107
- NETTE=2.4
118
- NETTE=master
129

1310
php:
14-
- 5.4
15-
- 5.5
1611
- 5.6
1712
- 7.0
1813
- 7.1
1914
- hhvm
2015

2116
matrix:
22-
exclude:
23-
- php: 5.4
24-
env: NETTE=2.4
25-
- php: 5.5
26-
env: NETTE=2.4
2717
allow_failures:
2818
- php: hhvm
2919

@@ -42,4 +32,4 @@ after_failure:
4232

4333
cache:
4434
directories:
45-
- $HOME/.composer/cache
35+
- $HOME/.composer/cache

composer.json

Lines changed: 6 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -16,33 +16,16 @@
1616
"source": "https://github.com/skaut/SkautisNette"
1717
},
1818
"require": {
19-
"php": ">=5.3.0",
19+
"php": ">=5.6",
2020
"skautis/skautis": "~2.0@dev",
21-
"nette/di": "~2.1@dev",
22-
"nette/http": "~2.1@dev"
21+
"nette/di": "^2.4@dev",
22+
"nette/http": "^2.4@dev",
23+
"nette/utils": "^2.4@dev"
2324
},
2425
"require-dev": {
2526
"nette/tester": "~1.3",
26-
"nette/nette": "~2.1@dev",
27-
"nette/application": "~2.1@dev",
28-
"nette/bootstrap": "~2.1@dev",
29-
"nette/caching": "~2.1@dev",
30-
"nette/component-model": "~2.1@dev",
31-
"nette/database": "~2.1@dev",
32-
"nette/deprecated": "~2.1@dev",
33-
"nette/finder": "~2.1@dev",
34-
"nette/forms": "~2.1@dev",
35-
"nette/mail": "~2.1@dev",
36-
"nette/neon": "~2.1@dev",
37-
"nette/php-generator": "~2.1@dev",
38-
"nette/reflection": "~2.1@dev",
39-
"nette/robot-loader": "~2.1@dev",
40-
"nette/safe-stream": "~2.1@dev",
41-
"nette/security": "~2.1@dev",
42-
"nette/tokenizer": "~2.1@dev",
43-
"nette/utils": "~2.1@dev",
44-
"latte/latte": "~2.1@dev",
45-
"tracy/tracy": "~2.1@dev"
27+
"nette/nette": "^2.4@dev",
28+
"nette/utils": "^2.4@dev"
4629
},
4730
"suggest": {
4831
"tracy/tracy": "to enable skautis panel for Tracy debug bar.",

src/SkautisExtension.php

Lines changed: 13 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44

55
use Nette;
66
use Nette\DI\Config;
7+
use Skautis;
8+
use Tracy\Debugger;
79

810

911
/**
@@ -16,13 +18,13 @@ class SkautisExtension extends Nette\DI\CompilerExtension
1618
{
1719

1820
/** @var array */
19-
public $defaults = array(
21+
public $defaults = [
2022
'applicationId' => NULL,
2123
'testMode' => FALSE,
2224
'profiler' => NULL,
2325
'cache' => TRUE,
2426
'compression' => TRUE,
25-
);
27+
];
2628

2729

2830
public function loadConfiguration()
@@ -32,66 +34,28 @@ public function loadConfiguration()
3234
$config['profiler'] = isset($config['profiler']) ? $config['profiler'] : !empty($container->parameters['debugMode']);
3335

3436
$container->addDefinition($this->prefix('config'))
35-
->setClass('Skautis\Config', array($config['applicationId'], $config['testMode'], $config['cache'], $config['compression']));
37+
->setClass(Skautis\Config::class, array($config['applicationId'], $config['testMode'], $config['cache'], $config['compression']));
3638

3739
$container->addDefinition($this->prefix('webServiceFactory'))
38-
->setClass('Skautis\Wsdl\WebServiceFactory');
40+
->setClass(Skautis\Wsdl\WebServiceFactory::class);
3941

4042
$manager = $container->addDefinition($this->prefix('wsdlManager'))
41-
->setClass('Skautis\Wsdl\WsdlManager');
43+
->setClass(Skautis\Wsdl\WsdlManager::class);
4244

4345
$container->addDefinition($this->prefix('session'))
44-
->setClass('Skautis\Nette\SessionAdapter');
46+
->setClass(SessionAdapter::class);
4547

4648
$container->addDefinition($this->prefix('user'))
47-
->setClass('Skautis\User');
49+
->setClass(Skautis\User::class);
4850

4951
$container->addDefinition($this->prefix('skautis'))
50-
->setClass('Skautis\Skautis');
52+
->setClass(Skautis\Skautis::class);
5153

52-
if ($config['profiler'] && (class_exists('Tracy\Debugger') || class_exists('Nette\Diagnostics\Debugger'))) {
54+
if ($config['profiler'] && class_exists(Debugger::class)) {
5355
$panel = $container->addDefinition($this->prefix('panel'))
54-
->setClass('Skautis\Nette\Tracy\Panel');
55-
$manager->addSetup(array($panel, 'register'), array($manager));
56+
->setClass(Skautis\Nette\Tracy\Panel::class);
57+
$manager->addSetup([$panel, 'register'], array($manager));
5658
}
5759
}
5860

59-
60-
/**
61-
* BC with nette/di <2.3
62-
* @param string $name
63-
* @param array $args
64-
* @return mixed
65-
*/
66-
public function __call($name, $args)
67-
{
68-
if ($name === 'validateConfig') {
69-
return call_user_func_array(array($this, '_validateConfig'), $args);
70-
}
71-
return parent::__call($name, $args);
72-
}
73-
74-
75-
/**
76-
* Checks whether $config contains only $expected items and returns combined array.
77-
* BC with nette/di <2.3
78-
* @param array $expected configuration keys
79-
* @param array|NULL $config to validate
80-
* @param string|NULL $name configuration section name
81-
* @return array
82-
* @throws Nette\InvalidStateException
83-
*/
84-
private function _validateConfig(array $expected, array $config = NULL, $name = NULL)
85-
{
86-
if (func_num_args() === 1) {
87-
$config = $this->config;
88-
}
89-
if ($extra = array_diff_key((array) $config, $expected)) {
90-
$name = $name ?: $this->name;
91-
$extra = implode(", $name.", array_keys($extra));
92-
throw new Nette\InvalidStateException("Unknown configuration option $name.$extra.");
93-
}
94-
return Config\Helpers::merge($config, $expected);
95-
}
96-
9761
}

src/Tracy/Panel.php

Lines changed: 5 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -8,43 +8,22 @@
88
use Skautis\Wsdl\WsdlManager;
99
use Tracy;
1010

11-
12-
if (!interface_exists('Tracy\IBarPanel') && interface_exists('Nette\Diagnostics\IBarPanel')) {
13-
// BC with Nette 2.1
14-
class_alias('Nette\Diagnostics\IBarPanel', 'Tracy\IBarPanel');
15-
}
16-
17-
1811
/**
1912
* Skautis panel for Tracy.
2013
*
2114
* @author Hána František
2215
*/
23-
class Panel extends Nette\Object implements Tracy\IBarPanel
16+
class Panel implements Tracy\IBarPanel
2417
{
18+
use Nette\SmartObject;
2519

2620
/** @var string */
27-
private $htmlPrefix;
28-
29-
/** @var string */
30-
private $debuggerClass;
21+
private $htmlPrefix = 'tracy';
3122

3223
/** @var array */
3324
private $queries = array();
3425

3526

36-
public function __construct()
37-
{
38-
if (!class_exists('Tracy\Debugger') && class_exists('Nette\Diagnostics\Debugger')) {
39-
$this->htmlPrefix = 'nette';
40-
$this->debuggerClass = 'Nette\Diagnostics\Debugger';
41-
} else {
42-
$this->htmlPrefix = 'tracy';
43-
$this->debuggerClass = 'Tracy\Debugger';
44-
}
45-
}
46-
47-
4827
/**
4928
* Registers event listener on WebService objects via WsdlManager
5029
*
@@ -54,7 +33,7 @@ public function register(WsdlManager $wsdlManager)
5433
{
5534
$wsdlManager->addWebServiceListener(WebService::EVENT_SUCCESS, array($this, 'logEvent'));
5635
$wsdlManager->addWebServiceListener(WebService::EVENT_FAILURE, array($this, 'logEvent'));
57-
call_user_func(array($this->debuggerClass, 'getBar'))->addPanel($this);
36+
Tracy\Debugger::getBar()->addPanel($this);
5837
}
5938

6039

@@ -136,7 +115,7 @@ protected function prepareTrace(array $trace)
136115
*/
137116
protected function dump($object)
138117
{
139-
return call_user_func(array($this->debuggerClass, 'dump'), $object, TRUE);
118+
return Tracy\Debugger::dump($object, TRUE);
140119
}
141120

142121

tests/SkautisNette/SkautisExtension.debug.phpt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
<?php
22

33
use Tester\Assert;
4+
use Skautis\Skautis;
5+
use Skautis\Nette\Tracy\Panel;
46

57

68
require __DIR__ . '/../bootstrap.php';
@@ -13,6 +15,6 @@ $configurator->addConfig(__DIR__ . '/files/config.neon');
1315
$container = $configurator->createContainer();
1416

1517
Assert::false($container->isCreated('skautis.panel'));
16-
Assert::type('Skautis\Skautis', $container->getService('skautis.skautis'));
18+
Assert::type(Skautis::class, $container->getService('skautis.skautis'));
1719
Assert::true($container->isCreated('skautis.panel'));
18-
Assert::type('Skautis\Nette\Tracy\Panel', $container->getService('skautis.panel'));
20+
Assert::type(Panel::class, $container->getService('skautis.panel'));

tests/SkautisNette/SkautisExtension.production.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<?php
22

33
use Tester\Assert;
4-
4+
use Skautis\Skautis;
55

66
require __DIR__ . '/../bootstrap.php';
77

@@ -12,5 +12,5 @@ $configurator->setDebugMode(FALSE);
1212
$configurator->addConfig(__DIR__ . '/files/config.neon');
1313
$container = $configurator->createContainer();
1414

15-
Assert::type('Skautis\Skautis', $container->getService('skautis.skautis'));
15+
Assert::type(Skautis::class, $container->getService('skautis.skautis'));
1616
Assert::false($container->hasService('skautis.panel'));

tests/composer-nette-2.1.json

Lines changed: 0 additions & 33 deletions
This file was deleted.

tests/composer-nette-2.2.json

Lines changed: 0 additions & 37 deletions
This file was deleted.

tests/composer-nette-2.3.json

Lines changed: 0 additions & 37 deletions
This file was deleted.

tests/composer-nette-2.4.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,9 @@
1616
"source": "https://github.com/skaut/SkautisNette"
1717
},
1818
"require": {
19-
"php": ">=5.3.0",
19+
"php": ">=5.6",
2020
"skautis/skautis": "~2.0@dev",
21+
"nette/utils": "2.4.*",
2122
"nette/di": "2.4.*",
2223
"nette/http": "2.4.*"
2324
},

0 commit comments

Comments
 (0)