view release on metacpan or search on metacpan
{1,2,3,4} 0xa201020304 # fails because of broken data::dumper
< {"a",1,"b",[2,3]} 0xa26161016162820203
< ["a",{"b","c"}] 0x826161a161626163
< {"a","A","b","B","c","C","d","D","e","E"}0xa56161614161626142616361436164614461656145
(_h'0102',h'030405') 0x5f42010243030405ff
< streaming 0x7f657374726561646d696e67ff
< [_] 0x9fff
< [_1,[2,3],[_4,5]] 0x9f018202039f0405ffff
< [_1,[2,3],[4,5]] 0x9f01820203820405ff
< [1,[2,3],[_4,5]] 0x83018202039f0405ff
< [1,[_2,3],[4,5]] 0x83019f0203ff820405
view all matches for this distribution
view release on metacpan or search on metacpan
t/1_with_thumbnail_rm_interactive_only.pl view on Meta::CPAN
# if we are not interactive, next test fails because CGI_APP_RETURN_ONLY cannot stop
# the thumbnail runmode fromstreaming..
print STDERR "\n=================================================\nPART3 THUMB \n\n\n";
my $e = CGI::Application::Gallery->new(
view all matches for this distribution
view release on metacpan or search on metacpan
t/31_stream.t view on Meta::CPAN
use strict;
#use TieOut;
# Useless here, since the point is to test streaming directly.
#$ENV{CGI_APP_RETURN_ONLY} = 1;
#####
view all matches for this distribution
view release on metacpan or search on metacpan
t/12_stream.t view on Meta::CPAN
fields => [ qw(foo) ],
iterator => sub { while ( @vals ) { return [ splice @vals, 0, 1 ] } },
stream => 1,
});
is( $ret, "", "empty return value when streaming enabled" );
is( $report, "Foo\none\ntwo\nthree\nfour\nfive\nsix\n",
"streaming output works" );
open(STDOUT, '>&', SAVESTDOUT) or die "Can't restore STDOUT: $!"
view all matches for this distribution
view release on metacpan or search on metacpan
lib/CGI/Application/Plugin/Stream.pm view on Meta::CPAN
1;
__END__
=head1 NAME
CGI::Application::Plugin::Stream - CGI::Application Plugin for streaming files
=head1 SYNOPSIS
use CGI::Application::Plugin::Stream (qw/stream_file/);
lib/CGI/Application/Plugin/Stream.pm view on Meta::CPAN
anything afterwards. This plugin affects the HTTP response headers, so
anything you do afterwards will probably not work. If you pass along a
filehandle, we'll make sure to close it for you.
It's recommended that you increment $| (or set it to 1), which will
autoflush the buffer as your application is streaming out the file.
=head1 METHODS
=head2 stream_file()
view all matches for this distribution
view release on metacpan or search on metacpan
lib/CGI/Application.pm view on Meta::CPAN
To simplify that further, use L<CGI::Application::Plugin::Redirect>:
return $self->redirect('http://www.example.com/');
Setting the header to 'none' may be useful if you are streaming content.
In other contexts, it may be more useful to set C<$ENV{CGI_APP_RETURN_ONLY} = 1;>,
which suppresses all printing, including headers, and returns the output instead.
That's commonly used for testing, or when using L<CGI::Application> as a controller
for a cron script!
view all matches for this distribution
view release on metacpan or search on metacpan
[FIXES]
- CGI.pm is downcasing headers on some smoke machines. I don't know why.
srezic via http://www.nntp.perl.org/group/perl.cpan.testers/2008/10/msg2390972.html
[PREREQUISITES]
- Upped Compress::Zlib to v2. Paul Marquess has pointed out
that I can use improvement in Compress::Zlib to get streaming
under mod_perl
1.00 06 Oct 2008
[FIXES]
- OK, the last one didn't really fix it. This time I think I nailed it with the help of:
view all matches for this distribution
view release on metacpan or search on metacpan
lib/CGI/Emulate/PSGI/Streaming.pm view on Meta::CPAN
use CGI::Parse::PSGI::Streaming;
use SelectSaver;
use Carp qw(croak);
use 5.008001;
# ABSTRACT: streaming PSGI adapter for CGI
sub handler {
my ($class, $code) = @_;
# this closure is the PSGI application
return sub {
my $env = shift;
# this is the PSGI response, as a coderef because we want to
# have it streaming; as the PSGI spec says, it will be invoked
# by the backend, once per request, with a responder callback
return sub {
my ($responder) = @_;
# we have the responder (i.e. the thing we will send the
# response to), so we can now build the output filehandle
my $stdout = CGI::Parse::PSGI::Streaming::parse_cgi_output_streaming_fh($responder);
my $saver = SelectSaver->new("::STDOUT");
# emulate_environment comes from CGI::Emulate::PSGI
local %ENV = (%ENV, $class->emulate_environment($env));
lib/CGI/Emulate/PSGI/Streaming.pm view on Meta::CPAN
=encoding UTF-8
=head1 NAME
CGI::Emulate::PSGI::Streaming - streaming PSGI adapter for CGI
=head1 VERSION
version 1.0.1
lib/CGI/Emulate/PSGI/Streaming.pm view on Meta::CPAN
It is a subclass of L<< C<CGI::Emulate::PSGI> >>. The parsing logic is
implemented in L<< C<CGI::Parse::PSGI::Streaming> >>, which is heavily
based on L<< C<CGI::Parse::PSGI> >>.
Please note that using the PSGI application produced by this module
under a non-streaming backend will probably not work.
=head1 METHODS
=head2 C<handler>
my $app = CGI::Emulate::PSGI::Streaming->handler($code);
Creates a streaming PSGI application code reference out of CGI code
reference.
=head1 CGI.pm
(This section is copied from L<<
view all matches for this distribution
view release on metacpan or search on metacpan
set_response_body_buffer
$cgi = $cgi->set_response_body_buffer(128*1024);
Sets the buffer size (number of bytes to read at once) for streaming a
file or handle response body with "render" or "render_chunk". Defaults
to the value of the CGI_TINY_RESPONSE_BODY_BUFFER environment variable
or 131072 (128 KiB). A value of 0 will use the default value.
set_response_status
view all matches for this distribution
view release on metacpan or search on metacpan
t/unpacked/GraphViz/Changes view on Meta::CPAN
work under Win32!
- this is the Flight 63 edition
1.4 Wed Oct 3 07:57:42 BST 2001
- added new filehandle, scalar reference, and code reference
scheme to as_* to allow streaming of data, rather than
accumulating potentially very large output in memory (based
on patch by Dave Rolsky)
- new pagewidth and pageheight graph attributes for creating
PostScript mosaics of large graphs (idea by Nelson Loyola)
view all matches for this distribution
view release on metacpan or search on metacpan
data/tiddlers.json view on Meta::CPAN
"title": "AstroStuff",
"modified": "20251228224902826",
"created": "20251215054232525"
},
{
"text": "\"\"\"\no See Also:\n- [[Acronyms]]\n- https://www.videolan.org/vlc/libvlc.html\n\no App::SubtitleUtils:\n- Utilities related to video subtitles\n- https://metacpan.org/dist/App-SubtitleUtils\n\no Audio::Nama:\n- Multitrack recorder ...
"title": "AudioVisual",
"modified": "20260319014443216",
"created": "20231128214612326"
},
{
data/tiddlers.json view on Meta::CPAN
"modified": "20260322000911963",
"created": "20210124005554193"
},
{
"created": "20230501012018764",
"text": "\"\"\"\no See also:\n- ArrayHandling\n- CommandLineStuff\n- Data::Fake\n- Data::Grid\n- Data::Table::Text - Write data in tabular text format. Very flexible. Vast list of methods. Aimed at Amazon Web Services\n- Data::Transmute\n- Da...
"title": "DataTraversal",
"modified": "20260402085342261"
},
{
"created": "20220628023742776",
data/tiddlers.json view on Meta::CPAN
"modified": "20260101225041169",
"created": "20250405013058267"
},
{
"created": "20240706063155082",
"text": "\"\"\"\no See also:\n- CryptoStuff\n- MathsLibraries\n- [[UUID]]\n\no Acme::Selection::RarestFirst:\n- Rarest-First Selection Algorithm\n- https://metacpan.org/dist/Acme-Selection-RarestFirst\n\no App::freqtable:\n- Print frequency t...
"title": "StatisticsStuff",
"modified": "20260401230220122"
},
{
"text": "\"\"\"\no See also:\n- https://strada-lang.github.io/\n\no Strada:\n- Call compiled Strada shared libraries from Perl\n- https://metacpan.org/pod/Strada\n",
data/tiddlers.json view on Meta::CPAN
"modified": "20250928011502252",
"created": "20230801023701556"
},
{
"created": "20250407230041286",
"text": "\"\"\"\no See also:\n- ApacheStuff\n- AstroStuff\n- DatesAndTimes\n- GeographicStuff\n- [[HTTPHandling]]\n- NetworkProgramming\n- WebServices\n- https://lemonldap-ng.org/ - For a modular WebSSO (Single Sign On)\n- https://suricata.io...
"title": "SystemMonitoring",
"modified": "20260331231500108"
},
{
"text": "\"\"\"\no See also:\n- DataTraversal\n- LinguaStuff\n- ModuleBuilding - For Role::TinyCommons etc\n\no ArrayData::Lingua::Word::ID::KBBI::ByClass::Adjective:\n- Indonesian adjective words from KBBI (Kamus Besar Bahasa Indonesia)\n- h...
view all matches for this distribution
view release on metacpan or search on metacpan
lib/CPAN/Testers/API.pm view on Meta::CPAN
#pod
#pod C<$processor> is an optional subref that allows for processing each row
#pod before it is written. Use this to translate column names or values into
#pod the format the API expects.
#pod
#pod For this to work usefully behind Fastly, we also need to enable streaming
#pod miss so that Fastly streams the data to the end-user as it gets it:
#pod L<https://docs.fastly.com/guides/performance-tuning/improving-caching-performance-with-large-files#streaming-miss>.
#pod
#pod =cut
sub stream_rs {
my ( $c, $rs, $process ) = @_;
lib/CPAN/Testers/API.pm view on Meta::CPAN
C<$processor> is an optional subref that allows for processing each row
before it is written. Use this to translate column names or values into
the format the API expects.
For this to work usefully behind Fastly, we also need to enable streaming
miss so that Fastly streams the data to the end-user as it gets it:
L<https://docs.fastly.com/guides/performance-tuning/improving-caching-performance-with-large-files#streaming-miss>.
=head1 CONFIG
This application can be configured by setting the C<MOJO_CONFIG>
environment variable to the path to a configuration file. The
view all matches for this distribution
view release on metacpan or search on metacpan
t/data/build.single_extended.log view on Meta::CPAN
t/aggregate/live_component_controller_action_local.t .................. ok
t/aggregate/live_component_controller_action_multipath.t .............. ok
t/aggregate/live_component_controller_action_path.t ................... ok
t/aggregate/live_component_controller_action_path_matchsingle.t ....... ok
t/aggregate/live_component_controller_action_private.t ................ ok
t/aggregate/live_component_controller_action_streaming.t .............. ok
t/aggregate/live_component_controller_action_visit.t .................. ok
t/aggregate/live_component_controller_actionroles.t ................... ok
t/aggregate/live_component_controller_anon.t .......................... ok
t/aggregate/live_component_controller_args.t .......................... ok
t/aggregate/live_component_controller_attributes.t .................... ok
view all matches for this distribution
view release on metacpan or search on metacpan
distroprefs/BINGOS.POE-Component-Server-SimpleHTTP.yml view on Meta::CPAN
talk:
- "Do you want SSL support"
- "n\n"
- "Do you want PreFork support"
- "y\n"
- "Do you want to test streaming"
- "y\n"
view all matches for this distribution
view release on metacpan or search on metacpan
lib/CPAN/Audit/DB.pm view on Meta::CPAN
use warnings;
our $VERSION = '20260419.002';
sub db {
{"dists" => {"ActivePerl" => {"advisories" => [{"affected_versions" => ["==5.16.1.1601"],"cves" => ["CVE-2012-5377"],"description" => "Untrusted search path vulnerability in the installation functionality in ActivePerl 5.16.1.1601, when installed in...
}
__PACKAGE__;
view all matches for this distribution
view release on metacpan or search on metacpan
include/boost/blank.hpp view on Meta::CPAN
inline bool operator>(const blank&, const blank&)
{
return false;
}
// streaming support
//
#if !defined(BOOST_NO_IOSTREAM)
BOOST_TEMPLATED_STREAM_TEMPLATE(E,T)
inline BOOST_TEMPLATED_STREAM(ostream, E,T)& operator<<(
view all matches for this distribution
view release on metacpan or search on metacpan
src/catch.hpp view on Meta::CPAN
void throwLogicError( std::string const& message, SourceLineInfo const& locationInfo );
void seedRng( IConfig const& config );
unsigned int rngSeed();
// Use this in variadic streaming macros to allow
// >> +StreamEndStop
// as well as
// >> stuff +StreamEndStop
struct StreamEndStop {
std::string operator+() {
view all matches for this distribution
view release on metacpan or search on metacpan
src/catch.hpp view on Meta::CPAN
std::size_t line;
};
std::ostream& operator << ( std::ostream& os, SourceLineInfo const& info );
// Use this in variadic streaming macros to allow
// >> +StreamEndStop
// as well as
// >> stuff +StreamEndStop
struct StreamEndStop {
std::string operator+() const;
view all matches for this distribution
view release on metacpan or search on metacpan
date: 2000/08/18 21:44:36; author: sussman; state: Exp; lines: +6 -7
comments update
----------------------------
revision 1.42
date: 2000/08/18 21:30:29; author: sussman; state: Exp; lines: +106 -19
New interface for optionally streaming prop-deltas.
----------------------------
revision 1.41
date: 2000/08/18 00:49:50; author: kfogel; state: Exp; lines: +6 -6
Making WC library use the new stuff in delta library:
Tweaked #includes and Makefiles as appropriate, and defined skeleton
functions.
----------------------------
revision 1.4
date: 2000/08/14 23:17:41; author: kfogel; state: Exp; lines: +1 -1
Rewrite to use the callee-push streaming interface.
This commit is _not_ going to compile, so don't even try.
----------------------------
revision 1.3
date: 2000/08/08 23:22:13; author: kfogel; state: Exp; lines: +0 -1
date: 2000/08/21 23:37:06; author: kfogel; state: Exp; lines: +2 -2
Many changes to do with creating administrative subdirs.
----------------------------
revision 1.29
date: 2000/08/14 23:17:41; author: kfogel; state: Exp; lines: +35 -18
Rewrite to use the callee-push streaming interface.
This commit is _not_ going to compile, so don't even try.
----------------------------
revision 1.28
date: 2000/08/03 21:11:42; author: kfogel; state: Exp; lines: +54 -72
date: 2000/08/14 23:19:10; author: kfogel; state: Exp; lines: +7 -0
Plug in new finish_file() callback.
----------------------------
revision 1.1
date: 2000/08/14 23:17:41; author: kfogel; state: Exp;
Rewrite to use the callee-push streaming interface.
This commit is _not_ going to compile, so don't even try.
=============================================================================
RCS file: /cvs/subversion/subversion/libsvn_wc/Attic/deltaparse.c,v
total revisions: 12; selected revisions: 12
description:
----------------------------
revision 1.12
date: 2000/08/14 23:17:41; author: kfogel; state: dead; lines: +0 -0
Rewrite to use the callee-push streaming interface.
This commit is _not_ going to compile, so don't even try.
----------------------------
revision 1.11
date: 2000/08/09 15:29:32; author: sussman; state: Exp; lines: +10 -1
Tweaked #includes and Makefiles as appropriate, and defined skeleton
functions.
----------------------------
revision 1.2
date: 2000/08/14 23:17:43; author: kfogel; state: Exp; lines: +35 -1
Rewrite to use the callee-push streaming interface.
This commit is _not_ going to compile, so don't even try.
----------------------------
revision 1.1
date: 2000/08/08 16:23:28; author: kfogel; state: Exp;
view all matches for this distribution
view release on metacpan or search on metacpan
t/documents.t view on Meta::CPAN
use Test::More;
use Test::Exception;
use Text::CaffeinatedMarkup::HTMLFormatter;
my $data = "Yup, we're here! Caffeinated Panda Creations has launched the first phase of our new website.\n\nRight now as you can see the blog is up and running and we'll be using it to keep you up to date with projects, events we're involved with, a...
my $formatter = Text::CaffeinatedMarkup::HTMLFormatter->new;
lives_ok{$formatter->format($data)} "Document #1 parse ok";
done_testing();
view all matches for this distribution
view release on metacpan or search on metacpan
* Remove the wrappers for cairo_pdf_surface_set_dpi and
cairo_ps_surface_set_dpi. Developers should use
cairo_surface_set_fallback_resolution instead.
* Improve the enum converters to produce more useful error messages.
* Wrap the streaming functions:
- cairo_surface_write_to_png_stream
- cairo_image_surface_create_from_png_stream
- cairo_pdf_surface_create_for_stream
- cairo_ps_surface_create_for_stream
* Wrap new API:
view all matches for this distribution
view release on metacpan or search on metacpan
Revision history for Catalyst-Action-FromPSGI
0.001006 2014-08-04 20:59:58-05:00 America/Chicago
- Make streaming/deferal work by leveraging Catalyst from October 2013
(Thanks Thomas Sibley!)
0.001005 2013-09-18 15:56:55 America/Chicago
- Fixed yet another psgi.input issue (thanks Wes Malone for finding this)
view all matches for this distribution
view release on metacpan or search on metacpan
t/lib/TestApp/Controller/Action/Streaming.pm view on Meta::CPAN
package TestApp::Controller::Action::Streaming;
use strict;
use base 'TestApp::Controller::Action';
sub streaming : Global {
my ( $self, $c ) = @_;
for my $line ( split "\n", <<'EOF' ) {
foo
bar
baz
view all matches for this distribution
view release on metacpan or search on metacpan
t/lib/TestApp/Controller/Action/Streaming.pm view on Meta::CPAN
package TestApp::Controller::Action::Streaming;
use strict;
use base 'TestApp::Controller::Action';
sub streaming : Global {
my ( $self, $c ) = @_;
for my $line ( split "\n", <<'EOF' ) {
foo
bar
baz
view all matches for this distribution
view release on metacpan or search on metacpan
t/lib/TestApp/Controller/Action/Streaming.pm view on Meta::CPAN
package TestApp::Controller::Action::Streaming;
use strict;
use base 'TestApp::Controller::Action';
sub streaming : Global {
my ( $self, $c ) = @_;
for my $line ( split "\n", <<'EOF' ) {
foo
bar
baz
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Catalyst/Engine/PSGI.pm view on Meta::CPAN
=item *
Your application is supposed to work with any PSGI servers without any
code modifications, but if your application uses C<< $c->res->write >>
to do streaming write, this engine will buffer the ouput until your
app finishes.
To do real streaming with this engine, you should implement an
IO::Handle-like object that responds to C<getline> method that returns
chunk or undef when done, and set that object to C<< $c->res->body >>.
Alternatively, it is possible to set the body to a code reference,
which will be used to stream content as documented in the
view all matches for this distribution
view release on metacpan or search on metacpan
0.10 2009-02-08
- POD addition.
- Switch from NEXT to MRO::Compat
0.09 2007-10-08
- Bump dependencies so that streaming a file also causes the cookie to
be updated.
- Add tests for this
0.08 2007-09-14
- Fix live test with Mech version 0.37+
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Catalyst/Plugin/Session/Store/Cookie.pm view on Meta::CPAN
a bunch of stuff into the user session, this will likely not work out.
B<NOTE> Since we need to store all the session info in the cookie, the session
state will be set at ->finalize_headers stage (rather than at ->finalize_body
which is the default for session storage plugins). What this means is that if
you use the streaming or socket interfaces ($c->response->write, $c->response->write_fh
and $c->req->io_fh) your session state will get saved early. For example you
cannot do this:
$c->res->write("some stuff");
$c->session->{key} = "value";
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Catalyst/Plugin/Session/Store.pm view on Meta::CPAN
However some storage plugins may wish to finalize earlier, during header
finalization. For example a storage that saved state in a client cookie
would wish this. If a storage plugin wants to finalize early it should set
$c->_needs_early_session_finalization to true. Please note that if you
do this in a storage plugin, you should warn users not to attempt to change
or add session keys if you use a streaming or socket interface such as
$c->res->write, $c->res->write_fh or $c->req->io_fh.
=cut
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Catalyst.pm view on Meta::CPAN
Make sure your body is encoded properly IF you set an encoding. By
default the encoding is UTF-8 but you can disable it by explicitly setting the
encoding configuration value to undef.
We can only encode when the body is a scalar. Methods for encoding via the
streaming interfaces (such as C<write> and C<write_fh> on L<Catalyst::Response>
are available).
See L</ENCODING>.
=cut
view all matches for this distribution