kdevelop Syndicate content

warning: Creating default object from empty value in /www/htdocs/w0065fc9/milianw/modules/taxonomy/taxonomy.pages.inc on line 33.

» Second Google CodeIn Screencast: Advanced C++ Support in KDevelop 4

Tue, 12/07/2010 - 18:29

Hey all,

just a quick note: The second google code-in task for KDevelop got completed, this time by Furkan Üzümcü. He shows off some features in KDevelop 4 that together make up the advanced C++ support you can find in it. Take a look at it:

http://blip.tv/file/4479016

Thanks to Furkan and Google for doing this.

» KDevelop 4.1.1 released

Mon, 11/29/2010 - 00:26

Good news everyone!

I’m happy to announce the immediate availability of KDevelop 4.1.1, a pure bug fix release. Every user is urged to upgrade to this new and improved version.

You can download the sources from one of the mirros. Though most users should get this update via a distribution package update.

Changelog for KDevelop 4.1.1
  1. ChangeLog for kdevplatform v1.1.1
  2. =================================
  3.  
  4. * Milian Wolff: set version to 1.1.1
  5. * Aleix Pol: Make the build tool responsible for renaming the items when rename is triggered (it was already being done, but twice in abstractfilemanagerplugin).
  6. * Dmitry Risenberg: Fix line numbers in annotation bar for git. BUG:255599
  7. * Pino Toscano: i18n: do not extract messages from sources in 'tests' subdirectories
  8. * Nicolás Alvarez: Minor changes to apidox.
  9. * Aleix Pol: When removing a file or directory, check if it has git versioned stuff. In that case ask Git to remove it, otherwise trash it.
  10. * Nicolás Alvarez: Fix comment typos in iplugin.h.
  11. * ben2367: Correct FileManager contextMenu
  12. * Nicolás Alvarez: Add i18n comments to strings in codeutils plugin.
  13. * Nicolás Alvarez: DumpChain: code cleanup.
  14. * Milian Wolff: fix: don't crash when changing shortcuts without having an active document
  15. * Milian Wolff: set a proper minimum width when initializing the launch config dialog
  16. * Milian Wolff: make sure all projects are readable in launch config dialog
  17. * Milian Wolff: initialize CodeHighlightingColors after we initialized the required member vars, add test to run valgrind easily
  18. * Lambert CLARA: Fix lib APU find in FindSubversionLibrary.cmake
  19. * Milian Wolff: preserve remote parts of url of active document for 'open file' dialog
  20. * Aleix Pol: Copy the current directory instead of doing silly references.
  21. * Milian Wolff: add some icons in the launch config dialog
  22. * Milian Wolff: fix resize-to-column width algorithm and make launch config dialog have a sane size by default
  23. * Milian Wolff: disable target combobox when using custom executable
  24. * Milian Wolff: try to fix crash in KDevelop::ConfigurableHighlightingColors::getAttribute
  25. * Milian Wolff: fix up delegate deletion, prevents crash in generic manager test cases (was deleted but the static var in the getter function was not reset)
  26. * Milian Wolff: backport from master: only append subdirs to actual parent list jobs, fixes random crashes
  27. * Nicolás Alvarez: Add 'build' to .gitignore.
  28. * Milian Wolff: make project url canonical before inserting into m_currentlyOpening
  29. * Milian Wolff: don't leak temporary files
  1. ChangeLog for kdevelop v4.1.1
  2. =============================
  3.  
  4. * Milian Wolff: set version to 4.1.1
  5. * Pino Toscano: i18n: do not extract messages from sources in 'tests' subdirectories
  6. * Burkhard Lück: fix wrong usage of translation context in ui file messages to make the translated strings visible either use <string comment="bar">foo</string> or <string extracomment="@info">foo</string>
  7. * Milian Wolff: backport from master: when using parallel builds, make install with kdesudo uses a command string like: kdesudo -t -c make -j4 install
  8. * Nicolás Alvarez: Cleanup and typo fixes in code comments.
  9. * Nicolás Alvarez: Use qSwap instead of custom "tmp=a; a=b; b=tmp;" code.
  10. * Milian Wolff: fix: make sure we compare directores without slashes as KDevelop API's urls have slashes while QDir::entryInfoList will never have slashes
  11. * Aleix Pol: Provide support for break in foreach command.
  12. * Aleix Pol: comment for performance issues.
  13. * Aleix Pol: Added support for CMAKE_CURRENT_LIST_DIR variable.
  14. * Aleix Pol: When looking for cmake modules, look for the directories without lowercases. It should work too.
  15. * Milian Wolff: don't try to get namespace for dot and dotdot, prevents pesty warning:
  16. * Milian Wolff: fix: prevent crash, don't try to access duchainpointer blindly
  17. * Milian Wolff: fix: unbreak 'Force Tabs' in astyle formatter settings
  18. * Milian Wolff: fix: make sure to apply negative BlockBreakAll option
  19. * Milian Wolff: never switch to the implementation of a signal (i.e. the .moc file), instead use fallback and switch to .cpp
  20. * Milian Wolff: backport from master: disable DEBUG_UI_LOCKUP by default, if desired enabled it via cmake (BUILD_uiblocktester option)
  1. ChangeLog for php v1.1.1
  2. ========================
  3.  
  4. * Milian Wolff: set version to 1.1.1
  5. * Milian Wolff: fix: remove obsolete mention of application/x-gzip in supported mimetype list

Additional to these changes, the translations have been improved and updated.

As always, many thanks to all the contributors who made this possible.

» Google Code In: First KDevelop Documentation Screencast!

Sat, 11/27/2010 - 19:21

Woha, back when Lydia announced Google Code In and asked me whether I’d like to mentor some KDevelop projects, I wasn’t so sure this was a good thing. But then I saw that documentation could be requested from the students, and well… KDevelop 4 has no real documentation (except this) - why shouldn’t I try it?

So I put a few “screencast workflow XYZ” tasks into Google’s Melange Web Interface (which btw. sucks so much it’s incredible) and forgot about it. I didn’t really think there would be school students being interested in KDevelop, esp. not in writing documentation or doing a screencast. But thankfully I was proven wrong, and in all levels. Please behold, the first documentation screencast for KDevelop, showing you how to get started with a project, setting up a launch configuration, and doing some basic debugging:

http://blip.tv/file/4437001

I’m amazed by the quality of that video, very well done Geoffry and thanks already to Google for the Code In. Lets hope more students will provide me with such good work :) And I hope this helps some users to get started with KDevelop 4.

PS: KDevelop 4.1.1 will be anounced tomorrow, replace functionality was merged for the “Find in Files” plugin and development is actively continuing :)

PPS: We still want to improve the launch configuration dialog :D

» Quanta compiles against KDevelop master again!

Sun, 11/21/2010 - 20:57

Hey all,

another blog post today, I’m on fire :) This one is shorter though: I want to notify you all that Quanta compiles against KDevelop master again (i.e. what will become 4.2 and uses the MovingInterface from Kate).

If you are using KDevelop 4.1 and want to use one of the Quanta plugins, like XML or CSS language support or XDebug or Crossfire integration, checkout the 4.1 branch.

I hope to work more on Quanta again over the next days, hope I can finally get it into a usable state…

Bye!

» KDevelop and Kate advancements over the last weeks

Sun, 11/21/2010 - 17:38

Hey all,

I didn’t blog in a long while so I thought I’d dump some notable things I did over the last weeks. It’s probably neither complete nor thorough - you should try it all out to see it for yourself :)

Kate

Lets start small with my Kate contributions. I really concentrate on KDevelop nowadays since Kate works quite well for me and I don’t have many itches to scratch anymore :) So, what did I do these last weeks? Mostly cleanup and performance work, especially regarding MovingRanges which of course is mostly needed for a good experience in the upcoming KDevelop 4.2. With the help of Dominik Haumann I also went through our indentation unit tests and made sure we expect all currently failing test cases, as well as fixing those I could. Now we (finally!) have a passing test suite and get noticed about introduced regressions. Awesome!

KDevelop

Of course I still concentrate my contributions on KDevelop and related plugins. What I find quite interesting is that I’m now for over two months in a “polish-and-bugfixing”-mode, without adding much new features. I think that shows that I’m quite satisfied with the existing features, just not with the way they are integrated. E.g. the Kate performance improvements above were done in order to make “reformat source” not hang the IDE for a couple of seconds anymore, in KDevelop 4.2 it will only be like one second for really big source files. I’ve also tackled our black sheep, the “launch configuration” dialog. I didn’t rewrite it, but I did some polishing and have some more ideas to hopefully get it into a useable state. Oh, I just remember: I also spent some time on the “Snippets” plugin, restructured the editor dialogs a bit and made them use Katepart as well, for syntax highlighting and proper editor features :)

I generally care about small things nowadays, like e.g. that all widgets have a proper tooltip. This is also something where you all could help: If you find a widget in KDevelop master (4.2) that has no tooltip, please notify me! I’ve added those e.g. to the outline and quickopen toolbar widgets among others.

And since KDevelop 4.1 was in beta stage I’ve fixed lots of bugs and continue to do that. I triage each new bug for KDevelop/KDevplatform, request feedback and valgrind logs and try to fix whatever I can. Even now I can safely assume that KDevelop 4.2 will be more stable than 4.1, even though we did lots of architectural changes in the platform, esp. regarding MovingRanges.

And now to the last and to me most pleasing part: New features! Remember how I said I didn’t do lots of feature development at all these past days? This is basically true, instead I let others do the work :) We really get more and more patches and merge requests by other people, and I did merge quite some changes already. We have an improved “find in files” plugin now, and the French students are working hard on giving it replace functionality as well! We already merged their improved QtHelp plugin that gives you the ability to integrate arbitrary .qch files into KDevelop, e.g. the KDE Api documentation. They also work on [man integration](, which will be a joy for all STD C / C++ developers.

Furthermore we now have a “Filter…” line edit above the project manager view, “Argument Dependent Lookup” for the C++ plugin, a much improved “Problems” toolview, with the ability to show TODOs etc. pp.

This is just from the last few weeks, and it’s work done by many new contributors. It’s really very cool to see this happening.

Oh, and I personally worked a bit on the QMake support for KDevelop, I’m not sure whether I will manage to get this into a usable state for KDevelop 4.2, but I already use it at work.

Which brings me to the last part of this blog post, release schedules! I’ll finally release a KDevelop 4.1.1 bug fix version next week, and will make sure that there is a 4.2 release just before / shortly after the KDE 4.6 release in January. The big “issue” there is that KDevelop 4.1 will not work with KDE 4.6+, since there are no SmartRanges in Kate from 4.6 anymore. So a big fat warning to any adventurous tester out there: If you want to try KDE 4.6 betas, remember that you’ll have to get KDevelop master (== 4.2) as well somehow!

So, that’s it for now, have a nice sunday everyone :)

» KDevelop 4.1 RC1 released

Fri, 10/08/2010 - 19:27

Hello everyone!

I’m happy to announce the immediate availability of KDevelop 4.1 RC 1. This is a testing release, and any feedback is greatly appreciated. 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. We are quite confident that this release is ready for every-day use, and if nothing unplanned happens, we are going to release KDevelop 4.1 in about two weeks.

Download
KDevplatform 1.0.90
http://download.kde.org/download.php?url=unstable/kdevelop/4.0.90/src/kdevplatform-1.0.90.tar.bz2
MD5 Sum: c652788d44ec4b4b09bc2d26f2ae2068
SHA1 Sum: e6a87146f69c4149ee669de21dc171020285f17a
KDevelop 4.0.90
http://download.kde.org/download.php?url=unstable/kdevelop/4.0.90/src/kdevelop-4.0.90.tar.bz2
MD5 Sum: 2d0028a60a0beecb0e3f6e442f2e7be3
SHA1 Sum: 72bb75a5dcf3e23165cfc5e00d92229012752fd3
KDevelop PHP 1.0.90
http://download.kde.org/download.php?url=unstable/kdevelop/4.0.90/src/kdevelop-php-1.0.90.tar.bz2
MD5 Sum: e6d1163c81314d35847ce4fa7a1a05f6
SHA1 Sum: 63fb5cac4141ec4c6ca73471ba2870335f6a7b6a
KDevelop PHP Docs 1.0.90
http://download.kde.org/download.php?url=unstable/kdevelop/4.0.90/src/kdevelop-php-docs-1.0.90.tar.bz2
MD5 Sum: 658efe8d4754db6ce10e1582bff504d1
SHA1 Sum: a00aa72d0fd0de01c5f0ea4db2afe338f13cc0b5
Changelogs
  1. ChangeLog for kdevplatform v1.0.90
  2. ==================================
  3.  
  4. * Nicolás Alvarez: In output toolviews, make sure Select All and Copy only call our slot.
  5. * Milian Wolff: protect against dangling pointers due to silently killed jobs
  6. * Milian Wolff: use proper icon for jump to Delcaration/Definition
  7. * Milian Wolff: prevent possible crash on shutdown when a process is still running
  8. * Milian Wolff: fix potential overflow when no editor factory was found
  9. * Milian Wolff: fix: use QueuedConnection to fix crash on show declaration/definition
  10. * Milian Wolff: don't crash GenericManager when closing project while some GenericManagerListJob is still running
  11. * Nicolás Alvarez: Fix toolview button painting to highlight icon on hover.
  12. * Aleix Pol: Only add files in case it's needed.
  13.  
  14. ChangeLog for kdevelop v4.0.90
  15. ==============================
  16.  
  17. * Milian Wolff: fix: don't confuse the parser by comments after ambiguous declarations or expressions
  18. * Milian Wolff: support NULL macro as alias for 0
  19. * Nicolás Alvarez: Fix comment typos in CMake parser code.
  20. * Aleix Pol: Always create a new instance of the QRegExp so that it keeps working when calling the ast parser in parallel.
  21. * Nicolás Alvarez: Fix bug interpreting CMake conditions with -NOTFOUND variables.
  22. * Milian Wolff: backport CLI api cleanup from master without i18n changes and deprecating commands
  23. * Milian Wolff: don't try to execute empty command
  24. * Milian Wolff: properly set parent of GDB QObjects, afaik these where leaked before
  25. * Aleix Pol: Prevent some crashes when creating a new folder from the UI to a cmake project.
  26. * Aleix Pol: Don't add non-cmake folders that contain ".kdev_ignore" file.
  27. * Aleix Pol: This folder shouldn't ever have been here.
  28. * Aleix Pol: Remove obsolete casts.
Wrapup

Thanks to the whole KDevelop team and all contributors. The release schedule for KDevelop 4.1 can be found here: release schedule for KDevelop 4.1

Bye, happy testing and stay tuned for KDevelop 4.1 final in two weeks.

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

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

» 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