Re: [Development] Nokia/Digia copyright in PDF produced by QPrinter

2013-10-10 Thread Knoll Lars
On 10/7/13 12:35 PM, David Boddie dav...@met.no wrote:

On Sun Oct 6 20:51:40 CEST 2013, Lars Knoll wrote:

 The producer field in PDF is generally used for marking what has been
used
 to produce the PDF. In Qt 5 this reads:

xprintf(\n/Producer );
printString(QString::fromLatin1(Qt  QT_VERSION_STR  (C) 2012 Digia
 Plc and/or its subsidiary(-ies)));

 which gives inside the PDF:

 /Producer (Qt 5.1.1 \(C\) 2012 Digia Plc and/or its subsidiary\(-ies\))


 I think this is fully correct, and doesn't assert any copyright over the
 generated PDF. It states that the PDF got produced by the PDF generator
of
 Qt 5.1.1, which is (C) Digia.

While this interpretation may be valid, it is unusual to put the
copyright of
the creation tool in the Producer string. I can find documents with the
following
Producer strings on my disk:

(AFPL Ghostscript 8.54)
(Acrobat 5.0 Image Conversion Plug-in for Macintosh)
(Adobe PDF library 4.800)
(Aladdin Ghostscript 6.01)
(GNU Ghostscript 7.07)
(GPL Ghostscript 9.05)
(ImageMagick 6.3.8 01
(Inkscape inkscape 0.44.1)
(LaTeX with hyperref)
(Mac OS X 10.5.8 Quartz PDFContext)
(MiKTeX pdfTeX-1.40.9)
(Microsoft� Publisher 2010)
(cairo 1.9.5 (http:
(pdfTeX-2.00.0)
(pdfeTeX-1.403)
(xdvipdfmx \(0.7.5\))

The only two that I found that included a copyright symbol were Qt and
Microsoft Word.
The above Microsoft Publisher string presumably includes a registered
trademark symbol,
which is more common.

True. I was mainly pointing out that I don't think the copyright would
extend to the document. I don't mind removing it, but I'd like to have the
producer point to Qt by default.

I suggest removing the Producer copyright string to avoid confusion since
it is clear
that Digia doesn't seek to claim copyright on user-generated content.
Along the same
lines, it might be useful to add a setProducer() function to QPrinter for
applications
that create PDFs as a key part of their functionality.

Both are fine for me, a patch is welcome :)

Cheers,
Lars

___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


[Development] Proposal: Disable ActiveQt from MinGW

2013-10-10 Thread Koehne Kai
Hi,

I'm wondering whether we should remove ActiveQt from the MinGW binary packages, 
and skip it by default if we build for MinGW.

I'm not an expert on ActiveQt, but my understanding is that it's of minor use 
without an IDL compiler. MinGW doesn't offer one, which is why all examples 
except the 'webbrowser' one are skipped for MinGW ... and that one crashes:

https://bugreports.qt-project.org/browse/QTBUG-32140

So, any thoughts on this? Surely the bug above mentioned can be fixed, but is 
there any use of shipping ActiveQt for MinGW if there is no idl compiler? I 
understood you can't just use the Microsoft midl one ...

Regards

Kai
-- 
   Kai Köhne, Senior Software Engineer - Digia, Qt
   Digia Germany GmbH, Rudower Chaussee 13, D-12489 Berlin
   Geschäftsführer: Mika Pälsi, Juha Varelius, Anja Wasenius
   Sitz der Gesellschaft: Berlin. USt-IdNr: DE 286 306 868
   Registergericht: Amtsgericht Charlottenburg, HRB 144331 B


___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Proposal: Disable ActiveQt from MinGW

2013-10-10 Thread Pau Garcia i Quiles
Hello,

Wine provides an IDL compiler, which has been adopted my mingw-w64:

http://sourceforge.net/p/mingw-w64/code/HEAD/tree/trunk/mingw-w64-tools/widl/

Mozilla is using it:

https://developer.mozilla.org/en/docs/Cross_Compile_Mozilla_for_Mingw32#Install_widl_(optional)




On Thu, Oct 10, 2013 at 11:24 AM, Koehne Kai kai.koe...@digia.com wrote:

 Hi,

 I'm wondering whether we should remove ActiveQt from the MinGW binary
 packages, and skip it by default if we build for MinGW.

 I'm not an expert on ActiveQt, but my understanding is that it's of minor
 use without an IDL compiler. MinGW doesn't offer one, which is why all
 examples except the 'webbrowser' one are skipped for MinGW ... and that one
 crashes:

 https://bugreports.qt-project.org/browse/QTBUG-32140

 So, any thoughts on this? Surely the bug above mentioned can be fixed, but
 is there any use of shipping ActiveQt for MinGW if there is no idl
 compiler? I understood you can't just use the Microsoft midl one ...

 Regards

 Kai
 --
Kai Köhne, Senior Software Engineer - Digia, Qt
Digia Germany GmbH, Rudower Chaussee 13, D-12489 Berlin
Geschäftsführer: Mika Pälsi, Juha Varelius, Anja Wasenius
Sitz der Gesellschaft: Berlin. USt-IdNr: DE 286 306 868
Registergericht: Amtsgericht Charlottenburg, HRB 144331 B


 ___
 Development mailing list
 Development@qt-project.org
 http://lists.qt-project.org/mailman/listinfo/development




-- 
Pau Garcia i Quiles
http://www.elpauer.org
(Due to my workload, I may need 10 days to answer)
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


[Development] Qt 5.2 Testing

2013-10-10 Thread Motyka Rafal
Hello,

It's time to test Beta 1 candidate packages to make sure that they are as good 
as possible.
Could you help by testing them?

  1.  Beta 1 packages are available here (please take the latest ones; Linux 
and Mac available):
http://download.qt-project.org/snapshots/qt/5.2/5.2.0-beta1/http://download.qt-project.org/development_releases/qt/5.2/5.2.0-alpha/
  2.  Qt bug reports should be reported in JIRA:
https://bugreports.qt-project.org/
  3.  The Sanity Test Guidelines can be used during testing:
http://qt-project.org/wiki/Sanity-Test-Guidelines
  4.  Feel free to report your testing effort via:
http://testresults.qt-project.org/forms/release-testing/

Thanks,

/Rafal





Rafal Motyka
Quality Assurance
Digia, Qt



Email: rafal.mot...@digia.commailto:forename.surn...@digia.com
Mobile: +47 95005389
http://qt.digia.com
Qt Blog: http://blog.qt.digia.com/
Qt Facebook: www.facebook.com/qt
Qt Twitter: www.twitter.com/qtcommercial


--

PRIVACY AND CONFIDENTIALITY NOTICE

This message and any attachments are intended only for use by the named 
addressee and may contain privileged and/or confidential information. If you 
are not the named addressee you should not disseminate, copy or take any action 
in reliance on it. If you have received this message in error, please contact 
the sender immediately and delete the message and any attachments accompanying 
it. Digia Plc does not accept liability for any corruption, interception, 
amendment, tampering or viruses occurring to this message.

-

___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Qt 5.2 Testing

2013-10-10 Thread p10
On Thu, 2013-10-10 at 10:11 +, Motyka Rafal wrote:
 Hello,
 
 It's time to test Beta 1 candidate packages to make sure that they are
 as good as possible.
 Could you help by testing them?
 
  1. Beta 1 packages are available here (please take the latest
 ones; Linux and Mac available): 
 http://download.qt-project.org/snapshots/qt/5.2/5.2.0-beta1/
  2. Qt bug reports should be reported in JIRA:
 https://bugreports.qt-project.org/
  3. The Sanity Test Guidelines can be used during testing:
 http://qt-project.org/wiki/Sanity-Test-Guidelines
  4. Feel free to report your testing effort via:
 http://testresults.qt-project.org/forms/release-testing/
 
 Thanks,
 
 /Rafal
  
 

I have to mention that your link
http://download.qt-project.org/snapshots/qt/5.2/5.2.0-beta1/
actually points to 
http://download.qt-project.org/development_releases/qt/5.2/5.2.0-alpha/
don't know how that happened.

Petko

___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Qt 5.2 Testing

2013-10-10 Thread p10

First thing to mention - I could not deselect QtCreator (or Tools ) from
the installation (Manjaro/GNOME environment , I don't know if that
matters) .

Secondly : Could not load the following plugins : Help
Details:
/home/p10/Qt5.2.0/Tools/QtCreator/lib/qtcreator/plugins/QtProject/libHelp.so: 
Cannot load library 
/home/p10/Qt5.2.0/Tools/QtCreator/lib/qtcreator/plugins/QtProject/libHelp.so: 
(libudev.so.0: cannot open shared object file: No such file or directory)

3.There are no examples present , and Creator crashes when I search for
examples but , that's probably because of the lack of Help plugin.

4.This bug (I just filed it,though it's been around for some time now) : 
https://bugreports.qt-project.org/browse/QTBUG-34005 .

That's pretty much it for now. 

Petko

On Thu, 2013-10-10 at 10:11 +, Motyka Rafal wrote:
 Hello,
 
 It's time to test Beta 1 candidate packages to make sure that they are
 as good as possible.
 Could you help by testing them?
 
  1. Beta 1 packages are available here (please take the latest
 ones; Linux and Mac available): 
 http://download.qt-project.org/snapshots/qt/5.2/5.2.0-beta1/
  2. Qt bug reports should be reported in JIRA:
 https://bugreports.qt-project.org/
  3. The Sanity Test Guidelines can be used during testing:
 http://qt-project.org/wiki/Sanity-Test-Guidelines
  4. Feel free to report your testing effort via:
 http://testresults.qt-project.org/forms/release-testing/
 
 Thanks,
 
 /Rafal




___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Qt 5.2 Testing

2013-10-10 Thread p10
Oh , sorry ,I'll use the form for reporting, I didn't see it on first
glimpse.

On Thu, 2013-10-10 at 10:11 +, Motyka Rafal wrote:
 Hello,
 
 It's time to test Beta 1 candidate packages to make sure that they are
 as good as possible.
 Could you help by testing them?
 
  1. Beta 1 packages are available here (please take the latest
 ones; Linux and Mac available): 
 http://download.qt-project.org/snapshots/qt/5.2/5.2.0-beta1/
  2. Qt bug reports should be reported in JIRA:
 https://bugreports.qt-project.org/
  3. The Sanity Test Guidelines can be used during testing:
 http://qt-project.org/wiki/Sanity-Test-Guidelines
  4. Feel free to report your testing effort via:
 http://testresults.qt-project.org/forms/release-testing/
 
 Thanks,
 
 /Rafal
  



___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Qt 5.2 Testing

2013-10-10 Thread Koehne Kai

 -Original Message-
 From: development-bounces+kai.koehne=digia@qt-project.org
 [mailto:development-bounces+kai.koehne=digia@qt-project.org] On
 Behalf Of p10
 Sent: Thursday, October 10, 2013 1:18 PM
 Cc: development@qt-project.org
 Subject: Re: [Development] Qt 5.2 Testing
 
 
 First thing to mention - I could not deselect QtCreator (or Tools ) from the
 installation (Manjaro/GNOME environment , I don't know if that
 matters) .

That's by design. The Qt versions need to register themselves with Qt Creator, 
and therefore require it. 

The alternative would be to accept that if you say install Qt first, and then 
later on Qt Creator, there's no automatically configured Kit for this version 
in Qt Creator. Or we invent some more complicated  mechanism , like a central 
registry ...

 Secondly : Could not load the following plugins : Help
 Details:
 /home/p10/Qt5.2.0/Tools/QtCreator/lib/qtcreator/plugins/QtProject/libHelp
 .so: Cannot load library
 /home/p10/Qt5.2.0/Tools/QtCreator/lib/qtcreator/plugins/QtProject/libHelp
 .so: (libudev.so.0: cannot open shared object file: No such file or directory)

That's probably a webkit dependency ... did we require libudev in previous 
installers? 

Regards

Kai 
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Qt 5.2 Testing

2013-10-10 Thread Raul Metsma
On windows cmake cannot find dll-s again
Had to change QtCoreConfig.cmake and other modules line 31
set(imported_location ${_qt5Core_install_prefix}/lib/${LIB_LOCATION})
to
set(imported_location ${_qt5Core_install_prefix}/bin/${LIB_LOCATION})

and on mac cmake complains missing GL framewroks
workaround added ${CMAKE_OSX_SYSROOT}/ to path
Qt5GuiConfigExtras.cmake line 64
_qt5gui_find_extra_libs(OPENGL OpenGL;AGL  
/System/Library/Frameworks/OpenGL.framework/Headers;/System/Li..
_qt5gui_find_extra_libs(OPENGL OpenGL;AGL  
/${CMAKE_OSX_SYSROOT}/System/Library/Frameworks/OpenGL.framework/Headers;/${CMAKE_OSX_SYSROOT}/System/Li..

Raul


On Oct 10, 2013, at 3:03 PM, Koehne Kai kai.koe...@digia.com wrote:

 
 -Original Message-
 From: development-bounces+kai.koehne=digia@qt-project.org
 [mailto:development-bounces+kai.koehne=digia@qt-project.org] On
 Behalf Of p10
 Sent: Thursday, October 10, 2013 1:18 PM
 Cc: development@qt-project.org
 Subject: Re: [Development] Qt 5.2 Testing
 
 
 First thing to mention - I could not deselect QtCreator (or Tools ) from the
 installation (Manjaro/GNOME environment , I don't know if that
 matters) .
 
 That's by design. The Qt versions need to register themselves with Qt 
 Creator, and therefore require it. 
 
 The alternative would be to accept that if you say install Qt first, and then 
 later on Qt Creator, there's no automatically configured Kit for this version 
 in Qt Creator. Or we invent some more complicated  mechanism , like a central 
 registry ...
 
 Secondly : Could not load the following plugins : Help
 Details:
 /home/p10/Qt5.2.0/Tools/QtCreator/lib/qtcreator/plugins/QtProject/libHelp
 .so: Cannot load library
 /home/p10/Qt5.2.0/Tools/QtCreator/lib/qtcreator/plugins/QtProject/libHelp
 .so: (libudev.so.0: cannot open shared object file: No such file or 
 directory)
 
 That's probably a webkit dependency ... did we require libudev in previous 
 installers? 
 
 Regards
 
 Kai 
 ___
 Development mailing list
 Development@qt-project.org
 http://lists.qt-project.org/mailman/listinfo/development

___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Disabling exception support in QtCore?

2013-10-10 Thread Olivier Goffart
On Thursday 03 October 2013 10:38:59 Thiago Macieira wrote:
 On quinta-feira, 3 de outubro de 2013 10:36:44, Olivier Goffart wrote:
   I dislike allowing this via the signal-slot mechanism because I see
   throwing from a slot as incompatible with the connection semantics.
   
   That would mean any signal could throw ANY exception. It would also
   preempt
   the execution of further slots, which might be important.
   
   Usually the person who connects a signal to a slot is a completely
   different developer than who wrote the signal or the slot.
  
  I think your assumptions are false.
  When using signals and slot in an application one write both the signal
  and
  the slot at the same time, to wire two part of that same appliation.
 
 That's not at all true. If it were, we wouldn't have signals or slots in our
 public API. If people were supposed to write the signals and the slots they
 connect, all our signals and slots would be private.

I did not said that the signal and the slot were always written by the same 
person.  And I explicitly said for an application, and you are talking about 
libraries.


 Since we have public signals and public slots and other libraries do the
 same, it stands to reason that a third-party is expected to connect them.
 Moreover, it stands to reason that a third-party might connect a
 fourth-party slot to one of our (first-party) signals.

Your logic is flawed. The fact that some signals cannot be connected to slots 
that do not throw exceptions does not implies that no signals can be connected 
to slot that throw exceptions.

When developing an application, developer who throw exceptionshould know what 
they are doing. It is not allowed to connect a signal from a exception unsafe 
class to a slot that may throw exception.
But if they know that the class is exception safe, it should be allowed for 
them to connect signal from this class to slots that throw exceptions.



   That would mean people who do connections should have to pay attention
   to
   what slots throw and know what signals can cope with exceptions being
   thrown.
  
  Signals and slots are not different from normal functions in that respect
  (especially virtual functions)
  One need to take care who calls your function when you throw exceptions.
 
 I agree.
 
 Which is why I am saying that we need to establish rules for when exceptions
 would be allowed to escape a slot.
 
 Right now, our rule is: Qt code is noexcept. If your slot throws when called
 by Qt, the behaviour is undefined. If it throws when something else calls
 it, we make no statements.
 
 If you want to change that rule, then we can discuss it.

I want to change that rule.

Unles specified here, Qt code is noexcept. 
The only places where exceptions are allowed are:
 - Exceptions thrown by a slot are propagated to the signal connected with 
direct connection
 - Exceptions propagated through a call to invokeMethod are propagated from 
the method to the call 
 - Exceptions thrown from QtConcurrent will be by re thrown when calling  the 
QFuture API if the exception is a subclass of QException
 
(Did I miss something?)

-- 
Olivier

Woboq - Qt services and support - http://woboq.com - http://code.woboq.org



___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


[Development] ABI of deprecated supportsThreadedFontRendering()

2013-10-10 Thread Harri Porten
Hi!

I just learnt about what looks like an ABI regression in Qt 5.2:

The function QFontDatabase::supportsThreadedFontRendering() got deprecated 
in 5.2 with commit b0b786a2f05e9451a65519ab8904f55c35f51b7d:

  -static bool supportsThreadedFontRendering();
  +#if QT_DEPRECATED_SINCE(5, 2)
  +QT_DEPRECATED static inline bool supportsThreadedFontRendering() { 
return true; }
  +#endif

At the same time it got inlined. At least with MinGW this made the symbol 
go away. While e.g. MSVC still exports it.

Now I don't know the exact strategy pursured by QT_DEPRECATED but I assume 
that the function's symbol should not disappear from the 5.2 ABI? If so, 
I wonder whether removing the inline will already do the job.

Harri.
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Proposal: Disable ActiveQt from MinGW

2013-10-10 Thread Koehne Kai

 -Original Message-
 From: Pau Garcia i Quiles [mailto:pgqui...@elpauer.org]
 Sent: Thursday, October 10, 2013 11:44 AM
 To: Koehne Kai
 Cc: development@qt-project.org
 Subject: Re: [Development] Proposal: Disable ActiveQt from MinGW
 
 Hello,
 
 Wine provides an IDL compiler, which has been adopted my mingw-w64:
 
 http://sourceforge.net/p/mingw-w64/code/HEAD/tree/trunk/mingw-w64-
 tools/widl/
 

Fair enough. We're even shipping it in the mingw-builds toochain, although it's 
named 'i686-w64-mingw32-widl' :)

Let's see, maybe I can get the combo even working...

Regards

Kai

(who didn't have anything to do with ActiveQt / COM since a decade, but well 
...)

 Mozilla is using it:
 
 https://developer.mozilla.org/en/docs/Cross_Compile_Mozilla_for_Mingw3
 2#Install_widl_(optional)
 
 
 
 
 
 On Thu, Oct 10, 2013 at 11:24 AM, Koehne Kai kai.koe...@digia.com
 wrote:
 
 
   Hi,
 
   I'm wondering whether we should remove ActiveQt from the
 MinGW binary packages, and skip it by default if we build for MinGW.
 
   I'm not an expert on ActiveQt, but my understanding is that it's of
 minor use without an IDL compiler. MinGW doesn't offer one, which is why
 all examples except the 'webbrowser' one are skipped for MinGW ... and
 that one crashes:
 
   https://bugreports.qt-project.org/browse/QTBUG-32140
 
   So, any thoughts on this? Surely the bug above mentioned can be
 fixed, but is there any use of shipping ActiveQt for MinGW if there is no idl
 compiler? I understood you can't just use the Microsoft midl one ...
 
   Regards
 
   Kai
   --
  Kai Köhne, Senior Software Engineer - Digia, Qt
  Digia Germany GmbH, Rudower Chaussee 13, D-12489 Berlin
  Geschäftsführer: Mika Pälsi, Juha Varelius, Anja Wasenius
  Sitz der Gesellschaft: Berlin. USt-IdNr: DE 286 306 868
  Registergericht: Amtsgericht Charlottenburg, HRB 144331 B
 
 
   ___
   Development mailing list
   Development@qt-project.org
   http://lists.qt-project.org/mailman/listinfo/development
 
 
 
 
 
 --
 Pau Garcia i Quiles
 http://www.elpauer.org
 (Due to my workload, I may need 10 days to answer)
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] ABI of deprecated supportsThreadedFontRendering()

2013-10-10 Thread Olivier Goffart
On Thursday 10 October 2013 15:04:40 Harri Porten wrote:
 Hi!
 
 I just learnt about what looks like an ABI regression in Qt 5.2:
 
 The function QFontDatabase::supportsThreadedFontRendering() got deprecated
 in 5.2 with commit b0b786a2f05e9451a65519ab8904f55c35f51b7d:
 
   -static bool supportsThreadedFontRendering();
   +#if QT_DEPRECATED_SINCE(5, 2)
   +QT_DEPRECATED static inline bool supportsThreadedFontRendering() {
 return true; } +#endif
 
 At the same time it got inlined. At least with MinGW this made the symbol
 go away. While e.g. MSVC still exports it.
 
 Now I don't know the exact strategy pursured by QT_DEPRECATED but I assume
 that the function's symbol should not disappear from the 5.2 ABI? If so,
 I wonder whether removing the inline will already do the job.

Hi,

Thanks for spotting this issue.

That patch indeed removed a symbol. 

Removing inline is not enough. One need to put back the definition in the 
.cpp file.


Please fill a bug report. (or a patch :-))

-- 
Olivier

Woboq - Qt services and support - http://woboq.com - http://code.woboq.org
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Disabling exception support in QtCore?

2013-10-10 Thread Olivier Goffart
On Thursday 10 October 2013 15:14:02 André Somers wrote:
 Op 10-10-2013 14:53, Olivier Goffart schreef:
  On Thursday 03 October 2013 10:38:59 Thiago Macieira wrote:
  On quinta-feira, 3 de outubro de 2013 10:36:44, Olivier Goffart wrote:
  I dislike allowing this via the signal-slot mechanism because I see
  throwing from a slot as incompatible with the connection semantics.
  
  That would mean any signal could throw ANY exception. It would also
  preempt
  the execution of further slots, which might be important.
  
  Usually the person who connects a signal to a slot is a completely
  different developer than who wrote the signal or the slot.
  
  I think your assumptions are false.
  When using signals and slot in an application one write both the signal
  and
  the slot at the same time, to wire two part of that same appliation.
  
  That's not at all true. If it were, we wouldn't have signals or slots in
  our public API. If people were supposed to write the signals and the
  slots they connect, all our signals and slots would be private.
  
  I did not said that the signal and the slot were always written by the
  same
  person.  And I explicitly said for an application, and you are talking
  about libraries.
 
 Even for applications this statement is nonsense. For all but trivial
 applications that during their lifetime only get worked on by a single
 developer, the likelyhood of the same person always writing the slots
 for every signal goes to 0 rapidly with the age and number of developers
 on a project.

That's not what I said.
And regardless, I don't think it has any relevance for the problem in 
question.

Within a code base that uses exception, developers should know which part of 
the code is exception safe and which part of the code can throw exception.  
And they know they should not call a function that can throw an exception from 
code that is not exception safe. (Hence they don't connect a signal from code 
that is not exception safe to a slot that throw an exception)

-- 
Olivier

Woboq - Qt services and support - http://woboq.com - http://code.woboq.org


___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Split submission

2013-10-10 Thread Samuel Gaist

On 10 oct. 2013, at 01:49, Thiago Macieira wrote:

 On quinta-feira, 10 de outubro de 2013 01:36:18, Samuel Gaist wrote:
 Hi,
 
 I just started to split a submission in several patches like Stephen Kelly
 taught me.
 
 There's just one thing I forgot to ask him: how should the patches be
 organized and sent since when broken down (it should be three patches), the
 last one would only apply once the second patch is applied ?
 
 The first and second part can be separated (so two different submissions)
 since they solve two different but related problems (the second being
 triggered when solving the first).
 
 Also what would be the best/recommended setup git wise ? Should I make a
 topic branch from my topic branch ?
 
 The easiest is to just git push all three. They will be reviewed 
 independently. And you are the person to hit the stage button, so you should 
 know which one needs to go in which order.
 
 Now, the problem is when the second or third patch needs to be updated. You 
 should avoid updating the first (and second) patch(es) when submitting the 
 update, unless you actually want that. To do that, you should check out the 
 parent commit and then cherry-pick the new change.
 
 Steps:
 1) open the review page in Gerrit
 2) copy the SHA-1 of the latest patch
 3) in your shell, right:
   git checkout [paste the SHA-1]~
 remember to include the ~ at the end
 4)git cherry-pick [your new commit]
 5)git gpush :stable
 
 or, if you're using my gerrit-pick script, you can do it in one command:
 
   git gp -t stable -b [paste here]~ [your commit]
 
 -- 
 Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center
 ___
 Development mailing list
 Development@qt-project.org
 http://lists.qt-project.org/mailman/listinfo/development

Thank you for the instructions !

Is there already a wiki describing that ? Something like Advanced Gerrit 
Usage ?

That might come handy for people not having their git-fu black-belt yet
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Split submission

2013-10-10 Thread Samuel Gaist
Thank you for the informations and tips !

On 10 oct. 2013, at 07:50, Ziller Eike wrote:

 Hi,
 
 you can just have the patches sequentially in your local branch and push 
 these together (git push gerrit HEAD:refs/for/dev or whereever that should 
 go, that pushes all your local commits up to HEAD). Gerrit shows dependency 
 information in the changes if you push them together, i.e. the 'later' 
 changes show the changes they depend on in the dependencies section of the 
 page. Gerrit never prevents that changes are (tried to be) submitted in a 
 different order though, even with topic branches afaik. If you want to make 
 sure that your reviewers are not confused (if you haven't talked to them 
 already anyhow), you can add a comment about the dependency too.
 
 Br, Eike
 
 --
 Eike Ziller
 Senior Software Engineer
 
 Digia Germany GmbH
 Rudower Chaussee 13, D-12489 Berlin
 Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg, 
 HRB 144331 B,
 Geschäftsführer: Mika Pälsi, Juha Varelius, Anja Wasenius
 
 
 From: development-bounces+eike.ziller=digia@qt-project.org 
 [development-bounces+eike.ziller=digia@qt-project.org] on behalf of 
 Samuel Gaist [samuel.ga...@edeltech.ch]
 Sent: 10 October 2013 01:36
 To: development@qt-project.org
 Subject: [Development] Split submission
 
 Hi,
 
 I just started to split a submission in several patches like Stephen Kelly 
 taught me.
 
 There's just one thing I forgot to ask him: how should the patches be 
 organized and sent since when broken down (it should be three patches), the 
 last one would only apply once the second patch is applied ?
 
 The first and second part can be separated (so two different submissions) 
 since they solve two different but related problems (the second being 
 triggered when solving the first).
 
 Also what would be the best/recommended setup git wise ? Should I make a 
 topic branch from my topic branch ?
 
 Thank you
 ___
 Development mailing list
 Development@qt-project.org
 http://lists.qt-project.org/mailman/listinfo/development
 

___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Disabling exception support in QtCore?

2013-10-10 Thread BRM
On Thursday, October 10, 2013 9:26 AM, Olivier Goffart oliv...@woboq.com 
wrote:
 
 On Thursday 10 October 2013 15:14:02 André Somers wrote:
  Op 10-10-2013 14:53, Olivier Goffart schreef:
   On Thursday 03 October 2013 10:38:59 Thiago Macieira wrote:
   On quinta-feira, 3 de outubro de 2013 10:36:44, Olivier Goffart wrote:
   I dislike allowing this via the signal-slot mechanism because I see
   throwing from a slot as incompatible with the connection semantics.
   
   That would mean any signal could throw ANY exception. It would also
   preempt
   the execution of further slots, which might be important.
   
   Usually the person who connects a signal to a slot is a completely
   different developer than who wrote the signal or the slot.
   
   I think your assumptions are false.
   When using signals and slot in an application one write both the signal
   and
   the slot at the same time, to wire two part of that same appliation.
   
   That's not at all true. If it were, we wouldn't have signals or slots in
   our public API. If people were supposed to write the signals and the
   slots they connect, all our signals and slots would be private.
   
   I did not said that the signal and the slot were always written by the
   same
   person.  And I explicitly said for an application, and you are talking
   about libraries.
  
  Even for applications this statement is nonsense. For all but trivial
  applications that during their lifetime only get worked on by a single
  developer, the likelyhood of the same person always writing the slots
  for every signal goes to 0 rapidly with the age and number of developers
  on a project.
 
 That's not what I said.

It may not have been what you said, but it is what would occur.

 And regardless, I don't think it has any relevance for the problem in 
 question.

Quite relevant.
 
 Within a code base that uses exception, developers should know which part of 
 the code is exception safe and which part of the code can throw exception.  
 And they know they should not call a function that can throw an exception 
 from 
 code that is not exception safe. (Hence they don't connect a signal from code 
 that is not exception safe to a slot that throw an exception)
 

So now you have to a wrapper slot to wrap exceptions for any object from a 
library
that you may interact with, or potentially any other code in your own project.

I have personnally maintained a 400k+ SLOC codebase based on QT.
It made extensive use of Signals/Slots between objects. Even though I was
pretty much the only developer working on it, I still had to quite often track
through signals/slots to make sure I understood things. Not because the codebase
was unclear, but because it was quite non-trivial. It would have been an 
extensive
PITA to try to know which ones I could or could not use exceptions with.

I'm no compiler expert - but without help from the compiler to make sure that 
kind
of things doesn't happen - e.g. marking signals/slots as Q_EXCEPTION_THROW
and Q_EXCEPTION_SAFE and having some part of the compiler chain detect
and at minimal warn of issues - it will not be feasible.

$0.02

Ben
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Disabling exception support in QtCore?

2013-10-10 Thread Olivier Goffart
On Thursday 10 October 2013 08:22:44 BRM wrote:

 I have personnally maintained a 400k+ SLOC codebase based on QT.
 It made extensive use of Signals/Slots between objects. Even though I was
 pretty much the only developer working on it, I still had to quite often
 track through signals/slots to make sure I understood things. Not because
 the codebase was unclear, but because it was quite non-trivial. It would
 have been an extensive PITA to try to know which ones I could or could not
 use exceptions with.
 
 I'm no compiler expert - but without help from the compiler to make sure
 that kind of things doesn't happen - e.g. marking signals/slots as
 Q_EXCEPTION_THROW and Q_EXCEPTION_SAFE and having some part of the compiler
 chain detect and at minimal warn of issues - it will not be feasible.


Programming is not easy.
Now, our goal is to make programming with Qt as easy as possible.

Tell me what makes programming easier:

1) We forbid any use of exception in any slot connected to any signal.
 - Programmers that don't use exceptions don't care because it does not 
impact them.
 - Programmers that uses exception in their application to forward errors 
cannot use signals and slots to propagate exceptions from one object of their 
application to another anymore.

2) We allow slots to forward the exception to the signal.
- Programmers that don't use exceptions still don't care because it does 
not impact them.
- Programmers that use exceptions can hapilly let exceptions go from the 
slot to where the signal is emitted.


If you are not using exception now as I understand from your text above, then 
nothing changes for you.

However, someone who is using currently exceptions, they will have to change 
their code for more complicated code because we decided to forbid it (for 
their own good)

May I recall that exceptions through signals and slots always worked, and was 
used.And now you need to give a good reason to forbid it.
Reducing the size of QtCore might be a good reason,  but just saying it's for 
your own good is not.


-- 
Olivier

Woboq - Qt services and support - http://woboq.com - http://code.woboq.org


___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Disabling exception support in QtCore?

2013-10-10 Thread Knoll Lars
On 10/10/13 6:02 PM, Olivier Goffart oliv...@woboq.com wrote:

On Thursday 10 October 2013 08:22:44 BRM wrote:

 I have personnally maintained a 400k+ SLOC codebase based on QT.
 It made extensive use of Signals/Slots between objects. Even though I
was
 pretty much the only developer working on it, I still had to quite often
 track through signals/slots to make sure I understood things. Not
because
 the codebase was unclear, but because it was quite non-trivial. It would
 have been an extensive PITA to try to know which ones I could or could
not
 use exceptions with.
 
 I'm no compiler expert - but without help from the compiler to make sure
 that kind of things doesn't happen - e.g. marking signals/slots as
 Q_EXCEPTION_THROW and Q_EXCEPTION_SAFE and having some part of the
compiler
 chain detect and at minimal warn of issues - it will not be feasible.


Programming is not easy.
Now, our goal is to make programming with Qt as easy as possible.

Tell me what makes programming easier:

1) We forbid any use of exception in any slot connected to any signal.
 - Programmers that don't use exceptions don't care because it does
not 
impact them.
 - Programmers that uses exception in their application to forward
errors 
cannot use signals and slots to propagate exceptions from one object of
their 
application to another anymore.

2) We allow slots to forward the exception to the signal.
- Programmers that don't use exceptions still don't care because it
does 
not impact them.
- Programmers that use exceptions can hapilly let exceptions go from
the 
slot to where the signal is emitted.


If you are not using exception now as I understand from your text above,
then 
nothing changes for you.

However, someone who is using currently exceptions, they will have to
change 
their code for more complicated code because we decided to forbid it
(for 
their own good)

May I recall that exceptions through signals and slots always worked, and
was 
used.And now you need to give a good reason to forbid it.
Reducing the size of QtCore might be a good reason,  but just saying
it's for 
your own good is not.

Agree with Olivier.

Let's keep the level of support we had in Qt 4.x for throwing exceptions
from slots:

* It's undefined behaviour unless the place that emits the signal is
prepared to catch the exception.
* If a slot throws, no further slots connected to the signal will get
called
* throwing from any place that's connected to a signal defined in the Qt
libraries leads to undefined behaviour

The size reduction of QtCore is not a valid argument IMO. First of all
we're talking about a number below 10%, and secondly this number could be
reduced to almost 0 by making the build system for Qt Core only compile a
few selected files with exception support enabled.

Cheers,
Lars

___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Qt for Tizen Alpha 4 Released: Support for 3.0, New SDK, IVI Wayland

2013-10-10 Thread Jaroslaw Staniek
Update:
1. Video: Deploying Apps to Smartphone With Qt for Tizen SDK:
https://www.youtube.com/watch?v=aA-8h-Vh4I0
2. Video: Tizen IVI Device Powered By Qt  Wayland:
https://www.youtube.com/watch?v=5c35fqNZlmU

-- 
regards / pozdrawiam, Jaroslaw Staniek
 Kexi  Calligra  KDE | http://calligra.org/kexi | http://kde.org
 Qt for Tizen | http://qt-project.org/wiki/Tizen
 Qt Certified Specialist | http://www.linkedin.com/in/jstaniek
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Disabling exception support in QtCore?

2013-10-10 Thread Thiago Macieira
On quinta-feira, 10 de outubro de 2013 13:54:09, Alex Malyushytskyy wrote:
 It never worked.with other than direct connections.
 As I see it there is a simple choice either to provide indirect connections
 or propagate exceptions to signal. Otherwise you always have to assume that
 every slot is called the way you can't let exception leave slot anyway.

I don't mind complex rules. If anyone wants to use this feature, they have to 
know how it works.
-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center


signature.asc
Description: This is a digitally signed message part.
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development