Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/java-ebuilder:master commit in: src/main/java/org/gentoo/java/ebuilder/portage/
Date: Wed, 30 Oct 2019 17:35:33
Message-Id: 1483960179.a8b7bf3afb383ba515d32e921dd4412b5991bd8e.mgorny@gentoo
1 commit: a8b7bf3afb383ba515d32e921dd4412b5991bd8e
2 Author: Benda Xu <heroxbd <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jan 9 10:59:42 2017 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Mon Jan 9 11:09:39 2017 +0000
6 URL: https://gitweb.gentoo.org/proj/java-ebuilder.git/commit/?id=a8b7bf3a
7
8 MavenVersion.java: parse version range.
9
10 http://maven.apache.org/components/enforcer/enforcer-rules/versionRanges.html
11 https://docs.oracle.com/middleware/1212/core/MAVEN/maven_version.htm
12
13 .../java/org/gentoo/java/ebuilder/portage/MavenVersion.java | 10 +++++++++-
14 1 file changed, 9 insertions(+), 1 deletion(-)
15
16 diff --git a/src/main/java/org/gentoo/java/ebuilder/portage/MavenVersion.java b/src/main/java/org/gentoo/java/ebuilder/portage/MavenVersion.java
17 index 5192abc..e2bf46f 100644
18 --- a/src/main/java/org/gentoo/java/ebuilder/portage/MavenVersion.java
19 +++ b/src/main/java/org/gentoo/java/ebuilder/portage/MavenVersion.java
20 @@ -15,6 +15,10 @@ public class MavenVersion implements Comparable<MavenVersion> {
21 */
22 private static final Pattern PATTERN_VERSION = Pattern.compile(
23 "^v?(\\d+)(?:\\.(\\d+))?(?:(?:\\.|b|beta)(\\d+))?(?:[\\.-](.*))?$");
24 + /**
25 + * Pattern for parsing maven version range.
26 + */
27 + private static final Pattern p_VERSION_RANGE = Pattern.compile("\\[.*, ?(.*?)\\]");
28 /**
29 * Incremental version number.
30 */
31 @@ -37,7 +41,11 @@ public class MavenVersion implements Comparable<MavenVersion> {
32 *
33 * @param version version string
34 */
35 - public MavenVersion(final String version) {
36 + public MavenVersion(String version) {
37 + Matcher m_RANGE = p_VERSION_RANGE.matcher(version);
38 + if (m_RANGE.matches()) {
39 + version = m_RANGE.group(1);
40 + }
41 final Matcher matcher = PATTERN_VERSION.matcher(version);
42
43 if (!matcher.matches()) {