Revision history for Perl extension Coro.
0.52 Tue Nov 6 21:36:18 CET 2001
- ported to cygwin (trivial).
patch by Gerrit P. Haase <gp@familiehaase.de>.
- small setjmp code fix by Sullivan.DanielJ@epamail.epa.gov.
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
see no easy solution to this problem, except by walking the call
chaing and saving/restoring the cv's, which is what I do now.
- memory leaks still latent, especially at thread termination.
- Coro::Event now works (haha).
0.05 Sun Jul 15 17:32:20 CEST 2001
- fixed a few issues in Coro::Event.
- I forgot to include Coro::Event in 0.04 :(:(:(
0.04 Sun Jul 15 05:24:59 CEST 2001
- @_ is now properly localized.
- Coro::State is now easier subclassable.
- Coro::Cont now coroutine-aware.
- Coro::Specific is a low-overhead module to create
coroutine-specific vars.
- Coro::Event provides a simple interface to Event.
0.03 Fri Jul 13 14:51:52 CEST 2001
- transfer() now implemented in XS (beware).
- new module Coro::Cont for really faked continuations.
- big internal architecture changes: Coro::State is now
really low-level and can thus be used to implement other
interesting things, While "Coro::" implements a process-like
model. Still crude and subject to change.
- $_ and $@ are no longer being localized.
0.02 Tue Jul 10 01:38:17 CEST 2001
- implemented "async" attribute.
- $_ and $@ are now localized.
- added Coro::Channel.
- more testcases, still no docs.
0.01 Tue Jul 3 02:18:41 CEST 2001
- original version; copied from Convert::Scalar.