diff --git a/driver/src/main/javadoc/overview.html b/build/javadoc/overview.html
similarity index 100%
rename from driver/src/main/javadoc/overview.html
rename to build/javadoc/overview.html
diff --git a/bundle/README.md b/bundle/README.md
new file mode 100644
index 0000000000..edece14490
--- /dev/null
+++ b/bundle/README.md
@@ -0,0 +1,4 @@
+Aggregator project for building the single JAR with shaded dependencies.
+
+This module aggregates the slim version, unpacks it and repackages it.
+The sources are unpacked so that an individual JavaDoc artifact is produced, too.
\ No newline at end of file
diff --git a/bundle/osgi.bnd b/bundle/osgi.bnd
new file mode 100644
index 0000000000..ecf3966e28
--- /dev/null
+++ b/bundle/osgi.bnd
@@ -0,0 +1,11 @@
+package-version=${version;===;${Bundle-Version}}
+
+Export-Package: \
+ *;version="${package-version}"
+
+Import-Package: \
+ !io.netty.*, \
+ !reactor.core.*, \
+ !com.oracle.svm.*, \
+ javax.security.cert, \
+ *
diff --git a/bundle/pom.xml b/bundle/pom.xml
new file mode 100644
index 0000000000..528f655584
--- /dev/null
+++ b/bundle/pom.xml
@@ -0,0 +1,188 @@
+
+ 4.0.0
+
+
+ org.neo4j.driver
+ neo4j-java-driver-parent
+ 4.4-SNAPSHOT
+ ..
+
+
+ neo4j-java-driver
+
+ jar
+ Neo4j Java Driver
+ Access to the Neo4j graph database through Java
+
+
+ org.neo4j.driver
+ ${project.basedir}/..
+ false
+
+
+
+
+
+ org.neo4j.driver
+ neo4j-java-driver-slim
+ ${project.version}
+ true
+
+
+
+
+ org.slf4j
+ slf4j-api
+ true
+
+
+ org.graalvm.nativeimage
+ svm
+
+
+
+
+ org.reactivestreams
+ reactive-streams
+
+
+
+
+
+
+
+ maven-resources-plugin
+
+
+ copy-appCtx
+ generate-sources
+
+ copy-resources
+
+
+ ${project.build.directory}/generated-sources/slim
+ true
+
+
+ ${rootDir}/driver/src/main/java
+ **\/*.java
+
+
+
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+
+
+ attach-original-sources
+ generate-sources
+
+ add-source
+
+
+
+
+
+
+
+
+ set-osgi-version
+ validate
+
+ parse-version
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-source-plugin
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+
+
+
+ test-jar
+
+
+
+
+
+ true
+ ${project.build.outputDirectory}/META-INF/MANIFEST.MF
+
+ org/neo4j/driver
+
+
+
+ ${project.version}-${build.revision}
+
+ ${moduleName}
+
+
+
+
+
+ org.apache.felix
+ maven-bundle-plugin
+ true
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+
+
+ package
+
+ shade
+
+
+
+
+ io.netty:*
+ io.projectreactor:*
+
+
+
+
+ io.netty
+ org.neo4j.driver.internal.shaded.io.netty
+
+
+ reactor
+ org.neo4j.driver.internal.shaded.reactor
+
+
+
+
+
+
+
+ io.netty:*
+
+ META-INF/native-image/**
+
+
+
+ true
+ true
+
+
+
+
+
+
+
+
diff --git a/bundle/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties b/bundle/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties
new file mode 100644
index 0000000000..c2b3de8823
--- /dev/null
+++ b/bundle/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties
@@ -0,0 +1,20 @@
+Args = -H:ReflectionConfigurationResources=${.}/reflection-config.json \
+ --initialize-at-run-time=org.neo4j.driver.internal.async.connection.BoltProtocolUtil \
+ --initialize-at-run-time=org.neo4j.driver.internal.async.connection.ChannelAttributes \
+ --initialize-at-run-time=org.neo4j.driver.internal.async.connection.ChannelConnectedListener \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.AbstractReferenceCountedByteBuf \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.ByteBufAllocator \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.ByteBufUtil \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.ByteBufUtil$HexUtil \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.PooledByteBufAllocator \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.UnpooledHeapByteBuf \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.UnreleasableByteBuf \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.Conscrypt \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.ConscryptAlpnSslEngine \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.ReferenceCountedOpenSslEngine \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.util.ThreadLocalInsecureRandom \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.util.AbstractReferenceCounted \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.util.internal.logging.Log4JLogger \
+ -Dio.netty.noUnsafe=true \
+ -Dio.netty.leakDetection.level=DISABLED
diff --git a/bundle/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json b/bundle/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json
new file mode 100644
index 0000000000..68572f10fb
--- /dev/null
+++ b/bundle/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json
@@ -0,0 +1,58 @@
+[
+ {
+ "name": "org.neo4j.driver.internal.shaded.io.netty.channel.socket.nio.NioSocketChannel",
+ "methods": [
+ { "name": "", "parameterTypes": [] }
+ ]
+ },
+ {
+ "name": "org.neo4j.driver.internal.shaded.io.netty.channel.socket.nio.NioServerSocketChannel",
+ "methods": [
+ { "name": "", "parameterTypes": [] }
+ ]
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.buffer.AbstractByteBufAllocator",
+ "allDeclaredMethods" : true
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.util.ReferenceCountUtil",
+ "allDeclaredMethods" : true
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerIndexField",
+ "fields": [
+ {"name": "producerIndex", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerLimitField",
+ "fields": [
+ {"name": "producerLimit", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueConsumerIndexField",
+ "fields": [
+ {"name": "consumerIndex", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueProducerFields",
+ "fields": [
+ {"name": "producerIndex", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueColdProducerFields",
+ "fields": [
+ {"name": "producerLimit", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueConsumerFields",
+ "fields": [
+ {"name": "consumerIndex", "allowUnsafeAccess": true}
+ ]
+ }
+]
diff --git a/driver/osgi.bnd b/driver/osgi.bnd
index 0d53b32ba0..8a0ac0d378 100644
--- a/driver/osgi.bnd
+++ b/driver/osgi.bnd
@@ -1,12 +1,10 @@
package-version=${version;===;${Bundle-Version}}
Export-Package: \
+ !*.internal.*, \
*;version="${package-version}"
Import-Package: \
- !io.netty.*, \
- !reactor.core.*, \
!com.oracle.svm.*, \
javax.security.cert, \
*
-
diff --git a/driver/pom.xml b/driver/pom.xml
index 7bd9ca1a63..6734429976 100644
--- a/driver/pom.xml
+++ b/driver/pom.xml
@@ -7,18 +7,15 @@
org.neo4j.driver
neo4j-java-driver-parent
4.4-SNAPSHOT
- ..
- neo4j-java-driver
+ neo4j-java-driver-slim
jar
- Neo4j Java Driver
+ Neo4j Java Driver (Slim package)
Access to the Neo4j graph database through Java
- ${project.groupId}.${project.artifactId}
- 'v'yyyyMMdd-HHmm
org.neo4j.driver
${project.basedir}/..
false
@@ -39,12 +36,16 @@
reactor-core
-
+
org.slf4j
slf4j-api
true
+
+ org.graalvm.nativeimage
+ svm
+
@@ -76,10 +77,6 @@
reactor-test
test
-
- org.graalvm.nativeimage
- svm
-
@@ -96,44 +93,10 @@
org.apache.maven.plugins
maven-source-plugin
-
-
- attach-sources
-
- jar
-
-
-
-
- ${project.name} (Source)
- ${bundle.name}.source
- ${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}.${build.timestamp}
- ${bundle.name};version="${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}.${build.timestamp}";roots:="."
-
-
-
-
-
org.apache.maven.plugins
maven-javadoc-plugin
-
-
- org/neo4j/driver/**/*.java
-
- org.neo4j.driver.internal
-
-
- if (typeof useModuleDirectories !== 'undefined') {
- useModuleDirectories = false;
- }
-
- ]]>
-
- --allow-script-in-comments
-
org.apache.maven.plugins
@@ -178,85 +141,10 @@
org.apache.felix
maven-bundle-plugin
true
-
-
- bundle-manifest
- process-classes
-
- manifest
-
-
-
-
-
- ${bundle.name}
- ${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}.${build.timestamp}
- <_snapshot>${maven.build.timestamp}
- <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))
- <_removeheaders>Bnd-*,Private-Package
- <_nouses>true
-
- <_include>-osgi.bnd
-
-
org.apache.maven.plugins
maven-failsafe-plugin
-
-
- ${project.build.directory}/classes
-
-
-
- org.apache.maven.plugins
- maven-shade-plugin
-
-
- package
-
- shade
-
-
-
-
- io.netty:*
- io.projectreactor:*
-
-
-
-
- io.netty
- org.neo4j.driver.internal.shaded.io.netty
-
-
- reactor
- org.neo4j.driver.internal.shaded.reactor
-
-
-
-
-
-
-
- io.netty:*
-
- META-INF/native-image/**
-
-
-
- true
- true
-
-
-
diff --git a/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties b/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties
index c2b3de8823..9d2171e945 100644
--- a/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties
+++ b/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties
@@ -2,19 +2,19 @@ Args = -H:ReflectionConfigurationResources=${.}/reflection-config.json \
--initialize-at-run-time=org.neo4j.driver.internal.async.connection.BoltProtocolUtil \
--initialize-at-run-time=org.neo4j.driver.internal.async.connection.ChannelAttributes \
--initialize-at-run-time=org.neo4j.driver.internal.async.connection.ChannelConnectedListener \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.AbstractReferenceCountedByteBuf \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.ByteBufAllocator \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.ByteBufUtil \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.ByteBufUtil$HexUtil \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.PooledByteBufAllocator \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.UnpooledHeapByteBuf \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.UnreleasableByteBuf \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.Conscrypt \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.ConscryptAlpnSslEngine \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.ReferenceCountedOpenSslEngine \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.util.ThreadLocalInsecureRandom \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.util.AbstractReferenceCounted \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.util.internal.logging.Log4JLogger \
+ --initialize-at-run-time=io.netty.buffer.AbstractReferenceCountedByteBuf \
+ --initialize-at-run-time=io.netty.buffer.ByteBufAllocator \
+ --initialize-at-run-time=io.netty.buffer.ByteBufUtil \
+ --initialize-at-run-time=io.netty.buffer.ByteBufUtil$HexUtil \
+ --initialize-at-run-time=io.netty.buffer.PooledByteBufAllocator \
+ --initialize-at-run-time=io.netty.buffer.UnpooledHeapByteBuf \
+ --initialize-at-run-time=io.netty.buffer.UnreleasableByteBuf \
+ --initialize-at-run-time=io.netty.handler.ssl.Conscrypt \
+ --initialize-at-run-time=io.netty.handler.ssl.ConscryptAlpnSslEngine \
+ --initialize-at-run-time=io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator \
+ --initialize-at-run-time=io.netty.handler.ssl.ReferenceCountedOpenSslEngine \
+ --initialize-at-run-time=io.netty.handler.ssl.util.ThreadLocalInsecureRandom \
+ --initialize-at-run-time=io.netty.util.AbstractReferenceCounted \
+ --initialize-at-run-time=io.netty.util.internal.logging.Log4JLogger \
-Dio.netty.noUnsafe=true \
-Dio.netty.leakDetection.level=DISABLED
diff --git a/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json b/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json
index 68572f10fb..d91092ea00 100644
--- a/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json
+++ b/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json
@@ -1,58 +1,58 @@
[
- {
- "name": "org.neo4j.driver.internal.shaded.io.netty.channel.socket.nio.NioSocketChannel",
- "methods": [
- { "name": "", "parameterTypes": [] }
- ]
- },
- {
- "name": "org.neo4j.driver.internal.shaded.io.netty.channel.socket.nio.NioServerSocketChannel",
- "methods": [
- { "name": "", "parameterTypes": [] }
- ]
- },
- {
- "name" : "org.neo4j.driver.internal.shaded.io.netty.buffer.AbstractByteBufAllocator",
- "allDeclaredMethods" : true
- },
- {
- "name" : "org.neo4j.driver.internal.shaded.io.netty.util.ReferenceCountUtil",
- "allDeclaredMethods" : true
- },
- {
- "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerIndexField",
- "fields": [
- {"name": "producerIndex", "allowUnsafeAccess": true}
- ]
- },
- {
- "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerLimitField",
- "fields": [
- {"name": "producerLimit", "allowUnsafeAccess": true}
- ]
- },
- {
- "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueConsumerIndexField",
- "fields": [
- {"name": "consumerIndex", "allowUnsafeAccess": true}
- ]
- },
- {
- "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueProducerFields",
- "fields": [
- {"name": "producerIndex", "allowUnsafeAccess": true}
- ]
- },
- {
- "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueColdProducerFields",
- "fields": [
- {"name": "producerLimit", "allowUnsafeAccess": true}
- ]
- },
- {
- "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueConsumerFields",
- "fields": [
- {"name": "consumerIndex", "allowUnsafeAccess": true}
- ]
- }
+ {
+ "name": "io.netty.channel.socket.nio.NioSocketChannel",
+ "methods": [
+ { "name": "", "parameterTypes": [] }
+ ]
+ },
+ {
+ "name": "io.netty.channel.socket.nio.NioServerSocketChannel",
+ "methods": [
+ { "name": "", "parameterTypes": [] }
+ ]
+ },
+ {
+ "name" : "io.netty.buffer.AbstractByteBufAllocator",
+ "allDeclaredMethods" : true
+ },
+ {
+ "name" : "io.netty.util.ReferenceCountUtil",
+ "allDeclaredMethods" : true
+ },
+ {
+ "name" : "io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerIndexField",
+ "fields": [
+ {"name": "producerIndex", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerLimitField",
+ "fields": [
+ {"name": "producerLimit", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueConsumerIndexField",
+ "fields": [
+ {"name": "consumerIndex", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueProducerFields",
+ "fields": [
+ {"name": "producerIndex", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueColdProducerFields",
+ "fields": [
+ {"name": "producerLimit", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueConsumerFields",
+ "fields": [
+ {"name": "consumerIndex", "allowUnsafeAccess": true}
+ ]
+ }
]
diff --git a/driver/src/test/java/org/neo4j/driver/internal/async/NetworkConnectionTest.java b/driver/src/test/java/org/neo4j/driver/internal/async/NetworkConnectionTest.java
index ff50cf5234..bcbcf33c16 100644
--- a/driver/src/test/java/org/neo4j/driver/internal/async/NetworkConnectionTest.java
+++ b/driver/src/test/java/org/neo4j/driver/internal/async/NetworkConnectionTest.java
@@ -22,7 +22,6 @@
import io.netty.channel.DefaultEventLoop;
import io.netty.channel.EventLoop;
import io.netty.channel.embedded.EmbeddedChannel;
-import io.netty.util.internal.ConcurrentSet;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Test;
import org.mockito.ArgumentCaptor;
@@ -30,6 +29,7 @@
import java.util.Set;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.CompletionStage;
+import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
@@ -657,7 +657,7 @@ private static void assertConnectionTerminatedError( IllegalStateException e )
private static class ThreadTrackingInboundMessageDispatcher extends InboundMessageDispatcher
{
- final Set queueThreadNames = new ConcurrentSet<>();
+ final Set queueThreadNames = ConcurrentHashMap.newKeySet();
ThreadTrackingInboundMessageDispatcher( Channel channel )
{
super( channel, DEV_NULL_LOGGING );
diff --git a/driver/src/test/java/org/neo4j/driver/stress/AbstractStressTestBase.java b/driver/src/test/java/org/neo4j/driver/stress/AbstractStressTestBase.java
index 2b45b8cd5b..f807aa372a 100644
--- a/driver/src/test/java/org/neo4j/driver/stress/AbstractStressTestBase.java
+++ b/driver/src/test/java/org/neo4j/driver/stress/AbstractStressTestBase.java
@@ -18,7 +18,6 @@
*/
package org.neo4j.driver.stress;
-import io.netty.util.internal.ConcurrentSet;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -39,6 +38,7 @@
import java.util.Set;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.CompletionStage;
+import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
@@ -749,7 +749,7 @@ private static class ResourcesInfo
private static class LoggerNameTrackingLogging implements Logging
{
private final Logging consoleLogging = Logging.console( Level.FINE );
- private final Set acquiredLoggerNames = new ConcurrentSet<>();
+ private final Set acquiredLoggerNames = ConcurrentHashMap.newKeySet();
@Override
public Logger getLog( String name )
diff --git a/examples/pom.xml b/examples/pom.xml
index db773854a6..45a3de0282 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -7,7 +7,6 @@
org.neo4j.driver
neo4j-java-driver-parent
4.4-SNAPSHOT
- ..
org.neo4j.doc.driver
@@ -40,7 +39,7 @@
org.neo4j.driver
- neo4j-java-driver
+ neo4j-java-driver-slim
${project.version}
test-jar
test
diff --git a/pom.xml b/pom.xml
index 97dc6c21b7..c8a178729d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -17,6 +17,10 @@
UTF-8
1.8
1.8
+ 'v'yyyyMMdd-HHmm
+
+ ${project.groupId}.${project.artifactId}
+
${project.basedir}
1C
@@ -46,10 +50,13 @@
2.13.0
1.18.22
20.3.3
+
+
driver
+ bundle
examples
testkit-backend
testkit-tests
@@ -272,6 +279,24 @@
org.apache.maven.plugins
maven-source-plugin
3.0.1
+
+
+ attach-sources
+
+ jar
+
+
+
+
+ ${project.name} (Source)
+ ${bundle.name}.source
+ ${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}.${build.timestamp}
+ ${bundle.name};version="${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}.${build.timestamp}";roots:="."
+
+
+
+
+
org.apache.maven.plugins
@@ -287,6 +312,26 @@
org.apache.felix
maven-bundle-plugin
3.5.0
+
+
+ bundle-manifest
+ process-classes
+
+ manifest
+
+
+
+
+
+ ${bundle.name}
+ ${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}.${build.timestamp}
+ <_snapshot>${maven.build.timestamp}
+ <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))
+ <_removeheaders>Bnd-*,Private-Package
+ <_nouses>true
+ <_include>-osgi.bnd
+
+
org.apache.maven.plugins
@@ -360,8 +405,22 @@
]]>
+
+
+ if (typeof useModuleDirectories !== 'undefined') {
+ useModuleDirectories = false;
+ }
+
+ ]]>
+
--allow-script-in-comments
+
+ org/neo4j/driver/**/*.java
+
+ org.neo4j.driver.internal
+ ${rootDir}/build/javadoc/overview.html
diff --git a/testkit-backend/pom.xml b/testkit-backend/pom.xml
index e6a7f1a276..1419ea91c9 100644
--- a/testkit-backend/pom.xml
+++ b/testkit-backend/pom.xml
@@ -22,7 +22,7 @@
org.neo4j.driver
- neo4j-java-driver
+ neo4j-java-driver-slim
${project.version}