[jira] Commented: (IVY-848) Add publish support to URL resolver
[ https://issues.apache.org/jira/browse/IVY-848?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12620756#action_12620756 ] Brian Sanders commented on IVY-848: --- Works great. Thanks, Maarten. > Add publish support to URL resolver > --- > > Key: IVY-848 > URL: https://issues.apache.org/jira/browse/IVY-848 > Project: Ivy > Issue Type: Improvement > Components: Core >Reporter: Brian Sanders >Assignee: Maarten Coene > Fix For: 2.0-RC1 > > Attachments: Patch_to_add_publish_support_to_URL_resolvers.patch > > > Attached is a patch to add publish support to the URL resolver. The > implementation covers both the BasicURLHandler and the HttpClientHandler. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Closed: (IVY-848) Add publish support to URL resolver
[ https://issues.apache.org/jira/browse/IVY-848?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brian Sanders closed IVY-848. - > Add publish support to URL resolver > --- > > Key: IVY-848 > URL: https://issues.apache.org/jira/browse/IVY-848 > Project: Ivy > Issue Type: Improvement > Components: Core >Reporter: Brian Sanders >Assignee: Maarten Coene > Fix For: 2.0-RC1 > > Attachments: Patch_to_add_publish_support_to_URL_resolvers.patch > > > Attached is a patch to add publish support to the URL resolver. The > implementation covers both the BasicURLHandler and the HttpClientHandler. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Resolved: (IVY-848) Add publish support to URL resolver
[ https://issues.apache.org/jira/browse/IVY-848?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Maarten Coene resolved IVY-848. --- Resolution: Fixed Fix Version/s: 2.0-RC1 Assignee: Maarten Coene I've applied your patch. Please verify if it's working for your. Thanks for the contribution! > Add publish support to URL resolver > --- > > Key: IVY-848 > URL: https://issues.apache.org/jira/browse/IVY-848 > Project: Ivy > Issue Type: Improvement > Components: Core >Reporter: Brian Sanders >Assignee: Maarten Coene > Fix For: 2.0-RC1 > > Attachments: Patch_to_add_publish_support_to_URL_resolvers.patch > > > Attached is a patch to add publish support to the URL resolver. The > implementation covers both the BasicURLHandler and the HttpClientHandler. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
svn commit: r683715 - in /ant/ivy/core/trunk: ./ src/java/org/apache/ivy/plugins/repository/url/ src/java/org/apache/ivy/util/ src/java/org/apache/ivy/util/url/
Author: maartenc Date: Thu Aug 7 14:08:34 2008 New Revision: 683715 URL: http://svn.apache.org/viewvc?rev=683715&view=rev Log: NEW: Add publish support to URL resolver (IVY-848) (thanks to Brian Sanders) Modified: ant/ivy/core/trunk/CHANGES.txt ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/url/URLRepository.java ant/ivy/core/trunk/src/java/org/apache/ivy/util/FileUtil.java ant/ivy/core/trunk/src/java/org/apache/ivy/util/url/AbstractURLHandler.java ant/ivy/core/trunk/src/java/org/apache/ivy/util/url/BasicURLHandler.java ant/ivy/core/trunk/src/java/org/apache/ivy/util/url/HttpClientHandler.java ant/ivy/core/trunk/src/java/org/apache/ivy/util/url/URLHandler.java ant/ivy/core/trunk/src/java/org/apache/ivy/util/url/URLHandlerDispatcher.java Modified: ant/ivy/core/trunk/CHANGES.txt URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/CHANGES.txt?rev=683715&r1=683714&r2=683715&view=diff == --- ant/ivy/core/trunk/CHANGES.txt (original) +++ ant/ivy/core/trunk/CHANGES.txt Thu Aug 7 14:08:34 2008 @@ -61,6 +61,7 @@ Geoff Reedy Christian Riege Andreas Sahlbach + Brian Sanders Adrian Sandor Ruslan Shevchenko John Shields @@ -75,6 +76,7 @@ trunk version = +- NEW: Add publish support to URL resolver (IVY-848) (thanks to Brian Sanders) - NEW: Better support for local builds (IVY-857) - NEW: Retain original dependency constraint rules in resolved ivy file (IVY-739) - NEW: Add a new resolve mode (optionally per module) to utilize dynamic constraint rule metadata (IVY-740) Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/url/URLRepository.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/url/URLRepository.java?rev=683715&r1=683714&r2=683715&view=diff == --- ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/url/URLRepository.java (original) +++ ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/url/URLRepository.java Thu Aug 7 14:08:34 2008 @@ -20,13 +20,7 @@ import java.io.File; import java.io.IOException; import java.net.URL; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.ListIterator; -import java.util.Map; - +import java.util.*; import org.apache.ivy.plugins.repository.AbstractRepository; import org.apache.ivy.plugins.repository.RepositoryCopyProgressListener; import org.apache.ivy.plugins.repository.Resource; @@ -75,8 +69,27 @@ } public void put(File source, String destination, boolean overwrite) throws IOException { -throw new UnsupportedOperationException( -"URL repository is not able to put files for the moment"); +if (!overwrite) { +throw new UnsupportedOperationException( +"URL repository do not support append operations at the moment"); +} + +fireTransferInitiated(getResource(destination), TransferEvent.REQUEST_PUT); +try { +long totalLength = source.length(); +if (totalLength > 0) { +progress.setTotalLength(new Long(totalLength)); +} +FileUtil.copy(source, new URL(destination), progress); +} catch (IOException ex) { +fireTransferError(ex); +throw ex; +} catch (RuntimeException ex) { +fireTransferError(ex); +throw ex; +} finally { +progress.setTotalLength(null); +} } private ApacheURLLister lister = new ApacheURLLister(); Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/util/FileUtil.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/util/FileUtil.java?rev=683715&r1=683714&r2=683715&view=diff == --- ant/ivy/core/trunk/src/java/org/apache/ivy/util/FileUtil.java (original) +++ ant/ivy/core/trunk/src/java/org/apache/ivy/util/FileUtil.java Thu Aug 7 14:08:34 2008 @@ -136,6 +136,10 @@ URLHandlerRegistry.getDefault().download(src, dest, l); } +public static void copy(File src, URL dest, CopyProgressListener l) throws IOException { +URLHandlerRegistry.getDefault().upload(src, dest, l); +} + public static void copy(InputStream src, File dest, CopyProgressListener l) throws IOException { if (dest.getParentFile() != null) { dest.getParentFile().mkdirs(); @@ -172,6 +176,12 @@ evt.update(EMPTY_BUFFER, 0, total); } +try { +dest.flush(); +} catch (IOException ex) { +// ignore +} + // clo
[jira] Commented: (IVY-848) Add publish support to URL resolver
[ https://issues.apache.org/jira/browse/IVY-848?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12620711#action_12620711 ] Matt Benson commented on IVY-848: - Can you make your rough draft available so the entire context is easy to replicate? > Add publish support to URL resolver > --- > > Key: IVY-848 > URL: https://issues.apache.org/jira/browse/IVY-848 > Project: Ivy > Issue Type: Improvement > Components: Core >Reporter: Brian Sanders > Attachments: Patch_to_add_publish_support_to_URL_resolvers.patch > > > Attached is a patch to add publish support to the URL resolver. The > implementation covers both the BasicURLHandler and the HttpClientHandler. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (IVY-232) Incorrect directory path resolve when running from a different directory
[ https://issues.apache.org/jira/browse/IVY-232?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12620709#action_12620709 ] Matt Benson commented on IVY-232: - Or, failing that, test with http://people.apache.org/~mbenson/sharedfiles/ivy.jar ? > Incorrect directory path resolve when running from a different directory > > > Key: IVY-232 > URL: https://issues.apache.org/jira/browse/IVY-232 > Project: Ivy > Issue Type: Bug > Components: Ant >Affects Versions: 1.3-RC2 > Environment: Windows 2000 (probably Unix also. Didn't check that) >Reporter: easyproglife >Assignee: Gilles Scokart > Fix For: 2.0-RC1 > > > Suppose you have two projects in two directories: > /projA > /projB > Each one of them have its own build.xml. > When you run Ant on /projA/build.xml from /projA evrything is ok. > When you run from "/projB" "ant -f ..\projA\build.xml" relative pathes are > based on "projB" by Ivy, whereas the correct way (as Ant and Maven works) is > to use "projA" as the base directory (assuming "/projA/build.xml" has > "basedir" attribute: ".") > In other words, Ivy should take the base directory as specified in the > "build.xml" file in "project" tag in "basedir" attribute, and calculate it > based on the location of the build.xml file; not based on the "current" > directory where Ant was invoced from. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (IVY-848) Add publish support to URL resolver
[ https://issues.apache.org/jira/browse/IVY-848?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12620694#action_12620694 ] Brian Sanders commented on IVY-848: --- Would you please take a look at this patch? I've modified our build system to use Ivy with Sonatype Nexus as the repository, and it's been a great success for us. I'm working on a blog entry detailing the integration of Ivy and Nexus; asking the user to download the Ivy source and rebuild with this patch makes it sound a bit daunting to some. > Add publish support to URL resolver > --- > > Key: IVY-848 > URL: https://issues.apache.org/jira/browse/IVY-848 > Project: Ivy > Issue Type: Improvement > Components: Core >Reporter: Brian Sanders > Attachments: Patch_to_add_publish_support_to_URL_resolvers.patch > > > Attached is a patch to add publish support to the URL resolver. The > implementation covers both the BasicURLHandler and the HttpClientHandler. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (IVY-232) Incorrect directory path resolve when running from a different directory
[ https://issues.apache.org/jira/browse/IVY-232?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12620650#action_12620650 ] Matt Benson commented on IVY-232: - Can someone attach a test to this issue? > Incorrect directory path resolve when running from a different directory > > > Key: IVY-232 > URL: https://issues.apache.org/jira/browse/IVY-232 > Project: Ivy > Issue Type: Bug > Components: Ant >Affects Versions: 1.3-RC2 > Environment: Windows 2000 (probably Unix also. Didn't check that) >Reporter: easyproglife >Assignee: Gilles Scokart > Fix For: 2.0-RC1 > > > Suppose you have two projects in two directories: > /projA > /projB > Each one of them have its own build.xml. > When you run Ant on /projA/build.xml from /projA evrything is ok. > When you run from "/projB" "ant -f ..\projA\build.xml" relative pathes are > based on "projB" by Ivy, whereas the correct way (as Ant and Maven works) is > to use "projA" as the base directory (assuming "/projA/build.xml" has > "basedir" attribute: ".") > In other words, Ivy should take the base directory as specified in the > "build.xml" file in "project" tag in "basedir" attribute, and calculate it > based on the location of the build.xml file; not based on the "current" > directory where Ant was invoced from. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
svn commit: r683612 - /ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java
Author: gscokart Date: Thu Aug 7 06:15:08 2008 New Revision: 683612 URL: http://svn.apache.org/viewvc?rev=683612&view=rev Log: minor optimization (avoid 1 copy) (IVY-872) Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java?rev=683612&r1=683611&r2=683612&view=diff == --- ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java (original) +++ ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java Thu Aug 7 06:15:08 2008 @@ -791,7 +791,6 @@ Message.debug(node + " was previously evicted in root module conf " + node.getRootModuleConf()); } - node.markEvicted(evictionData); if (debugConflictResolution) { Message.debug("evicting " + node + " by " + evictionData); @@ -804,8 +803,8 @@ } // compute conflicts -Collection resolvedNodes = new HashSet(ancestor.getNode().getResolvedNodes( -node.getModuleId(), node.getRootModuleConf())); +Set resolvedNodes = ancestor.getNode().getResolvedNodes(node.getModuleId(), + node.getRootModuleConf()); resolvedNodes.addAll(ancestor.getNode().getPendingConflicts(node.getRootModuleConf(), node.getModuleId())); Collection conflicts = computeConflicts(node, ancestor, conf, toevict, resolvedNodes);
svn commit: r683610 - in /ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve: IvyNode.java IvyNodeEviction.java ResolveEngine.java
Author: gscokart Date: Thu Aug 7 06:12:44 2008 New Revision: 683610 URL: http://svn.apache.org/viewvc?rev=683610&view=rev Log: minor optimization (avoid 1 copy) (IVY-872) Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/IvyNode.java ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/IvyNodeEviction.java ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/IvyNode.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/IvyNode.java?rev=683610&r1=683609&r2=683610&view=diff == --- ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/IvyNode.java (original) +++ ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/IvyNode.java Thu Aug 7 06:12:44 2008 @@ -1044,7 +1044,8 @@ // EVICTION MANAGEMENT // / -public Collection getResolvedNodes(ModuleId moduleId, String rootModuleConf) { +/** A copy of the set of resolved nodes (real nodes) */ +public Set getResolvedNodes(ModuleId moduleId, String rootModuleConf) { return eviction.getResolvedNodes(moduleId, rootModuleConf); } Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/IvyNodeEviction.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/IvyNodeEviction.java?rev=683610&r1=683609&r2=683610&view=diff == --- ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/IvyNodeEviction.java (original) +++ ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/IvyNodeEviction.java Thu Aug 7 06:12:44 2008 @@ -204,7 +204,10 @@ this.node = node; } -public Collection getResolvedNodes(ModuleId mid, String rootModuleConf) { +/** + * @return A copy of the set of resolved nodes (real nodes) + */ +public Set getResolvedNodes(ModuleId mid, String rootModuleConf) { Collection resolved = (Collection) selectedDeps.get(new ModuleIdConf(mid, rootModuleConf)); Set ret = new HashSet(); if (resolved != null) { Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java?rev=683610&r1=683609&r2=683610&view=diff == --- ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java (original) +++ ant/ivy/core/trunk/src/java/org/apache/ivy/core/resolve/ResolveEngine.java Thu Aug 7 06:12:44 2008 @@ -775,6 +775,7 @@ // job is done and node is evicted, nothing to do return true; } +boolean debugConflictResolution = settings.debugConflictResolution(); if (checkConflictSolvedSelected(node, ancestor)) { // job is done and node is selected, nothing to do for this ancestor, but we still have // to check higher levels, for which conflict resolution might have been impossible @@ -786,13 +787,13 @@ ancestor); if (evictionData != null) { // node has been previously evicted in an ancestor: we mark it as evicted -if (settings.debugConflictResolution()) { +if (debugConflictResolution) { Message.debug(node + " was previously evicted in root module conf " + node.getRootModuleConf()); } node.markEvicted(evictionData); -if (settings.debugConflictResolution()) { +if (debugConflictResolution) { Message.debug("evicting " + node + " by " + evictionData); } } @@ -814,7 +815,7 @@ Collection resolved = resolveConflicts(node, ancestor, conflicts, conflictManager); if (resolved == null) { -if (settings.debugConflictResolution()) { +if (debugConflictResolution) { Message.debug("impossible to resolve conflicts for " + node + " in " + ancestor + " yet"); Message.debug("setting all nodes as pending conflicts for later conflict" @@ -825,7 +826,7 @@ return false; } -if (settings.debugConflictResolution()) { +if (debugConflictResolution) { Message.debug("selected revisions for " + node + " in " + ancestor + ": " + resolved); } if (resolved.contains(node.getNode())) { @@ -840,7 +841,7 @@ te.markEvicted(node.getRootModuleConf(), ancestor.getNode(), conflictManager,
svn commit: r683589 - in /ant/ivy/core/trunk/src/java/org/apache/ivy: core/module/descriptor/ util/extendable/
Author: gscokart Date: Thu Aug 7 04:33:18 2008 New Revision: 683589 URL: http://svn.apache.org/viewvc?rev=683589&view=rev Log: optimize setStandardAttribute by not storing it in a separate map. A side effect is that the getStandardAttribute has to be removed (it is not use, when code want a standard attribute, it use the specific get method) Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/AbstractArtifact.java ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultDependencyDescriptor.java ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java ant/ivy/core/trunk/src/java/org/apache/ivy/util/extendable/DefaultExtendableItem.java ant/ivy/core/trunk/src/java/org/apache/ivy/util/extendable/ExtendableItem.java ant/ivy/core/trunk/src/java/org/apache/ivy/util/extendable/UnmodifiableExtendableItem.java Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/AbstractArtifact.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/AbstractArtifact.java?rev=683589&r1=683588&r2=683589&view=diff == --- ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/AbstractArtifact.java (original) +++ ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/AbstractArtifact.java Thu Aug 7 04:33:18 2008 @@ -79,12 +79,5 @@ return getId().getQualifiedExtraAttributes(); } -public String getStandardAttribute(String attName) { -return getId().getStandardAttribute(attName); -} - -public Map getStandardAttributes() { -return getId().getStandardAttributes(); -} } Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultDependencyDescriptor.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultDependencyDescriptor.java?rev=683589&r1=683588&r2=683589&view=diff == --- ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultDependencyDescriptor.java (original) +++ ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultDependencyDescriptor.java Thu Aug 7 04:33:18 2008 @@ -535,14 +535,6 @@ return revId.getQualifiedExtraAttributes(); } -public String getStandardAttribute(String attName) { -return revId.getStandardAttribute(attName); -} - -public Map getStandardAttributes() { -return revId.getStandardAttributes(); -} - public DependencyDescriptor asSystem() { return asSystem; } Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java?rev=683589&r1=683588&r2=683589&view=diff == --- ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java (original) +++ ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java Thu Aug 7 04:33:18 2008 @@ -594,13 +594,7 @@ return resolvedRevId.getQualifiedExtraAttributes(); } -public String getStandardAttribute(String attName) { -return resolvedRevId.getStandardAttribute(attName); -} -public Map getStandardAttributes() { -return resolvedRevId.getStandardAttributes(); -} public ModuleDescriptorParser getParser() { return parser; Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/util/extendable/DefaultExtendableItem.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/util/extendable/DefaultExtendableItem.java?rev=683589&r1=683588&r2=683589&view=diff == --- ant/ivy/core/trunk/src/java/org/apache/ivy/util/extendable/DefaultExtendableItem.java (original) +++ ant/ivy/core/trunk/src/java/org/apache/ivy/util/extendable/DefaultExtendableItem.java Thu Aug 7 04:33:18 2008 @@ -35,11 +35,5 @@ super.setExtraAttribute(attName, attValue); } -public void setStandardAttribute(String attName, String attValue) { -super.setStandardAttribute(attName, attValue); -} -public void setAttribute(String attName, String attValue, boolean extra) { -super.setAttribute(attName, attValue, extra); -} } Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/util/extendable/ExtendableItem.java URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/util/extendable/ExtendableItem.java?rev=683589&r1=683588&r2=683589&view=diff ===
[jira] Commented: (IVY-872) Improve performance
[ https://issues.apache.org/jira/browse/IVY-872?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12620573#action_12620573 ] Gilles Scokart commented on IVY-872: After optimization, ModuleRules.getRules only take 3% of my total build time. I have gained 12% of my total build time (6 minutes for my build that nearly 1 hour when runned in a profiler) > Improve performance > --- > > Key: IVY-872 > URL: https://issues.apache.org/jira/browse/IVY-872 > Project: Ivy > Issue Type: Improvement >Affects Versions: 2.0.0-beta-2 >Reporter: Gilles Scokart >Assignee: Gilles Scokart > Fix For: 2.0-RC1 > > > On heavy multi-module build with important number of dependencies the part of > ivy might be very important. > On my benchmarked project, ivy take 50% of the time. > I will attach to this issue some performance enhancements. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Created: (IVY-879) Using ivy in offline mode
Using ivy in offline mode - Key: IVY-879 URL: https://issues.apache.org/jira/browse/IVY-879 Project: Ivy Issue Type: Improvement Components: Core Reporter: Jean-Louis BOUDART I recently tried to use ivy in offline, everything is in ivy-cache, but ivy seems to check dynamique revision all the time. Exemple: Suppose you have this dependency on your project Looking in the POM file (http://repo1.maven.org/maven2/jasperreports/jasperreports/2.0.5/jasperreports-2.0.5.pom) we can see that jasperreports depends on commons-logging#[1.0,) This revision is evaluated on every resolve/retrieve. I've tried to tune my cache with a large TTL, but the problem is still here. My cache configuration : Maybe there is a regression on my version? Even if the TTL options seems to be interessant, i'm not so sure that this is the best solution for working in "offline mode". It could be a nice improvement to reuse the cache even if TTL is expired when repo are not reachable. What do you think about it? -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (IVY-652) Ivy constructs incorrect URL if artifact path contains spaces
[ https://issues.apache.org/jira/browse/IVY-652?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12620567#action_12620567 ] Pavel Sher commented on IVY-652: I need this version on the server side when Ivy downloads artifacts, I submitted another feature request: IVY-878 > Ivy constructs incorrect URL if artifact path contains spaces > - > > Key: IVY-652 > URL: https://issues.apache.org/jira/browse/IVY-652 > Project: Ivy > Issue Type: Bug > Components: Core >Affects Versions: 1.4.1 >Reporter: Pavel Sher >Assignee: Maarten Coene > Fix For: 2.0-RC1 > > > I have the following publication in my ivy.xml file: > > > > When Ivy tries to download this artifact it constructs wrong URL with non > escaped spaces. > I can provide escaped path in ivy.xml (however I do not think it is correct > to do so), but in this case Ivy do not unescape path and stores files on disk > with %20 in their names. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (IVY-232) Incorrect directory path resolve when running from a different directory
[ https://issues.apache.org/jira/browse/IVY-232?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12620544#action_12620544 ] Xavier Hanin commented on IVY-232: -- Fixing this is not complex, it's only time consuming to go through all the code to make sure we don't forget any single case. And when I talk about absolute paths, I'm actually talking about paths relative to a directory which has an absolute path, like path relative to basedir or settings dir. For a first reference to this "trick", see [this comment|https://issues.apache.org/jira/browse/IVY-232?focusedCommentId=12453138#action_12453138] > Incorrect directory path resolve when running from a different directory > > > Key: IVY-232 > URL: https://issues.apache.org/jira/browse/IVY-232 > Project: Ivy > Issue Type: Bug > Components: Ant >Affects Versions: 1.3-RC2 > Environment: Windows 2000 (probably Unix also. Didn't check that) >Reporter: easyproglife >Assignee: Gilles Scokart > Fix For: 2.0-RC1 > > > Suppose you have two projects in two directories: > /projA > /projB > Each one of them have its own build.xml. > When you run Ant on /projA/build.xml from /projA evrything is ok. > When you run from "/projB" "ant -f ..\projA\build.xml" relative pathes are > based on "projB" by Ivy, whereas the correct way (as Ant and Maven works) is > to use "projA" as the base directory (assuming "/projA/build.xml" has > "basedir" attribute: ".") > In other words, Ivy should take the base directory as specified in the > "build.xml" file in "project" tag in "basedir" attribute, and calculate it > based on the location of the build.xml file; not based on the "current" > directory where Ant was invoced from. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (IVY-232) Incorrect directory path resolve when running from a different directory
[ https://issues.apache.org/jira/browse/IVY-232?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12620543#action_12620543 ] Adrian Sandor commented on IVY-232: --- I'd provide a patch, but first I'd need to figure out how to fix it (and that would take some time). I thought you guys could do it very easily, and just haven't decided to do it yet. Absolute paths are unacceptable because the projects may be installed (from svn) in different locations on different computers; only the relative paths would be the same. The "${basedir}/" thing seems to be an acceptable workaround (thank you!), hadn't thought about that or seen it mentioned before. Still, I think this bug should be fixed. > Incorrect directory path resolve when running from a different directory > > > Key: IVY-232 > URL: https://issues.apache.org/jira/browse/IVY-232 > Project: Ivy > Issue Type: Bug > Components: Ant >Affects Versions: 1.3-RC2 > Environment: Windows 2000 (probably Unix also. Didn't check that) >Reporter: easyproglife >Assignee: Gilles Scokart > Fix For: 2.0-RC1 > > > Suppose you have two projects in two directories: > /projA > /projB > Each one of them have its own build.xml. > When you run Ant on /projA/build.xml from /projA evrything is ok. > When you run from "/projB" "ant -f ..\projA\build.xml" relative pathes are > based on "projB" by Ivy, whereas the correct way (as Ant and Maven works) is > to use "projA" as the base directory (assuming "/projA/build.xml" has > "basedir" attribute: ".") > In other words, Ivy should take the base directory as specified in the > "build.xml" file in "project" tag in "basedir" attribute, and calculate it > based on the location of the build.xml file; not based on the "current" > directory where Ant was invoced from. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (IVY-232) Incorrect directory path resolve when running from a different directory
[ https://issues.apache.org/jira/browse/IVY-232?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12620536#action_12620536 ] Xavier Hanin commented on IVY-232: -- So Adrian, if you are so unhappy, provide a patch to fix this. When you say that using absolute paths is unacceptable for you, you don't explain why. All you need is add "${basedir}/" at the beginning of all the paths. I believe that if this isn't fixed yet, it's because everybody realized that it was faster to do this than to implement the fix and provide a patch. > Incorrect directory path resolve when running from a different directory > > > Key: IVY-232 > URL: https://issues.apache.org/jira/browse/IVY-232 > Project: Ivy > Issue Type: Bug > Components: Ant >Affects Versions: 1.3-RC2 > Environment: Windows 2000 (probably Unix also. Didn't check that) >Reporter: easyproglife >Assignee: Gilles Scokart > Fix For: 2.0-RC1 > > > Suppose you have two projects in two directories: > /projA > /projB > Each one of them have its own build.xml. > When you run Ant on /projA/build.xml from /projA evrything is ok. > When you run from "/projB" "ant -f ..\projA\build.xml" relative pathes are > based on "projB" by Ivy, whereas the correct way (as Ant and Maven works) is > to use "projA" as the base directory (assuming "/projA/build.xml" has > "basedir" attribute: ".") > In other words, Ivy should take the base directory as specified in the > "build.xml" file in "project" tag in "basedir" attribute, and calculate it > based on the location of the build.xml file; not based on the "current" > directory where Ant was invoced from. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.