I have a bunch of YAML config files (using YAML::XS) which are multidimensional, and the values can be HASH, ARRAY, or SCALAR. Right now, I have a kind of a template YAML that defines the layout that someone can use as a reference to write a config file. The keys and layout are the same, except instead of having values it has two keys: 1) required (boolean) and 2) type (ARRAY, HASH, STR, etc). What I would like is for a sub to just verify the tree and spit out an error on which key is the problem, but I'm getting kind of lost on trying to loop both trees together.
Here is a small example from a part of a YAML config.
split: level: 3 filter: directories: delete: - \/main.assets$ keep: - S2589004224001688 files: keep: - issue.xml - main.xml - main.pdf
And here is a small example from the YAML config template that someone uses as a reference.
split: required: True type: HASH group: required: False type: HASH by: required: True type: STR count: required: True type: STR level: required: True type: INT filter: required: False type: HASH directories: required: False type: HASH delete: required: False type: ARRAY keep: required: False type: ARRAY files: required: False type: HASH delete: required: False type: ARRAY keep: required: False type: ARRAY
submitted by /u/sirhalos
[link] [comments]
A Latemp Utility Module.
Changes for 0.12.0 - 2024-03-29
- Deprecate.
- Add deprecation note.
Audit CPAN distributions for known vulnerabilities
Changes for 20240329.002 - 2024-03-29T12:08:01Z
- Data update for 2024-03-29
create diffs between HTTP requests
Changes for 0.06 - 2024-03-29
- Use "stable" instead of "experimental"
Some fun with chatgpt (note that you can get the same information with a rudimentary search across various research databases followed by statistical analysis of the tags)
When reading the chat bot response note that
legacy systems include many/most of the research tools in many fields many of the legacy systems are heavily dependent on bash for gluing their individual components many of these legacy systems include a noninsignificant amount for web programming Python / R etc just glue over code written in C and Fortran, ie they just provide an API
Prompt: can you suggest a few application areas for perl as glue in scientific component based software engineering?
Perl can be effectively used as "glue" in scientific component-based software engineering due to its strong text manipulation capabilities, mature ecosystem, and ability to interface with various systems and languages. Here are a few application areas where Perl can excel as a glue language:
1. Bioinformatics Pipelines
Perl has been traditionally strong in bioinformatics, where it is used to connect different software components for tasks like DNA sequence analysis, protein structure prediction, and genetic data processing. It can orchestrate workflows that involve calling various tools, parsing their output, and preparing it for the next step in the analysis pipeline.
2. Data Transformation and Integration
In scientific computing, there is often a need to transform data between different formats or integrate data from various sources. Perl can serve as a glue language to script these transformations and integrations, handling formats like CSV, JSON, XML, and proprietary binary formats commonly used in scientific instruments.
3. System Administration for Research Computing
Perl can automate and manage tasks in research computing environments, such as scheduling jobs on a compute cluster, monitoring resource usage, and managing file systems. It can glue together various system components, ensuring they work seamlessly to support scientific computation.
4. Legacy Scientific Software Integration
Many scientific research fields have legacy software components written in Perl or that provide Perl interfaces. Perl can be used to integrate these components with newer systems, preserving the value of previous investments in software development.
5. Automated Reporting and Visualization
Perl can be used to generate automated reports and visualizations from scientific data. By gluing together data extraction, analysis, and reporting tools, Perl scripts can produce regular, up-to-date reports or visualizations of ongoing scientific research or experiments.
Limitations to Consider
While Perl is useful in these areas, it's essential to consider its limitations. The ecosystem around Perl, particularly in scientific computing, may not be as vibrant as it once was, with many new developments occurring in other languages like Python. Therefore, while Perl remains a powerful tool for certain tasks, its role in new scientific software projects might be more limited compared to its peak usage times.
In conclusion, Perl's role as glue in scientific component-based software engineering is well established, particularly in areas where text processing and legacy system integration are paramount. However, the choice to use Perl should be balanced with considerations about the current and future needs of the project, as well as the availability of skills and community support.
submitted by /u/ReplacementSlight413
[link] [comments]
Class library for rapid development
Changes for 1.215 - 2024-03-28
- Quiq::Confluence::Client
- Quiq::Database::Connection
- Quiq::Hash
- Quiq::Path
- Quiq::PhotoStorage
- Quiq::Url
Simplified abstracted chained DBI subclass
Changes for 1.15 - 2024-03-28T12:26:27-07:00
- Carp SQL parsing errors
- Ignore reserved words SQL parse errors when not specifying an explicit dialect
- Add abstract() method
- Move parsed query cache to the connection object (instead of global)
Generate complete SQL from Perl data structures
Changes for 1.09 - 2024-03-28T12:22:27-07:00
- Slightly better handling of columns in get()
Tied objects
Changes for 0.11 - 2024-03-28
- Ensure any passed index takes precedents over the auto generated index
create diffs between HTTP requests
Changes for 0.05 - 2024-03-28
- We use the postderef feature also in tests
- Use features of URI in a backwards compatible way
TPRC/Science Track Submission Dates and Deadlines Coming Fast!
Easy to use REPL with existing lexical support and DWIM tab completion.
Changes for 0.16
- 2024-03-28
- No longer expanding escaped variable in quotes.
Perl wrapper for the ldns DNS library.
Changes for 4.0.1 - 2024-03-28
- Fixes
A system for running Zonemaster tests asynchronously through an RPC-API
Changes for v11.1.1 - 2024-03-28
- Fixes
simple OBS API calls
Changes for 0.1.2 - 2024-03-27
- added Net::OBS::LWP::UserAgent with 'mirror' method
- multiple configuration parameters for Net::OBS::SigAuth
Colored echo command using ANSI terminal sequence
Changes for 1.08 - 2024-03-28T09:56:23Z
- use charnames ':loose', which requires perl 5.16
The Perl and Raku Conference (formerly known as YAPC::NA) is going strong! This year, we are celebrating 25 years, our silver anniversary, in the Silver State, Nevada! The main conference will be in Las Vegas on June 25-27, but there will be hackathons and possibly classes on the day before and the day after the conference (June 24th and 28th), so please consider joining us for the whole week!
The backbone of this conference has always been our tracks of "traditional" talks by community members and what we have come to call the "Hallway Track" the informal exchange of ideas and camaraderie that sparks new projects and fuels collaboration.
This year, we are pleased also to host the presentation of Papers and Posters accepted by the Science Perl Journal!
Registration is open, so your ticket can now be purchased.
Talk submissions are still open, and we are seeking proposals on a wide variety of subjects. This includes language features, personal projects, applications like Koha, and anything that may be of general interest to Perl and Raku programmers. (We had juggling and origami in the past. Fun!)
- Talks can be 20 minutes or 50 minutes. Please submit through PaperCall.
- Papers and Posters follow the guidelines of the Science Perl Journal. Links to both are also on https://tprc.us.
Speakers who are approved for a talk, paper, or poster will receive a free ticket to the event. The submission deadline is April 5th at 8pm EST, so please send us your submissions soon!
We are planning some special activities during the conference to celebrate our rich 25-year history.
Go now to https://tprc.us/ to check out what is planned and to book a room (see link to Alexis Park Resort under "Location"). Rooms start at only $75 per night, so it’s worth booking early!
The best way to register for the conference is at https://tprc2024.sched.com/tickets
Thanks, TPRC Admins
submitted by /u/nahthanxx
[link] [comments]
The Perl and Raku Conference 2024 in Las Vegas Schedule
Check out the schedule for The Perl and Raku Conference 2024 in Las Vegastprc2024.sched.com
Read environment variables from .env file
Changes for 0.011 - 2024-03-27T22:13:20+02:00
- Allow reading files recursively.
create diffs between HTTP requests
Changes for 0.04 - 2024-03-27
- We use the postderef feature
Perl Weekly Challenge 262: Count Equal Divisible
https://blogs.perl.org/users/laurent_r/2024/03/perl-weekly-challenge-262-count-equal-divisible.html
create OpenAPI documentation of your application
Changes for 1.0.2 - 2024-03-27
- BUG FIXES
Easily format content into PDF/PS/DVI with LaTeX templates.
Changes for 0.04 - 2024-03-27
- Moved test file "t/400-format.t" into xt/ to be run only by 'author tests' because it was failing in many tester machines which lack LaTeX font and style files. In order for this test to succeed, all these missing LaTeX fonts and style files must be installed and that's not an option. Author tests can be run with "make authortest". Added two more unit tests "t/350-inmemory-template-usage-calling-other-templates.t" and "t/360-ondisk-template-usage-calling-other-templates.t". Enhanced documentation.
sdif and family tools, cdif and watchdiff
Changes for 4.3301 - 2024-03-27T06:50:25Z
- fix bug of cdif producing extra empty lines
SPVM Language
Changes for 0.989096 - 2023-03-27
- Incompatible Changes
- New Features
- Internal Changes
- Breaking Binary Compatibility
Does anybody know what happened with the package Catalyst::Plugin::FormValidator, why it was removed from cpan?
submitted by /u/ruzhnikov
[link] [comments]
SPVM Language
Changes for 0.989094 - 2023-03-26
- Internal Changes
- Bug Fix
- Incompatible Changes
module for checking taint peculiarities on some CPAN testers
Changes for 0.0.3
Perl Weekly Challenge 262: Max Positive Negative
https://blogs.perl.org/users/laurent_r/2024/03/perl-weekly-challenge-262-max-positive-negative.html
Perl Data Language
Changes for 2.085_02 - 2024-03-25
- PP add loop(n=value) idiom to start not at 0
- add whichover, inspired by https://stackoverflow.com/questions/77551179/perl-pdl-indexing-and-which
- random/randsym only produce real data
- fix dataflow when vaffine ndarray is between modified and downstream (#461) - thanks @vadim-160102 for continued reporting
- revert the use of ArgOrder for PDL::Ops so op($a,$b,$c,$swap) works again as pre 2.082_01
- error on inflating output ndarrays over dims sized 1 or implicit (promoted) or dummy, as is undefined behaviour
- make HdrCode and FtrCode run when PMCode supplied (#463) - thanks @jo-37 for suggestion
- PP add CHeader key
- OtherPars can now be incomplete arrays of char*
- make typemaps able to use more Perl ones like T_HVREF - thanks @jo-37
- removed threadover_n alias since not used elsewhere and broadcastover{,_n} interface adjusted to move mandatory to start
- add ccumu{prod,sum}over in complex double precision
- setdims on ndarray with trans_parent (i.e. flowing) now an error
- set(..., $multi_elt) now an error (#466) - thank @djerius for report
- convert can work inplace (by using set_datatype)
- flowing convert of ndarrays preserves badvalues that are NaN
- PDL_ISBAD2 macro
- lvalue {un,}broadcast
- set_datatype now errors if has trans_children, as trans-es have a datatype
- add ANYVAL_TO_ANYVAL_NEWTYPE
- per-ndarray badvalues (which are PDL_Anyval) now constrained to be same type as ndarray
Invoke a callback on every element at every level of a data structure.
Changes for 0.03 - 2024-03-25T16:10:08-04:00
- API CHANGE
- ENHANCEMENTS
A Plugin to interface Form::Tiny with OptArgs2
Changes for 0.12 - 2024-03-25T15:42:38-04:00
- ENHANCEMENT
Strawberry Perl is distributed with its own winlibs distribution. E.g., if the perl distribution is placed in c:/strawberry, the winlibs distribution is placed in c:/strawberry/c. May I replace this winlibs distribution with a different, newer winlibs distribution placed in c:/winlibs (for example)? Of course this will come with a path update.
submitted by /u/Sharp_Artichoke_8237
[link] [comments]
Microsoft Teams WebHook with AdaptiveCards for formatting notifications
Changes for 1.02 - 2024-03-25
- fix test duration check failing in start/end
Libdeflate compression library
Changes for 0.07 - 2024-03-25
- Update libdeflate to 1.20
module for checking taint peculiarities on some CPAN testers
Changes for 0.0.1 - 2024-03-25T03:15:44Z
- original version