ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mitch Gitman <mgit...@gmail.com>
Subject extends & buildlist on 2.3.0-rc1 ... it gets worse
Date Fri, 22 Jun 2012 04:23:10 GMT
Over a week ago, I'd sent out a message to this list, "buildlist task
chokes on absolute path to parent Ivy module." I'd found that the extends
feature worked fine with an absolute path to the parent ivy.xml if I was
building any single Ivy module, but the buildlist task would fail to find
the absolute path.



I'd noted that I'd been using Ivy 2.2.0. Now that I've upgraded to Ivy
2.3.0-rc1, my problems have only gotten worse. The first problem I
encountered had nothing to do with absolute paths to parents. I'm still
using relative paths to parents. Instead, it arose from my using two
different parent Ivy modules: bootstrap-parent and master-parent. Some
projects extended the former; others the latter. For example:
  <info organisation="foo" module="homeowner" revision="${version}">

    <extends organisation="foo" module="bootstrap-parent"
revision="${version}"

        location="../bootstrap-parent/ivy.xml" />

  </info>



But then when I pointed the ivy:buildlist Ant task at a project stack that
included a mix of both parents and their children, I saw this error:

impossible to parse ivy file for …/foo-client/homeowner/build.xml:
ivyfile=.../foo-client/homeowner/ivy.xml
exception=java.text.ParseException: Problem occurred while parsing ivy
file: inconsistent module descriptor file found in
'file:/.../master-parent/ivy.xml': bad module name:
expected='bootstrap-parent' found='master-parent';  in
file:/.../foo-client/homeowner/ivy.xml



What's happening is, the homeowner module extends bootstrap-parent, but
somehow the relative path to master-parent/ivy.xml is supplanting the
relative path to bootstrap-parent/ivy.xml. It appears buildlist doesn't
know how to deal with more than one parent, even though there's no
interaction between the two parents.



After this, even though I didn't really want to, I thought, "Why not make
things simple for buildlist and use just one parent, master-parent?"



Here's where things really got wild. With Ivy 2.2.0, buildlist worked just
fine, provided I gave it relative paths to the different parents. Now, even
with a relative path and even with a single parent, buildlist on 2.3.0-rc1
goes nuts. I go so far as to introduce a buildlist Ivy conf to force
project A to sort before project B. How does buildlist on 2.3.0-rc1
interpret this? It puts B before A. (And no, I can guarantee I have no
circular dependencies.)



Can someone say, are there any integration tests that test the interaction
between buildlist and extends?



And how should I proceed regarding these problems? Should I file a bug or
bugs or JIRA? Does anyone know of any existing bugs on JIRA?

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message