ivy-plugin icon indicating copy to clipboard operation
ivy-plugin copied to clipboard

Extended revision matching does not work w/explicit revision #s

Open noise opened this issue 12 years ago • 2 comments

First, some details:

  • Jenkins 1.452
  • Ivy Plugin 1.21
  • "Use extended revision matching to filter the project dependency graph" enabled
  • Freestyle project

Dependee/lib project's ivy info:

  <info organisation="com.example" module="my-svc" status="integration" branch="trunk" revision="1.0.1" />

Depender/app dep:

  <dependency org="com.example" name="my-svc" branch="trunk" rev="1.0.1" />

As such it fails to be recognized as a dependency by the plugin. If I change it to either:

  <dependency org="com.example" name="my-svc" branch="trunk" rev="1.0.+" />
  <dependency org="com.example" name="my-svc" branch="trunk" rev="latest.integration" />

Then it works as expected. Why won't the explicit version work?

noise avatar Apr 26 '12 20:04 noise

I debugged this and found the offending line at: https://github.com/jenkinsci/ivy-plugin/blob/master/src/main/java/hudson/ivy/IvyBuildTrigger.java#L494 added in commit: https://github.com/jenkinsci/ivy-plugin/commit/af3db7f721b476a01d416761e8bedfb5b0cf10ab:

  captures = (matcher != null && matcher.isDynamic(depRevId));

It looks like prior to that there was an option to "enforceDynamicMatching" or not, but I don't get the rationale to deny version matches for explicit versioning. Can anyone elaborate on the logic here?

Thanks in advance!

noise avatar Apr 27 '12 19:04 noise

@ndeloof would you have a minute to share your thoughts on this issue?

johnou avatar Jul 17 '13 19:07 johnou