Perl 5 Porters Mailing List Summary: June 20th-28th

Hey everyone,

Following is the p5p (Perl 5 Porters) mailing list summary for the past week and a half.

Enjoy!

Baby Moose Clean Up

It is test catch up day here in the Moose-pen.

I figured it is a good thing to review the state of the test suites for both Database::Accessor and Driver::DBI and starting with Accessor.pm I get this;

List your dist's prereqs where newer versions have become available

I've got quite a few CPAN distributions that require one another, and it's gotten to the point that it's very easy to forget to bump prereq versions before uploading a new release to the CPAN.

As a stopgap, I wrote Module::CheckDep::Version (may not be indexed yet). What this module does is using MetaCPAN::Client, fetches all distributions by author, pulls out all prerequisite distributions and the version of it that your distribution has listed, checks if there's a newer version of it, and lists out the ones that need a bump in the prereq's version.

Update: I've updated the distribution (v0.05) to install a binary, checkdep, so that you don't have to write your own to use the library:

A Date with CPAN, Update #2: A Little Piece of Date::Piece

[This is an addendum post to a series.  You may want to begin at the beginning.  The last update was update #1.

IMPORTANT NOTE!  When I provide you links to code on GitHub, I’m giving you links to particular commits.  This allows me to show you the code as it was at the time the blog post was written and insures that the code references will make sense in the context of this post.  Just be aware that the latest version of the code may be very different.]


This year is only the second time since 2011 that I’ve been unable to attend YAPC::NA.  Since I couldn’t make it out to hang with my Perl peeps in person, I thought the least I could do is offer up a long-awaited update to Date::Easy.

This latest version (available now-ish on CPAN as 0.03_01, and to be upgraded to 0.04 within the next few days assuming CPAN Testers approves) contains a few small updates, and one big one.  First, the miscellaneous bits:

Highlights from TPC 2017

Disclaimer

This list contains just a small number of talks that I personally thought are important/enjoyable for the most readers. This is by no means an official list curated by an organization. See the YouTube playlist for all awesome talks. I also encourage you to write your own blog about TPC. And yes, it’s officially called “Tipsy” now!

Where did my test fail?

Although I tried to select talks with videos, I had to make an exception for this one. I wasn’t able to locate neither videos mentioned in this section.

On Tuesday night, Damian Conway talked about his new modules: Dios lets you declare classes with Perl 6 syntax, which uses Keyword::Declare to declare a couple new keywords it needs. Data::Dx and Test::Expr also utilize “adding new keywords”. First one is a wrapper around Data::Dumper, and second one is a Test module that prints out source code when an error happens, which apparently was not a thing yet. Pretty awesome, right?

Baby Moose in the Field

Back to the Field day here in the Moose-Pen

Today I am going to give params and containers a miss and move back into the '30_fields.t' test that I left alone so long ago. One of the planned concepts in Database::Accessor it the ability to have static data as part of the elements array. This is accomplished by using the 'Param' class in place of the “Element' class so you could do an SQL like this

SELECT 'User Name:', username, 'Address:', address FROM user
Why one wold want to do that I am not 100% sure on though I have seen it done in the past like the above for a reporting purposes. I could just simply make the Driver::DBI code insert the scalar values when it detects them but then I would be opening myself up to the good old ' Little Bobby Tables

Because CPAN Needs More Templating Modules

Why learn a whole new language for templating when you already know a perfectly good one? This isn't the first module that allows you to embed Perl in your templates, but it's yet another one.

Template::Compiled on MetaCPAN.

Perl 6: Seqs, Drugs, And Rock'n'Roll

Read this article on Perl6.Party

I vividly recall my first steps in Perl 6 were just a couple of months before the first stable release of the language in December 2015. Around that time, Larry Wall was making a presentation and showed a neat feature—the sequence operator—and it got me amazed about just how powerful the language is:

# First 12 even numbers:
say (2, 4 … ∞)[^12];      # OUTPUT: (2 4 6 8 10 12 14 16 18 20 22 24)

# First 10 powers of 2:
say (2, 2², 2³ … ∞)[^10]; # OUTPUT: (2 4 8 16 32 64 128 256 512 1024)

# First 13 Fibonacci numbers:
say (1, 1, *+* … ∞)[^13]; # OUTPUT: (1 1 2 3 5 8 13 21 34 55 89 144 233)

Ravada free, easy to use VDI broker made with Perl

Ravada is an open-source project that allows users to connect to a virtual desktop.

http://ravada.upc.edu/

Its back-end has been designed and implemented in order to allow future hypervisors to be added to the framework. Currently, it supports KVM and LXC is in the works.

The client only requirements are: a web-browser and a remote viewer supporting the spice protocol.

It is very easy to install and use, following the documentation, virtual machines can be deployed in minutes. It is an early release but is has been used in production. The frontend has been built with Mojolicious and the hypervisor connections are made with Sys::Virt . It is open source and the code can be download from github. Contributions welcome !

Main Features:

  • KVM backend for Windows and Linux Virtual machines
  • LDAP and SQL authentication
  • Kiosk mode
  • Remote Access with Spice for Windows and Linux
  • Light and fast virtual machine clones for each user
  • Instant clone creation
  • USB redirection
  • Easy and customizable end users interface
  • Administration from a web browser

See some screenshots, documentation and more at http://ravada.upc.edu/

Happy Sunny Moose Day

Quick postette day here in the Moose-Pen.

So yesterday I had left over SQL error that I wanted to have a look at. The error was

FROM locations WHERE <*>.city =
so I had no view in the where predicate;

$new_da->add_condition({left  =>{ name  => 'city',
                               },
                      right =>{ value => $other_user}
                    });
As I have saind in many previous posts I want to got give the DAD writer data that is as sanitized as possiable and therefor I should fix the above. I first broke the code for setting the element on a view into is own private sub;

Perl 5 Porters Mailing List Summary: June 12th-19th

Hey everyone,

Following is the p5p (Perl 5 Porters) mailing list summary for the past week.

Enjoy!

SPVM is released! Perl maybe become much fast.

I release SPVM.

SPVM

---------------------------------------------------------------------------

SPVM - Fast calculation, GC, static typing, VM with perlish syntax
SPVM(CPAN)

----------------------------------------------------------------------------

Do you know that there are many criticisms against Perl 5 on the Perl 11 blog?

Much of the criticism is about Perl's data structure and performance.

"Perl does not have a good data structure and implementation regarding numbers."

"Perl can not calculate a number using the stack of functions."

"Understanding about virtual machines is lacking in p5p."

I am an engineer who loves Perl 5 and p5p and is using Perl 5 to create a company service.

I want to contribute to reducing the weaknesses of Perl 5, by making modules.

I hope the SPVM will be of help.

Features

Do you need faster Perl? SPVM provides fast calculation to Perl.

Les Journées Perl / French Perl Workshop 2017

Nobody seems to have blogged about Les Journées Perl so I thought I would blog about Les Journées Perl. Or maybe I haven't been paying attention, or it passed by me in a state of crossing timezones?

I was travelling back from the UK office the weekend the workshop happened, so stopped by. I also uploaded a couple of photos to the perl_events Instagram feed. The workshop was held in the Carrefour numérique in the Cité des Sciences et de l'Industrie in Paris - a very interesting space within a very interesting space. Possibly one of the most interesting spaces I've been that has hosted a Perl workshop. Here's a recap of the talks I understood that stuck in my mind, I believe the talks were recorded so may appear online soon. You can find all the talks, with links to slides/etc here.

Baby Moose Proof

Just prove it worked day here in the Moose-pen

So yesterday I left off with my SQL looking correct but my query failing on the DBD::DBM so to-day I though I better just do a quick postette just to prove to my many readers that my code actually works.

So I all did was write up this quick little script

how to join #yapc chat on irc.perl.org

  • IRC is used A LOT during The Perl Conference
  • To go online instantly in a browser, you can use Mibbit
  • To stay online (to read all messages sent, even the ones sent when you were not around), you can use IRCCloud
  • You can set up your own bouncer too!

Introduction

Last year's The Perl Conference at Orlando was my first one. I had a lot of fun, met with brilliant people and learned numerous things about Perl.

Altoids tin Arduino GPS "return to origin" project, thanks to Perl

Warning! Long read...

This post contains an Arduino Trinket Pro GPS prototype project that only relates to Perl in that all of my knowledge and experience came from my Raspberry Pi Perl work, along with writing C/XS code for several ICs and sensors and making those available as Perl APIs. I'm posting it here due to that relevancy, and because I don't blog anywhere else ;)

To start off, I'll explain a little bit how I got to this path.

I became interested in the Raspberry Pi after a colleague showed me a project he had built with one. I went out, bought a couple and started tinkering. The very first thing I wanted to do was use Perl on it. There were a couple of libraries available, but they seemed convoluted to me, so I wrote my own.

Another reason not to use each()

So I’ve learned my lesson. Do not use each().

Always good to read the blogs…

https://blogs.perl.org/users/rurban/2014/04/do-not-use-each.html

Here’s a fun one that caused perl to go into an infinite loop. I suppose being frugal and not assigning things to variables is not necessarily a good idea.

Baby Moose Takes Charge

Its get very ambitious day here in the Moose-pen.

As things went just a little to smoothly over the past few post I though it would be a good day to try something that I know is going to cause me grief. In the vain I added this test;

SPVM is released!

20 Years of Perl mongers

It was 20 years ago (almost) that a group of New Yorkers started Perl mongers. I think at the time we were eating something the caterer for The Perl Conference called "California sandwich" that had sprouts and avocado. In 1997, there was a small core of a Perl community that worked on perl, but there was still room for regular user engagement.

I didn't see this coming. While I was in Amsterdam a couple of weeks ago, Wendy noted that 1997 and 2017 end in the same digit (as does 1967). I don't think we've ever bothered to celebrate an anniversary. I went to check on the date. I registered pm.org on August 22, 1997, which I think makes August 21 the birthday. That was the last day of that conference.

We'll have to do something special guess.

I know that NY.pm will have its anniversary this year, and there my be some other groups. London.pm, when did you start? I think Boston and Seattle was in there very quickly. Who else?

About blogs.perl.org

blogs.perl.org is a common blogging platform for the Perl community. Written in Perl with a graphic design donated by Six Apart, Ltd.