Ratings and Reviews for CPAN


Rate a distribution

Find a distribution you would like to review:

Recent reviews (RSS feed)

FWS-V2 (1.13091122)

Where is Ecommerce.pm?

¡Line 6154 where it logs credit card data is neat!

Object-Simple (3.16) ***

I'd say in terms of footprint and runtime performance, this module is average (it's not the most lightweight nor the fastest pure-perl object system, not to mention against XS ones). See my Bencher::Scenarios::Accessors for a comparison, e.g. metacpan.org/pod/Bencher::Scenario::A... and metacpan.org/pod/Bencher::Scenario::A... .

One drawback of using Mojo::Base and Object::Simple is its similar but slightly different and incompatible syntax with the Moo* family, so your code is not "upgradable" to Moo or Moose once you need more features. And often you'll end up wanting them, e.g. one day you'll probably read about the wonders of method modifiers (before, after, around), or roles, or wanting to have a lazy constructor, or triggers, and so on.

I'd recommend instead Mo. It's more lightweight than Object::Simple and you can do default value, builder, ro/rw, required, even coercion. But the features are modular and you only pay for what you use. And once you need more features later, you normally should be able to just replace 'use Mo' in your code with 'use Moo' or 'use Moose'.

Of course, this point is moot if you don't care about compatibility/upgradability to Moo*.

File-Util (4.161200) *****

I will get around to reviewing this module shortly, and update this post.

Text-CSV (1.33) *****

Thanx a lot. Does solve all may problems in CSV: newlines, UTF-8
Very recommendable !

Unicode-Collate (1.14)

It's a pity this module is so slow. Unicode::ICU::Collator, which is a wrapper around the ICU library, is much, much faster. Unfortunately it doesn't work with ActivePerl and MinGW in Windows, since the Visual C ICU DLLs don't seem to be compatible with MinGW; the module crashes at ucol_open().

Smart-Comments (1.06)


Net-SSH-Any (0.04) ****

I was having a real bad time with Net::SSH2 module in Windows, but after finding out this module I could happily finish my job!
The module is not only functional (something I was not being able to get with Net::SSH2, even with the most mundane commands), the interface is much easier to use.
And, as the cherry on the top, this module will give you an instance of Net::SFTP::Foreign reusing your same SSH session.
I totally recommend this module as a replacement for Net::SSH2 if you're at a Windows OS.

sybperl (2.19) ****

If you're trying to decide between sybperl and DBD::Sybase, go for DBD::Sybase.

source: www.perlmonks.org/?node_id=60992

Git-Repository (1.319) *****

I have now used Git::Repository in about 4 small applications. The interface is simple and easy to use and the examples in the documentation are a huge help.

SVN-DumpReloc (0.02) ****

Simple, small and nice tool which does it job as it should.

Beware of one missing feature: properties aren't changed (neither svn:log nor svn:mergeinfo).

Test-Needs (0.001001) *****

Nice. API is more convenient to use than Test::Requires, especially if you use subtests.

String-ProgressBar (0.03) *****

Does what it says on the tin. Thanks.

Git-Repository (1.317) *****

I have been using this module for several revisions over the last 2 years or so with great success. It improves with every update. It was also the only Git module I could ever get working in Windows and getting it working was easy.

HTTP-Command-Wrapper (0.07)

There are a few use-cases where this would be useful (mostly, to access https websites in the absence of required perl library like LWP::Protocol::https), but it would be more useful to provide an API that is already familiar to Perl programmers. That's why MIYAGAWA created HTTP::Tinyish.

Params-Validate (1.23) *****

I love this module. I use it extensively and it has improved the quality of my code by a lot.

File-Monitor (1.00)

File::Monitor __works in shared filesystem environment__ in which changes can be made by many different compute nodes (or the head node). I tested File::Monitor by running the monitor on the head node and making changes using a different node.

This is in stark contrast to Inotify-based modules and even Perl 6's notifications of file system changes (doc.perl6.org/routine/IO%3A%3ANotific... which only work if changes are made by the same system on which the monitoring process is running.

Anyway, I'm so happy to find this module. Once I get to know it better, I will commit to a "star rating". I expect and hope it will be five stars.

Class-Load (0.23) *

Class::Load is easy to use... until you discover its caveats.
For example try_load_class doesn't work properly with 'Sub::Util' See rt.cpan.org/Ticket/Display.html?id=11...

Use instead Module::Runtime (that Class::Load now uses under the hood).

File-Util (4.161200)

Point for documentation (lots of examples and cookbook). But the recipes in the cookbook currently don't really entice me to use the module. Let's see:

1) batch file rename: it's much simpler to use 'rename' or 'perlmv' utility. Or, it's much shorter to just use plain perl like 'for (grep {-f} <*>) { rename $_, s/\.log$/.txt/r }'.

2) recursively remove a directory tree: it's much shorter to just use 'File::Path::remove_tree()'.

3) increment a counter file: no locking (it's classic 1990's counter.cgi race condition all over again). Take a look at, for example, The Perl Cookbook chapter 7.11. Or I think one of Randal Schwartz's articles.

As an alternative, one can also take a look at Path::Tiny.

IP-China (20160412)

Disclosure: I wrote this module.

FFI-Platypus (0.41) *****

FFI::Platypus is an excellent module: It is easy to use due to wonderful documentation, which includes plenty of examples as well as several in-depth discussions. And, most importantly, it works!

JavaScript (1.16) ***

This is an excellent module. However it's currently suffering from a slight case of abandonment and is hard to install in up-to-date distributions. Hoping it gets some love soon because essentially when built with older versions of the mozilla javascript library (and when it was used to be available in a Debian package) it was a very useful and reliable module.

Nowadays I'd recommend transitioning to Javascript::V8 instead though.

But if you want to build it, see this:


Mail-SpamAssassin-Contrib-Plugin-IPFilter (1.1) *****

Disclosure: I wrote this module.

Git-Wrapper (0.045) *****

Whenever I need to interact with a git repo, I use Git::Wrapper. It works very well, is well maintained and makes git repo interactions easy.

Perl-Logger (0.0.1) ****

logging impact

Contenticious (0.35) *****

Excellent module. It enabled me to kit bash a good-looking website for a friend in a very short while. Thanks, Mirko!