Hello community,

here is the log from the commit of package icingaweb2-module-ipl for 
openSUSE:Factory checked in at 2020-01-16 18:22:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/icingaweb2-module-ipl (Old)
 and      /work/SRC/openSUSE:Factory/.icingaweb2-module-ipl.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "icingaweb2-module-ipl"

Thu Jan 16 18:22:46 2020 rev:2 rq:764932 version:0.4.0

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/icingaweb2-module-ipl/icingaweb2-module-ipl.changes  
    2019-10-12 22:38:41.774401401 +0200
+++ 
/work/SRC/openSUSE:Factory/.icingaweb2-module-ipl.new.26092/icingaweb2-module-ipl.changes
   2020-01-16 18:22:56.633032613 +0100
@@ -1,0 +2,6 @@
+Thu Jan 16 10:49:54 UTC 2020 - ec...@opensuse.org
+
+- Update to 0.4.0
+  - No changelog from upstream.
+
+-------------------------------------------------------------------

Old:
----
  icingaweb2-module-ipl-0.3.0.tar.gz

New:
----
  icingaweb2-module-ipl-0.4.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ icingaweb2-module-ipl.spec ++++++
--- /var/tmp/diff_new_pack.DmnaBE/_old  2020-01-16 18:22:57.577033147 +0100
+++ /var/tmp/diff_new_pack.DmnaBE/_new  2020-01-16 18:22:57.577033147 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package icingaweb2-module-ipl
 #
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -20,7 +20,7 @@
 %define basedir        %{_datadir}/icingaweb2
 %define module_name ipl
 Name:           icingaweb2-module-%{module_name}
-Version:        0.3.0
+Version:        0.4.0
 Release:        0
 Summary:        Business Processes Icinga Web 2 module
 License:        MIT

++++++ icingaweb2-module-ipl-0.3.0.tar.gz -> icingaweb2-module-ipl-0.4.0.tar.gz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/icingaweb2-module-ipl-0.3.0/composer.lock 
new/icingaweb2-module-ipl-0.4.0/composer.lock
--- old/icingaweb2-module-ipl-0.3.0/composer.lock       2019-05-16 
17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/composer.lock       2019-10-16 
15:36:56.000000000 +0200
@@ -56,33 +56,37 @@
         },
         {
             "name": "guzzlehttp/psr7",
-            "version": "1.5.2",
+            "version": "1.6.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/guzzle/psr7.git";,
-                "reference": "9f83dded91781a01c63574e387eaa769be769115"
+                "reference": "239400de7a173fe9901b9ac7c06497751f00727a"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/guzzle/psr7/zipball/9f83dded91781a01c63574e387eaa769be769115";,
-                "reference": "9f83dded91781a01c63574e387eaa769be769115",
+                "url": 
"https://api.github.com/repos/guzzle/psr7/zipball/239400de7a173fe9901b9ac7c06497751f00727a";,
+                "reference": "239400de7a173fe9901b9ac7c06497751f00727a",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.4.0",
                 "psr/http-message": "~1.0",
-                "ralouphie/getallheaders": "^2.0.5"
+                "ralouphie/getallheaders": "^2.0.5 || ^3.0.0"
             },
             "provide": {
                 "psr/http-message-implementation": "1.0"
             },
             "require-dev": {
+                "ext-zlib": "*",
                 "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.8"
             },
+            "suggest": {
+                "zendframework/zend-httphandlerrunner": "Emit PSR-7 responses"
+            },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.5-dev"
+                    "dev-master": "1.6-dev"
                 }
             },
             "autoload": {
@@ -119,20 +123,20 @@
                 "uri",
                 "url"
             ],
-            "time": "2018-12-04T20:46:45+00:00"
+            "time": "2019-07-01T23:21:34+00:00"
         },
         {
             "name": "ipl/html",
-            "version": "v0.2.1",
+            "version": "v0.2.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/Icinga/ipl-html.git";,
-                "reference": "df347af8ec2fe033f65f4dd9f2506c43a056f91f"
+                "reference": "28b066c62d2854c724ea7369af7feb0f1e975516"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/Icinga/ipl-html/zipball/df347af8ec2fe033f65f4dd9f2506c43a056f91f";,
-                "reference": "df347af8ec2fe033f65f4dd9f2506c43a056f91f",
+                "url": 
"https://api.github.com/repos/Icinga/ipl-html/zipball/28b066c62d2854c724ea7369af7feb0f1e975516";,
+                "reference": "28b066c62d2854c724ea7369af7feb0f1e975516",
                 "shasum": ""
             },
             "require": {
@@ -155,7 +159,7 @@
             "keywords": [
                 "html"
             ],
-            "time": "2019-05-16T14:56:04+00:00"
+            "time": "2019-10-15T21:24:59+00:00"
         },
         {
             "name": "ipl/sql",
@@ -163,12 +167,12 @@
             "source": {
                 "type": "git",
                 "url": "https://github.com/Icinga/ipl-sql";,
-                "reference": "bf69b5c8d16cf810016e1e6d9aca13922a71b23f"
+                "reference": "93de3e94aeb28a64ea8e76fdeb354c7869fc6e47"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/Icinga/ipl-sql/zipball/bf69b5c8d16cf810016e1e6d9aca13922a71b23f";,
-                "reference": "bf69b5c8d16cf810016e1e6d9aca13922a71b23f",
+                "url": 
"https://api.github.com/repos/Icinga/ipl-sql/zipball/93de3e94aeb28a64ea8e76fdeb354c7869fc6e47";,
+                "reference": "93de3e94aeb28a64ea8e76fdeb354c7869fc6e47",
                 "shasum": ""
             },
             "require": {
@@ -225,20 +229,20 @@
                 "database",
                 "sql"
             ],
-            "time": "2019-05-16T15:07:57+00:00"
+            "time": "2019-07-23T11:46:31+00:00"
         },
         {
             "name": "ipl/stdlib",
-            "version": "v0.2.0",
+            "version": "v0.3.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/Icinga/ipl-stdlib.git";,
-                "reference": "cb81ee6c666d0b79dc23d79af0c00025bc45628a"
+                "reference": "be098a61d37159e95378013a1ec280dfcaf5df56"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/Icinga/ipl-stdlib/zipball/cb81ee6c666d0b79dc23d79af0c00025bc45628a";,
-                "reference": "cb81ee6c666d0b79dc23d79af0c00025bc45628a",
+                "url": 
"https://api.github.com/repos/Icinga/ipl-stdlib/zipball/be098a61d37159e95378013a1ec280dfcaf5df56";,
+                "reference": "be098a61d37159e95378013a1ec280dfcaf5df56",
                 "shasum": ""
             },
             "require": {
@@ -248,7 +252,8 @@
             "type": "library",
             "autoload": {
                 "files": [
-                    "src/functions_include.php"
+                    "src/functions_include.php",
+                    "src/polyfill-php71.php"
                 ],
                 "psr-4": {
                     "ipl\\Stdlib\\": "src"
@@ -259,7 +264,7 @@
                 "MIT"
             ],
             "description": "ipl Standard Library",
-            "time": "2019-05-16T10:49:43+00:00"
+            "time": "2019-10-08T07:08:47+00:00"
         },
         {
             "name": "psr/http-message",
@@ -313,24 +318,24 @@
         },
         {
             "name": "ralouphie/getallheaders",
-            "version": "2.0.5",
+            "version": "3.0.3",
             "source": {
                 "type": "git",
                 "url": "https://github.com/ralouphie/getallheaders.git";,
-                "reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa"
+                "reference": "120b605dfeb996808c31b6477290a714d356e822"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/ralouphie/getallheaders/zipball/5601c8a83fbba7ef674a7369456d12f1e0d0eafa";,
-                "reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa",
+                "url": 
"https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822";,
+                "reference": "120b605dfeb996808c31b6477290a714d356e822",
                 "shasum": ""
             },
             "require": {
-                "php": ">=5.3"
+                "php": ">=5.6"
             },
             "require-dev": {
-                "phpunit/phpunit": "~3.7.0",
-                "satooshi/php-coveralls": ">=1.0"
+                "php-coveralls/php-coveralls": "^2.1",
+                "phpunit/phpunit": "^5 || ^6.5"
             },
             "type": "library",
             "autoload": {
@@ -349,7 +354,7 @@
                 }
             ],
             "description": "A polyfill for getallheaders.",
-            "time": "2016-02-11T07:05:27+00:00"
+            "time": "2019-03-08T08:55:37+00:00"
         }
     ],
     "packages-dev": [],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/icingaweb2-module-ipl-0.3.0/module.info 
new/icingaweb2-module-ipl-0.4.0/module.info
--- old/icingaweb2-module-ipl-0.3.0/module.info 2019-05-16 17:56:39.000000000 
+0200
+++ new/icingaweb2-module-ipl-0.4.0/module.info 2019-10-16 15:36:56.000000000 
+0200
@@ -1,5 +1,5 @@
 Name: IPL Bundle
-Version: v0.3.0
+Version: v0.4.0
 Description: The Icinga PHP library
  This repository ships libraries useful for Icinga Web 2 modules. Please 
download
  the latest release and install it like any other module.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/icingaweb2-module-ipl-0.3.0/vendor/autoload.php 
new/icingaweb2-module-ipl-0.4.0/vendor/autoload.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/autoload.php 2019-05-16 
17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/autoload.php 2019-10-16 
15:36:56.000000000 +0200
@@ -4,4 +4,4 @@
 
 require_once __DIR__ . '/composer/autoload_real.php';
 
-return ComposerAutoloaderInit80e9190c13d89c9b5df637eb3305b074::getLoader();
+return ComposerAutoloaderInit005c1be59d8ea5cfb76c3c251ae48325::getLoader();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/composer/autoload_files.php 
new/icingaweb2-module-ipl-0.4.0/vendor/composer/autoload_files.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/composer/autoload_files.php  
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/composer/autoload_files.php  
2019-10-16 15:36:56.000000000 +0200
@@ -7,6 +7,7 @@
 
 return array(
     'a2c78434f64e5f5ed402f42eee19c025' => $vendorDir . 
'/ipl/stdlib/src/functions_include.php',
+    '14a6a72370de4c08174524928551af59' => $vendorDir . 
'/ipl/stdlib/src/polyfill-php71.php',
     '7b11c4dc42b3b3023073cb14e519683c' => $vendorDir . 
'/ralouphie/getallheaders/src/getallheaders.php',
     'a0edc8309cc5e1d60e3047b5df6b7052' => $vendorDir . 
'/guzzlehttp/psr7/src/functions_include.php',
 );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/composer/autoload_real.php 
new/icingaweb2-module-ipl-0.4.0/vendor/composer/autoload_real.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/composer/autoload_real.php   
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/composer/autoload_real.php   
2019-10-16 15:36:56.000000000 +0200
@@ -2,7 +2,7 @@
 
 // autoload_real.php @generated by Composer
 
-class ComposerAutoloaderInit80e9190c13d89c9b5df637eb3305b074
+class ComposerAutoloaderInit005c1be59d8ea5cfb76c3c251ae48325
 {
     private static $loader;
 
@@ -19,15 +19,15 @@
             return self::$loader;
         }
 
-        
spl_autoload_register(array('ComposerAutoloaderInit80e9190c13d89c9b5df637eb3305b074',
 'loadClassLoader'), true, true);
+        
spl_autoload_register(array('ComposerAutoloaderInit005c1be59d8ea5cfb76c3c251ae48325',
 'loadClassLoader'), true, true);
         self::$loader = $loader = new \Composer\Autoload\ClassLoader();
-        
spl_autoload_unregister(array('ComposerAutoloaderInit80e9190c13d89c9b5df637eb3305b074',
 'loadClassLoader'));
+        
spl_autoload_unregister(array('ComposerAutoloaderInit005c1be59d8ea5cfb76c3c251ae48325',
 'loadClassLoader'));
 
         $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') 
&& (!function_exists('zend_loader_file_encoded') || 
!zend_loader_file_encoded());
         if ($useStaticLoader) {
             require_once __DIR__ . '/autoload_static.php';
 
-            
call_user_func(\Composer\Autoload\ComposerStaticInit80e9190c13d89c9b5df637eb3305b074::getInitializer($loader));
+            
call_user_func(\Composer\Autoload\ComposerStaticInit005c1be59d8ea5cfb76c3c251ae48325::getInitializer($loader));
         } else {
             $map = require __DIR__ . '/autoload_namespaces.php';
             foreach ($map as $namespace => $path) {
@@ -48,19 +48,19 @@
         $loader->register(true);
 
         if ($useStaticLoader) {
-            $includeFiles = 
Composer\Autoload\ComposerStaticInit80e9190c13d89c9b5df637eb3305b074::$files;
+            $includeFiles = 
Composer\Autoload\ComposerStaticInit005c1be59d8ea5cfb76c3c251ae48325::$files;
         } else {
             $includeFiles = require __DIR__ . '/autoload_files.php';
         }
         foreach ($includeFiles as $fileIdentifier => $file) {
-            composerRequire80e9190c13d89c9b5df637eb3305b074($fileIdentifier, 
$file);
+            composerRequire005c1be59d8ea5cfb76c3c251ae48325($fileIdentifier, 
$file);
         }
 
         return $loader;
     }
 }
 
-function composerRequire80e9190c13d89c9b5df637eb3305b074($fileIdentifier, 
$file)
+function composerRequire005c1be59d8ea5cfb76c3c251ae48325($fileIdentifier, 
$file)
 {
     if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
         require $file;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/composer/autoload_static.php 
new/icingaweb2-module-ipl-0.4.0/vendor/composer/autoload_static.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/composer/autoload_static.php 
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/composer/autoload_static.php 
2019-10-16 15:36:56.000000000 +0200
@@ -4,10 +4,11 @@
 
 namespace Composer\Autoload;
 
-class ComposerStaticInit80e9190c13d89c9b5df637eb3305b074
+class ComposerStaticInit005c1be59d8ea5cfb76c3c251ae48325
 {
     public static $files = array (
         'a2c78434f64e5f5ed402f42eee19c025' => __DIR__ . '/..' . 
'/ipl/stdlib/src/functions_include.php',
+        '14a6a72370de4c08174524928551af59' => __DIR__ . '/..' . 
'/ipl/stdlib/src/polyfill-php71.php',
         '7b11c4dc42b3b3023073cb14e519683c' => __DIR__ . '/..' . 
'/ralouphie/getallheaders/src/getallheaders.php',
         'a0edc8309cc5e1d60e3047b5df6b7052' => __DIR__ . '/..' . 
'/guzzlehttp/psr7/src/functions_include.php',
     );
@@ -65,9 +66,9 @@
     public static function getInitializer(ClassLoader $loader)
     {
         return \Closure::bind(function () use ($loader) {
-            $loader->prefixLengthsPsr4 = 
ComposerStaticInit80e9190c13d89c9b5df637eb3305b074::$prefixLengthsPsr4;
-            $loader->prefixDirsPsr4 = 
ComposerStaticInit80e9190c13d89c9b5df637eb3305b074::$prefixDirsPsr4;
-            $loader->prefixesPsr0 = 
ComposerStaticInit80e9190c13d89c9b5df637eb3305b074::$prefixesPsr0;
+            $loader->prefixLengthsPsr4 = 
ComposerStaticInit005c1be59d8ea5cfb76c3c251ae48325::$prefixLengthsPsr4;
+            $loader->prefixDirsPsr4 = 
ComposerStaticInit005c1be59d8ea5cfb76c3c251ae48325::$prefixDirsPsr4;
+            $loader->prefixesPsr0 = 
ComposerStaticInit005c1be59d8ea5cfb76c3c251ae48325::$prefixesPsr0;
 
         }, null, ClassLoader::class);
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/composer/installed.json 
new/icingaweb2-module-ipl-0.4.0/vendor/composer/installed.json
--- old/icingaweb2-module-ipl-0.3.0/vendor/composer/installed.json      
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/composer/installed.json      
2019-10-16 15:36:56.000000000 +0200
@@ -51,35 +51,39 @@
     },
     {
         "name": "guzzlehttp/psr7",
-        "version": "1.5.2",
-        "version_normalized": "1.5.2.0",
+        "version": "1.6.1",
+        "version_normalized": "1.6.1.0",
         "source": {
             "type": "git",
             "url": "https://github.com/guzzle/psr7.git";,
-            "reference": "9f83dded91781a01c63574e387eaa769be769115"
+            "reference": "239400de7a173fe9901b9ac7c06497751f00727a"
         },
         "dist": {
             "type": "zip",
-            "url": 
"https://api.github.com/repos/guzzle/psr7/zipball/9f83dded91781a01c63574e387eaa769be769115";,
-            "reference": "9f83dded91781a01c63574e387eaa769be769115",
+            "url": 
"https://api.github.com/repos/guzzle/psr7/zipball/239400de7a173fe9901b9ac7c06497751f00727a";,
+            "reference": "239400de7a173fe9901b9ac7c06497751f00727a",
             "shasum": ""
         },
         "require": {
             "php": ">=5.4.0",
             "psr/http-message": "~1.0",
-            "ralouphie/getallheaders": "^2.0.5"
+            "ralouphie/getallheaders": "^2.0.5 || ^3.0.0"
         },
         "provide": {
             "psr/http-message-implementation": "1.0"
         },
         "require-dev": {
+            "ext-zlib": "*",
             "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.8"
         },
-        "time": "2018-12-04T20:46:45+00:00",
+        "suggest": {
+            "zendframework/zend-httphandlerrunner": "Emit PSR-7 responses"
+        },
+        "time": "2019-07-01T23:21:34+00:00",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.5-dev"
+                "dev-master": "1.6-dev"
             }
         },
         "installation-source": "dist",
@@ -120,17 +124,17 @@
     },
     {
         "name": "ipl/html",
-        "version": "v0.2.1",
-        "version_normalized": "0.2.1.0",
+        "version": "v0.2.2",
+        "version_normalized": "0.2.2.0",
         "source": {
             "type": "git",
             "url": "https://github.com/Icinga/ipl-html.git";,
-            "reference": "df347af8ec2fe033f65f4dd9f2506c43a056f91f"
+            "reference": "28b066c62d2854c724ea7369af7feb0f1e975516"
         },
         "dist": {
             "type": "zip",
-            "url": 
"https://api.github.com/repos/Icinga/ipl-html/zipball/df347af8ec2fe033f65f4dd9f2506c43a056f91f";,
-            "reference": "df347af8ec2fe033f65f4dd9f2506c43a056f91f",
+            "url": 
"https://api.github.com/repos/Icinga/ipl-html/zipball/28b066c62d2854c724ea7369af7feb0f1e975516";,
+            "reference": "28b066c62d2854c724ea7369af7feb0f1e975516",
             "shasum": ""
         },
         "require": {
@@ -138,7 +142,7 @@
             "php": ">=5.4.0",
             "psr/http-message": "~1.0"
         },
-        "time": "2019-05-16T14:56:04+00:00",
+        "time": "2019-10-15T21:24:59+00:00",
         "type": "library",
         "installation-source": "dist",
         "autoload": {
@@ -163,12 +167,12 @@
         "source": {
             "type": "git",
             "url": "https://github.com/Icinga/ipl-sql";,
-            "reference": "bf69b5c8d16cf810016e1e6d9aca13922a71b23f"
+            "reference": "93de3e94aeb28a64ea8e76fdeb354c7869fc6e47"
         },
         "dist": {
             "type": "zip",
-            "url": 
"https://api.github.com/repos/Icinga/ipl-sql/zipball/bf69b5c8d16cf810016e1e6d9aca13922a71b23f";,
-            "reference": "bf69b5c8d16cf810016e1e6d9aca13922a71b23f",
+            "url": 
"https://api.github.com/repos/Icinga/ipl-sql/zipball/93de3e94aeb28a64ea8e76fdeb354c7869fc6e47";,
+            "reference": "93de3e94aeb28a64ea8e76fdeb354c7869fc6e47",
             "shasum": ""
         },
         "require": {
@@ -180,7 +184,7 @@
             "phpunit/phpunit": "^5.7 || ^4.8",
             "squizlabs/php_codesniffer": "^2.9.1"
         },
-        "time": "2019-05-16T15:07:57+00:00",
+        "time": "2019-07-23T11:46:31+00:00",
         "type": "library",
         "installation-source": "source",
         "autoload": {
@@ -230,29 +234,30 @@
     },
     {
         "name": "ipl/stdlib",
-        "version": "v0.2.0",
-        "version_normalized": "0.2.0.0",
+        "version": "v0.3.0",
+        "version_normalized": "0.3.0.0",
         "source": {
             "type": "git",
             "url": "https://github.com/Icinga/ipl-stdlib.git";,
-            "reference": "cb81ee6c666d0b79dc23d79af0c00025bc45628a"
+            "reference": "be098a61d37159e95378013a1ec280dfcaf5df56"
         },
         "dist": {
             "type": "zip",
-            "url": 
"https://api.github.com/repos/Icinga/ipl-stdlib/zipball/cb81ee6c666d0b79dc23d79af0c00025bc45628a";,
-            "reference": "cb81ee6c666d0b79dc23d79af0c00025bc45628a",
+            "url": 
"https://api.github.com/repos/Icinga/ipl-stdlib/zipball/be098a61d37159e95378013a1ec280dfcaf5df56";,
+            "reference": "be098a61d37159e95378013a1ec280dfcaf5df56",
             "shasum": ""
         },
         "require": {
             "evenement/evenement": "^2",
             "php": ">=5.4.0"
         },
-        "time": "2019-05-16T10:49:43+00:00",
+        "time": "2019-10-08T07:08:47+00:00",
         "type": "library",
         "installation-source": "dist",
         "autoload": {
             "files": [
-                "src/functions_include.php"
+                "src/functions_include.php",
+                "src/polyfill-php71.php"
             ],
             "psr-4": {
                 "ipl\\Stdlib\\": "src"
@@ -318,27 +323,27 @@
     },
     {
         "name": "ralouphie/getallheaders",
-        "version": "2.0.5",
-        "version_normalized": "2.0.5.0",
+        "version": "3.0.3",
+        "version_normalized": "3.0.3.0",
         "source": {
             "type": "git",
             "url": "https://github.com/ralouphie/getallheaders.git";,
-            "reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa"
+            "reference": "120b605dfeb996808c31b6477290a714d356e822"
         },
         "dist": {
             "type": "zip",
-            "url": 
"https://api.github.com/repos/ralouphie/getallheaders/zipball/5601c8a83fbba7ef674a7369456d12f1e0d0eafa";,
-            "reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa",
+            "url": 
"https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822";,
+            "reference": "120b605dfeb996808c31b6477290a714d356e822",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3"
+            "php": ">=5.6"
         },
         "require-dev": {
-            "phpunit/phpunit": "~3.7.0",
-            "satooshi/php-coveralls": ">=1.0"
+            "php-coveralls/php-coveralls": "^2.1",
+            "phpunit/phpunit": "^5 || ^6.5"
         },
-        "time": "2016-02-11T07:05:27+00:00",
+        "time": "2019-03-08T08:55:37+00:00",
         "type": "library",
         "installation-source": "dist",
         "autoload": {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/composer.json 
new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/composer.json
--- old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/composer.json        
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/composer.json        
2019-10-16 15:36:56.000000000 +0200
@@ -18,14 +18,18 @@
     "require": {
         "php": ">=5.4.0",
         "psr/http-message": "~1.0",
-        "ralouphie/getallheaders": "^2.0.5"
+        "ralouphie/getallheaders": "^2.0.5 || ^3.0.0"
     },
     "require-dev": {
-        "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.8"
+        "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.8",
+        "ext-zlib": "*"
     },
     "provide": {
         "psr/http-message-implementation": "1.0"
     },
+    "suggest": {
+        "zendframework/zend-httphandlerrunner": "Emit PSR-7 responses"
+    },
     "autoload": {
         "psr-4": {
             "GuzzleHttp\\Psr7\\": "src/"
@@ -39,7 +43,7 @@
     },
     "extra": {
         "branch-alias": {
-            "dev-master": "1.5-dev"
+            "dev-master": "1.6-dev"
         }
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/LimitStream.php 
new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/LimitStream.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/LimitStream.php  
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/LimitStream.php  
2019-10-16 15:36:56.000000000 +0200
@@ -72,7 +72,7 @@
     {
         if ($whence !== SEEK_SET || $offset < 0) {
             throw new \RuntimeException(sprintf(
-                'Cannot seek to offset % with whence %s',
+                'Cannot seek to offset %s with whence %s',
                 $offset,
                 $whence
             ));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/MessageTrait.php 
new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/MessageTrait.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/MessageTrait.php 
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/MessageTrait.php 
2019-10-16 15:36:56.000000000 +0200
@@ -66,11 +66,8 @@
 
     public function withHeader($header, $value)
     {
-        if (!is_array($value)) {
-            $value = [$value];
-        }
-
-        $value = $this->trimHeaderValues($value);
+        $this->assertHeader($header);
+        $value = $this->normalizeHeaderValue($value);
         $normalized = strtolower($header);
 
         $new = clone $this;
@@ -85,11 +82,8 @@
 
     public function withAddedHeader($header, $value)
     {
-        if (!is_array($value)) {
-            $value = [$value];
-        }
-
-        $value = $this->trimHeaderValues($value);
+        $this->assertHeader($header);
+        $value = $this->normalizeHeaderValue($value);
         $normalized = strtolower($header);
 
         $new = clone $this;
@@ -144,11 +138,13 @@
     {
         $this->headerNames = $this->headers = [];
         foreach ($headers as $header => $value) {
-            if (!is_array($value)) {
-                $value = [$value];
+            if (is_int($header)) {
+                // Numeric array keys are converted to int by PHP but having a 
header name '123' is not forbidden by the spec
+                // and also allowed in withHeader(). So we need to cast it to 
string again for the following assertion to pass.
+                $header = (string) $header;
             }
-
-            $value = $this->trimHeaderValues($value);
+            $this->assertHeader($header);
+            $value = $this->normalizeHeaderValue($value);
             $normalized = strtolower($header);
             if (isset($this->headerNames[$normalized])) {
                 $header = $this->headerNames[$normalized];
@@ -160,6 +156,19 @@
         }
     }
 
+    private function normalizeHeaderValue($value)
+    {
+        if (!is_array($value)) {
+            return $this->trimHeaderValues([$value]);
+        }
+
+        if (count($value) === 0) {
+            throw new \InvalidArgumentException('Header value can not be an 
empty array.');
+        }
+
+        return $this->trimHeaderValues($value);
+    }
+
     /**
      * Trims whitespace from the header values.
      *
@@ -177,7 +186,28 @@
     private function trimHeaderValues(array $values)
     {
         return array_map(function ($value) {
-            return trim($value, " \t");
+            if (!is_scalar($value) && null !== $value) {
+                throw new \InvalidArgumentException(sprintf(
+                    'Header value must be scalar or null but %s provided.',
+                    is_object($value) ? get_class($value) : gettype($value)
+                ));
+            }
+
+            return trim((string) $value, " \t");
         }, $values);
     }
+
+    private function assertHeader($header)
+    {
+        if (!is_string($header)) {
+            throw new \InvalidArgumentException(sprintf(
+                'Header name must be a string but %s provided.',
+                is_object($header) ? get_class($header) : gettype($header)
+            ));
+        }
+
+        if ($header === '') {
+            throw new \InvalidArgumentException('Header name can not be 
empty.');
+        }
+    }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/Request.php 
new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/Request.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/Request.php      
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/Request.php      
2019-10-16 15:36:56.000000000 +0200
@@ -36,6 +36,7 @@
         $body = null,
         $version = '1.1'
     ) {
+        $this->assertMethod($method);
         if (!($uri instanceof UriInterface)) {
             $uri = new Uri($uri);
         }
@@ -91,6 +92,7 @@
 
     public function withMethod($method)
     {
+        $this->assertMethod($method);
         $new = clone $this;
         $new->method = strtoupper($method);
         return $new;
@@ -139,4 +141,11 @@
         // See: http://tools.ietf.org/html/rfc7230#section-5.4
         $this->headers = [$header => [$host]] + $this->headers;
     }
+
+    private function assertMethod($method)
+    {
+        if (!is_string($method) || $method === '') {
+            throw new \InvalidArgumentException('Method must be a non-empty 
string.');
+        }
+    }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/Response.php 
new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/Response.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/Response.php     
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/Response.php     
2019-10-16 15:36:56.000000000 +0200
@@ -93,11 +93,11 @@
         $version = '1.1',
         $reason = null
     ) {
-        if (filter_var($status, FILTER_VALIDATE_INT) === false) {
-            throw new \InvalidArgumentException('Status code must be an 
integer value.');
-        }
+        $this->assertStatusCodeIsInteger($status);
+        $status = (int) $status;
+        $this->assertStatusCodeRange($status);
 
-        $this->statusCode = (int) $status;
+        $this->statusCode = $status;
 
         if ($body !== '' && $body !== null) {
             $this->stream = stream_for($body);
@@ -125,12 +125,30 @@
 
     public function withStatus($code, $reasonPhrase = '')
     {
+        $this->assertStatusCodeIsInteger($code);
+        $code = (int) $code;
+        $this->assertStatusCodeRange($code);
+
         $new = clone $this;
-        $new->statusCode = (int) $code;
+        $new->statusCode = $code;
         if ($reasonPhrase == '' && isset(self::$phrases[$new->statusCode])) {
             $reasonPhrase = self::$phrases[$new->statusCode];
         }
         $new->reasonPhrase = $reasonPhrase;
         return $new;
     }
+
+    private function assertStatusCodeIsInteger($statusCode)
+    {
+        if (filter_var($statusCode, FILTER_VALIDATE_INT) === false) {
+            throw new \InvalidArgumentException('Status code must be an 
integer value.');
+        }
+    }
+
+    private function assertStatusCodeRange($statusCode)
+    {
+        if ($statusCode < 100 || $statusCode >= 600) {
+            throw new \InvalidArgumentException('Status code must be an 
integer value between 1xx and 5xx.');
+        }
+    }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/ServerRequest.php 
new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/ServerRequest.php
--- 
old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/ServerRequest.php    
    2019-05-16 17:56:39.000000000 +0200
+++ 
new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/ServerRequest.php    
    2019-10-16 15:36:56.000000000 +0200
@@ -168,7 +168,7 @@
         $method = isset($_SERVER['REQUEST_METHOD']) ? 
$_SERVER['REQUEST_METHOD'] : 'GET';
         $headers = getallheaders();
         $uri = self::getUriFromGlobals();
-        $body = new LazyOpenStream('php://input', 'r+');
+        $body = new CachingStream(new LazyOpenStream('php://input', 'r+'));
         $protocol = isset($_SERVER['SERVER_PROTOCOL']) ? str_replace('HTTP/', 
'', $_SERVER['SERVER_PROTOCOL']) : '1.1';
 
         $serverRequest = new ServerRequest($method, $uri, $headers, $body, 
$protocol, $_SERVER);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/Stream.php 
new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/Stream.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/Stream.php       
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/Stream.php       
2019-10-16 15:36:56.000000000 +0200
@@ -10,6 +10,17 @@
  */
 class Stream implements StreamInterface
 {
+    /**
+     * Resource modes.
+     *
+     * @var string
+     *
+     * @see http://php.net/manual/function.fopen.php
+     * @see http://php.net/manual/en/function.gzopen.php
+     */
+    const READABLE_MODES = '/r|a\+|ab\+|w\+|wb\+|x\+|xb\+|c\+|cb\+/';
+    const WRITABLE_MODES = '/a|w|r\+|rb\+|rw|x|c/';
+
     private $stream;
     private $size;
     private $seekable;
@@ -18,22 +29,6 @@
     private $uri;
     private $customMetadata;
 
-    /** @var array Hash of readable and writable stream types */
-    private static $readWriteHash = [
-        'read' => [
-            'r' => true, 'w+' => true, 'r+' => true, 'x+' => true, 'c+' => 
true,
-            'rb' => true, 'w+b' => true, 'r+b' => true, 'x+b' => true,
-            'c+b' => true, 'rt' => true, 'w+t' => true, 'r+t' => true,
-            'x+t' => true, 'c+t' => true, 'a+' => true, 'rb+' => true,
-        ],
-        'write' => [
-            'w' => true, 'w+' => true, 'rw' => true, 'r+' => true, 'x+' => 
true,
-            'c+' => true, 'wb' => true, 'w+b' => true, 'r+b' => true, 'rb+' => 
true,
-            'x+b' => true, 'c+b' => true, 'w+t' => true, 'r+t' => true,
-            'x+t' => true, 'c+t' => true, 'a' => true, 'a+' => true
-        ]
-    ];
-
     /**
      * This constructor accepts an associative array of options.
      *
@@ -65,8 +60,8 @@
         $this->stream = $stream;
         $meta = stream_get_meta_data($this->stream);
         $this->seekable = $meta['seekable'];
-        $this->readable = isset(self::$readWriteHash['read'][$meta['mode']]);
-        $this->writable = isset(self::$readWriteHash['write'][$meta['mode']]);
+        $this->readable = (bool)preg_match(self::READABLE_MODES, 
$meta['mode']);
+        $this->writable = (bool)preg_match(self::WRITABLE_MODES, 
$meta['mode']);
         $this->uri = $this->getMetadata('uri');
     }
 
@@ -197,6 +192,8 @@
 
     public function seek($offset, $whence = SEEK_SET)
     {
+        $whence = (int) $whence;
+        
         if (!isset($this->stream)) {
             throw new \RuntimeException('Stream is detached');
         }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/Uri.php 
new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/Uri.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/Uri.php  
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/Uri.php  
2019-10-16 15:36:56.000000000 +0200
@@ -437,9 +437,9 @@
 
     public function withUserInfo($user, $password = null)
     {
-        $info = $user;
-        if ($password != '') {
-            $info .= ':' . $password;
+        $info = $this->filterUserInfoComponent($user);
+        if ($password !== null) {
+            $info .= ':' . $this->filterUserInfoComponent($password);
         }
 
         if ($this->userInfo === $info) {
@@ -537,7 +537,9 @@
         $this->scheme = isset($parts['scheme'])
             ? $this->filterScheme($parts['scheme'])
             : '';
-        $this->userInfo = isset($parts['user']) ? $parts['user'] : '';
+        $this->userInfo = isset($parts['user'])
+            ? $this->filterUserInfoComponent($parts['user'])
+            : '';
         $this->host = isset($parts['host'])
             ? $this->filterHost($parts['host'])
             : '';
@@ -554,7 +556,7 @@
             ? $this->filterQueryAndFragment($parts['fragment'])
             : '';
         if (isset($parts['pass'])) {
-            $this->userInfo .= ':' . $parts['pass'];
+            $this->userInfo .= ':' . 
$this->filterUserInfoComponent($parts['pass']);
         }
 
         $this->removeDefaultPort();
@@ -577,6 +579,26 @@
     }
 
     /**
+     * @param string $component
+     *
+     * @return string
+     *
+     * @throws \InvalidArgumentException If the user info is invalid.
+     */
+    private function filterUserInfoComponent($component)
+    {
+        if (!is_string($component)) {
+            throw new \InvalidArgumentException('User info must be a string');
+        }
+
+        return preg_replace_callback(
+            '/(?:[^%' . self::$charUnreserved . self::$charSubDelims . 
']+|%(?![A-Fa-f0-9]{2}))/',
+            [$this, 'rawurlencodeMatchZero'],
+            $component
+        );
+    }
+
+    /**
      * @param string $host
      *
      * @return string
@@ -606,9 +628,9 @@
         }
 
         $port = (int) $port;
-        if (1 > $port || 0xffff < $port) {
+        if (0 > $port || 0xffff < $port) {
             throw new \InvalidArgumentException(
-                sprintf('Invalid port: %d. Must be between 1 and 65535', $port)
+                sprintf('Invalid port: %d. Must be between 0 and 65535', $port)
             );
         }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/functions.php 
new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/functions.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/guzzlehttp/psr7/src/functions.php    
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/guzzlehttp/psr7/src/functions.php    
2019-10-16 15:36:56.000000000 +0200
@@ -724,6 +724,7 @@
         'txt' => 'text/plain',
         'wav' => 'audio/x-wav',
         'webm' => 'video/webm',
+        'webp' => 'image/webp',
         'wma' => 'audio/x-ms-wma',
         'wmv' => 'video/x-ms-wmv',
         'woff' => 'application/x-font-woff',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/ipl/html/composer.json 
new/icingaweb2-module-ipl-0.4.0/vendor/ipl/html/composer.json
--- old/icingaweb2-module-ipl-0.3.0/vendor/ipl/html/composer.json       
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/ipl/html/composer.json       
2019-10-16 15:36:56.000000000 +0200
@@ -20,7 +20,7 @@
   },
   "autoload-dev": {
     "psr-4": {
-      "ipl\\Tests\\Html\\": "tests/php"
+      "ipl\\Tests\\Html\\": "tests"
     }
   }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/ipl/html/src/Form.php 
new/icingaweb2-module-ipl-0.4.0/vendor/ipl/html/src/Form.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/ipl/html/src/Form.php        
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/ipl/html/src/Form.php        
2019-10-16 15:36:56.000000000 +0200
@@ -89,7 +89,6 @@
 
     public function onSuccess()
     {
-        $this->add(Html::tag('p', ['class' => 'information'], 'SUCCESS'));
         // $this->redirectOnSuccess();
     }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/ipl/html/src/FormDecorator/DecoratorInterface.php
 
new/icingaweb2-module-ipl-0.4.0/vendor/ipl/html/src/FormDecorator/DecoratorInterface.php
--- 
old/icingaweb2-module-ipl-0.3.0/vendor/ipl/html/src/FormDecorator/DecoratorInterface.php
    2019-05-16 17:56:39.000000000 +0200
+++ 
new/icingaweb2-module-ipl-0.4.0/vendor/ipl/html/src/FormDecorator/DecoratorInterface.php
    2019-10-16 15:36:56.000000000 +0200
@@ -8,8 +8,11 @@
 interface DecoratorInterface
 {
     /**
-     * @param BaseFormElement $element
+     * Set the form element to decorate
+     *
+     * @param BaseFormElement $formElement
+     *
      * @return static
      */
-    public function decorate(BaseFormElement $element);
+    public function decorate(BaseFormElement $formElement);
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/ipl/html/src/FormDecorator/DivDecorator.php
 
new/icingaweb2-module-ipl-0.4.0/vendor/ipl/html/src/FormDecorator/DivDecorator.php
--- 
old/icingaweb2-module-ipl-0.3.0/vendor/ipl/html/src/FormDecorator/DivDecorator.php
  1970-01-01 01:00:00.000000000 +0100
+++ 
new/icingaweb2-module-ipl-0.4.0/vendor/ipl/html/src/FormDecorator/DivDecorator.php
  2019-10-16 15:36:56.000000000 +0200
@@ -0,0 +1,118 @@
+<?php
+
+namespace ipl\Html\FormDecorator;
+
+use ipl\Html\Attributes;
+use ipl\Html\BaseHtmlElement;
+use ipl\Html\FormElement\BaseFormElement;
+use ipl\Html\FormElement\SubmitElement;
+use ipl\Html\Html;
+
+/**
+ * Form element decorator based on div elements
+ */
+class DivDecorator extends BaseHtmlElement implements DecoratorInterface
+{
+    /** @var BaseFormElement The decorated form element */
+    protected $formElement;
+
+    /** @var bool Whether the form element has been added already */
+    protected $formElementAdded = false;
+
+    protected $tag = 'div';
+
+    public function decorate(BaseFormElement $formElement)
+    {
+        $decorator = clone $this;
+
+        $decorator->formElement = $formElement;
+
+        // TODO(el): Replace with SubmitElementInterface once introduced
+        if ($formElement instanceof SubmitElement) {
+            $class = 'form-control';
+        } else {
+            $class = 'form-element';
+        }
+
+        $decorator->getAttributes()->add('class', $class);
+
+        $formElement->prependWrapper($decorator);
+
+        return $decorator;
+    }
+
+    protected function assembleDescription()
+    {
+        $description = $this->formElement->getDescription();
+
+        if ($description !== null) {
+            return Html::tag('p', ['class' => 'form-element-description'], 
$description);
+        }
+
+        return null;
+    }
+
+    protected function assembleErrors()
+    {
+        $errors = [];
+
+        foreach ($this->formElement->getMessages() as $message) {
+            $errors[] = Html::tag('p', ['class' => 'form-element-error'], 
$message);
+        }
+
+        if (! empty($errors)) {
+            return $errors;
+        }
+
+        return null;
+    }
+
+    protected function assembleLabel()
+    {
+        $label = $this->formElement->getLabel();
+
+        if ($label !== null) {
+            $attributes = null;
+
+            if ($this->formElement->getAttributes()->has('id')) {
+                $attributes = new Attributes(['for' => 
$this->formElement->getAttributes()->get('id')]);
+            }
+
+            return Html::tag('label', $attributes, $label);
+        }
+
+        return null;
+    }
+
+    public function add($content)
+    {
+        if ($content === $this->formElement) {
+            // Our wrapper implementation automatically adds the wrapped 
element but we already did this in assemble
+            if ($this->formElementAdded) {
+                return $this;
+            }
+
+            $this->formElementAdded = true;
+        }
+
+        parent::add($content);
+
+        return $this;
+    }
+
+    protected function assemble()
+    {
+        if ($this->formElement->hasBeenValidatedAndIsNotValid()) {
+            $this->getAttributes()->add('class', 'has-error');
+        }
+
+        $this->formElement->getAttributes()->add('class');
+
+        $this->add(array_filter([
+            $this->assembleLabel(),
+            $this->formElement,
+            $this->assembleDescription(),
+            $this->assembleErrors()
+        ]));
+    }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/ipl/sql/src/Adapter/Pgsql.php 
new/icingaweb2-module-ipl-0.4.0/vendor/ipl/sql/src/Adapter/Pgsql.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/ipl/sql/src/Adapter/Pgsql.php        
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/ipl/sql/src/Adapter/Pgsql.php        
2019-10-16 15:36:56.000000000 +0200
@@ -8,7 +8,7 @@
 {
     public function setClientTimezone(Connection $db)
     {
-        $db->prepexec('SET TIME ZONE INTERVAL ? HOUR TO MINUTE', 
[$this->getTimezoneOffset()]);
+        $db->exec(sprintf('SET TIME ZONE INTERVAL %s HOUR TO MINUTE', 
$db->quote($this->getTimezoneOffset())));
 
         return $this;
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/ipl/sql/src/Connection.php 
new/icingaweb2-module-ipl-0.4.0/vendor/ipl/sql/src/Connection.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/ipl/sql/src/Connection.php   
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/ipl/sql/src/Connection.php   
2019-10-16 15:36:56.000000000 +0200
@@ -7,7 +7,6 @@
 use InvalidArgumentException;
 use PDO;
 use ipl\Sql\Adapter\AdapterInterface;
-use ipl\Sql\Adapter\Ansi;
 use ipl\Sql\Contracts\QuoterInterface;
 use ipl\Stdlib\Loader\PluginLoader;
 
@@ -161,7 +160,7 @@
         $this->pdo = $this->createPdoAdapter();
 
         if ($this->config->charset !== null) {
-            $this->exec(sprintf('SET NAMES %s', 
$this->quoteIdentifier($this->config->charset)));
+            $this->exec(sprintf('SET NAMES %s', 
$this->pdo->quote($this->config->charset)));
         }
 
         $this->adapter->setClientTimezone($this);
@@ -426,7 +425,7 @@
 
     /**
      * Roll back a transaction
-     *l
+     *
      * @return  bool    Whether the transaction was rolled back successfully
      */
     public function rollBackTransaction()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/ipl/stdlib/composer.json 
new/icingaweb2-module-ipl-0.4.0/vendor/ipl/stdlib/composer.json
--- old/icingaweb2-module-ipl-0.3.0/vendor/ipl/stdlib/composer.json     
2019-05-16 17:56:39.000000000 +0200
+++ new/icingaweb2-module-ipl-0.4.0/vendor/ipl/stdlib/composer.json     
2019-10-16 15:36:56.000000000 +0200
@@ -4,7 +4,7 @@
     "type": "library",
     "license": "MIT",
     "autoload": {
-        "files": ["src/functions_include.php"],
+        "files": ["src/functions_include.php", "src/polyfill-php71.php"],
         "psr-4": {
             "ipl\\Stdlib\\": "src"
         }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/ipl/stdlib/src/Contract/PaginationInterface.php
 
new/icingaweb2-module-ipl-0.4.0/vendor/ipl/stdlib/src/Contract/PaginationInterface.php
--- 
old/icingaweb2-module-ipl-0.3.0/vendor/ipl/stdlib/src/Contract/PaginationInterface.php
      1970-01-01 01:00:00.000000000 +0100
+++ 
new/icingaweb2-module-ipl-0.4.0/vendor/ipl/stdlib/src/Contract/PaginationInterface.php
      2019-10-16 15:36:56.000000000 +0200
@@ -0,0 +1,54 @@
+<?php
+
+namespace ipl\Stdlib\Contract;
+
+interface PaginationInterface extends \Countable
+{
+    /**
+     * Get whether a limit is set
+     *
+     * @return bool
+     */
+    public function hasLimit();
+
+    /**
+     * Get the limit
+     *
+     * @return int|null
+     */
+    public function getLimit();
+
+    /**
+     * Set the limit
+     *
+     * @param int|null $limit Maximum number of items to return. If you want 
to disable the limit,
+     *                        it is best practice to use null or a negative 
value
+     *
+     * @return $this
+     */
+    public function limit($limit);
+
+    /**
+     * Get whether an offset is set
+     *
+     * @return bool
+     */
+    public function hasOffset();
+
+    /**
+     * Get the offset
+     *
+     * @return int|null
+     */
+    public function getOffset();
+
+    /**
+     * Set the offset
+     *
+     * @param int|null $offset Start result set after this many rows. If you 
want to disable the offset,
+     *                         it is best practice to use null or a negative 
value
+     *
+     * @return $this
+     */
+    public function offset($offset);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/ipl/stdlib/src/Str.php 
new/icingaweb2-module-ipl-0.4.0/vendor/ipl/stdlib/src/Str.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/ipl/stdlib/src/Str.php       
1970-01-01 01:00:00.000000000 +0100
+++ new/icingaweb2-module-ipl-0.4.0/vendor/ipl/stdlib/src/Str.php       
2019-10-16 15:36:56.000000000 +0200
@@ -0,0 +1,25 @@
+<?php
+
+namespace ipl\Stdlib;
+
+/**
+ * Collection of string manipulation functions
+ */
+class Str
+{
+    /**
+     * Convert the given string to camel case
+     *
+     * The given string may be delimited by the following characters: '_' 
(underscore), '-' (dash), ' ' (space).
+     *
+     * @param string $subject
+     *
+     * @return string
+     */
+    public static function camel($subject)
+    {
+        $normalized = str_replace(['-', '_'], ' ', $subject);
+
+        return lcfirst(str_replace(' ', '', ucwords(strtolower($normalized))));
+    }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/ipl/stdlib/src/polyfill-php71.php 
new/icingaweb2-module-ipl-0.4.0/vendor/ipl/stdlib/src/polyfill-php71.php
--- old/icingaweb2-module-ipl-0.3.0/vendor/ipl/stdlib/src/polyfill-php71.php    
1970-01-01 01:00:00.000000000 +0100
+++ new/icingaweb2-module-ipl-0.4.0/vendor/ipl/stdlib/src/polyfill-php71.php    
2019-10-16 15:36:56.000000000 +0200
@@ -0,0 +1,15 @@
+<?php
+
+if (PHP_VERSION_ID < 70100 && ! function_exists('\is_iterable')) {
+    /**
+     * Verify that the contents of a variable is an iterable value
+     *
+     * @param mixed $var The value to check
+     *
+     * @return bool Returns true if var is iterable, false otherwise
+     */
+    function is_iterable($var)
+    {
+        return is_array($var) || $var instanceof \Traversable;
+    }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/icingaweb2-module-ipl-0.3.0/vendor/ralouphie/getallheaders/composer.json 
new/icingaweb2-module-ipl-0.4.0/vendor/ralouphie/getallheaders/composer.json
--- 
old/icingaweb2-module-ipl-0.3.0/vendor/ralouphie/getallheaders/composer.json    
    2019-05-16 17:56:39.000000000 +0200
+++ 
new/icingaweb2-module-ipl-0.4.0/vendor/ralouphie/getallheaders/composer.json    
    2019-10-16 15:36:56.000000000 +0200
@@ -9,13 +9,18 @@
                }
        ],
        "require": {
-               "php": ">=5.3"
+               "php": ">=5.6"
        },
        "require-dev": {
-               "phpunit/phpunit": "~3.7.0",
-               "satooshi/php-coveralls": ">=1.0"
+               "phpunit/phpunit": "^5 || ^6.5",
+               "php-coveralls/php-coveralls": "^2.1"
        },
        "autoload": {
                "files": ["src/getallheaders.php"]
+       },
+       "autoload-dev": {
+               "psr-4": {
+                       "getallheaders\\Tests\\": "tests/"
+               }
        }
-}
\ No newline at end of file
+}


Reply via email to