Just some further information about what @ddy199726 said.

The relationship between weex and JavaScriptCore is similar to the relationship 
between any Java Project and JDK.

If one want to run a Java program, he/she must have a JDK/JRE to interpret Java 
byte code.
If one want to run a Weex program, he/she must have a JavaScript interpretator 
to interpret JavaScript. Here we choose JavaScriptCore.
Like any Java program must import some Java Class in the standard JDK/JRE, weex 
has to import the some API (.h file) in JavaScriptCore. All those API itself is 
under BSD License. @ddy199726 and I have doubled checked it.
The only problem I see here is that JavaScriptCore is inside the binary of 
Weex, which should not happen anymore. We plan to decouple it from Weex then 
users must include weex_sdk and JavaScriptCore together in their product.

Best Regards,
York Shen

申远

> 在 2019年7月17日,15:16,[email protected] 写道:
> 
> Hey I'm a developer of incubator-weex
> 
> Weex used to use JavaScriptCore's source code directly to execute JavaScript 
> like this way .
> 
> 
> JSValue returnValue = evaluate(globalObject->globalExec(), 
> makeSource(source, sourceOrigin, url), JSValue(),
> evaluationException);
> 
> in this case, globalObject is inner object of JavaScriptCore,
> And makeSource is inline api of JavaScriptCore. 
> 
> So Weex has to add all JavaScriptCore's source code to weex'
> s repo to make it work normally. There is an function call chain like 
> Weex.apiA->Webkit.BSD.apiB->Webkit.BSD.apiC->Webkit.LGPL.apiD is true at that 
> time.
> 
> But now, Weex has refactoring the way we use JavaScriptCore.
> Weex just use JavaScriptCore public api. And All JavaScriptCore source code 
> has been removed from weex's repo.
> 
> We just include JavaScriptCore's publish api only.
> 
> So this function chain 
> Weex.apiA->Webkit.BSD.apiB->Webkit.BSD.apiC->Webkit.LGPL.apiD is not existed 
> now.
> 
> Now Function chain is Weex.apiA -> JavaScriptCore.BSD.apiB -> 
> JavaScriptCore.so
> 
> So there is no webkit license and Webkit *.h in weex's repo now
> 
> you can checkout the source code from here 
> https://weex.apache.org/download/download.html#_0-26-0 
> <https://weex.apache.org/download/download.html#_0-26-0>
> javaScriptCore's api directory is weex_core/Source/include/JavaScriptCore/API
> 
> Weex's logic that use JavaScriptCore's api is here weex_core/Source/js_runtime
> 
> FYI, JavaScriptCore itself is under dual License too, at least Weex include 
> files under BSD License from JavaScriptCore
> 
> 
> 
> 
>> 在 2019年7月16日,下午6:48,Myrle Krantz <[email protected]> 写道:
>> 
>> Hey all,
>> 
>> First of all: congratulations on your recent release!
>> 
>> I wanted to circle back to this to make sure it gets resolved before the
>> next release.
>> 
>> First a summary of what has happened as I see it.  If my summary is
>> incorrect, please let me know:
>> * At some point in the past Weex introduced a run-time and a compile-time
>> dependency to Webkit.  When adding the Webkit *.h to the repo, the correct
>> license of those files was accidentally overwritten.
>> * More recently, this mistake was discovered and a license review of Webkit
>> as a dependency was made in which it was realized that Webkit:
>> "As Webkit is under dual license, and it's almost impossible for us to
>> figure out whether there is an function call chain like
>> Weex.apiA->Webkit.BSD.apiB->Webkit.BSD.apiC->Webkit.LGPL.apiD. I'd like to
>> know our proposed change is enough to fix the Category X dependency."
>> (
>> https://lists.apache.org/thread.html/babe010a7814d4cf3d3d92588bee9dd22277b610daf83733d2622c91@%3Cgeneral.incubator.apache.org%3E
>> )
>> * The question of whether Webkit could release like this was raised to the
>> incubator and then to legal.
>> * Despite the lack of resolution to this question, Weex was still allowed
>> to make it's most recent release, because Weex is still in incubation.
>> 
>> While reviewing the release, it became clear to me that Weex is including
>> WebKit for it's JavaScriptCore.  Within WebKit, JavaScriptCore is
>> LGPL-licensed.  So it is likely that your functional call chains will
>> include LGPL-licensed code (after all that's the code you're including
>> WebKit for).
>> 
>> Is there an alternative implementation of JavaScriptCore that a user could
>> use in place of the LGPL-licensed portions of WebKit?
>> 
>> Best Regards,
>> Myrle
> 

Reply via email to