">

- NAME
- SYNOPSIS
- DESCRIPTION
- FUNCTIONS
- AUTHOR
- SEE ALSO

# NAME

Lintian::Relation::Version - Comparison operators on Debian versions

# SYNOPSIS

        print encode_utf8("yes\n") if versions_equal('1.0', '1.00');
        print encode_utf8("yes\n") if versions_gte('1.1', '1.0');
        print encode_utf8("no\n") if versions_lte('1.1', '1.0');
        print encode_utf8("yes\n") if versions_gt('1.1', '1.0');
        print encode_utf8("no\n") if versions_lt('1.1', '1.1');
        print encode_utf8("yes\n") if versions_compare('1.1', '<=', '1.1');

# DESCRIPTION

This module provides five functions for comparing version numbers. The underlying implementation uses `libapt-pkg-perl` to ensure that the results match what dpkg will expect.

# FUNCTIONS

versions_equal(A, B)

  Returns true if A is equal to B (`=`) and false otherwise.

versions_lte(A, B)

  Returns true if A is less than or equal (`<=`) to B and false otherwise.

versions_gte(A, B)

  Returns true if A is greater than or equal (`>=`) to B and false otherwise.

versions_lt(A, B)

  Returns true if A is less than (`<<`) B and false otherwise.

versions_gt(A, B)

  Returns true if A is greater than (`>>`) B and false otherwise.

versions_compare(A, OP, B)

  Returns true if A OP B, where OP is one of `=`, `<=`, `>=`, `<<`, or `>>`, and false otherwise.

versions_comparator (A, B)

  Returns -1, 0 or 1 if the version A is (respectively) less than, equal to or greater than B. This is useful for (e.g.) sorting a list of versions:

       foreach my $version (sort versions_comparator @versions) {
          ...
       }

# AUTHOR

Originally written by Russ Allbery <rra@debian.org> for Lintian and adapted to use libapt-pkg-perl by Adam D. Barratt <adam@adam-barratt-org.uk>.

# SEE ALSO

lintian(1)

<<