Hi,
Tomorrow we will merge the qtdeclarative.git#v8 branch into
qtdeclarative.git#master. This change switches the JavaScript engine QML uses
from JavaScript Core to V8 (http://code.google.com/p/v8/).
In the past QML accessed the JavaScript engine indirectly through QtScript, but
with V8 we integrated it directly against V8's native C++ API. Consequently,
in addition to the raw JavaScript performance improvements we get for "free",
QML can leverage some of V8's unique features to give a better JavaScript
experience.
In a perfect world, other than their apps running slightly faster, QML users
should notice no change. However, there are a couple of known regressions to
be aware of:
1. Creator integration will probably not work as smoothly in the short term
- at the very least the JavaScript debugging will not work.
2. Any QML API that relies on QML's undocumented ability to set and get
QScriptValue properties will no longer work.
3. Any application that provides a QScriptValue based QML module API will
no longer work. As module APIs are an unreleased feature anyway, hopefully
this wont be a big problem.
If you encounter any other breakage, it is probably a bug - so please report it!
One goal in qt5 is to allow applications to expose their own JavaScript based
APIs to QML. Right now, it is not clear whether this will be accomplished by
porting all of QtScript to V8, or by exposing a new, smaller JavaScript API
that just wraps V8. If anyone has any strong opinions on the matter, now would
probably be a good opportunity to express them :)
Cheers,
Aaron
_______________________________________________
Qt-qml mailing list
[email protected]
http://lists.qt.nokia.com/mailman/listinfo/qt-qml