Thank you both (haukex and stevieb) for showing
different ways to do it. This is a good example
of the benefits of using a module with a proper
api. Without the module it needs a url, the
decoder, and hash access, all of which could
change; while the module neatly hides all the
brittle parts behind a simple interface.
#!/usr/bin/perl
# Get the latest version numbers of your favorite modules
# (If they exist and have a normal version number...)
# Usage: $0 Module::Name Other::Module Etc
use strict; use warnings;
use HTTP::Tiny;
use JSON::PP 'decode_json';
use MetaCPAN::Client;
my @ARGS = @ARGV ? @ARGV : ('MetaCPAN::Client','MCE','Plack');
my $http = HTTP::Tiny->new;
for (@ARGS) {
print "$_\t", decode_json($http->get(
"http://fastapi.metacpan.org/v1/module/$_"
)->{content})->{version},"\n"
}
my $cpan = MetaCPAN::Client->new;
for (@ARGS){
printf "%s: %s\n", $_, $cpan->module($_)->version;
}
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
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, details, 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, summary, 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: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.