Accepting request 1112225 from Java:packages

6.3.1

OBS-URL: https://build.opensuse.org/request/show/1112225
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/aqute-bnd?expand=0&rev=10
This commit is contained in:
Dominique Leuenberger 2023-09-20 11:29:19 +00:00 committed by Git OBS Bridge
commit 42e117540a
23 changed files with 1899 additions and 947 deletions

View File

@ -1,18 +1,20 @@
diff -Napur bnd-5.1.1.REL.orig/biz.aQute.bnd/src/aQute/bnd/main/bnd.java bnd-5.1.1.REL/biz.aQute.bnd/src/aQute/bnd/main/bnd.java
--- bnd-5.1.1.REL.orig/biz.aQute.bnd/src/aQute/bnd/main/bnd.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/biz.aQute.bnd/src/aQute/bnd/main/bnd.java 2021-02-17 12:56:39.434022335 +0100
@@ -104,7 +104,6 @@ import aQute.bnd.osgi.Resource;
diff --git a/biz.aQute.bnd/src/aQute/bnd/main/bnd.java b/biz.aQute.bnd/src/aQute/bnd/main/bnd.java
index a787c32..fc241a2 100644
--- a/biz.aQute.bnd/src/aQute/bnd/main/bnd.java
+++ b/biz.aQute.bnd/src/aQute/bnd/main/bnd.java
@@ -110,7 +110,6 @@ import aQute.bnd.osgi.Resource;
import aQute.bnd.osgi.Verifier;
import aQute.bnd.osgi.eclipse.EclipseClasspath;
import aQute.bnd.print.JarPrinter;
-import aQute.bnd.repository.maven.provider.NexusCommand;
import aQute.bnd.result.Result;
import aQute.bnd.service.Actionable;
import aQute.bnd.service.RepositoryPlugin;
import aQute.bnd.service.action.Action;
@@ -3905,54 +3904,6 @@ public class bnd extends Processor {
@@ -3921,54 +3920,6 @@ public class bnd extends Processor {
getInfo(profiles);
}
/**
- /**
- * Resolve command
- *
- * @throws Exception
@ -60,11 +62,26 @@ diff -Napur bnd-5.1.1.REL.orig/biz.aQute.bnd/src/aQute/bnd/main/bnd.java bnd-5.1
- rc.close();
- }
-
- /**
/**
* Export a bndrun file
*/
interface ExportOptions extends ProjectWorkspaceOptions {
@@ -4462,24 +4413,6 @@ public class bnd extends Processor {
@@ -4424,15 +4375,6 @@ public class bnd extends Processor {
}
}
- @Description("Start an interactive shell")
- public void _shell(Shell.ShellOptions options) throws Exception {
- try (Shell shell = new Shell(this, options)) {
- shell.loop();
- } finally {
- out.println("done");
- }
- }
-
public Workspace getWorkspace() {
return workspace;
}
@@ -4479,24 +4421,6 @@ public class bnd extends Processor {
}
@ -86,6 +103,6 @@ diff -Napur bnd-5.1.1.REL.orig/biz.aQute.bnd/src/aQute/bnd/main/bnd.java bnd-5.1
- getInfo(c);
- }
-
@Description("Generate source code")
interface GenerateOptions extends ProjectWorkspaceOptions {
@Description("Shows the differences between two XML resource repositories")
public void _xmlrepodiff(XmlRepoDiffOptions options) throws Exception {
try (XmlRepoDiffCommand cmd = new XmlRepoDiffCommand(this)) {

File diff suppressed because it is too large Load Diff

View File

@ -1,116 +0,0 @@
diff -Natur bnd-5.1.1.REL-orig/maven/bnd-maven-plugin/src/main/java/aQute/bnd/maven/plugin/AbstractBndMavenPlugin.java bnd-5.1.1.REL/maven/bnd-maven-plugin/src/main/java/aQute/bnd/maven/plugin/AbstractBndMavenPlugin.java
--- bnd-5.1.1.REL-orig/maven/bnd-maven-plugin/src/main/java/aQute/bnd/maven/plugin/AbstractBndMavenPlugin.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/maven/bnd-maven-plugin/src/main/java/aQute/bnd/maven/plugin/AbstractBndMavenPlugin.java 2021-10-17 22:35:26.583884078 +0200
@@ -56,7 +56,6 @@
import aQute.bnd.build.Project;
import aQute.bnd.header.OSGiHeader;
-import aQute.bnd.maven.lib.configuration.BeanProperties;
import aQute.bnd.osgi.Builder;
import aQute.bnd.osgi.Constants;
import aQute.bnd.osgi.FileResource;
diff -Natur bnd-5.1.1.REL-orig/maven/bnd-maven-plugin/src/main/java/aQute/bnd/maven/plugin/BeanProperties.java bnd-5.1.1.REL/maven/bnd-maven-plugin/src/main/java/aQute/bnd/maven/plugin/BeanProperties.java
--- bnd-5.1.1.REL-orig/maven/bnd-maven-plugin/src/main/java/aQute/bnd/maven/plugin/BeanProperties.java 1970-01-01 01:00:00.000000000 +0100
+++ bnd-5.1.1.REL/maven/bnd-maven-plugin/src/main/java/aQute/bnd/maven/plugin/BeanProperties.java 2021-10-17 22:35:31.151908789 +0200
@@ -0,0 +1,101 @@
+package aQute.bnd.maven.plugin;
+
+import static java.lang.invoke.MethodHandles.publicLookup;
+
+import java.lang.invoke.MethodHandle;
+import java.lang.reflect.Array;
+import java.lang.reflect.Modifier;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Properties;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class BeanProperties extends Properties {
+ private static final Logger logger = LoggerFactory.getLogger(BeanProperties.class);
+
+ private static final Pattern KEY_P = Pattern
+ .compile("(?<name>[^\\.\\[]+)(?:\\[(?<index>\\d+)\\])?\\.?");
+ private static final long serialVersionUID = 1L;
+
+ protected Properties defaults;
+
+ public BeanProperties() {
+ this(null);
+ }
+
+ public BeanProperties(Properties defaults) {
+ this.defaults = defaults;
+ }
+
+ @Override
+ public String getProperty(String key) {
+ final Matcher m = KEY_P.matcher(key);
+ if (!m.find()) {
+ return defaultValue(key);
+ }
+ String name = m.group("name");
+ Object value = value(name, get(name), m.group("index"));
+ while ((value != null) && m.find()) {
+ name = m.group("name");
+ value = value(name, getField(value, name), m.group("index"));
+ }
+ return (value != null) ? value.toString() : defaultValue(key);
+ }
+
+ private String defaultValue(String key) {
+ return (defaults != null) ? defaults.getProperty(key) : null;
+ }
+
+ private Object getField(Object target, String fieldName) {
+ try {
+ String getterSuffix = Character.toUpperCase(fieldName.charAt(0)) + fieldName.substring(1);
+ Class<?> targetClass = target.getClass();
+ while (!Modifier.isPublic(targetClass.getModifiers())) {
+ targetClass = targetClass.getSuperclass();
+ }
+ MethodHandle mh;
+ try {
+ mh = publicLookup().unreflect(targetClass.getMethod("get" + getterSuffix));
+ } catch (NoSuchMethodException nsme) {
+ mh = publicLookup().unreflect(targetClass.getMethod("is" + getterSuffix));
+ }
+ return mh.invoke(target);
+ } catch (Error e) {
+ throw e;
+ } catch (Throwable e) {
+ logger.debug("Could not find getter method for field {}", fieldName, e);
+ }
+ return null;
+ }
+
+ private Object value(String name, Object value, String index) {
+ if ((value == null) || (index == null)) {
+ return value;
+ }
+ try {
+ int i = Integer.parseInt(index);
+ if (value instanceof List) {
+ return ((List<?>) value).get(i);
+ } else if (value instanceof Iterable) {
+ if (i < 0) {
+ throw new IndexOutOfBoundsException("index < 0");
+ }
+ Iterator<?> iter = ((Iterable<?>) value).iterator();
+ for (; i > 0; i--) {
+ iter.next();
+ }
+ return iter.next();
+ } else if (value.getClass()
+ .isArray()) {
+ return Array.get(value, i);
+ }
+ } catch (Exception e) {
+ logger.debug("Could not find field {}[{}]", name, index, e);
+ }
+ return value;
+ }
+}

View File

@ -2,10 +2,8 @@
<service name="tar_scm" mode="disabled">
<param name="scm">git</param>
<param name="url">https://github.com/bndtools/bnd.git</param>
<param name="revision">5.2.0.REL</param>
<param name="match-tag">*.REL</param>
<param name="revision">6.3.1</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="versionrewrite-pattern">(.*).REL</param>
<param name="exclude">gradlew*</param>
<param name="exclude">docs</param>
<param name="exclude">**.jar</param>

View File

@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>biz.aQute.bnd</groupId>
<artifactId>aQute.libg</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<description>A library to be statically linked. Contains many small utilities. This bundle should not be installed in a framework, it is compile only.</description>
<name>aQute.libg</name>
<url>https://bnd.bndtools.org/</url>
@ -23,7 +23,7 @@
<url>https://github.com/bndtools/bnd</url>
<connection>scm:git:https://github.com/bndtools/bnd.git</connection>
<developerConnection>scm:git:git@github.com:bndtools/bnd.git</developerConnection>
<tag>5.2.0.REL</tag>
<tag>6.3.1</tag>
</scm>
<developers>
<developer>
@ -41,7 +41,7 @@
<developer>
<id>bjhargrave</id>
<name>BJ Hargrave</name>
<email>bj@bjhargrave.com</email>
<email>bj@hargrave.dev</email>
<url>https://github.com/bjhargrave</url>
<organization>IBM</organization>
<organizationUrl>https://developer.ibm.com</organizationUrl>
@ -67,7 +67,7 @@
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.annotation</artifactId>
<version>7.0.0</version>
<version>8.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
@ -76,22 +76,34 @@
<version>1.7.25</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.dto</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.resource</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.framework</artifactId>
<version>1.8.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.util.function</artifactId>
<version>1.1.0</version>
<version>1.2.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.util.promise</artifactId>
<version>1.1.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.core</artifactId>
<version>6.0.0</version>
<version>1.2.0</version>
<scope>compile</scope>
</dependency>
</dependencies>

View File

@ -1,658 +0,0 @@
--- bnd-5.1.1.REL/aQute.libg/src/aQute/lib/io/ByteBufferDataInput.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/aQute.libg/src/aQute/lib/io/ByteBufferDataInput.java 2021-10-18 07:58:03.359785670 +0200
@@ -2,6 +2,7 @@
import java.io.DataInput;
import java.io.IOException;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
import java.util.Objects;
@@ -34,8 +35,8 @@
public ByteBuffer slice(int n) {
int limit = ranged(n);
ByteBuffer slice = bb.slice();
- slice.limit(limit);
- bb.position(bb.position() + limit);
+ ((Buffer)slice).limit(limit);
+ ((Buffer)bb).position(bb.position() + limit);
return slice;
}
@@ -52,7 +53,7 @@
@Override
public int skipBytes(int n) {
int skipped = ranged(n);
- bb.position(bb.position() + skipped);
+ ((Buffer)bb).position(bb.position() + skipped);
return skipped;
}
--- bnd-5.1.1.REL/aQute.libg/src/aQute/lib/io/ByteBufferDataOutput.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/aQute.libg/src/aQute/lib/io/ByteBufferDataOutput.java 2021-10-18 08:02:40.545556492 +0200
@@ -4,6 +4,7 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.UTFDataFormatException;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
public class ByteBufferDataOutput implements DataOutput {
@@ -19,7 +20,7 @@
public ByteBuffer toByteBuffer() {
ByteBuffer obb = bb.duplicate();
- obb.flip();
+ ((Buffer)obb).flip();
return obb;
}
@@ -41,7 +42,7 @@
if ((newCap - minCap) < 0) {
newCap = minCap;
}
- obb.flip();
+ ((Buffer)obb).flip();
return bb = ByteBuffer.allocate(newCap)
.put(obb);
}
@@ -78,7 +79,7 @@
byte[] buffer = obb.array();
for (int size, position; obb.hasRemaining()
&& (size = in.read(buffer, position = obb.position(), obb.remaining())) > 0;) {
- obb.position(position + size);
+ ((Buffer)obb).position(position + size);
}
} while (!obb.hasRemaining());
}
--- bnd-5.1.1.REL/aQute.libg/src/aQute/lib/io/ByteBufferInputStream.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/aQute.libg/src/aQute/lib/io/ByteBufferInputStream.java 2021-10-18 08:00:48.472840427 +0200
@@ -1,13 +1,14 @@
package aQute.lib.io;
import java.io.InputStream;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
public class ByteBufferInputStream extends InputStream {
private final ByteBuffer bb;
public ByteBufferInputStream(ByteBuffer buffer) {
- buffer.mark();
+ ((Buffer)buffer).mark();
bb = buffer;
}
@@ -44,7 +45,7 @@
return 0L;
}
int skipped = Math.min((int) n, bb.remaining());
- bb.position(bb.position() + skipped);
+ ((Buffer)bb).position(bb.position() + skipped);
return skipped;
}
@@ -55,17 +56,17 @@
@Override
public void close() {
- bb.position(bb.limit());
+ ((Buffer)bb).position(bb.limit());
}
@Override
public synchronized void mark(int readlimit) {
- bb.mark();
+ ((Buffer)bb).mark();
}
@Override
public synchronized void reset() {
- bb.reset();
+ ((Buffer)bb).reset();
}
@Override
--- bnd-5.1.1.REL/aQute.libg/src/aQute/lib/io/ByteBufferOutputStream.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/aQute.libg/src/aQute/lib/io/ByteBufferOutputStream.java 2021-10-18 07:59:24.488303884 +0200
@@ -3,6 +3,7 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
public class ByteBufferOutputStream extends OutputStream {
@@ -18,7 +19,7 @@
public ByteBuffer toByteBuffer() {
ByteBuffer obb = bb.duplicate();
- obb.flip();
+ ((Buffer)obb).flip();
return obb;
}
@@ -40,7 +41,7 @@
if ((newCap - minCap) < 0) {
newCap = minCap;
}
- obb.flip();
+ ((Buffer)obb).flip();
return bb = ByteBuffer.allocate(newCap)
.put(obb);
}
@@ -77,7 +78,7 @@
byte[] buffer = obb.array();
for (int size, position; obb.hasRemaining()
&& (size = in.read(buffer, position = obb.position(), obb.remaining())) > 0;) {
- obb.position(position + size);
+ ((Buffer)obb).position(position + size);
}
} while (!obb.hasRemaining());
}
--- bnd-5.1.1.REL/aQute.libg/src/aQute/lib/io/CharBufferReader.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/aQute.libg/src/aQute/lib/io/CharBufferReader.java 2021-10-18 08:09:03.356117231 +0200
@@ -1,13 +1,14 @@
package aQute.lib.io;
import java.io.Reader;
+import java.nio.Buffer;
import java.nio.CharBuffer;
public class CharBufferReader extends Reader {
private final CharBuffer cb;
public CharBufferReader(CharBuffer buffer) {
- buffer.mark();
+ ((Buffer)buffer).mark();
cb = buffer;
}
@@ -24,7 +25,7 @@
@Override
public void close() {
- cb.position(cb.limit());
+ ((Buffer)cb).position(cb.limit());
}
@Override
@@ -41,7 +42,7 @@
return 0L;
}
int skipped = Math.min((int) n, cb.remaining());
- cb.position(cb.position() + skipped);
+ ((Buffer)cb).position(cb.position() + skipped);
return skipped;
}
@@ -57,11 +58,11 @@
@Override
public void mark(int readAheadLimit) {
- cb.mark();
+ ((Buffer)cb).mark();
}
@Override
public void reset() {
- cb.reset();
+ ((Buffer)cb).reset();
}
}
--- bnd-5.1.1.REL/aQute.libg/src/aQute/lib/io/IO.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/aQute.libg/src/aQute/lib/io/IO.java 2021-10-18 08:32:23.545468242 +0200
@@ -25,6 +25,7 @@
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
import java.nio.CharBuffer;
import java.nio.channels.Channels;
@@ -218,11 +219,11 @@
try {
ByteBuffer bb = ByteBuffer.allocateDirect(BUFFER_SIZE);
while (in.read(bb) > 0) {
- bb.flip();
+ ((Buffer)bb).flip();
out.write(bb);
bb.compact();
}
- for (bb.flip(); bb.hasRemaining();) {
+ for (((Buffer)bb).flip(); bb.hasRemaining();) {
out.write(bb);
}
return out;
@@ -238,7 +239,7 @@
int offset = bb.arrayOffset();
for (int size, position; bb.hasRemaining()
&& (size = in.read(buffer, offset + (position = bb.position()), bb.remaining())) > 0;) {
- bb.position(position + size);
+ ((Buffer)bb).position(position + size);
}
} else {
int length = Math.min(bb.remaining(), BUFFER_SIZE);
@@ -275,7 +276,7 @@
bbout.write(bb);
} else if (bb.hasArray()) {
out.write(bb.array(), bb.arrayOffset() + bb.position(), bb.remaining());
- bb.position(bb.limit());
+ ((Buffer)bb).position(bb.limit());
} else {
int length = Math.min(bb.remaining(), BUFFER_SIZE);
byte[] buffer = new byte[length];
@@ -294,7 +295,7 @@
bbout.write(bb);
} else if (bb.hasArray()) {
out.write(bb.array(), bb.arrayOffset() + bb.position(), bb.remaining());
- bb.position(bb.limit());
+ ((Buffer)bb).position(bb.limit());
} else {
int length = Math.min(bb.remaining(), BUFFER_SIZE);
byte[] buffer = new byte[length];
@@ -339,7 +340,7 @@
try {
ByteBuffer bb = ByteBuffer.allocate(BUFFER_SIZE);
while (in.read(bb) > 0) {
- bb.flip();
+ ((Buffer)bb).flip();
md.update(bb);
bb.compact();
}
@@ -472,12 +473,12 @@
ByteBuffer bb = ByteBuffer.allocate(BUFFER_SIZE);
byte[] buffer = bb.array();
for (int size, position; (size = in.read(buffer, position = bb.position(), bb.remaining())) > 0;) {
- bb.position(position + size);
- bb.flip();
+ ((Buffer)bb).position(position + size);
+ ((Buffer)bb).flip();
out.write(bb);
bb.compact();
}
- for (bb.flip(); bb.hasRemaining();) {
+ for (((Buffer)bb).flip(); bb.hasRemaining();) {
out.write(bb);
}
return out;
@@ -490,7 +491,7 @@
try {
ByteBuffer bb = ByteBuffer.allocate(BUFFER_SIZE);
byte[] buffer = bb.array();
- for (; in.read(bb) > 0; bb.clear()) {
+ for (; in.read(bb) > 0; ((Buffer)bb).clear()) {
out.write(buffer, 0, bb.position());
}
return out;
@@ -515,7 +516,7 @@
}
ByteBuffer bb = ByteBuffer.allocate((int) size);
while (in.read(bb) > 0) {}
- bb.flip();
+ ((Buffer)bb).flip();
return bb;
}
}
--- bnd-5.1.1.REL/aQute.libg/src/aQute/lib/utf8properties/UTF8Properties.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/aQute.libg/src/aQute/lib/utf8properties/UTF8Properties.java 2021-10-18 08:04:01.910076369 +0200
@@ -10,6 +10,7 @@
import java.io.Reader;
import java.io.StringWriter;
import java.io.Writer;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
import java.nio.CharBuffer;
import java.nio.charset.CharsetDecoder;
@@ -120,11 +121,11 @@
}
decoder.reset();
if (success) {
- return cb.flip()
+ return ((Buffer)cb).flip()
.toString();
}
- bb.rewind();
- cb.clear();
+ ((Buffer)bb).rewind();
+ ((Buffer)cb).clear();
}
return new String(buffer); // default decoding
}
--- bnd-5.1.1.REL/aQute.libg/test/aQute/lib/io/IOTest.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/aQute.libg/test/aQute/lib/io/IOTest.java 2021-10-18 07:51:55.341414987 +0200
@@ -13,6 +13,7 @@
import java.io.InputStream;
import java.io.Writer;
import java.lang.reflect.Method;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
import java.nio.file.Files;
import java.nio.file.Path;
@@ -135,7 +136,7 @@
assertEquals((int) src.length(), bb.position());
assertEquals(bb.capacity(), bb.position());
assertFalse(bb.hasRemaining());
- bb.flip();
+ ((Buffer)bb).flip();
int length = bb.remaining();
for (int i = 0; i < length; i++) {
assertEquals(file[i], bb.get());
@@ -149,7 +150,7 @@
ByteBuffer bb = IO.copy(IO.stream(src), ByteBuffer.allocate((int) src.length() - 8));
assertEquals(bb.capacity(), bb.position());
assertFalse(bb.hasRemaining());
- bb.flip();
+ ((Buffer)bb).flip();
int length = bb.remaining();
for (int i = 0; i < length; i++) {
assertEquals(file[i], bb.get());
@@ -163,7 +164,7 @@
ByteBuffer bb = IO.copy(IO.stream(src), ByteBuffer.allocate((int) src.length() + 20));
assertEquals((int) src.length(), bb.position());
assertTrue(bb.hasRemaining());
- bb.flip();
+ ((Buffer)bb).flip();
int length = bb.remaining();
for (int i = 0; i < length; i++) {
assertEquals(file[i], bb.get());
@@ -178,7 +179,7 @@
assertEquals((int) src.length(), bb.position());
assertEquals(bb.capacity(), bb.position());
assertFalse(bb.hasRemaining());
- bb.flip();
+ ((Buffer)bb).flip();
int length = bb.remaining();
for (int i = 0; i < length; i++) {
assertEquals(file[i], bb.get());
@@ -192,7 +193,7 @@
ByteBuffer bb = IO.copy(IO.stream(src), ByteBuffer.allocateDirect((int) src.length() - 8));
assertEquals(bb.capacity(), bb.position());
assertFalse(bb.hasRemaining());
- bb.flip();
+ ((Buffer)bb).flip();
int length = bb.remaining();
for (int i = 0; i < length; i++) {
assertEquals(file[i], bb.get());
@@ -206,7 +207,7 @@
ByteBuffer bb = IO.copy(IO.stream(src), ByteBuffer.allocateDirect((int) src.length() + 20));
assertEquals((int) src.length(), bb.position());
assertTrue(bb.hasRemaining());
- bb.flip();
+ ((Buffer)bb).flip();
int length = bb.remaining();
for (int i = 0; i < length; i++) {
assertEquals(file[i], bb.get());
@@ -220,7 +221,7 @@
ByteBuffer bb = IO.copy(IO.stream(src), ByteBuffer.allocateDirect(IOConstants.PAGE_SIZE * 32));
assertEquals((int) src.length(), bb.position());
assertTrue(bb.hasRemaining());
- bb.flip();
+ ((Buffer)bb).flip();
int length = bb.remaining();
for (int i = 0; i < length; i++) {
assertEquals(file[i], bb.get());
@@ -243,7 +244,7 @@
for (int i = 1; i < length; i++) {
assertEquals(file[i - 1], wrapped[i]);
}
- slice.flip();
+ ((Buffer)slice).flip();
length = slice.remaining();
for (int i = 0; i < length; i++) {
assertEquals(file[i], slice.get());
--- bnd-5.1.1.REL/biz.aQute.bndlib/src/aQute/bnd/classfile/CodeAttribute.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/biz.aQute.bndlib/src/aQute/bnd/classfile/CodeAttribute.java 2021-10-18 07:43:59.698276751 +0200
@@ -3,6 +3,7 @@
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
import java.util.Arrays;
@@ -58,7 +59,7 @@
out.writeShort(max_stack);
out.writeShort(max_locals);
ByteBuffer duplicate = code.duplicate();
- duplicate.rewind();
+ ((Buffer)duplicate).rewind();
int code_length = duplicate.limit();
out.writeInt(code_length);
IO.copy(duplicate, out);
--- bnd-5.1.1.REL/biz.aQute.bndlib/src/aQute/bnd/classfile/SourceDebugExtensionAttribute.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/biz.aQute.bndlib/src/aQute/bnd/classfile/SourceDebugExtensionAttribute.java 2021-10-18 07:46:56.515450094 +0200
@@ -3,6 +3,7 @@
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
import aQute.lib.io.IO;
@@ -40,7 +41,7 @@
out.writeShort(attribute_name_index);
out.writeInt(attribute_length);
ByteBuffer duplicate = debug_extension.duplicate();
- duplicate.rewind();
+ ((Buffer)duplicate).rewind();
IO.copy(duplicate, out);
}
--- bnd-5.1.1.REL/biz.aQute.bndlib/src/aQute/bnd/classfile/UnrecognizedAttribute.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/biz.aQute.bndlib/src/aQute/bnd/classfile/UnrecognizedAttribute.java 2021-10-18 08:14:58.714562788 +0200
@@ -3,6 +3,7 @@
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
import aQute.lib.io.IO;
@@ -41,7 +42,7 @@
out.writeShort(attribute_name_index);
out.writeInt(attribute_length);
ByteBuffer duplicate = value.duplicate();
- duplicate.rewind();
+ ((Buffer)duplicate).rewind();
IO.copy(duplicate, out);
}
--- bnd-5.1.1.REL/biz.aQute.bndlib/src/aQute/bnd/osgi/Clazz.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/biz.aQute.bndlib/src/aQute/bnd/osgi/Clazz.java 2021-10-18 07:36:37.475442949 +0200
@@ -23,6 +23,7 @@
import java.io.InputStream;
import java.lang.annotation.RetentionPolicy;
import java.lang.reflect.Modifier;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
import java.util.ArrayDeque;
import java.util.Arrays;
@@ -1201,7 +1202,7 @@
private void processCode(CodeAttribute attribute, ElementType elementType) {
ByteBuffer code = attribute.code.duplicate();
- code.rewind();
+ ((Buffer)code).rewind();
int lastReference = -1;
while (code.hasRemaining()) {
int instruction = Byte.toUnsignedInt(code.get());
@@ -1248,7 +1249,7 @@
}
case OpCodes.wide : {
int opcode = Byte.toUnsignedInt(code.get());
- code.position(code.position() + (opcode == OpCodes.iinc ? 4 : 2));
+ ((Buffer)code).position(code.position() + (opcode == OpCodes.iinc ? 4 : 2));
lastReference = -1;
break;
}
@@ -1256,12 +1257,12 @@
// Skip to place divisible by 4
int rem = code.position() % 4;
if (rem != 0) {
- code.position(code.position() + 4 - rem);
+ ((Buffer)code).position(code.position() + 4 - rem);
}
int deflt = code.getInt();
int low = code.getInt();
int high = code.getInt();
- code.position(code.position() + (high - low + 1) * 4);
+ ((Buffer)code).position(code.position() + (high - low + 1) * 4);
lastReference = -1;
break;
}
@@ -1269,16 +1270,16 @@
// Skip to place divisible by 4
int rem = code.position() % 4;
if (rem != 0) {
- code.position(code.position() + 4 - rem);
+ ((Buffer)code).position(code.position() + 4 - rem);
}
int deflt = code.getInt();
int npairs = code.getInt();
- code.position(code.position() + npairs * 8);
+ ((Buffer)code).position(code.position() + npairs * 8);
lastReference = -1;
break;
}
default : {
- code.position(code.position() + OpCodes.OFFSETS[instruction]);
+ ((Buffer)code).position(code.position() + OpCodes.OFFSETS[instruction]);
lastReference = -1;
break;
}
@@ -1292,7 +1293,7 @@
private void visitCode(ClassDataCollector cd, CodeAttribute attribute, ElementType elementType) throws Exception {
ByteBuffer code = attribute.code.duplicate();
- code.rewind();
+ ((Buffer)code).rewind();
while (code.hasRemaining()) {
int instruction = Byte.toUnsignedInt(code.get());
switch (instruction) {
@@ -1309,7 +1310,7 @@
case OpCodes.invokeinterface : {
int method_ref_index = Short.toUnsignedInt(code.getShort());
visitReferenceMethod(cd, method_ref_index);
- code.position(code.position() + 2);
+ ((Buffer)code).position(code.position() + 2);
break;
}
case OpCodes.invokestatic : {
@@ -1319,34 +1320,34 @@
}
case OpCodes.wide : {
int opcode = Byte.toUnsignedInt(code.get());
- code.position(code.position() + (opcode == OpCodes.iinc ? 4 : 2));
+ ((Buffer)code).position(code.position() + (opcode == OpCodes.iinc ? 4 : 2));
break;
}
case OpCodes.tableswitch : {
// Skip to place divisible by 4
int rem = code.position() % 4;
if (rem != 0) {
- code.position(code.position() + 4 - rem);
+ ((Buffer)code).position(code.position() + 4 - rem);
}
int deflt = code.getInt();
int low = code.getInt();
int high = code.getInt();
- code.position(code.position() + (high - low + 1) * 4);
+ ((Buffer)code).position(code.position() + (high - low + 1) * 4);
break;
}
case OpCodes.lookupswitch : {
// Skip to place divisible by 4
int rem = code.position() % 4;
if (rem != 0) {
- code.position(code.position() + 4 - rem);
+ ((Buffer)code).position(code.position() + 4 - rem);
}
int deflt = code.getInt();
int npairs = code.getInt();
- code.position(code.position() + npairs * 8);
+ ((Buffer)code).position(code.position() + npairs * 8);
break;
}
default : {
- code.position(code.position() + OpCodes.OFFSETS[instruction]);
+ ((Buffer)code).position(code.position() + OpCodes.OFFSETS[instruction]);
break;
}
}
--- bnd-5.1.1.REL/biz.aQute.bndlib/src/aQute/bnd/osgi/Jar.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/biz.aQute.bndlib/src/aQute/bnd/osgi/Jar.java 2021-10-18 07:40:21.304848650 +0200
@@ -13,6 +13,7 @@
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URI;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
import java.nio.file.FileVisitOption;
import java.nio.file.FileVisitResult;
@@ -1106,7 +1107,7 @@
if ((bb != null) && bb.hasArray()) {
for (MessageDigest d : digests) {
d.update(bb);
- bb.flip();
+ ((Buffer)bb).flip();
}
} else {
try (InputStream in = r.openInputStream()) {
--- bnd-5.1.1.REL/biz.aQute.bndlib/src/aQute/bnd/osgi/URLResource.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/biz.aQute.bndlib/src/aQute/bnd/osgi/URLResource.java 2021-10-18 07:39:12.944410885 +0200
@@ -7,6 +7,7 @@
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
import java.util.jar.JarFile;
@@ -48,7 +49,7 @@
return buffer = ByteBuffer.wrap(IO.read(in));
}
ByteBuffer bb = IO.copy(in, ByteBuffer.allocate(size));
- bb.flip();
+ ((Buffer)bb).flip();
return buffer = bb;
}
--- bnd-5.1.1.REL/biz.aQute.bndlib/src/aQute/bnd/osgi/ZipResource.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/biz.aQute.bndlib/src/aQute/bnd/osgi/ZipResource.java 2021-10-18 07:37:53.975919239 +0200
@@ -6,6 +6,7 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
import java.nio.file.Path;
import java.util.zip.ZipEntry;
@@ -64,7 +65,7 @@
return buffer = ByteBuffer.wrap(IO.read(zip.getInputStream(entry)));
}
ByteBuffer bb = IO.copy(zip.getInputStream(entry), ByteBuffer.allocate((int) size));
- bb.flip();
+ ((Buffer)bb).flip();
return buffer = bb;
}
--- bnd-5.1.1.REL/biz.aQute.repository/src/aQute/maven/provider/POM.java 2020-06-16 23:03:04.000000000 +0200
+++ bnd-5.1.1.REL/biz.aQute.repository/src/aQute/maven/provider/POM.java 2021-10-18 07:49:09.756330007 +0200
@@ -3,6 +3,7 @@
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
+import java.nio.Buffer;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
import java.nio.charset.StandardCharsets;
@@ -147,7 +148,7 @@
try (FileChannel in = IO.readChannel(file.toPath())) {
ByteBuffer bb = ByteBuffer.allocate((int) in.size());
while (in.read(bb) > 0) {}
- bb.flip();
+ ((Buffer)bb).flip();
return processEntities(bb);
}
}

View File

@ -1,3 +1,35 @@
-------------------------------------------------------------------
Mon Sep 18 05:23:18 UTC 2023 - Fridrich Strba <fstrba@suse.com>
- Update to aqute-bnd 6.3.1
* https://github.com/bndtools/bnd/wiki/Changes-in-6.3.1
* https://github.com/bndtools/bnd/wiki/Changes-in-6.3.0
* https://github.com/bndtools/bnd/wiki/Changes-in-6.2.0
* https://github.com/bndtools/bnd/wiki/Changes-in-6.1.0
* https://github.com/bndtools/bnd/wiki/Changes-in-6.0.0
* https://github.com/bndtools/bnd/wiki/Changes-in-5.3.0
- Modified patches:
* 0001-Disable-removed-commands.patch
* 0003-Port-to-OSGI-7.0.0.patch -> 0002-Port-to-OSGI-7.0.0.patch
* 0004-maven-plugin-dependencies.patch ->
0003-Remove-unmet-dependencies.patch
* reproducible-timestamps.patch
* reproducible-packages-list.patch
+ rediff to changed context
- Removed patch:
* aqute-bnd-java8compat.patch
+ handled by release=8 in ant javac task
-------------------------------------------------------------------
Sat Sep 16 10:08:36 UTC 2023 - Fridrich Strba <fstrba@suse.com>
- Added patches:
* reproducible-timestamps.patch
+ set "-reproducible" option to true by default
+ use SOURCE_DATE_EPOCH for timestamp if available
* reproducible-packages-list.patch
+ make the order of packages to import/export deterministic
-------------------------------------------------------------------
Thu May 4 14:25:12 UTC 2023 - Dominique Leuenberger <dimstar@opensuse.org>

View File

@ -17,7 +17,7 @@
Name: aqute-bnd
Version: 5.2.0
Version: 6.3.1
Release: 0
Summary: BND Tool
# Part of jpm is under BSD, but jpm is not included in binary RPM
@ -26,27 +26,29 @@ Group: Development/Libraries/Java
URL: https://bnd.bndtools.org/
Source0: bnd-%{version}.tar.xz
Source1: bnd-%{version}-build_xml.tar.xz
Source2: https://repo1.maven.org/maven2/biz/aQute/bnd/biz.aQute.bnd.ant/%{version}/biz.aQute.bnd.ant-%{version}.pom
Source2: https://repo1.maven.org/maven2/biz/aQute/bnd/biz.aQute.bnd.exporters/%{version}/biz.aQute.bnd.exporters-%{version}.pom
Source3: https://repo1.maven.org/maven2/biz/aQute/bnd/aQute.libg/%{version}/aQute.libg-%{version}.pom
Source4: https://repo1.maven.org/maven2/biz/aQute/bnd/biz.aQute.bnd/%{version}/biz.aQute.bnd-%{version}.pom
Source5: https://repo1.maven.org/maven2/biz/aQute/bnd/biz.aQute.bndlib/%{version}/biz.aQute.bndlib-%{version}.pom
Source6: https://repo1.maven.org/maven2/biz/aQute/bnd/biz.aQute.bnd.annotation/%{version}/biz.aQute.bnd.annotation-%{version}.pom
Source7: https://repo1.maven.org/maven2/biz/aQute/bnd/biz.aQute.bnd.exporters/%{version}/biz.aQute.bnd.exporters-%{version}.pom
Patch0: 0001-Disable-removed-commands.patch
Patch2: 0003-Port-to-OSGI-7.0.0.patch
Patch3: aqute-bnd-java8compat.patch
Patch4: 0004-maven-plugin-dependencies.patch
Source7: https://repo1.maven.org/maven2/biz/aQute/bnd/biz.aQute.bnd.ant/%{version}/biz.aQute.bnd.ant-%{version}.pom
Source8: https://repo1.maven.org/maven2/biz/aQute/bnd/biz.aQute.bnd.util/%{version}/biz.aQute.bnd.util-%{version}.pom
Patch1: 0001-Disable-removed-commands.patch
Patch2: 0002-Port-to-OSGI-7.0.0.patch
Patch3: 0003-Remove-unmet-dependencies.patch
Patch4: reproducible-timestamps.patch
Patch5: reproducible-packages-list.patch
BuildRequires: ant
BuildRequires: fdupes
BuildRequires: javapackages-local
BuildRequires: javapackages-local >= 6
BuildRequires: jline
BuildRequires: osgi-annotation
BuildRequires: osgi-compendium
BuildRequires: osgi-core
BuildRequires: slf4j
Requires: %{name}lib = %{version}-%{release}
# Explicit javapackages-tools requires since bnd script uses
# /usr/share/java-utils/java-functions
Requires: %{name}lib = %{version}-%{release}
Requires: javapackages-tools
BuildArch: noarch
@ -66,13 +68,6 @@ The tool is capable of acting as:
%package -n aqute-bndlib
Summary: BND library
Group: Development/Libraries/Java
Requires: mvn(biz.aQute.bnd:aQute.libg)
Requires: mvn(biz.aQute.bnd:biz.aQute.bnd.annotation)
Requires: mvn(org.osgi:osgi.annotation)
Requires: mvn(org.osgi:osgi.cmpn)
Requires: mvn(org.osgi:osgi.core)
Requires: mvn(org.slf4j:slf4j-api)
Requires: mvn(org.slf4j:slf4j-simple)
%description -n aqute-bndlib
%{summary}.
@ -91,89 +86,102 @@ mkdir -p lib
build-jar-repository -s lib \
slf4j/api slf4j/simple osgi-annotation osgi-core osgi-compendium ant jline
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
# the commands pull in more dependencies than we want (felix-resolver, jetty, jtwig, javapackager)
rm biz.aQute.bnd/src/aQute/bnd/main/{RemoteCommand,ResolveCommand,ExportReportCommand,MbrCommand,ReporterLogger}.java
# the commands pull in more dependencies than we want (felix-resolver, jetty)
rm biz.aQute.bnd/src/aQute/bnd/main/{ExportReportCommand,MbrCommand,RemoteCommand,ReporterLogger,ResolveCommand,Shell}.java
sed -i 's|${Bundle-Version}|%{version}|' biz.aQute.bndlib/src/aQute/bnd/osgi/bnd.info
# libg
pushd aQute.libg
cp -p %{SOURCE3} pom.xml
%pom_remove_dep :::provided::
%pom_remove_dep -r org.osgi:org.osgi.util.function
%pom_remove_dep -r org.osgi:org.osgi.util.promise
%pom_add_dep org.osgi:osgi.cmpn
%pom_add_dep org.slf4j:slf4j-api
%pom_add_dep org.osgi:osgi.cmpn:7
%pom_remove_dep org.osgi:org.osgi.dto
%pom_remove_dep org.osgi:org.osgi.framework
%pom_remove_dep org.osgi:org.osgi.resource
%pom_remove_dep org.osgi:org.osgi.util.function
%pom_remove_dep org.osgi:org.osgi.util.promise
%pom_xpath_remove pom:dependency/pom:scope
popd
# bndlib.annotations
# bnd.annotation
pushd biz.aQute.bnd.annotation
cp -p %{SOURCE6} pom.xml
%pom_remove_dep -r org.osgi:org.osgi.namespace.extender
%pom_remove_dep -r org.osgi:org.osgi.namespace.service
%pom_remove_dep -r org.osgi:org.osgi.resource
%pom_remove_dep -r org.osgi:org.osgi.service.serviceloader
%pom_add_dep org.osgi:osgi.core:7
%pom_add_dep org.osgi:osgi.cmpn:7
%pom_remove_dep org.osgi:org.osgi.namespace.extender
%pom_remove_dep org.osgi:org.osgi.namespace.service
%pom_remove_dep org.osgi:org.osgi.resource
%pom_remove_dep org.osgi:org.osgi.service.serviceloader
%pom_xpath_remove pom:dependency/pom:scope
popd
# bndlib
pushd biz.aQute.bndlib
cp -p %{SOURCE5} pom.xml
%pom_remove_dep :::provided::
%pom_add_dep org.osgi:osgi.cmpn
%pom_add_dep org.osgi:osgi.cmpn:7
%pom_add_dep biz.aQute.bnd:aQute.libg:%{version}
%pom_add_dep biz.aQute.bnd:biz.aQute.bnd.annotation:%{version}
%pom_remove_dep org.osgi:org.osgi.dto
%pom_remove_dep org.osgi:org.osgi.framework
%pom_remove_dep org.osgi:org.osgi.namespace.contract
%pom_remove_dep org.osgi:org.osgi.namespace.extender
%pom_remove_dep org.osgi:org.osgi.namespace.implementation
%pom_remove_dep org.osgi:org.osgi.namespace.service
%pom_remove_dep org.osgi:org.osgi.resource
%pom_remove_dep org.osgi:org.osgi.service.log
%pom_remove_dep org.osgi:org.osgi.service.repository
%pom_remove_dep org.osgi:org.osgi.util.function
%pom_remove_dep org.osgi:org.osgi.util.promise
%pom_remove_dep org.osgi:org.osgi.util.tracker
%pom_xpath_remove pom:dependency/pom:scope
popd
# bnd.ant
pushd biz.aQute.bnd.ant
cp -p %{SOURCE7} pom.xml
%pom_xpath_remove pom:dependency/pom:scope
popd
# bnd.exporters
pushd biz.aQute.bnd.exporters
cp -p %{SOURCE7} pom.xml
%pom_remove_dep :::provided::
%pom_add_dep biz.aQute.bnd:biz.aQute.bndlib:%{version}
%pom_add_dep biz.aQute.bnd:biz.aQute.bnd.annotation:%{version}
cp -p %{SOURCE2} pom.xml
%pom_remove_dep org.osgi:org.osgi.service.subsystem
%pom_xpath_remove pom:dependency/pom:scope
popd
# bnd
pushd biz.aQute.bnd
cp -p %{SOURCE4} pom.xml
%pom_remove_dep :::provided::
%pom_add_dep biz.aQute.bnd:biz.aQute.bndlib:%{version}
%pom_remove_dep :biz.aQute.resolve
%pom_remove_dep :biz.aQute.repository
%pom_remove_dep :biz.aQute.bnd.reporter
%pom_remove_dep :biz.aQute.remote.api
%pom_remove_dep :snakeyaml
%pom_remove_dep :jline
%pom_remove_dep org.osgi:org.osgi.service.coordinator
%pom_remove_dep org.osgi:org.osgi.service.resolver
%pom_remove_dep org.osgi:org.osgi.dto
%pom_remove_dep org.osgi:org.osgi.framework
%pom_remove_dep org.osgi:org.osgi.resource
%pom_remove_dep org.osgi:org.osgi.service.log
%pom_remove_dep org.osgi:org.osgi.service.repository
%pom_remove_dep org.osgi:org.osgi.util.function
%pom_remove_dep org.osgi:org.osgi.util.promise
%pom_remove_dep org.osgi:org.osgi.util.tracker
%pom_xpath_remove pom:dependency/pom:scope
popd
# bnd.util
pushd biz.aQute.bnd.util
cp -p %{SOURCE8} pom.xml
%pom_add_dep biz.aQute.bnd:aQute.libg:%{version}
%pom_add_dep biz.aQute.bnd:biz.aQute.bnd.annotation:%{version}
%pom_add_dep biz.aQute.bnd:biz.aQute.bnd.ant:%{version}
%pom_add_dep org.osgi:osgi.annotation
%pom_add_dep org.osgi:osgi.core
%pom_add_dep org.osgi:osgi.cmpn
%pom_add_dep org.slf4j:slf4j-api
%pom_add_dep org.slf4j:slf4j-simple::runtime
popd
# bndlib.ant
pushd biz.aQute.bnd.ant
cp -p %{SOURCE2} pom.xml
%pom_remove_dep :::provided::
%pom_add_dep org.osgi:osgi.annotation
popd
# maven-plugins
pushd maven
#rm bnd-shared-maven-lib/src/main/java/aQute/bnd/maven/lib/resolve/DependencyResolver.java
%pom_remove_dep -r :biz.aQute.resolve
%pom_remove_dep -r :biz.aQute.repository
# Unavailable reactor dependency - org.osgi.impl.bundle.repoindex.cli
%pom_disable_module bnd-indexer-maven-plugin
# Requires unbuilt parts of bnd
%pom_disable_module bnd-export-maven-plugin
%pom_disable_module bnd-resolver-maven-plugin
%pom_disable_module bnd-testing-maven-plugin
# Integration tests require Internet access
%pom_remove_plugin -r :maven-invoker-plugin
%pom_remove_plugin -r :maven-javadoc-plugin
%pom_remove_plugin -r :flatten-maven-plugin
%pom_xpath_remove pom:dependency/pom:scope
popd
%build
@ -184,6 +192,7 @@ popd
# jars
install -dm 0755 %{buildroot}%{_javadir}/%{name}
install -pm 0644 biz.aQute.bnd.exporters/target/biz.aQute.bnd.exporters-%{version}.jar %{buildroot}%{_javadir}/%{name}/biz.aQute.bnd.exporters.jar
install -pm 0644 biz.aQute.bnd.util/target/biz.aQute.bnd.util-%{version}.jar %{buildroot}%{_javadir}/%{name}/biz.aQute.bnd.util.jar
install -pm 0644 biz.aQute.bnd.annotation/target/biz.aQute.bnd.annotation-%{version}.jar %{buildroot}%{_javadir}/%{name}/biz.aQute.bnd.annotation.jar
install -pm 0644 aQute.libg/target/aQute.libg-%{version}.jar %{buildroot}%{_javadir}/%{name}/aQute.libg.jar
install -pm 0644 biz.aQute.bndlib/target/biz.aQute.bndlib-%{version}.jar %{buildroot}%{_javadir}/%{name}/biz.aQute.bndlib.jar
@ -191,21 +200,24 @@ install -pm 0644 biz.aQute.bnd/target/biz.aQute.bnd-%{version}.jar %{buildroot}%
install -pm 0644 biz.aQute.bnd.ant/target/biz.aQute.bnd.ant-%{version}.jar %{buildroot}%{_javadir}/%{name}/biz.aQute.bnd.ant.jar
# poms
install -dm 0755 %{buildroot}%{_mavenpomdir}/%{name}
install -pm 0644 biz.aQute.bnd.exporters/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/biz.aQute.bnd.exporters.pom
%{mvn_install_pom} biz.aQute.bnd.exporters/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/biz.aQute.bnd.exporters.pom
%add_maven_depmap %{name}/biz.aQute.bnd.exporters.pom %{name}/biz.aQute.bnd.exporters.jar -f bndlib
install -pm 0644 biz.aQute.bnd.annotation/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/biz.aQute.bnd.annotation.pom
%{mvn_install_pom} biz.aQute.bnd.util/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/biz.aQute.bnd.util.pom
%add_maven_depmap %{name}/biz.aQute.bnd.util.pom %{name}/biz.aQute.bnd.util.jar -f bndlib
%{mvn_install_pom} biz.aQute.bnd.annotation/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/biz.aQute.bnd.annotation.pom
%add_maven_depmap %{name}/biz.aQute.bnd.annotation.pom %{name}/biz.aQute.bnd.annotation.jar -f bndlib
install -pm 0644 aQute.libg/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/aQute.libg.pom
%{mvn_install_pom} aQute.libg/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/aQute.libg.pom
%add_maven_depmap %{name}/aQute.libg.pom %{name}/aQute.libg.jar -f bndlib
install -pm 0644 biz.aQute.bndlib/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/biz.aQute.bndlib.pom
%{mvn_install_pom} biz.aQute.bndlib/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/biz.aQute.bndlib.pom
%add_maven_depmap %{name}/biz.aQute.bndlib.pom %{name}/biz.aQute.bndlib.jar -f bndlib -a biz.aQute.bnd:bndlib,biz.aQute:bndlib
install -pm 0644 biz.aQute.bnd/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/biz.aQute.bnd.pom
%{mvn_install_pom} biz.aQute.bnd/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/biz.aQute.bnd.pom
%add_maven_depmap %{name}/biz.aQute.bnd.pom %{name}/biz.aQute.bnd.jar -a biz.aQute.bnd:bnd,biz.aQute:bnd
install -pm 0644 biz.aQute.bnd.ant/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/biz.aQute.bnd.ant.pom
%{mvn_install_pom} biz.aQute.bnd.ant/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/biz.aQute.bnd.ant.pom
%add_maven_depmap %{name}/biz.aQute.bnd.ant.pom %{name}/biz.aQute.bnd.ant.jar
# javadoc
install -dm 0755 %{buildroot}%{_javadocdir}/%{name}
mv biz.aQute.bnd.exporters/target/site/apidocs %{buildroot}%{_javadocdir}/%{name}/biz.aQute.bnd.exporters
mv biz.aQute.bnd.util/target/site/apidocs %{buildroot}%{_javadocdir}/%{name}/biz.aQute.bnd.util
mv biz.aQute.bnd.annotation/target/site/apidocs %{buildroot}%{_javadocdir}/%{name}/biz.aQute.bnd.annotation
mv aQute.libg/target/site/apidocs %{buildroot}%{_javadocdir}/%{name}/aQute.libg
mv biz.aQute.bndlib/target/site/apidocs %{buildroot}%{_javadocdir}/%{name}/biz.aQute.bndlib

View File

@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bnd</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<description>This command line utility is the Swiss army knife of OSGi. It provides you with a breadth of tools to understand and manage OSGi based systems. This project basically uses bndlib.</description>
<name>biz.aQute.bnd</name>
<url>https://bnd.bndtools.org/</url>
@ -23,7 +23,7 @@
<url>https://github.com/bndtools/bnd</url>
<connection>scm:git:https://github.com/bndtools/bnd.git</connection>
<developerConnection>scm:git:git@github.com:bndtools/bnd.git</developerConnection>
<tag>5.2.0.REL</tag>
<tag>6.3.1</tag>
</scm>
<developers>
<developer>
@ -41,7 +41,7 @@
<developer>
<id>bjhargrave</id>
<name>BJ Hargrave</name>
<email>bj@bjhargrave.com</email>
<email>bj@hargrave.dev</email>
<url>https://github.com/bjhargrave</url>
<organization>IBM</organization>
<organizationUrl>https://developer.ibm.com</organizationUrl>
@ -66,8 +66,32 @@
<dependencies>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.core</artifactId>
<version>6.0.0</version>
<artifactId>org.osgi.dto</artifactId>
<version>1.0.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.resource</artifactId>
<version>1.0.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.framework</artifactId>
<version>1.8.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.util.tracker</artifactId>
<version>1.5.4</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.service.coordinator</artifactId>
<version>1.0.2</version>
<scope>provided</scope>
</dependency>
<dependency>
@ -82,46 +106,70 @@
<version>1.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.service.resolver</artifactId>
<version>1.1.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.util.function</artifactId>
<version>1.2.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.util.promise</artifactId>
<version>1.2.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bnd.util</artifactId>
<version>6.3.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bndlib</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bnd.ant</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.resolve</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.repository</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bnd.exporters</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bnd.reporter</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.remote.api</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<scope>provided</scope>
</dependency>
<dependency>

View File

@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bnd.annotation</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<description>bnd Annotations Library</description>
<name>biz.aQute.bnd.annotation</name>
<url>https://bnd.bndtools.org/</url>
@ -23,7 +23,7 @@
<url>https://github.com/bndtools/bnd</url>
<connection>scm:git:https://github.com/bndtools/bnd.git</connection>
<developerConnection>scm:git:git@github.com:bndtools/bnd.git</developerConnection>
<tag>5.2.0.REL</tag>
<tag>6.3.1</tag>
</scm>
<developers>
<developer>
@ -41,7 +41,7 @@
<developer>
<id>bjhargrave</id>
<name>BJ Hargrave</name>
<email>bj@bjhargrave.com</email>
<email>bj@hargrave.dev</email>
<url>https://github.com/bjhargrave</url>
<organization>IBM</organization>
<organizationUrl>https://developer.ibm.com</organizationUrl>
@ -67,20 +67,20 @@
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.annotation</artifactId>
<version>7.0.0</version>
<scope>compile</scope>
<version>8.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.namespace.extender</artifactId>
<version>1.0.1</version>
<scope>compile</scope>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.namespace.service</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>

View File

@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bnd.ant</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<description>Bnd Ant Tasks</description>
<name>biz.aQute.bnd.ant</name>
<url>https://bnd.bndtools.org/</url>
@ -23,7 +23,7 @@
<url>https://github.com/bndtools/bnd</url>
<connection>scm:git:https://github.com/bndtools/bnd.git</connection>
<developerConnection>scm:git:git@github.com:bndtools/bnd.git</developerConnection>
<tag>5.2.0.REL</tag>
<tag>6.3.1</tag>
</scm>
<developers>
<developer>
@ -41,7 +41,7 @@
<developer>
<id>bjhargrave</id>
<name>BJ Hargrave</name>
<email>bj@bjhargrave.com</email>
<email>bj@hargrave.dev</email>
<url>https://github.com/bjhargrave</url>
<organization>IBM</organization>
<organizationUrl>https://developer.ibm.com</organizationUrl>
@ -67,13 +67,19 @@
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.annotation</artifactId>
<version>7.0.0</version>
<version>8.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bnd.util</artifactId>
<version>6.3.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bndlib</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<scope>compile</scope>
</dependency>
<dependency>
@ -85,7 +91,7 @@
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
<version>1.10.8</version>
<version>1.10.12</version>
<scope>compile</scope>
</dependency>
</dependencies>

View File

@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bnd.exporters</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<description>biz.aQute.bnd.exporters</description>
<name>biz.aQute.bnd.exporters</name>
<url>https://bnd.bndtools.org/</url>
@ -23,7 +23,7 @@
<url>https://github.com/bndtools/bnd</url>
<connection>scm:git:https://github.com/bndtools/bnd.git</connection>
<developerConnection>scm:git:git@github.com:bndtools/bnd.git</developerConnection>
<tag>5.2.0.REL</tag>
<tag>6.3.1</tag>
</scm>
<developers>
<developer>
@ -41,7 +41,7 @@
<developer>
<id>bjhargrave</id>
<name>BJ Hargrave</name>
<email>bj@bjhargrave.com</email>
<email>bj@hargrave.dev</email>
<url>https://github.com/bjhargrave</url>
<organization>IBM</organization>
<organizationUrl>https://developer.ibm.com</organizationUrl>
@ -76,10 +76,16 @@
<version>1.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bnd.util</artifactId>
<version>6.3.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bndlib</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<scope>compile</scope>
</dependency>
<dependency>

View File

@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bnd.util</artifactId>
<version>6.3.1</version>
<description>Util classes</description>
<name>biz.aQute.bnd.util</name>
<url>https://bnd.bndtools.org/</url>
<organization>
<name>Bndtools</name>
<url>https://bndtools.org/</url>
</organization>
<licenses>
<license>
<name>(Apache-2.0 OR EPL-2.0)</name>
<url>https://opensource.org/licenses/Apache-2.0,https://opensource.org/licenses/EPL-2.0</url>
<distribution>repo</distribution>
<comments>This program and the accompanying materials are made available under the terms of the Apache License, Version 2.0, or the Eclipse Public License 2.0.</comments>
</license>
</licenses>
<scm>
<url>https://github.com/bndtools/bnd</url>
<connection>scm:git:https://github.com/bndtools/bnd.git</connection>
<developerConnection>scm:git:git@github.com:bndtools/bnd.git</developerConnection>
<tag>6.3.1</tag>
</scm>
<developers>
<developer>
<id>pkriens</id>
<email>Peter.Kriens@aQute.biz</email>
<name>Peter Kriens</name>
<organization>Bndtools</organization>
<organizationUrl>https://github.com/bndtools</organizationUrl>
<roles>
<role>architect</role>
<role>developer</role>
</roles>
<timezone>1</timezone>
</developer>
<developer>
<id>bjhargrave</id>
<name>BJ Hargrave</name>
<email>bj@hargrave.dev</email>
<url>https://github.com/bjhargrave</url>
<organization>IBM</organization>
<organizationUrl>https://developer.ibm.com</organizationUrl>
<roles>
<role>developer</role>
</roles>
<timezone>America/New_York</timezone>
</developer>
<developer>
<id>rotty3000</id>
<name>Ray Augé</name>
<email>raymond.auge@liferay.com</email>
<url>https://rotty3000.github.io</url>
<organization>Liferay Inc.</organization>
<organizationUrl>https://www.liferay.com</organizationUrl>
<roles>
<role>developer</role>
</roles>
<timezone>America/New_York</timezone>
</developer>
</developers>
<dependencies>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.annotation</artifactId>
<version>8.1.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>

View File

@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bndlib</artifactId>
<version>5.2.0</version>
<version>6.3.1</version>
<description>bndlib: A Swiss Army Knife for OSGi</description>
<name>biz.aQute.bndlib</name>
<url>https://bnd.bndtools.org/</url>
@ -23,7 +23,7 @@
<url>https://github.com/bndtools/bnd</url>
<connection>scm:git:https://github.com/bndtools/bnd.git</connection>
<developerConnection>scm:git:git@github.com:bndtools/bnd.git</developerConnection>
<tag>5.2.0.REL</tag>
<tag>6.3.1</tag>
</scm>
<developers>
<developer>
@ -41,7 +41,7 @@
<developer>
<id>bjhargrave</id>
<name>BJ Hargrave</name>
<email>bj@bjhargrave.com</email>
<email>bj@hargrave.dev</email>
<url>https://github.com/bjhargrave</url>
<organization>IBM</organization>
<organizationUrl>https://developer.ibm.com</organizationUrl>
@ -67,14 +67,32 @@
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.annotation</artifactId>
<version>7.0.0</version>
<version>8.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.core</artifactId>
<version>6.0.0</version>
<scope>provided</scope>
<artifactId>org.osgi.dto</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.resource</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.framework</artifactId>
<version>1.8.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.util.tracker</artifactId>
<version>1.5.4</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
@ -104,25 +122,31 @@
<groupId>org.osgi</groupId>
<artifactId>org.osgi.service.log</artifactId>
<version>1.3.0</version>
<scope>provided</scope>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.service.repository</artifactId>
<version>1.1.0</version>
<scope>provided</scope>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.util.function</artifactId>
<version>1.1.0</version>
<scope>provided</scope>
<version>1.2.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.util.promise</artifactId>
<version>1.1.1</version>
<scope>provided</scope>
<version>1.2.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bnd.util</artifactId>
<version>6.3.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7a0a00d5def0906575b207d0961ba7df9332a6ab3b9dc24dc73219a81e27dac0
size 2332

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:cbb03e40bdaa9886996ac0e0a4e847da1533d7f6ca67f647c1323951463a8bd5
size 3188412

BIN
bnd-6.3.1-build_xml.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

BIN
bnd-6.3.1.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -1,3 +1,35 @@
-------------------------------------------------------------------
Mon Sep 18 05:23:18 UTC 2023 - Fridrich Strba <fstrba@suse.com>
- Update to aqute-bnd 6.3.1
* https://github.com/bndtools/bnd/wiki/Changes-in-6.3.1
* https://github.com/bndtools/bnd/wiki/Changes-in-6.3.0
* https://github.com/bndtools/bnd/wiki/Changes-in-6.2.0
* https://github.com/bndtools/bnd/wiki/Changes-in-6.1.0
* https://github.com/bndtools/bnd/wiki/Changes-in-6.0.0
* https://github.com/bndtools/bnd/wiki/Changes-in-5.3.0
- Modified patches:
* 0001-Disable-removed-commands.patch
* 0003-Port-to-OSGI-7.0.0.patch -> 0002-Port-to-OSGI-7.0.0.patch
* 0004-maven-plugin-dependencies.patch ->
0003-Remove-unmet-dependencies.patch
* reproducible-timestamps.patch
* reproducible-packages-list.patch
+ rediff to changed context
- Removed patch:
* aqute-bnd-java8compat.patch
+ handled by release=8 in ant javac task
-------------------------------------------------------------------
Sat Sep 16 10:08:36 UTC 2023 - Fridrich Strba <fstrba@suse.com>
- Added patches:
* reproducible-timestamps.patch
+ set "-reproducible" option to true by default
+ use SOURCE_DATE_EPOCH for timestamp if available
* reproducible-packages-list.patch
+ make the order of packages to import/export deterministic
-------------------------------------------------------------------
Wed Apr 26 17:47:47 UTC 2023 - Fridrich Strba <fstrba@suse.com>

View File

@ -17,7 +17,7 @@
Name: bnd-maven-plugin
Version: 5.2.0
Version: 6.3.1
Release: 0
Summary: BND Maven plugin
# Part of jpm is under BSD, but jpm is not included in binary RPM
@ -25,24 +25,17 @@ License: Apache-2.0
Group: Development/Libraries/Java
URL: https://bnd.bndtools.org/
Source0: bnd-%{version}.tar.xz
Patch0: 0001-Disable-removed-commands.patch
Patch2: 0003-Port-to-OSGI-7.0.0.patch
Patch3: aqute-bnd-java8compat.patch
Patch4: 0004-maven-plugin-dependencies.patch
Patch1: 0001-Disable-removed-commands.patch
Patch2: 0002-Port-to-OSGI-7.0.0.patch
Patch3: 0003-Remove-unmet-dependencies.patch
Patch4: reproducible-timestamps.patch
Patch5: reproducible-packages-list.patch
BuildRequires: fdupes
BuildRequires: maven-local
BuildRequires: mvn(biz.aQute.bnd:biz.aQute.bndlib)
BuildRequires: mvn(org.apache.maven.plugin-tools:maven-plugin-annotations)
BuildRequires: mvn(biz.aQute.bnd:biz.aQute.bndlib) >= %{version}
BuildRequires: mvn(org.apache.maven.plugins:maven-plugin-plugin)
BuildRequires: mvn(org.apache.maven.shared:maven-mapping)
BuildRequires: mvn(org.apache.maven:maven-artifact)
BuildRequires: mvn(org.apache.maven:maven-compat)
BuildRequires: mvn(org.apache.maven:maven-core)
BuildRequires: mvn(org.apache.maven:maven-plugin-api)
BuildRequires: mvn(org.eclipse.aether:aether-api)
BuildRequires: mvn(org.osgi:osgi.cmpn)
BuildRequires: mvn(org.slf4j:slf4j-api)
BuildRequires: mvn(org.sonatype.plexus:plexus-build-api)
BuildRequires: mvn(org.codehaus.plexus:plexus-component-metadata)
BuildArch: noarch
%description
@ -58,21 +51,19 @@ API documentation for %{name}.
%prep
%setup -q -n bnd-%{version}
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
cp -r biz.aQute.bnd.maven/src/aQute/bnd/maven/lib/configuration maven/bnd-maven-plugin/src/main/java/aQute/bnd/maven/lib
cp -r biz.aQute.bnd.maven/src/aQute/bnd/maven/lib/executions maven/bnd-maven-plugin/src/main/java/aQute/bnd/maven/lib
pushd maven
%pom_remove_dep -r :biz.aQute.bnd.maven
%pom_remove_dep -r :biz.aQute.resolve
%pom_remove_dep -r :biz.aQute.repository
%pom_remove_dep -r :biz.aQute.bnd.embedded-repo
# Unavailable reactor dependency - org.osgi.impl.bundle.repoindex.cli
%pom_disable_module bnd-indexer-maven-plugin
# Requires unbuilt parts of bnd
%pom_disable_module bnd-baseline-maven-plugin
%pom_disable_module bnd-export-maven-plugin
%pom_disable_module bnd-reporter-maven-plugin
%pom_disable_module bnd-resolver-maven-plugin
@ -81,11 +72,13 @@ pushd maven
# Integration tests require Internet access
%pom_remove_plugin -r :maven-invoker-plugin
%pom_remove_plugin -r :maven-javadoc-plugin
%pom_remove_plugin -r :flatten-maven-plugin
%pom_remove_plugin -r :maven-source-plugin
popd
%pom_remove_dep -r org.junit:junit-bom
%{mvn_package} biz.aQute.bnd:bnd-plugin-parent __noinstall
popd
%build
pushd maven

View File

@ -0,0 +1,29 @@
diff --git a/biz.aQute.bndlib/src/aQute/bnd/osgi/Packages.java b/biz.aQute.bndlib/src/aQute/bnd/osgi/Packages.java
index b127fc68..679a1051 100644
--- a/biz.aQute.bndlib/src/aQute/bnd/osgi/Packages.java
+++ b/biz.aQute.bndlib/src/aQute/bnd/osgi/Packages.java
@@ -1,9 +1,9 @@
package aQute.bnd.osgi;
import java.util.Collection;
-import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
+import java.util.TreeMap;
import aQute.bnd.header.Attrs;
import aQute.bnd.osgi.Descriptors.PackageRef;
@@ -21,11 +21,11 @@ public class Packages implements Map<PackageRef, Attrs> {
}
public Packages(Packages other) {
- map = new LinkedHashMap<>(other.map);
+ map = new TreeMap<>(other.map);
}
public Packages() {
- map = new LinkedHashMap<>();
+ map = new TreeMap<>();
}
@Override

View File

@ -0,0 +1,40 @@
diff --git a/biz.aQute.bndlib/src/aQute/bnd/osgi/Jar.java b/biz.aQute.bndlib/src/aQute/bnd/osgi/Jar.java
index 10ec3fd0..7dd75418 100644
--- a/biz.aQute.bndlib/src/aQute/bnd/osgi/Jar.java
+++ b/biz.aQute.bndlib/src/aQute/bnd/osgi/Jar.java
@@ -114,7 +114,7 @@ public class Jar implements Closeable {
private String lastModifiedReason;
private boolean doNotTouchManifest;
private boolean nomanifest;
- private boolean reproducible;
+ private boolean reproducible = true;
private Compression compression = Compression.DEFLATE;
private boolean closed;
private String[] algorithms;
diff --git a/biz.aQute.bndlib/src/aQute/bnd/osgi/Macro.java b/biz.aQute.bndlib/src/aQute/bnd/osgi/Macro.java
index e9ecd39e..f7f83d83 100644
--- a/biz.aQute.bndlib/src/aQute/bnd/osgi/Macro.java
+++ b/biz.aQute.bndlib/src/aQute/bnd/osgi/Macro.java
@@ -904,6 +904,10 @@ public class Macro {
reporter.warning("Too many arguments for tstamp: %s", Arrays.toString(args));
}
+ if (System.getenv("SOURCE_DATE_EPOCH") != null) {
+ now = 1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"));
+ }
+
SimpleDateFormat sdf = new SimpleDateFormat(format, Locale.US);
sdf.setTimeZone(tz);
return sdf.format(new Date(now));
@@ -922,6 +926,11 @@ public class Macro {
} else {
now = System.currentTimeMillis();
}
+
+ if (System.getenv("SOURCE_DATE_EPOCH") != null) {
+ now = 1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"));
+ }
+
return now;
}