[pkg-nagios-changes] [Git][nagios-team/icinga-php-library][master] 4 commits: New upstream version 0.8.1

Bas Couwenberg (@sebastic) gitlab at salsa.debian.org
Tue Apr 26 18:16:00 BST 2022



Bas Couwenberg pushed to branch master at Debian Nagios Maintainer Group / icinga-php-library


Commits:
9012e733 by Bas Couwenberg at 2022-04-26T19:10:05+02:00
New upstream version 0.8.1
- - - - -
0ca8a31f by Bas Couwenberg at 2022-04-26T19:10:13+02:00
Update upstream source from tag 'upstream/0.8.1'

Update to upstream version '0.8.1'
with Debian dir 97bf674544d851b8c759377e0d3ebc71e04d3378
- - - - -
bb89cf52 by Bas Couwenberg at 2022-04-26T19:10:28+02:00
New upstream release.

- - - - -
c9af87ac by Bas Couwenberg at 2022-04-26T19:12:29+02:00
Set distribution to unstable.

- - - - -


15 changed files:

- .github/workflows/create-snapshot.yml
- VERSION
- bin/make-snapshot.sh
- composer.lock
- debian/changelog
- vendor/autoload.php
- vendor/composer/ClassLoader.php
- + vendor/composer/InstalledVersions.php
- vendor/composer/autoload_classmap.php
- vendor/composer/autoload_real.php
- vendor/composer/autoload_static.php
- vendor/composer/installed.json
- + vendor/composer/installed.php
- + vendor/composer/platform_check.php
- vendor/ipl/sql/src/Connection.php


Changes:

=====================================
.github/workflows/create-snapshot.yml
=====================================
@@ -28,7 +28,7 @@ jobs:
       - name: Setup PHP
         uses: shivammathur/setup-php at v2
         with:
-          php-version: '7.0'
+          php-version: '7.2'
 
       - name: Create snapshot/nightly
         if: success()


=====================================
VERSION
=====================================
@@ -1 +1 @@
-v0.8.0
+v0.8.1


=====================================
bin/make-snapshot.sh
=====================================
@@ -12,6 +12,7 @@ fi
 
 LATEST_TAG=$(git for-each-ref refs/tags --sort=-taggerdate --format='%(refname)' --count=1 | awk -F/ '{print $3}')
 NEXT_VERSION=$(echo "${LATEST_TAG:1}" | awk -F. -v OFS=. '{$3=0}; {++$2}; {print}')
+PHP_VERSION=$(echo "<?= join('.', [PHP_MAJOR_VERSION, PHP_MINOR_VERSION, PHP_RELEASE_VERSION]); ?>" | php 2>/dev/null)
 
 if [[ -n $(git branch | grep $BRANCH) ]]; then
   git branch -D $BRANCH
@@ -20,14 +21,16 @@ fi
 git checkout -b $BRANCH
 git merge --no-ff -m "Merge latest tag, to make it reachable for git-describe" $LATEST_TAG
 
+composer config platform.php $PHP_VERSION
 composer require --no-update \
-  ipl/html:@dev \
-  ipl/i18n:@dev \
-  ipl/orm:@dev \
-  ipl/sql:@dev \
-  ipl/stdlib:@dev \
-  ipl/validator:@dev \
-  ipl/web:@dev
+  php:$PHP_VERSION \
+  ipl/html:"dev-master as 99.x-dev" \
+  ipl/i18n:"dev-master as 99.x-dev" \
+  ipl/orm:"dev-master as 99.x-dev" \
+  ipl/sql:"dev-master as 99.x-dev" \
+  ipl/stdlib:"dev-master as 99.x-dev" \
+  ipl/validator:"dev-master as 99.x-dev" \
+  ipl/web:"dev-master as 99.x-dev"
 
 git commit -a -m "Require dev-master everywhere"
 bin/make-release.sh "$NEXT_VERSION-dev" --no-checkout


=====================================
composer.lock
=====================================
@@ -52,6 +52,10 @@
                 "event-dispatcher",
                 "event-emitter"
             ],
+            "support": {
+                "issues": "https://github.com/igorw/evenement/issues",
+                "source": "https://github.com/igorw/evenement/tree/master"
+            },
             "time": "2017-07-17T17:39:19+00:00"
         },
         {
@@ -115,6 +119,12 @@
                 "icon",
                 "svg"
             ],
+            "support": {
+                "docs": "http://fontawesome.com/how-to-use",
+                "email": "hello at fontawesome.com",
+                "issues": "https://github.com/FortAwesome/Font-Awesome/issues",
+                "source": "https://github.com/FortAwesome/Font-Awesome"
+            },
             "time": "2021-08-04T19:09:22+00:00"
         },
         {
@@ -152,6 +162,10 @@
             "keywords": [
                 "html"
             ],
+            "support": {
+                "issues": "https://github.com/Icinga/ipl-html/issues",
+                "source": "https://github.com/Icinga/ipl-html/tree/v0.5.0"
+            },
             "time": "2022-02-09T14:24:26+00:00"
         },
         {
@@ -196,6 +210,10 @@
                 "localization",
                 "translation"
             ],
+            "support": {
+                "issues": "https://github.com/Icinga/ipl-i18n/issues",
+                "source": "https://github.com/Icinga/ipl-i18n/tree/v0.1.1"
+            },
             "time": "2021-07-19T10:08:42+00:00"
         },
         {
@@ -238,20 +256,24 @@
                 "orm",
                 "sql"
             ],
+            "support": {
+                "issues": "https://github.com/Icinga/ipl-orm/issues",
+                "source": "https://github.com/Icinga/ipl-orm/tree/v0.3.0"
+            },
             "time": "2021-11-10T13:25:03+00:00"
         },
         {
             "name": "ipl/sql",
-            "version": "v0.4.0",
+            "version": "v0.4.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/Icinga/ipl-sql.git",
-                "reference": "68ba15ec7767a7d1bbc8d6c89585b4defdb3fd90"
+                "reference": "6b9f13ab43c42507ad0c8836f6b0a09dae6d8886"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/Icinga/ipl-sql/zipball/68ba15ec7767a7d1bbc8d6c89585b4defdb3fd90",
-                "reference": "68ba15ec7767a7d1bbc8d6c89585b4defdb3fd90",
+                "url": "https://api.github.com/repos/Icinga/ipl-sql/zipball/6b9f13ab43c42507ad0c8836f6b0a09dae6d8886",
+                "reference": "6b9f13ab43c42507ad0c8836f6b0a09dae6d8886",
                 "shasum": ""
             },
             "require": {
@@ -275,7 +297,11 @@
                 "database",
                 "sql"
             ],
-            "time": "2022-03-21T08:40:21+00:00"
+            "support": {
+                "issues": "https://github.com/Icinga/ipl-sql/issues",
+                "source": "https://github.com/Icinga/ipl-sql/tree/v0.4.1"
+            },
+            "time": "2022-04-26T12:25:13+00:00"
         },
         {
             "name": "ipl/stdlib",
@@ -311,6 +337,10 @@
                 "MIT"
             ],
             "description": "ipl Standard Library",
+            "support": {
+                "issues": "https://github.com/Icinga/ipl-stdlib/issues",
+                "source": "https://github.com/Icinga/ipl-stdlib/tree/v0.11.0"
+            },
             "time": "2021-12-17T13:01:36+00:00"
         },
         {
@@ -345,6 +375,10 @@
             ],
             "description": "Icinga PHP Library - Common validators and validator chaining",
             "homepage": "https://github.com/Icinga/ipl-validator",
+            "support": {
+                "issues": "https://github.com/Icinga/ipl-validator/issues",
+                "source": "https://github.com/Icinga/ipl-validator/tree/v0.3.0"
+            },
             "time": "2021-10-07T14:12:51+00:00"
         },
         {
@@ -383,6 +417,10 @@
             "keywords": [
                 "html"
             ],
+            "support": {
+                "issues": "https://github.com/Icinga/ipl-web/issues",
+                "source": "https://github.com/Icinga/ipl-web/tree/v0.4.0"
+            },
             "time": "2022-03-23T10:19:52+00:00"
         },
         {
@@ -433,6 +471,9 @@
                 "request",
                 "response"
             ],
+            "support": {
+                "source": "https://github.com/php-fig/http-message/tree/master"
+            },
             "time": "2016-08-06T14:39:51+00:00"
         }
     ],
@@ -449,5 +490,5 @@
     "platform-overrides": {
         "php": "7.0.33"
     },
-    "plugin-api-version": "1.1.0"
+    "plugin-api-version": "2.2.0"
 }


=====================================
debian/changelog
=====================================
@@ -1,3 +1,9 @@
+icinga-php-library (0.8.1-1) unstable; urgency=medium
+
+  * New upstream release.
+
+ -- Bas Couwenberg <sebastic at debian.org>  Tue, 26 Apr 2022 19:12:20 +0200
+
 icinga-php-library (0.8.0-1) unstable; urgency=medium
 
   * New upstream release.


=====================================
vendor/autoload.php
=====================================
@@ -4,4 +4,4 @@
 
 require_once __DIR__ . '/composer/autoload_real.php';
 
-return ComposerAutoloaderInit992cbf5e28e30836abe39b98aeb5f871::getLoader();
+return ComposerAutoloaderInit46d0a60f6da789b87e12827c6fd616c1::getLoader();


=====================================
vendor/composer/ClassLoader.php
=====================================
@@ -37,26 +37,80 @@ namespace Composer\Autoload;
  *
  * @author Fabien Potencier <fabien at symfony.com>
  * @author Jordi Boggiano <j.boggiano at seld.be>
- * @see    http://www.php-fig.org/psr/psr-0/
- * @see    http://www.php-fig.org/psr/psr-4/
+ * @see    https://www.php-fig.org/psr/psr-0/
+ * @see    https://www.php-fig.org/psr/psr-4/
  */
 class ClassLoader
 {
+    /** @var ?string */
+    private $vendorDir;
+
     // PSR-4
+    /**
+     * @var array[]
+     * @psalm-var array<string, array<string, int>>
+     */
     private $prefixLengthsPsr4 = array();
+    /**
+     * @var array[]
+     * @psalm-var array<string, array<int, string>>
+     */
     private $prefixDirsPsr4 = array();
+    /**
+     * @var array[]
+     * @psalm-var array<string, string>
+     */
     private $fallbackDirsPsr4 = array();
 
     // PSR-0
+    /**
+     * @var array[]
+     * @psalm-var array<string, array<string, string[]>>
+     */
     private $prefixesPsr0 = array();
+    /**
+     * @var array[]
+     * @psalm-var array<string, string>
+     */
     private $fallbackDirsPsr0 = array();
 
+    /** @var bool */
     private $useIncludePath = false;
+
+    /**
+     * @var string[]
+     * @psalm-var array<string, string>
+     */
     private $classMap = array();
+
+    /** @var bool */
     private $classMapAuthoritative = false;
+
+    /**
+     * @var bool[]
+     * @psalm-var array<string, bool>
+     */
     private $missingClasses = array();
+
+    /** @var ?string */
     private $apcuPrefix;
 
+    /**
+     * @var self[]
+     */
+    private static $registeredLoaders = array();
+
+    /**
+     * @param ?string $vendorDir
+     */
+    public function __construct($vendorDir = null)
+    {
+        $this->vendorDir = $vendorDir;
+    }
+
+    /**
+     * @return string[]
+     */
     public function getPrefixes()
     {
         if (!empty($this->prefixesPsr0)) {
@@ -66,28 +120,47 @@ class ClassLoader
         return array();
     }
 
+    /**
+     * @return array[]
+     * @psalm-return array<string, array<int, string>>
+     */
     public function getPrefixesPsr4()
     {
         return $this->prefixDirsPsr4;
     }
 
+    /**
+     * @return array[]
+     * @psalm-return array<string, string>
+     */
     public function getFallbackDirs()
     {
         return $this->fallbackDirsPsr0;
     }
 
+    /**
+     * @return array[]
+     * @psalm-return array<string, string>
+     */
     public function getFallbackDirsPsr4()
     {
         return $this->fallbackDirsPsr4;
     }
 
+    /**
+     * @return string[] Array of classname => path
+     * @psalm-return array<string, string>
+     */
     public function getClassMap()
     {
         return $this->classMap;
     }
 
     /**
-     * @param array $classMap Class to filename map
+     * @param string[] $classMap Class to filename map
+     * @psalm-param array<string, string> $classMap
+     *
+     * @return void
      */
     public function addClassMap(array $classMap)
     {
@@ -102,9 +175,11 @@ class ClassLoader
      * Registers a set of PSR-0 directories for a given prefix, either
      * appending or prepending to the ones previously set for this prefix.
      *
-     * @param string       $prefix  The prefix
-     * @param array|string $paths   The PSR-0 root directories
-     * @param bool         $prepend Whether to prepend the directories
+     * @param string          $prefix  The prefix
+     * @param string[]|string $paths   The PSR-0 root directories
+     * @param bool            $prepend Whether to prepend the directories
+     *
+     * @return void
      */
     public function add($prefix, $paths, $prepend = false)
     {
@@ -147,11 +222,13 @@ class ClassLoader
      * Registers a set of PSR-4 directories for a given namespace, either
      * appending or prepending to the ones previously set for this namespace.
      *
-     * @param string       $prefix  The prefix/namespace, with trailing '\\'
-     * @param array|string $paths   The PSR-4 base directories
-     * @param bool         $prepend Whether to prepend the directories
+     * @param string          $prefix  The prefix/namespace, with trailing '\\'
+     * @param string[]|string $paths   The PSR-4 base directories
+     * @param bool            $prepend Whether to prepend the directories
      *
      * @throws \InvalidArgumentException
+     *
+     * @return void
      */
     public function addPsr4($prefix, $paths, $prepend = false)
     {
@@ -195,8 +272,10 @@ class ClassLoader
      * Registers a set of PSR-0 directories for a given prefix,
      * replacing any others previously set for this prefix.
      *
-     * @param string       $prefix The prefix
-     * @param array|string $paths  The PSR-0 base directories
+     * @param string          $prefix The prefix
+     * @param string[]|string $paths  The PSR-0 base directories
+     *
+     * @return void
      */
     public function set($prefix, $paths)
     {
@@ -211,10 +290,12 @@ class ClassLoader
      * Registers a set of PSR-4 directories for a given namespace,
      * replacing any others previously set for this namespace.
      *
-     * @param string       $prefix The prefix/namespace, with trailing '\\'
-     * @param array|string $paths  The PSR-4 base directories
+     * @param string          $prefix The prefix/namespace, with trailing '\\'
+     * @param string[]|string $paths  The PSR-4 base directories
      *
      * @throws \InvalidArgumentException
+     *
+     * @return void
      */
     public function setPsr4($prefix, $paths)
     {
@@ -234,6 +315,8 @@ class ClassLoader
      * Turns on searching the include path for class files.
      *
      * @param bool $useIncludePath
+     *
+     * @return void
      */
     public function setUseIncludePath($useIncludePath)
     {
@@ -256,6 +339,8 @@ class ClassLoader
      * that have not been registered with the class map.
      *
      * @param bool $classMapAuthoritative
+     *
+     * @return void
      */
     public function setClassMapAuthoritative($classMapAuthoritative)
     {
@@ -276,6 +361,8 @@ class ClassLoader
      * APCu prefix to use to cache found/not-found classes, if the extension is enabled.
      *
      * @param string|null $apcuPrefix
+     *
+     * @return void
      */
     public function setApcuPrefix($apcuPrefix)
     {
@@ -296,25 +383,44 @@ class ClassLoader
      * Registers this instance as an autoloader.
      *
      * @param bool $prepend Whether to prepend the autoloader or not
+     *
+     * @return void
      */
     public function register($prepend = false)
     {
         spl_autoload_register(array($this, 'loadClass'), true, $prepend);
+
+        if (null === $this->vendorDir) {
+            return;
+        }
+
+        if ($prepend) {
+            self::$registeredLoaders = array($this->vendorDir => $this) + self::$registeredLoaders;
+        } else {
+            unset(self::$registeredLoaders[$this->vendorDir]);
+            self::$registeredLoaders[$this->vendorDir] = $this;
+        }
     }
 
     /**
      * Unregisters this instance as an autoloader.
+     *
+     * @return void
      */
     public function unregister()
     {
         spl_autoload_unregister(array($this, 'loadClass'));
+
+        if (null !== $this->vendorDir) {
+            unset(self::$registeredLoaders[$this->vendorDir]);
+        }
     }
 
     /**
      * Loads the given class or interface.
      *
      * @param  string    $class The name of the class
-     * @return bool|null True if loaded, null otherwise
+     * @return true|null True if loaded, null otherwise
      */
     public function loadClass($class)
     {
@@ -323,6 +429,8 @@ class ClassLoader
 
             return true;
         }
+
+        return null;
     }
 
     /**
@@ -367,6 +475,21 @@ class ClassLoader
         return $file;
     }
 
+    /**
+     * Returns the currently registered loaders indexed by their corresponding vendor directories.
+     *
+     * @return self[]
+     */
+    public static function getRegisteredLoaders()
+    {
+        return self::$registeredLoaders;
+    }
+
+    /**
+     * @param  string       $class
+     * @param  string       $ext
+     * @return string|false
+     */
     private function findFileWithExtension($class, $ext)
     {
         // PSR-4 lookup
@@ -438,6 +561,10 @@ class ClassLoader
  * Scope isolated include.
  *
  * Prevents access to $this/self from included files.
+ *
+ * @param  string $file
+ * @return void
+ * @private
  */
 function includeFile($file)
 {


=====================================
vendor/composer/InstalledVersions.php
=====================================
@@ -0,0 +1,350 @@
+<?php
+
+/*
+ * This file is part of Composer.
+ *
+ * (c) Nils Adermann <naderman at naderman.de>
+ *     Jordi Boggiano <j.boggiano at seld.be>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Composer;
+
+use Composer\Autoload\ClassLoader;
+use Composer\Semver\VersionParser;
+
+/**
+ * This class is copied in every Composer installed project and available to all
+ *
+ * See also https://getcomposer.org/doc/07-runtime.md#installed-versions
+ *
+ * To require its presence, you can require `composer-runtime-api ^2.0`
+ */
+class InstalledVersions
+{
+    /**
+     * @var mixed[]|null
+     * @psalm-var array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}|array{}|null
+     */
+    private static $installed;
+
+    /**
+     * @var bool|null
+     */
+    private static $canGetVendors;
+
+    /**
+     * @var array[]
+     * @psalm-var array<string, array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}>
+     */
+    private static $installedByVendor = array();
+
+    /**
+     * Returns a list of all package names which are present, either by being installed, replaced or provided
+     *
+     * @return string[]
+     * @psalm-return list<string>
+     */
+    public static function getInstalledPackages()
+    {
+        $packages = array();
+        foreach (self::getInstalled() as $installed) {
+            $packages[] = array_keys($installed['versions']);
+        }
+
+        if (1 === \count($packages)) {
+            return $packages[0];
+        }
+
+        return array_keys(array_flip(\call_user_func_array('array_merge', $packages)));
+    }
+
+    /**
+     * Returns a list of all package names with a specific type e.g. 'library'
+     *
+     * @param  string   $type
+     * @return string[]
+     * @psalm-return list<string>
+     */
+    public static function getInstalledPackagesByType($type)
+    {
+        $packagesByType = array();
+
+        foreach (self::getInstalled() as $installed) {
+            foreach ($installed['versions'] as $name => $package) {
+                if (isset($package['type']) && $package['type'] === $type) {
+                    $packagesByType[] = $name;
+                }
+            }
+        }
+
+        return $packagesByType;
+    }
+
+    /**
+     * Checks whether the given package is installed
+     *
+     * This also returns true if the package name is provided or replaced by another package
+     *
+     * @param  string $packageName
+     * @param  bool   $includeDevRequirements
+     * @return bool
+     */
+    public static function isInstalled($packageName, $includeDevRequirements = true)
+    {
+        foreach (self::getInstalled() as $installed) {
+            if (isset($installed['versions'][$packageName])) {
+                return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']);
+            }
+        }
+
+        return false;
+    }
+
+    /**
+     * Checks whether the given package satisfies a version constraint
+     *
+     * e.g. If you want to know whether version 2.3+ of package foo/bar is installed, you would call:
+     *
+     *   Composer\InstalledVersions::satisfies(new VersionParser, 'foo/bar', '^2.3')
+     *
+     * @param  VersionParser $parser      Install composer/semver to have access to this class and functionality
+     * @param  string        $packageName
+     * @param  string|null   $constraint  A version constraint to check for, if you pass one you have to make sure composer/semver is required by your package
+     * @return bool
+     */
+    public static function satisfies(VersionParser $parser, $packageName, $constraint)
+    {
+        $constraint = $parser->parseConstraints($constraint);
+        $provided = $parser->parseConstraints(self::getVersionRanges($packageName));
+
+        return $provided->matches($constraint);
+    }
+
+    /**
+     * Returns a version constraint representing all the range(s) which are installed for a given package
+     *
+     * It is easier to use this via isInstalled() with the $constraint argument if you need to check
+     * whether a given version of a package is installed, and not just whether it exists
+     *
+     * @param  string $packageName
+     * @return string Version constraint usable with composer/semver
+     */
+    public static function getVersionRanges($packageName)
+    {
+        foreach (self::getInstalled() as $installed) {
+            if (!isset($installed['versions'][$packageName])) {
+                continue;
+            }
+
+            $ranges = array();
+            if (isset($installed['versions'][$packageName]['pretty_version'])) {
+                $ranges[] = $installed['versions'][$packageName]['pretty_version'];
+            }
+            if (array_key_exists('aliases', $installed['versions'][$packageName])) {
+                $ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']);
+            }
+            if (array_key_exists('replaced', $installed['versions'][$packageName])) {
+                $ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']);
+            }
+            if (array_key_exists('provided', $installed['versions'][$packageName])) {
+                $ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']);
+            }
+
+            return implode(' || ', $ranges);
+        }
+
+        throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
+    }
+
+    /**
+     * @param  string      $packageName
+     * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
+     */
+    public static function getVersion($packageName)
+    {
+        foreach (self::getInstalled() as $installed) {
+            if (!isset($installed['versions'][$packageName])) {
+                continue;
+            }
+
+            if (!isset($installed['versions'][$packageName]['version'])) {
+                return null;
+            }
+
+            return $installed['versions'][$packageName]['version'];
+        }
+
+        throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
+    }
+
+    /**
+     * @param  string      $packageName
+     * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
+     */
+    public static function getPrettyVersion($packageName)
+    {
+        foreach (self::getInstalled() as $installed) {
+            if (!isset($installed['versions'][$packageName])) {
+                continue;
+            }
+
+            if (!isset($installed['versions'][$packageName]['pretty_version'])) {
+                return null;
+            }
+
+            return $installed['versions'][$packageName]['pretty_version'];
+        }
+
+        throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
+    }
+
+    /**
+     * @param  string      $packageName
+     * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as reference
+     */
+    public static function getReference($packageName)
+    {
+        foreach (self::getInstalled() as $installed) {
+            if (!isset($installed['versions'][$packageName])) {
+                continue;
+            }
+
+            if (!isset($installed['versions'][$packageName]['reference'])) {
+                return null;
+            }
+
+            return $installed['versions'][$packageName]['reference'];
+        }
+
+        throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
+    }
+
+    /**
+     * @param  string      $packageName
+     * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as install path. Packages of type metapackages also have a null install path.
+     */
+    public static function getInstallPath($packageName)
+    {
+        foreach (self::getInstalled() as $installed) {
+            if (!isset($installed['versions'][$packageName])) {
+                continue;
+            }
+
+            return isset($installed['versions'][$packageName]['install_path']) ? $installed['versions'][$packageName]['install_path'] : null;
+        }
+
+        throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
+    }
+
+    /**
+     * @return array
+     * @psalm-return array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}
+     */
+    public static function getRootPackage()
+    {
+        $installed = self::getInstalled();
+
+        return $installed[0]['root'];
+    }
+
+    /**
+     * Returns the raw installed.php data for custom implementations
+     *
+     * @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect.
+     * @return array[]
+     * @psalm-return array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}
+     */
+    public static function getRawData()
+    {
+        @trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED);
+
+        if (null === self::$installed) {
+            // only require the installed.php file if this file is loaded from its dumped location,
+            // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
+            if (substr(__DIR__, -8, 1) !== 'C') {
+                self::$installed = include __DIR__ . '/installed.php';
+            } else {
+                self::$installed = array();
+            }
+        }
+
+        return self::$installed;
+    }
+
+    /**
+     * Returns the raw data of all installed.php which are currently loaded for custom implementations
+     *
+     * @return array[]
+     * @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}>
+     */
+    public static function getAllRawData()
+    {
+        return self::getInstalled();
+    }
+
+    /**
+     * Lets you reload the static array from another file
+     *
+     * This is only useful for complex integrations in which a project needs to use
+     * this class but then also needs to execute another project's autoloader in process,
+     * and wants to ensure both projects have access to their version of installed.php.
+     *
+     * A typical case would be PHPUnit, where it would need to make sure it reads all
+     * the data it needs from this class, then call reload() with
+     * `require $CWD/vendor/composer/installed.php` (or similar) as input to make sure
+     * the project in which it runs can then also use this class safely, without
+     * interference between PHPUnit's dependencies and the project's dependencies.
+     *
+     * @param  array[] $data A vendor/composer/installed.php data set
+     * @return void
+     *
+     * @psalm-param array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>} $data
+     */
+    public static function reload($data)
+    {
+        self::$installed = $data;
+        self::$installedByVendor = array();
+    }
+
+    /**
+     * @return array[]
+     * @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}>
+     */
+    private static function getInstalled()
+    {
+        if (null === self::$canGetVendors) {
+            self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders');
+        }
+
+        $installed = array();
+
+        if (self::$canGetVendors) {
+            foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) {
+                if (isset(self::$installedByVendor[$vendorDir])) {
+                    $installed[] = self::$installedByVendor[$vendorDir];
+                } elseif (is_file($vendorDir.'/composer/installed.php')) {
+                    $installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
+                    if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
+                        self::$installed = $installed[count($installed) - 1];
+                    }
+                }
+            }
+        }
+
+        if (null === self::$installed) {
+            // only require the installed.php file if this file is loaded from its dumped location,
+            // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
+            if (substr(__DIR__, -8, 1) !== 'C') {
+                self::$installed = require __DIR__ . '/installed.php';
+            } else {
+                self::$installed = array();
+            }
+        }
+        $installed[] = self::$installed;
+
+        return $installed;
+    }
+}


=====================================
vendor/composer/autoload_classmap.php
=====================================
@@ -6,4 +6,5 @@ $vendorDir = dirname(dirname(__FILE__));
 $baseDir = dirname($vendorDir);
 
 return array(
+    'Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php',
 );


=====================================
vendor/composer/autoload_real.php
=====================================
@@ -2,7 +2,7 @@
 
 // autoload_real.php @generated by Composer
 
-class ComposerAutoloaderInit992cbf5e28e30836abe39b98aeb5f871
+class ComposerAutoloaderInit46d0a60f6da789b87e12827c6fd616c1
 {
     private static $loader;
 
@@ -22,15 +22,17 @@ class ComposerAutoloaderInit992cbf5e28e30836abe39b98aeb5f871
             return self::$loader;
         }
 
-        spl_autoload_register(array('ComposerAutoloaderInit992cbf5e28e30836abe39b98aeb5f871', 'loadClassLoader'), true, true);
-        self::$loader = $loader = new \Composer\Autoload\ClassLoader();
-        spl_autoload_unregister(array('ComposerAutoloaderInit992cbf5e28e30836abe39b98aeb5f871', 'loadClassLoader'));
+        require __DIR__ . '/platform_check.php';
+
+        spl_autoload_register(array('ComposerAutoloaderInit46d0a60f6da789b87e12827c6fd616c1', 'loadClassLoader'), true, true);
+        self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
+        spl_autoload_unregister(array('ComposerAutoloaderInit46d0a60f6da789b87e12827c6fd616c1', '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';
+            require __DIR__ . '/autoload_static.php';
 
-            call_user_func(\Composer\Autoload\ComposerStaticInit992cbf5e28e30836abe39b98aeb5f871::getInitializer($loader));
+            call_user_func(\Composer\Autoload\ComposerStaticInit46d0a60f6da789b87e12827c6fd616c1::getInitializer($loader));
         } else {
             $map = require __DIR__ . '/autoload_namespaces.php';
             foreach ($map as $namespace => $path) {
@@ -51,23 +53,28 @@ class ComposerAutoloaderInit992cbf5e28e30836abe39b98aeb5f871
         $loader->register(true);
 
         if ($useStaticLoader) {
-            $includeFiles = Composer\Autoload\ComposerStaticInit992cbf5e28e30836abe39b98aeb5f871::$files;
+            $includeFiles = Composer\Autoload\ComposerStaticInit46d0a60f6da789b87e12827c6fd616c1::$files;
         } else {
             $includeFiles = require __DIR__ . '/autoload_files.php';
         }
         foreach ($includeFiles as $fileIdentifier => $file) {
-            composerRequire992cbf5e28e30836abe39b98aeb5f871($fileIdentifier, $file);
+            composerRequire46d0a60f6da789b87e12827c6fd616c1($fileIdentifier, $file);
         }
 
         return $loader;
     }
 }
 
-function composerRequire992cbf5e28e30836abe39b98aeb5f871($fileIdentifier, $file)
+/**
+ * @param string $fileIdentifier
+ * @param string $file
+ * @return void
+ */
+function composerRequire46d0a60f6da789b87e12827c6fd616c1($fileIdentifier, $file)
 {
     if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
-        require $file;
-
         $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
+
+        require $file;
     }
 }


=====================================
vendor/composer/autoload_static.php
=====================================
@@ -4,7 +4,7 @@
 
 namespace Composer\Autoload;
 
-class ComposerStaticInit992cbf5e28e30836abe39b98aeb5f871
+class ComposerStaticInit46d0a60f6da789b87e12827c6fd616c1
 {
     public static $files = array (
         'a2c78434f64e5f5ed402f42eee19c025' => __DIR__ . '/..' . '/ipl/stdlib/src/functions_include.php',
@@ -81,12 +81,17 @@ class ComposerStaticInit992cbf5e28e30836abe39b98aeb5f871
         ),
     );
 
+    public static $classMap = array (
+        'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php',
+    );
+
     public static function getInitializer(ClassLoader $loader)
     {
         return \Closure::bind(function () use ($loader) {
-            $loader->prefixLengthsPsr4 = ComposerStaticInit992cbf5e28e30836abe39b98aeb5f871::$prefixLengthsPsr4;
-            $loader->prefixDirsPsr4 = ComposerStaticInit992cbf5e28e30836abe39b98aeb5f871::$prefixDirsPsr4;
-            $loader->prefixesPsr0 = ComposerStaticInit992cbf5e28e30836abe39b98aeb5f871::$prefixesPsr0;
+            $loader->prefixLengthsPsr4 = ComposerStaticInit46d0a60f6da789b87e12827c6fd616c1::$prefixLengthsPsr4;
+            $loader->prefixDirsPsr4 = ComposerStaticInit46d0a60f6da789b87e12827c6fd616c1::$prefixDirsPsr4;
+            $loader->prefixesPsr0 = ComposerStaticInit46d0a60f6da789b87e12827c6fd616c1::$prefixesPsr0;
+            $loader->classMap = ComposerStaticInit46d0a60f6da789b87e12827c6fd616c1::$classMap;
 
         }, null, ClassLoader::class);
     }


=====================================
vendor/composer/installed.json
=====================================
@@ -1,451 +1,506 @@
-[
-    {
-        "name": "evenement/evenement",
-        "version": "v2.1.0",
-        "version_normalized": "2.1.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/igorw/evenement.git",
-            "reference": "6ba9a777870ab49f417e703229d53931ed40fd7a"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/igorw/evenement/zipball/6ba9a777870ab49f417e703229d53931ed40fd7a",
-            "reference": "6ba9a777870ab49f417e703229d53931ed40fd7a",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.4.0"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "^6.0||^5.7||^4.8.35"
-        },
-        "time": "2017-07-17T17:39:19+00:00",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.0-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-0": {
-                "Evenement": "src"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Igor Wiedler",
-                "email": "igor at wiedler.ch"
-            }
-        ],
-        "description": "Événement is a very simple event dispatching library for PHP",
-        "keywords": [
-            "event-dispatcher",
-            "event-emitter"
-        ]
-    },
-    {
-        "name": "fortawesome/font-awesome",
-        "version": "5.15.4",
-        "version_normalized": "5.15.4.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/FortAwesome/Font-Awesome.git",
-            "reference": "7d3d774145ac38663f6d1effc6def0334b68ab7e"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/FortAwesome/Font-Awesome/zipball/7d3d774145ac38663f6d1effc6def0334b68ab7e",
-            "reference": "7d3d774145ac38663f6d1effc6def0334b68ab7e",
-            "shasum": ""
-        },
-        "time": "2021-08-04T19:09:22+00:00",
-        "type": "library",
-        "installation-source": "dist",
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "CC-BY-4.0",
-            "OFL-1.1",
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Travis Chase",
-                "homepage": "http://twitter.com/supercodepoet"
-            },
-            {
-                "name": "Dave Gandy",
-                "homepage": "http://twitter.com/davegandy"
-            },
-            {
-                "name": "Rob Madole",
-                "homepage": "http://twitter.com/robmadole"
-            },
-            {
-                "name": "Jory Raphael",
-                "homepage": "http://twitter.com/sensibleworld"
-            },
-            {
-                "name": "Geremia Taglialatela",
-                "homepage": "http://twitter.com/gtagliala"
-            },
-            {
-                "name": "Brian Talbot",
-                "homepage": "http://twitter.com/talbs"
-            },
-            {
-                "name": "Mike Wilkerson",
-                "homepage": "http://twitter.com/mw77"
-            }
-        ],
-        "description": "The iconic font, CSS, and SVG framework",
-        "homepage": "https://fontawesome.com",
-        "keywords": [
-            "FontAwesome",
-            "awesome",
-            "bootstrap",
-            "font",
-            "icon",
-            "svg"
-        ]
-    },
-    {
-        "name": "ipl/html",
-        "version": "v0.5.0",
-        "version_normalized": "0.5.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/Icinga/ipl-html.git",
-            "reference": "3dcd3418a6850fb357ac2a55a9027fc133fb6aa2"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/Icinga/ipl-html/zipball/3dcd3418a6850fb357ac2a55a9027fc133fb6aa2",
-            "reference": "3dcd3418a6850fb357ac2a55a9027fc133fb6aa2",
-            "shasum": ""
-        },
-        "require": {
-            "ipl/stdlib": ">=0.5.0",
-            "ipl/validator": ">=0.1.0",
-            "php": ">=5.6.0",
-            "psr/http-message": "~1.0"
-        },
-        "time": "2022-02-09T14:24:26+00:00",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "ipl\\Html\\": "src"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "description": "Icinga PHP Library - HTML abstraction layer",
-        "homepage": "https://github.com/Icinga/ipl-html",
-        "keywords": [
-            "html"
-        ]
-    },
-    {
-        "name": "ipl/i18n",
-        "version": "v0.1.1",
-        "version_normalized": "0.1.1.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/Icinga/ipl-i18n.git",
-            "reference": "104a31ada051d1d8456e4a29021a1a4ce750aa07"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/Icinga/ipl-i18n/zipball/104a31ada051d1d8456e4a29021a1a4ce750aa07",
-            "reference": "104a31ada051d1d8456e4a29021a1a4ce750aa07",
-            "shasum": ""
-        },
-        "require": {
-            "ext-gettext": "*",
-            "ext-intl": "*",
-            "ipl/stdlib": ">=0.6.0",
-            "php": ">=5.6.0"
-        },
-        "time": "2021-07-19T10:08:42+00:00",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "files": [
-                "src/functions_include.php"
+{
+    "packages": [
+        {
+            "name": "evenement/evenement",
+            "version": "v2.1.0",
+            "version_normalized": "2.1.0.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/igorw/evenement.git",
+                "reference": "6ba9a777870ab49f417e703229d53931ed40fd7a"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/igorw/evenement/zipball/6ba9a777870ab49f417e703229d53931ed40fd7a",
+                "reference": "6ba9a777870ab49f417e703229d53931ed40fd7a",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.4.0"
+            },
+            "require-dev": {
+                "phpunit/phpunit": "^6.0||^5.7||^4.8.35"
+            },
+            "time": "2017-07-17T17:39:19+00:00",
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "2.0-dev"
+                }
+            },
+            "installation-source": "dist",
+            "autoload": {
+                "psr-0": {
+                    "Evenement": "src"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
             ],
-            "psr-4": {
-                "ipl\\I18n\\": "src"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "description": "Icinga PHP Library - Internationalization",
-        "homepage": "https://github.com/Icinga/ipl-i18n",
-        "keywords": [
-            "gettext",
-            "i18n",
-            "internationalization",
-            "localization",
-            "translation"
-        ]
-    },
-    {
-        "name": "ipl/orm",
-        "version": "v0.3.0",
-        "version_normalized": "0.3.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/Icinga/ipl-orm.git",
-            "reference": "14de55506c4689180ba06f1d7d3ac5353a4177f3"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/Icinga/ipl-orm/zipball/14de55506c4689180ba06f1d7d3ac5353a4177f3",
-            "reference": "14de55506c4689180ba06f1d7d3ac5353a4177f3",
-            "shasum": ""
-        },
-        "require": {
-            "ext-pdo": "*",
-            "ipl/sql": ">=0.3.0",
-            "ipl/stdlib": ">=0.10.0",
-            "php": ">=5.6.0"
-        },
-        "require-dev": {
-            "ext-pdo_sqlite": "*"
-        },
-        "time": "2021-11-10T13:25:03+00:00",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "ipl\\Orm\\": "src"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "description": "Icinga PHP Library - ORM",
-        "homepage": "https://github.com/Icinga/ipl-orm",
-        "keywords": [
-            "database",
-            "orm",
-            "sql"
-        ]
-    },
-    {
-        "name": "ipl/sql",
-        "version": "v0.4.0",
-        "version_normalized": "0.4.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/Icinga/ipl-sql.git",
-            "reference": "68ba15ec7767a7d1bbc8d6c89585b4defdb3fd90"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/Icinga/ipl-sql/zipball/68ba15ec7767a7d1bbc8d6c89585b4defdb3fd90",
-            "reference": "68ba15ec7767a7d1bbc8d6c89585b4defdb3fd90",
-            "shasum": ""
-        },
-        "require": {
-            "ext-pdo": "*",
-            "ipl/stdlib": ">=0.9.0",
-            "php": ">=5.6.0"
-        },
-        "time": "2022-03-21T08:40:21+00:00",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "ipl\\Sql\\": "src"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "description": "Icinga PHP Library - SQL abstraction layer",
-        "homepage": "https://github.com/Icinga/ipl-sql",
-        "keywords": [
-            "database",
-            "sql"
-        ]
-    },
-    {
-        "name": "ipl/stdlib",
-        "version": "v0.11.0",
-        "version_normalized": "0.11.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/Icinga/ipl-stdlib.git",
-            "reference": "edbb664725f0762012329fca0fa4e1ed53896a28"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/Icinga/ipl-stdlib/zipball/edbb664725f0762012329fca0fa4e1ed53896a28",
-            "reference": "edbb664725f0762012329fca0fa4e1ed53896a28",
-            "shasum": ""
-        },
-        "require": {
-            "evenement/evenement": "^2",
-            "ext-openssl": "*",
-            "php": ">=7.0"
-        },
-        "time": "2021-12-17T13:01:36+00:00",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "files": [
-                "src/functions_include.php",
-                "src/polyfill-php71.php"
+            "authors": [
+                {
+                    "name": "Igor Wiedler",
+                    "email": "igor at wiedler.ch"
+                }
             ],
-            "psr-4": {
-                "ipl\\Stdlib\\": "src"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "description": "ipl Standard Library"
-    },
-    {
-        "name": "ipl/validator",
-        "version": "v0.3.0",
-        "version_normalized": "0.3.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/Icinga/ipl-validator.git",
-            "reference": "e32eeec7bdaa1fbdf7c2734546835a72d799d4e7"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/Icinga/ipl-validator/zipball/e32eeec7bdaa1fbdf7c2734546835a72d799d4e7",
-            "reference": "e32eeec7bdaa1fbdf7c2734546835a72d799d4e7",
-            "shasum": ""
-        },
-        "require": {
-            "ext-openssl": "*",
-            "ipl/i18n": ">=0.1.0",
-            "ipl/stdlib": ">=0.5.0",
-            "php": ">=5.6.0"
-        },
-        "time": "2021-10-07T14:12:51+00:00",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "ipl\\Validator\\": "src"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "description": "Icinga PHP Library - Common validators and validator chaining",
-        "homepage": "https://github.com/Icinga/ipl-validator"
-    },
-    {
-        "name": "ipl/web",
-        "version": "v0.4.0",
-        "version_normalized": "0.4.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/Icinga/ipl-web.git",
-            "reference": "ec2db193e6125056f81989c69b80f4b8da412eba"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/Icinga/ipl-web/zipball/ec2db193e6125056f81989c69b80f4b8da412eba",
-            "reference": "ec2db193e6125056f81989c69b80f4b8da412eba",
-            "shasum": ""
-        },
-        "require": {
-            "ext-json": "*",
-            "fortawesome/font-awesome": "^5.13",
-            "ipl/html": ">=0.4.0",
-            "ipl/stdlib": ">=0.11.0",
-            "php": ">=7.0"
-        },
-        "time": "2022-03-23T10:19:52+00:00",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "ipl\\Web\\": "src"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "description": "Icinga PHP Library - Web Components",
-        "homepage": "https://github.com/Icinga/ipl-web",
-        "keywords": [
-            "html"
-        ]
-    },
-    {
-        "name": "psr/http-message",
-        "version": "1.0.1",
-        "version_normalized": "1.0.1.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/php-fig/http-message.git",
-            "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
-            "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.0"
-        },
-        "time": "2016-08-06T14:39:51+00:00",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.0.x-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "Psr\\Http\\Message\\": "src/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "PHP-FIG",
-                "homepage": "http://www.php-fig.org/"
-            }
-        ],
-        "description": "Common interface for HTTP messages",
-        "homepage": "https://github.com/php-fig/http-message",
-        "keywords": [
-            "http",
-            "http-message",
-            "psr",
-            "psr-7",
-            "request",
-            "response"
-        ]
-    }
-]
+            "description": "Événement is a very simple event dispatching library for PHP",
+            "keywords": [
+                "event-dispatcher",
+                "event-emitter"
+            ],
+            "support": {
+                "issues": "https://github.com/igorw/evenement/issues",
+                "source": "https://github.com/igorw/evenement/tree/master"
+            },
+            "install-path": "../evenement/evenement"
+        },
+        {
+            "name": "fortawesome/font-awesome",
+            "version": "5.15.4",
+            "version_normalized": "5.15.4.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/FortAwesome/Font-Awesome.git",
+                "reference": "7d3d774145ac38663f6d1effc6def0334b68ab7e"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/FortAwesome/Font-Awesome/zipball/7d3d774145ac38663f6d1effc6def0334b68ab7e",
+                "reference": "7d3d774145ac38663f6d1effc6def0334b68ab7e",
+                "shasum": ""
+            },
+            "time": "2021-08-04T19:09:22+00:00",
+            "type": "library",
+            "installation-source": "dist",
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "CC-BY-4.0",
+                "OFL-1.1",
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Travis Chase",
+                    "homepage": "http://twitter.com/supercodepoet"
+                },
+                {
+                    "name": "Dave Gandy",
+                    "homepage": "http://twitter.com/davegandy"
+                },
+                {
+                    "name": "Rob Madole",
+                    "homepage": "http://twitter.com/robmadole"
+                },
+                {
+                    "name": "Jory Raphael",
+                    "homepage": "http://twitter.com/sensibleworld"
+                },
+                {
+                    "name": "Geremia Taglialatela",
+                    "homepage": "http://twitter.com/gtagliala"
+                },
+                {
+                    "name": "Brian Talbot",
+                    "homepage": "http://twitter.com/talbs"
+                },
+                {
+                    "name": "Mike Wilkerson",
+                    "homepage": "http://twitter.com/mw77"
+                }
+            ],
+            "description": "The iconic font, CSS, and SVG framework",
+            "homepage": "https://fontawesome.com",
+            "keywords": [
+                "FontAwesome",
+                "awesome",
+                "bootstrap",
+                "font",
+                "icon",
+                "svg"
+            ],
+            "support": {
+                "docs": "http://fontawesome.com/how-to-use",
+                "email": "hello at fontawesome.com",
+                "issues": "https://github.com/FortAwesome/Font-Awesome/issues",
+                "source": "https://github.com/FortAwesome/Font-Awesome"
+            },
+            "install-path": "../fortawesome/font-awesome"
+        },
+        {
+            "name": "ipl/html",
+            "version": "v0.5.0",
+            "version_normalized": "0.5.0.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/Icinga/ipl-html.git",
+                "reference": "3dcd3418a6850fb357ac2a55a9027fc133fb6aa2"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/Icinga/ipl-html/zipball/3dcd3418a6850fb357ac2a55a9027fc133fb6aa2",
+                "reference": "3dcd3418a6850fb357ac2a55a9027fc133fb6aa2",
+                "shasum": ""
+            },
+            "require": {
+                "ipl/stdlib": ">=0.5.0",
+                "ipl/validator": ">=0.1.0",
+                "php": ">=5.6.0",
+                "psr/http-message": "~1.0"
+            },
+            "time": "2022-02-09T14:24:26+00:00",
+            "type": "library",
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "ipl\\Html\\": "src"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "description": "Icinga PHP Library - HTML abstraction layer",
+            "homepage": "https://github.com/Icinga/ipl-html",
+            "keywords": [
+                "html"
+            ],
+            "support": {
+                "issues": "https://github.com/Icinga/ipl-html/issues",
+                "source": "https://github.com/Icinga/ipl-html/tree/v0.5.0"
+            },
+            "install-path": "../ipl/html"
+        },
+        {
+            "name": "ipl/i18n",
+            "version": "v0.1.1",
+            "version_normalized": "0.1.1.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/Icinga/ipl-i18n.git",
+                "reference": "104a31ada051d1d8456e4a29021a1a4ce750aa07"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/Icinga/ipl-i18n/zipball/104a31ada051d1d8456e4a29021a1a4ce750aa07",
+                "reference": "104a31ada051d1d8456e4a29021a1a4ce750aa07",
+                "shasum": ""
+            },
+            "require": {
+                "ext-gettext": "*",
+                "ext-intl": "*",
+                "ipl/stdlib": ">=0.6.0",
+                "php": ">=5.6.0"
+            },
+            "time": "2021-07-19T10:08:42+00:00",
+            "type": "library",
+            "installation-source": "dist",
+            "autoload": {
+                "files": [
+                    "src/functions_include.php"
+                ],
+                "psr-4": {
+                    "ipl\\I18n\\": "src"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "description": "Icinga PHP Library - Internationalization",
+            "homepage": "https://github.com/Icinga/ipl-i18n",
+            "keywords": [
+                "gettext",
+                "i18n",
+                "internationalization",
+                "localization",
+                "translation"
+            ],
+            "support": {
+                "issues": "https://github.com/Icinga/ipl-i18n/issues",
+                "source": "https://github.com/Icinga/ipl-i18n/tree/v0.1.1"
+            },
+            "install-path": "../ipl/i18n"
+        },
+        {
+            "name": "ipl/orm",
+            "version": "v0.3.0",
+            "version_normalized": "0.3.0.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/Icinga/ipl-orm.git",
+                "reference": "14de55506c4689180ba06f1d7d3ac5353a4177f3"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/Icinga/ipl-orm/zipball/14de55506c4689180ba06f1d7d3ac5353a4177f3",
+                "reference": "14de55506c4689180ba06f1d7d3ac5353a4177f3",
+                "shasum": ""
+            },
+            "require": {
+                "ext-pdo": "*",
+                "ipl/sql": ">=0.3.0",
+                "ipl/stdlib": ">=0.10.0",
+                "php": ">=5.6.0"
+            },
+            "require-dev": {
+                "ext-pdo_sqlite": "*"
+            },
+            "time": "2021-11-10T13:25:03+00:00",
+            "type": "library",
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "ipl\\Orm\\": "src"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "description": "Icinga PHP Library - ORM",
+            "homepage": "https://github.com/Icinga/ipl-orm",
+            "keywords": [
+                "database",
+                "orm",
+                "sql"
+            ],
+            "support": {
+                "issues": "https://github.com/Icinga/ipl-orm/issues",
+                "source": "https://github.com/Icinga/ipl-orm/tree/v0.3.0"
+            },
+            "install-path": "../ipl/orm"
+        },
+        {
+            "name": "ipl/sql",
+            "version": "v0.4.1",
+            "version_normalized": "0.4.1.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/Icinga/ipl-sql.git",
+                "reference": "6b9f13ab43c42507ad0c8836f6b0a09dae6d8886"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/Icinga/ipl-sql/zipball/6b9f13ab43c42507ad0c8836f6b0a09dae6d8886",
+                "reference": "6b9f13ab43c42507ad0c8836f6b0a09dae6d8886",
+                "shasum": ""
+            },
+            "require": {
+                "ext-pdo": "*",
+                "ipl/stdlib": ">=0.9.0",
+                "php": ">=5.6.0"
+            },
+            "time": "2022-04-26T12:25:13+00:00",
+            "type": "library",
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "ipl\\Sql\\": "src"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "description": "Icinga PHP Library - SQL abstraction layer",
+            "homepage": "https://github.com/Icinga/ipl-sql",
+            "keywords": [
+                "database",
+                "sql"
+            ],
+            "support": {
+                "issues": "https://github.com/Icinga/ipl-sql/issues",
+                "source": "https://github.com/Icinga/ipl-sql/tree/v0.4.1"
+            },
+            "install-path": "../ipl/sql"
+        },
+        {
+            "name": "ipl/stdlib",
+            "version": "v0.11.0",
+            "version_normalized": "0.11.0.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/Icinga/ipl-stdlib.git",
+                "reference": "edbb664725f0762012329fca0fa4e1ed53896a28"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/Icinga/ipl-stdlib/zipball/edbb664725f0762012329fca0fa4e1ed53896a28",
+                "reference": "edbb664725f0762012329fca0fa4e1ed53896a28",
+                "shasum": ""
+            },
+            "require": {
+                "evenement/evenement": "^2",
+                "ext-openssl": "*",
+                "php": ">=7.0"
+            },
+            "time": "2021-12-17T13:01:36+00:00",
+            "type": "library",
+            "installation-source": "dist",
+            "autoload": {
+                "files": [
+                    "src/functions_include.php",
+                    "src/polyfill-php71.php"
+                ],
+                "psr-4": {
+                    "ipl\\Stdlib\\": "src"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "description": "ipl Standard Library",
+            "support": {
+                "issues": "https://github.com/Icinga/ipl-stdlib/issues",
+                "source": "https://github.com/Icinga/ipl-stdlib/tree/v0.11.0"
+            },
+            "install-path": "../ipl/stdlib"
+        },
+        {
+            "name": "ipl/validator",
+            "version": "v0.3.0",
+            "version_normalized": "0.3.0.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/Icinga/ipl-validator.git",
+                "reference": "e32eeec7bdaa1fbdf7c2734546835a72d799d4e7"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/Icinga/ipl-validator/zipball/e32eeec7bdaa1fbdf7c2734546835a72d799d4e7",
+                "reference": "e32eeec7bdaa1fbdf7c2734546835a72d799d4e7",
+                "shasum": ""
+            },
+            "require": {
+                "ext-openssl": "*",
+                "ipl/i18n": ">=0.1.0",
+                "ipl/stdlib": ">=0.5.0",
+                "php": ">=5.6.0"
+            },
+            "time": "2021-10-07T14:12:51+00:00",
+            "type": "library",
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "ipl\\Validator\\": "src"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "description": "Icinga PHP Library - Common validators and validator chaining",
+            "homepage": "https://github.com/Icinga/ipl-validator",
+            "support": {
+                "issues": "https://github.com/Icinga/ipl-validator/issues",
+                "source": "https://github.com/Icinga/ipl-validator/tree/v0.3.0"
+            },
+            "install-path": "../ipl/validator"
+        },
+        {
+            "name": "ipl/web",
+            "version": "v0.4.0",
+            "version_normalized": "0.4.0.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/Icinga/ipl-web.git",
+                "reference": "ec2db193e6125056f81989c69b80f4b8da412eba"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/Icinga/ipl-web/zipball/ec2db193e6125056f81989c69b80f4b8da412eba",
+                "reference": "ec2db193e6125056f81989c69b80f4b8da412eba",
+                "shasum": ""
+            },
+            "require": {
+                "ext-json": "*",
+                "fortawesome/font-awesome": "^5.13",
+                "ipl/html": ">=0.4.0",
+                "ipl/stdlib": ">=0.11.0",
+                "php": ">=7.0"
+            },
+            "time": "2022-03-23T10:19:52+00:00",
+            "type": "library",
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "ipl\\Web\\": "src"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "description": "Icinga PHP Library - Web Components",
+            "homepage": "https://github.com/Icinga/ipl-web",
+            "keywords": [
+                "html"
+            ],
+            "support": {
+                "issues": "https://github.com/Icinga/ipl-web/issues",
+                "source": "https://github.com/Icinga/ipl-web/tree/v0.4.0"
+            },
+            "install-path": "../ipl/web"
+        },
+        {
+            "name": "psr/http-message",
+            "version": "1.0.1",
+            "version_normalized": "1.0.1.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/php-fig/http-message.git",
+                "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
+                "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.3.0"
+            },
+            "time": "2016-08-06T14:39:51+00:00",
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "1.0.x-dev"
+                }
+            },
+            "installation-source": "dist",
+            "autoload": {
+                "psr-4": {
+                    "Psr\\Http\\Message\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "PHP-FIG",
+                    "homepage": "http://www.php-fig.org/"
+                }
+            ],
+            "description": "Common interface for HTTP messages",
+            "homepage": "https://github.com/php-fig/http-message",
+            "keywords": [
+                "http",
+                "http-message",
+                "psr",
+                "psr-7",
+                "request",
+                "response"
+            ],
+            "support": {
+                "source": "https://github.com/php-fig/http-message/tree/master"
+            },
+            "install-path": "../psr/http-message"
+        }
+    ],
+    "dev": true,
+    "dev-package-names": []
+}


=====================================
vendor/composer/installed.php
=====================================
@@ -0,0 +1,113 @@
+<?php return array(
+    'root' => array(
+        'pretty_version' => 'dev-main',
+        'version' => 'dev-main',
+        'type' => 'project',
+        'install_path' => __DIR__ . '/../../',
+        'aliases' => array(),
+        'reference' => '0510cdda4060e3b22899d86aabcd41dea1f9a0ee',
+        'name' => 'icinga/icinga-php-library',
+        'dev' => true,
+    ),
+    'versions' => array(
+        'evenement/evenement' => array(
+            'pretty_version' => 'v2.1.0',
+            'version' => '2.1.0.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../evenement/evenement',
+            'aliases' => array(),
+            'reference' => '6ba9a777870ab49f417e703229d53931ed40fd7a',
+            'dev_requirement' => false,
+        ),
+        'fortawesome/font-awesome' => array(
+            'pretty_version' => '5.15.4',
+            'version' => '5.15.4.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../fortawesome/font-awesome',
+            'aliases' => array(),
+            'reference' => '7d3d774145ac38663f6d1effc6def0334b68ab7e',
+            'dev_requirement' => false,
+        ),
+        'icinga/icinga-php-library' => array(
+            'pretty_version' => 'dev-main',
+            'version' => 'dev-main',
+            'type' => 'project',
+            'install_path' => __DIR__ . '/../../',
+            'aliases' => array(),
+            'reference' => '0510cdda4060e3b22899d86aabcd41dea1f9a0ee',
+            'dev_requirement' => false,
+        ),
+        'ipl/html' => array(
+            'pretty_version' => 'v0.5.0',
+            'version' => '0.5.0.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../ipl/html',
+            'aliases' => array(),
+            'reference' => '3dcd3418a6850fb357ac2a55a9027fc133fb6aa2',
+            'dev_requirement' => false,
+        ),
+        'ipl/i18n' => array(
+            'pretty_version' => 'v0.1.1',
+            'version' => '0.1.1.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../ipl/i18n',
+            'aliases' => array(),
+            'reference' => '104a31ada051d1d8456e4a29021a1a4ce750aa07',
+            'dev_requirement' => false,
+        ),
+        'ipl/orm' => array(
+            'pretty_version' => 'v0.3.0',
+            'version' => '0.3.0.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../ipl/orm',
+            'aliases' => array(),
+            'reference' => '14de55506c4689180ba06f1d7d3ac5353a4177f3',
+            'dev_requirement' => false,
+        ),
+        'ipl/sql' => array(
+            'pretty_version' => 'v0.4.1',
+            'version' => '0.4.1.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../ipl/sql',
+            'aliases' => array(),
+            'reference' => '6b9f13ab43c42507ad0c8836f6b0a09dae6d8886',
+            'dev_requirement' => false,
+        ),
+        'ipl/stdlib' => array(
+            'pretty_version' => 'v0.11.0',
+            'version' => '0.11.0.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../ipl/stdlib',
+            'aliases' => array(),
+            'reference' => 'edbb664725f0762012329fca0fa4e1ed53896a28',
+            'dev_requirement' => false,
+        ),
+        'ipl/validator' => array(
+            'pretty_version' => 'v0.3.0',
+            'version' => '0.3.0.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../ipl/validator',
+            'aliases' => array(),
+            'reference' => 'e32eeec7bdaa1fbdf7c2734546835a72d799d4e7',
+            'dev_requirement' => false,
+        ),
+        'ipl/web' => array(
+            'pretty_version' => 'v0.4.0',
+            'version' => '0.4.0.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../ipl/web',
+            'aliases' => array(),
+            'reference' => 'ec2db193e6125056f81989c69b80f4b8da412eba',
+            'dev_requirement' => false,
+        ),
+        'psr/http-message' => array(
+            'pretty_version' => '1.0.1',
+            'version' => '1.0.1.0',
+            'type' => 'library',
+            'install_path' => __DIR__ . '/../psr/http-message',
+            'aliases' => array(),
+            'reference' => 'f6561bf28d520154e4b0ec72be95418abe6d9363',
+            'dev_requirement' => false,
+        ),
+    ),
+);


=====================================
vendor/composer/platform_check.php
=====================================
@@ -0,0 +1,26 @@
+<?php
+
+// platform_check.php @generated by Composer
+
+$issues = array();
+
+if (!(PHP_VERSION_ID >= 70033)) {
+    $issues[] = 'Your Composer dependencies require a PHP version ">= 7.0.33". You are running ' . PHP_VERSION . '.';
+}
+
+if ($issues) {
+    if (!headers_sent()) {
+        header('HTTP/1.1 500 Internal Server Error');
+    }
+    if (!ini_get('display_errors')) {
+        if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') {
+            fwrite(STDERR, 'Composer detected issues in your platform:' . PHP_EOL.PHP_EOL . implode(PHP_EOL, $issues) . PHP_EOL.PHP_EOL);
+        } elseif (!headers_sent()) {
+            echo 'Composer detected issues in your platform:' . PHP_EOL.PHP_EOL . str_replace('You are running '.PHP_VERSION.'.', '', implode(PHP_EOL, $issues)) . PHP_EOL.PHP_EOL;
+        }
+    }
+    trigger_error(
+        'Composer detected issues in your platform: ' . implode(' ', $issues),
+        E_USER_ERROR
+    );
+}


=====================================
vendor/ipl/sql/src/Connection.php
=====================================
@@ -191,7 +191,7 @@ class Connection implements Quoter
     public function ping($reconnect = true)
     {
         try {
-            $this->exec('SELECT 1');
+            $this->query('SELECT 1')->closeCursor();
         } catch (Exception $e) {
             if (! $reconnect) {
                 return false;



View it on GitLab: https://salsa.debian.org/nagios-team/icinga-php-library/-/compare/7ac75a5ddf18838a48e62d69045365347a5a0111...c9af87ac88841b84f3c28d87cf585f6f4b928b78

-- 
View it on GitLab: https://salsa.debian.org/nagios-team/icinga-php-library/-/compare/7ac75a5ddf18838a48e62d69045365347a5a0111...c9af87ac88841b84f3c28d87cf585f6f4b928b78
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-nagios-changes/attachments/20220426/316c92d1/attachment-0001.htm>


More information about the pkg-nagios-changes mailing list