Giter VIP home page Giter VIP logo

perl-critic-policy-logiclab-requireshebang's Introduction

NAME
    Perl::Critic::Policy::logicLAB::RequireSheBang - simple policy for
    keeping your shebang line uniform

AFFILIATION
    This policy is a policy in the Perl::Critic::logicLAB distribution. The
    policy is themed: logiclab.

VERSION
    This documentation describes version 0.05.

DESCRIPTION
    This policy is intended in guarding your use of the shebang line. It
    assists in making sure that your shebang line adheres to certain
    formats.

    The default format is

        #!/usr/local/bin/perl

    You can however specify another or define your own in the configuration
    of the policy.

    NB this policy does currently not warn about missing shebang lines, it
    only checks shebang lines encountered.

CONFIGURATION AND ENVIRONMENT
    This policy allow you to configure the contents of the shebang lines you
    want to allow using "formats".

  formats
        [logicLAB::RequireSheBang]
        formats = #!/usr/local/bin/perl || #!/usr/bin/perl || #!perl || #!env perl

    Since the default shebang line enforced by the policy is:

        #!/usr/local/bin/perl

    Please note that if you however what to extend the pattern, you also
    have to specify was is normally the default pattern since configuration
    overwrites the default even for extensions.

    This mean that if you want to allow:

        #!/usr/local/bin/perl

        #!/usr/local/bin/perl -w

        #!/usr/local/bin/perl -wT

    Your format should look like the following:

        [logicLAB::RequireSheBang]
        formats = #!/usr/local/bin/perl || #!/usr/local/bin/perl -w || #!/usr/local/bin/perl -wT

  exempt_modules
    You can specify if you want to check modules also. The default is to
    exempt from checking shebang lines in modules.

            [logicLAB::RequireSheBang]
            exempt_modules = 0

  debug
    Optionally and for development purposes I have added a debug flag. This
    can be set in your Perl::Critic configuration file as follows:

        [logicLAB::RequireSheBang]
        debug = 1

    This enables more explicit output on what is going on during the actual
    processing of the policy.

DEPENDENCIES AND REQUIREMENTS
    *   Perl::Critic

    *   Perl::Critic::Utils

    *   Readonly

    *   Test::More

    *   Test::Perl::Critic

    *   List::MoreUtils

INCOMPATIBILITIES
    This distribution has no known incompatibilities.

BUGS AND LIMITATIONS
    The distribution has now known bugs or limitations. It locates shebang
    lines through out the source code, not limiting itself to the first
    line. This might however change in the future, but will propably be made
    configurable if possible.

BUG REPORTING
    Please use Requets Tracker for bug reporting:

    *   <http://rt.cpan.org/NoAuth/Bugs.html?Dist=Perl-Critic-logicLAB-Requi
        reSheBang>

TEST AND QUALITY
    The following policies have been disabled for this distribution

    *   Perl::Critic::Policy::ValuesAndExpressions::ProhibitConstantPragma

        Constants are good, - see the link below.

        *   <https://logiclab.jira.com/wiki/display/OPEN/Perl-Critic-Policy-
            ValuesAndExpressions-ProhibitConstantPragma>

    *   Perl::Critic::Policy::NamingConventions::Capitalization

    *   Data::Dumper

    See also t/perlcriticrc

  TEST COVERAGE
    Coverage test executed the following way, the coverage report is based
    on the version described in this documentation (see "VERSION").

        ./Build testcover

            ---------------------------- ------ ------ ------ ------ ------ ------ ------
            File                           stmt   bran   cond    sub    pod   time  total
            ---------------------------- ------ ------ ------ ------ ------ ------ ------
            ...ogicLAB/RequireSheBang.pm   70.4   64.3   44.4  100.0  100.0  100.0   72.1
            Total                          70.4   64.3   44.4  100.0  100.0  100.0   72.1
            ---------------------------- ------ ------ ------ ------ ------ ------ ------

SEE ALSO
    *   Perl::Critic

    *   <http://perldoc.perl.org/perlrun.html>

    *   <http://logiclab.jira.com/wiki/display/OPEN/Development#Development-
        MakeyourComponentsEnvironmentAgnostic>

    *   <http://logiclab.jira.com/wiki/display/PCPLRSB/Home>

    *   <http://logiclab.jira.com/wiki/display/PCLL/Home>

AUTHOR
    *   Jonas B. Nielsen, jonasbn "<[email protected]>"

ACKNOWLEDGEMENT
    *   Erik Johansen (uniejo), feedback to version 0.01

LICENSE AND COPYRIGHT
    Copyright (c) 2011-2014 Jonas B. Nielsen, jonasbn. All rights reserved.

    This program is free software; you can redistribute it and/or modify it
    under the same terms as Perl itself.

perl-critic-policy-logiclab-requireshebang's People

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.