… | |
… | |
41 | hr.footer { display: none; } |
41 | hr.footer { display: none; } |
42 | .footer { font-size: 8pt; border-top: 1px solid red; } |
42 | .footer { font-size: 8pt; border-top: 1px solid red; } |
43 | </style> |
43 | </style> |
44 | </head> |
44 | </head> |
45 | <body> |
45 | <body> |
46 | <p class='back'><a href='/'>Schmorpforge Software Repository</a></p> |
46 | <p class='back'><a href='/'>Schmorpforge Ta-Sa Software Repository</a></p> |
47 | <h1 class="$_[1]">$_[0]</h1> |
47 | <h1 class="$_[1]">$_[0]</h1> |
48 | <div style="text-align: center; float: right; margin-left: 1em; margin-bottom: 1em"> |
48 | <div style="text-align: center; float: right; margin-left: 1em; margin-bottom: 1em"> |
49 | <a href="http://www.deliantra.net/"> |
49 | <a href="http://www.deliantra.net/"> |
50 | <img src="http://www.deliantra.net/images/deliantra.png" border="0" alt="Deliantra Free MMORPG" style="display: inline"/> |
50 | <img src="http://www.deliantra.net/images/deliantra.png" border="0" alt="Deliantra Free MMORPG" style="display: inline"/> |
51 | <br /> |
51 | <br /> |
… | |
… | |
95 | |
95 | |
96 | <h2>Blurb</h2> |
96 | <h2>Blurb</h2> |
97 | <p class='blurb'>$desc</p> |
97 | <p class='blurb'>$desc</p> |
98 | <h2>Availability</h2> |
98 | <h2>Availability</h2> |
99 | <ul> |
99 | <ul> |
|
|
100 | EOF |
|
|
101 | if (grep /git/, @args) { |
|
|
102 | print <<EOF; |
|
|
103 | <li><a href='http://git.ta-sa.org/?p=$name.git;a=summary'>Browse GIT repository '$name'</a></li> |
|
|
104 | <li>Read-only GIT checkout:<br /> |
|
|
105 | <tt> git-clone http://git.ta-sa.org/$name.git</tt> |
|
|
106 | </li> |
|
|
107 | EOF |
|
|
108 | } else { |
|
|
109 | my $modules = $name; |
|
|
110 | $modules = "$1" if grep /modules\((.*)\)/, @args; |
|
|
111 | |
|
|
112 | print <<EOF; |
100 | <li><a href='http://cvs.schmorp.de/$name'>Browse CVS module '$name'</a></li> |
113 | <li><a href='http://cvs.schmorp.de/$name'>Browse CVS module '$name'</a></li> |
101 | EOF |
|
|
102 | |
|
|
103 | my $modules = $name; |
|
|
104 | $modules = "$1" if grep /modules\((.*)\)/, @args; |
|
|
105 | |
|
|
106 | print <<EOF; |
|
|
107 | <li>Anonymous CVS checkout:<br /> |
114 | <li>Anonymous CVS checkout:<br /> |
108 | <tt> cvs -z3 -d :pserver:anonymous\@cvs.schmorp.de/schmorpforge co $modules</tt><p /> |
115 | <tt> cvs -z3 -d :pserver:anonymous\@cvs.schmorp.de/schmorpforge co $modules</tt><p /> |
109 | |
116 | |
110 | <small> |
117 | <small> |
111 | |
118 | |
… | |
… | |
125 | |
132 | |
126 | </small> |
133 | </small> |
127 | |
134 | |
128 | </li> |
135 | </li> |
129 | EOF |
136 | EOF |
|
|
137 | } |
130 | |
138 | |
131 | print "<li><a href='http://dist.schmorp.de/$name/'>File Releases</a></li>\n" |
139 | print "<li><a href='http://dist.schmorp.de/$name/'>File Releases</a></li>\n" |
132 | if grep /dist/, @args; |
140 | if grep /dist/, @args; |
133 | print "<li><a href='http://www.cpan.org/modules/by-authors/Marc_Lehmann/'>File Releases (CPAN)</a></li>\n" |
141 | print "<li><a href='http://www.cpan.org/modules/by-authors/Marc_Lehmann/'>File Releases (CPAN)</a></li>\n" |
134 | if grep /cpan/, @args; |
142 | if grep /cpan$/, @args; |
|
|
143 | print "<li><a href='http://www.cpan.org/modules/by-authors/id/E/EL/ELMEX/'>File Releases (CPAN)</a></li>\n" |
|
|
144 | if grep /cpan-elmex/, @args; |
135 | for (@args) { |
145 | for (@args) { |
136 | print "<li><a href='http://lists.schmorp.de/mailman/listinfo/" . ($1 || $name) . "'>Mailing List '" . ($1 || $name) . "'</a></li>\n" |
146 | print "<li><a href='http://lists.schmorp.de/mailman/listinfo/" . ($1 || $name) . "'>Mailing List '" . ($1 || $name) . "'</a></li>\n" |
137 | if /list\((.*)\)/; |
147 | if /list\((.*)\)/; |
138 | } |
148 | } |
139 | |
149 | |
140 | print "</ul>"; |
150 | print "</ul>"; |
141 | |
151 | |
142 | if (my @files = grep $_, map /(cvs-co|cvs-pod)\((\S+)\)/ && [$1, $2], @args) { |
152 | if (my @files = grep $_, map /(cvs-co|cvs-pod|git-pod|git-co)\((\S+)\)/ && [$1, $2], @args) { |
143 | print "<h2>Additional Documents</h2><ul>"; |
153 | print "<h2>Additional Documents</h2><ul>"; |
144 | |
154 | |
145 | for (@files) { |
155 | for (@files) { |
146 | my ($type, $arg) = @$_; |
156 | my ($type, $arg) = @$_; |
147 | |
157 | |
148 | if ($type eq "cvs-co") { |
158 | if ($type eq "cvs-co") { |
149 | print "<li><a href='http://cvs.schmorp.de/$name/$arg'>$arg</a></li>"; |
159 | print "<li><a href='http://cvs.schmorp.de/$name/$arg'>$arg</a></li>"; |
|
|
160 | |
150 | } elsif ($type eq "cvs-pod") { |
161 | } elsif ($type eq "cvs-pod") { |
151 | my ($file, $desc) = $arg =~ /(.*),(.*)/ ? ($1, $2) : ($arg, $arg); |
162 | my ($file, $desc) = $arg =~ /(.*),(.*)/ ? ($1, $2) : ($arg, $arg); |
152 | $desc ||= "<b>Main Manual Page</b>"; |
163 | $desc ||= "<b>Main Manual Page</b>"; |
153 | print "<li><a href='http://pod.tst.eu/http://cvs.schmorp.de/$name/$file'>$desc</a></li>"; |
164 | print "<li><a href='http://pod.tst.eu/http://cvs.schmorp.de/$name/$file'>$desc</a></li>"; |
|
|
165 | |
|
|
166 | } elsif ($type eq 'git-co') { |
|
|
167 | print "<li><a href='http://git.ta-sa.org/$name/$arg'>$arg</a></li>"; |
|
|
168 | |
|
|
169 | } elsif ($type eq "git-pod") { |
|
|
170 | my ($file, $desc) = $arg =~ /(.*),(.*)/ ? ($1, $2) : ($arg, $arg); |
|
|
171 | $desc ||= "<b>Main Manual Page</b>"; |
|
|
172 | print "<li><a href='http://pod.tst.eu/http://git.ta-sa.org/$name/$file'>$desc</a></li>"; |
|
|
173 | |
154 | } |
174 | } |
155 | } |
175 | } |
156 | |
176 | |
157 | print "</ul>"; |
177 | print "</ul>"; |
158 | } |
178 | } |
… | |
… | |
164 | |
184 | |
165 | hdr "Package Index", "bg-bluete"; |
185 | hdr "Package Index", "bg-bluete"; |
166 | |
186 | |
167 | print <<EOF; |
187 | print <<EOF; |
168 | |
188 | |
169 | <p>This page briefly documents the Schmorpforge Software Repository and |
189 | <p>This page briefly documents the Schmorpforge Ta-Sa Software Repository and |
170 | lists all projects available here.</p> |
190 | lists all projects available here.</p> |
171 | |
191 | |
172 | <ul> |
192 | <ul> |
173 | <li>All CVS Repositories can be found <a href="http://cvs.schmorp.de/">here</a>.</li> |
193 | <li>All CVS Repositories can be found <a href="http://cvs.schmorp.de/">here</a>.</li> |
|
|
194 | <li>All GIT Repositories can be found <a href="http://git.ta-sa.org/">here</a>.</li> |
174 | <li>Most Releases can be found <a href="http://dist.schmorp.de/">here</a> or via CPAN.</li> |
195 | <li>File Releases can be found <a href="http://dist.schmorp.de/">here</a> or on CPAN (for Perl modules).</li> |
175 | <li>All Mailinglists can be found <a href="http://lists.schmorp.de/mailman/listinfo">here</a>.</li> |
196 | <li>All Mailinglists can be found <a href="http://lists.schmorp.de/mailman/listinfo">here</a>.</li> |
|
|
197 | <li>The Wiki can be found <a href="http://wiki.schmorp.de/">here</a>.</li> |
176 | </ul> |
198 | </ul> |
177 | <p>Projects listed on this page:</p> |
199 | <p>Projects listed on this page:</p> |
178 | <table> |
200 | <table> |
179 | EOF |
201 | EOF |
180 | |
202 | |
… | |
… | |
292 | It could be used to write Knuddels clients, bots and even servers |
314 | It could be used to write Knuddels clients, bots and even servers |
293 | (although the latter doesn't make much sense, the protocol is rather |
315 | (although the latter doesn't make much sense, the protocol is rather |
294 | ugly. If you want to implement your own group communication server, use |
316 | ugly. If you want to implement your own group communication server, use |
295 | IRC instead). |
317 | IRC instead). |
296 | |
318 | |
297 | Net-IRC3 dist cvs-pod(lib/Net/IRC3.pm,) cvs-co(Changes) cvs-co(samples/netirc3cl) cvs-co(samples/netirc3) |
319 | Net-IRC3 cpan-elmex cvs-pod(lib/Net/IRC3.pm,) cvs-co(Changes) cvs-co(samples/netirc3cl) cvs-co(samples/netirc3) |
298 | This module provides an alternative to the Net-IRC and Net-IRC2 |
320 | This module provides an alternative to the Net-IRC and Net-IRC2 |
299 | modules. Its design rationale is offfering a 100% non-blocking |
321 | modules. Its design rationale is offfering a 100% non-blocking |
300 | callback-based interface, RFC-compliant parsing and a lightweight |
322 | callback-based interface, RFC-compliant parsing and a lightweight |
301 | approach to modularity and reusability. |
323 | approach to modularity and reusability. |
302 | |
324 | |
… | |
… | |
331 | minimal configuration (it consists of only a single <tt>.h</tt> and a |
353 | minimal configuration (it consists of only a single <tt>.h</tt> and a |
332 | single <tt>.c</tt> file). It is known to run on a wide variety of unix |
354 | single <tt>.c</tt> file). It is known to run on a wide variety of unix |
333 | systems (SunOS, IRIX, GNU/Linux, HP-UX) and also on Windows, does not use |
355 | systems (SunOS, IRIX, GNU/Linux, HP-UX) and also on Windows, does not use |
334 | any assembly language and is architecture-independent. |
356 | any assembly language and is architecture-independent. |
335 | |
357 | |
336 | cf.schmorp.de/server cvs-co(README) cvs-co(Changes) cvs-co(COPYING.Affero) |
358 | deliantra/server cvs-co(README) cvs-co(Changes) cvs-co(COPYING.Affero) |
337 | The <a href="http://www.deliantra.net/">Deliantra</a> game server. |
359 | The <a href="http://www.deliantra.net/">Deliantra</a> game server. |
338 | |
360 | |
339 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
361 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
340 | |
362 | |
341 | cf.schmorp.de/maps cvs-co(Changes) cvs-co(COPYING.Affero) |
363 | deliantra/maps cvs-co(Changes) cvs-co(COPYING.Affero) |
342 | The <a href="http://www.deliantra.net/">Deliantra</a> game maps. |
364 | The <a href="http://www.deliantra.net/">Deliantra</a> game maps. |
343 | |
365 | |
344 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
366 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
345 | |
367 | |
346 | cf.schmorp.de/arch cvs-co(Changes) cvs-co(COPYING.Affero) |
368 | deliantra/arch cvs-co(Changes) cvs-co(COPYING.Affero) |
347 | The <a href="http://www.deliantra.net/">Deliantra</a> game resources. |
369 | The <a href="http://www.deliantra.net/">Deliantra</a> game resources. |
348 | |
370 | |
349 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
371 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
350 | |
372 | |
351 | cf.schmorp.de/Deliantra-Client cvs-pod(bin/deliantra,) cvs-co(Changes) |
373 | deliantra/Deliantra-Client cvs-pod(bin/deliantra,) cvs-co(Changes) |
352 | A modern, fullscreen client for <a href="http://www.deliantra.net/">Deliantra</a>, written using Perl |
374 | A modern, fullscreen client for <a href="http://www.deliantra.net/">Deliantra</a>, written using Perl |
353 | and leveraging only OpenGL for display and thus being easily portable. |
375 | and leveraging only OpenGL for display and thus being easily portable. |
354 | See its <a href="http://www.deliantra.net/client.html">homepage</a>. |
376 | See its <a href="http://www.deliantra.net/client.html">homepage</a>. |
355 | |
377 | |
356 | To install it, you need <a href="http://www.libsdl.org">SDL</a>, <a href="http://www.libsdl.org/projects/SDL_mixer/">SDL_mixer</a>, |
378 | To install it, you need <a href="http://www.libsdl.org">SDL</a>, <a href="http://www.libsdl.org/projects/SDL_mixer/">SDL_mixer</a>, |
357 | <a href="http://www.libsdl.org/projects/SDL_image/">SDL_image</a>, <a href="http://www.pango.org">PanGo</a> (with freetype2 and |
379 | <a href="http://www.libsdl.org/projects/SDL_image/">SDL_image</a>, <a href="http://www.pango.org">PanGo</a> (with freetype2 and |
358 | cairo backends at the moment), and the BDB, AnyEvent, Pod::POM, EV and |
380 | cairo backends at the moment), and the BDB, AnyEvent, Pod::POM, EV and |
359 | <a href="http://software.schmorp.de/pkg/cf.schmorp.de/Deliantra.html">Deliantra</a> perl modules. |
381 | <a href="http://software.schmorp.de/pkg/deliantra/Deliantra.html">Deliantra</a> perl modules. |
360 | |
382 | |
361 | cf.schmorp.de/Deliantra |
383 | deliantra/Deliantra |
362 | Perl module family for the <a href="http://www.deliantra.net/">Deliantra</a> game. |
384 | Perl module family for the <a href="http://www.deliantra.net/">Deliantra</a> game. |
363 | |
385 | |
364 | They can be used to read/write/cache archetypes, image packs and map files. |
386 | They can be used to read/write/cache archetypes, image packs and map files. |
365 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
387 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
366 | |
388 | |
367 | cf.schmorp.de/gcrossedit cvs-pod(bin/gde,) |
389 | deliantra/gcrossedit cvs-pod(bin/gde,) |
368 | The <a href="http://www.deliantra.net/">Deliantra</a> editor, written in Perl + Gtk2. |
390 | The <a href="http://www.deliantra.net/">Deliantra</a> editor, written in Perl + Gtk2. |
369 | |
391 | |
370 | The editor for the game Deliantra, written in Perl. |
392 | The editor for the game Deliantra, written in Perl. |
371 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
393 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
372 | |
394 | |
373 | cf.schmorp.de |
395 | deliantra |
374 | <a href="http://www.deliantra.net/">Deliantra</a> server, archetypes, maps, |
396 | <a href="http://www.deliantra.net/">Deliantra</a> server, archetypes, maps, |
375 | editor, client and support modules distribution. |
397 | editor, client and support modules distribution. |
376 | |
398 | |
377 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
399 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
378 | |
400 | |
… | |
… | |
416 | See <a href="http://www.goof.com/pcg/marc/lmainit.html">its homepage</a> for more info. |
438 | See <a href="http://www.goof.com/pcg/marc/lmainit.html">its homepage</a> for more info. |
417 | |
439 | |
418 | Algorithm-FEC cpan cvs-pod(FEC.pm,) cvs-co(README.fec) cvs-co(Changes) |
440 | Algorithm-FEC cpan cvs-pod(FEC.pm,) cvs-co(README.fec) cvs-co(Changes) |
419 | Perl module implementing forward error correction using Vandermonde matrices |
441 | Perl module implementing forward error correction using Vandermonde matrices |
420 | |
442 | |
421 | AnyEvent cpan cvs-pod(lib/AnyEvent.pm,) cvs-co(Changes) cvs-pod(lib/AnyEvent/Impl/CoroEV.pm,AnyEvent::Impl::CoroEV) cvs-pod(lib/AnyEvent/Impl/CoroEvent.pm,AnyEvent::Impl::CoroEvent) cvs-pod(lib/AnyEvent/Impl/Coro.pm,AnyEvent::Impl::Coro) cvs-pod(lib/AnyEvent/Impl/EV.pm,AnyEvent::Impl::EV) cvs-pod(lib/AnyEvent/Impl/Event.pm,AnyEvent::Impl::Event) cvs-pod(lib/AnyEvent/Impl/Glib.pm,AnyEvent::Impl::Glib) cvs-pod(lib/AnyEvent/Impl/Tk.pm,AnyEvent::Impl::Tk) cvs-pod(lib/AnyEvent/Impl/Perl.pm,AnyEvent::Impl::Perl) cvs-pod(lib/AnyEvent/Impl/Qt.pm,AnyEvent::Impl::Qt) cvs-pod(lib/AnyEvent/Impl/EventLib.pm,AnyEvent::Impl::EventLib) cvs-pod(lib/AnyEvent/Impl/POE.pm,AnyEvent::Impl::POE) |
443 | AnyEvent cpan cvs-pod(lib/AnyEvent.pm,) cvs-pod(lib/AnyEvent/Intro.pod,Introduction/Tutorial) cvs-co(Changes) cvs-pod(lib/AnyEvent/Util.pm,AnyEvent::Util) cvs-pod(lib/AnyEvent/Handle.pm,AnyEvent::Handle) cvs-pod(lib/AnyEvent/Socket.pm,AnyEvent::Socket) cvs-pod(lib/AnyEvent/DNS.pm,AnyEvent::DNS) cvs-pod(lib/AnyEvent/Impl/EV.pm,AnyEvent::Impl::EV) cvs-pod(lib/AnyEvent/Impl/Event.pm,AnyEvent::Impl::Event) cvs-pod(lib/AnyEvent/Impl/Glib.pm,AnyEvent::Impl::Glib) cvs-pod(lib/AnyEvent/Impl/Tk.pm,AnyEvent::Impl::Tk) cvs-pod(lib/AnyEvent/Impl/Perl.pm,AnyEvent::Impl::Perl) cvs-pod(lib/AnyEvent/Impl/Qt.pm,AnyEvent::Impl::Qt) cvs-pod(lib/AnyEvent/Impl/EventLib.pm,AnyEvent::Impl::EventLib) cvs-pod(lib/AnyEvent/Impl/POE.pm,AnyEvent::Impl::POE) |
422 | This module offers a simple API for I/O, timer, signal, child process |
444 | This module offers a simple API for I/O, timer, signal, child process |
423 | and completion events, independent of a specific event loop. |
445 | and completion events, independent of a specific event loop. |
424 | |
446 | |
425 | This module allows module authors to use those events internally without |
447 | <p>This module allows module authors to use those events internally without |
426 | forcing users of the module to use a specific event loop, without adding |
448 | forcing users of the module to use a specific event loop, without adding |
427 | noticable overhead. Currently supported event loops are EV, Coro::EV, |
449 | noticable overhead. Currently supported event loops are EV, Event, |
428 | Event, Coro::Event, Glib/Gtk2, Tk, Qt, Event::Lib and POE (and thus also |
450 | Glib/Gtk2, Tk, Qt, Event::Lib and POE (and thus also WxWidgets and |
429 | WxWidgets and Prima). It contains a very fast (see benchmarks in the main |
451 | Prima). It contains a very fast (see benchmarks in the main manual page) |
430 | manual page) Pure Perl event loop and doesn't rely on XS, which ensures |
452 | Pure Perl event loop and doesn't rely on XS, which ensures that your |
431 | that your program will always run even when no C-based event loop is |
453 | program will always run even when no C-based event loop is available.</p> |
432 | available. |
454 | |
|
|
455 | <p>In addition to the event core (which might be all you need), AnyEvent |
|
|
456 | comes with an optional, fully asynchronous, pure-perl DNS resolver |
|
|
457 | library supporting UDP, TCP and EDNS0, with many utility functions to |
|
|
458 | "just resolve" stuff without having to instantiate even a resolver object |
|
|
459 | (and including an equivalent of C<getaddrinfo>).</p> |
|
|
460 | |
|
|
461 | <p>The AnyEvent::Socket offers utility functions to make handling TCP |
|
|
462 | connections (100% non-blocking, including DNS resolution, with both IPv4 |
|
|
463 | and IPv6) and addresses as easy as possible, to the point of making IPv6 |
|
|
464 | completely transparent.</p> |
|
|
465 | |
|
|
466 | <p>Lastly, AnyEvent::Handle offers a powerful framework for asynchronous and |
|
|
467 | buffered protocol handling. You can push multiple read event handlers |
|
|
468 | to parse your protocol and start TLS/SSL negotiation transparently (and |
|
|
469 | fully non-blocking) at any time, in both server and client mode.</p> |
433 | |
470 | |
434 | AnyEvent-FastPing cpan cvs-pod(FastPing.pm,) |
471 | AnyEvent-FastPing cpan cvs-pod(FastPing.pm,) |
435 | This module implements a very fast and relatively flexible |
472 | This module implements a very fast and relatively flexible |
436 | ping (ping as in icmp echo request). |
473 | ping (ping as in icmp echo request). |
437 | |
474 | |
… | |
… | |
463 | allows easy decoding of multipart mime, uuencode and a whole lot of |
500 | allows easy decoding of multipart mime, uuencode and a whole lot of |
464 | differently encoded messages. You basically throw files at it, and |
501 | differently encoded messages. You basically throw files at it, and |
465 | it extracts the files in them. This module is used by the popular <a |
502 | it extracts the files in them. This module is used by the popular <a |
466 | href="www.amavis.org">amavis virus scanner</a>. |
503 | href="www.amavis.org">amavis virus scanner</a>. |
467 | |
504 | |
468 | Coro cpan cvs-pod(Coro.pm,) cvs-co(Changes) |
505 | Coro cpan cvs-co(Changes) cvs-pod(Coro.pm,) cvs-pod(Coro/AIO.pm,Coro::AIO) cvs-pod(Coro/AnyEvent.pm,Coro::AnyEvent) cvs-pod(Coro/BDB.pm,Coro::BDB) cvs-pod(Coro/Channel.pm,Coro::Channel) cvs-pod(Coro/Debug.pm,Coro::Debug) cvs-pod(Coro/EV.pm,Coro::EV) cvs-pod(Coro/Event.pm,Coro::Event) cvs-pod(Coro/Handle.pm,Coro::Handle) cvs-pod(Coro/LWP.pm,Coro::LWP) cvs-pod(Coro/MakeMaker.pm,Coro::MakeMaker) cvs-pod(Coro/RWLock.pm,Coro::RWLock) cvs-pod(Coro/Select.pm,Coro::Select) cvs-pod(Coro/Semaphore.pm,Coro::Semaphore) cvs-pod(Coro/SemaphoreSet.pm,Coro::SemaphoreSet) cvs-pod(Coro/Signal.pm,Coro::Signal) cvs-pod(Coro/Socket.pm,Coro::Socket) cvs-pod(Coro/Specific.pm,Coro::Specific) cvs-pod(Coro/State.pm,Coro::State) cvs-pod(Coro/Storable.pm,Coro::Storable) cvs-pod(Coro/Timer.pm,Coro::Timer) cvs-pod(Coro/Util.pm,Coro::Util) |
469 | A large Perl module family that implements cooperative multitasking in |
506 | A large Perl module family that implements cooperative multitasking in |
470 | Perl. It supports filehandle and event abstraction and also implements |
507 | Perl. It supports filehandle and event abstraction and also implements |
471 | continuations as well as the necessary directives to implement a slightly |
508 | continuations as well as the necessary directives to implement a slightly |
472 | limited call/cc in Perl. |
509 | limited call/cc in Perl. |
473 | |
510 | |
… | |
… | |
519 | <a href="EV.html">perl interface</a> is also available. |
556 | <a href="EV.html">perl interface</a> is also available. |
520 | <p /> |
557 | <p /> |
521 | A <a href="http://lists.schmorp.de/mailman/listinfo/libev">mailing |
558 | A <a href="http://lists.schmorp.de/mailman/listinfo/libev">mailing |
522 | list</a> for discussion and support is now available. |
559 | list</a> for discussion and support is now available. |
523 | |
560 | |
|
|
561 | libeio dist cvs-pod(eio.pod,) cvs-co(eio.h) cvs-co(demo.c) cvs-co(Changes) |
|
|
562 | Event-based fully asynchronous I/O library for C (used by IO::AIO). |
|
|
563 | Currently in BETA! |
|
|
564 | |
|
|
565 | <p>Libeio is a full-featured asynchronous I/O library |
|
|
566 | for C, modelled in similar style and spirit as <a |
|
|
567 | href="http://software.schmorp.de/pkg/libev.html">libev</a>. Features |
|
|
568 | include: asynchronous read, write, open, close, stat, unlink, fdatasync, |
|
|
569 | mknod, readdir etc. (basically the full POSIX API). sendfile (native on |
|
|
570 | solaris, linux, hp-ux, freebsd, emulated everywehere else), readahead |
|
|
571 | (emulated where not available).</p> |
|
|
572 | |
|
|
573 | <p>It is fully event-library agnostic and can easily be integrated into any |
|
|
574 | event-library (or used standalone, even in polling mode). It is very |
|
|
575 | portable and relies only on POSIX threads.</p> |
|
|
576 | |
|
|
577 | <p>Its code, documentation, integration and portability quality is |
|
|
578 | currently below that of libev, but should soon be ready for use in |
|
|
579 | production environments.</p> |
|
|
580 | |
524 | libspf cvs-co(README) |
581 | libspf cvs-co(README) |
525 | Libspf is a C library that implements the <a |
582 | Libspf is a C library that implements the <a |
526 | href="http://en.wikipedia.org/wiki/Sender_Policy_Framework"> Sender |
583 | href="http://en.wikipedia.org/wiki/Sender_Policy_Framework"> Sender |
527 | Policy Framework</a>. It allows software to identify and reject forged |
584 | Policy Framework</a>. It allows software to identify and reject forged |
528 | envelope-from addresses, a typical nuisance in e-mail spam. SPF is |
585 | envelope-from addresses, a typical nuisance in e-mail spam. SPF is |
… | |
… | |
674 | |
731 | |
675 | dhcpping cvs-pod(dhcping.pod,) |
732 | dhcpping cvs-pod(dhcping.pod,) |
676 | A version of dhcpping enhanced by <a href="mailto:marco@nethype.de">Marco Maisenhelder</a> |
733 | A version of dhcpping enhanced by <a href="mailto:marco@nethype.de">Marco Maisenhelder</a> |
677 | to support passing dhcp options. Intended to test dhcp server implementations. |
734 | to support passing dhcp options. Intended to test dhcp server implementations. |
678 | |
735 | |
679 | AnyEvent-DNS cpan git-co(AnyEvent-DNS.git/Changes) |
|
|
680 | A non-blocking DNS resolver with AnyEvent using Net::DNS. |
|
|
681 | |
|
|
682 | This Perl module is a simple wrapper around Net::DNS, which provides |
|
|
683 | a non-blocking interface to make DNS queries with Net::DNS. |
|
|
684 | |
|
|
685 | AnyEvent-HTTPD cpan git-co(AnyEvent-HTTPD.git/Changes) |
736 | AnyEvent-HTTPD cpan-elmex git-pod(lib/AnyEvent/HTTPD.pm,) git-co(Changes) |
686 | A simple and plain event based http web application server Perl module. |
737 | A simple and plain event based http web application server Perl module. |
687 | |
738 | |
688 | This is a very basic HTTP server that allows the user/programmer to install |
739 | This is a very basic HTTP server that allows the user/programmer to install |
689 | hooks for URL paths to generate the output. It uses AnyEvent to be easily |
740 | hooks for URL paths to generate the output. It uses AnyEvent to be easily |
690 | embeddable into other applications. The main objective was to make it |
741 | embeddable into other applications. The main objective was to make it |
691 | easier to make simple HTTP frontends in Perl for Perl programs and Perl modules. |
742 | easier to make simple HTTP frontends in Perl for Perl programs and Perl modules. |
692 | |
743 | |
693 | Object-Event cpan git-co(Object-Event.git/Changes) |
744 | Object-Event cpan-elmex git-pod(lib/Object/Event.pm,) git-co(Changes) |
694 | A simple event callback API for Perl. |
745 | A simple event callback API for Perl. |
695 | |
746 | |
696 | This is just a very simple event callback registration and call API |
747 | This is just a very simple event callback registration and call API |
697 | which new Perl classes can inherit. It's mainly used by Net::XMPP2. |
748 | which new Perl classes can inherit. It's mainly used by Net::XMPP2. |
698 | |
749 | |
699 | Text-Edit cpan git-co(Text-Edit.git/Changes) |
750 | AnyEvent-EditText cpan-elmex git-pod(lib/AnyEvent/EditText.pm,) git-co(Changes) |
700 | A Perl module which allows editing any text via an editor in a seperate process. |
751 | A Perl module which allows editing any text via an editor in a seperate process. |
701 | |
752 | |
702 | A utility Perl module that will start a terminal/editor for you and will |
753 | A utility Perl module that will start a terminal/editor for you and will |
703 | wait non-blocking for you to finish editing that file. Very useful to embed |
754 | wait non-blocking for you to finish editing that file. Very useful to embed |
704 | content edititing in event based programs that have a AnyEvent compatible |
755 | content edititing in event based programs that have a AnyEvent compatible |
… | |
… | |
709 | |
760 | |
710 | This is a mostly abandoned project at the moment, however, the repository |
761 | This is a mostly abandoned project at the moment, however, the repository |
711 | contains interesting C++ code that might be useful to someone, especially |
762 | contains interesting C++ code that might be useful to someone, especially |
712 | the C++ JSON implementation might be of interest. The project is mostly |
763 | the C++ JSON implementation might be of interest. The project is mostly |
713 | dead at the moment though... |
764 | dead at the moment though... |
|
|
765 | |
|
|
766 | gtm git-co(README) |
|
|
767 | GT.M Database |
|
|
768 | |
|
|
769 | <a href="http://sourceforge.net/projects/fis-gtm/">GT.M</a> |
|
|
770 | is a a vetted, industrial strength, transaction |
|
|
771 | processing application platform consisting of a |
|
|
772 | database engine optimized for high TP throughput and |
|
|
773 | a compiler for the M (aka MUMPS) programming language. |