Re: [Qt5-feedback] Heads up: Merging refactor branches into master

2011-09-13 Thread Sylvain Pointeau
As a compromise, we have left the QtScript module untouched to preserve
100% compatibility for existing applications, and introduced
a parallel API against V8 (the QJS* classes) that is similar enough that we
expect most applications - and almost all new applications -
to be able to move to it instead.

Hi Aaron,

ok thank you for the clarification. I think the message would have been
better to use the new V8 Qt bridge instead of linking directly with V8
(which is a massive work).

Please could you point me on some documentation for the new JS bridge? I
have googled but nothing.

Best regards,
Sylvain
___
Qt5-feedback mailing list
Qt5-feedback@qt.nokia.com
http://lists.qt.nokia.com/mailman/listinfo/qt5-feedback


Re: [Qt5-feedback] Heads up: Merging refactor branches into master

2011-09-13 Thread Gábor Lehel
On Tue, Sep 13, 2011 at 3:51 AM,  aaron.kenn...@nokia.com wrote:
 Hi,
 On 12/09/2011, at 11:04 PM, ext Sylvain Pointeau wrote:

 QtScript should be using V8 and provide all the facilities of binding
 QtObjects...
 (it is using JavascriptCore if I remember well correct?)

 While this would be true in an ideal world, after much prototyping it was
 decided that porting the entire QtScript API to V8 and preserving its exact
 semantics was simply not possible.  As a compromise, we have left the
 QtScript module untouched to preserve 100% compatibility for existing
 applications, and introduced a parallel API against V8 (the QJS* classes)
 that is similar enough that we expect most applications - and almost all new
 applications - to be able to move to it instead.

Keeping 100% compatibility is a requirement even with the break to Qt5?

 While the V8 library itself is in QtBase, the QJS* convenience API is in
 QtDeclarative, although it may be moved prior to the release of Qt 5 (see
 the lengthy QML/JS engine in QtCore? thread).
 Cheers,
 Aaron

 V8 is another story, it requires a lot more stuff from the development
 What is the other Javascript interpreter you mentioned?
 Best regards,
 Sylvain
 On Mon, Sep 12, 2011 at 2:56 PM, gunnar.sle...@nokia.com wrote:

 On Sep 12, 2011, at 2:14 PM, ext Sylvain Pointeau wrote:

  Hi,
 
  I am wondering why you suggested to use V8 instead of QtScript?
  is it a module that will be dropped in a near future?

 There is already a JavaScript interpreter inside the QtBase repository, so
 why pull in another one if you don't have too?
 The QtScript module will not be going away, but as it looks today, we will
 not be investing heavily into it either.

 -
 Gunnar

 
  Best regards,
  Sylvain
 
  On Mon, Sep 12, 2011 at 10:40 AM, gunnar.sle...@nokia.com wrote:
  The merge will happen tomorrow morning, Oslo time.
 
  On Sep 5, 2011, at 11:41 AM, ext gunnar.sle...@nokia.com wrote:
 
   Hi,
  
   We are getting closer to the point where we integrate the Qt refactor
   branch. What this branch does is that it separates most of Qt's desktop
   widgets along with a number of currently less actively developed modules
   into their own libraries, in accordance with the module maturity list we
   published earlier this year and in line with Lars' blog about the intent 
   of
   Qt 5. The over all goal is to simplify our graphics stack, minimize our
   platform/device dependent layer (lighthouse integration) and make sure 
   QML
   and OpenGL are prime citizens in Qt 5.
  
   These branches are not at feature parity with Qt 4.7 yet, and nor will
   they be for a quite some time. But we want to push the changes into the
   master codeline so that the structure we have mentioned in blogs and 
   other
   forums gets visible in terms of code.
  
   Currently we have official support for single-window, QML 2 based on
   OpenGL on Linux/X11, Linux/XCB, Linux/Wayland and Mac OS X. There is some
   rudimentary support for the same setup on Windows, but it is still work 
   in
   progress. Our stack works on top of Software Mesa (very slow), LLVMpipe
   (very fast) in addition to real OpenGL hardware (usually fastest).
  
   Standard widget based applications still works, but they are not our
   current priority. We will pick this up once the QML 2 stack is more
   complete.
  
   We're expecting to merge into master in 1-2 weeks time.
  
   What are the changes in practice?
   - code that use widgets need to add QT += widgets in their .pro file
   - code that includes QtGui/QLabel or similar needs to be updated to
   QtWidgets/QLabel. The helper script fixqt4headers in QTDIR/bin does 
   this
   for you. Run it in the root directory and you are done.
   - There is a new suite of OpenGL classes inside QtGUI, named
   QOpenGLXxx which integrates tightly with lighthouse. To keep changes to
   existing code minimal, we decided to keep the existing libQtOpenGL 
   classes
   pretty much as is without any changes, and rather introduce new classes 
   in
   QtGui for the classes we wanted.
   - Printing support has been moved into its own library,
   libQtPrintSupport. We have a long term plan of creating a better printing
   API, covered inhttps://bugreports.qt.nokia.com//browse/QTBUG-19951, so we
   have spent some effort in removing the dependency on the current API's 
   from
   the Qt essentials. The API is unchanged.
  
  
   Can I expect any performance changes?
   - No. This is about removing a large chunk of code to make our stack
   simpler to maintain and to have smaller footprint.
  
  
   What can I plan for?
   - In new projects, see if you can use QML 2 instead of QWidgets.
   - In new projects, see if you can use QML 2 instead of QML 1.
   - In new projects, see if you can use V8 instead of QtScript.
   (QJSValue and QJSEngine classes in libQtDeclarative)
   - In new projects, see if you can use OpenGL functionality in QtGui
   instead of libQtOpenGL.so
  
  
   What does this means 

Re: [Qt5-feedback] Heads up: Merging refactor branches into master

2011-09-13 Thread Sylvain Pointeau


 ok thank you for the clarification. I think the message would have been
 better to use the new V8 Qt bridge instead of linking directly with V8
 (which is a massive work).


Reading again the email from Gunnar, he told exactly that but I
misunderstood. My apologies.
___
Qt5-feedback mailing list
Qt5-feedback@qt.nokia.com
http://lists.qt.nokia.com/mailman/listinfo/qt5-feedback


Re: [Qt5-feedback] Heads up: Merging refactor branches into master

2011-09-13 Thread Olivier Goffart
On Tuesday 13 September 2011 10:42:53 Gábor Lehel wrote:
 On Tue, Sep 13, 2011 at 3:51 AM,  aaron.kenn...@nokia.com wrote:
  Hi,
  On 12/09/2011, at 11:04 PM, ext Sylvain Pointeau wrote:
  
  QtScript should be using V8 and provide all the facilities of binding
  QtObjects...
  (it is using JavascriptCore if I remember well correct?)
  
  While this would be true in an ideal world, after much prototyping it
  was
  decided that porting the entire QtScript API to V8 and preserving its
  exact semantics was simply not possible.  As a compromise, we have left
  the QtScript module untouched to preserve 100% compatibility for
  existing applications, and introduced a parallel API against V8 (the
  QJS* classes) that is similar enough that we expect most applications -
  and almost all new applications - to be able to move to it instead.
 
 Keeping 100% compatibility is a requirement even with the break to Qt5?

Yes, keeping as much source compatibility as possible, in order to make 
possible to upgrade projects with millions of lines of code.



___
Qt5-feedback mailing list
Qt5-feedback@qt.nokia.com
http://lists.qt.nokia.com/mailman/listinfo/qt5-feedback