perl

Including uncovered files in Devel::Cover reports

I have a project setup like this: bin/fizzbuzz-game.pl lib/FizzBuzz.pm test/TestFizzBuzz.pm test/TestFizzBuzz.t When I run coverage on this, using perl -MDevel::Cover=-db,/tmp/cover_db test/*.t ... I get the following output: ----------------------------------- ------ ------ ------ ------ ------ ------ File ...

How do I create a hash of hashes in Perl?

Based on my current understanding of hashes in Perl, I would expect this code to print "hello world." It instead prints nothing. %a=(); %b=(); $b{str} = "hello"; $a{1}=%b; $b=(); $b{str} = "world"; $a{2}=%b; print "$a{1}{str} $a{2}{str}"; I assume that a hash is just like an array, so why can't I make a hash contain another? ...

What's the deal with reftype { } ?

I recently saw some code that reminded me to ask this question. Lately, I've been seeing a lot of this: use Scalar::Util 'reftype'; if ( reftype $some_ref eq reftype { } ) { ... } What is the purpose of calling reftype on an anonymous hashref? Why not just say eq 'HASH' ? ...

Why is Perl's $? returning the wrong value for the exit code of a forked process?

Consider this trivial example of fork()ing then waiting for a child to die in Perl: #!/usr/bin/perl use strict; use warnings; if (fork() == 0) { exit(1); } waitpid(-1,0); print $?; Running the script on Solaris 10 I get this result: $ perl test.pl 256 I suspect the values of are being shifted upwards because when I do e...

Tailing 'Jobs' with Perl under mod_perl

Hi everyone, I've got this project running under mod_perl shows some information on a host. On this page is a text box with a dropdown that allows users to ping/nslookup/traceroute the host. The output is shown in the text box like a tail -f. It works great under CGI. When the user requests a ping it would make an AJAX call to the serv...

How to define virtual IP programmatically?

Hi! I need to define Virtual IP programmatically (Perl or VB or CMD or java). I need it for temporary use, I can't use any actual IP address and I don't care if it will be accessible only from local machine. Any help will be appreciated. Thanks, Yan ...

How can I process a Perl array element in a shell script?

For example: In Perl: @array = (1,2,3); system ("/tmp/a.sh @array" ); In my shell script, how do I handle this array in shell script? How do I handle the shell script to receive the arguments, and how do I use that array variable in shell script? ...

Generic unit test scheduling

Hello, I'm (re)writing a program that does generic unit test scheduling. The current program is a mono-threaded Perl program, but I'm willing to modularize it and parallelize the tests. I'm also considering rewriting it in Python. Here is what I need to do: I have a list of tests, with the following attributes: uri: a URI to test (c...

Why does Perl's readdir() cache directory entries?

For some reason Perl keeps caching the directory entries I'm trying to read using readdir: opendir(SNIPPETS, $dir_snippets); # or die... while ( my $snippet = readdir(SNIPPETS) ) { print ">>>".$snippet."\n"; } closedir(SNIPPETS); Since my directory contains two files, test.pl and test.man, I'm expecting the following output: . .. te...

How can I remove HTML span tags with a Perl one liner?

I want to perform the following vim substitution as a one-liner in the terminal with Perl. I would prefer to allow for any occurences of whitespace or newlines, rather than explicitly catering for them as I am below. %s/blockDontForget">\n*\s*<p><span><a\(.*\)<\/span>/blockDontForget"><p><a\1/g I've tried this: perl -pi -e 's/bl...

How can I create the XML::Simple data structure using a Perl XML SAX parser?

Summary: I am looking a fast XML parser (most likely a wrapper around some standard SAX parser) which will produce per-record data structure 100% identical to those produced by XML::Simple. Details: We have a large code infrastructure which depends on processing records one-by-one and expects the record to be a data structure in a form...

google maps api keys to be set webserver-wide, (as env var? inside apache?)

I have a web site with many virtual hosts and each registered with several domain names (ending in .org, .de), site1.mysite.de, site2.mysite.org Then I have different templating systems based on several programming languages (perl and php) in use on the web server. The Google Maps Api requires a unique Google Maps api key for each vhos...

How do I export a package symbol to a namespace in Perl?

I'm having trouble understanding how to export a package symbol to a namespace. I've followed the documentation almost identically, but it seems to not know about any of the exporting symbols. mod.pm #!/usr/bin/perl package mod; use strict; use warnings; require Exporter; @ISA = qw(Exporter); @EXPORT=qw($a); our $a=(1); 1; tes...

Why does Perl's strict not let me pass a parameter hash?

I hava a perl subroutine where i would like to pass parameters as a hash (the aim is to include a css depending on the parameter 'iconsize'). I am using the call: get_function_bar_begin('iconsize' => '32'); for the subroutine get_function_bar_begin: use strict; ... sub get_function_bar_begin { my $self = shift; my %template_...

How do I interact with a Perl object that has a hash attribute?

I have a class with several variables, one of which is a hash (_runs): sub new { my ($class, $name) = @_; my $self = { _name => $name, ... _runs => (), _times => [], ... }; bless ($self, $class); return $self; } Now, all I'm trying to do is create an accessor/mutator, as well...

Why does Perl's DBI complain about "failed: ERROR OCIEnvNlsCreate" when I try to connect to Oracle 11g?

I am getting the following error connecting to an Oracle 11g database using a simple Perl script: failed: ERROR OCIEnvNlsCreate. Check ORACLE_HOME (Linux) env var or PATH (Windows) and or NLS settings, permissions, etc. at The script is as follows: #!/usr/local/bin/perl use strict; use DBI; if ($#ARGV < 3) { print "Usage: perl te...

Why does my REST request return garbage data?

I am trying to use LWP::Simple to make a GET request to a REST service. Here's the simple code: use LWP::Simple; $uri = "http://api.stackoverflow.com/0.8/questions/tagged/php"; $jsonresponse= get $uri; print $jsonresponse; On my local machine, running Ubuntu 10.4, and Perl version 5.10.1: farhan@farhan-lnx:~$ perl --version This...

Perl Script in background

I have a perl script i made to automatically telnet into different servers . but its interface is only command line. To make it more user friendly for general windows users , i need to make GUI for it . My idea is to make GUI in a language like VB,java ,etc and let that call perl script . my script will run in background in a command p...

Is there a workaround to the disappearing Perl/Tk text widget scrollbar for right justified content?

I've come across a bug I believe in Perl/Tk 804.027 Text Widget (using Scrollable('ROText')). When I add a tag that selects all and apply the configuration change to justify to the right, the scrollbars do not show up. If I comment out the tagConfigure where I justify to the right, the scrollbars come back. Does anyone have a workaround...

Detecting regular expression in content during parse

I am writing a simple parser for C. I was just running it with some other language files (for fun - to see the extent of C-likeness and laziness - don't wanna really write separate parsers for each language if I can avoid it). However the parser seems to break down for JavaScript if the code being parsed contains regular expressions.....