John Patrick created MENFORCER-350: -------------------------------------- Summary: requireMavenVersion x.y.x is processed as (,x.y.z] instead of [x.y.z,) Key: MENFORCER-350 URL: https://issues.apache.org/jira/browse/MENFORCER-350 Project: Maven Enforcer Plugin Issue Type: Improvement Affects Versions: 3.0.0-M3 Environment: Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) Maven home: /Users/USER/.m2/wrapper/dists/apache-maven-3.6.3-bin/1iopthnavndlasol9gbrbg6bf2/apache-maven-3.6.3 Java version: 1.8.0_192, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/Home/jre Default locale: en_GB, platform encoding: UTF-8 OS name: "mac os x", version: "10.14.6", arch: "x86_64", family: "mac"
Reporter: John Patrick Reading the guide https://maven.apache.org/enforcer/enforcer-rules/versionRanges.html I would expect a basic version string of 3.6.2 to be converted to [3.6.2,) but from the investigation below it seams to be converted to (,3.6.2]. e.g. documentation says minimum version but it appears to be maximum version. I'm using maven wrapper so something like `mvn -N io.takari:maven:0.7.7:wrapper -Dmaven=3.6.3` to change version, then editing pom.xml version, then executing `./mvnw clean install` to see if the tests pass or fail. I've tried 3.0.0-M3 and 3.0.0-M4-SNAPSHOT (master at 2020/02/10). {code:xml} <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>groupId</groupId> <artifactId>artifactId</artifactId> <version>1</version> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <version>3.0.0-M3</version> <executions> <execution> <id>enforce-maven</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <requireMavenVersion> <version>x.y.z</version> </requireMavenVersion> </rules> </configuration> </execution> </executions> </plugin> </plugins> </build> </project> {code} ||Maven Wrapper Version||requireMavenVersion||Passed/Failed||Expected|| |3.6.0|3.6.0|Passed|Yes| |3.6.0|3.6.1|Failed|Yes| |3.6.0|3.6.2|Failed|Yes| |3.6.0|3.6.3|Failed|Yes| |3.6.1|3.6.0|Passed|No| |3.6.1|3.6.1|Passed|Yes| |3.6.1|3.6.2|Failed|Yes| |3.6.1|3.6.3|Failed|Yes| |3.6.2|3.6.0|Passed|No| |3.6.2|3.6.1|Passed|No| |3.6.2|3.6.2|Passed|Yes| |3.6.2|3.6.3|Failed|Yes| |3.6.3|3.6.0|Passed|No| |3.6.3|3.6.1|Passed|No| |3.6.3|3.6.2|Passed|No| |3.6.3|3.6.3|Passed|Yes| |3.6.0|[3.6.0]|Passed|Yes| |3.6.0|[3.6.1]|Failed|Yes| |3.6.0|[3.6.2]|Failed|Yes| |3.6.0|[3.6.3]|Failed|Yes| |3.6.1|[3.6.0]|Failed|Yes| |3.6.1|[3.6.1]|Passed|Yes| |3.6.1|[3.6.2]|Failed|Yes| |3.6.1|[3.6.3]|Failed|Yes| |3.6.2|[3.6.0]|Failed|Yes| |3.6.2|[3.6.1]|Failed|Yes| |3.6.2|[3.6.2]|Passed|Yes| |3.6.2|[3.6.3]|Failed|Yes| |3.6.3|[3.6.0]|Failed|Yes| |3.6.3|[3.6.1]|Failed|Yes| |3.6.3|[3.6.2]|Failed|Yes| |3.6.3|[3.6.3]|Passed|Yes| |3.6.0|[3.6.0,)|Passed|Yes| |3.6.0|[3.6.1,)|Failed|Yes| |3.6.0|[3.6.2,)|Failed|Yes| |3.6.0|[3.6.3,)|Failed|Yes| |3.6.1|[3.6.0,)|Passed|Yes| |3.6.1|[3.6.1,)|Passed|Yes| |3.6.1|[3.6.2,)|Failed|Yes| |3.6.1|[3.6.3,)|Failed|Yes| |3.6.2|[3.6.0,)|Passed|Yes| |3.6.2|[3.6.1,)|Passed|Yes| |3.6.2|[3.6.2,)|Passed|Yes| |3.6.2|[3.6.3,)|Failed|Yes| |3.6.3|[3.6.0,)|Passed|Yes| |3.6.3|[3.6.1,)|Passed|Yes| |3.6.3|[3.6.2,)|Passed|Yes| |3.6.3|[3.6.3,)|Passed|Yes| |3.6.0|(,3.6.0]|Passed|Yes| |3.6.0|(,3.6.1]|Passed|Yes| |3.6.0|(,3.6.2]|Passed|Yes| |3.6.0|(,3.6.3]|Passed|Yes| |3.6.1|(,3.6.0]|Failed|Yes| |3.6.1|(,3.6.1]|Passed|Yes| |3.6.1|(,3.6.2]|Passed|Yes| |3.6.1|(,3.6.3]|Passed|Yes| |3.6.2|(,3.6.0]|Failed|Yes| |3.6.2|(,3.6.1]|Failed|Yes| |3.6.2|(,3.6.2]|Passed|Yes| |3.6.2|(,3.6.3]|Passed|Yes| |3.6.3|(,3.6.0]|Failed|Yes| |3.6.3|(,3.6.1]|Failed|Yes| |3.6.3|(,3.6.2]|Failed|Yes| |3.6.3|(,3.6.3]|Passed|Yes| -- This message was sent by Atlassian Jira (v8.3.4#803005)