eio 1.0.0

Provides interface to the libeio library


This extension provides interface to the libeio library written by Marc Lehmann
(see http://software.schmorp.de/pkg/libeio.html).

Libeio is a an asynchronous I/O library. Features basically include
asynchronous versions of POSIX API(read, write, open, close, stat, unlink,
fdatasync, mknod, readdir etc.); sendfile (native on Solaris, Linux, HP-UX,
FreeBSD); readahead. libeio itself emulates the system calls, if they are not
available on specific(UNIX-like) platform.

Currently this extension supports GNU/Linux and BSD platforms only. But you can
try it on any UNIX OS.

License: php

Changes

Fix: eio_write() wrote garbage when 'str' arg passed by ref in a nested call with 'use' keyword
Fix: eio_write() wrote garbage when 'str' arg passed by value
Add: eio_init(). You must call eio_init() before using Eio in a forked child process.
Change: Cut 'st_' prefix in result of eio_*stat for the sake of simplicity and better 'compatability' with stat()
Change: Cut 'f_' prefix in result of eio_*statvfs
Add: eio_get_last_error()
Add: eio_req resource argument as the third optional callback argument
Add: phpt tests for the changes since 0.5.0b
Removed: warnings having no much sense even in debug mode
Refact: no separation for callbacks