Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister

Perl News

( #23771=superdoc: print w/ replies, xml ) Need Help??

For the latest news on what's happening in the Perl world, check out these sites:

If you have a Perl-related news item you'd like to share, you may post it in the Perl News section. Please try to avoid duplicating news; but pointers (with summaries) to important stories on other sites are acceptable here.

Perl News
Call for help for CPANTesters
1 direct reply — Read more / Contribute
by hippo
on Aug 31, 2015 at 05:38

    It is likely that most of us monks have noticed the ongoing problems with CPANTesters during August. Barbie has now posted a call for help in order to give this service the attention it needs.

    I will be getting in touch with him to see what I might be able to do and am sure that many of you will want to do the same.

Camelcade - Perl5 plugin for IntelliJ IDEA, v1.0 released
No replies — Read more | Post response
by hurricup
on Aug 30, 2015 at 11:39

    First version of Perl5 plugin for IntelliJ IDEA been released today. Plugin allows you to work on Perl5 projects using different JetBrains IDEs.

    Implemented features

    • Creating Perl5 module and selecting Perl5 interpreter as an SDK.
    • Parsing for Perl5 and POD files, Mojolicious templates and PHP-like templates.
    • Syntax highlighting.
    • Highlighting and matching for braces, quotes and regex delimiters.
    • Interpolation in appropriate strings, regexes and here-docs.
    • Auto-completion, navigation and refactoring for subs, methods, packages, namespaces, constants and variables.
    • Fast navigation for subs, global variables, namespaces and constants (Go to symbol/class)
    • File structure view
    • Class hierarchy view
    • Inheritance support with C3/DFS mro
    • Imports/Exports support
    • AUTOLOAD-ed subs resolution
    • File templates for scripts, packages and Mojo templates
    • Live templates for different language constructions
    • Support of global variables declaration with use vars
    • Here-docs markers navigation and re-factoring
    • IntelliLang integration: allows to inject different language to the here-doc, depending on here-doc marker text.
    • Annotations for subs: #@deprecated, #@method, #@returns
    • Annotations for namespaces: #@deprecated
    • Variables declaration types support
    • Intentions:
      • Convert string to here-doc
    • Inspections:
      • Packages and namespaces: missing package file, unknown namespace, multiple namespace definitions, clash with core namespace, missing strict/warnings pragmas.
      • Variables: unused variables, undefined variables, variables shadowing, re-declaring of built-in variables.
      • Subs and constants: deprecated sub, unresolvable sub, multiple subs definitions, fancy method call (new Foo::Bar), unused subs, constants and globs.
    • Extension point to implement package processors, allowing to describe package behavior (like Mojo::Base acts like strict, warnings, features and base at once)

    All features are not perfect and may be improved. I've implemented my view of required minimum. More detailed information may be found in our wiki

    I'd like to thank all Monks who helped me on my 4 month adventure with advices and answers.


    Well, it's hard to say about future. I've got tons of different ideas, usually I've implemented one thing and got ideas about two more. But we'll see. Anyway what I really want to do:

    • Improve parser (especially errors-recovery)
    • Improve already implemented features
    • Improve performance
    • Write tests
    • Integrate with popular Perl5 frameworks and template engines.
    • Perlbrew integration
    • Integration with libs like PerlTidy, PerlCritic, CPAN
    • Debugger
    • Perl6. Well, I wanted to start with it to train a bit, because it has some formalized grammar. But I dont know language at all, it was not yet released, it's not performs well as I've read. But everything is possible.


    Bugreports and feature requests are always welcome!

Camelcade 0.39 beta released
1 direct reply — Read more / Contribute
by hurricup
on Aug 17, 2015 at 14:42

    New version of the IntelliJ IDEA Perl5 Support plugin has been released:

    0.39 beta changes:


    • Implemented interpolation in appropriate strings, here-docs and regexps.
      • Code interpolation is still lame, and may show that it's ok in places where it is not.
      • Regex interpolation can't distinct array element from scalar with character group after it.
      • Here-doc language injection is automatically turned off in QQ/QX heredoc if there is at least one variable.
    • Implemented brace matching for string quotes and regex delimiters.
    • Implemented goto symbol navigation for: subs definitions, constants, packages and global variables.
    • Implemented AUTOLOAD-ed methods and subs resolution and decoration (atm. AUTOLOAD must be defined as a sub, not a named block).
    • Implemented __PACKAGE__ methods resolution.
    • Implemented clash checking between subs definitions, typeglobs and constants.
    • Implemented unused global variables inspection.
    • Implemented unused subs and constants inspection (Disabled by default. Got performance issues on large files with short sub names).
    • Implemented unused typeglob inspection.
    • Implemented bulk constants definitions folding.
    • Implemented structure view.
    • Implemented class hierarchy view.
    • Implemented #@deprecated annotation for packages.
    • Added subs unpacked arguments into subs presentation.
    • Added live tempalte for constant definition: const.


    • Multiple namespace and sub definitions now checks duplication in project only.
    • Multiple subs definitions, namespace definitions inspections now works on definitions only.
    • Optimized goto class contributor.
    • Improved performance of different inspections
    • Improved performance of auto-completion
    • Fixed bug with occasional wrong constant usage annotation
    • Fixed problem with clashed namespaces definition inspection annotation all namespace content.
    • Fixed problem with minor.major version.
    • Fixed few bugs with subs resolution.

Perl Dancer Conference 2015
1 direct reply — Read more / Contribute
by davies
on Aug 15, 2015 at 17:51
    • Dates: 2015-10-19 to 2015-10-20 (training & hackathon)
      2015-10-21 to 2015-10-22 (conference proper)
    • Location: Hotel Schani (conference) Amerikahaus (training), Vienna (Wien in German), Austria
    • Web site::


    John Davies (no official capacity, just spreading the word)

Swat and Mojolicious
No replies — Read more | Post response
by melezhik
on Aug 13, 2015 at 10:40

    Hi. I continue to share some swat news. SWAT is automation test framework written in bash/perl and providing a simple DSL to rapidly create smoke tests for web applications.

    Mojolicious is a ... ok ... everybody knows it :) - well known web application framework.

    Recently I found it quite interesting idea of generating swat tests for existed mojo applications using routes introspection.

    So this is how I created Mojolicious::Command::swat

    This is a draft, I have not even uploaded it to CPAN, but if someone interested - may play with it - ...

Love for Perl unites diverse community
No replies — Read more | Post response
by KurtSchwind
on Aug 12, 2015 at 16:19
Camelcade 0.38 beta released
No replies — Read more | Post response
by hurricup
on Aug 10, 2015 at 05:46

    New version of the IntelliJ IDEA Perl5 Support plugin has been released:

    • Implemented constants resolution, auto-completion and highlighting
    • Performance improvements: parser, methods resolution, subs and methods autocompletion.
    • Implemented scalar type detection on assignment to sub or method call (sub or method must be annotated to make this work).
    • Implemented C3 mro and fixed bug with DFS.
    • Postfix livetemplates moved to separate group 'Perl5 postfix' to be able to utilize same abbreviations.

ctags now supports Perl 6
No replies — Read more | Post response
by dmitri
on Aug 06, 2015 at 16:58
    We added support for Perl 6 to ctags. Give it a shot: grab a copy from GitHub.
C::Blocks, a new attempt to do even better at bridging C and Perl easily
No replies — Read more | Post response
by Your Mother
on Aug 04, 2015 at 14:39

    C::Blocks—embeding a fast C compiler directly into your Perl parser—looks exciting to me. I hope it will be interesting to some of you and since this is a project in its infancy maybe even inspire participation from the C-monk(ey)s here. Google groups notice:!topic/perl.xs/35CgBxWmqEk; github repo:

    I have no involvement but have had some pain in the past trying to do XS so I welcome anything that makes embedded C, or even just playing with it from Perl, easier.

CPAN Day 2015 - 16th of August
No replies — Read more | Post response
by marto
on Aug 04, 2015 at 06:25
Camelcade 0.37 beta released
No replies — Read more | Post response
by hurricup
on Aug 03, 2015 at 07:41

    New version of the IntelliJ IDEA Perl5 Support plugin has been released:

    • Improved simple variable cast parsing.
    • Added $class as implicit pointer to this.
    • Implemented Mojolicious templates parsing.
    • Implemented pretty dumb Mojolicious autocompletion: default helpers and tag helpers.
    • Implemented embedded markers matching.
    • Fixed problem with caret re-setting on hitting enter in here-doc with injection.
    • Fixed bug with integer numbers highlighting.
    • Enabled quote handler template files.
    • Added Darcula color settings (by Sergey Vardanyan).
    • Moved to Java 1.6.
    • Added three new here-doc injection markers:
      • PERL5 - Perl5 itself. Can you deal with this?
      • MOJO - Mojolicious templates
      • EPERL5 - Embedded perl.

Camelcade 0.36 beta released
No replies — Read more | Post response
by hurricup
on Jul 28, 2015 at 03:12

    New version of the IntelliJ IDEA Perl5 Support plugin has been released:

    • Numerous performance optimizations and bugfixes: lexer, parser, auto-completion and methods resolution.
    • Object methods resolution and auto-completion is here now. Only default perl MRO currently implemented. At the moment works for explicitly typed variables and annotated subs.
    • Typing -> or :: is now opening an auto-completion pop-up.

Releasing Perl::ToPerl6 this weekend to CPAN
2 direct replies — Read more / Contribute
by drforr
on Jul 23, 2015 at 05:50
    The current code is on github under: but will change names upon release.

    It's a configurable Perl5-Perl6 translator tool based heavily on Perl::Critic. You can use your own .perlmogrifyrc file to configure which translators you want to run, and eventually add and configure your own translators.

    While I won't say that it compiles Perl5 to syntactically correct Perl6 100% of the time, I've tested it on DamianWare(tm), and with minimal intervention (changing 'package' declarations, rewriting 'local *OUT' mostly) 99% of Parse::RecDescent passed its compile-time check.

    While most of the changes it does are trivial, they can be hard to get right. For instance, '=~' is now '~~', '~' is now '^?', '.' is now '~' and '->' is now '.' Go ahead and figure out the right order to do those changes in vim or emacs, I'll wait for you :)

    In the mean time, it also changes your for() loops around, tidies map and grep, cleans up your filehandles and changes your sigils from '$x[0]' to '@x[0]' like you've always secretly wanted to do.

    As of release here's what it'll do:

    Add whitespace where needed - 'if(1)', 'my($x)', 'for(@z)', 'qw()', 'qx()'
    Translate non-decimal numbers: '0x12f', '0b1101', '017'
    Properly interpolate numbers: '\x{263a}', '\N{LATIN LETTER CAPITAL X}'
    Fix rational numbers: '32.'
    Reformat here-docs: '<<_EOF_;'
    New Q operators: 'qw()', 'qr()', 'qx()'
    Reformat strings: "\ua $hash{key}1 ${foo}"
    Print to filehandle: 'print FOO 43;'
    C-style loops: 'for($i=0;$i<5;$i++)'
    Perl-style loops: 'for my $x (@a)'
    First-order expressions: 'map s/foo/bar/, keys %x'
    Basic operators: '!$a', '$x . "foo"'
    Package usage: 'use Foo;'
    Constant declarations: 'use constant FOO => 1', 'Readonly my $FOO => 1'
    Basic variables: '$x->3', '@{ $x }', '$x2++'
    Special variables: '@+', 'STDOUT', '@ARGV'
    Regular expressions: 's/foo/bar/igx'
    Sub prototypes: 'sub foo($)'
swat on CPAN
2 direct replies — Read more / Contribute
by melezhik
on Jul 17, 2015 at 08:21
LinuxVoice Larry Wall interview
2 direct replies — Read more / Contribute
by marto
on Jul 15, 2015 at 06:04

Add a piece of Perl News
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":

  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.
  • Log In?

    What's my password?
    Create A New User
    and the web crawler heard nothing...

    How do I use this? | Other CB clients
    Other Users?
    Others having an uproarious good time at the Monastery: (7)
    As of 2015-09-05 07:01 GMT
    Find Nodes?
      Voting Booth?

      My preferred temperature scale is:

      Results (152 votes), past polls