Re: kdeinit

2011-08-21 Thread todd rme
On Sun, Aug 21, 2011 at 12:09 AM, Valentin Rusu k...@rusu.info wrote:
 On 08/20/2011 02:11 PM, Oswald Buddenhagen wrote:
 A cross-desktop specification, but we still use kwallet. There's no reason 
 to
 dump it in favour of another implementation. So I see no arguments at all in
 favour of dropping it -- in fact, I see more in keeping it.

 ksecretservice is a new implementation. dunno how much code was reused.
 the arguments against two backends are easy:
 - two backends means almost twice the work, including security auditing
 - assuming the backends use different storage (it's not part of the
   spec, after all), even after switching desktops you need to stick with
   the now alien password manager.
 KSecretsService is a new implementation. It has a new backend that
 organizes secrets in collections and follows the freedesktop.org
 specification. KDE applications will use the new KSecretsService client
 library that'll replace KWallet API. I'm currently rewriting the KWallet
 class in order to get it use this new KSecretsService Client API. The
 backend (or daemon) will also be able to import kwallet files. So in the
 future the kwalletd will become useless.

 The KSecretsService Client API will be able to connect to whatever
 service will expose the freedesktop.org secrets service specification on
 the DBus. That means that KDE applications will be able to store
 passwords in gnome-keyring if present instead or ksecretsserviced (this
 is the name of the daemon exposing fd.o secrets specification currently
 under development).

Great! This should be very helpful

A few general questions:

1. Will it be possible to add connections to password providers, like
online password management services or firefox, that allow those
passwords to be integrated with secretservice?  Or is this something
that would need to be handled at the frontend (ksecretserviced) level?

2. Is secretservice integrated with PAM so that the passwords can be
opened on login?  Or is this also something that needs to be handled
at the ksecretserviced level?

3. Will gnome-keyring and ksecretserviced by storing their passwords
in the same location or file(s), or will there need to be a separate
set of passwords for gnome-keyring and ksecretservicd?

4. If you are running gnome programs in a KDE workspace, or vice
versus, will they automatically connect to the right secretservice or
will they try to call their own backend?

-Todd


Review Request: GSoC: Errors handling during file transfer.

2011-08-21 Thread Cyril Oblikov

---
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/102388/
---

Review request for kdelibs.


Summary
---

Modeless dialog to handle interactions and modifications in CopyJob.


Diffs
-

  kio/CMakeLists.txt b517621 
  kio/kio/copyjob.h eb88c7a 
  kio/kio/copyjob.cpp eff7825 
  kio/kio/interactiondialog/abstractinteractionitem.h PRE-CREATION 
  kio/kio/interactiondialog/abstractinteractionmodel.h PRE-CREATION 
  kio/kio/interactiondialog/abstractinteractionmodel.cpp PRE-CREATION 
  kio/kio/interactiondialog/allinteractionitem.h PRE-CREATION 
  kio/kio/interactiondialog/allinteractionmodel.h PRE-CREATION 
  kio/kio/interactiondialog/allinteractionmodel.cpp PRE-CREATION 
  kio/kio/interactiondialog/existinginteractionitem.h PRE-CREATION 
  kio/kio/interactiondialog/existinginteractionmodel.h PRE-CREATION 
  kio/kio/interactiondialog/existinginteractionmodel.cpp PRE-CREATION 
  kio/kio/interactiondialog/interactiondialog.h PRE-CREATION 
  kio/kio/interactiondialog/interactiondialog.cpp PRE-CREATION 
  kio/kio/interactiondialog/interactiondialogtab.h PRE-CREATION 
  kio/kio/interactiondialog/interactiondialogtab.cpp PRE-CREATION 
  kio/kio/interactiondialog/renameinteractionwidget.h PRE-CREATION 
  kio/kio/interactiondialog/renameinteractionwidget.cpp PRE-CREATION 
  kio/kio/interactiondialog/requestitemmodel.h PRE-CREATION 
  kio/kio/interactiondialog/requestitemmodel.cpp PRE-CREATION 
  kio/kio/interactiondialog/unreadableinteractionitem.h PRE-CREATION 
  kio/kio/interactiondialog/unreadableinteractionmodel.h PRE-CREATION 
  kio/kio/interactiondialog/unreadableinteractionmodel.cpp PRE-CREATION 
  kio/kio/jobuidelegate.h 25e0728 
  kio/kio/jobuidelegate.cpp 85679c2 

Diff: http://git.reviewboard.kde.org/r/102388/diff


Testing
---


Thanks,

Cyril



Review Request: Determining MIME type of corrupted files hangs on repeated reads

2011-08-21 Thread Miroslav Ľos

---
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/102382/
---

Review request for kdelibs and David Faure.


Summary
---

Please see the associated bugreport for all information, including a non-git 
patch.


This addresses bug 280446.
http://bugs.kde.org/show_bug.cgi?id=280446


Diffs
-


Diff: http://git.reviewboard.kde.org/r/102382/diff


Testing
---


Thanks,

Miroslav



Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Oswald Buddenhagen
On Sat, Aug 20, 2011 at 02:43:49PM +0200, Thiago Macieira wrote:
 On Saturday, 20 de August de 2011 14:11:32 Oswald Buddenhagen wrote:
  yeah, at the cost of rather considerable instability.
  we should see whether regular service activation isn't the better
  option, now that we have it.
 
 What instability? If kded crashes, what makes you think individual services 
 won't crash, in addition to taking longer to load and use more memory?
 
look at it from the perspective of the daemon, not the modules.
there have been *tons* of bugs related to crashes and freezes in
kded - which were module bugs actually.
in-process is simply no sound architecture from a stability (and
security) pov. guess which other kde component i'm thinking of ...

 One problem with a no-exec scenario is the inability to switch security 
 contexts and to control them on a per-binary case. Today, that is. There's 
 nothing preventing additional code to be introduced to do that,

indeed, that's what i suggested as well.

 if we start from an all-privileged daemon like systemd. It's privilege
 elevation that suffers.
 
does the session systemd run privileged in the first place?

 [...] The end result is that the launcher has a lot more COW
 operations that aren't its fault and its pages are duplicated
 everywhere.
 If there's a privilege boundary in the process, then this might even
 be a security risk [...]
 
yeah, both of these concern result from systemd being a bit more than
kdeinit. they could be mitigated by forking off the actual launcher
process very early, but this may turn out ugly.

 It's far easier to introduce the feature we want into the prelinker and 
 dynamic loader, such as having a stasis process: the dynamic loader could 
 load everything as needed, then freeze the images just prior to running any 
 code.
 
one can have that with some ptrace trickery.
but i'm not sure how this fixes the problem. do you want to exec() such
pre-initialized images?

  i think it is pretty clear that our *code* is not going to be accepted
  as the cross-desktop solution. [...]
 
 I don't know where you got those numbers for weight, not to mention it's 
 completely ambiguous (did you mean memory consumption?).

code size = shared memory, page faults on load.

 But I don't care what they like or dislike: if the implementation is
 good, it should stay.
 
there are two problems with that:
- history has shown that it doesn't matter what the pragmatic solution
  would be, on both sides (just remember the utterly ridiculous bike
  shedding when aRts dared to add a glib dependency)
- introducing a qt or even kde dependency into a so far gnome-only
  system can be a very real resource problem. that's not likely to apply
  to kglobalaccel (as it is pretty desktop-specific), but i'm assuming
  you are making a general statement


 I could even accept the alternate representation to be optional, so an
 UTF-8- to-UTF-16 coversion needs to happen when Qt-based code reads
 the config.
 
on-demand conversion could lead to some nasty encoding ping-pong when
the data is accessed concurrently.

 The problem I found is the same as QUrl today: implicit sharing of lazily 
 constructed data. When you need to finish your lazy work, do you need to 
 detach 
 or not? If you detach, only one side will get the non-lazy output. If you 
 don't detach, you need to somehow make the setting thread-safe -- which QUrl 
 doesn't do.
 
not detaching needs to do atomic pointer replacement to avoid memory
leaks, but other than that it is relatively uncritical.
a problem is of course that the converted data would need a separate
allocation, as opposed to the embedded raw string data.

 This also carries the burden of checking the flags at many points in the 
 code, 
 probably adding overhead to timing-sensitive code which many already find 
 slow.
 
when i was pondering this with andre, we came up with the idea to make
character access possible only through some kind of reference object, so
checking the need for detaching and conversions would have to be done
only when obtaining the reference.
but that was long before qt5 actually materialized, including its
mostly source compatible mandate.


Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Thiago Macieira
On Sunday, 21 de August de 2011 10:19:26 Oswald Buddenhagen wrote:
  What instability? If kded crashes, what makes you think individual
  services
  won't crash, in addition to taking longer to load and use more memory?
 
 look at it from the perspective of the daemon, not the modules.
 there have been *tons* of bugs related to crashes and freezes in
 kded - which were module bugs actually.
 in-process is simply no sound architecture from a stability (and
 security) pov. guess which other kde component i'm thinking of ...

Sure, if each of 10 modules has a certain chance of failure or MTBF, the whole 
process has a much greater chance of failure or smaller MTBF. But if you look 
from the point of view from the system that requires each of those services, 
it doesn't matter if the crash brings down all services or just one.

In any case, kded restarts.

  if we start from an all-privileged daemon like systemd. It's privilege
  elevation that suffers.
 
 does the session systemd run privileged in the first place?

I have no clue. I don't even know if there's a session systemd.

  It's far easier to introduce the feature we want into the prelinker and
  dynamic loader, such as having a stasis process: the dynamic loader
  could
  load everything as needed, then freeze the images just prior to running
  any
  code.
 
 one can have that with some ptrace trickery.
 but i'm not sure how this fixes the problem. do you want to exec() such
 pre-initialized images?

This isn't a fully-formed idea. It might need kernel help too.

   i think it is pretty clear that our *code* is not going to be accepted
   as the cross-desktop solution. [...]
  
  I don't know where you got those numbers for weight, not to mention it's
  completely ambiguous (did you mean memory consumption?).
 
 code size = shared memory, page faults on load.

That is true. But it is not proven. Sure, QtCore is much bigger than glib:

$ ls -l /usr/lib/libQtCore.so.4.8.0 /lib/libglib-2.0.so.0.2800.8 
-rwxr-xr-x 1 root root  979028 Jun  8 02:53 /lib/libglib-2.0.so.0.2800.8*
-rwxr-xr-x 1 root root 2980096 Jul 25 22:28 /usr/lib/libQtCore.so.4.8.0*

But file sizes don't mean much. You'd have to check how much in page faults 
really happens to fault in those services: given comparable uses of the 
libraries, what is the actual memory use? What's more, you can also justify it 
as a trade-off in readability and maintainabilty.

In a running system, where QtCore is already loaded, there aren't any page 
faults to load the code or marginal increase in memory usage because of it. 
And if we fix the above problem of prelinking, the prelinked read-only data can 
also be shared.

(note my use of commas in where QtCore is already loaded: it's not a 
restrictive definition of system, it's an explanation of it; for me, there are 
no systems where QtCore isn't already loaded)

 - introducing a qt or even kde dependency into a so far gnome-only
   system can be a very real resource problem. that's not likely to apply
   to kglobalaccel (as it is pretty desktop-specific), but i'm assuming
   you are making a general statement

Right. And if we accept glib dependencies, I don't see why they shouldn't 
accept QtCore dependencies.

  I could even accept the alternate representation to be optional, so an
  UTF-8- to-UTF-16 coversion needs to happen when Qt-based code reads
  the config.
 
 on-demand conversion could lead to some nasty encoding ping-pong when
 the data is accessed concurrently.

You misunderstand dconf: reading settings is done via mmap()ed read-only 
memory. If the UTF-16 encoding isn't there, then the reader needs to create a 
QString from the UTF-8 data.

Writing is done via D-Bus. I don't see a ping-pong.

  The problem I found is the same as QUrl today: implicit sharing of lazily
  constructed data. When you need to finish your lazy work, do you need to
  detach or not? If you detach, only one side will get the non-lazy output.
  If you don't detach, you need to somehow make the setting thread-safe --
  which QUrl doesn't do.
 
 not detaching needs to do atomic pointer replacement to avoid memory
 leaks, but other than that it is relatively uncritical.
 a problem is of course that the converted data would need a separate
 allocation, as opposed to the embedded raw string data.

If you don't detach and you do replace the pointers, when do you delete the 
old data? You need a shared data pointer of some kind. I don't want to 
introduce a second reference count in QStringData.

 when i was pondering this with andre, we came up with the idea to make
 character access possible only through some kind of reference object, so
 checking the need for detaching and conversions would have to be done
 only when obtaining the reference.

That's QCharRef.

 but that was long before qt5 actually materialized, including its
 mostly source compatible mandate.

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source 

Re: Review Request: Don't hang when determining MIME type of corrupted files

2011-08-21 Thread David Faure

---
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/102391/#review5872
---


Thanks Peter and Miroslav. The analysis looks correct, the pre-read part of the 
patch looks good. I'm just wondering about using Unbuffered. If someone 
installs a mimetype definition with multiple rules trying to match some bytes 
after the 2K limit, then all this seeking-and-reading back and forth will be 
very slow, in unbuffered mode (since neither cache will be used).

- David


On Aug. 20, 2011, 5:21 p.m., Peter Penz wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 http://git.reviewboard.kde.org/r/102391/
 ---
 
 (Updated Aug. 20, 2011, 5:21 p.m.)
 
 
 Review request for kdelibs and David Faure.
 
 
 Summary
 ---
 
 If KMimeTypeRepository::findFromContent() tries to determine MIME from a file 
 that cannot be read, such as on a corrupted optical disc, a read attempt is 
 made in KMimeMagicMatch::match() for every available rule, resulting in UI 
 hangs (e.g. file dialogs, dolphin) for tens of minutes (see 
 https://bugs.kde.org/show_bug.cgi?id=280446 for more details).
 
 I've submitted this patch here on behalf of Miroslav ?os, who has submitted 
 the bug-report and also has written the patch.
 
 
 This addresses bug 280446.
 http://bugs.kde.org/show_bug.cgi?id=280446
 
 
 Diffs
 -
 
   kdecore/services/kmimetype.cpp 955bf62 
   kdecore/services/kmimetyperepository.cpp 6ff3d16 
 
 Diff: http://git.reviewboard.kde.org/r/102391/diff
 
 
 Testing
 ---
 
 
 Thanks,
 
 Peter
 




Re: Review Request: Do not crash because a badly servicetype_profilerc is found

2011-08-21 Thread David Faure

---
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/101914/#review5874
---

Ship it!


Yes, please commit to 4.7 and frameworks.

- David


On Aug. 20, 2011, 4:51 p.m., Jaime Torres Amate wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 http://git.reviewboard.kde.org/r/101914/
 ---
 
 (Updated Aug. 20, 2011, 4:51 p.m.)
 
 
 Review request for kdelibs.
 
 
 Summary
 ---
 
 My I push this patch to 4.7 and frameworks branchs?
 
 
 This addresses bug 269785.
 http://bugs.kde.org/show_bug.cgi?id=269785
 
 
 Diffs
 -
 
   kdecore/services/kservicetypeprofile.cpp 7403e2a 
 
 Diff: http://git.reviewboard.kde.org/r/101914/diff
 
 
 Testing
 ---
 
 It does not crash in the assertion :-)
 
 
 Thanks,
 
 Jaime Torres
 




Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Oswald Buddenhagen
On Sun, Aug 21, 2011 at 11:28:02AM +0200, Thiago Macieira wrote:
 Sure, if each of 10 modules has a certain chance of failure or MTBF, the 
 whole 
 process has a much greater chance of failure or smaller MTBF. But if you look 
 from the point of view from the system that requires each of those services, 
 it doesn't matter if the crash brings down all services or just one.
 
not all kded services are required - many are more like recommended.
but even if we assume that all are required, then out-of-process still
improves fault isolation and recoverability.

 In any case, kded restarts.
 
yes, when the faulty module crashes. not so when it deadlocks or
busy-loops. also, a restart typically loses state.

  code size = shared memory, page faults on load.
 
 That is true. But it is not proven. [...]

well, yeah, somebody has to do some real research. but the outcome is
pretty predictable: qt's use of templates makes it extremely likely that
significantly more code is executed, and the rather likely suboptimal
code locality makes it probable that more unused code needs to be paged
in from the much larger binary.

 What's more, you can also justify it as a trade-off in readability and
 maintainabilty.
 
well, of course. but given the availability of two equivalent solutions
and people willing to maintain them, the one with a lower resource
consuption will always be favorable.

 Right. And if we accept glib dependencies, I don't see why they shouldn't 
 accept QtCore dependencies.
 
well, given that glib is an accepted dependency of qt (at least on the
desktop), qt will always be an *additional* dependency. it's going to be
interesting to push it down the stack enough that people stop thinking
about it.

 reading settings is done via mmap()ed read-only memory. If the UTF-16
 encoding isn't there, then the reader needs to create a QString from
 the UTF-8 data.
 
 Writing is done via D-Bus.
 
i know. exactly this has the potential for ping-pong if you do on-demand
conversion of the actual store.

anyway, i really wonder whether insisting on utf-16 makes sense, assuming
that the store is not abused for more than config data. KConfig and
QSettings use utf-8, too, and nobody seriously complained about that
afaik. the dconf client can implement caching of converted data just
like the exising classes do.

 If you don't detach and you do replace the pointers, when do you
 delete the old data?
 
the lifetime would be bound to the qstringdata, like the latin1 data in
qt3-. i wouldn't bother with sharing the converted values - upon
detaching, the format which is needed for the operation which caused the
detach is made the primary (embedded) and only data of the clone.

  when i was pondering this with andre, we came up with the idea to make
  character access possible only through some kind of reference object,
 
 That's QCharRef.
 
more like a qstringref, as we want bounds checking. but it should be
also possible to append to the non-const variant of that thingie.


Re: Review Request: Do not terminate threads

2011-08-21 Thread David Faure

---
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/102179/#review5875
---


I think this patch is almost ready, but Dawit's comment seems right about an 
improvement that should be done to it:

- Move all the preemptive lookup logic from the thread's run function to 
HostInfo::lookupHost. [No need to create a thread when DNS is already cached].

- David


On Aug. 11, 2011, 10:10 p.m., Albert Astals Cid wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 http://git.reviewboard.kde.org/r/102179/
 ---
 
 (Updated Aug. 11, 2011, 10:10 p.m.)
 
 
 Review request for kdelibs and Dawit Alemayehu.
 
 
 Summary
 ---
 
 Each time the terminate code triggers my Konqueror crashes, i'm substituting 
 the terminate for just waiting the thread to finish and we just ignoring it.
 
 The code has a race condition in which wait() returns false, then we switch 
 to the thread and m_autoDelete is still not set and thus noone will delete 
 the thread. I can add a mutex if you guys think this is unacceptable.
 
 
 Diffs
 -
 
   kio/kio/hostinfo.cpp 344b1d8 
 
 Diff: http://git.reviewboard.kde.org/r/102179/diff
 
 
 Testing
 ---
 
 When the 
 kDebug()  Name look up for  hostName  failed;
 if triggers i do not get a crash anymore.
 
 
 Thanks,
 
 Albert
 




Re: Review Request: Do not crash because a badly servicetype_profilerc is found

2011-08-21 Thread Commit Hook

---
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/101914/#review5876
---


This review has been submitted with commit 
24498bb761630e24e39df1ea5c614136eff7310c by Jaime Torres to branch KDE/4.7.

- Commit


On Aug. 20, 2011, 4:51 p.m., Jaime Torres Amate wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 http://git.reviewboard.kde.org/r/101914/
 ---
 
 (Updated Aug. 20, 2011, 4:51 p.m.)
 
 
 Review request for kdelibs.
 
 
 Summary
 ---
 
 My I push this patch to 4.7 and frameworks branchs?
 
 
 This addresses bug 269785.
 http://bugs.kde.org/show_bug.cgi?id=269785
 
 
 Diffs
 -
 
   kdecore/services/kservicetypeprofile.cpp 7403e2a 
 
 Diff: http://git.reviewboard.kde.org/r/101914/diff
 
 
 Testing
 ---
 
 It does not crash in the assertion :-)
 
 
 Thanks,
 
 Jaime Torres
 




Re: Review Request: Do not crash because a badly servicetype_profilerc is found

2011-08-21 Thread Commit Hook

---
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/101914/#review5877
---


This review has been submitted with commit 
c470a32fffd7a97302ed86c5812bb58da3141eb7 by Jaime Torres to branch frameworks.

- Commit


On Aug. 20, 2011, 4:51 p.m., Jaime Torres Amate wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 http://git.reviewboard.kde.org/r/101914/
 ---
 
 (Updated Aug. 20, 2011, 4:51 p.m.)
 
 
 Review request for kdelibs.
 
 
 Summary
 ---
 
 My I push this patch to 4.7 and frameworks branchs?
 
 
 This addresses bug 269785.
 http://bugs.kde.org/show_bug.cgi?id=269785
 
 
 Diffs
 -
 
   kdecore/services/kservicetypeprofile.cpp 7403e2a 
 
 Diff: http://git.reviewboard.kde.org/r/101914/diff
 
 
 Testing
 ---
 
 It does not crash in the assertion :-)
 
 
 Thanks,
 
 Jaime Torres
 




Re: Git migration status (Was: Re: Where is kmix hidden?)

2011-08-21 Thread George Goldberg
On 19 August 2011 22:18, Jeremy Whiting jpwhit...@kde.org wrote:
 On Fri, Aug 19, 2011 at 1:27 PM, John Layt jl...@kde.org wrote:

 On Friday 19 Aug 2011 19:54:21 Harald Sitter wrote:
  On Fri, Aug 19, 2011 at 6:54 PM, Lukas Appelhans l.appelh...@gmx.de
  wrote:
   I guess there were no efforts yet from the kdemultimedia team to make
   the
   move.
 
  I did not realize we had to take care of the move seems a bit
  inconvenient.

 Yep, you need to mak e it happen as it involves decision no-one else can
 make
 for you.  There's basically three steps needed.  First, you have to decide
 on
 separate Git repos per app or stick with the monolithic module.  Second,
 if
 going for separete repos make sure everything actually builds properly
 that
 way.  Third you need to write the conversion rules for you history, but
 there's a few people around who may be willing to help out with that once
 you
 know what you want.  Have a chat on the #kde-git channel for more details.

 On the subject of un-converted svn modules, the following are still left:

  kdeaccessibility
  kdeadmin
  kdegames
  kdemultimedia
  kdenetwork

I have partially written the rules for kdenetwork, but they are not
complete. I don't have time to work on them at the moment, so someone
else taking that over would be good if it's going to happen any time
soon. The work I've done so far is in the git repository with all the
other conversion rules.

--
George


Re: Review Request: Only include nepomuk directories if nepomuk is available

2011-08-21 Thread Allen Winter


 On Aug. 17, 2011, 1:19 p.m., Allen Winter wrote:
  Has this been committed?  If so, please close this review; else please 
  commit and close this review.
 
 
 Bjoern Ricks wrote:
 Commit to trunk and/or 4.7?
 
 Allen Winter wrote:
 Only master -- better not muck around with 4.7 too much.
 
 The real solution is to finally make Soprano a hard requirement.

On second thought, please commit to the 4.7 branch as well.
master is frozen now so you should commit into the frameworks branch.


- Allen


---
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/101949/#review5772
---


On July 14, 2011, 2:40 p.m., Bjoern Ricks wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 http://git.reviewboard.kde.org/r/101949/
 ---
 
 (Updated July 14, 2011, 2:40 p.m.)
 
 
 Review request for kdelibs.
 
 
 Summary
 ---
 
 kdelibs build fails if sdo and/or soprano aren't available
 
 
 Diffs
 -
 
   kparts/CMakeLists.txt db76613 
 
 Diff: http://git.reviewboard.kde.org/r/101949/diff
 
 
 Testing
 ---
 
 
 Thanks,
 
 Bjoern
 




Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Thiago Macieira
On Sunday, 21 de August de 2011 12:25:52 Oswald Buddenhagen wrote:
 yes, when the faulty module crashes. not so when it deadlocks or
 busy-loops. also, a restart typically loses state.

True, but I don't remember that happening a single time to me in the past 3 
years. I remember seeing people complain about kded taking 100% CPU, but it 
hasn't happened to me.

   code size = shared memory, page faults on load.
  
  That is true. But it is not proven. [...]
 
 well, yeah, somebody has to do some real research. but the outcome is
 pretty predictable: qt's use of templates makes it extremely likely that
 significantly more code is executed, and the rather likely suboptimal
 code locality makes it probable that more unused code needs to be paged
 in from the much larger binary.

The extensive use of templates probably generates more code, but due to better 
inlining, the code is potentially faster. So we're trading off code size for 
code performance.

I once wrote a benchmark comparing iterating over a QString to iterating over 
a gchar UTF-8 string using glib functions to get each UCS-4 character 
(ostensibly to prove that UTF-16 was better than UTF-8). The result was clear: 
Qt code was much faster, over 10x, compared to glib.

I wouldn't be surprised if we find the same about the other containers. Our 
benchmark isn't glib containers, but STL ones.

 well, of course. but given the availability of two equivalent solutions
 and people willing to maintain them, the one with a lower resource
 consuption will always be favorable.

Agreed. Which is why an existing service that we write should be in C++. We 
should not be required to learn glib in order to write a shared service.

If the GNOME developers decide they want to rewrite it, they are welcome to do 
so and dedicate resources.

Note I have never proposed rewriting existing shared service code in Qt.

 well, given that glib is an accepted dependency of qt (at least on the
 desktop), qt will always be an *additional* dependency. it's going to be
 interesting to push it down the stack enough that people stop thinking
 about it.

Or make enough interesting services that are Qt-based. Back on the Ubuntu 
Developer Summit in May last year, when I was presenting some of the 
technologies of Qt Mobility, there was a big interest in using them. Mark 
Shuttleworth asked if there were bindings for Python, which is the language 
that Canonical likes to use. 

But I'm sure other people wanted to use them from C too, they just didn't ask.

The point is just as above: we, the KDE and Qt communities, are not required 
to learn glib in order to write a new service or library.

  reading settings is done via mmap()ed read-only memory. If the UTF-16
  encoding isn't there, then the reader needs to create a QString from
  the UTF-8 data.
  
  Writing is done via D-Bus.
 
 i know. exactly this has the potential for ping-pong if you do on-demand
 conversion of the actual store.

What ping-pong? If there's no UTF-16 encoding of the read-only and 
unchangeable data, you use QString::fromUtf8. If there is, you return 
QString::fromRawData.

When you write, you write with the encoding. Already-running applications must 
reopen the file, or scan to a later point in it anyway to see the new value.

 anyway, i really wonder whether insisting on utf-16 makes sense, assuming
 that the store is not abused for more than config data. KConfig and
 QSettings use utf-8, too, and nobody seriously complained about that
 afaik. the dconf client can implement caching of converted data just
 like the exising classes do.

I have. Please try this:

valgrind --tool=massif kwrite

Then use the nice massifvisualizer to look at what consumes the most memory at 
startup. It's KConfig, upwards of a couple of megabytes of heap.

  If you don't detach and you do replace the pointers, when do you
  delete the old data?
 
 the lifetime would be bound to the qstringdata, like the latin1 data in
 qt3-. i wouldn't bother with sharing the converted values - upon
 detaching, the format which is needed for the operation which caused the
 detach is made the primary (embedded) and only data of the clone.

So you're advocating the detaching method, not the convert-and-inline-replace 
one which QUrl tries to do and fails.

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source Technology Center
  PGP/GPG: 0x6EF45358; fingerprint:
  E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358


signature.asc
Description: This is a digitally signed message part.


Re: Git migration status (Was: Re: Where is kmix hidden?)

2011-08-21 Thread Lukas Appelhans
Hey!

Cool... I see you go for a split up of kdenetwork (makes sense imo).

The problem I see at the moment you have to build all applications together in 
kdenetwork, otherwise they fail to compile. So this is a first thing which 
needs to change.

What is missing are tags and branches right?

Lukas

PS: The KGet svn cp comment is (I guess) about this branch: 
http://websvn.kde.org/branches/work/make_kget_cool/?pathrev=647221
As far as I know this is the KGet2 rewrite and was copied to trunk then...

 I have partially written the rules for kdenetwork, but they are not
 complete. I don't have time to work on them at the moment, so someone
 else taking that over would be good if it's going to happen any time
 soon. The work I've done so far is in the git repository with all the
 other conversion rules.
 
 --
 George

signature.asc
Description: This is a digitally signed message part.


Re: Git migration status (Was: Re: Where is kmix hidden?)

2011-08-21 Thread Stefan Majewsky
On Fri, Aug 19, 2011 at 9:27 PM, John Layt jl...@kde.org wrote:
 The kde-wallpapers and kdeartwork modules are likely to remain in svn until
 git handles binary blobs better.  Then there is also a lot of stuff still in
 extragear and playground.

This is an issue with kdegames as well: A complete source tree is 112
megabytes, of which about AFAIR 80% is data (SVGZ, audio files,
levelsets, etc.). Some months ago, I've proposed on kde-games-devel@
to split a kdegames-data module from kdegames. The discussion ended
because we decided not to switch to git before a workflow exists to
handle split repositories. (With SuperBuild being available now, this
discussion probably needs to be restarted.)

What I proposed:
1. Freeze trunk/KDE/kdegames, conserve this state as kdegames-history.git
2. Move all data files from trunk/KDE/kdegames to trunk/KDE/kdegames-data.
3. Move the source code to git.kde.org (as fresh repos, to avoid data
blobs in the object db).
4. Optionally patch the games to run without data. This is because the
build order of the modules would be: kdegames, then kdegames-data.

Greetings
Stefan


Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread John Layt
On Saturday 20 Aug 2011 13:11:32 Oswald Buddenhagen wrote:
 On Sat, Aug 20, 2011 at 12:20:55PM +0200, Thiago Macieira wrote:

  It needs a global spec too, since global shortcut grabbing with X11 libs
  only is sorely lacking. I think the solution we made for KDE 4 is
  actually quite good. Anyone wants to create an XDG spec for global
  accelerators?
 
 well, yeah. good luck to whoever. :P

We had a bad experience last time, but we should use that experience to play 
smarter this time around.  The big complaints that I saw from Gnome last time 
was that we supposedly had no clear statement of why the spec was needed and 
what it was meant to achieve, that they had no real involvment in the drafting 
of the spec, that we talked to the wrong people, and that it was something 
they didn't need in G3.

So lets turn that on its head.  Lets write a statement saying why we need a 
spec and what it needs to achieve.  Mention we have an existing solution that 
would be a good starting point, but don't actually detail it.  Then send that 
to xdg and Gnome and Unity and anyone else asking who are the right pople to 
talk to.  Hopefully those people then decide it's a good thing and agree to 
work together to develop a standard.  If they're not interested then we get to 
draft it ourselves knowing there can be no complaints.

  But just as before, I don't see why our code can't be cross-desktop. So
  no argument in favour of dropping kglobalaccel.
 
 i think it is pretty clear that our *code* is not going to be accepted
 as the cross-desktop solution. seeing the reluctance to anything with g*
 within our community, why do you think the gnomers would embrace
 anything with a q* or even k*, esp. given that it usually weights in at
 least twice as much as the typical g* solution?

We depend on a lot of g code these days, some of it even willingly, and we're 
looking at even more.  As for Gnome never accepting any q/k code, it's mostly 
true, but copying is the sincerest form of flattery :-)  Can we actually point 
to cases where Gnome rejected Qt/KDE code proposals, and how about ones that 
have been accepted (Poppler?).

I'm not convinced it's really about the weight or otherwise of our solutions 
(system-config-printer is written in python!).  How much is just C vs C++, or 
our not pushing stuff, or just not having key people employed by the distros?  
I'd like to see what happens when Qt5 has a nice light QtCore that we use to 
write something small and light that they need.

John.


Re: Git migration status (Was: Re: Where is kmix hidden?)

2011-08-21 Thread George Kiagiadakis
On Sun, Aug 21, 2011 at 4:05 PM, Lukas Appelhans l.appelh...@gmx.de wrote:
 Hey!

 Cool... I see you go for a split up of kdenetwork (makes sense imo).

 The problem I see at the moment you have to build all applications together in
 kdenetwork, otherwise they fail to compile. So this is a first thing which
 needs to change.

It is not really required to build them all together. I used to have
git-svn clones of krdc, krfb and kopete and built them separately.
Actually, all the work I have done on krfb was done this way. Iirc
there is extra cmake code in there to ensure that they build both
standalone and all together.

 What is missing are tags and branches right?

 Lukas

 PS: The KGet svn cp comment is (I guess) about this branch:
 http://websvn.kde.org/branches/work/make_kget_cool/?pathrev=647221
 As far as I know this is the KGet2 rewrite and was copied to trunk then...

 I have partially written the rules for kdenetwork, but they are not
 complete. I don't have time to work on them at the moment, so someone
 else taking that over would be good if it's going to happen any time
 soon. The work I've done so far is in the git repository with all the
 other conversion rules.

 --
 George


Re: Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Albert Astals Cid
A Diumenge, 21 d'agost de 2011, John Layt vàreu escriure:
 On Saturday 20 Aug 2011 13:11:32 Oswald Buddenhagen wrote:
  On Sat, Aug 20, 2011 at 12:20:55PM +0200, Thiago Macieira wrote:
   It needs a global spec too, since global shortcut grabbing with X11
   libs only is sorely lacking. I think the solution we made for KDE 4
   is actually quite good. Anyone wants to create an XDG spec for
   global accelerators?
  
  well, yeah. good luck to whoever. :P
 
 We had a bad experience last time, but we should use that experience to play
 smarter this time around.  The big complaints that I saw from Gnome last
 time was that we supposedly had no clear statement of why the spec was
 needed and what it was meant to achieve, that they had no real involvment
 in the drafting of the spec, that we talked to the wrong people, and that
 it was something they didn't need in G3.
 
 So lets turn that on its head.  Lets write a statement saying why we need a
 spec and what it needs to achieve.  Mention we have an existing solution
 that would be a good starting point, but don't actually detail it.  Then
 send that to xdg and Gnome and Unity and anyone else asking who are the
 right pople to talk to.  Hopefully those people then decide it's a good
 thing and agree to work together to develop a standard.  If they're not
 interested then we get to draft it ourselves knowing there can be no
 complaints.
 
   But just as before, I don't see why our code can't be cross-desktop.
   So
   no argument in favour of dropping kglobalaccel.
  
  i think it is pretty clear that our *code* is not going to be accepted
  as the cross-desktop solution. seeing the reluctance to anything with g*
  within our community, why do you think the gnomers would embrace
  anything with a q* or even k*, esp. given that it usually weights in at
  least twice as much as the typical g* solution?
 
 We depend on a lot of g code these days, some of it even willingly, and
 we're looking at even more.  As for Gnome never accepting any q/k code,
 it's mostly true, but copying is the sincerest form of flattery :-)  Can we
 actually point to cases where Gnome rejected Qt/KDE code proposals, and how
 about ones that have been accepted (Poppler?).

You really can not cound poppler as coming from our side. Poppler was 
started and driven by Red Hat Desktop Team (or something similar) and it was 
not until they lost interest (aka Red Hat relocated people to work on a 
different project) that real easy collaboration started to happen.

Albert

 
 I'm not convinced it's really about the weight or otherwise of our solutions
 (system-config-printer is written in python!).  How much is just C vs C++,
 or our not pushing stuff, or just not having key people employed by the
 distros? I'd like to see what happens when Qt5 has a nice light QtCore that
 we use to write something small and light that they need.
 
 John.


Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Oswald Buddenhagen
On Sun, Aug 21, 2011 at 02:54:41PM +0200, Thiago Macieira wrote:
 On Sunday, 21 de August de 2011 12:25:52 Oswald Buddenhagen wrote:
  yes, when the faulty module crashes. not so when it deadlocks or
  busy-loops. also, a restart typically loses state.
 
 True, but I don't remember that happening a single time to me in the past 3 
 years. I remember seeing people complain about kded taking 100% CPU, but it 
 hasn't happened to me.
 
yes, things have stabilized meanwhile. but the problem will re-appear
during the kde5 cycle. it's inherent, after all.

 The extensive use of templates probably generates more code, but due to 
 better 
 inlining, the code is potentially faster. So we're trading off code size for 
 code performance.
 
probably. depending on the use case, this may or may not be a convincing
argument.

  it's going to be interesting to push it down the stack enough that
  people stop thinking about it.
 
 Or make enough interesting services that are Qt-based.

well, that's the only way to do the pushing. it's not like we have any
political leverage to do it differently.

 The point is just as above: we, the KDE and Qt communities, are not
 required to learn glib in order to write a new service or library.
 
some day maybe.
but to be able to join existing projects we have to learn glib anyway.
and if qt becomes a common framework for low-level things, others will
have to learn qt. we are going to fragment the ecosystem! :D

 What ping-pong? If there's no UTF-16 encoding of the read-only and 
 unchangeable data, you use QString::fromUtf8.

uhm, ok, i think i misunderstood you.

 If there is, you return QString::fromRawData.
 
uhm, no, you must make a deep copy, otherwise you get a time bomb.
but yeah, no conversion, so pretty cheap.

  anyway, i really wonder whether insisting on utf-16 makes sense, assuming
  that the store is not abused for more than config data. [...]
 
   valgrind --tool=massif kwrite
 
 Then use the nice massifvisualizer to look at what consumes the most memory 
 at 
 startup. It's KConfig, upwards of a couple of megabytes of heap.
 
there is a 90+ kb file named katesyntaxhighlightingrc which seems to be
mostly a cache file. this use of kconfig borders on abuse. not sure if
there are other files on your system or kconfig really is that inefficient.
but generally speaking, a program which actually needs to query several
thousand keys on startup is definitely Doing It Wrong. and if it reads
only a few keys (of even a million), then the conversion cache will hold
almost nothing. on top of that, the cached converted values will be to
some degree shared with the objects which requested the values.

 So you're advocating the detaching method, not the
 convert-and-inline-replace one which QUrl tries to do and fails.
 
uhm, maybe. it's not like the terminology would be self-evident. ;)


Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread John Layt
On Saturday 20 Aug 2011 10:14:20 Oswald Buddenhagen wrote:
 On Tue, Aug 16, 2011 at 08:00:19PM +0100, John Layt wrote:
  I've certainly seen him state that he doesn't care about KDE, that we are
  irrelevent to anything he does, and he sees no reason to collaborate on
  anything with us.
 
 and he's right. show me one case where the outcome of his low-level work
 did not meet kde requirements.

Ummm, Pulse Audio?  It completely broke sound under KDE.  It caused a lot of 
users a lot of pain before Colin come along to fix it for us and for Gnome 
users too.  I don't want to see a repeat of that, so figuring out how to get 
Lennart to care becomes important.

  It's similar to his attitude towards *BSD.
 
 he's right with that, too. if the bsd's (or solaris, for that matter)
 want to stay relevant on the desktop, they need to catch up with linux.
 or put differently, they make up about about 0.1% of our user base,
 which easily could be several times bigger if we were able to provide
 something well-integrated (mac os x anyone?). do you think they are
 worth sacrificing?

I have no problem with him saying he won't support BSD, I'm happy for them to 
write their own patches or version, but that's a bit hard for them to do if 
the dbus api is a moving target.  If we have people willing to do the work to 
support KDE on BSD, then who are we to stop them provided the rest of KDE 
isn't negatively affected?  Will we also stop supporting Windows and OSX 
because we're not fully integrated there and just focus on Linux?  That sounds 
very much like the GnomeOS idea...

John.


Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Boudewijn Rempt
On Sunday 21 August 2011 Aug, Oswald Buddenhagen wrote:
 On Sun, Aug 21, 2011 at 02:54:41PM +0200, Thiago Macieira wrote:
  On Sunday, 21 de August de 2011 12:25:52 Oswald Buddenhagen wrote:
   yes, when the faulty module crashes. not so when it deadlocks or
   busy-loops. also, a restart typically loses state.
  
  True, but I don't remember that happening a single time to me in the past 3 
  years. I remember seeing people complain about kded taking 100% CPU, but it 
  hasn't happened to me.
  
 yes, things have stabilized meanwhile. but the problem will re-appear
 during the kde5 cycle. it's inherent, after all.

Actually kded using 100% cpu happened to me last week, when I was travelling. 
Took me some googling to figure out that it was some incompability with 
libntrack and that I needed to install that from source.

I even had to use gnome as my desktop for a day before I had time to figure out 
what was going on...

-- 
Boudewijn Rempt
http://www.valdyas.org, http://www.krita.org, http://www.boudewijnrempt.nl


Nepomuk and MySQL - Why?

2011-08-21 Thread Mark
Hi,

Every time when i start a brand new KDE session with a new user i see
some stuff passing by with MySQL.. Now i understand a database is
needed for nepomuk but does it have to be a heavy weight one like
MySQL?

MySQL is not only big in hdd footprint, it also loves to suck up
memory. Some alternatives i can think of:
- SQLite
- MongoDB

A bit about MongoDB. That database spits data out in BSON format
(Binary JSON) which -to me- seems to perfectly fit the the QML
strategy that KDE seems to be going to (for KDE 5.0 or so?). It
prevents conversion to JSON and thus would seem like a perfect fit for
QML plasmoids. On the C++ side things are a bit different. There is a
C++ wrapper for MongoDB but it uses boost. There is no native Qt
wrapper for MongoDB (yet).

The advantages of using MongoDB over MySQL are (that i can think of in
a few seconds):
- Just a few MB hdd footprint for the binary and libs
- Faster then MySQL
- Easy to use in QML plasmoids

The disadvantage is obviously more hdd space for the database itself
and no existing Qt wrapper.

So, why is MySQL used and not a lighter alternative like SQLite or MongoDB?

Please do note that this is by no means a intent to start a flame war
or anything! I'm just curious behind the MySQL reasoning and if it's
worth a consideration to move to another lighter database.

Kind regards,
Mark


Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Thiago Macieira
On Sunday, 21 de August de 2011 16:40:32 Oswald Buddenhagen wrote:
  If there is, you return QString::fromRawData.
 
 uhm, no, you must make a deep copy, otherwise you get a time bomb.
 but yeah, no conversion, so pretty cheap.

You can also use a QStringData with a regular refcount and just watch as it 
becomes 1. When all the QStrings in this segment of mmapped memory have 
refcount 1 or 0, then you can unmap it.

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source Technology Center
  PGP/GPG: 0x6EF45358; fingerprint:
  E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358


signature.asc
Description: This is a digitally signed message part.


Re: Nepomuk and MySQL - Why?

2011-08-21 Thread Mark
On Sun, Aug 21, 2011 at 5:25 PM, Thiago Macieira thi...@kde.org wrote:
 On Sunday, 21 de August de 2011 17:03:10 Mark wrote:
 Every time when i start a brand new KDE session with a new user i see
 some stuff passing by with MySQL.. Now i understand a database is
 needed for nepomuk but does it have to be a heavy weight one like
 MySQL?

 It's not nepomuk, it's akonadi.

 MySQL is not only big in hdd footprint, it also loves to suck up
 memory. Some alternatives i can think of:
 - SQLite
 - MongoDB

 SQLite works now. It didn't use to in previous versions, since the SQL
 requirements that Akonadi had weren't supported.

 A bit about MongoDB.

 Irrelevant until someone writes a QtSql backend for it.

which is not possible since the entire NoSQL principle doesn't fit SQL.
Perhaps a QtNoSQL implementation ^_-


Re: d-conf (was: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit))

2011-08-21 Thread Oswald Buddenhagen
On Sun, Aug 21, 2011 at 05:23:14PM +0200, Thiago Macieira wrote:
 On Sunday, 21 de August de 2011 16:40:32 Oswald Buddenhagen wrote:
   If there is, you return QString::fromRawData.
  
  uhm, no, you must make a deep copy, otherwise you get a time bomb.
 
 You can also use a QStringData with a regular refcount and just watch as it 
 becomes 1. When all the QStrings in this segment of mmapped memory have 
 refcount 1 or 0, then you can unmap it.
 
well, yes, you can put a (shallow) copy of every qstring you hand out
into an appropriate data structure and from there watch the refcount.

but maps become invalid when the underlying data changes. in fact, it
would seem that reads must be locked out while a write is in progress.


systemd and KDE (was: Re: kdeinit)

2011-08-21 Thread Stefan Majewsky
On Sun, Aug 21, 2011 at 4:54 PM, John Layt jl...@kde.org wrote:
 Ummm, Pulse Audio?  It completely broke sound under KDE.  It caused a lot of
 users a lot of pain before Colin come along to fix it for us and for Gnome
 users too.  I don't want to see a repeat of that, so figuring out how to get
 Lennart to care becomes important.

During Desktop Summit, I've jumped on the systemd-KDE-integration
bandwagon (which seems to be only me at the moment, or is there any
work which I'm not aware of?).

As a very first step, there's libqsystemd [1], which I'll try to
finish and polish in the next few weeks. This should make it easy to
write apps that communicate with systemd. For example, what about a
proper Plasma dataengine for systemd units/jobs and an applet that
e.g. shows the state of a systemd unit? There's an proof-of-concept
dataengine in the repo [1], but the subject is in need of someone who
knows his way around Plasma dataengines and friends.

The second integration point is the unified interfaces for system
configuration that systemd provides. If systemd is present, it should
be used to set (possibly also get) the hostname, locale, and system
time. Also, KDM should be able to communicate with systemd-logind,
which (as outlined by Lennart's talk at DS) seeks to replace
ConsoleKit.

The third integration point is to use systemd as a session manager,
thereby (as already mentioned) possibly replacing big parts of our own
startup sequence. Once I can get a current version of systemd to
compile on my machine, I will try to look into this, but of course
help is appreciated on all fronts.

Greetings
Stefan

[1] git clone kde:libqsystemd


Re: Nepomuk and MySQL - Why?

2011-08-21 Thread Thiago Macieira
On Sunday, 21 de August de 2011 17:28:36 Mark wrote:
  A bit about MongoDB.
  
  Irrelevant until someone writes a QtSql backend for it.
 
 which is not possible since the entire NoSQL principle doesn't fit SQL.
 Perhaps a QtNoSQL implementation ^_-

That doesn't work. Akonadi is implemented entirely on top of SQL and QtSql.

If MongoDB can't do SQL, it can't be a DB backend  for Akonadi and thus the 
discussion is irrelevant.

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source Technology Center
  PGP/GPG: 0x6EF45358; fingerprint:
  E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358


signature.asc
Description: This is a digitally signed message part.


Re: d-conf (was: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit))

2011-08-21 Thread Thiago Macieira
On Sunday, 21 de August de 2011 17:46:22 Oswald Buddenhagen wrote:
 but maps become invalid when the underlying data changes. in fact, it
 would seem that reads must be locked out while a write is in progress.

By design it is.

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source Technology Center
  PGP/GPG: 0x6EF45358; fingerprint:
  E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358


signature.asc
Description: This is a digitally signed message part.


Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Thiago Macieira
On Sunday, 21 de August de 2011 17:30:39 Oswald Buddenhagen wrote:
  That sounds very much like the GnomeOS idea...
 
 yes, it does. i'm fully sold on that idea. if kde is ever going to have
 any globally significant market share (*), then as applications and
 possibly an alternative shell - on top of gnome os.
 
  exclude from that specialized markets where a broad range of
 applications (and thus a workable 3rd party developer platform) is
 insignificant.

Considering the audience and considering that KDE has more deployments than 
GNOME, why can't it be the other way around? Why do we need to drop what we 
already have and are ahead to gain more?

You're not going to find supporters of that idea here. Therefore, we will 
continue to develop KDE Platform as the main desktop and require GNOME apps to 
integrate with us instead (and if they don't, we'll probably call their apps 
and frameworks badly designed -- which will be partly right and partly wrong 
and petty).

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source Technology Center
  PGP/GPG: 0x6EF45358; fingerprint:
  E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358


signature.asc
Description: This is a digitally signed message part.


Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Chusslove Illich
 [: Thiago Macieira :]
 I once wrote a benchmark comparing iterating over a QString to iterating
 over a gchar UTF-8 string using glib functions to get each UCS-4 character
 (ostensibly to prove that UTF-16 was better than UTF-8). The result was
 clear: Qt code was much faster, over 10x, compared to glib.

 [...]

 The point is just as above: we, the KDE and Qt communities, are not
 required to learn glib in order to write a new service or library.

Funilly, this is something that I was just intending to do for the sake of
acceptance. I started by looking for the necessary pieces in glib and how
they work, saw glib's iteration over characters, and thought this has got
to be mightily slower. And the code I want to write will mostly be doing
that.

Do you perhaps still have that benchmark code? Do you have (or know of)
similar benchmarks for XML parsing (GMarkupParser vs. QXmlStreamReader) and
JavaScript (QtScript vs. say SpiderMonkey)? Also, a QRegExp vs. GRegex
benchmark would be nice.

If the Qt-based implementation would be significantly superior in
performance, I gather you would advise just doing it and ignoring any but
C++... but another dependency... objections?

Also, with library being native C++, can there be any problem with C
bindings? I tried something like this:

  // lib.h
  class Foo {
  public:
  Foo (...);
  void doSomething (...);
  };

  // lib.cpp
  #include lib.h
  Foo::Foo (...) { ... }
  void Foo::doSomething (...) { ... }

  // c_bindings.h
  typedef struct Foo CFoo;
  CFoo *foo_new (...);
  void foo_dosomething (...);

  // c_bindings.cpp
  #include lib.h
  extern C {
  #include c_bindings.h
  CFoo *foo_new (...) { return new Foo(...); }
  void foo_dosomething (CFoo *a, ...) { a-doSomething(...); }
  }

  // app_main.c
  #include c_bindings.h
  int main ()
  {
  CFoo *f;
  f = foo_new(...);
  foo_dosomething(f, ...);
  return 0;
  }

I could build it with:

  g++ lib.cpp
  g++ c_bindings.cpp
  gcc app_main.c lib.o c_bindings.o -lstdc++

but I don't know if this test covers everything.


-- 
Chusslove Illich (Часлав Илић)


signature.asc
Description: This is a digitally signed message part.


Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Oswald Buddenhagen
On Sun, Aug 21, 2011 at 06:26:19PM +0200, Chusslove Illich wrote:
 Also, with library being native C++, can there be any problem with C
 bindings?

once upon a time, there were (maybe still are, i dunno) more or less
full c bindings for qt and kde, and they even served as a base for
bindings to some script language. so it's doable, and the history of
kdebindings should contain enough example code.
and there are some libraries in actual use which are written in c++ but
expose (only) a c api to the outside. so there is no technical reason
why it wouldn't work. the only challenge is selling the qt dependency.
:)


Re: Git migration status (Was: Re: Where is kmix hidden?)

2011-08-21 Thread Lukas Appelhans
On Sunday 21 August 2011 17:27:01 George Kiagiadakis wrote:
 On Sun, Aug 21, 2011 at 4:05 PM, Lukas Appelhans l.appelh...@gmx.de wrote:
  Hey!
  
  Cool... I see you go for a split up of kdenetwork (makes sense imo).
  
  The problem I see at the moment you have to build all applications
  together in kdenetwork, otherwise they fail to compile. So this is a
  first thing which needs to change.
 
 It is not really required to build them all together. I used to have
 git-svn clones of krdc, krfb and kopete and built them separately.
 Actually, all the work I have done on krfb was done this way. Iirc
 there is extra cmake code in there to ensure that they build both
 standalone and all together.
Okay. This is not true for KGet though: All searching for dependencies is done 
in the top-level CMakeLists.txt.

Lukas
 
  What is missing are tags and branches right?
  
  Lukas
  
  PS: The KGet svn cp comment is (I guess) about this branch:
  http://websvn.kde.org/branches/work/make_kget_cool/?pathrev=647221
  As far as I know this is the KGet2 rewrite and was copied to trunk
  then... 
  I have partially written the rules for kdenetwork, but they are not
  complete. I don't have time to work on them at the moment, so someone
  else taking that over would be good if it's going to happen any time
  soon. The work I've done so far is in the git repository with all the
  other conversion rules.
  
  --
  George

signature.asc
Description: This is a digitally signed message part.


Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Thiago Macieira
On Sunday, 21 de August de 2011 18:26:19 Chusslove Illich wrote:
 Do you perhaps still have that benchmark code? Do you have (or know of)

The code exists, but I don't have it. It's part of the QCharIterator work I 
did while at Nokia but never published, so I don't have rights to that code 
anymore.

I'm sure I put it in the codereview tool before I left so it would be 
opensourced some day.

 similar benchmarks for XML parsing (GMarkupParser vs. QXmlStreamReader) and
 JavaScript (QtScript vs. say SpiderMonkey)? Also, a QRegExp vs. GRegex
 benchmark would be nice.

XML parsing? no, I doubt.

JS engine? Yes, a lot. That's why JavaScriptCore is being replaced with V8 
now.

QRegExp? don't try. The RE backend needs to be replaced.

 If the Qt-based implementation would be significantly superior in
 performance, I gather you would advise just doing it and ignoring any but
 C++... but another dependency... objections?

C++ being a dependency is a very, very weak argument. There are lots of GNOME 
applications using gtkmm, pangomm, etc. C++ is present in most/all systems 
anyway, so it's not a dependency.

The argument they may have is to Qt as a dependency, but as I said, that's not 
an argument for me. Qt being present and loaded into memory is baseline.

 Also, with library being native C++, can there be any problem with C
 bindings? I tried something like this:

All problems with bindings can be solved.

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source Technology Center
  PGP/GPG: 0x6EF45358; fingerprint:
  E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358


signature.asc
Description: This is a digitally signed message part.


Re: Nepomuk and MySQL - Why?

2011-08-21 Thread Tomaz Canabrava
On Sun, Aug 21, 2011 at 1:09 PM, Thiago Macieira thi...@kde.org wrote:
 On Sunday, 21 de August de 2011 17:28:36 Mark wrote:
  A bit about MongoDB.
 
  Irrelevant until someone writes a QtSql backend for it.

 which is not possible since the entire NoSQL principle doesn't fit SQL.
 Perhaps a QtNoSQL implementation ^_-

 That doesn't work. Akonadi is implemented entirely on top of SQL and QtSql.

 If MongoDB can't do SQL, it can't be a DB backend  for Akonadi and thus the
 discussion is irrelevant.

Nope, MongoDB can't do SQL. Mongo doesn't have a 'Language
Specification', it needs methods to add / remove items, and it's very
weird to do updates. It's easyer to create simple adds, very complex
to do complex queries.


 --
 Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source Technology Center
      PGP/GPG: 0x6EF45358; fingerprint:
      E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358



Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Oswald Buddenhagen
On Sun, Aug 21, 2011 at 06:15:53PM +0200, Thiago Macieira wrote:
 On Sunday, 21 de August de 2011 17:30:39 Oswald Buddenhagen wrote:
  if kde is ever going to have
  any globally significant market share (*), then as applications and
  possibly an alternative shell - on top of gnome os.
  
  (*) exclude from that specialized markets [...].
 
 Considering the audience and considering that KDE has more deployments
 than GNOME, why can't it be the other way around?

this is where we started from. gnome is now serious about making a
complete platform. if they succeed, they will win. big time. that's how
apple did it, at the technical level. and how kde won't, due to lack of
interest (commercial or otherwise) in that area.

 Why do we need to drop what we already have and are ahead to gain
 more?
 
the point is that there isn't much to drop. it's some barely
maintained code, and some informal specifications the best of which we
could implement in gnome with relative ease if we actually cared to.

 You're not going to find supporters of that idea here. [...]
 
i'm not sure whether you believe that this is how it should be or
whether this is resignated cynicism.


Re: kdeinit

2011-08-21 Thread Alex Merry

On 21/08/11 15:23, John Layt wrote:
So lets turn that on its head. Lets write a statement saying why we 
need a spec and what it needs to achieve. Mention we have an existing 
solution that would be a good starting point, but don't actually 
detail it. Then send that to xdg and Gnome and Unity and anyone else 
asking who are the right pople to talk to. Hopefully those people then 
decide it's a good thing and agree to work together to develop a 
standard. If they're not interested then we get to draft it ourselves 
knowing there can be no complaints.


On the other hand, what's the point of creating a cross-desktop 
standard without anyone involved from other desktops?  We're just 
creating a KDE standard and slapping a cross-desktop label on it, 
which is kind of missing the point.


Although KGlobalAccel could really do with a nicer D-Bus API.

Alex


Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Ambroz Bizjak
  if we start from an all-privileged daemon like systemd. It's privilege
  elevation that suffers.

 does the session systemd run privileged in the first place?

 I have no clue. I don't even know if there's a session systemd.


I'm not sure exactly how you people are planning to make use of
systemd; but hopefully:

- It won't require the operating system to be running systemd as an
init system. Any OS/user should be free to use a different/custom init
system and still be able to use KDE.
- It won't require root privileges to start KDE (including setuid
programs). I don't see how dropping privileges from a user account
wouldn't work (except perhaps the not implemented part, in which
case the right way is to implement it).

I suggest you think well whether systemd is indeed the right solution.
As far as I see it, it was designed to be used for system services
only, and not as a generic framework for controlling services and
dependencies (hopefully I'm wrong).

I've written some software which might also be used in this place.
Please, read it through: http://code.google.com/p/badvpn/wiki/NCD .
Yes, it doesn't have everything that would be needed to plug it into
KDE right now, but it might be worth looking into because of its
simplicity, compared to systemd.

Regards,
Ambroz


Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Tom Gundersen
On Sun, Aug 21, 2011 at 11:28 AM, Thiago Macieira thi...@kde.org wrote:
 On Sunday, 21 de August de 2011 10:19:26 Oswald Buddenhagen wrote:
  if we start from an all-privileged daemon like systemd. It's privilege
  elevation that suffers.

 does the session systemd run privileged in the first place?

 I have no clue. I don't even know if there's a session systemd.

systemd can be run in session mode, and I assume this is what is being
discussed for possibly replacing kded (using the system instance would
not make much sense). The session instance does not have special
privileges (just like the dbus session instance).

It's great to see this being discussed, having the possibility of
integrating systemd with kde would be truly awesome!

Cheers,

Tom


Re: systemd and KDE (was: Re: kdeinit)

2011-08-21 Thread Tom Gundersen
On Sun, Aug 21, 2011 at 5:59 PM, Stefan Majewsky
stefan.majew...@googlemail.com wrote:
 Once I can get a current version of systemd to
 compile on my machine, I will try to look into this, but of course
 help is appreciated on all fronts.

Feel free to drop by #systemd if you are having trouble with compiling
/ dependencies (I'm tomegun). Alternatively, Arch Linux ships the
latest version of systemd in our community repositories.

Cheers,

Tom


Re: Review Request: GSoC: Errors handling during file transfer.

2011-08-21 Thread Cyril Oblikov

---
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/102388/
---

(Updated Aug. 21, 2011, 3:21 p.m.)


Review request for kdelibs and David Faure.


Summary
---

Modeless dialog to handle interactions and modifications in CopyJob.


Diffs
-

  kio/CMakeLists.txt b517621 
  kio/kio/copyjob.h eb88c7a 
  kio/kio/copyjob.cpp eff7825 
  kio/kio/interactiondialog/abstractinteractionitem.h PRE-CREATION 
  kio/kio/interactiondialog/abstractinteractionmodel.h PRE-CREATION 
  kio/kio/interactiondialog/abstractinteractionmodel.cpp PRE-CREATION 
  kio/kio/interactiondialog/allinteractionitem.h PRE-CREATION 
  kio/kio/interactiondialog/allinteractionmodel.h PRE-CREATION 
  kio/kio/interactiondialog/allinteractionmodel.cpp PRE-CREATION 
  kio/kio/interactiondialog/existinginteractionitem.h PRE-CREATION 
  kio/kio/interactiondialog/existinginteractionmodel.h PRE-CREATION 
  kio/kio/interactiondialog/existinginteractionmodel.cpp PRE-CREATION 
  kio/kio/interactiondialog/interactiondialog.h PRE-CREATION 
  kio/kio/interactiondialog/interactiondialog.cpp PRE-CREATION 
  kio/kio/interactiondialog/interactiondialogtab.h PRE-CREATION 
  kio/kio/interactiondialog/interactiondialogtab.cpp PRE-CREATION 
  kio/kio/interactiondialog/renameinteractionwidget.h PRE-CREATION 
  kio/kio/interactiondialog/renameinteractionwidget.cpp PRE-CREATION 
  kio/kio/interactiondialog/requestitemmodel.h PRE-CREATION 
  kio/kio/interactiondialog/requestitemmodel.cpp PRE-CREATION 
  kio/kio/interactiondialog/unreadableinteractionitem.h PRE-CREATION 
  kio/kio/interactiondialog/unreadableinteractionmodel.h PRE-CREATION 
  kio/kio/interactiondialog/unreadableinteractionmodel.cpp PRE-CREATION 
  kio/kio/jobuidelegate.h 25e0728 
  kio/kio/jobuidelegate.cpp 85679c2 

Diff: http://git.reviewboard.kde.org/r/102388/diff


Testing
---


Thanks,

Cyril



Re: kdeinit

2011-08-21 Thread Thiago Macieira
On Sunday, 21 de August de 2011 21:07:05 Alex Merry wrote:
 On 21/08/11 15:23, John Layt wrote:
  So lets turn that on its head. Lets write a statement saying why we
  need a spec and what it needs to achieve. Mention we have an existing
  solution that would be a good starting point, but don't actually
  detail it. Then send that to xdg and Gnome and Unity and anyone else
  asking who are the right pople to talk to. Hopefully those people then
  decide it's a good thing and agree to work together to develop a
  standard. If they're not interested then we get to draft it ourselves
  knowing there can be no complaints.

 On the other hand, what's the point of creating a cross-desktop
 standard without anyone involved from other desktops?  We're just
 creating a KDE standard and slapping a cross-desktop label on it,
 which is kind of missing the point.

 Although KGlobalAccel could really do with a nicer D-Bus API.

It wouldn't be the first time someone pushes a spec without a second user of
it.

But the point is that we should open up the discussion and do the work of
elaborating a spec. We have identified a need and we have a solution for it.
I'm sure others see the similar problem, even if they don't have the time for
it now (à la status notifier spec).

--
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source Technology Center
  PGP/GPG: 0x6EF45358; fingerprint:
  E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358


signature.asc
Description: This is a digitally signed message part.


Re: Review Request: Speed limit in ftp kio slave

2011-08-21 Thread Nicolas Alvarez


 On Aug. 10, 2011, 1:07 p.m., David Faure wrote:
  kioslave/ftp/speedController.h, line 24
  http://git.reviewboard.kde.org/r/102267/diff/1/?file=31277#file31277line24
 
  kde_file.h isn't used in this header - move the #include to the .cpp 
  file.
 
 Tushar Mehta wrote:
 I have used it for usleep. If I am not including it then it give me this:
 error: ‘usleep’ was not declared in this scope

usleep is in unistd.h. Include that instead.


- Nicolas


---
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/102267/#review5593
---


On Aug. 9, 2011, 7:16 p.m., Tushar Mehta wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 http://git.reviewboard.kde.org/r/102267/
 ---
 
 (Updated Aug. 9, 2011, 7:16 p.m.)
 
 
 Review request for kdelibs.
 
 
 Summary
 ---
 
 - This patch contains the basic code which will put the limit on download 
 speed of the ftp data transfer.
 - It is looking for speed-limit meta-data for deciding how much speed 
 control is required.
 - If this meta-data is not found, code will work as it was before and no 
 speed control related code will come into picture.
 - This patch is the most basic one which I have testing on my system and to 
 the extent it is controlling the speed.
 - Lets say if speed limit is 30 KBps then mostly will get the avg speed 
 around 30 to 35 KBps.
 - I am using QTime for measuring time elapsed between two socket read call 
 and its precision is in millisecond. Looping is taking place in microsecond 
 and thats why I am getting almost all the time 0 as time elapsed in between 
 two calls.
 - To solve the above problem usleep is introduced to make it sync with the 
 timer.
 
 
 Diffs
 -
 
   kioslave/ftp/CMakeLists.txt e080b02 
   kioslave/ftp/ftp.h 0bd375b 
   kioslave/ftp/ftp.cpp 655524a 
   kioslave/ftp/speedController.h PRE-CREATION 
   kioslave/ftp/speedController.cpp PRE-CREATION 
 
 Diff: http://git.reviewboard.kde.org/r/102267/diff
 
 
 Testing
 ---
 
 
 Thanks,
 
 Tushar
 




Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Oswald Buddenhagen
On Sun, Aug 21, 2011 at 08:32:07PM +0200, Thiago Macieira wrote:
 On Sunday, 21 de August de 2011 19:13:43 Oswald Buddenhagen wrote:
   Considering the audience and considering that KDE has more deployments
   than GNOME, why can't it be the other way around?
  
  this is where we started from. gnome is now serious about making a
  complete platform. if they succeed, they will win. big time. that's how
  apple did it, at the technical level. and how kde won't, due to lack of
  interest (commercial or otherwise) in that area.
 
 You seem to imply that we're not serious about doing the same.

it's not that we are not serious about it. we don't even try to.

 Your only argument so far was that we have less manpower than the
 GNOME team.
 
no, my argument is the *complete* lack of manpower directed at creating a
contemporary end-to-end experience for the user and 3rd party developer.
we are doing a desktop and stuff on top of it. sometimes a bit of
platform comes out of it as a side effect, but that's about it.

 If you count Canonical as the big driver for a cohesive desktop
 system, you should count them out already.
 
i was actually thinking primarily of redhat. but that doesn't matter so
much if the whole community buys into the idea.

 There's code that's barely maintained, true. I can think of KIO, for
 example. 

kio and kparts, just like qstyles and some other plugin systems we have
are not *really* part of the os platform. as far as the user is
concerned, only the settings which govern network behavior, widget
looks, etc. and the url syntax are part of the platform; the
implementations are exchangeable.
from a 3rd party dev perspective a common programming platform would be
desirable. but i cannot really assess how useful the ability to provide
universally usable components would be. it always seemed a bit of a
gimmick/niche market to me.

 Do you think all of Gtk and even glib is fully maintained?
 
i don't consider the toolkits part of the os platform itself. they are
available (the lsb says so) and some are used to build the os platform,
but in principle they are exchangeable.

 Should we pull efforts together? Yeah. Not gonna happen, though.

that's a rather sad conclusion.


Re: Git migration status (Was: Re: Where is kmix hidden?)

2011-08-21 Thread George Goldberg
On 21 August 2011 14:05, Lukas Appelhans l.appelh...@gmx.de wrote:
 Hey!

 Cool... I see you go for a split up of kdenetwork (makes sense imo).

Yup. Definitely.

 The problem I see at the moment you have to build all applications together in
 kdenetwork, otherwise they fail to compile. So this is a first thing which
 needs to change.

Others have already answered this - some of the apps already build
standalone, others will need a bit of cmake modifications first.

 What is missing are tags and branches right?

Yes. I think I've got the whole trunk history sorted iirc. Haven't
done the tags and branches though.

--
George


Re: kdeinit (was: Summary from Buildsystem BoF at Desktop Summit)

2011-08-21 Thread Thiago Macieira
On Monday, 22 de August de 2011 00:07:54 Oswald Buddenhagen wrote:
 kio and kparts, just like qstyles and some other plugin systems we have
 are not really part of the os platform. as far as the user is
 concerned, only the settings which govern network behavior, widget
 looks, etc. and the url syntax are part of the platform; the
 implementations are exchangeable.
 from a 3rd party dev perspective a common programming platform would be
 desirable. but i cannot really assess how useful the ability to provide
 universally usable components would be. it always seemed a bit of a
 gimmick/niche market to me.
 
  Do you think all of Gtk and even glib is fully maintained?
 
  
 
 i don't consider the toolkits part of the os platform itself. they are
 available (the lsb says so) and some are used to build the os platform,
 but in principle they are exchangeable.
 
  Should we pull efforts together? Yeah. Not gonna happen, though.
 
 that's a rather sad conclusion.

I'm sorry, I think I've only *now* got your point: your argument is that we're 
not trying to make system services for the platform and we don't have a master 
plan on how to get there. The example of KIO being that it's a great 
technology, but restricted to KDE and there's no effort to expand its userbase.

Akonadi, Solid, Phonon and others are counter-examples: they were designed to 
be part of a platform. They don't have KDE dependencies in their core. Akonadi 
is especially an example of our trying to build a platform, since it was 
proposed to fd.o -- Solid and Phonon are more C++ frameworks abstracting other 
technologies.

Also, I agree that Red Hat is pushing a lot of work into improving the 
platform. Can't fault their engineers for using glib when doing that.

But I still think you give the GNOME team too much credit for having a master 
plan for a platform. From my experience, it's more like us: let's fix what we 
find broken. But unlike us, they're willing to go to a deeper level and fix the 
platform -- HAL, udisks, upower, polkit, consolekit, systemd, etc.

Sometimes it seems like arrogance that they feel they own it all so they can 
change everything. But it can also be called boldness: if it's broken, let's 
redo it. So I agree we're missing a bit of that.

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source Technology Center
  PGP/GPG: 0x6EF45358; fingerprint:
  E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358


signature.asc
Description: This is a digitally signed message part.


Re: Git migration status (Was: Re: Where is kmix hidden?)

2011-08-21 Thread Lukas Appelhans
On Sunday 21 August 2011 23:13:30 George Goldberg wrote:
 On 21 August 2011 14:05, Lukas Appelhans l.appelh...@gmx.de wrote:
  Hey!
  
  Cool... I see you go for a split up of kdenetwork (makes sense imo).
 
 Yup. Definitely.
 
  The problem I see at the moment you have to build all applications
  together in kdenetwork, otherwise they fail to compile. So this is a
  first thing which needs to change.
 
 Others have already answered this - some of the apps already build
 standalone, others will need a bit of cmake modifications first.
Yes. I will see what I can do about that in the next weeks. :)
 
  What is missing are tags and branches right?
 
 Yes. I think I've got the whole trunk history sorted iirc. Haven't
 done the tags and branches though.
Okay.

Lukas
 
 --
 George

signature.asc
Description: This is a digitally signed message part.


Re: Review Request: Do not terminate threads

2011-08-21 Thread Albert Astals Cid


 On Aug. 21, 2011, 10:29 a.m., David Faure wrote:
  I think this patch is almost ready, but Dawit's comment seems right about 
  an improvement that should be done to it:
  
  - Move all the preemptive lookup logic from the thread's run function to 
  HostInfo::lookupHost. [No need to create a thread when DNS is already 
  cached].

I am a bit confused, as far as I can see, all the preemptive lookup logic is 
already in HostInfo::lookupHost, what more do you want me to move there?


- Albert


---
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/102179/#review5875
---


On Aug. 11, 2011, 10:10 p.m., Albert Astals Cid wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 http://git.reviewboard.kde.org/r/102179/
 ---
 
 (Updated Aug. 11, 2011, 10:10 p.m.)
 
 
 Review request for kdelibs and Dawit Alemayehu.
 
 
 Summary
 ---
 
 Each time the terminate code triggers my Konqueror crashes, i'm substituting 
 the terminate for just waiting the thread to finish and we just ignoring it.
 
 The code has a race condition in which wait() returns false, then we switch 
 to the thread and m_autoDelete is still not set and thus noone will delete 
 the thread. I can add a mutex if you guys think this is unacceptable.
 
 
 Diffs
 -
 
   kio/kio/hostinfo.cpp 344b1d8 
 
 Diff: http://git.reviewboard.kde.org/r/102179/diff
 
 
 Testing
 ---
 
 When the 
 kDebug()  Name look up for  hostName  failed;
 if triggers i do not get a crash anymore.
 
 
 Thanks,
 
 Albert