[svn-upgrade] new version libcoro-perl (5.250)
Jonathan Yu
13 years ago
4 | 4 | TODO: myhttpd header parsing |
5 | 5 | TODO: channel->maxsize(newsize)? |
6 | 6 | TODO: http://www.microsoft.com/msj/archive/s2ce.aspx |
7 | ||
8 | 5.25 Thu Nov 11 01:08:39 CET 2010 | |
9 | - try a different approach on netbsd - netbsd 5 finally has marginally | |
10 | working pthreads, but still broken ucontext/sigaltstack. | |
11 | - openbsd 4.8 finally got their act together, Coro works out of the box | |
12 | with asm, setjmp and pthreads (no change, just informational). | |
7 | 13 | |
8 | 14 | 5.24 Sat Oct 23 11:27:12 CEST 2010 |
9 | 15 | - port to the EV 4.0 API. |
68 | 68 | |
69 | 69 | use base Exporter::; |
70 | 70 | |
71 | our $VERSION = 5.24; | |
71 | our $VERSION = 5.25; | |
72 | 72 | |
73 | 73 | our @EXPORT = (@IO::AIO::EXPORT, qw(aio_wait)); |
74 | 74 | our @EXPORT_OK = @IO::AIO::EXPORT_OK; |
154 | 154 | use Coro; |
155 | 155 | use AnyEvent (); |
156 | 156 | |
157 | our $VERSION = 5.24; | |
157 | our $VERSION = 5.25; | |
158 | 158 | |
159 | 159 | ############################################################################# |
160 | 160 | # idle handler |
46 | 46 | |
47 | 47 | use base Exporter::; |
48 | 48 | |
49 | our $VERSION = 5.24; | |
49 | our $VERSION = 5.25; | |
50 | 50 | our $WATCHER; |
51 | 51 | |
52 | 52 | BDB::set_sync_prepare { |
31 | 31 | use Coro (); |
32 | 32 | use Coro::Semaphore (); |
33 | 33 | |
34 | our $VERSION = 5.24; | |
34 | our $VERSION = 5.25; | |
35 | 35 | |
36 | 36 | sub DATA (){ 0 } |
37 | 37 | sub SGET (){ 1 } |
120 | 120 | use Coro::AnyEvent (); |
121 | 121 | use Coro::Timer (); |
122 | 122 | |
123 | our $VERSION = 5.24; | |
123 | our $VERSION = 5.25; | |
124 | 124 | |
125 | 125 | our %log; |
126 | 126 | our $SESLOGLEVEL = exists $ENV{PERL_CORO_DEFAULT_LOGLEVEL} ? $ENV{PERL_CORO_DEFAULT_LOGLEVEL} : -1; |
44 | 44 | |
45 | 45 | use base 'Exporter'; |
46 | 46 | |
47 | our $VERSION = 5.24; | |
47 | our $VERSION = 5.25; | |
48 | 48 | our @EXPORT = qw(unblock); |
49 | 49 | |
50 | 50 | =item $fh = new_from_fh Coro::Handle $fhandle [, arg => value...] |
93 | 93 | use Net::FTP (); |
94 | 94 | use Net::NNTP (); |
95 | 95 | |
96 | our $VERSION = 5.24; | |
96 | our $VERSION = 5.25; | |
97 | 97 | |
98 | 98 | *Socket::inet_aton = \&Coro::Util::inet_aton; |
99 | 99 |
6 | 6 | |
7 | 7 | our $installsitearch; |
8 | 8 | |
9 | our $VERSION = 5.24; | |
9 | our $VERSION = 5.25; | |
10 | 10 | our @EXPORT_OK = qw(&coro_args $installsitearch); |
11 | 11 | |
12 | 12 | my %opt; |
65 | 65 | # hey, it might actually work, with some hacks. |
66 | 66 | $iface = "p"; |
67 | 67 | |
68 | if ($Config{libs} =~ "-lpthread") { | |
68 | if ($Config{libs} !~ "-lpthread") { | |
69 | 69 | # uh-oh |
70 | 70 | print <<EOF; |
71 | 71 |
29 | 29 | |
30 | 30 | use Coro (); |
31 | 31 | |
32 | our $VERSION = 5.24; | |
32 | our $VERSION = 5.25; | |
33 | 33 | |
34 | 34 | =item $l = new Coro::RWLock; |
35 | 35 |
66 | 66 | |
67 | 67 | use base Exporter::; |
68 | 68 | |
69 | our $VERSION = 5.24; | |
69 | our $VERSION = 5.25; | |
70 | 70 | our @EXPORT_OK = "select"; |
71 | 71 | |
72 | 72 | sub import { |
36 | 36 | |
37 | 37 | use Coro (); |
38 | 38 | |
39 | our $VERSION = 5.24; | |
39 | our $VERSION = 5.25; | |
40 | 40 | |
41 | 41 | =item new [inital count] |
42 | 42 |
31 | 31 | |
32 | 32 | use common::sense; |
33 | 33 | |
34 | our $VERSION = 5.24; | |
34 | our $VERSION = 5.25; | |
35 | 35 | |
36 | 36 | use Coro::Semaphore (); |
37 | 37 |
34 | 34 | |
35 | 35 | use Coro::Semaphore (); |
36 | 36 | |
37 | our $VERSION = 5.24; | |
37 | our $VERSION = 5.25; | |
38 | 38 | |
39 | 39 | =item $sig = new Coro::Signal; |
40 | 40 |
72 | 72 | |
73 | 73 | use base qw(Coro::Handle IO::Socket::INET); |
74 | 74 | |
75 | our $VERSION = 5.24; | |
75 | our $VERSION = 5.25; | |
76 | 76 | |
77 | 77 | our (%_proto, %_port); |
78 | 78 |
25 | 25 | |
26 | 26 | use common::sense; |
27 | 27 | |
28 | our $VERSION = 5.24; | |
28 | our $VERSION = 5.25; | |
29 | 29 | |
30 | 30 | =item new |
31 | 31 |
91 | 91 | use XSLoader; |
92 | 92 | |
93 | 93 | BEGIN { |
94 | our $VERSION = 5.24; | |
94 | our $VERSION = 5.25; | |
95 | 95 | |
96 | 96 | # must be done here because the xs part expects it to exist |
97 | 97 | # it might exist already because Coro::Specific created it. |
83 | 83 | use Storable; |
84 | 84 | use base "Exporter"; |
85 | 85 | |
86 | our $VERSION = 5.24; | |
86 | our $VERSION = 5.25; | |
87 | 87 | our @EXPORT = qw(thaw freeze nfreeze blocking_thaw blocking_freeze blocking_nfreeze); |
88 | 88 | |
89 | 89 | our $GRANULARITY = 0.01; |
29 | 29 | use Coro (); |
30 | 30 | use Coro::AnyEvent (); |
31 | 31 | |
32 | our $VERSION = 5.24; | |
32 | our $VERSION = 5.25; | |
33 | 33 | our @EXPORT_OK = qw(timeout sleep); |
34 | 34 | |
35 | 35 | =item $flag = timeout $seconds; |
40 | 40 | our @EXPORT = qw(gethostbyname gethostbyaddr); |
41 | 41 | our @EXPORT_OK = qw(inet_aton fork_eval); |
42 | 42 | |
43 | our $VERSION = 5.24; | |
43 | our $VERSION = 5.25; | |
44 | 44 | |
45 | 45 | our $MAXPARALLEL = 16; # max. number of parallel jobs |
46 | 46 |
82 | 82 | our $main; # main coro |
83 | 83 | our $current; # current coro |
84 | 84 | |
85 | our $VERSION = 5.24; | |
85 | our $VERSION = 5.25; | |
86 | 86 | |
87 | 87 | our @EXPORT = qw(async async_pool cede schedule terminate current unblock_sub rouse_cb rouse_wait); |
88 | 88 | our %EXPORT_TAGS = ( |
55 | 55 | use XSLoader; |
56 | 56 | |
57 | 57 | BEGIN { |
58 | our $VERSION = 5.24; | |
58 | our $VERSION = 5.25; | |
59 | 59 | |
60 | 60 | local $^W = 0; # avoid redefine warning for Coro::ready; |
61 | 61 | XSLoader::load __PACKAGE__, $VERSION; |
91 | 91 | our @EXPORT = qw(loop unloop sweep); |
92 | 92 | |
93 | 93 | BEGIN { |
94 | our $VERSION = 5.24; | |
94 | our $VERSION = 5.25; | |
95 | 95 | |
96 | 96 | local $^W = 0; # avoid redefine warning for Coro::ready; |
97 | 97 | XSLoader::load __PACKAGE__, $VERSION; |
0 | {"no_index":{"directory":["t","inc"]},"meta-spec":{"version":1.4,"url":"http://module-build.sourceforge.net/META-spec-v1.4.html"},"generated_by":"ExtUtils::MakeMaker version 6.56","distribution_type":"module","version":"5.24","name":"Coro","author":[],"license":"unknown","build_requires":{"ExtUtils::MakeMaker":0},"requires":{"Scalar::Util":0,"AnyEvent":5,"Guard":0.5,"Storable":2.15,"Time::HiRes":0,"common::sense":0},"recommends":{"BDB":0,"AnyEvent::AIO":1,"Event":1.08,"EV":3,"IO::AIO":3.1,"AnyEvent::BDB":1},"abstract":null,"configure_requires":{"ExtUtils::MakeMaker":0}} | |
0 | {"no_index":{"directory":["t","inc"]},"meta-spec":{"version":1.4,"url":"http://module-build.sourceforge.net/META-spec-v1.4.html"},"generated_by":"ExtUtils::MakeMaker version 6.56","distribution_type":"module","version":"5.25","name":"Coro","author":[],"license":"unknown","build_requires":{"ExtUtils::MakeMaker":0},"requires":{"Scalar::Util":0,"AnyEvent":5,"Guard":0.5,"Storable":2.15,"Time::HiRes":0,"common::sense":0},"recommends":{"BDB":0,"AnyEvent::AIO":1,"Event":1.08,"EV":3,"IO::AIO":3.1,"AnyEvent::BDB":1},"abstract":null,"configure_requires":{"ExtUtils::MakeMaker":0}} |