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

James E. King, III commented on SM-3224:
----------------------------------------

I'm not certain what the rules are for something being optional here, but I can 
add:

To use the THttpClient class one needs "javax.microedition" so that should 
perhaps be added as an optional dependency.
The only dependency for javax.security is in the TSaslTransport so it might 
also be designated as optional.

It looks like the only dependency on org.apache.http is to drive javascript 
language tests and tutorials, which is not needed to use the library, so that 
can be removed.

Code generated by thrift imports class Generated from namespace 
"javax.annotation" so that should be mandatory.

I used the following command to pull out anything else:
{{find . -type f -name '*.java' -exec grep -H 'import ' {} \; | cut -d' ' -f2 | 
sort | uniq}}

I found the following, none of which needs to be in the dependency list:

{{com.google.common}} is used in the contributed thrift-maven-plugin, so it 
doesn't need to be in the dependency list
{{eu.medsea.mimeutil}} is used in javascript testing, so it doesn't need to be 
in the dependency list
{{junit.framework}} is used in java testing, so it doesn't need to be in the 
dependency list
{{org.apache.commons}} is used in java testing, so it doesn't need to be in the 
dependency list
{{org.apache.maven}} is used in the contributed thrift-maven-plugin, so it 
doesn't need to be in the dependency list
{{org.codehaus.plexus}} is used in the contributed thrift-maven-plugin, so it 
doesn't need to be in the dependency list
{{org.junit}} is used in java testing, so it doesn't need to be in the 
dependency list

Therefore, we could perhaps use:

{noformat}
        <servicemix.osgi.import.pkg>
            org.slf4j*;version="[1.4,2)";resolution:=optional,
            org.apache.log4j;resolution:=optional,
            javax.annotation,
            javax.microedition*;resolution:=optional,
            javax.net*,
            javax.security*;resolution:=optional,
            javax.servlet*;resolution:=optional
        </servicemix.osgi.import.pkg>
{noformat}

> Create OSGi bundle for libthrift-0.10.0
> ---------------------------------------
>
>                 Key: SM-3224
>                 URL: https://issues.apache.org/jira/browse/SM-3224
>             Project: ServiceMix
>          Issue Type: Task
>          Components: bundles
>            Reporter: James E. King, III
>
> Apache Thrift released version 0.10.0 on January 3, 2017.
> I sent an email request to the development mailing list regarding correct 
> dependencies for this latest update and if they are different than 0.9.3 but 
> I haven't heard anything yet.  I will ask folks to add comments to this Jira 
> ticket.
> Here is a list of dependencies SM carries for libthrift-0.9.3 today:
> {noformat}
>         <servicemix.osgi.import.pkg>
>             org.apache.http*;version="[4,5)",
>             org.slf4j*;version="[1.4,2)";resolution:=optional,
>             org.apache.log4j;resolution:=optional,
>             javax.net*,
>             javax.security*,
>             javax.servlet*;resolution:=optional
>         </servicemix.osgi.import.pkg>
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to