view release on metacpan or search on metacpan
lib/Crop/Error.pm view on Meta::CPAN
Constant: CRIT
Critical resource error.
May be temporary error. This state require sufficient reaction.
Tipical causes are: unreachable third-party service or resource is busy, missing config file, etc.
Constant: ERR
Business logic error.
System is still in working state, but normal logic of request hadnler is broken. Reaction for
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Crypt/Diceware/Wordlist/Beale.pm view on Meta::CPAN
brutal brute bryan bs bt btu bu bub buck bucks bud buddha buddy budge buds
buff bug buggy bugle bugs buick build built bulb bulbs bulge bulk bulky
bull bulls bully bum bump bumps bumpy bums bun bunch bunco bundy bunk bunny
buns bunt bunts buoy bureau burg burger buried burke burly burma burn burns
burnt burp burps burro burst burt burton bury bus bush bushel bushy buss
bust busy but butane butch butt butte buxom buy buyer buys buzz bv bvm bw
bwana bx by bye bylaw byline byob bypass byrd byron byte bytes byway bz c
c&w c's c/o ca cab cabal cabana cabin cable cabot cache cackle cacti
caddy cadet caesar cafe cage caged cages cagey cain cairn cairo cajun cake
cakes calf calico call calls callus calm calms calvin cam came camel cameo
camera camp camps camry can can't canal canary cancer candle candy cane
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Crypt/HSXKPasswd/Dictionary/EN.pm view on Meta::CPAN
'building',
'built',
'burn',
'burning',
'business',
'busy',
'butter',
'cake',
'call',
'came',
'cannot',
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Crypt/OpenSSL/CA.pm view on Meta::CPAN
=back
=head1 ACKNOWLEDGEMENTS
IDEALX (L<http://www.idealx.com/>) is the company that put food on my
family's table for 5 years while I was busy coding IDX-PKI. I owe
them pretty much everything I know about PKIX, and a great deal of my
todays' Perl-fu. However, the implementation of this module is
original and does not re-use any code in IDX-PKI.
=head1 COPYRIGHT & LICENSE
view all matches for this distribution
view release on metacpan or search on metacpan
src/build-aux/install-sh view on Meta::CPAN
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
{
# Now remove or move aside any old file at destination location.
# We try this two ways since rm can't unlink itself on some
# systems and the destination file might be busy for other
# reasons. In this case, the final cleanup might fail but the new
# file should still install successfully.
{
test ! -f "$dst" ||
$doit $rmcmd -f "$dst" 2>/dev/null ||
view all matches for this distribution
view release on metacpan or search on metacpan
cpanm Dist::Zilla
dzil authordeps --missing | cpanm
dzil build
While Dist::Zilla takes the busywork and mistakes out of module authorship,
it fails to address the need of XS authors to easily compile XS projects
and run single test cases rather than the whole test suite. For this, you
might find the following script handy:
./dzil-prove t/01-ctor.t # or any other test case
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Crypt/XKCDCommon1949.pm view on Meta::CPAN
"both","bottle","bottom","bound","bow","bowl","box","boy",
"brain","branch","brass","brave","bread","break","breakfast","breath",
"breathe","breathing","breeze","brick","bridge","brief","bright","bring",
"broad","broke","broken","brother","brought","brown","brush","buffalo",
"build","building","built","buried","burn","burst","bus","bush",
"business","busy","but","butter","buy","by","cabin","cage",
"cake","call","calm","came","camera","camp","can","canal",
"cannot","cap","capital","captain","captured","car","carbon","card",
"care","careful","carefully","carried","carry","case","cast","castle",
"cat","catch","cattle","caught","cause","cave","cell","cent",
"center","central","century","certain","certainly","chain","chair","chamber",
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Crypt/XkcdPassword/Words/EN.pm view on Meta::CPAN
rather
julian
involved
swear
piece
busy
law
decided
black
joey
happening
view all matches for this distribution
view release on metacpan or search on metacpan
lib/CtrlO/Crypt/XkcdPassword/Wordlist/eff_large.pm view on Meta::CPAN
busboy
bush
busily
busload
bust
busybody
buzz
cabana
cabbage
cabbie
cabdriver
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Curses/UI/AnyEvent.pm view on Meta::CPAN
Note that while a dialog is active, all keypresses are routed to that dialog instead of the main screen. However, since the main event loop is still active, it can still be processing externally triggered or timed events.
=head1 BUGS
There are still a few places that call `do_one_event()` in a loop instead of using the AnyEvent loop so they will busy-loop until dismissed by the user and no background events will be processed. The cases I know about are search windows and fatal er...
=head1 SEE ALSO
L<Curses-UI-AnyEvent github repo|https://github.com/hoytech/Curses-UI-AnyEvent>
view all matches for this distribution
view release on metacpan or search on metacpan
lib/DB/Object/SQLite.pm view on Meta::CPAN
# Even though login, password, server, host are not used, I was hesitating, but decided to leave them as ok, and ignore them
# Or maybe should I issue an error when they are provided?
my $core = [qw( db login passwd host port driver database server opt uri debug cache_connections cache_dir cache_query cache_table unknown_field use_cache )];
my @sqlite_params = grep( /^sqlite_/, keys( %$param ) );
# See DBD::SQLite for the list of valid parameters
# E.g.: sqlite_open_flags sqlite_busy_timeout sqlite_use_immediate_transaction sqlite_see_if_its_a_number sqlite_allow_multiple_statements sqlite_unprepared_statements sqlite_unicode sqlite_allow_multiple_statements sqlite_use_immediate_transacti...
push( @$core, @sqlite_params );
return( $core );
}
sub _dbi_connect
view all matches for this distribution
view release on metacpan or search on metacpan
lib/DB/Skip.pm view on Meta::CPAN
The perl debugger is a wonderful tool and offers you many options to get to
where you want to be in your code. However sometimes you want to just cruise
through it.
This can be somewhat frustrating if you're using modules like Moo that insert a
lot of busywork functions that are necessary for execution, but obscure the
actual flow in the debugger.
Loading this module in your code will augment the debugger's main function with
one that silently ignores statements when their package or sub matches any of
the given parameters.
view all matches for this distribution
view release on metacpan or search on metacpan
It is important to check that you are using the latest version before
posting. If you're not then I'm *very* likely to simply say "upgrade to
the latest". You would do yourself a favour by upgrading beforehand.
Please remember that I'm _very_ busy. Try to help yourself first,
then try to help me help you by following these guidelines carefully.
Regards,
Tim, Jeff and Jochen
view all matches for this distribution
view release on metacpan or search on metacpan
It is important to check that you are using the latest version before
posting. If you're not then I'm *very* likely to simply say "upgrade to
the latest". You would do yourself a favour by upgrading beforehand.
Please remember that I'm _very_ busy. Try to help yourself first,
then try to help me help you by following these guidelines carefully.
Regards,
dbmaker@lion.syscom.com.tw
view all matches for this distribution
view release on metacpan or search on metacpan
static char* gDatabase;
#define MAXCURS 5
static _SQCURSOR _SQ[MAXCURS];
static struct sqlda *udesc[MAXCURS];
static int cursbusy[MAXCURS] = {0,0,0,0,0};
void
dbd_init(dbistate)
dbistate_t *dbistate;
{
char *statement = SvPV(*svp, na);
#if I4DEBUG
fprintf(stderr, "dbd_st_execute\n");
#endif
for (i = 0; i < MAXCURS; i++)
if (!cursbusy[i])
{
cursbusy[i] = 1;
imp_sth->index = i;
break;
}
_iqprepare(&_SQ[imp_sth->index], statement);
if (sqlca.sqlcode != 0)
struct imp_sth_st* imp_sth;
{
#if I4DEBUG
fprintf(stderr, "dbd_st_finish\n");
#endif
if (cursbusy[imp_sth->index])
{
cursbusy[imp_sth->index] = 0;
_iqclose(_SQ[imp_sth->index]);
imp_sth->execd = 0;
}
DBIc_ACTIVE_off(imp_sth);
return 1;
view all matches for this distribution
view release on metacpan or search on metacpan
It is important to check that you are using the latest version before
posting. If you're not then I'm *very* likely to simply say "upgrade to
the latest". You would do yourself a favour by upgrading beforehand.
Please remember that I'm _very_ busy. Try to help yourself first,
then try to help me help you by following these guidelines carefully.
Regards,
Tim, Jeff and Martin.
view all matches for this distribution
view release on metacpan or search on metacpan
examples/ora_explain.pl view on Meta::CPAN
$SqlMarker = "/* This statement was generated by explain */";
################################################################################
# Switch the hourglass on or off
sub busy($)
{
my ($state) = @_;
if ($state && $PlanMain->grabCurrent()) { $PlanMain->Busy(-recurse => 1); }
else { $PlanMain->Unbusy(1); }
}
################################################################################
# Display an error message in a dialog
examples/ora_explain.pl view on Meta::CPAN
{ my $l = length($line); $width = $l if ($l > $width); }
$width = 80 if ($width > 80);
$height = 4 if ($height < 4);
$height = 10 if ($height > 10);
busy(0);
my $dialog = $PlanMain->Toplevel(-title => "Error");
$dialog->withdraw();
my $text = $dialog->Scrolled("ROText", -height => $height, -width => $width,
-borderwidth => 3, -relief => "raised",
-wrap => "word", -scrollbars => "oe")
examples/ora_explain.pl view on Meta::CPAN
sub login($$$)
{
my ($database, $username, $password) = @_;
busy(1);
# Close any existing handle
if ($Db)
{
$Db->disconnect();
$Db = undef;
examples/ora_explain.pl view on Meta::CPAN
$Db = undef;
die("User $User does not have a PLAN_TABLE.\n",
"Run the script utlxplan.sql to create one.\n");
}
busy(0);
return(1);
}
################################################################################
# Clear the plan tree & details windows
examples/ora_explain.pl view on Meta::CPAN
sub disp_index($$)
{
my ($owner, $index) = @_;
# Create the index definition frame
busy(1);
my $dialog = $PlanMain->Toplevel(-title => "Index");
$dialog->withdraw();
$dialog->resizable(0, 0);
my $index_fr = $dialog->Frame(-borderwidth => 3, -relief => "raised");
$index_fr->Label(-text => "$owner.$index", -relief => "ridge",
examples/ora_explain.pl view on Meta::CPAN
# Pack the grid and add the close button
$dialog->Button(-text => "Close", -command => sub { $dialog->destroy(); })
->pack(-padx => 6, -pady => 6);
$dialog->Popup();
busy(0);
return(1);
}
################################################################################
# Callback for adding/removing index definitions to a table dialog
examples/ora_explain.pl view on Meta::CPAN
sub disp_table_cb($$$$$)
{
my ($owner, $table, $num_cols, $index_fr, $index_bn) = @_;
# If this is the first time through, fetch the index definitions
busy(1);
if (! $index_fr->children())
{
# This will retrieve the names & owners of all the indexes on the table
my $qry = $Db->prepare(qq(
$SqlMarker select owner, index_name
examples/ora_explain.pl view on Meta::CPAN
else
{
$index_bn->configure(-text => "Indexes");
$index_fr->packForget();
}
busy(0);
return(1);
}
################################################################################
# Display a popup dialog showing the structure of a table
examples/ora_explain.pl view on Meta::CPAN
sub disp_table($$)
{
my ($owner, $table) = @_;
# Create the dialog for displaying the object details
busy(1);
my $dialog = $PlanMain->Toplevel(-title => "Table");
$dialog->withdraw();
$dialog->resizable(0, 0);
# Create the table definition frame
examples/ora_explain.pl view on Meta::CPAN
$index_bn->configure(-command => sub { disp_table_cb($owner, $table, $num_cols,
$index_fr, $index_bn); });
$box1->pack(-side => "bottom", -pady => 6);
$dialog->Popup();
busy(0);
return(1);
}
################################################################################
# Display the query plan tree
examples/ora_explain.pl view on Meta::CPAN
# Get the plan step & return if it doesn't refer to an object
my $row = $Plan->{key}{$key};
return(1) if (! $row->{OBJECT_NAME});
# Work out the type of the object - table or index
busy(1);
my $qry = $Db->prepare(qq(
$SqlMarker select object_type from all_objects
where object_name = :1 and owner = :2
));
$qry->execute($row->{OBJECT_NAME}, $row->{OBJECT_OWNER})
|| die("Object type:\n$DBI::errstr\n");
my ($object_type) = $qry->fetchrow_array();
$qry->finish();
busy(0);
if ($object_type eq "TABLE")
{
disp_table($row->{OBJECT_OWNER}, $row->{OBJECT_NAME});
}
examples/ora_explain.pl view on Meta::CPAN
# Get the plan step & return if it doesn't refer to an object
my $row = $Plan->{key}{$key};
return(1) if (! $row->{OBJECT_NAME});
# Work out the type of the object - table or index
busy(1);
my $qry = $Db->prepare(qq(
$SqlMarker select object_type from all_objects
where object_name = :1 and owner = :2
));
$qry->execute($row->{OBJECT_NAME}, $row->{OBJECT_OWNER})
|| die("Object type:\n$DBI::errstr\n");
my ($object_type) = $qry->fetchrow_array();
$qry->finish();
if ($object_type ne "TABLE")
{
busy(0);
return(1);
}
# Build the popup menu
$qry = $Db->prepare(qq(
examples/ora_explain.pl view on Meta::CPAN
$menu->command(-label => "$index_owner.$index_name",
-command => [ \&disp_index, $index_owner, $index_name ]);
$count++;
}
$qry->finish();
busy(0);
$menu->Popup(-popover => "cursor", -popanchor => "nw") if ($count);
return(1);
}
################################################################################
examples/ora_explain.pl view on Meta::CPAN
connect by prior id = parent_id and statement_id = :1
start with id = 0 and statement_id = :1
);
# Clean any old stuff from the plan_table
busy(1);
$Db->do(qq($SqlMarker delete from plan_table where statement_id = :1),
undef, $$)
|| die("Delete from plan_table:\n$DBI::errstr\n");
$Db->commit();
examples/ora_explain.pl view on Meta::CPAN
# Clean up
$qry->finish();
$Db->do(qq($SqlMarker delete from plan_table where statement_id = :1),
undef, $$);
$Db->commit();
busy(0);
return(1);
}
################################################################################
# Wrapper for _explain - adds error handling
examples/ora_explain.pl view on Meta::CPAN
{
my ($address, $puid) = @_;
# Empty the widget & prepare the SQL
$GrabDetails->delete("1.0", "end");
busy(1);
my $qry = $Db->prepare(qq(
$SqlMarker select executions, disk_reads, buffer_gets, rows_processed,
sorts, loads, parse_calls, first_load_time
from v\$sqlarea where address = :1
)) || die("Statement info:\n$DBI::errstr\n");
examples/ora_explain.pl view on Meta::CPAN
sprintf($fmt, $disk_reads / $executions, $buffer_gets / $executions,
$rows_processed / $executions, $sorts / $executions,
$loads / $executions, $parse_calls / $executions));
}
}
busy(0);
# Display the formatted info
return(1);
}
examples/ora_explain.pl view on Meta::CPAN
my ($text, $tag) = @_;
$text->tag("configure", $tag, -relief => "flat");
};
# Prepare the queries
busy(1);
my $qry1 = qq{$SqlMarker select address, username from v\$sqlarea, all_users};
$qry1 .= qq{ where sql_text not like '\%$SqlMarker\%'};
$qry1 .= qq{ and sql_text not like '\%insert into \%plan_table\%'};
$qry1 .= qq{ and sql_text not like '\%explain plan\%'};
$qry1 .= qq{ and user_id = parsing_user_id}; # if($user || $no_sys);
examples/ora_explain.pl view on Meta::CPAN
# Clean up
$qry1->finish();
grab_select_cb($GrabSql, $first_address) if ($first_address);
$GrabStatus->configure(-text => "$count queries grabbed");
busy(0);
return(1);
}
################################################################################
# Create a top-level window for getting SQL from the shared pool cache
view all matches for this distribution
view release on metacpan or search on metacpan
benchmarks/test-connect view on Meta::CPAN
use DBI;
use Benchmark;
$opt_loop_count=1000; # Change this to make test harder/easier
$str_length=65000; # This is the length of blob strings in PART:5
$max_test=20; # How many times to test if the server is busy
chomp($pwd = `pwd`); $pwd = "." if ($pwd eq '');
require "$pwd/bench-init.pl" || die "Can't read Configuration file: $!\n";
# This is the length of blob strings in PART:5
view all matches for this distribution
view release on metacpan or search on metacpan
*/
typedef enum a_sqlany_callback_type {
/// This function is called just before a database request is sent to the server.
/// CALLBACK_START is used only on Windows operating systems.
CALLBACK_START = 0,
/// This function is called repeatedly by the interface library while the database server or client library is busy processing your database request.
CALLBACK_WAIT,
/// This function is called after the response to a database request has been received by the DBLIB interface DLL.
/// CALLBACK_FINISH is used only on Windows operating systems.
CALLBACK_FINISH,
/// This function is called when messages are received from the server during the processing of a request.
view all matches for this distribution
view release on metacpan or search on metacpan
lib/DBD/SQLcipher.pm view on Meta::CPAN
if (!$methods_are_installed && DBD::SQLcipher::NEWAPI ) {
DBI->setup_driver('DBD::SQLcipher');
DBD::SQLcipher::db->install_method('sqlite_last_insert_rowid');
DBD::SQLcipher::db->install_method('sqlite_busy_timeout');
DBD::SQLcipher::db->install_method('sqlite_create_function');
DBD::SQLcipher::db->install_method('sqlite_create_aggregate');
DBD::SQLcipher::db->install_method('sqlite_create_collation');
DBD::SQLcipher::db->install_method('sqlite_collation_needed');
DBD::SQLcipher::db->install_method('sqlite_progress_handler');
lib/DBD/SQLcipher.pm view on Meta::CPAN
You shouldn't (re)use a database handle you created (probably to
set up a database schema etc) before you fork(). Otherwise, you
might see a database corruption in the worst case.
If you need to fork(), (re)open a database after you fork().
You might also want to tweak C<sqlite_busy_timeout> and
C<sqlite_use_immediate_transaction> (see below), depending
on your needs.
If you need a higher level of concurrency than SQLcipher supports,
consider using other client/server database engines.
lib/DBD/SQLcipher.pm view on Meta::CPAN
=head2 $dbh->sqlite_db_filename()
Retrieve the current (main) database filename. If the database is in-memory or temporary, this returns C<undef>.
=head2 $dbh->sqlite_busy_timeout()
Retrieve the current busy timeout.
=head2 $dbh->sqlite_busy_timeout( $ms )
Set the current busy timeout. The timeout is in milliseconds.
=head2 $dbh->sqlite_create_function( $name, $argc, $code_ref, $flags )
This method will register a new function which will be usable in an SQL
query. The method's parameters are:
view all matches for this distribution
view release on metacpan or search on metacpan
lib/DBD/SQLeet.pm view on Meta::CPAN
if (!$methods_are_installed && DBD::SQLeet::NEWAPI ) {
DBI->setup_driver('DBD::SQLeet');
DBD::SQLeet::db->install_method('sqlite_last_insert_rowid');
DBD::SQLeet::db->install_method('sqlite_busy_timeout');
DBD::SQLeet::db->install_method('sqlite_create_function');
DBD::SQLeet::db->install_method('sqlite_create_aggregate');
DBD::SQLeet::db->install_method('sqlite_create_collation');
DBD::SQLeet::db->install_method('sqlite_collation_needed');
DBD::SQLeet::db->install_method('sqlite_progress_handler');
view all matches for this distribution
view release on metacpan or search on metacpan
lib/DBD/SQLite.pm view on Meta::CPAN
Otherwise, it is the hidden ROWID column. See the sqlite docs for details.
Note: You can now use $dbh->last_insert_id() if you have a recent version of
DBI.
=head2 $dbh->func( 'busy_timeout' )
Retrieve the current busy timeout.
=head2 $dbh->func( $ms, 'busy_timeout' )
Set the current busy timeout. The timeout is in milliseconds.
=head2 $dbh->func( $name, $argc, $func_ref, "create_function" )
This method will register a new function which will be useable in SQL
query. The method's parameters are:
view all matches for this distribution
view release on metacpan or search on metacpan
lib/DBD/SQLite.pm view on Meta::CPAN
if (!$methods_are_installed && DBD::SQLite::NEWAPI ) {
DBI->setup_driver('DBD::SQLite');
DBD::SQLite::db->install_method('sqlite_last_insert_rowid');
DBD::SQLite::db->install_method('sqlite_busy_timeout');
DBD::SQLite::db->install_method('sqlite_create_function');
DBD::SQLite::db->install_method('sqlite_create_aggregate');
DBD::SQLite::db->install_method('sqlite_create_collation');
DBD::SQLite::db->install_method('sqlite_collation_needed');
DBD::SQLite::db->install_method('sqlite_progress_handler');
lib/DBD/SQLite.pm view on Meta::CPAN
You shouldn't (re)use a database handle you created (probably to
set up a database schema etc) before you fork(). Otherwise, you
might see a database corruption in the worst case.
If you need to fork(), (re)open a database after you fork().
You might also want to tweak C<sqlite_busy_timeout> and
C<sqlite_use_immediate_transaction> (see below), depending
on your needs.
If you need a higher level of concurrency than SQLite supports,
consider using other client/server database engines.
lib/DBD/SQLite.pm view on Meta::CPAN
=head2 $dbh->sqlite_db_filename()
Retrieve the current (main) database filename. If the database is in-memory
or temporary, this returns an empty string, or C<undef>.
=head2 $dbh->sqlite_busy_timeout()
Retrieve the current busy timeout.
=head2 $dbh->sqlite_busy_timeout( $ms )
Set the current busy timeout. The timeout is in milliseconds.
=head2 $dbh->sqlite_create_function( $name, $argc, $code_ref, $flags )
This method will register a new function which will be usable in an SQL
query. The method's parameters are:
view all matches for this distribution
view release on metacpan or search on metacpan
- Add META and POD tests, and META info for EUMM
0.34 2013-04-01 rurban
- Fix SEGV in t/ak-dbd.t with asan, concurrent _sqlite2_fetch_row [cpan #55636]
- Add return value for dbd_bind_ph() - bind_param with handle
- Add declaration for sqlite2_busy_timeout()
- Fix clang -Wparentheses and -Wint-conversion warnings
0.33
- Set HAVE_USLEEP appropriately. This massively improves
concurrent access to your SQLite DB.
0.32
- Renamed to DBD::SQLite2 to allow backwards compatibility
- Implemented busy_timeout API
- Add internal line number to error reporting
0.31
- Fixed a free() bug on Win32
- Silence warnings in test suite
view all matches for this distribution
view release on metacpan or search on metacpan
=item loginTimeout
Specify the number of seconds that DBI->connect() will wait for a
response from the Sybase server. If the server fails to respond before the
specified number of seconds the DBI->connect() call fails with a timeout
error. The default value is 60 seconds, which is usually enough, but on a busy
server it is sometimes necessary to increase this value:
$dbh = DBI->connect("dbi:Sybase:loginTimeout=240", # wait up to 4 minutes
$user, $passwd);
view all matches for this distribution
view release on metacpan or search on metacpan
lib/DBD/TreeData.pm view on Meta::CPAN
=head2 Internet Relay Chat
You can get live help by using IRC ( Internet Relay Chat ). If you don't know what IRC is,
please read this excellent guide: L<http://en.wikipedia.org/wiki/Internet_Relay_Chat>. Please
be courteous and patient when talking to us, as we might be busy or sleeping! You can join
those networks/channels and get help:
=over 4
=item *
view all matches for this distribution
view release on metacpan or search on metacpan
also send patches to actual bugs. I may respond with requests for
particular tests and actions to try on your machine.
Mention the word "XBase" in the Subject line, otherwise your post
will probably just slip through my xxx MB daily email load without
even being read. Please note that I'm _very_ busy, so try to help me
to help you by using the latest version of the module, minimalizing
the script code that causes you problems, providing me with tiny
sample datafile, anything that might be related. Detailed description
and small examples are the best.
view all matches for this distribution
view release on metacpan or search on metacpan
cci-src/config/install-sh view on Meta::CPAN
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
# Now remove or move aside any old file at destination location.
# We try this two ways since rm can't unlink itself on some
# systems and the destination file might be busy for other
# reasons. In this case, the final cleanup might fail but the new
# file should still install successfully.
{
if test -f "$dstdir/$dstfile"; then
$doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \
view all matches for this distribution
view release on metacpan or search on metacpan
It is important to check that you are using the latest version before
posting. If you're not then we're very likely to simply say "upgrade to
the latest". You would do yourself a favour by upgrading beforehand.
Please remember that we're all busy. Try to help yourself first,
then try to help us help you by following these guidelines carefully.
Regards,
Tim Bunce and the perl5-dbi team.
view all matches for this distribution
view release on metacpan or search on metacpan
lib/DBIx/Class/AuditAny.pm view on Meta::CPAN
=head2 Background
This module was originally written in 2012 for an internal client project, and the process
of getting it released open-source as a stand-alone, general-purpose module was started in
2013. However, I got busy with other projects and wasn't able to complete a CPAN release at
that time (mainly due to missing docs and minor loose ends). I finally came back to this
project (May 2015) to actually get a release out to CPAN. So, even though the release date
is in 2015, the majority of the code is actually several years old (and has been running
perfectly in production for several client apps the whole time).
view all matches for this distribution