Acme-CPANModules-Import-CPANRatings-User-stevenharyanto

 view release on metacpan or  search on metacpan

README  view on Meta::CPAN

        programs started by system()/backtick. For the latter, you might
        want to try IPC::Cmd (run() or run_forked()), or some simpler
        interface for it like System::Timeout. <br><br>

    Util::Timeout
        Author: NOTBENH <https://metacpan.org/author/NOTBENH>

        A wrapper around Perl's alarm()/$SIG{ALRM}, so it has the same
        limitations, e.g. you cannot use this to properly timeout external
        programs started by system()/backtick. For the latter, you might
        want to try IPC::Cmd (run() or run_forked()), or some simpler
        interface for it like System::Timeout. <br><br>

    System::Timeout
        Author: CHENGANG <https://metacpan.org/author/CHENGANG>

        This is a thin wrapper over IPC::Cmd's run(). I'd personally use
        run() directly, it's not much harder or longer to type. Plus,
        IPC::Cmd is a core module. <br><br>

    Module::Quote
        Author: TOBYINK <https://metacpan.org/author/TOBYINK>

        Wouldn't a function like
        load_module(&quot;Math::Module&quot;)-&gt;new(42) be more obvious?
        Is there a specific goal for using custom quote operator (which
        requires Devel::Declare, and thus a C compiler to build)? <br>

    Module::Hash
        Author: TOBYINK <https://metacpan.org/author/TOBYINK>

        Wouldn't a function like
        load_module(&quot;Math::Module&quot;)-&gt;new(42) be more obvious?
        Is there a specific goal for using a tied hash (since there is
        already %INC)?

    Promises
        Author: YANICK <https://metacpan.org/author/YANICK>

        5-star for its documentation. <br>

    Lingua::ITA::Numbers
        Author: PETAMEM <https://metacpan.org/author/PETAMEM>

        Does the author care to explain the sudden influx of
        Lingua::&lt;3-letter-code&gt;:: modules (which look like mostly just
        repackaging of their corresponding Lingua::&lt;2-letter-code&gt;::
        modules with no mention of purpose in the PODs)? The original
        modules are not orphaned either (for example, I still maintain
        Lingua::ID::*). <br><br>No Changes file. Versioning synchronized for
        all 3-letter modules with no indication of what version of the
        2-letter-code module is used. For example, Lingua::ITA::Numbers' doc
        still says &quot;decimals don't work properly&quot;, while
        Lingua::IT::Numbers' doesn't (however, needless use of
        Regexp::Common does gets removed).

    HTTP::Headers::Patch::DontUseStorable
        Author: PERLANCAR <https://metacpan.org/author/PERLANCAR>

        @zaxon: I'm not sure if it's a bug with HTTP::Headers, more like a
        workaround for Storable. See the FAQ in the updated v0.03 for more
        details. <br>

    Storable
        Author: NWCLARK <https://metacpan.org/author/NWCLARK>

        Balancing previous glowing reviews. Storable has it faults, for
        example historically its track record for file format backwards
        compatibility is poor, making programs fail when loading Storable
        files after the module is upgraded. <br><br>Also, more importantly,
        add builtin support for Regexp object already! It's almost 2013,
        Regexp object has been around for, what, more than a decade? I can
        understand not supporting serializing filehandle or coderef, but
        Regexp object?

        Rating: 2/10

    WWW::YouTube::Download
        Author: OALDERS <https://metacpan.org/author/OALDERS>

        Works for me too ATM. I've tried several command-line scripts (most
        of them Python-based, like youtube-dl, tubenick, etc). Sometimes
        they work, sometimes they broke. It's the nature of this kind of
        script. The quality comes from persistence. This module has been
        maintained since 2009, through several YouTube's changes. I commend
        the author, good job, and thanks!

    Number::Zero
        From the module's POD: &quot;The number zero and undef are difficult
        to determine in Perl.&quot; <br><br>Are they? <br><br>say
        !defined($data) ? &quot;undef&quot; : &quot;not undef&quot;;
        <br><br>say defined($data) &amp;&amp; $data==0 ? &quot;zero&quot; :
        &quot;not zero&quot;; # yes, warn if non-numeric <br><br>use
        Scalar::Util 'looks_like_number'; <br> say looks_like_number($data)
        &amp;&amp; $data==0 ? &quot;zero&quot; : &quot;not zero&quot;;
        <br><br>Though I understand the need for a convenient
        &quot;is_zero&quot; function if you need to test for zero in a
        program a lot.

    Syntax::SourceHighlight
        Author: MATLIB <https://metacpan.org/author/MATLIB>

        IMO, currently the only usable (read: non-crap) code syntax
        highlighting library on CPAN. Cons: you'll need to install GNU
        Source-highlight (and its development library/header) which pulls
        over 100MB of packages on my Debian. <br>

        Rating: 8/10

    Syntax::Highlight::Engine::Kate
        Author: MANWAR <https://metacpan.org/author/MANWAR>

        Highlighter engine doesn't seem updated (for example, defined-or is
        not yet interpreted correctly by this module but already correctly
        by Kate itself). Does not provide default theme (must specify all
        colors). Seem to be very slow (takes 1.5s for a 18K Perl .pm file
        while Pygments only takes 0.2s). <br><br>

        Rating: 2/10

    Syntax::Highlight::JSON
        Author: MART <https://metacpan.org/author/MART>

        No documentation. Combines formatting and syntax-highlighting, so
        you cannot preserve original formatting. Only outputs to HTML and no
        default &quot;theme&quot; (CSS) provided. <br>

        Rating: 2/10

    Syntax::Highlight::Engine::Simple
        Author: AKHUETTEL <https://metacpan.org/author/AKHUETTEL>

        Output looks decent. However, it currently only formats to HTML/CSS
        (no ANSI, LaTeX, etc). Also, it needs more languages support. <br>

        Rating: 6/10

    Syntax::Highlight::Universal
        Author: PALANT <https://metacpan.org/author/PALANT>

        Only targets (X)HTML (i.e. no alternative output like ANSI or
        LaTeX). Supposedly slow. But it doesn't matter because code no
        longer builds (last updated in 2005).

        Rating: 2/10

    text::highlight
        Outdated (no longer updated), poor capability (even for some simple
        Perl code, the output is atrocious), few languages supported. A far
        cry from Pygments or coderay.

        Rating: 2/10

    SemVer
        Author: DWHEELER <https://metacpan.org/author/DWHEELER>

        Good for semantic versioning scheme like 1.2.3 vs 1.2.3alpha vs
        1.2.3rc (1.2.3 should be the latest, not the alpha or rc). However,
        does not accept e.g. 1.0beta (at least three components are needed).
        Perhaps relax this requirement? <br><br>Also take a look at
        Debian::Dpkg::Version. <br>

    Sort::Versions
        Author: NEILB <https://metacpan.org/author/NEILB>

        Good for Perl-style versioning scheme (1.2.3) but does not work as
        people expect for semantic versioning scheme like 1.2.3 vs
        1.2.3alpha vs 1.2.3rc (1.2.3 should be the latest, not the alpha or
        rc). For handling the latter case, use SemVer. Also take a look at
        Debian::Dpkg::Version.

    App::Countdown
        Author: SHLOMIF <https://metacpan.org/author/SHLOMIF>

        Nice idea, though I'd probably just write a shell function for this.
        <br>

        Rating: 8/10

    Data::Compare
        Author: DCANTRELL <https://metacpan.org/author/DCANTRELL>

        Pros: handle hashes as well as arrays, handle nested and cyclic
        structure, plugins. <br><br>Cons: No cmp-like functionality
        (returning -1, 0, 1), slow (even slower than Array::Compare).
        <br><br>See also: Array::Compare, JSON/YAML/Storable. <br>

        Rating: 6/10

    Array::Compare
        Author: DAVECROSS <https://metacpan.org/author/DAVECROSS>

        Pros: has a perm() function to check whether the two arrays contain
        the same things but in different order (although you can simply just
        run sort() over the arrays first). Allow skipping some elements from
        comparison. <br><br>Cons: no cmp-like functionality (returning -1,
        0, 1), slow (for equality test, you might as well compare the
        json_encode() result of the arrays, which is way faster), no nested
        comparison. No procedural interface. <br><br>See also:
        Data::Compare, JSON/YAML/Storable.

        Rating: 4/10

    Mozilla::Mechanize
        Author: SLANNING <https://metacpan.org/author/SLANNING>

        No longer builds (tested on a current Debian). A pity, since drop-in
        replacements for WWW::Mechanize (using different backend like curl,

README  view on Meta::CPAN

        I prefer YAML::Syck, in others YAML::XS, this depends on the data
        that I'm handling. <br>

    PerlX::Perform
        Author: TOBYINK <https://metacpan.org/author/TOBYINK>

        I personally don't see much value of this syntactic sugar since Perl
        already allows us to express clearly. Pick one: <br><br>for ($foo) {
        say $_ if defined } <br><br>for (grep {defined} $foo) { say $_ }
        <br><br>do { say $_ if defined } for $foo <br><br>say $_ for grep
        {defined} $foo <br><br>And save yourself from having to remember
        whether we should add a comma or not before &quot;wherever&quot;.
        <br>

    TOBYINK::PerlX::A
        I have nothing against bundles like this, but beware that adding
        'use TOBYINK::PerlX::A' will cause Perl to load 460 files and
        compile +- 160k lines (takes 1s on my Core i5 machine and 8s on my
        Atom netbook).

    WWW::Google::Images
        Just adding a note that this module is unmaintained (as expressed by
        the author) and has stopped working for some time. If you are
        looking for alternatives, try REST::Google (which includes
        REST::Google::Search::Images). The latter has been working OK for
        me.

    Acme::Damn
        Author: IBB <https://metacpan.org/author/IBB>

        5 stars for cute metaphor (there's also Acme::Holy by the same
        author, but that is just another implementation of Scalar::Util's
        blessed()) and for prompt support from the author. <br><br>I'm sure
        there exists a real use case to move this out of Acme::, however
        obscure that might be. Can't come up with any right now, all I can
        think of is reblessing, which can be handled with bless() from the
        start. <br><br>UPDATE 2013-09-11: I found a real use-case for it!
        Cleaning up data to be sent to JSON. BTW, Data::Structure::Util also
        has an unbless() function, but Acme::Damn is smaller and faster.
        Data::Structure::Util also currently doesn't build on Windows. <br>

    WWW::Parallels::Agent
        @Justin Case: The name is unfortunate, but it's already proper
        (WWW:: followed by website or company name). HTTP client libraries
        are in LWP::. But VM:: is also an apt choice. <br>

    Underscore
        I don't know why Sawyer X's review is marked as unhelpful (2 out of
        8), but I agree with him. This is *not* an Acme module, it's a port
        of a JavaScript library of the same name. <br>

    Locale::Geocode
        Author: DIZ <https://metacpan.org/author/DIZ>

        Sorry to have to rate with 1 star. I don't have problem with the
        interface/documentation. The 1-star rating is just to warn people
        that the data used by this module is not up to date. And that
        YEARS-old bugs are not being fixed. <br><br>At the time of this
        writing, this module still uses ISO 3166-2:1998 (first edition) +
        the newsletters (minor updates) up to 2006. When it should be
        updated to ISO 3166-2:2007 (second edition) + all the newsletters.
        For example, this module does not report 3 newer provinces in
        Indonesia. <br><br>Sadly we live in a world where countries and
        subcountries change all the time.

        Rating: 2/10

    Locale::SubCountry
        Author: KIMRYAN <https://metacpan.org/author/KIMRYAN>

        UPDATE 2012-08-30: I am not sure if the module is now fully
        compliant to the new ISO 2007, but bug reports are certainly being
        responded and resolved now. Updating rating from 1-star to 4-star.
        Thanks, Kim. <br><br>2012-02-17: Review to version 1.47:
        <br><br>Sorry to have to rate with 1 star. I don't have problem with
        the interface/documentation. The 1-star rating is just to warn
        people that the data used by this module is not up to date. And that
        months-old bugs are not being fixed. <br><br>At the time of this
        writing, this module still uses ISO 3166-2:1998 (first edition) when
        it should be updated to ISO 3166-2:2007 (second edition) + all the
        newsletters (minor updates). For example, this module does not
        report 3 newer provinces in Indonesia. <br><br>Sadly we live in a
        world where countries and subcountries change all the time.
        <br><br>EDIT: Ok, so I was not being clear that I was not talking
        about my own bug report (posted at about the same time of this
        review). And bugs were certainly being resolved up to about 7 months
        ago. <br>

        Rating: 8/10

    Data::Rmap
        Author: BOWMANBS <https://metacpan.org/author/BOWMANBS>

        A very handy utility, sort of like s/// on your nested data
        structure instead of just strings. One nitpick: no coderef support.
        I needed to replace all coderefs inside a data structure into a
        string, since I want to pass it to JSON encoder. None of the
        rmap_*() functions seem to let me get to the coderefs. (RT wishlist
        ticket added.) <br><br>UPDATE 2011-12-30: The author (Brad) quickly
        responded to my RT ticket and added rmap_code. Upgrading from 4- to
        5-star :) Regexp support is not there yet though, and I have
        suggested the ability to get all kinds of Perl-specific and weird
        objects, because one of the main uses of Data::Rmap for me is to
        &quot;clean&quot; a data structure to pass to non-Perl systems. <br>

    Data::Properties::JSON
        Author: JOHND <https://metacpan.org/author/JOHND>

        The abstract for this module is a bit strange. What does this have
        to do with 'test fixtures'? Also the documentation doesn't say much,
        e.g. What will happen if a hash key contains funny characters (or
        arrays, etc)? <br><br>A similar module in spirit is Data::Hive. I
        think &quot;providing convenient chained method access to
        hierarchical data&quot; should be refactored out. So perhaps
        Data::Properties::{JSON,YAML,...} should just be a convenient
        shortcut for {JSON,YAML,...} parser + Data::Hive.

    Exporter::Auto
        Author: NEILB <https://metacpan.org/author/NEILB>

        I discourage module authors from exporting like this because it's
        simply too impolite/intrusive for module users. If the module author
        is lazy, there is already Exporter::NoWork which offers a few
        options for module users. This module, on the other hand, gives no
        control at all for users (so they'll have to resort to 'use Module
        ();'). <br><br>Let me remind all again by quoting from Exporter's
        POD: &quot;Do *not* export anything else by default without a good
        reason! Exports pollute the namespace of the module user.&quot;

    Net::Douban
        Interface to web services should be put under WWW::*, not Net::*

    HTML::Form::XSS
        Author: DUMB <https://metacpan.org/author/DUMB>

        Should probably be put under Test::*?

    Thread::IID
        Author: WROG <https://metacpan.org/author/WROG>

README  view on Meta::CPAN

    DZ1 Why do we need this uploaded to CPAN?

        Rating: 2/10

    Passwd::Unix
        Author: STRZELEC <https://metacpan.org/author/STRZELEC>

        No tests. No detailed error status, only true/false (yes, there is a
        'warnings' parameter on constructor, but this doesn't give out
        warnings on all operations, only some). No locking (although there
        is backup, but still). <br><br>Also, some weird choices, why use
        bzip2 when creating backup? Or, why still require running as root
        (checking $() if we are allowing custom database file location?
        <br><br>Between this and Unix::ConfigFile, I'm seriously considering
        using Unix commands instead (useradd, userdel, gpasswd, et al).
        <br><br>UPDATE 2011-04-21: I created a fork of Passwd::Unix 0.52
        called Passwd::Unix::Alt instead, which add some tests and
        modifications. Try it out if your needs are also not met by
        Passwd::Unix. <br><br>UPDATE 2012-08-30: I created a new module
        called Unix::Passwd::File. Try it out if your needs are also not met
        by Passwd::Unix.

        Rating: 2/10

    Unix::ConfigFile
        Author: SSNODGRA <https://metacpan.org/author/SSNODGRA>

        Outdated module that doesn't handle /etc/shadow and /etc/gshadow.

        Rating: 2/10

    lib::xi
        Author: GFUJI <https://metacpan.org/author/GFUJI>

        Handy module for installing dependencies. There are previous
        efforts, but the arrival of cpanm makes autoinstall process less
        tedious, so hats off also to the creator of cpanm. <br>

    Capture::Tiny::Extended
        Author: MITHALDU <https://metacpan.org/author/MITHALDU>

        Indispensable. Provides nice enhancement to Capture::Tiny
        (particularly the real-time teeing). <br>

    google_talk_bot
        Improperly packaged, improper POD formatting, bot messages hardcoded
        in script, and yes... idiotic license. Basically a &quot;trial&quot;
        script to bait users into consultation gig. CPAN is not a place for
        this kind of thing. Please try again. <br>

        Rating: 2/10

    Clone::Any
        Author: EVO <https://metacpan.org/author/EVO>

        Using Clone::Any nowadays is more trouble than it's worth.
        <br><br>First, there are annoying incompatibilities between cloning
        modules. Most notably Storable, which is the default cloning module
        if Clone is not available, *still* doesn't support storing Regexp
        objects out-of-the-box after all these years. <br><br>Second, this
        module has not been updated for a long time and newer alternatives
        like the fast Data::Clone is not recognized. <br><br>Right now I'm
        replacing all code from using Clone::Any code to Data::Clone.
        <br><br>

        Rating: 4/10

    Array::OrdHash
        Author: WOWASURIN <https://metacpan.org/author/WOWASURIN>

        Fun module to play with, especially for those among us infected with
        a bit of PHP envy (me, never!). <br>

    Bash::Completion
        Author: MELO <https://metacpan.org/author/MELO>

        Clean code, plugin interface simple to use, but implementation needs
        to be improved. For example, parsing $ENV{COMP_LINE} &amp;
        $ENV{COMP_POINT} into @argv is done simplistically using
        split(/\h+/), without regard to shell's quotes/escapes.
        (Getopt::Complete's way is somewhat better by invoking shell, but it
        also has its problems. I guess in this regard external programs are
        second-class citizens to shell functions because they don't get the
        equivalents of COMP_WORDS/COMP_CWORD). <br>

        Rating: 6/10

    Bash::Completion::Plugins::cpanm
        Author: PERLER <https://metacpan.org/author/PERLER>

        Cool, except that with cpanm I often install local distribution
        (cpanm Foo-Bar-1.23.tar.gz). Perhaps the completion can look in the
        filesystem first before firing API request. Also, might be nice if
        there is some caching because it seems to be slow (at least from
        where I am). <br>

        Rating: 8/10

    Switch
        Author: CHORNY <https://metacpan.org/author/CHORNY>

        With all due respect to the author, Switch is no longer necessary in
        5.10+ as 5.10+ already introduced smart matching and given().
        given() is superior because it doesn't introduce compile-time
        overhead, doesn't mess line numbers, and should be faster (simply
        because smart match is fast, and Switch is not utilizing it).
        <br><br>You have been using 5.10+, right? (Since 5.8 is no longer
        officially supported) <br>

    Moo Author: HAARG <https://metacpan.org/author/HAARG>

        Last week I ported an application from Mouse (Any::Moose) to Moo.
        Went without a hitch (well I did replace &quot;with 'X', 'Y',
        'Z';&quot; to &quot;with 'X'; with 'Y'; with 'Z';&quot; as
        instructed in the Moo documentation). Startup time decreased
        significantly. Planning to move every Moose apps to Moo. Splendid!
        <br>

    Sub::StopCalls
        Author: RUZ <https://metacpan.org/author/RUZ>



( run in 1.129 second using v1.01-cache-2.11-cpan-b16cb0d3907 )