The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
## name No code
## failures 1
## cut
#Nothing!

#-----------------------------------------------------------------------------

## name basic pass
## failures 0
## cut
our $VERSION = 1.0;

#-----------------------------------------------------------------------------

## name basic pass #2
## failures 0
## cut
our ($VERSION) = 1.0;

#-----------------------------------------------------------------------------

## name basic pass #3
## failures 0
## cut
$Package::VERSION = 1.0;

#-----------------------------------------------------------------------------

## name basic pass #4
## failures 0
## cut
use vars '$VERSION';

#-----------------------------------------------------------------------------

## name basic pass #5
## failures 0
## cut
use vars qw($VERSION);

#-----------------------------------------------------------------------------

## name fail with lexical
## failures 1
## cut
my $VERSION;

#-----------------------------------------------------------------------------

## name fail with wrong variable
## failures 1
## cut
our $Version;

#-----------------------------------------------------------------------------

## name pass with "no critic" on
## failures 0
## cut
#!anything              ## no critic (RequireVersionVar)

#-----------------------------------------------------------------------------

## name Readonly VERSION
## failures 0
## cut

Readonly our $VERSION = 1.0;

#-----------------------------------------------------------------------------

## name Readonly::Scalar VERSION
## failures 0
## cut

Readonly::Scalar our $VERSION = 1.0;

#-----------------------------------------------------------------------------

## name Readonly::Scalar VERSION
## failures 1
## cut

Readonly::Scalar my $VERSION = 1.0;  #Note this is lexical

#-----------------------------------------------------------------------------

## name Version as argument to package. RT #67159
## failures 0
## cut

package Foo 0.001;

#-----------------------------------------------------------------------------

## name Package without version should still be violation. RT #67159
## failures 1
## cut

package Foo;

##############################################################################
# Local Variables:
#   mode: cperl
#   cperl-indent-level: 4
#   fill-column: 78
#   indent-tabs-mode: nil
#   c-indentation-style: bsd
# End:
# ex: set ts=8 sts=4 sw=4 tw=78 ft=perl expandtab shiftround :