Description
While tracking down some unexpected behavior in our Ivy-based build system, I ran across what looks like a bug in LatestVersionMatcher.needModuleDescriptor(). In that method, it has a hard-coded check for "latest.integration" to determine when to not require a module descriptor and just grab the newest thing.
public boolean needModuleDescriptor(ModuleRevisionId askedMrid, ModuleRevisionId foundMrid)
{ return !"latest.integration".equals(askedMrid.getRevision()); }
In our case, we have redefined our status to be the maven-like names:
<statuses default="snapshot">
<status name="release" integration="false"/>
<status name="snapshot" integration="true"/>
</statuses>
Where in our case "snapshot" replaces "integration". And this LatestVersionMatcher then fails to allow "latest.snapshot" to grab artifacts w/o module descriptors. (all those old jars that I haven't Ivy-fied yet
I will work on developing a patch.