Skip to main content



Utilities related to QR Code

Changes for 0.004 - 2024-04-18

  • [ux] Handle when gen_qrcode() is called as a function instead of from CLI.


Utilities related to Google Authenticator

Changes for 0.006 - 2024-04-18




Comma-Separated Values manipulation routines

Changes for 1.54 - 2024-04-18

  • Fix doc (Jean Forget, RT#150757)
  • It's 2024
  • Fix comment_str with strict
  • Doc fixup (RT#151546)


Database independent interface for Acrux applications

Changes for 0.03

  • Added Acrux::DBI::Dump class
  • Added set-context of dsn method
  • Added database URL-string to examples
  • Added dump method to faster access to Acrux::DBI::Dump


submitted by /u/pmz
[link] [comments]


Im working on a script to test using a jump server to reach remote devices.

I'm able to connect to the jump server using Net::SSH::Expect, however, I'm not sure how to then ssh to a remote device (network element).

Is there a way to create that ssh to the remote device inside the jump server's connection?

submitted by /u/jtzako
[link] [comments]



First things first, I am a data engineer but have little experience in Perl. I've been able to make some easy updates to scripts in the past but this one is a bit tougher.

I have been asked to update a Perl cgi web app that someone wrote ages ago that is used to view and manipulate text files. Currently it is hosted on server (X) and manipulates the files on that same server. However, we have to have backups/mirrors of the data on a dev server and another prod sever (Y). I.e., if I push the button to move the file to a different folder, it should do that on all three servers instead of just X. I added code to do this, referencing the additional servers with their UNC names, but I just get an error "No such file or directory" (which is not true). Googling has suggested that there may be an issue with permissions, but I can bring up the Y and DEV servers from a windows file explorer using the same path so I don't think that is necessarily the issue.

Example: Here we are trying to copy the file with a letter appended a given number of times. It works fine on the X server, its when trying to make it also work on the Y and DEV servers I get an error.

our $DIR_X = "\\\\serverX\\folder\\subfolder" ; our $DIR_Y = "\\\\serverY\\folder\\subfolder"; our $DIR_DEV = "\\\\serverDEV\\folder\\subfolder"; . . . }elsif ($query->param('action') eq 'split' && $query->param('fileNum') ne "") { my $fileNum $query->param('fileNum'); my $fileX=$DIR_X . "\\" . $fileNum . ".txt"; my $fileY $DIR_Y . "\\" . $fileNum . ".txt"; my $fileDEV = $DIR_DEV . "\\" . $fileNum . ".txt"; my $splitNbr = $query->param('splitNbr'); my @letters1("a".. "z"); for (my $i = 0; $i < $splitNbr; $i++) { my $FileNew_X = $DIR_X . "\\" $fileNum. $letters[$i]=.txt"; my $FileNew_Y = $DIR_Y . "\\" $fileNum. $letters[$i]=.txt"; my $FileNew_DEV = $DIR_DEV . "\\" $fileNum. $letters[$i]=.txt"; copy($fileX, $FileNew_X) or die "WARNING: copy failed: $!\n"; ---->>>>>ERROR AT NEXT LINE copy($fileY, $FileNew_Y) or die "WARNING: copy failed: $!\n"; copy($fileDEV, $FileNew_DEV) or die "WARNING: copy failed: $!\n"; } 

Any thoughts?

submitted by /u/QueenScorp
[link] [comments]





Installs noop handlers to disable Mojolicious sessions

Changes for 0.01 - 2024-04-10T12:47:08-05:00

  • First public release


Mojolicious Plugin that wraps Mojolicious::Plugin::Cron for job configurability

Changes for 0.01 - 2024-04-12T09:44:22-05:00

  • initial release




Fetch CVE information from cve.org

Changes for 0.009 - 2024-04-16

  • Require HTTP::Tiny 0.025


I stumbled upon this really nice page from Ruby, describing the language from the perspective of other common programming languages:

https://www.ruby-lang.org/en/documentation/ruby-from-other-languages/

The page is written in a friendly tone, inviting programmers familiar with other programming languages to Ruby. No programming language is being viewed as inferior, quite the contrary: all mentioned languages are praised and even defended from haters, for example:

  • "Perl is awesome. Perl’s docs are awesome. The Perl community is … awesome. For those Perlers who long for elegant OO features built-in from the beginning, Ruby may be for you."
  • "Happily, it turns out that Ruby and C have a healthy symbiotic relationship. And, of course, Ruby itself is written in C."
  • "Java is mature. It’s tested. And it’s fast (contrary to what the anti-Java crowd may still claim)."
  • "Python is another very nice general purpose programming language."

I believe Perl could greatly benefit from having a similar page. With its friendly philosophy and TMTOWTDI, it seems natural to invite programmers from other languages, with an approach of "Don't be afraid to keep programming the way you are used to, if it works in Perl, there are no limits enforced".

Since Perl is now not a common choice for new code or for learning, it makes a lot of sense to bring over people from other languages. Especially in an age where strict conventions seem to be praised, I can see Perl becoming a source of some fresh air.

submitted by /u/Lenticularis39
[link] [comments]



networking constants and support functions

Changes for 2.038 - 2024-04-15

  • CHANGES
  • BUGFIXES



Dist::Zilla configuration the way AJNN does it

Changes for 0.07 - 2024-04-15

  • Add git contributors to meta and pod
  • Use an HTTP link instead of an SMTP address in the pod author section
  • Add readme support for main modules with separate .pod files
  • Use Leftovers instead of Generic in PodWeaver



my $MAX_PROCESSES=10; my $pm = Parallel::ForkManager->new($MAX_PROCESSES); while (1) { my $pid=$pm->start and next; print "$$ LOCK \n"; $pm->finish; } $pm->wait_all_children; 

I made this sample piece of code which I basically took from the docs, I only changed to infinite loop but I cannot understand why this would make any different between an infinite loop and iterating through an array for example? Anyway I am fighting this for several hours now trying different versions of my code and cannot find why am I getting "Cannot start another process while you are in the child process" all the time, any hints appreciated

output looks basically like this

Cannot start another process while you are in the child process at .... 16366 LOCK 16367 LOCK 16368 LOCK 16369 LOCK 16370 LOCK 16371 LOCK 16372 LOCK 16373 LOCK 16374 LOCK 16375 LOCK Cannot start another process while you are in the child process at .... 

submitted by /u/Weak_Word221
[link] [comments]





SPVM Language

Changes for 0.989102 - 2023-04-15

  • Internal Changes
  • Imcompatible Changes
  • Imcompatible Changes





A base for sort-like CLI utilities

Changes for 0.003 - 2024-03-06

  • [incompatible change] Replace _sortgen with _gen_sorter + _gen_comparer + _gen_sortkey.


Sort lines of text by spec

Changes for 0.004 - 2024-03-06

  • Update to AppBase::Sort 0.003.
  • [doc] Fix example.


Collection of CLI utilities for Sah and Data::Sah

Changes for 0.484 - 2024-03-06

  • Rename scripts: list-sah-schemas-modules -> list-sah-schemabundle-modules, list-sah-pschemas-modules -> list-sah-pschemabundle-modules.
  • Tweak examaple summary.


Audit CPAN distributions for known vulnerabilities

Changes for 20240414.001 - 2024-04-15T00:01:30Z

  • data update for 2024-04-14


A complete SPARQL 1.1 Query and Update implementation for use with RDF::Trine.


The Joy of DTrace and ModPerl2 submitted by /u/joesuf4
[link] [comments]


Prior releases of the 6.x line relied on Lexical::Types, which was a major performance pessimisation over the 5.x releases.

6.0.4 relies on a simple source filter instead, which restores performance levels back to expected levels.

More benchmarks added to the test suite validate the dependency changes.

submitted by /u/joesuf4
[link] [comments]



Tags helpers for HTML elements.

Changes for 0.11 - 2024-04-14T18:16:11+02:00

  • Fix test for 'step' parameter on Windows.


Get stock and mutual fund quotes from various exchanges

Changes for 1.59_01 - 2024-04-14T08:31:58-07:00

  • YahooJSON.pm - Added code to retrieve cookies and a "crumb" required to continue to utilize the v11 API. Issue #369. The YahooJSON.pm currency module was changed to use the v8 API.
  • Added initial version of CONTRIBUTING.pod that metacpan.org utilizes. It will completely replace the Hacker's Guide in the future.
  • Bloomberg.pm - Changed module to extract data from JSON structure embedded within the HTML - Issue #360
  • NSEIndia.pm - Eliminated need to use temp folders by storing file data from URL into a variable.
#369 #360



113-bit integer arithmetic

Changes for 0.04

  • Allow negative values to be passed to bitwise operators (&, |, ^, ~, >>, <<). These negative values will be converted to their 113-bit 2s-complement value prior to being acted upon by the bitwise operator - thus mimicking perl's treatment of negative 32-bit/64-bit IVs.
  • Add divmod() function.
  • Add new test file t/bitwise_feature.t



List of new CPAN distributions – Mar 2024 submitted by /u/perlancar
[link] [comments]



SPVM Language

Changes for 0.989101 - 2023-04-14

  • Imcompatible Changes
  • Internal Changes
  • Compilation Error Message Improvement


HTTP/2 Dynamic Benchmarks (PHP vs. ModPerl2), 2024 edition.

I ram these about four years ago, and the time differentials were about the same then as now. Monolithic POSIX-threaded server architectures like mp2 + mpm_event will always dominate in low-latency/scalability HTTP/2 benchmarks because they leverage zero-copy in the runtime.

Anyways, sexy terminal graphs with smag to enjoy!

submitted by /u/joesuf4
[link] [comments]



Some basic stat computations with Perl , Python and RLessons learned:
A) Performance freaks to stop using #rstat 's runif for random generation. The Hoshiro random number generator https://arxiv.org/abs/1805.01407 is 10x faster.
Implementations in #perl 's #PDL, #rstats (dqrng) and #python #numpy are within 20% of each other

B) But does it make a difference in applications? To get to the bottom of this, I coded a truncated random variate generator in #rstats and #perl using #pdl (as well as standard u/perl) using the #GSL packages https://metacpan.org/pod/PDL::GSL::CDF & https://metacpan.org/pod/Math::GSL for accessing the CDF & quantile functions. In this context, it's the calculation of the #CDF that is the computationally intensive part, not the drawing of the random number itself.
Well even in these case, the choice of the generator did matter. Note that the fully vectorized #PDL #perl versions were faster than #rstats

C) I should probably blog about these experiments at some point. Note that #pdl (but not base #perl) are rather competitive choices for large array processing with numerical operations. I mostly stay away of #python , but would not surprise me that for compute intensive stuff (where the heavy duty work is done in C/C++), it does not matter (much) which high level language one uses to build data applications

https://preview.redd.it/qn00sx78gbuc1.png?width=1538&format=png&auto=webp&s=1874b9e710c239e9acea36fb54d957167a69b270

https://preview.redd.it/4by4jbh9gbuc1.png?width=1538&format=png&auto=webp&s=dc9944347983445126e4ab57b43c76202ca719d6

submitted by /u/ReplacementSlight413
[link] [comments]

Programming Feed reshared this.





Cross-platform executor for parallel tasks executed in forked processes

Changes for 0.01 - 2024-04-13

  • Initial release


data pack for Business::ISBN

Changes for 20240413.001 - 2024-04-13T19:53:52Z

  • data update for 2024-04-13


Acceptance testing for JSON-Schema based validators

Changes for 1.023 - 2024-04-13T19:25:31Z



Hi, im working on this perl script wherein i should get all files with filename < 900000

Ex. sample_file_802856.txt sample_file_27364692.txt sample_file_385620.txt

the script should get:

sample_file_802856.txt sample_file_385620.txt

I already have the code but it’s failing on this part coz im having a hard time getting the regex for < 900000 😆

submitted by /u/advinculareily
[link] [comments]