Looking at the Ivy code, it appears that it's using a exactOrRegex matcher (by default) for matching the org/module/branch values and it's considering the . within the branch value as a regex and that causes weirdness. I just ran a test to see if using something like "dot\.branch" (notice the escape character) would help. It doesn't.

The only way I can think of getting past this issue is by setting the "matcher" attribute on that task to be "exact". Remember though that, that value will apply to all attributes (org, module and branch), so you will be expected to provide exact value for those attributes:

<ivy:rereport organisation="apache" module="log4j" branch="dot.branch" matcher="exact"/>


-Jaikiran

On Saturday 03 December 2016 01:59 AM, Gabriel Soto wrote:
I ran some tests with debug enabled and I notice some differences in the
logs.

As an example, calling:
*<ivy:repreport organisation="Apache" module="log4j"
branch="plain_branch"/>*

logs:
...
[ivy:repreport]     using maggie to list all in
\\192.168.0.1\root\ivyrep\dist\Apache\log4j
[ivy:repreport]     using maggie to list all in
\\192.168.0.1\root\ivyrep\dist\Apache\log4j
[ivy:repreport]         found 18 resources
[ivy:repreport]         found 18 urls
[ivy:repreport]         0 matched
\\192.168.0.1\root\ivyrep\dist\Apache\log4j\ivy-plain_branch-[revision].xml
[ivy:repreport] maggie do not support transaction. ivy pattern does not use
revision as a directory
[ivy:repreport]     using maggie to list all in
\\192.168.0.1\root\ivyrep\dist\Apache\log4j
[ivy:repreport]     using maggie to list all in
\\192.168.0.1\root\ivyrep\dist\Apache\log4j
[ivy:repreport]         found 18 resources
[ivy:repreport]         found 18 urls
[ivy:repreport]         0 matched
\\192.168.0.1\root\ivyrep\dist\Apache\log4j\[artifact]-plain_branch
-[revision].jar
...

But calling:
*<ivy:repreport organisation="Apache" module="log4j" branch="dot.branch"/>*

logs:
...
[ivy:repreport]     using maggie to list all in
\\192.168.0.1\root\ivyrep\dist\Apache\log4j
[ivy:repreport]     using maggie to list all in
\\192.168.0.1\root\ivyrep\dist\Apache\log4j
[ivy:repreport]         found 18 resources
[ivy:repreport]         found 18 urls
[ivy:repreport]         0 matched
\\192.168.0.1\root\ivyrep\dist\Apache\log4j\ivy-[branch]-[revision].xml
[ivy:repreport] maggie do not support transaction. ivy pattern does not use
revision as a directory
[ivy:repreport]     using maggie to list all in
\\192.168.0.1\root\ivyrep\dist\Apache\log4j
[ivy:repreport]     using maggie to list all in
\\192.168.0.1\root\ivyrep\dist\Apache\log4j
[ivy:repreport]         found 18 resources
[ivy:repreport]         found 18 urls
[ivy:repreport]         0 matched
\\192.168.0.1\root\ivyrep\dist\Apache\log4j\[artifact]-[branch]
-[revision].jar
...

Neither branch exists but notice how in the second case the branch name
isn't replaced on the pattern.
That seems to be related to my problem, since I'm getting matches on plain
branch names and no matches on the ones that contain one or more dot
characters.

Any ideas? I'll gladly run any additional tests.

Thank you,
Gabriel


On Fri, Dec 2, 2016 at 3:52 PM, Marc De Boeck <mdeb...@gmail.com> wrote:

Since branches often refer to versions or releases, it is not unusual that
they contain dots in their names.
We also have dots in the name of our branches  and don't have any problems
with it.
Maybe you can execute your repreport with debugging enabled ?

Regards
Marc


2016-12-02 16:54 GMT+01:00 Gabriel Soto <gabs...@gmail.com>:

Hello,

I'm calling a basic repreport for a module on my local repo:

<ivy:repreport
     todir="${out.dir}"
     xml="true"
     organisation="${ivy.organisation}"
     module="${ivy.module}"
     branch="${ivy.branch}"/>

Most of the time, the task behaves as expected but every time the branch
contains a '.' it outputs an empty report (the same behavior as if the
branch didn't exist).

Does this limitation make sense?
May I be hitting a bug?
Is it a bad idea to use dots in branch names?

I'm using Ivy 2.4.0.

Thank you!
Gabriel


Reply via email to