[Development] Request for Volunteers - Qt 5.0.2 Testing

2013-02-22 Thread Motyka Rafal
Hello,

We're planning to start Qt 5.0.2 framework testing on the 7th of March 2013, 
before the final release.
I kindly ask all volunteers to send the answer to this email to me 
(rafal.mot...@digia.commailto:forename.surn...@digia.com).

Any help will be highly appreciated.

Best regards,

/Rafal



Rafal Motyka
QE Engineer
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


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


[Development] FW: Preparing Qt 5.0.2 release

2013-02-22 Thread Salovaara Akseli
Hi,

Merge from stable to release branch is now done.
Changes that are intended to get in for Qt 5.0.2 need to be pushed into release 
branch.

Br,
Akseli

 -Original Message-
 From: Salovaara Akseli
 Sent: 18. helmikuuta 2013 13:15
 To: releas...@qt-project.org; development@qt-project.org
 Subject: [Development] FW: Preparing Qt 5.0.2 release
 
 Hi,
 
 We are delaying move into 'release' branch from today 18th of February to
 Wednesday 20th of February aiming to have more fixes for Qt 5.0.2 release.
 After Wednesday 20th February any changes that are required to get in for
 5.0.2 need to be pushed into 'release' branch.
 
 Br,
 Akseli
 
  -Original Message-
  From: Salovaara Akseli
  Sent: 12. helmikuuta 2013 15:24
  To: development@qt-project.org
  Subject: [Development] Preparing Qt 5.0.2 release
 
  -Original Message-
  From: Iikka Eklund
  Sent: 12. helmikuuta 2013 12:47
  To: releas...@qt-project.org
  Subject: [Releasing] Preparing Qt 5.0.2 release
 
  Hi,
 
  Making of Qt 5.0.2 patch release has started:
 
  - Plan is to move into 'release' branch 18th February.
 So there is roughly 6 days left to get your fixes into 'stable'
  - After 18th February any changes that are required to get in for 5.0.2
 need to be pushed into 'release' branch. Release team will then
 decide if the change will be taken in (P0, P1)
  - First 5.0.2 offline installers for testing will become available
 into: releases.qt-project.org/digia/5.0.2/
  - Expected release time for 5.0.2 is in March
  - New reference installer is planned to be provided as well:
 Win8/msvc2012 64bit
 
 
 
 
  --
  Br,
  Mr. Iikka Eklund
  Senior software engineer
  Email: iikka.ekl...@digia.com
 
  Visit us at: www.digia.com or qt.digia.com
  --
  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.
  --
  ___
  Releasing mailing list
  releas...@qt-project.org
  http://lists.qt-project.org/mailman/listinfo/releasing
  ___
  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
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Qt 4.6.5 and 4.7.6 release candidates available

2013-02-22 Thread Giuseppe D'Angelo
On 21 February 2013 12:53, Turunen Tuukka tuukka.turu...@digia.com wrote:


 This is incorrect assumption as we have discussed this before making the
 RC1 - it just took a lot of time due to other release creation activities
 to continue the releasing work, so it seems that some persons (at least
 Thiago) just noticed it now when we are making RC2.

The problem is that you never announced the SHA1 of the commits of the
RC releases, and thus nobody immediately figured out that you were
going to release from the digia branches, not the official ones. (You
didn't even push the tags on the repository -- there are no v4.7.6-rc*
or v4.6.5-rc* around.)

What I do see instead that you *already pushed* the v4.7.6 and v4.6.5
tags without telling anyone, and those tags were created *more than
one week* before the first message of this thread (in which you
announced that you wanted to create release candidates):

 $ git show v4.7.6
 tag v4.7.6
 Tagger: Marko Valtanen marko.valta...@digia.com
 Date:   Wed Dec 12 17:04:36 2012 +0200

 Qt 4.7.6 opensource release

 commit 41d648720d9bd87381b85ade3da0d91456ff31e0 (tag: refs/tags/v4.7.6)

 $ git show v4.6.5
 tag v4.6.5
 Tagger: Marko Valtanen marko.valta...@digia.com
 Date:   Wed Dec 12 12:27:38 2012 +0200

 Qt 4.6.5 opensource release

 commit 63eb2e6a39c1a5bee6551cd6a7749a85856d5393 (tag: refs/tags/v4.6.5, 
 refs/remotes/origin/4.6-digia)

I don't have access to the reflog, but according to gitorious, they
have been pushed the same day at 15:04 / 15:07 CET. Also, v4.7.6 seems
to point at the wrong commit, as it's a commit outside any branch:

 $ git log --graph --oneline --decorate origin/4.7-digia v4.7.6
 * 41d6487 (tag: v4.7.6) Changes-4.7.6 file updated
 * 436cf69 Fix binary incompatibility between openssl versions
 | * 090ca16 (origin/4.7-digia) Changes-4.7.6 file updated
 | * 7ce4690 Fix binary incompatibility between openssl versions
 |/
 * b67ee40 updated LICENSE.PREVIEW.COMMERCIAL
 * cba3ada Nokia to Digia for LGPL-exception file

So at the very least (no matter what we decide to do with the version
numbering) that tag needs to be deleted and recreated. man git-tag at
On Re-tagging offers a nice email template you could use for the
purpose.

Cheers,
-- 
Giuseppe D'Angelo
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Evolving Qt's multithreading API

2013-02-22 Thread Sze Howe Koh
I'm not sure what you mean. OpenMP, Pthreads and Boost threads are
independent; there is no backend here.

Anyway, as Thiago mentioned in another post, OpenMP is not supported
on all the compilers that Qt supports, so we can't use it in Qt.
(http://openmp.org/wp/openmp-compilers/)


Regards,
Sze-Howe

On 22 February 2013 03:16, Ing. Reynier Pupo Gomez rgo...@uci.cu wrote:
 The only problem that I see in OpenMP is it backend, Pthread. I think actually
 Qt switch form PThread to boost threads. But on the other side the code
 injected for programing with OMP is very simple. It is possible to develop a
 secuential program and prepare for parallel use with non-intrusive directives
 depending on a compilation flag. Im just starting with this library, so I cant
 help so much.

 On Viernes, 22 de febrero de 2013 12:15:19 AM usted escribió:
 On 21 February 2013 02:31, Ing. Reynier Pupo Gómez rgo...@uci.cu wrote:
  What about using of OpenMP standard? It could be very usefull and well
  known
 
  by the C/C++ comunity.

 Thanks for the suggestion. I had a quick look, but it seems to be on
 the low-level side. I'm not sure if we want to use #pragmas for
 regular code...

 Have you had experience with it? Is it easy to use?


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


Re: [Development] Evolving Qt's multithreading API

2013-02-22 Thread Sze Howe Koh
On 20 February 2013 22:45, Sze Howe Koh szehowe@gmail.com wrote:
 Hi all,

 Some time ago there was some talk about improving Qt's multithreading
 API. I'm summarizing them here to stop them from fading into
 obscurity, and to see if there's any interest in following them up.

 Here are the tasks mentioned:
 - Replace/Rewrite QtConcurrent [2]
 - Create/Find a good API to replace QtConcurrent::run() for one-shot tasks 
 [1]
 - Find a third-party solution for high-level multithreading [2]
 - Find more uses for QFuture, outside of QtConcurrent [3]
 - Influence C++1y by creating a nice multithreading API [4]

 Some suggestions were raised:
 - Put a Qt-ish wrapper around TBB [1]
 - Integrate ThreadWeaver back into Qt? [2]

 Separately, someone was experimenting with ways to spawn a QObject in
 a secondary thread, without first constructing it in the current
 thread [5]


 Do you think any of these avenues are worth pursuing?

 I've had a quick look at TBB vs. ThreadWeaver. The latter specializes
 in task-oriented programming, while TBB is a more swiss-army-knife
 toolkit, which includes container-based operations similar to
 QtConcurrent. So, if we're to integrate 3rd-party option into Qt, TBB
 would be more worth it (although it'd involve more work too)

Actually, I just realized that the open-source flavour of TBB is
licensed under GPLv2 (http://threadingbuildingblocks.org/Licensing).
Doesn't that mean that Qt TBB, if it were to become reality, can't be
licensed under the LGPL?


 Regards,
 Sze-Howe

 [1] 
 http://lists.qt-project.org/pipermail/development/2012-November/007901.html
 [2] 
 http://lists.qt-project.org/pipermail/development/2012-November/007921.html
 [3] 
 http://lists.qt-project.org/pipermail/development/2012-November/007944.html
 [4] 
 http://lists.qt-project.org/pipermail/development/2012-November/007933.html
 [5] http://lists.qt-project.org/pipermail/interest/2013-January/005740.html
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Evolving Qt's multithreading API

2013-02-22 Thread André Somers
Op 22-2-2013 11:57, Sze Howe Koh schreef:
 On Feb 22, 2013 12:33 AM, Olivier Goffart oliv...@woboq.com wrote:
 Some more common use case would be (pseudo-code)

 auto watcher = new QFutureWatcher;
 QObject::connect(watcher, SIGNAL(finished()), myObject, SLOT(doStuff()));
 watcher-setFuture(QThrerad::run([]() { return computeStuff(); } ));
 // who deletes the watcher?
 If the caller creates the watcher, I think it's fine to let the caller
 delete it too. It's an ordinary C++ practice.
I don't really like the need to create a watcher in order to get a 
signal at all, to be honest. Never did.

My own implementation of a task-based system that I recently did, 
involved returning a QSharedPointerTask from the task manager. Task 
derives from QObject, and has signals and slots that can be used 
notification. It is similar to QThread, in that it lives in the thread 
that requested the task. It is inspired on QNetworkAccessManager, that 
immediately gives back an instance of a reply that you can either 
directly connect to or ignore.

Using a shared pointer gave me these advantages:
* No need for explicit deletes on either side: the requester can hold on 
to the pointer and use it directly, or use a generic signal from the 
task manager object that also contains a shared pointer to the same 
task. When nobody is interested in the task object any more, it is 
automatically deleted.
* Easily connect to signals like finished() or error() (though it would 
be nice if you could directly connect to a 
QSharedPointerQObjectDerivedClass instead of having to use .data() ); 
no need for a separate watcher object
* Value semantics, just like QFuture: a shared pointer is quite cheap to 
pass around

Just like QFuture, it is possible to wait for the task to finish when 
needed.

I'd really like to see such a structure in Qt, as generic as possible. 
Tasks are not only relevant in the context of threads, but also for 
things like network operations and perhaps even I/O operations, 
printing, etc.

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


Re: [Development] Setting the priority of bug reports created the Qt Support team

2013-02-22 Thread Vladimir Minenko
On 19.02.13 18:25, Frederik Gladhorn frederik.gladh...@digia.com wrote:
See also my mail from two weeks ago ([Development] issue tracker rights).

I think we need to make a few more adjustments and really need more
people 
with bug triaging rights.

Actually, there is a good reminder, since there were others concerns with
the way how bugs are currently triaged. Peter was commenting about labels,
for example.

I would like to bring up another aspect. We (Qt in BlackBerry) are
strongly considering to move known Qt issues from an internal tracker into
https://bugreports.qt-project.org/ and later on, redirect Qt related
issues reported by BackBerry developers into BlackBerry
https://bugreports.qt-project.org/ as well.

Our motivation for this is very simple: keep Qt bugs going to one place
and avoid fragmentation.

Handling a few BlackBerry related issues which were already posted on
https://bugreports.qt-project.org/, I started doubting if we can really
use https://bugreports.qt-project.org/ for operations. The major problem
is that the only what a normal user do is commenting on bugs. I know this
topic is not directly related to the actual posting by Andy. I just wanted
to raise my hand and underline that there are more triage related problems
with https://bugreports.qt-project.org/

-- 
Vladimir Minenko

Technical Manager, Qt
http://developer.blackberry.com/qt
+49 160 9898 3242


-
This transmission (including any attachments) may contain confidential 
information, privileged material (including material protected by the 
solicitor-client or other applicable privileges), or constitute non-public 
information. Any use of this information by anyone other than the intended 
recipient is prohibited. If you have received this transmission in error, 
please immediately reply to the sender and delete this information from your 
system. Use, dissemination, distribution, or reproduction of this transmission 
by unintended recipients is not authorized and may be unlawful.
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Preparing Qt 5.0.2 release

2013-02-22 Thread Shaw Andy
 Merge from stable to release branch is now done.
 Changes that are intended to get in for Qt 5.0.2 need to be pushed into
 release branch.

Now that the merge has done, doesn't this in effect mean that stable is now in 
reality Qt 5.1.0 based as dev will be merged to stable on 15th March? If that 
is the case, then shouldn't this be made clearer somewhere so it is pointed out 
that there is no plan for a Qt 5.0.3 release currently?

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


Re: [Development] Qt 5.1 feature set and freeze date

2013-02-22 Thread David Faure
On Wednesday 13 February 2013 08:49:56 Knoll Lars wrote:
 * Friday 22. February: If you have a larger feature/feature branch (not
 yet merged) that you want to have in the release you must have told the
 release team (by mail to releases@) by then.

QLockFile is almost ready, I've been revising it countless times since initial 
submission, based on [conflicting...] feedback, can we aim at including it in 
5.1 if I can get it merged soon?

https://codereview.qt-project.org/46583

 by mail to releases@

Did you mean releasing@ ? Nice trap :)

-- 
David Faure | david.fa...@kdab.com | Managing Director KDAB France
KDAB (France) S.A.S., a KDAB Group company
Tel. France +33 (0)4 90 84 08 53, Sweden (HQ) +46-563-540090
KDAB - Qt Experts - Platform-independent software solutions

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


Re: [Development] Evolving Qt's multithreading API

2013-02-22 Thread Corentin Jabot
2013/2/22 Sze Howe Koh szehowe@gmail.com:
 Yes, that was my original plan. Someone complained that they couldn't
 bind a function + arguments to QtConcurrent::run() first, then run it
 at a later time. This approach gives them the opportunity to start it
 whenever they want.

The problem is QtConcurrent does 2 separate things.
It binds function and run them asynchronously.

To me that's two different issues, so, if one want to bind a function
and run it later,
just use std::bind  ( hence my QFunction patch for c++03 support )


 On second thought, I'm not sure if this would be commonly needed. We
 can make it start immediately instead, BUT this requires a guarantee
 that the first thread can always connect the finished() signal, before
 the new thread runs and finishes. Can that be guaranteed?

Think about QNetworkAccessManager :
reply = nam-get(url); // start the request
connect(reply, QNetworkReply::finished(), doSomething()); // you can
connect later

I think that work just fine because the connection is queued,
But I'm not sure exactly how.


If not,
we'll need:

 QThread *thread = QThread::runFunction([]() { return
 doSomethingComplicated(); });
 connect(thread, QThread::finished, this, MyObject::doStuff);
 thread-start(); // Manual start, after all connections have been made

 OR

 QThread *thread = QThread::runFunction([]() { return
 doSomethingComplicated(); });
 thread-wait(); // Wait for auto-started thread to end
 doStuff();

 The latter is like Corentin's approach using QFuture. Which is better?
 (Personally I think the latter defeats the purpose of having a 2nd
 thread)

Of course that was a silly example, you would connect the QFuture
finished signal
to a slot, or use QFutureSynchronizer to run run multiple treatments
concurrently.


 Regarding deletion, we can follow the example of QAudioInput::start()
 -- it returns a pointer to a QIODevice for reading, but retains
 ownership of the device and auto-deletes it when stopped. Automatic
 deletion is needed to prevent a memory leak in the nice simple pattern
 you wrote above.



   The implementation use the same sort of generator that QtConcurrent.
   Thiago suggested making this feature only compatible C++11, which
   would make it easier to maintain. I actually envisaged to send a mail
   about that particular issue.
   Can c++03 really be dropped for that particular feature ?
   Also, I we were to make a c++11 only feature, what would be the
   benefits over std::async ?
 
  I would love to see an implementation using C++11. I think that
  decision can't be made lightly though, and should be a separate
  discussion -- it has implications for all other Qt modules.

 What do you mean?
 Do you mean an implementation of QThread that would use std::thread as an
 internal rather than pthread/windows API? (qthread_cxx11.cpp)

Here again, two different issues.
1/ can we use the c++11 functional features and variadic templates
for the biding part.
2/ should we use the c++11 thread api somehow ( that looks like a huge
- unnecessary ? - change )


 I think it would be good to have. But would just be another layer, and more
 code to maintain.

 I meant variadic templates and std::bind. QtConcurrent::run() uses a
 code generator to produce 6 separate templates. In theory, we can
 replace all that with 1 variadic template. No code generator, fewer
 templates, less maintenance.

 template typename TFunc, typename... TArgs
 static QThread* setupSimpleThread(TFunc func, TArgs... args)
 {
 // Private class, derived from QThread
 return new QFunctionThread(
 std::bind(std::forwardTFunction(a_func),
 std::forwardTArgs(a_args)...));
 }


Exactly, there are real benefits to use c++11 only.

 We do have many older compilers to support still. Is Qt ready to start
 introducing features that require C++11? Are we in a position to drive
 its adoption, as Thiago put it?
 (http://www.macieira.org/blog/2011/09/cxx11-support-in-qt-5/)

QtConcurrent somehow does works so people with no c++11 support, could
still use that even if its not ideal.


I was actually wondering if QtConcurrent couldn't be upgraded/recycled
* adding QtConcurrent::runFunctionInNewThread(function, ...)
* adding QtConcurrent::runFunctionInThreadPool(QThreadPool* p,
function, ... )
* adding QtConcurrent::runFunctionInGlobalThreadPoool(function, ...);
* deprecating QtConcurrent::run and make it an alias of
QtConcurrent::runInGlobalThreadPoool

This way, QThread keeps its current purpose of exclusively handling thread.

(Or we could add another class or namespace, like QAsynchronous,
reusing QtConcurrent would meant keeping c++03 compat and its suppose
we will still return QFuture)


About returning QThread* : what about the function return value ? That
should be accessible, easily.
It's one of the reason I prefer QFuture over QThread*


Regards,
Corentin

Re: [Development] Evolving Qt's multithreading API

2013-02-22 Thread André Somers
Op 22-2-2013 14:31, Corentin Jabot schreef:
 On second thought, I'm not sure if this would be commonly needed. We
 can make it start immediately instead, BUT this requires a guarantee
 that the first thread can always connect the finished() signal, before
 the new thread runs and finishes. Can that be guaranteed?
 Think about QNetworkAccessManager :
 reply = nam-get(url); // start the request
 connect(reply, QNetworkReply::finished(), doSomething()); // you can
 connect later

 I think that work just fine because the connection is queued,
 But I'm not sure exactly how.
It works for QNAM, because the request is guaranteed to be made async. 
The work is only started when control is returned to the eventloop. For 
this to work in the threading context, you'd have to make a similar 
guarantee. Otherwise, you might end up in the situation that you start 
the thread, and before the connection is made, the thread already 
finishes, resulting in the slot never being called. That would result in 
only starting the work in the other thread when either the result is 
requested, or control is returned to the eventloop so you're sure all 
connectes are made.

Alternatively, you'd have to start doing the work explicitly  as written 
here:



 If not,
 we'll need:

  QThread *thread = QThread::runFunction([]() { return
 doSomethingComplicated(); });
  connect(thread, QThread::finished, this, MyObject::doStuff);
  thread-start(); // Manual start, after all connections have been made

 OR

  QThread *thread = QThread::runFunction([]() { return
 doSomethingComplicated(); });
  thread-wait(); // Wait for auto-started thread to end
  doStuff();

 The latter is like Corentin's approach using QFuture. Which is better?
 (Personally I think the latter defeats the purpose of having a 2nd
 thread)
 Of course that was a silly example, you would connect the QFuture
 finished signal
 to a slot, or use QFutureSynchronizer to run run multiple treatments
 concurrently.

If only QFuture allowed you to connect... Unfortunately, it is not a 
QObject.

André

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


Re: [Development] Evolving Qt's multithreading API

2013-02-22 Thread Corentin Jabot
2013/2/22 André Somers an...@familiesomers.nl
 If only QFuture allowed you to connect... Unfortunately, it is not a
 QObject

Oh yeah, I almost forgot that bit. And somehow it looks like the core issue.
I wonder why by the way:

We could have something like QObject - QFutureBase (with all
requiered signals/slots) - QFutureT
or is there something I'm not seeing ?

Of course now its too late, but we could introduce something new, like
QFutureObject ?


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


[Development] pushing/staging around branching time (Re: [Releasing] Some CMake patches for 5.0.2)

2013-02-22 Thread Oswald Buddenhagen
On Fri, Feb 22, 2013 at 03:11:14PM +0100, Stephen Kelly wrote:
 I misunderstood the branch situation for Qt 5.0.2, and I pushed commits to 
 stable which need to be in 5.0.2 (specifically 
 7661e39c022f76da34fcd5d38ecb93c86e01f1b7 and 
 7477d50fce9a0008ff4e050285e146ebc0c1e163 which fix a regression introduced in 
 316d8ececa3314ec16baf46ec4f1c5440cd951ef).
 
 Without those patches the cmake files are unusable, so they need to be in 
 5.0.2. 
 
 The easiest way I can see to fix that situation is to fast-forward the 
 release 
 branch to 7661e39c022f76da34fcd5d38ecb93c86e01f1b7. As it is a fast-forward, 
 all commits have already been through CI.
 
i fast-forwarded the branch with akseli's permission after reviewing
what i'd push.
however, this was most definitely an exception, because it looked
harmless and the release testing didn't really start yet.

i also noticed at least one other change which had a fixed-in 5.0.2 in
jira, which most definitely would not be in the release without
magic/ugliness.

what this means for *you*? *don't* stage anything which is aiming
for timely release around the announced branching/merging time. when
your change didn't make it before the deadline, abandon it immediately,
and re-push for the release branch after successful branching was
announced.
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] Preparing Qt 5.0.2 release

2013-02-22 Thread Oswald Buddenhagen
On Fri, Feb 22, 2013 at 12:36:07PM +, Shaw Andy wrote:
 Now that the merge has done, doesn't this in effect mean that stable
 is now in reality Qt 5.1.0 based as dev will be merged to stable on
 15th March?

this may very well happen, yes.
it's still a good idea to push fixes to stable: a) you never know and b)
distributors may pick them up even if we never make another release of
the branch.
conversely, this means that stable is still utterly taboo for features.

 If that is the case, then shouldn't this be made clearer somewhere so
 it is pointed out that there is no plan for a Qt 5.0.3 release
 currently?
 
i think that would be moderately counter-productive in the light of the
above paragraph.
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] [Releasing] pushing/staging around branching time (Re: Some CMake patches for 5.0.2)

2013-02-22 Thread Stephen Kelly
On Friday, February 22, 2013 15:39:57 Oswald Buddenhagen wrote:
 On Fri, Feb 22, 2013 at 03:11:14PM +0100, Stephen Kelly wrote:
  I misunderstood the branch situation for Qt 5.0.2, and I pushed commits to
  stable which need to be in 5.0.2 (specifically
  7661e39c022f76da34fcd5d38ecb93c86e01f1b7 and
  7477d50fce9a0008ff4e050285e146ebc0c1e163 which fix a regression introduced
  in 316d8ececa3314ec16baf46ec4f1c5440cd951ef).
  
  Without those patches the cmake files are unusable, so they need to be in
  5.0.2.
  
  The easiest way I can see to fix that situation is to fast-forward the
  release branch to 7661e39c022f76da34fcd5d38ecb93c86e01f1b7. As it is a
  fast-forward, all commits have already been through CI.
 
 i fast-forwarded the branch with akseli's permission after reviewing
 what i'd push.
 however, this was most definitely an exception, because it looked
 harmless and the release testing didn't really start yet.

Great, thanks for that. I know I got lucky this time.

-- 
Stephen Kelly stephen.ke...@kdab.com | Software Engineer
KDAB (Deutschland) GmbH  Co.KG, a KDAB Group Company
www.kdab.com || Germany +49-30-521325470 || Sweden (HQ) +46-563-540090
KDAB - Qt Experts - Platform-Independent Software Solutions

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


Re: [Development] Setting the priority of bug reports created the Qt Support team

2013-02-22 Thread Michael Hasselmann
On Fri, 2013-02-22 at 12:15 +, Vladimir Minenko wrote:
 Our motivation for this is very simple: keep Qt bugs going to one place
 and avoid fragmentation.

But is that really feasible? You'd have to make sure it's a general Qt
problem first and not related to some interaction with Blackberry
specifics. Or the Qt bugtracker is fine with having vendor-specific
components.

 Handling a few BlackBerry related issues which were already posted on
 https://bugreports.qt-project.org/, I started doubting if we can really
 use https://bugreports.qt-project.org/ for operations. The major problem
 is that the only what a normal user do is commenting on bugs. I know this
 topic is not directly related to the actual posting by Andy. I just wanted
 to raise my hand and underline that there are more triage related problems
 with https://bugreports.qt-project.org/

It would be an interesting experiment to just open up the bug handling
privileges for most JIRA accounts, if not even all. I would assume
people will use their privileges with care although some might start
playing the close/reopen bugs game.

ciao Michael

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


Re: [Development] Preparing Qt 5.0.2 release

2013-02-22 Thread Thiago Macieira
On sexta-feira, 22 de fevereiro de 2013 15.43.57, Oswald Buddenhagen wrote:
 On Fri, Feb 22, 2013 at 12:36:07PM +, Shaw Andy wrote:
  Now that the merge has done, doesn't this in effect mean that stable
  is now in reality Qt 5.1.0 based as dev will be merged to stable on
  15th March?
 
 this may very well happen, yes.
 it's still a good idea to push fixes to stable: a) you never know and b)
 distributors may pick them up even if we never make another release of
 the branch.
 conversely, this means that stable is still utterly taboo for features.

Indeed, there's still time to do a 5.0.3 if we wanted to.

Here's a good question: should we tag/branch the stable branch just before the 
dev merge? Otherwise finding those commits later (think one year later) might 
be difficult.

But this is the sign I was waiting for to switch my main development branch 
from stable to dev.

-- 
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


Re: [Development] Setting the priority of bug reports created the Qt Support team

2013-02-22 Thread Thiago Macieira
On sexta-feira, 22 de fevereiro de 2013 16.18.13, Michael Hasselmann wrote:
 On Fri, 2013-02-22 at 12:15 +, Vladimir Minenko wrote:
  Our motivation for this is very simple: keep Qt bugs going to one place
  and avoid fragmentation.
 
 But is that really feasible? You'd have to make sure it's a general Qt
 problem first and not related to some interaction with Blackberry
 specifics. Or the Qt bugtracker is fine with having vendor-specific
 components.

That's no different from any other bug report where we must determine whether 
the problem lies in Qt code or in the underlying platform (e.g., bionic 
shortcomings), or whether it lies in the application itself or third-party Qt-
based libraries (e.g., kdelibs).

-- 
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


Re: [Development] Evolving Qt's multithreading API

2013-02-22 Thread Robert Knight
 However, std::function and std::bind were already in tr1,
 which AFAIK is already supported by all the compiler we support (Tier1 +
Tier2)
 (MSVC 2008 and gcc 4.2 have it)

For VC 2008 it is part of an add-on pack [1], but it is available.

 We could have something like QObject - QFutureBase (with all
 requiered signals/slots) - QFutureT
 or is there something I'm not seeing ?

QObject is heavy - in terms of memory usage, construction/destruction cost
etc. - if there are scenarios
where you are creating thousands of such objects, this could be a problem.

Regards,
Rob.

[1] http://www.microsoft.com/en-gb/download/details.aspx?id=6922


On 22 February 2013 14:28, Corentin Jabot corentin.ja...@gmail.com wrote:

 2013/2/22 André Somers an...@familiesomers.nl
  If only QFuture allowed you to connect... Unfortunately, it is not a
  QObject

 Oh yeah, I almost forgot that bit. And somehow it looks like the core
 issue.
 I wonder why by the way:

 We could have something like QObject - QFutureBase (with all
 requiered signals/slots) - QFutureT
 or is there something I'm not seeing ?

 Of course now its too late, but we could introduce something new, like
 QFutureObject ?


 Corentin
 ___
 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] Evolving Qt's multithreading API

2013-02-22 Thread Thiago Macieira
On sexta-feira, 22 de fevereiro de 2013 15.28.44, Corentin Jabot wrote:
 2013/2/22 André Somers an...@familiesomers.nl

  If only QFuture allowed you to connect... Unfortunately, it is not a
  QObject

 Oh yeah, I almost forgot that bit. And somehow it looks like the core issue.
 I wonder why by the way:

 We could have something like QObject - QFutureBase (with all
 requiered signals/slots) - QFutureT
 or is there something I'm not seeing ?

 Of course now its too late, but we could introduce something new, like
 QFutureObject ?

That's QFutureWatcher.

The fact is that any QObject that is returned from those functions -- if any
-- must belong to the calling thread. That implies the necessary guarantees in
terms of signal emissions.

For example, if the functions return a QObject pointer, a signal-signal
connection from the actual target object's finished() signal to the returned
object's finished() will apply the necessary queueing semantics.

That also speaks against returning a QThread*.

--
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


Re: [Development] Evolving Qt's multithreading API

2013-02-22 Thread Thiago Macieira
On sexta-feira, 22 de fevereiro de 2013 15.21.50, Olivier Goffart wrote:
 Variadic template, we can clearly not rely on it.  It only came in MSVC
 really  recently (patch release in nov 2012)

Yes, we can rely on it. That just means MSVC 2012 RTM doesn't get the feature.

As Marc put it, C++98 costs more.

My suggestion is: design the API for C++11, then after it's done, we look into 
how much more is needed to support C++98.

-- 
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


Re: [Development] Evolving Qt's multithreading API

2013-02-22 Thread Thiago Macieira
On sexta-feira, 22 de fevereiro de 2013 19.26.06, Sze Howe Koh wrote:
 Actually, I just realized that the open-source flavour of TBB is
 licensed under GPLv2 (http://threadingbuildingblocks.org/Licensing).
 Doesn't that mean that Qt TBB, if it were to become reality, can't be
 licensed under the LGPL?

It's GPLv2+exceptions:

The source code of Threading Building Blocks is distributed under version 2
of the GNU General Public License, with the so-called runtime exception,
as follows (or see any header or implementation file):

   As a special exception, you may use this file as part of a free software
   library without restriction.  Specifically, if other files instantiate
   templates or use macros or inline functions from this file, or you compile
   this file and link it with other files to produce an executable, this
   file does not by itself cause the resulting executable to be covered by
   the GNU General Public License.  This exception does not however
   invalidate any other reasons why the executable file might be covered by
   the GNU General Public License.

I believe it's the same exception as the one in GNU libstdc++,
-- 
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


Re: [Development] Request for Volunteers - Qt 5.0.2 Testing

2013-02-22 Thread Sébastien Fricker
Rafal,
will you tag your Qt 5.0.2 RC?
If yes, I will provide a coverage report of QtBase between Qt 5.0.1 and this RC
Regards,
Sébastien

Am 22.02.2013 um 10:33 schrieb Motyka Rafal rafal.mot...@digia.com:

 Hello,
 
 We're planning to start Qt 5.0.2 framework testing on the 7th of March 2013, 
 before the final release.
 I kindly ask all volunteers to send the answer to this email to me 
 (rafal.mot...@digia.com).
 
 Any help will be highly appreciated.
 
 Best regards,
 
 /Rafal
 
  
 Rafal Motyka
 QE Engineer
 Digia, Qt
  
 Email: rafal.mot...@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 
 
 
 ___
 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] Request for Volunteers - Qt 5.0.2 Testing

2013-02-22 Thread Thiago Macieira
On sexta-feira, 22 de fevereiro de 2013 17.59.45, Sébastien Fricker wrote:
 will you tag your Qt 5.0.2 RC?

Note that we changed again the release procedures after complaints on how we
handled 5.0.1.

There will be no 5.0.2 tags until the final release.
--
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


Re: [Development] FW: Preparing Qt 5.0.2 release

2013-02-22 Thread Thiago Macieira
On sexta-feira, 22 de fevereiro de 2013 10.52.38, Salovaara Akseli wrote:
 Merge from stable to release branch is now done.
 Changes that are intended to get in for Qt 5.0.2 need to be pushed into
 release branch.

Please create the 5.0.3 entry in JIRA, even if we never actually make that 
release.

-- 
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