From 28b80e03a74c9562838bcd3b336312c58fe2782f8ee5726e6562fb7987905e9e Mon Sep 17 00:00:00 2001 From: Gus Kenion Date: Thu, 30 Jan 2025 14:11:41 +0000 Subject: [PATCH] Upgrade to 2.5.3 OBS-URL: https://build.opensuse.org/package/show/Java:packages/apache-ivy?expand=0&rev=92 --- apache-ivy-2.5.2-src.tar.gz | 3 - apache-ivy-2.5.3-src.tar.gz | 3 + apache-ivy-global-settings.patch | 18 +- apache-ivy-pack200.patch | 40 +-- apache-ivy-publication-date.patch | 384 +++++++++++++-------------- apache-ivy.changes | 18 ++ apache-ivy.spec | 4 +- ivy-2.5.2.pom => ivy-2.5.3.pom | 422 +++++++++++++++--------------- 8 files changed, 455 insertions(+), 437 deletions(-) delete mode 100644 apache-ivy-2.5.2-src.tar.gz create mode 100644 apache-ivy-2.5.3-src.tar.gz rename ivy-2.5.2.pom => ivy-2.5.3.pom (96%) diff --git a/apache-ivy-2.5.2-src.tar.gz b/apache-ivy-2.5.2-src.tar.gz deleted file mode 100644 index eb20fec..0000000 --- a/apache-ivy-2.5.2-src.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e06edd472268dbf200c19d16fa595e095837cbac4a7bf29c147c301a0a1b0713 -size 2728835 diff --git a/apache-ivy-2.5.3-src.tar.gz b/apache-ivy-2.5.3-src.tar.gz new file mode 100644 index 0000000..50b2ecd --- /dev/null +++ b/apache-ivy-2.5.3-src.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:293c93858b2327c53d474a19feb3beb0652705eef060a4db63e10b51495dea2e +size 2740477 diff --git a/apache-ivy-global-settings.patch b/apache-ivy-global-settings.patch index 3b5af77..c1b31da 100644 --- a/apache-ivy-global-settings.patch +++ b/apache-ivy-global-settings.patch @@ -1,11 +1,11 @@ --- a/src/java/org/apache/ivy/ant/IvyAntSettings.java +++ b/src/java/org/apache/ivy/ant/IvyAntSettings.java -@@ -345,7 +345,7 @@ public class IvyAntSettings extends DataType { - File[] settingsLocations = new File[] { - new File(getProject().getBaseDir(), settingsFileName), - new File(getProject().getBaseDir(), "ivyconf.xml"), new File(settingsFileName), -- new File("ivyconf.xml")}; -+ new File("ivyconf.xml"), new File("/etc/ivy/ivysettings.xml")}; - for (File settingsFile : settingsLocations) { - task.log("searching settings file: trying " + settingsFile, Project.MSG_VERBOSE); - if (settingsFile.exists()) { +@@ -345,7 +345,7 @@ public class IvyAntSettings extends Data + File[] settingsLocations = new File[] { + new File(getProject().getBaseDir(), settingsFileName), + new File(getProject().getBaseDir(), "ivyconf.xml"), new File(settingsFileName), +- new File("ivyconf.xml")}; ++ new File("ivyconf.xml"), new File("/etc/ivy/ivysettings.xml")}; + for (File settingsFile : settingsLocations) { + task.log("searching settings file: trying " + settingsFile, Project.MSG_VERBOSE); + if (settingsFile.exists()) { diff --git a/apache-ivy-pack200.patch b/apache-ivy-pack200.patch index 9d50983..e856da2 100644 --- a/apache-ivy-pack200.patch +++ b/apache-ivy-pack200.patch @@ -1,21 +1,21 @@ ---- apache-ivy-2.5.2/build.xml 2023-10-30 16:09:23.892302634 +0100 -+++ apache-ivy-2.5.2/build.xml 2023-10-30 16:12:01.143389848 +0100 +--- a/build.xml ++++ b/build.xml @@ -185,6 +185,7 @@ - midToKeep) { - DefaultModuleDescriptor fixedmd = new DefaultModuleDescriptor(md.getModuleRevisionId(), -- md.getStatus(), new Date()); -+ md.getStatus(), System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date()); - - // copy namespaces - for (Map.Entry ns : md.getExtraAttributesNamespaces().entrySet()) { ---- apache-ivy-2.5.2/src/java/org/apache/ivy/core/resolve/ResolveEngine.java 2023-09-19 08:19:56.009666226 +0200 -+++ apache-ivy-2.5.2/src/java/org/apache/ivy/core/resolve/ResolveEngine.java 2023-09-19 09:04:13.531927183 +0200 -@@ -572,7 +572,7 @@ - try { - options.setConfs(confs); - -- Date reportDate = new Date(); -+ Date reportDate = System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date(); - ResolveData data = context.getResolveData(); - if (data == null) { - data = new ResolveData(this, options); ---- apache-ivy-2.5.2/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java 2023-09-19 08:19:56.012999584 +0200 -+++ apache-ivy-2.5.2/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java 2023-09-19 09:06:16.799468326 +0200 -@@ -93,7 +93,7 @@ - md.addExtraAttributeNamespace("o", Ivy.getIvyHomeURL() + "osgi"); - ModuleRevisionId mrid = asMrid(BundleInfo.BUNDLE_TYPE, bundle.getSymbolicName(), - bundle.getVersion()); -- md.setResolvedPublicationDate(new Date()); -+ md.setResolvedPublicationDate(System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date()); - md.setModuleRevisionId(mrid); - - md.addConfiguration(CONF_DEFAULT); ---- apache-ivy-2.5.2/src/java/org/apache/ivy/osgi/repo/AbstractOSGiResolver.java 2023-09-19 08:19:56.012999584 +0200 -+++ apache-ivy-2.5.2/src/java/org/apache/ivy/osgi/repo/AbstractOSGiResolver.java 2023-09-19 09:06:27.589544872 +0200 -@@ -201,7 +201,7 @@ - Collections.singletonMap(CAPABILITY_EXTRA_ATTR, md.getModuleRevisionId().toString())); - - DefaultModuleDescriptor capabilityMd = new DefaultModuleDescriptor(capabilityRev, -- getSettings().getStatusManager().getDefaultStatus(), new Date()); -+ getSettings().getStatusManager().getDefaultStatus(), System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date()); - - String useConf = BundleInfoAdapter.CONF_USE_PREFIX + dd.getDependencyRevisionId().getName(); - ---- apache-ivy-2.5.2/src/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorBuilder.java 2023-09-19 08:19:56.016332941 +0200 -+++ apache-ivy-2.5.2/src/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorBuilder.java 2023-09-19 09:05:45.949249470 +0200 -@@ -249,7 +249,7 @@ - DependencyResolver resolver = parserSettings.getResolver(mrid); - - if (resolver != null) { -- DefaultArtifact artifact = new DefaultArtifact(mrid, new Date(), artifactId, "jar", -+ DefaultArtifact artifact = new DefaultArtifact(mrid, System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date(), artifactId, "jar", - "jar"); - ArtifactOrigin artifactOrigin = resolver.locate(artifact); - -@@ -268,7 +268,7 @@ - ext = packaging; - } - -- mainArtifact = new DefaultArtifact(mrid, new Date(), artifactId, packaging, ext); -+ mainArtifact = new DefaultArtifact(mrid, System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date(), artifactId, packaging, ext); - ivyModuleDescriptor.addArtifact("master", mainArtifact); - } - +--- a/src/java/org/apache/ivy/ant/AntWorkspaceResolver.java ++++ b/src/java/org/apache/ivy/ant/AntWorkspaceResolver.java +@@ -197,7 +197,7 @@ public class AntWorkspaceResolver extend + throw new RuntimeException("Unsupported file path : " + artifactFile, e); + } + +- res.add(new DefaultArtifact(md.getModuleRevisionId(), new Date(), name, type, ext, ++ res.add(new DefaultArtifact(md.getModuleRevisionId(), System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date(), name, type, ext, + url, null)); + } + +--- a/src/java/org/apache/ivy/ant/IvyDeliver.java ++++ b/src/java/org/apache/ivy/ant/IvyDeliver.java +@@ -374,7 +374,7 @@ public class IvyDeliver extends IvyTask + if (revision == null) { + revision = Ivy.getWorkingRevision(); + } +- Date pubdate = getPubDate(this.pubdate, new Date()); ++ Date pubdate = getPubDate(this.pubdate, System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date()); + if (pubRevision == null) { + if (revision.startsWith("working@")) { + pubRevision = DateUtil.format(pubdate); +--- a/src/java/org/apache/ivy/ant/IvyPublish.java ++++ b/src/java/org/apache/ivy/ant/IvyPublish.java +@@ -273,7 +273,7 @@ public class IvyPublish extends IvyTask + if ("working".equals(revision)) { + revision = Ivy.getWorkingRevision(); + } +- Date pubdate = getPubDate(this.pubdate, new Date()); ++ Date pubdate = getPubDate(this.pubdate, System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date()); + if (pubRevision == null) { + if (revision.startsWith("working@")) { + pubRevision = DateUtil.format(pubdate); +--- a/src/java/org/apache/ivy/ant/IvyTask.java ++++ b/src/java/org/apache/ivy/ant/IvyTask.java +@@ -177,7 +177,7 @@ public abstract class IvyTask extends Ta + return def; + } + if ("now".equals(date.toLowerCase(Locale.US))) { +- return new Date(); ++ return System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date(); + } + try { + return DateUtil.parse(date); +--- a/src/java/org/apache/ivy/core/cache/DefaultRepositoryCacheManager.java ++++ b/src/java/org/apache/ivy/core/cache/DefaultRepositoryCacheManager.java +@@ -1472,7 +1472,7 @@ public class DefaultRepositoryCacheManag + } + + private Artifact getDefaultMetadataArtifact(ModuleRevisionId mrid) { +- return new DefaultArtifact(mrid, new Date(), "metadata", "metadata", "ivy", true); ++ return new DefaultArtifact(mrid, System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date(), "metadata", "metadata", "ivy", true); + } + + // not used any more, but may be useful for finer grained locking when downloading artifacts +--- a/src/java/org/apache/ivy/core/deliver/DeliverOptions.java ++++ b/src/java/org/apache/ivy/core/deliver/DeliverOptions.java +@@ -61,7 +61,7 @@ public class DeliverOptions { + * @return a DeliverOptions instance ready to be used or customized + */ + public static DeliverOptions newInstance(IvySettings settings) { +- return new DeliverOptions(null, new Date(), new DefaultPublishingDRResolver(), ++ return new DeliverOptions(null, System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date(), new DefaultPublishingDRResolver(), + settings.doValidate(), true, null); + } + +--- a/src/java/org/apache/ivy/core/install/InstallEngine.java ++++ b/src/java/org/apache/ivy/core/install/InstallEngine.java +@@ -86,7 +86,7 @@ public class InstallEngine { + + DefaultModuleDescriptor md = new DefaultModuleDescriptor(ModuleRevisionId.newInstance( + "apache", "ivy-install", "1.0"), settings.getStatusManager().getDefaultStatus(), +- new Date()); ++ System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date()); + String resolveId = ResolveOptions.getDefaultResolveId(md); + md.addConfiguration(new Configuration("default")); + md.addConflictManager(new ModuleId(ExactPatternMatcher.ANY_EXPRESSION, +--- a/src/java/org/apache/ivy/core/module/descriptor/DefaultArtifact.java ++++ b/src/java/org/apache/ivy/core/module/descriptor/DefaultArtifact.java +@@ -100,7 +100,7 @@ public class DefaultArtifact extends Abs + throw new NullPointerException("null arid not allowed"); + } + if (publicationDate == null) { +- publicationDate = new Date(); ++ publicationDate = System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date(); + } + this.publicationDate = publicationDate; + this.arid = arid; +--- a/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java ++++ b/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java +@@ -272,7 +272,7 @@ public class DefaultModuleDescriptor imp + this.resolvedRevId = id; + this.status = status; + this.publicationDate = pubDate; +- this.resolvedPublicationDate = publicationDate == null ? new Date() : publicationDate; ++ this.resolvedPublicationDate = publicationDate == null ? (System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date()) : publicationDate; + this.isDefault = isDefault; + this.parser = XmlModuleDescriptorParser.getInstance(); + } +@@ -308,7 +308,7 @@ public class DefaultModuleDescriptor imp + public void setPublicationDate(Date publicationDate) { + this.publicationDate = publicationDate; + if (resolvedPublicationDate == null) { +- resolvedPublicationDate = publicationDate == null ? new Date() : publicationDate; ++ resolvedPublicationDate = publicationDate == null ? (System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date()) : publicationDate; + } + } + +--- a/src/java/org/apache/ivy/core/publish/PublishEngine.java ++++ b/src/java/org/apache/ivy/core/publish/PublishEngine.java +@@ -102,7 +102,7 @@ public class PublishEngine { + ModuleDescriptor md = null; + if (options.getSrcIvyPattern() != null) { + File ivyFile = settings.resolveFile(IvyPatternHelper.substitute( +- options.getSrcIvyPattern(), DefaultArtifact.newIvyArtifact(pubmrid, new Date()))); ++ options.getSrcIvyPattern(), DefaultArtifact.newIvyArtifact(pubmrid, System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date()))); + if (!ivyFile.exists()) { + throw new IllegalArgumentException("ivy file to publish not found for " + mrid + + ": call deliver before (" + ivyFile + ")"); +@@ -132,7 +132,7 @@ public class PublishEngine { + : options.getStatus()) + .setRevision(options.getPubrevision()) + .setBranch(options.getPubBranch()) +- .setPubdate(options.getPubdate() == null ? new Date() ++ .setPubdate(options.getPubdate() == null ? (System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date()) + : options.getPubdate()) + .setMerge(options.isMerge()) + .setMergedDescriptor(md) +--- a/src/java/org/apache/ivy/core/report/ResolveReport.java ++++ b/src/java/org/apache/ivy/core/report/ResolveReport.java +@@ -360,7 +360,7 @@ public class ResolveReport { + + public ModuleDescriptor toFixedModuleDescriptor(IvySettings settings, List midToKeep) { + DefaultModuleDescriptor fixedmd = new DefaultModuleDescriptor(md.getModuleRevisionId(), +- md.getStatus(), new Date()); ++ md.getStatus(), System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date()); + + // copy namespaces + for (Map.Entry ns : md.getExtraAttributesNamespaces().entrySet()) { +--- a/src/java/org/apache/ivy/core/resolve/ResolveEngine.java ++++ b/src/java/org/apache/ivy/core/resolve/ResolveEngine.java +@@ -572,7 +572,7 @@ public class ResolveEngine { + try { + options.setConfs(confs); + +- Date reportDate = new Date(); ++ Date reportDate = System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date(); + ResolveData data = context.getResolveData(); + if (data == null) { + data = new ResolveData(this, options); +--- a/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java ++++ b/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java +@@ -93,7 +93,7 @@ public class BundleInfoAdapter { + md.addExtraAttributeNamespace("o", Ivy.getIvyHomeURL() + "osgi"); + ModuleRevisionId mrid = asMrid(BundleInfo.BUNDLE_TYPE, bundle.getSymbolicName(), + bundle.getVersion()); +- md.setResolvedPublicationDate(new Date()); ++ md.setResolvedPublicationDate(System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date()); + md.setModuleRevisionId(mrid); + + md.addConfiguration(CONF_DEFAULT); +--- a/src/java/org/apache/ivy/osgi/repo/AbstractOSGiResolver.java ++++ b/src/java/org/apache/ivy/osgi/repo/AbstractOSGiResolver.java +@@ -201,7 +201,7 @@ public abstract class AbstractOSGiResolv + Collections.singletonMap(CAPABILITY_EXTRA_ATTR, md.getModuleRevisionId().toString())); + + DefaultModuleDescriptor capabilityMd = new DefaultModuleDescriptor(capabilityRev, +- getSettings().getStatusManager().getDefaultStatus(), new Date()); ++ getSettings().getStatusManager().getDefaultStatus(), System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date()); + + String useConf = BundleInfoAdapter.CONF_USE_PREFIX + dd.getDependencyRevisionId().getName(); + +--- a/src/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorBuilder.java ++++ b/src/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorBuilder.java +@@ -249,7 +249,7 @@ public class PomModuleDescriptorBuilder + DependencyResolver resolver = parserSettings.getResolver(mrid); + + if (resolver != null) { +- DefaultArtifact artifact = new DefaultArtifact(mrid, new Date(), artifactId, "jar", ++ DefaultArtifact artifact = new DefaultArtifact(mrid, System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date(), artifactId, "jar", + "jar"); + ArtifactOrigin artifactOrigin = resolver.locate(artifact); + +@@ -268,7 +268,7 @@ public class PomModuleDescriptorBuilder + ext = packaging; + } + +- mainArtifact = new DefaultArtifact(mrid, new Date(), artifactId, packaging, ext); ++ mainArtifact = new DefaultArtifact(mrid, System.getenv("SOURCE_DATE_EPOCH") != null ? new Date(1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"))) : new Date(), artifactId, packaging, ext); + ivyModuleDescriptor.addArtifact("master", mainArtifact); + } + diff --git a/apache-ivy.changes b/apache-ivy.changes index a453249..38be7cf 100644 --- a/apache-ivy.changes +++ b/apache-ivy.changes @@ -1,3 +1,21 @@ +------------------------------------------------------------------- +Thu Jan 30 12:51:50 UTC 2025 - Gus Kenion + +- Upgrade to version 2.5.3 + * Bugfixes: + + trying to set safe XML features causes SAXExceptions when + used with certain XML parsers (jira:IVY-1647[]) + + some unit tests failed on Java 8 (jira:IVY-1648[]) + + cached Ivy files were not valid in some scenarios + (jira:IVY-1649[], jira:IVY-1650[]) + * Documentation: + + improved to the documentation regarding the use of patterns + in the resolvers and retrieve task (jira:IVY-1651[]) +- Update patch files for compatibility with 2.5.3: + * apache-ivy-global-settings.patch + * apache-ivy-publication-date.patch + * apache-ivy-pack200.patch + ------------------------------------------------------------------- Sun Sep 29 19:45:07 UTC 2024 - Fridrich Strba diff --git a/apache-ivy.spec b/apache-ivy.spec index 0c888ac..63d5738 100644 --- a/apache-ivy.spec +++ b/apache-ivy.spec @@ -1,7 +1,7 @@ # # spec file for package apache-ivy # -# Copyright (c) 2024 SUSE LLC +# Copyright (c) 2025 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -22,7 +22,7 @@ %bcond_without vfs %bcond_with pack200 Name: apache-ivy -Version: 2.5.2 +Version: 2.5.3 Release: 0 Summary: Java-based dependency manager License: Apache-2.0 diff --git a/ivy-2.5.2.pom b/ivy-2.5.3.pom similarity index 96% rename from ivy-2.5.2.pom rename to ivy-2.5.3.pom index 0544924..fd37c05 100644 --- a/ivy-2.5.2.pom +++ b/ivy-2.5.3.pom @@ -1,211 +1,211 @@ - - - - - 4.0.0 - - org.apache - apache - 7 - - org.apache.ivy - ivy - 2.5.2 - Apache Ivy - http://ant.apache.org/ivy/ - - scm:svn:https://svn.apache.org/repos/asf/ant/ivy/core/trunk/ - scm:svn:https://svn.apache.org/repos/asf/ant/ivy/core/trunk - https://svn.apache.org/repos/asf/ant/ivy/core/trunk - - - - Ant/Ivy Developers List - dev-subscribe@ant.apache.org - dev-unsubscribe@ant.apache.org - dev@ant.apache.org - https://mail-archives.apache.org/mod_mbox/ant-dev - - - Ivy Users List - ivy-user-subscribe@ant.apache.org - ivy-user-unsubscribe@ant.apache.org - ivy-user@ant.apache.org - https://mail-archives.apache.org/mod_mbox/ant-ivy-user - - - - jira - https://issues.apache.org/jira/browse/IVY - - - - org.apache.ant - ant - 1.9.16 - true - - - org.apache.httpcomponents - httpclient - 4.5.13 - true - - - oro - oro - 2.0.8 - true - - - org.apache.commons - commons-vfs2 - 2.2 - true - - - com.jcraft - jsch - 0.1.55 - true - - - com.jcraft - jsch.agentproxy - 0.0.9 - true - - - com.jcraft - jsch.agentproxy.connector-factory - 0.0.9 - true - - - com.jcraft - jsch.agentproxy.jsch - 0.0.9 - true - - - org.bouncycastle - bcpg-jdk15on - 1.70 - true - - - org.bouncycastle - bcprov-jdk15on - 1.70 - true - - - junit - junit - 4.13.2 - test - - - org.hamcrest - hamcrest-core - 1.3 - test - - - org.hamcrest - hamcrest-library - 1.3 - test - - - org.apache.ant - ant-testutil - 1.9.16 - test - - - * - * - - - - - org.apache.ant - ant-launcher - 1.9.16 - test - - - * - * - - - - - org.apache.ant - ant-junit - 1.9.16 - test - - - * - * - - - - - org.apache.ant - ant-junit4 - 1.9.16 - test - - - * - * - - - - - ant-contrib - ant-contrib - 1.0b3 - test - - - * - * - - - - - xmlunit - xmlunit - 1.6 - test - - - * - * - - - - - + + + + + 4.0.0 + + org.apache + apache + 7 + + org.apache.ivy + ivy + 2.5.3 + Apache Ivy + http://ant.apache.org/ivy/ + + scm:svn:https://svn.apache.org/repos/asf/ant/ivy/core/trunk/ + scm:svn:https://svn.apache.org/repos/asf/ant/ivy/core/trunk + https://svn.apache.org/repos/asf/ant/ivy/core/trunk + + + + Ant/Ivy Developers List + dev-subscribe@ant.apache.org + dev-unsubscribe@ant.apache.org + dev@ant.apache.org + https://mail-archives.apache.org/mod_mbox/ant-dev + + + Ivy Users List + ivy-user-subscribe@ant.apache.org + ivy-user-unsubscribe@ant.apache.org + ivy-user@ant.apache.org + https://mail-archives.apache.org/mod_mbox/ant-ivy-user + + + + jira + https://issues.apache.org/jira/browse/IVY + + + + org.apache.ant + ant + 1.9.16 + true + + + org.apache.httpcomponents + httpclient + 4.5.13 + true + + + oro + oro + 2.0.8 + true + + + org.apache.commons + commons-vfs2 + 2.2 + true + + + com.jcraft + jsch + 0.1.55 + true + + + com.jcraft + jsch.agentproxy + 0.0.9 + true + + + com.jcraft + jsch.agentproxy.connector-factory + 0.0.9 + true + + + com.jcraft + jsch.agentproxy.jsch + 0.0.9 + true + + + org.bouncycastle + bcpg-jdk15on + 1.70 + true + + + org.bouncycastle + bcprov-jdk15on + 1.70 + true + + + junit + junit + 4.13.2 + test + + + org.hamcrest + hamcrest-core + 1.3 + test + + + org.hamcrest + hamcrest-library + 1.3 + test + + + org.apache.ant + ant-testutil + 1.9.16 + test + + + * + * + + + + + org.apache.ant + ant-launcher + 1.9.16 + test + + + * + * + + + + + org.apache.ant + ant-junit + 1.9.16 + test + + + * + * + + + + + org.apache.ant + ant-junit4 + 1.9.16 + test + + + * + * + + + + + ant-contrib + ant-contrib + 1.0b3 + test + + + * + * + + + + + xmlunit + xmlunit + 1.6 + test + + + * + * + + + + +