Skip to main content



Hi! Asking for a wisdom here...

We have a module that modifies signal handler $SIG{__DIE__} to log information and to die afterwards. Hundreds of scripts relied on this module which worked fine in perl 5.10.1.

Recently we had the opportunity to install several Perl versions but unfortunately a large number of scripts that used to work with Perl 5.10.1 now behave differently:

  • Failed in 5.14.4: /home/dev/perl-5.14.4/bin/perl -wc test.pl RECEIVED SIGNAL - S_IFFIFO is not a valid Fcntl macro at /home/dev/perl-5.14.4/lib/5.14.4/File/stat.pm line 41
  • Worked without changes in 5.26.3: /home/dev/perl-5.26.3/bin/perl -wc test.pl test.pl syntax OK
  • Worked without changes in 5.38.2: /home/dev/perl-5.38.2/bin/perl -wc test.pl test.pl syntax OK

Many of the scripts can only be updated to 5.14.4 due to the huge jumps between 5.10 and 3.58; But we are stuck on that failures.

Was there an internal Perl change in 5.14 which cause the failures but works on other recent versions without any update on the scripts?

Cheerio!

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




Sanity-check calling context

Changes for 0.04

  • (no code changes)
  • Switched to MIT license.
  • Switched README from POD to Markdown.
  • Removed Travis CI.


an interactive plotting widget and library for PDL and Prima

Changes for 0.21 - 2024-04-22

  • demo now only loads Prima when run, reducing perldl problems


demonstrate PDL::Graphics::PLplot capabilities

Changes for 0.84 - 2024-04-22

  • add perldl demo
  • fix plFreeGrid to use free that matches the allocator
  • pl{Alloc,Free}{,2d}Grid error if not match allocating and freeing routine
  • minimum PDL 2.083 due to output OtherPars


Simple backend-independent plotting for PDL

Changes for 1.011 - 2024-04-22

  • P{GPLOT,Lplot} to read devices using proper API not subprocesses
  • if PDL_SIMPLE_ENGINE in ENV, use ONLY that if engine unspecified
  • each driver module now publishes which $P:G:S::API_VERSION it conforms to
  • PGS::register takes hashref instead of magic var in driver namespace
  • loading driver module not eval-ed
  • PDL_SIMPLE_DEVICE in env replaces driver guessing
  • PDL_SIMPLE_OUTPUT in env overrides input parameters


SAML bindings and protocol implementation

Changes for 0.79 - 2024-04-21T18:13:48Z

  • Compatibility Deprecation Warning
  • Significant Changes
  • Detailed Change Log


Validate HTTP requests and responses against an OpenAPI v3.1 document

Changes for 0.062 - 2024-04-21T18:11:43Z

  • BREAKING CHANGE: operation_path is dropped from the populated $options hash in validate_request, validate_response, and find_path, and replaced with path_item_uri
  • "servers" entries are now allowed in openapi documents, but they are not yet considered when matching URIs to paths


Fast Perl SSG: now with automatic Language Translation via OCI and translate.pl. Check it out at

https://github.com/SunStarSys/orion

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



Tags helper for table view.

Changes for 0.06 - 2024-04-21T17:26:14+02:00

  • Fix of setting of table data. Copy in this time.


Tags helper for CPAN::Changes object.

Changes for 0.04 - 2024-04-21T16:06:08+02:00

  • Add trivial Changes file and test on it.
  • Fix output on ex1.changes test file.


parses .pm file as PAUSE does

Changes for 0.47 - 2024-04-21

  • Improve class detection


Plack application for running Tags::HTML objects.

Changes for 0.17 - 2024-04-21T12:34:17+02:00

  • Add test for 'css_data'.
  • Rewrite examples in doc to version with indented output.


Perl extension for finding the memory usage of Perl variables

Changes for 0.83_50 - 2024-04-21

  • patch from Slaven:
  • CvOUTSIDE is again set on all cloned subs [CPAN #149902]


A base for sort-like CLI utilities

Changes for 0.004 - 2024-03-07

  • [bugfix] Forgot to handle --reverse and --ignore-case (-i) for _gen_keygen.
  • [bugfix] Typo.


Sort lines of text by example

Changes for 0.005 - 2024-03-07

  • First release, split from AppBase-Sort.




Perl extension for Package URL (aka "purl")

Changes for 2.10 - 2024-04-19

  • Improved the cpan PURL type to be compatible with the 'PURL-TYPES' specification (giterlizzi/perl-URI-PackageURL#8 - https://github.com/package-url/purl-spec/blob/master/PURL-TYPES.rst)
  • Added "luarocks" PURL type support
  • Improved test suite (giterlizzi/perl-URI-PackageURL#11)
  • Renamed CLI package in "URI::PackageURL::App"
  • Changed JSON module pre-requisite to "JSON::PP" to be compatible with CPAN Toolchain (giterlizzi/perl-URI-PackageURL#12)


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]



Find or build xz

Changes for 0.09 - 2024-04-15T11:21:20Z

  • use GitHub plugin to fetch tarball (gh#8, gh#10)


Build or find autoconf

Changes for 0.20 - 2024-04-15T08:16:02Z

  • Fixes for 2.72 (gh#17, gh#18)


113-bit integer arithmetic

Changes for 0.05

  • Add README file.
  • Fix bug in t/bitwise_gmp_cross_checks.t


Simple opinionated tool to set up a Perl distribution directory.

Changes for 0.14 - 2024-04-15

  • Allow to specify the type of runners to use for the GitHub CI actions.
  • Make the dependency on CPAN::Common::Index::Mux::Ordered be optional.


parses .pm file as PAUSE does

Changes for 0.46 - 2024-04-15

  • Strip BOM before finding a package



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]