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.171 by root, Sun Dec 3 21:59:52 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 Sun Dec 3 22:57:25 CET 2006
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 allows multiple waiting coros and will wake up one
17 per event.
18 - Coro::Event should be cleaner and more efficient now.
19 - new utility function Coro::unblock_sub.
20 - document the sad fact that Event is no longer reentrant.
21 - putting a coroutine into the ready queue twice could under
22 some circumstances lead to stack corruption.
23 - minor incompatibility: subclassing Coro::State is supported
24 directly now without going through a _coro_state member.
25 - state/coro switching is much faster now.
26 - very minor optimisations and code/documentation cleanup.
27 - avoid problems due to compiler inlining.
28 - removed timers from Coro::Timer -> use AnyEvent instead.
29 - replaced Coro::idle coroutine by (cleaner) idle handler.
30 - updated to newest libcoro.
31 - implement enhanced support for valgrind.
32 - implement is_ready and return value for ready.
33 - removed Coro::Cont, it was a misnomer (it's generators),
34 and it was somewhat annoying to get it right. Will come back
35 if somebody asks for it :)
36 - many ->wait methods and Coro::Event could return
37 spuriously without the event having happened.
38
392.5 Tue Nov 7 12:22:33 CET 2006
40 - made Coro::Util, Coro::Select, Coro::Handle and Coro::Socket
41 use AnyEvent, moved them to Coro/.
42 - added Coro::LWP which contains all the uglyness required to
43 make LWP non-blocking.
44 - should work with perl 5.9.x now (Andreas König made me do it).
45 - fixed another bug in Coro::Select when the timeout was undef.
46 - reuse PL_start_env for all coros, saves some memory per coroutine.
47 - manage PL_top_env differently, hopefully to avoid panic: top_env.
48 - timeout argument was not properly used in Coro::Socket.
49 - allow limited forms of subclassing in Coro::Handle/Coro::Socket.
50 - emulate undocumented(!) functionality of IO::Socket required
51 by LWP(!!).
52 - updated eg/lwp to work with newer lwp's.
53 - remove "FATAL: uncaught exception" prefix. Coroutines that die
54 kill the whole process, just as exceptions in the main "coroutine"
55 did already.
4 56
52.1 Wed Nov 1 23:01:13 CET 2006 572.1 Wed Nov 1 23:01:13 CET 2006
6 - fix a long-standing bug in Coro::Select where select with 58 - fix a long-standing bug in Coro::Select where select with
7 zero timeout would instead change the current default filehandle. 59 zero timeout would instead change the current default filehandle.
8 - use a simpler and hopefully more robust way to clone padlists 60 - use a simpler and hopefully more robust way to clone padlists

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines