ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/Coro/Changes
(Generate patch)

Comparing Coro/Changes (file contents):
Revision 1.370 by root, Mon Sep 22 05:40:21 2008 UTC vs.
Revision 1.411 by root, Fri Nov 14 07:22:11 2008 UTC

1Revision history for Perl extension Coro. 1Revision history for Perl extension Coro.
2 2
3TODO: should explore PerlIO::via::CoroCede and PerlIO::via::CoroAIO. 3TODO: should explore PerlIO::coroaio (perl leaks like hell).
4TODO: maybe implement a default message channel, very much like Erlang's 4TODO: maybe implement a default message channel, very much like Erlang's
5 actor model (which is cool in a lot of important aspects (failures!), 5 actor model (which is cool in a lot of important aspects (failures!),
6 but very lacking in others (higher level ipc)). 6 but very lacking in others (higher level ipc)).
7 7
84.747 85.0
9 - NEW ARCHITECTURE: use 4.912 for the stable version.
10 - bump API version to 7 - all dependents must be recompiled.
11 - directly patch the entersub opcode calling ssl functions (cede,
12 transfer and so on). this does speed up context switching by
13 up to 10%. More importanly, it frees us from the hardcoded
14 behaviour of entersub, so we might actually be able to return
15 something from those functions.
16 - take advanatge of __builtin_frame_address on gcc.
17 - expose THX in coroapi (not sure whether this was a wise decision).
18
194.912 Thu Nov 13 18:31:23 CET 2008
20 - minor cleanups.
21 - use much larger stacks on linux and perl < 5.8.8.
22 - Coro::Debug::new_unix_server did not unlink the socket
23 when destroyed.
24
254.911 Tue Nov 11 04:26:17 CET 2008
26 - "port" to threaded perls.
27
284.91 Mon Nov 10 05:36:38 CET 2008
29 - the ->throw exception object no longer leaks.
30 - creating a new cctx leaked a scopestack entry (memleak).
31 - new coroutines didn't get created with a zero flags field
32 (unknown impact).
33 - calling ->throw on a not-yet-started coroutine should now work
34 instead of being ignored.
35 - ->throw is now supported on Coro::State objects.
36 - clean up cctx creation code a bit.
37 - entersub is actually a UNOP, not a LOGOP (not a bugfix).
38
394.9 Sat Nov 8 17:45:27 CET 2008
40 - (libcoro) did not preserve rbp with CORO_ASM (we are getting there).
41 - (libcoro) no longer leak threads in the experimental pthread backend,
42 also speed it up considerably.
43 - (libcoro) do not rely on makecontext passing void *'s unscathed.
44 - fix compiletime dependencies on libcoro in the Makefile.
45 - cctx_count wasn't always updated properly.
46 - Coro::State::cctx_stacksize wasn't applied correctly.
47 - new function Coro::State::cctx_max_idle.
48 - the default max number of idle C contexts is now 4.
49 - (libcoro) try harder to get _setjmp/_longjmp.
50 - (libcoro) cleanup and extend the libcoro API to officially
51 allow the creation of empty source contexts.
52 - very experimental workaround for the totally broken netbsd platform.
53 - tried to hack around openbsd bugs.
54
554.804 Wed Nov 5 16:36:00 CET 2008
56 - Coro::Debug::new_unix_server would not create a non-blocking listening
57 socket, sometimes causing freezes.
58 - (libcoro) fix misaligned stack points for setjmp and assembly
59 methods, which can cause crashes on x86/x86_64 with a sufficiently
60 aggressive compiler.
61 - new function: Coro::Debug::new_tcp_server.
62 - move ->throw into the Coro class because it only works on coro objects.
63
644.803 Mon Nov 3 17:16:12 CET 2008
65 - (libcoro) use a global asm statement to become independent of gcc
66 otpimisations for CORO_ASM (thanks to pippijn for the idea).
67 - try to workaround yet another broken bsd, this time dragonfly.
68
694.802 Thu Oct 30 10:56:12 CET 2008
70 - support -fno-omit-frame-pointer on x86 with the assembly method.
71 - tune 01_unblock.t tests a bit.
72
734.801 Wed Oct 22 18:33:37 CEST 2008
74 - improve readline speed for very long "lines".
75 - backport to 5.8.8.
76
774.8 Thu Oct 2 13:34:40 CEST 2008
78 - new function Coro::AIO::aio_wait.
79 - Coro.:AIO and Coro::BDB now "use Coro::AnyEvent".
80 - greatly speed up and reduce memory usage of Coro::AIO requests.
81 - implement some other ยต-optimisations.
82
834.749 Mon Sep 29 14:40:12 CEST 2008
84 - port to slow and broken pseudo-threaded perls. (courtesy pippijn).
85
864.748 Sat Sep 27 14:03:19 CEST 2008
87 - implement, but do not document, PerlIO::cede(granularity).
88 - Coro::Storable forgot to wrap Storable::pstore.
89 - work around the multitude of leaks and memory corruption
90 bugs in PerlIO::via by using our own C-level perliol. As a side
91 effect, Coro::Storable is now much, much, much faster.
92
934.747 Tue Sep 23 01:59:41 CEST 2008
9 - fix a per-cv memleak (one empty array was leaked per 94 - fix a per-cv memleak (one empty array was leaked per
10 code reference). 95 code reference).
11 - avoid a crash in coro->call|rss when the coroutine was already 96 - avoid a crash in coro->call|rss when the coroutine was already
12 destroyed (most noticably when using Coro::Debug::ps :) 97 destroyed (most noticably when using Coro::Debug::ps :)
13 - also protect *Storable::FILE. 98 - also protect *Storable::FILE.
99 - push up default storable granularity to 20ms.
14 100
154.746 Sun Sep 21 03:22:20 CEST 2008 1014.746 Sun Sep 21 03:22:20 CEST 2008
16 - be more insistent on locking Storable against reentrancy 102 - be more insistent on locking Storable against reentrancy
17 in Coro::Storable. 103 in Coro::Storable.
18 - move swap_def?v and throw to Coro::State, as documented. 104 - move swap_def?v and throw to Coro::State, as documented.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines