diff --git a/reproducible-element-order.patch b/reproducible-element-order.patch index f57db37..f4f82a0 100644 --- a/reproducible-element-order.patch +++ b/reproducible-element-order.patch @@ -290,31 +290,6 @@ index b97251b5..a3f8644f 100644 return hierarchyStream(analyzer) // .flatMap(c -> c.typeStream(analyzer, Clazz::annotations, visited)) .map(TypeRef::getFQN) -diff --git a/biz.aQute.bndlib/src/aQute/bnd/osgi/Contracts.java b/biz.aQute.bndlib/src/aQute/bnd/osgi/Contracts.java -index d6ab2fd0..4824c91a 100644 ---- a/biz.aQute.bndlib/src/aQute/bnd/osgi/Contracts.java -+++ b/biz.aQute.bndlib/src/aQute/bnd/osgi/Contracts.java -@@ -4,10 +4,10 @@ import static aQute.bnd.osgi.Constants.DUPLICATE_MARKER; - - import java.util.Collection; - import java.util.Formatter; --import java.util.HashSet; - import java.util.List; - import java.util.Map.Entry; - import java.util.Set; -+import java.util.TreeSet; - - import org.osgi.namespace.contract.ContractNamespace; - import org.osgi.resource.Namespace; -@@ -36,7 +36,7 @@ class Contracts { - Contract.class, true); - private MultiMap, PackageRef> overlappingContracts = new MultiMap<>(); - private Instructions instructions; -- private final Set contracts = new HashSet<>(); -+ private final Set contracts = new TreeSet<>(); - - public class Contract { - public String name; diff --git a/biz.aQute.bndlib/src/aQute/bnd/osgi/Jar.java b/biz.aQute.bndlib/src/aQute/bnd/osgi/Jar.java index 3576bd87..d86ce7c1 100644 --- a/biz.aQute.bndlib/src/aQute/bnd/osgi/Jar.java @@ -753,35 +728,6 @@ index a45738d7..50701ae9 100644 } public void setDepth(int n) { -diff --git a/biz.aQute.bndlib/src/aQute/bnd/osgi/resource/CapReqBuilder.java b/biz.aQute.bndlib/src/aQute/bnd/osgi/resource/CapReqBuilder.java -index f556954d..9d508c3d 100644 ---- a/biz.aQute.bndlib/src/aQute/bnd/osgi/resource/CapReqBuilder.java -+++ b/biz.aQute.bndlib/src/aQute/bnd/osgi/resource/CapReqBuilder.java -@@ -6,12 +6,12 @@ import static java.util.stream.Collectors.toList; - import java.lang.reflect.Array; - import java.util.ArrayList; - import java.util.Collection; --import java.util.HashMap; - import java.util.List; - import java.util.Map; - import java.util.Map.Entry; - import java.util.Objects; - import java.util.Optional; -+import java.util.TreeMap; - - import org.osgi.framework.Constants; - import org.osgi.framework.Version; -@@ -49,8 +49,8 @@ public class CapReqBuilder { - - private final String namespace; - private Resource resource; -- private final Map attributes = new HashMap<>(); -- private final Map directives = new HashMap<>(); -+ private final Map attributes = new TreeMap<>(); -+ private final Map directives = new TreeMap<>(); - - public CapReqBuilder(String namespace) { - this.namespace = requireNonNull(namespace); diff --git a/biz.aQute.bndlib/src/aQute/bnd/osgi/resource/PersistentResource.java b/biz.aQute.bndlib/src/aQute/bnd/osgi/resource/PersistentResource.java index 89a82456..b0566f08 100644 --- a/biz.aQute.bndlib/src/aQute/bnd/osgi/resource/PersistentResource.java