1 | Revision history for IO::AIO |
1 | Revision history for IO::AIO |
2 | |
2 | |
3 | 1.3 |
3 | - no longer include $Config{libs}, as distros include too much |
|
|
4 | garbage in their that is not installed on typical systems |
|
|
5 | (for example, debian links perl against -lgdbm and many more |
|
|
6 | libraries despite perl not needing it, slowing down startup and |
|
|
7 | wasting memory). |
|
|
8 | |
|
|
9 | 1.6 Tue Aug 30 17:44:44 CEST 2005 |
|
|
10 | - added aio_readdir, aio_scandir. |
|
|
11 | - added aio_sendfile, including sendfile emulation when sendfile |
|
|
12 | isn't available. Linux, FreeBSD and HP-UX might work (sendfilev |
|
|
13 | support is unavailable on my solaris 8 machine, but preliminary |
|
|
14 | code is there. What's lacking is configury stuff and testing...). |
|
|
15 | |
|
|
16 | 1.5 Sat Aug 20 02:32:19 CEST 2005 |
|
|
17 | - create the aio threads on demand only (good after forking). |
|
|
18 | - somebody nagged about C89 compatibility, so this release should |
|
|
19 | be C89 compatible, but no guarantees for future ones. |
|
|
20 | - abort when the configure script fails. |
|
|
21 | |
|
|
22 | 1.4 Wed Aug 17 08:07:27 CEST 2005 |
|
|
23 | - forget to recreate the pipe after forking, this could cause |
|
|
24 | deadlocks. |
|
|
25 | |
|
|
26 | 1.3 Wed Aug 17 07:25:54 CEST 2005 |
4 | - properly propagate exceptions from callbacks, instead of silently |
27 | - properly propagate exceptions from callbacks, instead of silently |
5 | eating them. |
28 | eating them. |
6 | - be more careful during fork and allow recursive forks from within |
29 | - use a different fork algorithm that avoids recursive callback |
7 | atfork handlers *iff* the pthreads library in use allows it. |
30 | invocations and reduces fork latency in busy processes. |
8 | - fix a bug where the buffer scalar in aio_read got assigned the wrong |
31 | - fix a bug where the buffer scalar in aio_read got assigned the wrong |
9 | length after reading. |
32 | length after reading. |
10 | - fix a bug where the child would process some outstanding requests |
33 | - fix a bug where the child would process some outstanding requests |
11 | from the parent. |
34 | from the parent. |
12 | - make a copy of the callback scalar, to avoid some very uncommon |
35 | - make a copy of the callback scalar, to avoid some very uncommon |
13 | (but valid) usages where the callback scalar changes. |
36 | (but valid) usages where the callback scalar changes. |
14 | - the callback was never freed in aio_read/aio_write. |
37 | - the callback was never freed in aio_read/aio_write. |
|
|
38 | - aio_read/aio_write will now set the readonly flag on the data |
|
|
39 | scalar for better error reporting. |
15 | |
40 | |
16 | 1.2 Wed Aug 17 01:22:58 CEST 2005 |
41 | 1.2 Wed Aug 17 01:22:58 CEST 2005 |
17 | - verified on cygwin, linux/amd64+ia32+alpha, solaris. |
42 | - verified on cygwin, linux/amd64+ia32+alpha, solaris. |
18 | - use SvPVbyte for filenames now. You *need* to encode your strings to |
43 | - use SvPVbyte for filenames now. You *need* to encode your strings to |
19 | the external filename encoding first. |
44 | the external filename encoding first. |