--- Coro/Changes 2001/07/17 02:55:29 1.11 +++ Coro/Changes 2001/11/01 19:40:22 1.57 @@ -1,5 +1,102 @@ Revision history for Perl extension Coro. +0.51 Thu Nov 1 20:39:01 CET 2001 + - terminate/cancel now work properly (otherwise termination + could cause a "next coroutine is not and contains not..." + error. + - added Coro::Socket::shutdown. + - Coro::Event::loop no is the same as Event::loop. + - implemented terminate with args + join. + +0.5 Fri Sep 28 16:15:35 CEST 2001 + - fixed "print" on a Coro::Handle. The print method worked. + - small tweaks (seem to reduce memory consumption a lot) + in various modules. + - splendid use of "no warnings" scattered throughout. + - added Coro::Handle::rbuf, fixed Coro::Handle::fh. + +0.49 Sun Sep 16 02:42:45 CEST 2001 + - changed some method calls to function calls for speed + inside Coro::Handle. + - make Coro::Handle use an array instead of a hash for + speed reasons. + - IRIX mystery solved: it's SGI's NT, after all: "standard, huh?". + sjlj and ucontext should now work. + - IRIX-specific port for libcoro. + - swapped order of accept results to match IO::Socket. + - changed getsock/peername to sock/peername to match IO::Socket. + - fixed a bug that caused segfault when returning to main task + under some circumstances. + - other bugfixes. + +0.45 Sun Sep 2 02:54:01 CEST 2001 + - new method Coro::Handle::timeout. + - corrected speling of set...name to get...name in Coro::Socket. + - Coro::Socket::accept now returns a Coro::Socket, not a Coro::Handle. + - Coro::Handle now supports fileno and FILENO. + - added eg/myhttpd, a web server. + - Coro::Socket now accepts numeric ports as well as "port(number)" + syntax. + - moved some scheduling primitives into xs code. more to come. + - new simple priority system. + - implemented Coro::Event using XS, almost four times faster! + - small memory corruption problem fixed (boy that was difficult). + +0.13 Wed Aug 8 16:53:07 CEST 2001 + - new method Coro::Handle::readline. + - added eg/lwp and Coro::Handle::autoflush, to make LWP work. + (see eg/lwp on how to make LWP non-blocking). + - renamed Coro::Socket::new_inet to new. + - added Coro::Util, some utility functions. + - die/eval now works better (still get annoying (but true ;) + "Callback called exit" messages). + - Coro::Handle now supports timeout, and Coro::Socket Timeout. + - much better Coro::Socket support. + +0.12 Fri Jul 27 04:19:01 CEST 2001 + - do not use mmap if neither MAP_ANON nor MAP_ANONYMOUS is defined. + - very experimental stack sharing algorithm. not 100% safe but + should work well in practise ;) + - added Coro::RWLock. + - Coro::Specific now works. + +0.11 Tue Jul 24 22:49:21 CEST 2001 + - added specialized hack for newer and older linux versions (fast). + - renamed Coro::Event::IO to Coro::Handle. + - new module Coro::Socket. + +0.1 Tue Jul 24 01:47:53 CEST 2001 + - release candidate 3. A rather new internal structure :( + - the great renaming: Damian Conway gave me a suitable replacement + for yield. + - added Coro/libcoro, a portable coroutine implementation for C + (not even perl-dependent!!!), which can be used by Coro::State. + - renamed SAVE_DEFSV (on xs-level only) to avoid symbol clash in + perl-5.6. + - new function Coro::Event::idle. + - the idle process is now overriden + by default in Coro::Event. + - Coro::Channel now enforces the size. + - canceling events now works in all cases. + - Coro state now include $_ and $@. + - yet another bug workaround that I do not really understand :( + - new module Coro::Event::IO (very undocumented) to do + non-blocking i/o. + - performance tuning. + +0.08 Thu Jul 19 06:13:25 CEST 2001 + - release candidate 2 (new functionality). + - add Coro::State::flush function. + - transfer now supports a flags value (mostly for speed ATM). + - might compile and work in the presence of threads now. + - continuations have a saner syntax. + - no more memleaks. + +0.07 Tue Jul 17 17:40:18 CEST 2001 + - release candidate 1 ;) + - slightly nicer code. + - fixed a scheduling bug in Coro::Event. + 0.06 Tue Jul 17 04:23:24 CEST 2001 - ok, I found the showstopper - the same sub must not be re-entered in two different coroutines, otherwise => crash. I