Accepting request 1112266 from Java:packages
Reproducible build improvements OBS-URL: https://build.opensuse.org/request/show/1112266 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/apache-ivy?expand=0&rev=23
This commit is contained in:
commit
5669b9932d
192
apache-ivy-publication-date.patch
Normal file
192
apache-ivy-publication-date.patch
Normal file
@ -0,0 +1,192 @@
|
||||
--- apache-ivy-2.5.2/src/java/org/apache/ivy/ant/AntWorkspaceResolver.java 2023-09-19 08:19:56.002999512 +0200
|
||||
+++ apache-ivy-2.5.2/src/java/org/apache/ivy/ant/AntWorkspaceResolver.java 2023-09-19 09:00:48.163799846 +0200
|
||||
@@ -197,7 +197,7 @@
|
||||
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));
|
||||
}
|
||||
|
||||
--- apache-ivy-2.5.2/src/java/org/apache/ivy/ant/IvyDeliver.java 2023-09-19 08:19:56.002999512 +0200
|
||||
+++ apache-ivy-2.5.2/src/java/org/apache/ivy/ant/IvyDeliver.java 2023-09-19 09:01:57.027624096 +0200
|
||||
@@ -374,7 +374,7 @@
|
||||
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);
|
||||
--- apache-ivy-2.5.2/src/java/org/apache/ivy/ant/IvyPublish.java 2023-09-19 08:19:56.006332869 +0200
|
||||
+++ apache-ivy-2.5.2/src/java/org/apache/ivy/ant/IvyPublish.java 2023-09-19 09:02:18.827779503 +0200
|
||||
@@ -273,7 +273,7 @@
|
||||
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);
|
||||
--- apache-ivy-2.5.2/src/java/org/apache/ivy/ant/IvyTask.java 2023-09-19 08:19:56.006332869 +0200
|
||||
+++ apache-ivy-2.5.2/src/java/org/apache/ivy/ant/IvyTask.java 2023-09-19 09:01:36.900813938 +0200
|
||||
@@ -177,7 +177,7 @@
|
||||
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);
|
||||
--- apache-ivy-2.5.2/src/java/org/apache/ivy/core/cache/DefaultRepositoryCacheManager.java 2023-09-19 08:19:56.006332869 +0200
|
||||
+++ apache-ivy-2.5.2/src/java/org/apache/ivy/core/cache/DefaultRepositoryCacheManager.java 2023-09-19 08:20:15.856475360 +0200
|
||||
@@ -1472,7 +1472,7 @@
|
||||
}
|
||||
|
||||
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
|
||||
--- apache-ivy-2.5.2/src/java/org/apache/ivy/core/deliver/DeliverOptions.java 2023-09-19 08:19:56.006332869 +0200
|
||||
+++ apache-ivy-2.5.2/src/java/org/apache/ivy/core/deliver/DeliverOptions.java 2023-09-19 09:02:47.901319704 +0200
|
||||
@@ -61,7 +61,7 @@
|
||||
* @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);
|
||||
}
|
||||
|
||||
--- apache-ivy-2.5.2/src/java/org/apache/ivy/core/install/InstallEngine.java 2023-09-19 08:19:56.006332869 +0200
|
||||
+++ apache-ivy-2.5.2/src/java/org/apache/ivy/core/install/InstallEngine.java 2023-09-19 09:04:45.372153072 +0200
|
||||
@@ -86,7 +86,7 @@
|
||||
|
||||
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,
|
||||
--- apache-ivy-2.5.2/src/java/org/apache/ivy/core/module/descriptor/DefaultArtifact.java 2023-09-19 08:19:56.009666226 +0200
|
||||
+++ apache-ivy-2.5.2/src/java/org/apache/ivy/core/module/descriptor/DefaultArtifact.java 2023-09-19 08:20:27.823227936 +0200
|
||||
@@ -100,7 +100,7 @@
|
||||
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;
|
||||
--- apache-ivy-2.5.2/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java 2023-09-19 08:19:56.009666226 +0200
|
||||
+++ apache-ivy-2.5.2/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java 2023-09-19 08:21:12.330214087 +0200
|
||||
@@ -272,7 +272,7 @@
|
||||
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 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;
|
||||
}
|
||||
}
|
||||
|
||||
--- apache-ivy-2.5.2/src/java/org/apache/ivy/core/publish/PublishEngine.java 2023-09-19 08:19:56.009666226 +0200
|
||||
+++ apache-ivy-2.5.2/src/java/org/apache/ivy/core/publish/PublishEngine.java 2023-09-19 09:03:21.054888232 +0200
|
||||
@@ -102,7 +102,7 @@
|
||||
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 @@
|
||||
: 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)
|
||||
--- apache-ivy-2.5.2/src/java/org/apache/ivy/core/report/ResolveReport.java 2023-09-19 08:19:56.009666226 +0200
|
||||
+++ apache-ivy-2.5.2/src/java/org/apache/ivy/core/report/ResolveReport.java 2023-09-19 09:04:29.478706979 +0200
|
||||
@@ -360,7 +360,7 @@
|
||||
|
||||
public ModuleDescriptor toFixedModuleDescriptor(IvySettings settings, List<ModuleId> 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<String, String> 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);
|
||||
}
|
||||
|
@ -1,3 +1,10 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Sep 19 11:31:58 UTC 2023 - Fridrich Strba <fstrba@suse.com>
|
||||
|
||||
- Added patch:
|
||||
* apache-ivy-publication-date.patch
|
||||
+ Use SOURCE_DATE_EPOCH for publication date in ivy artifacts
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 21 23:30:17 UTC 2023 - Fridrich Strba <fstrba@suse.com>
|
||||
|
||||
|
@ -31,11 +31,12 @@ Source0: https://archive.apache.org/dist/ant/ivy/%{version}/%{name}-%{ver
|
||||
Source1: ivy.1
|
||||
Source2: https://repo1.maven.org/maven2/org/apache/ivy/ivy/%{version}/ivy-%{version}.pom
|
||||
Patch0: apache-ivy-global-settings.patch
|
||||
Patch1: apache-ivy-publication-date.patch
|
||||
BuildRequires: ant
|
||||
BuildRequires: bouncycastle-pg
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: java-devel >= 1.8
|
||||
BuildRequires: javapackages-local
|
||||
BuildRequires: javapackages-local >= 6
|
||||
BuildRequires: jsch
|
||||
BuildRequires: oro
|
||||
BuildConflicts: java-devel >= 14
|
||||
@ -75,11 +76,10 @@ JavaDoc documentation for %{name}
|
||||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
|
||||
cp %{SOURCE2} pom.xml
|
||||
|
||||
%pom_remove_parent .
|
||||
|
||||
%pom_remove_dep :jsch.agentproxy
|
||||
|
||||
%if %{without httpclient}
|
||||
@ -151,7 +151,7 @@ install -p -m644 build/artifact/jars/ivy.jar %{buildroot}%{_javadir}/ivy.jar
|
||||
ln -sf ../ivy.jar %{buildroot}%{_javadir}/%{name}/ivy.jar
|
||||
|
||||
install -d -m 0755 %{buildroot}/%{_mavenpomdir}/
|
||||
install -m 0644 pom.xml %{buildroot}/%{_mavenpomdir}/JPP-ivy.pom
|
||||
%{mvn_install_pom} pom.xml %{buildroot}/%{_mavenpomdir}/JPP-ivy.pom
|
||||
# Maven depmap
|
||||
%add_maven_depmap JPP-ivy.pom ivy.jar
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user