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

Comparing Coro/Changes (file contents):
Revision 1.134 by root, Wed Nov 1 22:02:45 2006 UTC vs.
Revision 1.169 by root, Sat Dec 2 18:01:30 2006 UTC

1Revision history for Perl extension Coro. 1Revision history for Perl extension Coro.
2 2
3TODO: possibly convert some of the Event modules into AnyEvent users. 3TODO: transfer flags must be per state
4
53.0
6 - the "FINALLY COMPLETELY STABLE" release (coming soon:
7 the "FAMOUS LAST WORDS" release).
8 - implement a new stack sharing algorithm, which uses a stack
9 pool (size currently hardcoded).
10 - make stack sharing mandatory (it no longer uses a heuristic).
11 - eval/die no longer cause weird problems under heavy use.
12 - Coro::Event could cause livelocks if it was used but
13 no Coro::Event watchers were used.
14 - Coro::Event now uses asynccheck as prepare does not
15 check for changed watchers.
16 - Coro::Event should be cleaner and more efficient now.
17 - new utility function Coro::unblock_sub.
18 - document the sad fact that Event is no longer reentrant.
19 - putting a coroutine into the ready queue twice could under
20 some circumstances lead to stack corruption.
21 - minor incompatibility: subclassing Coro::State is supported
22 directly now without going through a _coro_state member.
23 - state/coro switching is much faster now.
24 - very minor optimisations and code/documentation cleanup.
25 - avoid problems due to compiler inlining.
26 - removed timers from Coro::Timer -> use AnyEvent instead.
27 - replaced Coro::idle coroutine by (cleaner) idle handler.
28 - updated to newest libcoro.
29 - implement enhanced support for valgrind.
30 - implement is_ready and return value for ready.
31 - removed Coro::Cont, it was a misnomer (it's generators),
32 and it was somewhat annoying to get it right. Will come back
33 if somebody asks for it :)
34 - many ->wait methods and Coro::Event could return
35 spuriously without the event having happened.
36
372.5 Tue Nov 7 12:22:33 CET 2006
38 - made Coro::Util, Coro::Select, Coro::Handle and Coro::Socket
39 use AnyEvent, moved them to Coro/.
40 - added Coro::LWP which contains all the uglyness required to
41 make LWP non-blocking.
42 - should work with perl 5.9.x now (Andreas König made me do it).
43 - fixed another bug in Coro::Select when the timeout was undef.
44 - reuse PL_start_env for all coros, saves some memory per coroutine.
45 - manage PL_top_env differently, hopefully to avoid panic: top_env.
46 - timeout argument was not properly used in Coro::Socket.
47 - allow limited forms of subclassing in Coro::Handle/Coro::Socket.
48 - emulate undocumented(!) functionality of IO::Socket required
49 by LWP(!!).
50 - updated eg/lwp to work with newer lwp's.
51 - remove "FATAL: uncaught exception" prefix. Coroutines that die
52 kill the whole process, just as exceptions in the main "coroutine"
53 did already.
4 54
52.1 Wed Nov 1 23:01:13 CET 2006 552.1 Wed Nov 1 23:01:13 CET 2006
6 - fix a long-standing bug in Coro::Select where select with 56 - fix a long-standing bug in Coro::Select where select with
7 zero timeout would instead change the current default filehandle. 57 zero timeout would instead change the current default filehandle.
8 - use a simpler and hopefully more robust way to clone padlists 58 - use a simpler and hopefully more robust way to clone padlists

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines