Conduit
view release on metacpan or search on metacpan
lib/Conduit/Metrics.pm
LICENSE
MANIFEST This list of files
META.json
META.yml
README
t/00use.t
t/01responder.t
t/02responder-exception.t
t/10psgi.t
t/11psgi-streaming.t
t/70metrics.t
t/99pod.t
complete; it will remain pending indefinitely. The toplevel program can
either await this if it has nothing else to do, or add that to a
collection such as with Future::Selector.
TODO
Honestly, quite a lot. Almost everything in fact. ;)
* PAGI support; likely in preference to any more PSGI.
* Maybe support streaming PSGI responses, though it would still be
preferrable to do this with PAGI first.
* Investigate split IPv4+IPv6 serving, whether it needs two socket or
one will suffice. This may be OS-dependent.
* HTTPS, perhaps via IO::Socket::SSL or maybe something newer?
* Look into what's required to support some sort of websocket thing
in addition to plain HTTP.
lib/Conduit.pm view on Meta::CPAN
Honestly, quite a lot. Almost everything in fact. ;)
=over 4
=item *
L<PAGI> support; likely in preference to any more PSGI.
=item *
Maybe support streaming PSGI responses, though it would still be preferrable
to do this with PAGI first.
=item *
Investigate split IPv4+IPv6 serving, whether it needs two socket or one will
suffice. This may be OS-dependent.
=item *
HTTPS, perhaps via L<IO::Socket::SSL> or maybe something newer?
lib/Conduit/Client.pm view on Meta::CPAN
REQUEST_METHOD => $req->method,
REQUEST_URI => $uri->path,
'psgi.version' => [1,0],
'psgi.url_scheme' => "http",
'psgi.input' => $stdin,
'psgi.errors' => \*STDERR,
'psgi.multithread' => 0,
'psgi.multiprocess' => 0,
'psgi.run_once' => 0,
'psgi.nonblocking' => 1,
'psgi.streaming' => 1,
);
# TODO: socket info
$req->scan( sub ( $name, $value ) {
$name =~ s/-/_/g;
$name = uc $name;
# Content-Length and Content-Type don't get an HTTP_ prefix
$name = "HTTP_$name" unless $name =~ m/^CONTENT_(?:LENGTH|TYPE)$/;
( run in 0.591 second using v1.01-cache-2.11-cpan-140bd7fdf52 )