ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jeffrey M. Metcalf (JIRA)" <>
Subject [jira] Created: (IVYDE-235) Add configuration option to use an extended revision id when resolving eclipse projects
Date Tue, 09 Feb 2010 19:33:27 GMT
Add configuration option to use an extended revision id when resolving eclipse projects

                 Key: IVYDE-235
             Project: IvyDE
          Issue Type: New Feature
          Components: classpath container
    Affects Versions:
            Reporter: Jeffrey M. Metcalf
            Priority: Minor
             Fix For: 2.1.0

The current resolve code in IvyDE leverages the default revision id of the form [org]-[module]
in the resolution cache.  A custom revision id cannot be currently specified in the Ivy ResolveOptions
as it can effectively be done via the API and in the ant tasks.  This leads to resolution
cache collisions when more than project exist on the same module in the eclipse workspace.

A standard technique to improve workspace dependency resolution is to leverage the revision
attribute in the module descriptor (and the branch attribute as proposed in IVYDE-234).  However
this technique has limitations due to the aforementioned resolution cache collision which
force the developer to manually re-resolve affected projects to ensure that the workspace
dependencies (as well as the classpath container) are properly computed.  By allowing the
developer to optionally cache and load resolve reports using an extended resolve id that uses
more information found in the attributes of the module descriptor, resolution cache collisions
can be avoided.

A configuration option on the global configuration page under the classpath configuration
submenu is proposed: specifically a boolean checkbox underneath the 'Resolve dependencies
in the workspace' checkbox.  This new boolean would default to false (unchecked) and would
be titled 'Use extended resolve id in the resolution cache'.

To ensure the lowest probability of resolution cache collision, the proposed forms of the
extended revision id against the contents of the unpublished module descriptor info tag are
as follows:

<info organisation="myorg" module="mymod" branch="mybranch" revision="2.1" status="milestone"/>
resolveId = myorg-mymod-milestone-mybranch-2.1

<info organisation="myorg" module="mymod" revision="3"/>
resolveId = myorg-mymod-integration--3

<info organisation="myorg" module="mymod"/>
resolveId =

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

View raw message