Prep for 0.3.x release

This commit is contained in:
Aaron Piotrowski 2023-06-17 09:11:59 -05:00
parent 3c89bc46a5
commit 6c87a21af1
No known key found for this signature in database
GPG Key ID: 5B456E6AABA44A63
4 changed files with 195 additions and 148 deletions

View File

@ -12,11 +12,9 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
php: php:
- 8.2
- 8.1
- 8.0 - 8.0
- 7.4
- 7.3
- 7.2
- 7.1
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- uses: shivammathur/setup-php@v2 - uses: shivammathur/setup-php@v2

32
.github/workflows/release-validate.yml vendored Normal file
View File

@ -0,0 +1,32 @@
name: Validate pecl package
on:
push:
pull_request:
types: [opened, synchronize, reopened]
release:
types: [created]
jobs:
test_package_valid:
name: Release validate on PHP ${{ matrix.php }}
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest ]
php: [ 8.0, 8.1, 8.2 ]
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
- name: Sanity check package.xml and install ext-uv
run: |
bash validate-package.sh
for file in tests/*.phpt; do grep $(basename $file) package.xml >/dev/null || (echo "Missing $file from package.xml" ; exit 1); done

View File

@ -1,5 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<package packagerversion="1.9.4" 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"> <package packagerversion="1.9.4" 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>uv</name> <name>uv</name>
<channel>pecl.php.net</channel> <channel>pecl.php.net</channel>
<summary>libuv wrapper</summary> <summary>libuv wrapper</summary>
@ -10,137 +12,140 @@
<email>bobwei9@hotmail.com</email> <email>bobwei9@hotmail.com</email>
<active>yes</active> <active>yes</active>
</lead> </lead>
<date>2019-05-01</date> <lead>
<time>13:00:00</time> <name>Aaron Piotrowski</name>
<user>trowski</user>
<email>aaron@trowski.com</email>
<active>yes</active>
</lead>
<date>2023-06-17</date>
<version> <version>
<release>0.2.4</release> <release>0.3.0</release>
<api>0.2.4</api> <api>0.3.0</api>
</version> </version>
<stability> <stability>
<release>beta</release> <release>beta</release>
<api>beta</api> <api>beta</api>
</stability> </stability>
<license uri="http://www.php.net/license">PHP License</license> <license uri="http://www.php.net/license">PHP License</license>
<notes> <notes>0.3.0 release</notes>
- Fix Windows build
</notes>
<contents> <contents>
<dir name="/"> <dir name="/">
<dir name="examples"> <dir name="examples">
<file name="async.php" role="doc" /> <file name="async.php" role="doc"/>
<file name="check.php" role="doc" /> <file name="check.php" role="doc"/>
<file name="chmod.php" role="doc" /> <file name="chmod.php" role="doc"/>
<file name="debug_timer.php" role="doc" /> <file name="debug_timer.php" role="doc"/>
<file name="fingerd.php" role="doc" /> <file name="fingerd.php" role="doc"/>
<file name="fs.php" role="doc" /> <file name="fs.php" role="doc"/>
<file name="fs_poll.php" role="doc" /> <file name="fs_poll.php" role="doc"/>
<file name="fs_truncate.php" role="doc" /> <file name="fs_truncate.php" role="doc"/>
<file name="fsevevnt.php" role="doc" /> <file name="fstat.php" role="doc"/>
<file name="fstat.php" role="doc" /> <file name="fsw.php" role="doc"/>
<file name="fsw.php" role="doc" /> <file name="getaddrinfo.php" role="doc"/>
<file name="getaddrinfo.php" role="doc" /> <file name="idle.php" role="doc"/>
<file name="gethostbyname.php" role="doc" /> <file name="lstat.php" role="doc"/>
<file name="idle.php" role="doc" /> <file name="mkdir.php" role="doc"/>
<file name="lstat.php" role="doc" /> <file name="pipe.php" role="doc"/>
<file name="mkdir.php" role="doc" /> <file name="pipe_bind_connect.php" role="doc"/>
<file name="pipe.php" role="doc" /> <file name="poll.php" role="doc"/>
<file name="pipe_bind_connect.php" role="doc" /> <file name="prepare.php" role="doc"/>
<file name="poll.php" role="doc" /> <file name="queue.php" role="doc"/>
<file name="prepare.php" role="doc" /> <file name="readdir.php" role="doc"/>
<file name="queue.php" role="doc" /> <file name="readlink.php" role="doc"/>
<file name="readdir.php" role="doc" /> <file name="rename.php" role="doc"/>
<file name="readlink.php" role="doc" /> <file name="rmdir.php" role="doc"/>
<file name="rename.php" role="doc" /> <file name="run_once.php" role="doc"/>
<file name="request.php" role="doc" /> <file name="sendfile.php" role="doc"/>
<file name="rmdir.php" role="doc" /> <file name="spawn.php" role="doc"/>
<file name="run_once.php" role="doc" /> <file name="spawn_fd.php" role="doc"/>
<file name="sendfile.php" role="doc" /> <file name="stat.php" role="doc"/>
<file name="spawn.php" role="doc" /> <file name="tcp_bind.php" role="doc"/>
<file name="spawn_fd.php" role="doc" /> <file name="tcp_bind6.php" role="doc"/>
<file name="stat.php" role="doc" /> <file name="timer.php" role="doc"/>
<file name="tcp_bind.php" role="doc" /> <file name="tty.php" role="doc"/>
<file name="tcp_bind6.php" role="doc" /> <file name="udp_bind.php" role="doc"/>
<file name="timer.php" role="doc" /> <file name="unlink.php" role="doc"/>
<file name="tty.php" role="doc" /> <file name="utime.php" role="doc"/>
<file name="udp_bind.php" role="doc" />
<file name="unlink.php" role="doc" />
<file name="utime.php" role="doc" />
</dir> </dir>
<dir name="tests"> <dir name="tests">
<file name="000-load.phpt" role="test" /> <file name="000-load.phpt" role="test"/>
<file name="001-constants.phpt" role="test" /> <file name="001-constants.phpt" role="test"/>
<file name="002-uv_loop_delete_segfault.phpt" role="test" /> <file name="002-uv_loop_delete_segfault.phpt" role="test"/>
<file name="003-uv_write_different-callbacks.phpt" role="test" /> <file name="003-uv_write_different-callbacks.phpt" role="test"/>
<file name="004-uv_write-no-memory_leak.phpt" role="test" /> <file name="004-uv_write-no-memory_leak.phpt" role="test"/>
<file name="005-uv_listen_cb-not-destroyed.phpt" role="test" /> <file name="005-uv_listen_cb-not-destroyed.phpt" role="test"/>
<file name="006-uv_async_init-no-memory-leak.phpt" role="test" /> <file name="006-uv_async_init-no-memory-leak.phpt" role="test"/>
<file name="010-uv_ip4_addr.phpt" role="test" /> <file name="010-uv_ip4_addr.phpt" role="test"/>
<file name="010-uv_ip4_name.phpt" role="test" /> <file name="010-uv_ip4_name.phpt" role="test"/>
<file name="010-uv_ip6_addr.phpt" role="test" /> <file name="010-uv_ip6_addr.phpt" role="test"/>
<file name="010-uv_ip6_name.phpt" role="test" /> <file name="010-uv_ip6_name.phpt" role="test"/>
<file name="010-uv_loop_new.phpt" role="test" /> <file name="010-uv_loop_new.phpt" role="test"/>
<file name="100-uv_async.phpt" role="test" /> <file name="100-uv_async.phpt" role="test"/>
<file name="100-uv_check.phpt" role="test" /> <file name="100-uv_check.phpt" role="test"/>
<file name="100-uv_prepare.phpt" role="test" /> <file name="100-uv_prepare.phpt" role="test"/>
<file name="100-uv_stop.phpt" role="test" /> <file name="100-uv_stop.phpt" role="test"/>
<file name="100-uv_timer.phpt" role="test" /> <file name="100-uv_timer.phpt" role="test"/>
<file name="101-uv-idle.phpt" role="test" /> <file name="101-uv-idle.phpt" role="test"/>
<file name="200-ares_getaddrinfo.phpt" role="test" /> <file name="200-ares_getaddrinfo.phpt" role="test"/>
<file name="300-fs.phpt" role="test" /> <file name="300-fs.phpt" role="test"/>
<file name="310-fs-mkdir.phpt" role="test" /> <file name="310-fs-mkdir.phpt" role="test"/>
<file name="311-fs-rmdir.phpt" role="test" /> <file name="310-fs-scandir.phpt" role="test"/>
<file name="320-fs-event.phpt" role="test" /> <file name="311-fs-rmdir.phpt" role="test"/>
<file name="320-fs-poll.phpt" role="test" /> <file name="320-fs-event.phpt" role="test"/>
<file name="320-fs-sendfile.phpt" role="test" /> <file name="320-fs-poll.phpt" role="test"/>
<file name="330-poll-pipe.phpt" role="test" /> <file name="320-fs-readlink.phpt" role="test"/>
<file name="330-poll.phpt" role="test" /> <file name="320-fs-sendfile.phpt" role="test"/>
<file name="399-fs-stat-regression-no14.phpt" role="test" /> <file name="330-poll-pipe.phpt" role="test"/>
<file name="400-tcp_bind.phpt" role="test" /> <file name="330-poll.phpt" role="test"/>
<file name="400-tcp_bind6.phpt" role="test" /> <file name="399-fs-stat-regression-no14.phpt" role="test"/>
<file name="500-udp_bind.phpt" role="test" /> <file name="400-tcp_bind.phpt" role="test"/>
<file name="500-udp_bind6.phpt" role="test" /> <file name="400-tcp_bind6.phpt" role="test"/>
<file name="600-pipe_bind.phpt" role="test" /> <file name="500-udp_bind.phpt" role="test"/>
<file name="700-uv_rwlock.phpt" role="test" /> <file name="500-udp_bind6.phpt" role="test"/>
<file name="700-uv_wrlock.phpt" role="test" /> <file name="600-pipe_bind.phpt" role="test"/>
<file name="701-uv_mutex.phpt" role="test" /> <file name="700-uv_rwlock.phpt" role="test"/>
<file name="800-uv_queue_work.phpt" role="test" /> <file name="700-uv_wrlock.phpt" role="test"/>
<file name="800-uv_spawn-issue59.phpt" role="test" /> <file name="701-uv_mutex.phpt" role="test"/>
<file name="800-uv_tty.phpt" role="test" /> <file name="800-broken-uv_spawn-issue-79.phpt" role="test"/>
<file name="999-uv_chdir.phpt" role="test" /> <file name="800-uv_queue_work.phpt" role="test"/>
<file name="999-uv_cpu_info.phpt" role="test" /> <file name="800-uv_stdio_new-issue59.phpt" role="test"/>
<file name="999-uv_cpuinfo.phpt" role="test" /> <file name="800-uv_tty.phpt" role="test"/>
<file name="999-uv_cwd.phpt" role="test" /> <file name="999-uv_chdir.phpt" role="test"/>
<file name="999-uv_exepath.phpt" role="test" /> <file name="999-uv_cpu_info.phpt" role="test"/>
<file name="999-uv_get_free_memory.phpt" role="test" /> <file name="999-uv_cpuinfo.phpt" role="test"/>
<file name="999-uv_get_total_memory.phpt" role="test" /> <file name="999-uv_cwd.phpt" role="test"/>
<file name="999-uv_hrtime.phpt" role="test" /> <file name="999-uv_exepath.phpt" role="test"/>
<file name="999-uv_loadavg.phpt" role="test" /> <file name="999-uv_get_free_memory.phpt" role="test"/>
<file name="999-uv_resident_set_memory.phpt" role="test" /> <file name="999-uv_get_total_memory.phpt" role="test"/>
<file name="999-uv_uptime.phpt" role="test" /> <file name="999-uv_hrtime.phpt" role="test"/>
<file name="fixtures/hello.data" role="test" /> <file name="999-uv_loadavg.phpt" role="test"/>
<file name="fixtures/poll" role="test" /> <file name="999-uv_resident_set_memory.phpt" role="test"/>
<file name="fixtures/proc.php" role="test" /> <file name="999-uv_uptime.phpt" role="test"/>
<file name="fixtures/hello.data" role="test"/>
<file name="fixtures/poll" role="test"/>
<file name="fixtures/proc.php" role="test"/>
</dir> </dir>
<file name="config.m4" role="src" /> <file name="config.m4" role="src"/>
<file name="config.w32" role="src" /> <file name="config.w32" role="src"/>
<file name="LICENSE" role="doc" /> <file name="LICENSE" role="doc"/>
<file name="php_uv.c" role="src" /> <file name="php_uv.c" role="src"/>
<file name="php_uv.h" role="src" /> <file name="php_uv.h" role="src"/>
<file name="phpuv_dtrace.d" role="src" /> <file name="phpuv_dtrace.d" role="src"/>
<file name="README.md" role="doc" /> <file name="README.md" role="doc"/>
<file name="uv.c" role="src" /> <file name="uv.c" role="src"/>
</dir> </dir>
</contents> </contents>
<dependencies> <dependencies>
<required> <required>
<php> <php>
<min>7.0.0</min> <min>8.0.0</min>
</php> </php>
<pearinstaller> <pearinstaller>
<min>1.4.0b1</min> <min>1.4.0</min>
</pearinstaller> </pearinstaller>
</required> </required>
</dependencies> </dependencies>
<providesextension>uv</providesextension> <providesextension>uv</providesextension>
<extsrcrelease /> <extsrcrelease/>
</package> </package>

12
validate-package.sh Normal file
View File

@ -0,0 +1,12 @@
#!/bin/bash
VALIDATE_OUTPUT=`pear package-validate`
echo "VALIDATE_OUTPUT is $VALIDATE_OUTPUT"
if [[ "$VALIDATE_OUTPUT" == *"Error"* ]]; then
echo "Package appears to contain an error"
exit 255
fi
echo "Package appears valid"