kde Syndicate content

» Dear Lazyweb: How can I fix this deadlock on shutdown

Thu, 09/30/2010 - 17:14

Hello dear lazyweb,

I have a problem that I could not solve nor find help by my usual paths. I’m speaking about a deadlock on shutdown I get sometimes with what will become KDevelop 4.1. You can find a backtrace in this bug report:

https://bugs.kde.org/show_bug.cgi?id=239032

The thing is this: Apparently some global QMutex is getting destroyed by the exit handler but the call to __pthread_cond_destroy does not return.

I have no clue on how to fix this. Is there at least a way to find out which mutex this is? Someone told me to have a look in /proc/PID/maps but there I only found out that - what a suprise - ~QMutex is defined in libQtCore.so… Or should I have looked for the this=0xfffffe00 address? Speaking of which - isn’t that address messed up?

Does anyone have a better idea?

» More BKO javascript goodness

Sat, 09/25/2010 - 22:54

Hey all,

I’ve improved my javascript highlighter for backtraces on bugs.kde.org and fixed some bugs (e.g. the BUG 123456 links where lost before). Additionally I just added another feature that gives you a nice little navigation bar like this:

improved highlighting of backtraces on bugs.kde.org with additional navigation helpers
highlighted backtrace with navigation bar

Pressing crash scrolls the window to the [KCrash Handler] in that backtrace, prev thread and next thread do what you would think they do.

To get all the goodies, click this link to install the updated script in GreaseMonkey:

http://users.physik.fu-berlin.de/~milianw/bko_highlighter.user.js

NOTE: This also works with Tampermonkey in Chromium!

Happy backtrace reading!

PS: Yeah, we really should get this by default into BKO… I’ll write a mail to the sysadmins now.

» KDevelop 4.1 Beta 3 Released

Fri, 09/24/2010 - 16:03

Good news everyone!

I’m happy to announce the immediate availability of KDevelop 4.1 Beta 3. This is a testing release, any feedback is greatly appreciated. But keep in mind that it might exhibit unexpected behavior and eat your children. Please send us your feedback either via one of our mailing lists, #kdevelop on freenode or put general bugs and wish request as always to http://bugs.kde.org.

Download
KDevplatform 1.0.82
http://download.kde.org/download.php?url=unstable/kdevelop/4.0.82/src/kdevplatform-1.0.82.tar.bz2
MD5 Sum: 2adf7d05558d9c0dd1e4e98ccf67b423
SHA1 Sum: 940a326bdd300fc435e8699d392fb85c6945dc91
KDevelop 4.0.82
http://download.kde.org/download.php?url=unstable/kdevelop/4.0.82/src/kdevelop-4.0.82.tar.bz2
MD5 Sum: 192e8ba827bfebd090740b138418f4c6
SHA1 Sum: f9ea5ea9b9f07c338426a1f5d42584090bbb590b
KDevelop PHP 1.0.82
http://download.kde.org/download.php?url=unstable/kdevelop/4.0.82/src/kdevelop-php-1.0.82.tar.bz2
MD5 Sum: e25c351d62e70931f0466c831fa16c6f
SHA1 Sum: f9ea5ea9b9f07c338426a1f5d42584090bbb590b
KDevelop PHP Docs 1.0.82
http://download.kde.org/download.php?url=unstable/kdevelop/4.0.82/src/kdevelop-php-docs-1.0.82.tar.bz2
MD5 Sum: 7287d4556f1a8b60aab3680bd28512f1
SHA1 Sum: a6c2c6ea73e39e4545d9b8c1f1ce9200d3a0c103
Changelogs
  1. ChangeLog for kdevelop v4.0.82
  2. ==============================
  3.  
  4. * Milian Wolff: set version to 4.0.82
  5. * David Nolden: Fix the preprocessor-test so that it exposes the problem shown in bug 242925
  6. * David Nolden: Fix handle_include so that it can deal with training whitespaces within the paren,
  7. like "#include <stdio.h >". The preprocessor adds such a whitespace as a
  8. * David Nolden: Make whitespaces in #included headers work properly. CCBUG: 242925
  9. * David Nolden: Add some successful tests for macros in include-directives aka "#include MY_MACRO"
  10. * David Nolden: Include the macro in the current line when preprocessing text for the code tooltip
  11. * Aleix Pol: Properly provide the build directory for items the parents of which are not build folders.
  12. * David Nolden: Hopefully, finally fix a possible due to read over the end of the document. BUG: 250383
  13. * Nicolás Alvarez: Show correct line numbers in "deprecated CMake command" problems.
  14. * Aleix Pol: prevent crashes (assertions) whenever a faulty/unnamed target is defined.
  15. * Aleix Pol: Delay actual file removal until files have been removed from the project by the user.
  16. Let project refresh infrastructure to care about item removal.
  17. * Aleix Pol: Don't create an empty property when an empty one is read.
  18. * Milian Wolff: support thread_local in parser
  19. * Milian Wolff: fix "keep one line statements" and "keep one line blocks" settings dialog
  20. * Aleix Pol: Get rid of the cmake builder interface.
  21. It was just used for lookup so it's fine to use the plugin name.
  22. * David Nolden: Reset the location-table when re-processing a header with its header-guards disabled.
  23. * Aleix Pol: Don't show the folders that doesn't exist on the project tree.
  24. * Aleix Pol: Remove unused variable.
  25. * Milian Wolff: check for context before accessing it, prevents crash in "rename" and "show uses"
  26. * Aleix Pol: Don't crash if reload is clicked while reloading
  27. * Milian Wolff: use new KDevelop icon in splash
  28. * Milian Wolff: upgrade splash screen to version 4.1
  29. * David Nolden: Also build uses for the scope part in definitions of static member-variables,
  30. like the "Class" in "int Class::value = 5;"
  31.  
  32. ChangeLog for php v1.0.82
  33. =========================
  34.  
  35. * Milian Wolff: set versoin to 1.0.82 for beta 3
  36.  
  37. ChangeLog for php-docs v1.0.82
  38. ==============================
  39.  
  40. * Milian Wolff: set version to 1.0.82 for beta 3
  41. * Milian Wolff: store DeclarationPointer instead of raw pointers, should prevent crash
  42.  
  43. ChangeLog for kdevplatform v1.0.82
  44. ==================================
  45.  
  46. * Milian Wolff: set version to 1.0.82 for beta 3
  47. * Aleix Pol: Do not try to process DVcsJob output when it failed.
  48. * Aleix Pol: We got a crash whenever we got a wrong current branch. In such cases notify
  49. the user and don't proceed with the Branch Manager dialog.
  50. * Aleix Pol: Don't use "git mv" for not versioned files.
  51. * Aleix Pol: Add files before commiting in case they're not staged yet. Makes it possible to
  52. add files from the Patch Review UI.
  53. * Aleix Pol: Fix a couple of wrong messages spotted by Andrew Coles.
  54. * David nolden: Fix a serious problem with the persistency of working sets. Due to this problem,
  55. working sets could simply get lost after closing+reopening the application.
  56. * Milian Wolff: don't repeat declarations in includenavigationcontext
  57. * Milian Wolff: properly distinguish between declarations and definitions in UsesWidget
  58. * Milian Wolff: Close tab on middle click. Drag'n'Drop reordering is still possible with left mouse button.
  59. * Milian Wolff: return 'Namespace' for namespaces in declarationKind
  60. * Milian Wolff: add runtime check for SmartInterface and error out if it is not provided
  61. * Milian Wolff: backport: typo fixes by Andrew Coles
  62. * Milian Wolff: init before loading style, this way the correct previewtext is shown
  63. when initializing the edit dialog
  64. * Milian Wolff: actually select the row in selectStyle, makes sure new styles are selected directly
  65. * David Nolden: Initialize ArrayTypeData::m_dimension in the default constructor.
  66. This will silence valgrind for some cases, and might also fix some tiny bugs.
  67. * Aleix Pol: Properly retrieve the branch name, now it works when the branch name has '/' in it.
  68. * Aleix Pol: Fix compilation
  69. * Aleix Pol: Fix naming of the actions as David suggested. Uncomment the Revision History.
  70. * Aleix Pol: Don't let the user ask between revisions if there is not at least 2 revisions selected.
  71. * Aleix Pol: Make revision intervals a little safer.
  72. * Aleix Pol: Make it possible to diff last changes, improve the support to intervals with previous.
  73. * Aleix Pol: Add version checks in case it's needed after during the execution.
  74. * Hugo Pereira Da Costa: Removed handling of contentsMargin based on PM_ToolTipLabelFrameWidth,
  75. because it is handled internally when painting the tooltip, and thus redundant, resulting in breaking the
  76. tooltip appearance for some styles.
  77. * Hugo Pereira Da Costa: Re-added setAutoFillBackground(true) in IdealDockWidget, otherwise the widget
  78. ends up being transparent, which sometime results in widget painting collisions with main panel.
  79. * Milian Wolff: also support configuring projects in multiple kdevelop sessions
  80. * Milian Wolff: fix: Make it possible to configure KDevelop from multiple sessions, instead of showing
  81. "configuration is already opened in KDevelop"
  82. * Milian Wolff: don't overwrite selected source format's text when switching mimetype
  83. * Nicolás Alvarez: In the save dialog shown on quit, focus Cancel button by default.
Wrapup

Thanks to the whole KDevelop team and all contributors. Due to a few hickups around the Beta 2 release (which was skipped), the release of 4.1 final got delayed: updated release schedule for KDevelop 4.1

Bye, happy testing and stay tuned for RC 1 in a few weeks.

» KDevelop 4.1 Beta 2 will be omitted, stay tuned for Beta 3

Tue, 09/21/2010 - 14:42

Hey everyone.

I was on a spontaneous trip last week and missed the Beta 2 release. Apol took over but my instructions where not clear enough and the packages where totally screwed up (the tags pointed to code in master, no the 4.1 branch).

I’m in the process of fixing things up and will create tarballs for Beta 3 and announce it to packagers later today.

Lets hope the actual release for users out there can happen later this week.

Sorry again, bye.

» Highlighted Backtraces on BKO

Mon, 09/20/2010 - 19:05

Hello everyone, the “I can syntax highlight everything” guy speaking again :)

Yeah, I couldn’t sleep well after I put colors on Dr Konqi. I also did the same for Kate, if you did not notice it. There is a new GDB Backtrace syntax highlighting file for it, giving you the same pleasant experience you are now used to from Dr Konqi. Awesome.

But well, lets admit it: What use are these two for bug triaging? Visit any crash report on bko and you are left to plain old black-on-white… Stone-age stuff, lets put it on LSD, shall we not? I propose: The GDB Backtrace highlighter GreaseMonkey userscript!

Bug reports, feedback, pizza & beer all welcome :)

PS: How is GreaseMonkey for Konqueror coming along, anyone working on that? Does someone know whether Chrome or Opera could be made to work with this?

PPS: We could also install this script directly on BKO, but I fear it might be a tad bit slow, esp. for huge backtraces.

PPPS: Attached backtraces should be setup to be opened in Kate :)

» Beware of KDevelop Master and KDELibs 4.5.1 or lower

Wed, 09/08/2010 - 17:57

Hey all,

please don’t use KDevelop master with KDELibs 4.5.1 or lower. Katepart in that version misses a crucial commit that makes KDevelop crash. It is fixed for 4.5.2. In the meantime you have on of the following options:

  1. Build kate from sources
  2. Switch to the stable branches, i.e.: KDevplatform 1.1, KDevelop 4.1, PHP 1.1, …
  3. wait for the 4.5.2 release

bye

» KDevelop 4.0.2 and KDevelop 4.1 Beta 1 released

Sun, 09/05/2010 - 19:13

Good news everyone, this time in a double feature!

I’m happy to announce the availability of two new additions to the KDevelop release family:

KDevelop 4.0.2 stable release

Lets begin with the boring part: We have released KDevelop 4.0.2, together with KDevplatform and the PHP plugins. You can find the sources here:

http://download.kde.org/download.php?url=stable/kdevelop/4.0.2/src/

This is a bugfix only release and everyone is urged to upgrade as soon as possible. Users should wait for their distributions to provide packages for them. The tarballs contain changelogs if you are interested what happened since 4.0.1. Or read them online:

Note: This is (most probably) the last release in the 4.0 branch. We don’t have enough manpower to handle more than one stable branch. Which makes me come to the second part of this mail:

KDevelop 4.1 Beta 1 experimental release

We are very happy to publish KDevelop 4.1 Beta 1, which will be the branch we are concentrating on in the next time. You can find the sources here:

http://download.kde.org/download.php?url=unstable/kdevelop/4.0.80/src/

This is a preview release. We are gratefully welcoming any testers and feedback to polish it further for the final 4.1 release which will probably happen around mid October. Please put the reports on the usual places, e.g. http://bugs.kde.org. If you are interested in the (quite long) list of changes, look into the tarballs again for an extensive git changelog. If you just want a few highlights: Git Support Plugin, External Script Plugin, general polishing, CPP support improvements, lots of bug fixes, UI polishing, performance improvements, … you name it :)

For the fun of it, here the list of commits changes for 4.1 (imo far too big to show anything useful):

Thanks as always to the KDevelop team for making this possible and to the users for giving us valuable feedback.

Bye

PS: Sorry that I forgot to announce this yesterday or even Friday, as I initially planned. Well, weekends are such a nice time to go outside and enjoy life :)

» Short GSOC 2010 Note

Sun, 08/22/2010 - 17:50

Hey all,

before I go on a short one-week vacation, I wanted to leave you a short note about the outcome of my GSOC, where I tried to revive the Quanta+ brand.

First up, I passed, many thanks to my mentor Andras Mantia. But well, it’s not like I got that for free. In a first estimation I did about 500 commits to Quanta, PHP and KDevplatform in the last three months. So I hope you all agree that I deserve the Google money :)

But lets talk about what I planned to achieve and what I actually achieved:

  • the XML/HTML plugin is working quite well but is still requiring lots of polishing
  • the browser preview plugin is supposedly being worked on by another studen in Brazil, I’m awaiting her first results and will polish it together with her.
  • you still cannot rename tags and automatically rename the close tag as well or similar
  • the multilang branches have imo nice API additions and seem to work reasonably well. At least my test cases of CSS inside HTML worked fine for me

Anyhow, on one hand I’m personally satisfied with what I achieved code wise, esp. looking at the diffs and knowing how many iterations some of the multilang structures required. On the other hand I had hoped to achieve much more. A first alpha release of Quanta is really not visible to me in the near future.

But, and here I make a promise I do intend to keep: I won’t desert Quanta. Quite the contrary. KDevelop will probably keep my main focus, but I do intend to improve Quanta, esp. merge the multilang branches into KDevplatform for example. My intended time plan contains a note to merge multilang after the movingrange branches into KDevplatform 1.2. Lets see how that works out.

The XML plugin I will definetly continue to polish and make it work as good as possible. Even now it is helpful for more than just web developers: I personally already rely on it when working on Kate language files for example. So there is a personal desire to have it working as good as possible, even though I don’t do much/any web development these days.

Bla bla bla, enough rambling and dumping my thoughts. Lets close this up by saying: Have a nice week, cya soon, hopefully well rested and ready to kick some more code lines :)

Bye

» Dr Konqi now with colors (Updated)

Fri, 08/20/2010 - 18:19

Hey there :)

As I announced on the kde-core-devel mailing list, I planned to improve Dr Konqi for a long time, as for me as a developer it is an invaluable tool. Well, yesterday I sat down and implemented the first two things which I wanted for a long time:

Scroll to KCrash

Once the backtrace got loaded, Dr Konqi will automatically scroll to the line that contains [KCrash Handler]. No need to find that manually anymore. Awesome :)

Colors!

Yeah, you should know that I as a KDevelop user and developer am addicted to syntax highlighting. That’s what I did for Dr Konqi as well now:

So anyone using KDEBase trunk will now have a shiny Dr Konqi :) Feedback appreciated, esp. whether more or less should be highlighted. I personally found it overly colorful when I also highlighted pointer adresses (ignore the bug in that outdated screenshot). What do you think?

Anyhow, thanks to George Kiagiadakis for helping me find my way through Dr Konqi sources and accepting my feature additions.

Update

I put some more feedback into reality: Fixed width font, null pointers are bold and in addition common functions that lead to exits are now highlighted in red (i.e. qFatal, __assert_fail and abort):

» Final days of Quanta GSOC 2010

Wed, 08/04/2010 - 01:38

Hey everyone,

as the pencils down for this years GSOC is approaching I thought it’s time to write another blog entry to notify the world about my current status.

These past weeks (boy, the time flies…) I’ve mostly spent on hardcore KDevplatform internals. Especially getting multiple languages in a single document working was not easy. I knew it would be the most time consuming and most demanding aspect during these three months, but also by far the most important. I’m confident to say now: I’m nearly there. All projects we put into the KDevelop repository have now a multilang branch in their team clones. And if you look at e.g. the KDevplatform multilang branch or the Quanta multilang branch you hopefully agree that I didn’t slack off too much. I just wasted some time to find the right approach, often by implementing one just to find out it was not practicable.

Thanks (once again) to the help of David Nolden I’m now on the right track. Finally :)

When you use the multilang branches (note: you’ll have to use them everywhere as they contain binary incompatible changes to the master branches), you should already get proper DUChain integration for CSS inside HTMLs <style> tags, which is what I used for testing purposes. I’ve just pushed the required changes to get code completion work properly as well.

This is all still in a quite rough stage and needs lots more work but it proves that I’m getting there. Once this is done I can continue to polish the CSS and XML language plugins, as well as finally writing a “preview HTML” plugin, as this was probably the most requested plugin from back then.

Looking at my tentative timeline for GSOC, I’m afraid to say that I didn’t get to do all of it. But I’m quite proud of what I achieved and hope you all agree that my time was well spent on Quanta. I won’t stop working on it probably after GSOC, quite the contrary. I still hope to release at least some alphas this fall and maybe get it into beta state in winter. What about a Quanta 4.0 release in spring 2011? Who knows :)

Bye