[ 
https://issues.apache.org/jira/browse/IVY-427?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Maarten Coene updated IVY-427:
------------------------------

    Description: 
I have a repository where the same module (but different revisions) can be 
stored in different directories. When I have a dependency with a dynamic 
revision on this module, the dynamic revision is not correctly calculated.

For instance, I have the following project structure:

./ivyconf.xml
./ivy.xml
./lib/ivy1/mod1-1.0.ivy
./lib/ivy2/mod1-1.1.ivy
./lib/mod1-1.0.jar
./lib/mod1-1.1.jar

My ivyconf.xml looks like this:
<ivyconf>
    <conf defaultResolver="test" />
    <resolvers>
        <filesystem name="test">
            <ivy pattern="${ivy.conf.dir}/lib/ivy1/[module]-[revision].ivy" />
            <ivy pattern="${ivy.conf.dir}/lib/ivy2/[module]-[revision].ivy" />
            <artifact pattern="${ivy.conf.dir}/lib/[artifact]-[revision].[ext]" 
/>
        </filesystem>
    </resolvers>
</ivyconf>

My ivy.xml looks like this:
<ivy-module version="1.0">
    <info module="test" organisation="TEST"/>
    <dependencies>
        <dependency org="TEST" name="mod1" rev="1.+" />
    </dependencies>
</ivy-module>

Now ivy will resolve "1.+" to "1.0" instead of "1.1":

[ivy:configure] :: configuring :: file = C:\working\ivy-test\ivyconf.xml
[ivy:resolve] :: resolving dependencies :: [ LCMT | commons | [EMAIL PROTECTED] 
]
[ivy:resolve]   confs: [default]
[ivy:resolve]   found [ TEST | mod1 | 1.0 ] in test
[ivy:resolve]   [ *1.0* ] [ TEST | mod1 | 1.+ ]
[ivy:resolve] :: resolution report ::


  was:
I have a repository where the same module (but different revisions) can be 
stored in different directories. When I have a dependency with a dynamic 
revision on this module, the dynamic revision is not correctly calculated.

For instance, I have the following project structure:

./ivyconf.xml
./ivy.xml
./lib/ivy1/mod1-1.0.ivy
./lib/ivy2/mod1-1.1.ivy
./lib/mod1-1.0.jar
./lib/mod1-1.1.jar

My ivyconf.xml looks like this:
<ivyconf>
    <conf defaultResolver="test" />
    <resolvers>
        <filesystem name="test">
            <ivy pattern="${ivy.conf.dir}/lib/ivy1/[module]-[revision].ivy" />
            <ivy pattern="${ivy.conf.dir}/lib/ivy2/[module]-[revision].ivy" />
            <artifact pattern="${ivy.conf.dir}/lib/[artifact]-[revision].[ext]" 
/>
        </filesystem>
    </resolvers>
</ivyconf>

My ivy.xml looks like this:
<ivy-module version="1.0">
    <info module="test" organisation="TEST"/>
    <dependencies>
        <dependency org="TEST" name="mod1" rev="1.+" />
    </dependencies>
</ivy-module>

Now ivy will resolve "1.+" to "1.0" instead of "1.1":

[ivy:configure] :: configuring :: file = C:\working\ivy-test\ivyconf.xml
[ivy:resolve] :: resolving dependencies :: [ LCMT | commons | [EMAIL PROTECTED] 
]
[ivy:resolve]   confs: [default]
[ivy:resolve]   found [ TEST | mod1 | 1.0 ] in test
[ivy:resolve]   [1.0] [ TEST | mod1 | 1.+ ]
[ivy:resolve] :: resolution report ::
        ---------------------------------------------------------------------
        |                  |            modules            ||   artifacts   |
        |       conf       | number| search|dwnlded|evicted|| number|dwnlded|
        ---------------------------------------------------------------------
        |      default     |   1   |   1   |   0   |   0   ||   1   |   0   |
        ---------------------------------------------------------------------



> Dynamic revision not calculated properly when using multiple directories
> ------------------------------------------------------------------------
>
>                 Key: IVY-427
>                 URL: https://issues.apache.org/jira/browse/IVY-427
>             Project: Ivy
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.4.1
>            Reporter: Maarten Coene
>
> I have a repository where the same module (but different revisions) can be 
> stored in different directories. When I have a dependency with a dynamic 
> revision on this module, the dynamic revision is not correctly calculated.
> For instance, I have the following project structure:
> ./ivyconf.xml
> ./ivy.xml
> ./lib/ivy1/mod1-1.0.ivy
> ./lib/ivy2/mod1-1.1.ivy
> ./lib/mod1-1.0.jar
> ./lib/mod1-1.1.jar
> My ivyconf.xml looks like this:
> <ivyconf>
>     <conf defaultResolver="test" />
>     <resolvers>
>         <filesystem name="test">
>             <ivy pattern="${ivy.conf.dir}/lib/ivy1/[module]-[revision].ivy" />
>             <ivy pattern="${ivy.conf.dir}/lib/ivy2/[module]-[revision].ivy" />
>             <artifact 
> pattern="${ivy.conf.dir}/lib/[artifact]-[revision].[ext]" />
>         </filesystem>
>     </resolvers>
> </ivyconf>
> My ivy.xml looks like this:
> <ivy-module version="1.0">
>     <info module="test" organisation="TEST"/>
>     <dependencies>
>         <dependency org="TEST" name="mod1" rev="1.+" />
>     </dependencies>
> </ivy-module>
> Now ivy will resolve "1.+" to "1.0" instead of "1.1":
> [ivy:configure] :: configuring :: file = C:\working\ivy-test\ivyconf.xml
> [ivy:resolve] :: resolving dependencies :: [ LCMT | commons | [EMAIL 
> PROTECTED] ]
> [ivy:resolve]   confs: [default]
> [ivy:resolve]   found [ TEST | mod1 | 1.0 ] in test
> [ivy:resolve]   [ *1.0* ] [ TEST | mod1 | 1.+ ]
> [ivy:resolve] :: resolution report ::

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to