<?xml version="1.0" encoding="UTF-8"?>
<package packagerversion="1.10.13" version="2.0" xmlns="http://pear.php.net/dtd/package-2.0" xmlns:tasks="http://pear.php.net/dtd/tasks-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://pear.php.net/dtd/tasks-1.0     http://pear.php.net/dtd/tasks-1.0.xsd     http://pear.php.net/dtd/package-2.0     http://pear.php.net/dtd/package-2.0.xsd">
 <name>excimer</name>
 <channel>pecl.php.net</channel>
 <summary>Interrupting timer and low-overhead sampling profiler</summary>
 <description>Calls a user-defined callback when a one-shot or periodic timer expires. Also a sampling profiler backend, which aggregates backtraces collected by a periodic timer.</description>
 <lead>
  <name>Tim Starling</name>
  <user>tstarling</user>
  <email>tstarling@wikimedia.org</email>
  <active>yes</active>
 </lead>
 <lead>
  <name>Kunal Mehta</name>
  <user>legoktm</user>
  <email>legoktm@debian.org</email>
  <active>yes</active>
 </lead>
 <lead>
  <name>Timo Tijhof</name>
  <user>krinkle</user>
  <email>krinkle@fastmail.com</email>
  <active>yes</active>
 </lead>
 <date>2025-05-20</date>
 <time>01:10:14</time>
 <version>
  <release>1.2.5</release>
  <api>1.2.5</api>
 </version>
 <stability>
  <release>stable</release>
  <api>stable</api>
 </stability>
 <license filesource="LICENSE" uri="https://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</license>
 <notes>
- Fix build error with libtool 1.5
 </notes>
 <contents>
  <dir name="/">
   <file md5sum="0aa7f0a5cd899a225901afd380319038" name="stubs/ExcimerLog.php" role="doc" />
   <file md5sum="8cfea3d8ca63f1cc7ae74f199e19ca93" name="stubs/ExcimerLogEntry.php" role="doc" />
   <file md5sum="b02871615538eedd5a3a7a03e975756d" name="stubs/ExcimerProfiler.php" role="doc" />
   <file md5sum="b251acf07e78ca75fdaa5eb6c6a0ce73" name="stubs/ExcimerTimer.php" role="doc" />
   <file md5sum="9accdf946903c9562f33ab45df17e51e" name="stubs/globals.php" role="doc" />
   <file md5sum="221dc9ece9d3c9c2f4bea6f9f888b326" name="tests/aliasing.phpt" role="test" />
   <file md5sum="e94942fe8caedd2ecd7258f192a724e9" name="tests/concurrentTimers.phpt" role="test" />
   <file md5sum="74b93adf80764ab681689f42f0215eb7" name="tests/cpu.phpt" role="test" />
   <file md5sum="859041313c841854a60ae1f117378a9b" name="tests/delayedPeriodic.phpt" role="test" />
   <file md5sum="4625e39fad2cfc917e9e509154c9c9e8" name="tests/getTime.phpt" role="test" />
   <file md5sum="c844331d2faf1bce2fd1f9408e45c3c6" name="tests/maxDepth.phpt" role="test" />
   <file md5sum="14d92b06b887066103fc046b1bca6056" name="tests/oneshot.phpt" role="test" />
   <file md5sum="9d8d49827d697d8b261619a2969c4303" name="tests/periodic.phpt" role="test" />
   <file md5sum="b7c27f8fbc9a44362e81ec95a3419cef" name="tests/real.phpt" role="test" />
   <file md5sum="7750b5958cdff5df75318b4454f0ea03" name="tests/stagger.phpt" role="test" />
   <file md5sum="8f3f3b78400c779f7fd9470d11abfcf0" name="tests/subprocess.phpt" role="test" />
   <file md5sum="fdfcb0f0cc2f526e69bac1df0b34512d" name="tests/timeout.phpt" role="test" />
   <file md5sum="a6980f8ed50b488b2b9b439b6aa78682" name="tests/timer.phpt" role="test" />
   <file md5sum="25ab31e97cae63720f56566084cd4173" name="timerlib/README.md" role="doc" />
   <file md5sum="c544f6d85653f68f7863700d9eca5398" name="timerlib/timerlib.h" role="src" />
   <file md5sum="fd1f66bcdae5d4ae5958d8da3e30a2ae" name="timerlib/timerlib_common.c" role="src" />
   <file md5sum="8eb919e64bf79c0dfe8e65c02db7b6c1" name="timerlib/timerlib_kqueue.c" role="src" />
   <file md5sum="4f239be38f779990be130af671f55288" name="timerlib/timerlib_kqueue.h" role="src" />
   <file md5sum="f3a238cb1cb8dbbc62dd71b12c2c0168" name="timerlib/timerlib_posix.c" role="src" />
   <file md5sum="218e6d5cca6dff19878f4d2204d2c29e" name="timerlib/timerlib_posix.h" role="src" />
   <file md5sum="6da1ff5fa18e27931e6dfe0a2575a34b" name="timerlib/timerlib_pthread_mutex.h" role="src" />
   <file md5sum="3b83ef96387f14655fc854ddc3c6bd57" name="LICENSE" role="doc" />
   <file md5sum="85046d6a7bb0864aeadccfa0ee0ae1f0" name="README.md" role="doc" />
   <file md5sum="0ed4850fee044bbc9a530fd93b9f24ad" name="config.m4" role="src" />
   <file md5sum="bbf3504e8fa1594ad735727671baa932" name="excimer.c" role="src" />
   <file md5sum="9ea97cce4b3511cc55f4bb8c277101cd" name="excimer_events.h" role="src" />
   <file md5sum="74c684829708b8c46dfc04c8b14163ff" name="excimer_log.c" role="src" />
   <file md5sum="85bc310c899d5df5aef13bd15af9048b" name="excimer_log.h" role="src" />
   <file md5sum="9699fa35dc080a4ced2ee4ca5eaffd47" name="excimer_mutex.c" role="src" />
   <file md5sum="e288165f7516cf6c655902c922665f8a" name="excimer_mutex.h" role="src" />
   <file md5sum="2c439f1318cc8aa5805f77dc15f02caf" name="excimer_timer.c" role="src" />
   <file md5sum="f7c99019c73e6eee476c5e9e33789d3e" name="excimer_timer.h" role="src" />
   <file md5sum="3ad496f9658a9e671b2f75b9803e86ab" name="php_excimer.h" role="src" />
   <file md5sum="690b22675c6ec7e971f4a3cd1e6ebb00" name="timerlib_config.h" role="src" />
  </dir>
 </contents>
 <dependencies>
  <required>
   <php>
    <min>7.1.0</min>
   </php>
   <pearinstaller>
    <min>1.8.0</min>
   </pearinstaller>
   <os>
    <name>unix</name>
   </os>
  </required>
 </dependencies>
 <providesextension>excimer</providesextension>
 <extsrcrelease />
 <changelog>
  <release>
   <date>2025-05-19</date>
   <version>
    <release>1.2.4</release>
    <api>1.2.4</api>
   </version>
   <notes>
- Rewrite the backend to work around a glibc timer aliasing bug (T391426).
  Timer creation and deletion are now more expensive, so applications should
  try to avoid unnecessary creation and deletion. It&apos;s cheaper to stop and
  start an existing timer. Handling events is cheaper, so profiling
  performance is improved.
- Compile with -fvisibility=hidden
   </notes>
  </release>
  <release>
   <date>2024-11-15</date>
   <version>
    <release>1.2.3</release>
    <api>1.2.3</api>
   </version>
   <notes>
- Fix start time stagger, broken by previous release
   </notes>
  </release>
  <release>
   <date>2024-07-31</date>
   <version>
    <release>1.2.2</release>
    <api>1.2.2</api>
   </version>
   <notes>
- Fix PHP 8.4 compatibility (patch by Remi Collet)
   </notes>
  </release>
  <release>
   <date>2024-02-29</date>
   <version>
    <release>1.2.1</release>
    <api>1.2.1</api>
   </version>
   <notes>
- Fix compiler warning in excimer_log
- Fix invalid OS requirement in package.xml, allow all &quot;unix&quot;
   </notes>
  </release>
  <release>
   <date>2024-02-28</date>
   <version>
    <release>1.2.0</release>
    <api>1.2.0</api>
   </version>
   <notes>
- Add support for BSD and macOS (only real/wall-clock, no CPU timer).
- Add excimer.default_max_depth and default to 1000 (previously unlimited).
   </notes>
  </release>
  <release>
   <date>2023-03-13</date>
   <version>
    <release>1.1.1</release>
    <api>1.1.1</api>
   </version>
   <notes>
- Restore support for PHP 7.1-7.3
   </notes>
  </release>
  <release>
   <date>2023-03-01</date>
   <version>
    <release>1.1.0</release>
    <api>1.1.0</api>
   </version>
   <notes>
- Fix leading semi-colon in ExcimerLog::formatCollapsed output
- Change ExcimerLog::formatCollapsed to mark truncated frames
- Add support for PHP 8.2
- Add ExcimerLog::getSpeedscopeData for Speedscope support
   </notes>
  </release>
  <release>
   <date>2022-05-07</date>
   <version>
    <release>1.0.4</release>
    <api>1.0.4</api>
   </version>
   <notes>
- Fix arginfo error for PHP 7.1
   </notes>
  </release>
  <release>
   <date>2022-05-04</date>
   <version>
    <release>1.0.3</release>
    <api>1.0.3</api>
   </version>
   <notes>
- Set return type on ExcimerLog::aggregateByFunction
- Set return type on ExcimerProfiler::getLog
   </notes>
  </release>
  <release>
   <date>2021-10-16</date>
   <version>
    <release>1.0.2</release>
    <api>1.0.2</api>
   </version>
   <notes>
- Fix Iterator prototypes for PHP 8.1
- Add extension version in phpinfo()
   </notes>
  </release>
  <release>
   <date>2021-09-29</date>
   <version>
    <release>1.0.1</release>
    <api>1.0.1</api>
   </version>
   <notes>
- Filter null bytes out of the collapsed output
- Fix segfault in ZTS mode
- Fix [-Wincompatible-pointer-types] with PHP 8
   </notes>
  </release>
  <release>
   <date>2021-02-26</date>
   <version>
    <release>1.0.0</release>
    <api>1.0.0</api>
   </version>
   <notes>
- Initial PECL release
   </notes>
  </release>
 </changelog>
</package>
