[ 
https://issues.apache.org/jira/browse/SOLR-2849?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13137608#comment-13137608
 ] 

Steven Rowe commented on SOLR-2849:
-----------------------------------

bq. /modules/queryparser: make lucene-sandbox an optional dependency. The 
dependency is isolated to the XML builder CorePlusExtensionsParser subclass, so 
it is quite optional.

I don't agree about it being "quite" optional.  The lucene-sandbox dependency 
is there for {{FuzzyLikeThisQuery}} and {{DuplicateFilter}}.  Making the 
lucene-sandbox dependency optional means Maven users will have to know that 
their own project has to depend on {{lucene-sandbox-X.X.jar}} if they want to 
use the builders for *any* of queries supported by {{CorePlusExtensionsParser}} 
(since a {{ClassNotFoundException}} will be thrown when the 
{{CorePlusExtensionsParser}} ctor is invoked): 

# {{TermsFilter}}
# {{BooleanFilter}}
# {{DuplicateFilter}}
# {{MoreLikeThisQuery}}
# {{BoostingQuery}}
# {{FuzzyLikeThisQuery}}

I think your motivation for making the dependency optional is that most people 
won't use any of these?  But I don't think this is an appropriate distinction 
to make for a library.  The queryparser library exposes certain functionality, 
and we should indicate the dependencies required to enable *all* of that 
functionality, not just the subset we think most people will use.  

I think we should only declare dependencies optional when their exclusion will 
not limit usage.  Right now on trunk, only two deps in one POM (solr core) are 
declared optional, and the reason is that there really are no transitive 
dependencies on them.
                
> Solr maven dependencies: logging
> --------------------------------
>
>                 Key: SOLR-2849
>                 URL: https://issues.apache.org/jira/browse/SOLR-2849
>             Project: Solr
>          Issue Type: Improvement
>          Components: Build
>    Affects Versions: 4.0
>            Reporter: David Smiley
>            Priority: Trivial
>         Attachments: SOLR-2849_maven_dependencies.patch, 
> SOLR-2849_maven_dependencies.patch, SOLR-2849_maven_dependencies.patch
>
>
> I was looking at my maven based project's Solr-core dependencies (trunk), and 
> observed some issues that I think should be fixed in Solr's maven poms. I ran 
> {{mvn dependency:tree}} -- the output is further below.  There are two 
> changes I see needed, related to logging:
> * slf4j-jdk14 should be runtime scope, and optional.
> * httpclient depends on commons-logging.  Exclude this dependency from the 
> httpclient dependency, and add a dependency on jcl-over-slf4j with compile 
> scope.
> * Zookeeper depends on Log4j, unfortunately. There is an issue to change this 
> to SLF4J: ZOOKEEPER-850. In the mean time we should exclude it and use 
> log4j-over-slf4j with compile scope, at the solrj pom.
> As an aside, it's unfortunate to see all those velocity dependencies.  It 
> even depends on struts -- seriously?!  I hope solritas gets put back into a 
> contrib sometime: SOLR-2588
> Steve, if you'd like to me to create the patch, I will.
> {code}
> [INFO] +- org.apache.solr:solr-core:jar:4.0-SNAPSHOT:compile
> [INFO] |  +- org.apache.solr:solr-solrj:jar:4.0-SNAPSHOT:compile
> [INFO] |  |  \- org.apache.zookeeper:zookeeper:jar:3.3.3:compile
> [INFO] |  |     +- log4j:log4j:jar:1.2.15:compile
> [INFO] |  |     |  \- javax.mail:mail:jar:1.4:compile
> [INFO] |  |     |     \- javax.activation:activation:jar:1.1:compile
> [INFO] |  |     \- jline:jline:jar:0.9.94:compile
> [INFO] |  +- org.apache.solr:solr-noggit:jar:4.0-SNAPSHOT:compile
> [INFO] |  +- 
> org.apache.lucene:lucene-analyzers-phonetic:jar:4.0-SNAPSHOT:compile
> [INFO] |  +- org.apache.lucene:lucene-highlighter:jar:4.0-SNAPSHOT:compile
> [INFO] |  +- org.apache.lucene:lucene-memory:jar:4.0-SNAPSHOT:compile
> [INFO] |  +- org.apache.lucene:lucene-misc:jar:4.0-SNAPSHOT:compile
> [INFO] |  +- org.apache.lucene:lucene-queryparser:jar:4.0-SNAPSHOT:compile
> [INFO] |  |  \- org.apache.lucene:lucene-sandbox:jar:4.0-SNAPSHOT:compile
> [INFO] |  |     \- jakarta-regexp:jakarta-regexp:jar:1.4:compile
> [INFO] |  +- org.apache.lucene:lucene-spatial:jar:4.0-SNAPSHOT:compile
> [INFO] |  +- org.apache.lucene:lucene-suggest:jar:4.0-SNAPSHOT:compile
> [INFO] |  +- org.apache.lucene:lucene-grouping:jar:4.0-SNAPSHOT:compile
> [INFO] |  +- org.apache.solr:solr-commons-csv:jar:4.0-SNAPSHOT:compile
> [INFO] |  +- commons-codec:commons-codec:jar:1.4:compile
> [INFO] |  +- commons-fileupload:commons-fileupload:jar:1.2.1:compile
> [INFO] |  +- commons-httpclient:commons-httpclient:jar:3.1:compile
> [INFO] |  |  \- commons-logging:commons-logging:jar:1.0.4:compile
> [INFO] |  +- commons-io:commons-io:jar:1.4:compile
> [INFO] |  +- org.apache.velocity:velocity:jar:1.6.4:compile
> [INFO] |  |  +- commons-collections:commons-collections:jar:3.2.1:compile
> [INFO] |  |  \- oro:oro:jar:2.0.8:compile
> [INFO] |  +- org.apache.velocity:velocity-tools:jar:2.0:compile
> [INFO] |  |  +- commons-beanutils:commons-beanutils:jar:1.7.0:compile
> [INFO] |  |  +- commons-digester:commons-digester:jar:1.8:compile
> [INFO] |  |  +- commons-chain:commons-chain:jar:1.1:compile
> [INFO] |  |  +- commons-validator:commons-validator:jar:1.3.1:compile
> [INFO] |  |  +- dom4j:dom4j:jar:1.1:compile
> [INFO] |  |  +- sslext:sslext:jar:1.2-0:compile
> [INFO] |  |  +- org.apache.struts:struts-core:jar:1.3.8:compile
> [INFO] |  |  |  \- antlr:antlr:jar:2.7.2:compile
> [INFO] |  |  +- org.apache.struts:struts-taglib:jar:1.3.8:compile
> [INFO] |  |  \- org.apache.struts:struts-tiles:jar:1.3.8:compile
> [INFO] |  +- org.slf4j:slf4j-jdk14:jar:1.6.1:compile
> [INFO] |  \- org.codehaus.woodstox:wstx-asl:jar:3.2.7:runtime
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to