NAME

    Python::Version - Python PEP440 compatible version string parser in
    Perl

VERSION

    version 0.001

SYNOPSIS

        use Python::Version;
        
        my $v = Python::Version->parse("1.2.3pre2.dev1+ubuntu-1");
        
        print($v->normal);
        print($v->original);
    
        # Comparing versions
         
        if ( Python::Version->parse($vstr1) == Python::Version->parse($vstr2) ) {
          # do stuff
        }
         
        # Sorting versions
         
        my @ordered = sort { Python::Version->parse($a) <=> Python::Version->parse($b) } @list;

DESCRIPTION

    This module provides a parser as well as comparion method for Python
    PEP440 compatible version string.

METHODS

 parse($version_str)

    Class method. It takes a PEP440-compatible string and returns a
    Python::Version object.

        my $v = Python::Version->parse($version_str);

 base_version()

    Returns the normalized base part of the version.

 is_prerelease()

    Returns a boolean value for if the version is a pre-release.

 is_postrelease()

    Returns a boolean value for if the version is a post-release.

 is_devrelease()

    Returns a boolean value for if the version is a dev-release.

 local()

    Returns the normalized local version label.

 normal()

    Returns a string with a standard normalized form.

 original()

    Returns the original version string which was used to create the
    object.

 public()

    Returns the normalized public version.

SEE ALSO

    PEP 440 https://www.python.org/dev/peps/pep-0440/

AUTHOR

    Stephan Loyd <sloyd@cpan.org>

CONTRIBUTORS

      * perlancar <perlancar@cpan.org>

      * Mohammad S Anwar <manwar@cpan.org>

COPYRIGHT AND LICENSE

    This software is copyright (c) 2018-2023 by Stephan Loyd.

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