Christian Munier created DELTASPIKE-1472:
--------------------------------------------
Summary: htmlunit3 dependency of deltaspike-jsf-module-impl has
compile scope
Key: DELTASPIKE-1472
URL: https://issues.apache.org/jira/browse/DELTASPIKE-1472
Project: DeltaSpike
Issue Type: Bug
Security Level: public (Regular issues)
Components: JSF-Module
Affects Versions: 2.0.0
Reporter: Christian Munier
Since version 2.0.0, {{deltaspike-jsf-module-impl}} has a compile dependency to
{{htmlunit3-driver}}.
This includes a subtree of several other transitive dependencies, including
Selenium, OpenTelemetry and Jetty Components, which are then also packaged in
an application (e.g. WAR or EAR) that uses the DeltaSpike JSF Module.
{noformat}
+- org.apache.deltaspike.modules:deltaspike-jsf-module-impl:jar:2.0.0:runtime
\- org.seleniumhq.selenium:htmlunit3-driver:jar:4.18.1:runtime
+- org.seleniumhq.selenium:selenium-api:jar:4.18.1:runtime
+- org.seleniumhq.selenium:selenium-support:jar:4.18.1:runtime
| +- com.google.auto.service:auto-service-annotations:jar:1.1.1:runtime
| +- org.seleniumhq.selenium:selenium-json:jar:4.18.1:runtime
| \- org.seleniumhq.selenium:selenium-remote-driver:jar:4.18.1:runtime
| +-
io.opentelemetry.semconv:opentelemetry-semconv:jar:1.23.1-alpha:runtime
| +- io.opentelemetry:opentelemetry-api:jar:1.35.0:runtime
| +- io.opentelemetry:opentelemetry-context:jar:1.35.0:runtime
| +-
io.opentelemetry:opentelemetry-exporter-logging:jar:1.35.0:runtime
| +- io.opentelemetry:opentelemetry-sdk-common:jar:1.35.0:runtime
| +-
io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi:jar:1.35.0:runtime
| +-
io.opentelemetry:opentelemetry-sdk-extension-autoconfigure:jar:1.35.0:runtime
| | \-
io.opentelemetry:opentelemetry-api-events:jar:1.35.0-alpha:runtime
| +- io.opentelemetry:opentelemetry-sdk-trace:jar:1.35.0:runtime
| | \-
io.opentelemetry:opentelemetry-extension-incubator:jar:1.35.0-alpha:runtime
| +- io.opentelemetry:opentelemetry-sdk:jar:1.35.0:runtime
| | +- io.opentelemetry:opentelemetry-sdk-metrics:jar:1.35.0:runtime
| | \- io.opentelemetry:opentelemetry-sdk-logs:jar:1.35.0:runtime
| +- org.seleniumhq.selenium:selenium-http:jar:4.18.1:runtime
| | \- dev.failsafe:failsafe:jar:3.3.2:runtime
| +- org.seleniumhq.selenium:selenium-manager:jar:4.18.1:runtime
| \- org.seleniumhq.selenium:selenium-os:jar:4.18.1:runtime
| \- org.apache.commons:commons-exec:jar:1.3:runtime
\- org.htmlunit:htmlunit:jar:3.11.0:runtime
+- org.apache.httpcomponents:httpmime:jar:4.5.14:runtime
| \- org.apache.httpcomponents:httpclient:jar:4.5.14:runtime
| \- org.apache.httpcomponents:httpcore:jar:4.4.16:runtime
+- org.htmlunit:htmlunit-core-js:jar:3.11.0:runtime
+- org.htmlunit:neko-htmlunit:jar:3.11.2:runtime
+- org.htmlunit:htmlunit-cssparser:jar:3.11.0:runtime
+- org.htmlunit:htmlunit-xpath:jar:3.11.0:runtime
+- org.htmlunit:htmlunit-csp:jar:3.11.0:runtime
+- commons-io:commons-io:jar:2.15.0:runtime
+- commons-logging:commons-logging:jar:1.3.0:runtime
+- commons-net:commons-net:jar:3.10.0:runtime
+- commons-codec:commons-codec:jar:1.16.1:runtime
+- org.brotli:dec:jar:0.1.2:runtime
\-
org.eclipse.jetty.websocket:websocket-client:jar:9.4.53.v20231009:runtime
+- org.eclipse.jetty:jetty-client:jar:9.4.53.v20231009:runtime
| \- org.eclipse.jetty:jetty-http:jar:9.4.53.v20231009:runtime
+- org.eclipse.jetty:jetty-util:jar:9.4.53.v20231009:runtime
+- org.eclipse.jetty:jetty-io:jar:9.4.53.v20231009:runtime
\-
org.eclipse.jetty.websocket:websocket-common:jar:9.4.53.v20231009:runtime
\-
org.eclipse.jetty.websocket:websocket-api:jar:9.4.53.v20231009:runtime
{noformat}
h3. Workaround
{{htmlunit3-driver}} and the transitive dependency tree can be exluded via
Dependency Management or while declaring the dependency in the consumer POM.
{noformat}
<dependency>
<artifactId>deltaspike-jsf-module-impl</artifactId>
<scope>runtime</scope>
<exclusions>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>htmlunit3-driver</artifactId>
</exclusion>
</exclusions>
</dependency>
{noformat}
h3. Proposed solution
The scope of the {{htmlunit3-driver}} dependency should be changed to {{test}}.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)