Last month, I mentioned that I was rewriting Pod::Readme.
Basically, this is a module that allows you to generate a useful README file from a module's POD, besides a simple "pod2text lib/MyModule.pm > README". You can add sections of POD that are only included in the README, like installation prerequisites, and exclude bits that don't belong in the README, like the details of every method.
A pre-release has just been uploaded to CPAN. A short summary of the changes:
It requires Perl v5.10 or newer, and uses Moose. (This will be rewritten to use Moo in a later release.)
Instead of using a full POD parser, it implements a simple POD filter and passes that POD to other modules to convert it to text or other formats.
It supports plugins. This version has plugins to include the module version, a requirements section, and the latest changes.
Support for generating README files as markdown, POD or other formats has been added.
Feedback would be appreciated, as are patches in the git repository.
I still wish we had a way to remove reports from CPAN Testers. The case of a broken Test::More is a really good reason for this.
I received many fail reports for Business::ISBN, which I've been working on lately. However, it's from a test I hadn't touched for things I wasn't working on.
The failure looked odd. I've never heard of Test::More::DeepCheck:
Modification of non-creatable array value attempted, subscript -1 at .../Test/More/DeepCheck.pm line 82.
Then I noticed that all of the fail reports reported the same development version of Test::More:
Event::Lib is a binding to a libevent library. Its development stalled for about 7 years. Module doesn't build with new Perls (at least >= 5.16), and has a lot of open tickets in a RT CPAN queue. Looks like maintainer of module Tassilo von Parseval is not available via email. I have module Net::IEC104 which rely on Event::Lib, so I'd like to make new release of Event::Lib with fixes for any currently known issues to keep my module installable and functional. I'm making this post asking for permission.
I ran into a situation today where I was trying to see whether any exceptions were thrown when evaluating a list of objects. In this particular case I didn’t want the exceptions to short circuit the loop, I just needed to know if any were thrown as we iterated over the list. So I wrote this benchmark to see which of two approaches would be faster.
Yesterday we looked at an example of how to both index and search using elasticsearch. Today, we'll talk a little about what takes place during indexing, particularly tokenization. For example, what happens when we tokenize the phrase:
porros amb basàlmic
To find out we can pass the phrase to the elasticsearch analyzer API like so:
curl -XGET 'localhost:9200/_analyze?tokenizer=standard' -d 'porros amb balsàmic'
Here we are using the standard (default) tokenizer which results in the following output:
I think I'm on the verge of drinking the Cucumber flavored Kool-Aid, which is odd because I've never done Behavior Driven Development (BDD) before. If you've followed my blogs over the years, you know that I am happy to investigate new trends, but at the same time I'm deeply, deeply suspicious of them. BDD has been one of those "fads" that I've been suspicious of, but I think I've changed my mind. What follows is why.
If you have been browsing MetaCPAN lately, you may have noticed a new shiny red ball ribbon on the left side of somedistibutionpages. What you may not have realized is that this is a generic feature, and you can add one to your distribution just as easily.
TL;DR: All you need to do is add an IRC resource to your metadata:
Elasticsearch és un motor de cerca. Fem un petit exemple com es pot utilitzar-ho. Necessitem unes dades per cercar, per tant agafem unes receptes d'internet, gràcies a http://receptes.cat. Un cop tenim les receptes, llavors les podem indexar en elasticsearch, després del qual podem cercar-les.
I've been rather quiet lately because I'm busy, busy, busy. Part of this is contract work for a company (amongst other things, I've been doing building sqitch setup for them), and part of this is new research into Agile. Today I wrote a quick blog post explaining one of my pet peeves about Agile: people say it's not a silver bullet, but they don't say why. I briefly explain when you should and should not use Agile.
I've recently released a new module called Object::Util to CPAN. This is a set of handy methods for working with classes and objects in Perl. It is inspired by Safe::Isa, a module which takes advantage of the fact that coderefs may be called as methods on Perl objects:
my$method=sub{...};$object->$method(@args);
Object::Util gives you a set of coderef utility methods that are applicable to a wide range of classes and objects.
So, I finally made the switch from ActivePerl to Strawberry Perl. Though I was aware of it, I had never looked at Strawberry Perl before because even though I had experienced some minor annoyances with ActiveState's Perl (and one major one, when they completely broke Tk a while back), it worked fine for me most of the time. In addition to ActiveState's Perl, I also use Perl under Cygwin.
The reason I use Windows is not because I'm a huge fan. I'd have an easier time with these types of issues on a different OS like Linux. I started out preferring Windows because I was an avid gamer, and I ended up developing a bunch of tools that I use routinely, so until I port them, I'm stuck for now. This story involves Windows 7, if you were curious.
Get a source tarball for libxml2-dev. On `apt` systems:
apt-get source libxml2-dev
Configure it to install locally, and then install it:
cd libxml2-dev/
./configure --prefix=/home/peters/perl5/alien/
make
make install
Ignoring all other options like LIBS, INC, and the rest of the stuff that's kindly recommended, you only care about showing Makefile.PL where to find xml2config:
You propably seen that rant as well as what caused it. I'm neither core dev nore have 20 Modules on CPAN, but I have talked to lot of people online and in person over the years.
I've started revitalizing the Perl Power Tools. I love this project, also known as the Unix Reconstruction Project, but there's been a some bit rot and I think we can make it easier to find. Googling "PPT" means so many other things, including PowerPoint. I've always had a hard time finding it, and I know it's there! Many of the links to it are dead or buried, and when I talk about it (such as in my Stackoverflow post about paste or my lightning talk at the Swiss Perl Workshop).
Some of these programs date back to the 1990s and I've discovered weird syntax things that Perl 5.22 won't support. Did you know that you could %hash->{$key} with a normal hash? Not after v5.20 you can't! Also gone is defined( @array ).
Dana Jacobson already fixed a bug in the factor program, which now has tests.
Not specifically about Perl, but I did write a post this week about the software development business in general over on my Other Blog. Might be worth checking out if you want to listen to me ramble on for a bit on that topic.
The Pittsburgh Perl Workshop Organizers are happy to announce our 7th annual event this November 7th through 9th in downtown Pittsburgh, PA. Our web site is now live and accepting registrations. We are also accepting talk submissions through September 26th:
Thanks to Mark Jason Dominus and Tom Christiansen for volunteering talks for PPW already. And thanks to Infinity Interactive for covering the costs for John Anderson to come to PPW and teach our famous “From Zero to Perl” class on November 7th *at no extra charge* for anybody buying a ticket to PPW.