[PECL-CVS] [pecl-networking-gearman] master: Release 2.2.1

[email protected] (Rasmus Lerdorf) Tue, 7 Apr 2026 12:39:23 +0000
Newsgroups php.pecl.cvs
Message-ID <[email protected]>
Author: Rasmus Lerdorf (rlerdorf)
Date: 2026-04-07T08:39:16-04:00

Commit: https://github.com/php/pecl-networking-gearman/commit/554a7c93b0285835ad487aa601b905c431d999f9
Raw diff: https://github.com/php/pecl-networking-gearman/commit/554a7c93b0285835ad487aa601b905c431d999f9.diff

Release 2.2.1

Changed paths:
  A  README.md
  D  README
  M  ChangeLog
  M  composer.json
  M  package.xml
  M  php_gearman.h


Diff:

diff --git a/ChangeLog b/ChangeLog
index 5e186c2..3f3204f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Version 2.2.1
+-------------
+- Fix build failure on PHP 7.x with -Werror=incompatible-pointer-types (#61)
+- Convert README to Markdown
+
 Version 2.2.0
 -------------
 - Add SSL support via setSSL() for GearmanClient and GearmanWorker (#9)
diff --git a/README b/README
deleted file mode 100644
index 351aa1b..0000000
--- a/README
+++ /dev/null
@@ -1,67 +0,0 @@
-The Gearman PHP Extension provides a wrapper to libgearman. This
-gives the user the ability to write fully featured Gearman clients
-and workers in PHP, allowing them to quickly develop distributed
-applications.
-
-For more information about Gearman, see: http://www.gearman.org/
-
-Requirements
-    * For the 0.8.* versions, libgearman v0.14 or greater
-    * For the 1.0.* versions, libgearman v0.21 or greater
-    * For the 1.1.* versions, libgearman v1.1.0 or greater
-    * For the 2.0.* versions, testing is done against libgearman v1.1.8 and PHP 7.0-7.4
-    * For the 2.1.* versions, testing is done against libgearman v1.1.18 and PHP 7.2-8.6
-
-The Gearman PHP Extension requires the Gearman C server and library package
-to be installed. You can download the latest from:
-
-https://github.com/gearman/gearmand/releases
-
-See the README file in that package for installation instructions. Once
-it is installed you can compile the Gearman PHP Extension. You'll need
-to make sure you have the PHP development packages installed first
-(if you have 'phpize' command you’re all set). You'll also probably
-want the PHP command line interface installed as well (usually named
-php-cli). After extracting the Gearman PHP tarball, just run:
-
-phpize
-./configure
-make
-make install
-
-You then need to make PHP aware of the new extension by adding the
-following line to your php.ini:
-
-extension="gearman.so"
-
-You can then test if the module is configured correctly with the
-PHP cli:
-
-php --info | grep gearman
-
-To run a simple example
-
-cd examples
-
-1. Start the gearmand server in a separate terminal:
-
-gearmand
-
-
-2. In another terminal, change to this source directory and run:
-
-php examples/reverse_worker.php
-
-
-3. In another terminal, change to this source directory and run:
-
-php examples/reverse_client.php
-
-
-You should see some output from both the reverse client and worker
-scripts about the status and then a final result.
-
-
-Have fun!
-
-http://pecl.php.net/package/gearman
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..26ca0e3
--- /dev/null
+++ b/README.md
@@ -0,0 +1,70 @@
+# Gearman PHP Extension
+
+The Gearman PHP Extension provides a wrapper to libgearman. This gives the user the ability to write fully featured Gearman clients and workers in PHP, allowing them to quickly develop distributed applications.
+
+For more information about Gearman, see: http://www.gearman.org/
+
+## Requirements
+
+| Extension version | libgearman version | PHP version |
+|---|---|---|
+| 0.8.* | >= 0.14 | |
+| 1.0.* | >= 0.21 | |
+| 1.1.* | >= 1.1.0 | |
+| 2.0.* | >= 1.1.8 | 7.0 - 7.4 |
+| 2.1.* | >= 1.1.18 | 7.2 - 8.6 |
+
+The extension requires the Gearman C server and library package to be installed. You can download the latest from:
+
+https://github.com/gearman/gearmand/releases
+
+## Installation
+
+Make sure you have the PHP development packages installed (if you have the `phpize` command, you're all set). You'll also probably want the PHP command line interface installed as well (usually named `php-cli`).
+
+```bash
+phpize
+./configure
+make
+make install
+```
+
+Then add the following line to your `php.ini`:
+
+```ini
+extension="gearman.so"
+```
+
+Verify the module is loaded:
+
+```bash
+php --info | grep gearman
+```
+
+## Quick Start
+
+1. Start the gearmand server in a separate terminal:
+
+   ```bash
+   gearmand
+   ```
+
+2. In another terminal, start a worker:
+
+   ```bash
+   php examples/reverse_worker.php
+   ```
+
+3. In another terminal, run the client:
+
+   ```bash
+   php examples/reverse_client.php
+   ```
+
+You should see output from both scripts about the status and then a final result.
+
+## Links
+
+- PECL package: https://pecl.php.net/package/gearman
+- Gearman: http://www.gearman.org/
+- gearmand: https://github.com/gearman/gearmand
diff --git a/composer.json b/composer.json
index f64c08d..c3866e5 100644
--- a/composer.json
+++ b/composer.json
@@ -1,5 +1,5 @@
 {
-    "name": "php/pecl-networking-gearman",
+    "name": "pecl/gearman",
     "type": "php-ext",
     "description": "PHP wrapper to libgearman",
     "license": "PHP-3.01",
diff --git a/package.xml b/package.xml
index 4789a08..c887af6 100644
--- a/package.xml
+++ b/package.xml
@@ -16,10 +16,10 @@
   <email>[email protected]</email>
   <active>yes</active>
  </lead>
- <date>2026-04-04</date>
- <time>20:00:00</time>
+ <date>2026-04-07</date>
+ <time>12:00:00</time>
  <version>
-  <release>2.2.0</release>
+  <release>2.2.1</release>
   <api>2.2.0</api>
  </version>
  <stability>
@@ -28,16 +28,8 @@
  </stability>
  <license uri="http://www.php.net/license">PHP</license>
  <notes>
-- Add SSL support via setSSL() for GearmanClient and GearmanWorker (#9)
-- Fix jobs not retried when worker calls exit() mid-callback (#26)
-- Fix forked children causing premature job completion (#40)
-- Fix misleading "Unable to add worker function" exception message (#21)
-- Fix worker constructor error path cleanup (#17)
-- Add Homebrew Apple Silicon search path to config.m4 (#32)
-- Drop PHP 7.1, minimum is now PHP 7.2 (#42)
-- Support PHP 8.6 (#49)
-- Expose GEARMAN_*_STOP_WAIT_ON_SIGNAL constants (#51)
-- Add PIE support via composer.json
+- Fix build failure on PHP 7.x with -Werror=incompatible-pointer-types (#61)
+- Convert README to Markdown
  </notes>
  <contents>
   <dir name="/">
@@ -49,7 +41,7 @@
    <file name="examples/reverse_client.php" role="doc" />
    <file name="examples/reverse_client_task.php" role="doc" />
    <file name="examples/reverse_worker.php" role="doc" />
-   <file name="README" role="doc" />
+   <file name="README.md" role="doc" />
    <file name="CREDITS" role="doc" />
    <file name="LICENSE" role="doc" />
    <file name="ChangeLog" role="doc" />
@@ -169,6 +161,22 @@
  <extsrcrelease />
  <changelog>
 
+  <release>
+   <stability>
+    <release>stable</release>
+    <api>stable</api>
+   </stability>
+   <version>
+    <release>2.2.1</release>
+    <api>2.2.0</api>
+   </version>
+   <date>2026-04-07</date>
+   <notes>
+- Fix build failure on PHP 7.x with -Werror=incompatible-pointer-types (#61)
+- Convert README to Markdown
+   </notes>
+  </release>
+
   <release>
    <stability>
     <release>stable</release>
diff --git a/php_gearman.h b/php_gearman.h
index c8f5687..0a45f52 100644
--- a/php_gearman.h
+++ b/php_gearman.h
@@ -24,7 +24,7 @@
 #include <libgearman-1.0/status.h>
 
 /* module version */
-#define PHP_GEARMAN_VERSION "2.2.0"
+#define PHP_GEARMAN_VERSION "2.2.1"
 
 extern zend_module_entry gearman_module_entry;
 #define phpext_gearman_ptr &gearman_module_entry