Lintian::Relation::Version3
Comparison operators on debian versions
Usage
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');
Overview
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) {...}
Releases
5 releases since Debian 9 (Stretch); the text changed 4 times.