Quantcast
Channel: KDevelop - Integrated Development Environment
Viewing all 68 articles
Browse latest View live

KDevelop 5.1 Beta 1 released

$
0
0
KDevelop 5.1 Beta 1 released

We are happy to announce the release of KDevelop 5.1 Beta! Tons of new stuff entered KDevelop 5.1, a bigger blog post show-casing all the features in 5.1 will follow when we release the final version. Here's a brief summary of what's new in this version:

LLDB support

We had a great student for GSoC 2016 implementing LLDB support in KDevelop. The end result is that we now have a debugger framework which can be used both for the GDB & LLDB MI communcation. The LLDB plugin teaches KDevelop to talk to the standalone LLDB MI Driver (lldb-mi); so now it's possible to use LLDB as an alternative debugger backend for KDevelop. One interesting thing with LLDB that it's also potentially useful on OS X & Windows for us, especially when the Windows port of LLDB is getting more and more stable.

Analyzer run mode

With 5.1, KDevelop got a new menu entry Analyzer which features a set of actions to work with analyzer-like plugins. During the last months, we merged analyzer plugins into kdevelop.git which are now shipped to you out of the box:

Cppcheck

Cppcheck is a well-known static analysis tool for C/C++ code. Cppcheck is useful for taking a closer look at your source code checking for common programming faults such as out of bounds accesses, memory leaks, null pointer dereferences, uninitialized variables, etc. pp. With the Cppcheck integration in KDevelop running the cppcheck executable is just one click away. KDevelop will pass the correct parameters to cppcheck including potential include paths and other options.

KDevelop with Cppcheck integration
KDevelop with Cppcheck integration

Other analyzers in the pipeline: Valgrind, clang-tidy, krazy2

While the Cppcheck plugin is shipped out of the box, other analyzers are not considered 100% stable yet and still reside in their own repositories. The clang-tidy plugin looks super promising (another static analysis & refactoring tool for C/C++) as it really easy to use from the command-line and thus easy to integrate into our IDE. We plan to import more of those analyzers into kdevelop.git so they'll be part of the kdevelop tarball and are thus available to you without having to install yet another package.

Improved Python language support

Python language support now supports Python 3.6 syntax and semantics. In addition, thanks to the work of Francis Herne, various long-standing issues in the semantic analysis engine have been fixed:  most notably: loops and comprehensions infer types correctly in many more cases; type guessing works for arguments named by keywords (not only **kwargs), and works better for class/staticmethods; types are inferred correctly from PEP-448 syntax in container literals; unsure types are handled in subscripts and tuple unpacking, and uses are found for __call__() and __get/setitem__(). All these improvements were accompanied by cleaning up dusty code, making future changes simpler as well. Furthermore our style checker integration has been rewritten, making it much faster and easier to configure.

These changes also mean that this beta is especially important for Python support, because we want to catch any potential regressions before the final 5.1 release. Please let us know about everything you notice!

Perforce integration

Thanks to Morten Danielsen Volden we now have Perforce integration in kdevplatform.git, which can be used freely starting with KDevelop 5.1. Perforce is a commercial, proprietary revision control system. The Perforce integration in KDevelop simply works by running a local version of the p4 executable (needs to be installed independently of KDevelop) with appropriate parameters. This is similar to how KDevelop integrates with other VCS, such as Git & Bazaar.

Ongoing support for other platforms

We're continuously improving the Windows version of KDevelop and we're planning to release a first KDevelop version for OS X soon. For the Windows version, we upgraded the KF5 version to 5.29 and the LLVM/Clang version to 3.9.1.

Get it

Together with the source code, we again provide a prebuilt one-file-executable for 64-bit Linux, as well as binary installers for 32- and 64-bit Microsoft Windows. You can find them on our download page in the Experimental Releases section.

The 5.0.80 source code and signatures can be downloaded from here.

Please give this version a try and as always let us know about any issues you find via our bug tracker.

kfunkTue, 01/03/2017 - 11:00
Category

Comments


KDevelop 5.0.4 released

$
0
0
KDevelop 5.0.4 released

Today, we are happy to announce the release of KDevelop 5.0.4, the fourth bug fix and stabilization release for KDevelop 5.0. An upgrade to 5.0.4 is strongly recommended to all users of 5.0.3 and below.

Together with the source code, we again provide a pre-built one-file-executable for 64-bit Linux (AppImage), as well as binary installers for 32- and 64-bit Microsoft Windows. You can find them on our download page.

List of notable fixes and improvements since version 5.0.3:

ChangeLog

kdevelop

  • QObject template: fix typo screwing redefinition of block extra_definitions. Commit.
  • Update version number to 5.0.4. Commit.
  • Clang: Fix missing DUChain lock. Commit.
  • Custom-buildsystem: Fix crash while configuring. Commit. See bug #335470
  • Try to fix testGccCompatibility test for me. Commit.
  • Clang: Also rename destructors when renaming class. Commit. Fixes bug #373452
  • Fix bug with wrong CMake arguments during adding new build directory. Commit.
  • Clang: Don't propose to refactor function defs. Commit.
  • Fix comments in file template for Python unit test for setUp/tearDown. Commit. Fixes bug #321005
  • Fix TestCustomBuildSystemPlugin by readding .kdev4 folders of test data. Commit.
  • Providers: Fix some Qt runtime warnings. Commit.
  • Update TestProblems::testMissingInclude() to current ClangFixitAssistant. Commit.
  • QtHelp CSS images fix. Commit.
  • QtHelp page loading fix. Commit.
  • Update INSTALL. Commit.
  • Streamline README. Commit.
  • File_templates: Remove '#include "foo.moc"' footer. Commit.
  • Prefer qmake over qmake-qt5 over qmake-qt4. Commit.
  • Appimage: do not fail on git stash pop. Commit.
  • Fix default icon for some plugin. Commit.
  • I18n fixes. Commit.

kdevplatform

  • Don't open nonexistent documents from problems view + assertion fix. Commit.
  • Assertion fix for ProblemModel. Commit.
  • Note more explicit in API dox that nullptr can be returned. Commit.
  • File templates dialog: Fix crash in overrides page with unknown base class. Commit.
  • Silence runtime warnings about missing methods. Commit.
  • Pass KTextEditor::MainWindow to text views created from TextDocuments. Commit.
  • File templates tool: with no open document, use base dir of project or home. Commit.
  • Update version number to 5.0.4. Commit.
  • Cleanup: Remove unused member. Commit.
  • Register EnvironmentSelectionWidget properly with KConfigDialogManager. Commit.
  • Disable the Revision Graph feature. Commit.
  • Fix crash on triggering "Reformat Source" without no more file loaded. Commit.
  • Restore hiding of help buttons in assistant dialogs. Commit.
  • Cleanup: Remove unused method. Commit.
  • Quickopenfilter: Fix documentation. Commit.
  • Fix checkboxes in file template custom options page being misplaced. Commit.
  • Speed up test_projectcontroller a bit. Commit.
  • Fix layout accidently being tried to replace OutputPage's main layout. Commit.
  • Fix opening of remote URLs without filename. Commit. Fixes bug #373213
  • TestTemplatesModel, TestGenerationTest: C locale to avoid translated strings. Commit.
  • Raise prev/next history context buttons. Commit.
  • SourceFormatterController: Fix 'Reformat files'. Commit. Fixes bug #373842
  • SourceFormatterController: More debug output. Commit.
  • Fix infinite loop on cloning environment group with another clone present. Commit.
  • Revert "Restore About dialog for plugins in "Loaded Plugins" dialog". Commit.
  • Fix deprecation warning. Commit.
  • Add fallback code for KAboutData::fromPluginMetaData() for old kf5 versions. Commit.
  • Restore About dialog for plugins in "Loaded Plugins" dialog. Commit.
  • LoadedPluginsDialog: Fix memleak. Commit.
  • StandardDocumentationView positioning fixes. Commit.
  • Update INSTALL. Commit.
  • Add bits about contributing to KDevelop. Commit.
  • Streamline README. Commit.
  • Style: C++11ify. Commit.
  • Projectfilter: Filter out VS artifacts. Commit.
  • ProjectConfigSkeleton: Remove FIXME. Commit.
  • Fix typo in CMake message. Commit.
  • Fix extraction of multi-line UI strings from welcome page. Commit.
  • Hotfix for restoring build with newer KConfig. Commit.
  • Fix default icon for some plugins. Commit.
  • Hide progress bar after all jobs finished. Commit.
  • DUChainPointer::dynamicCast() - don't segfault if no target. Commit.

kdev-php

  • Update version number to 5.0.4. Commit.

kdev-python

  • Update version number to 5.0.4. Commit.
  • Fix crash when requesting raise items without the docfile being parsed. Commit. Fixes bug #373349

The 5.0.4 source code and signatures can be downloaded from here.

kfunkSat, 03/04/2017 - 01:00
Category

KDevelop 5.1.0 released

$
0
0
KDevelop 5.1.0 released

We are happy to announce the release of KDevelop 5.1! Tons of new stuff entered KDevelop 5.1. Here's a summary of what's new in this version:

LLDB support

We had a great student for GSoC 2016 implementing LLDB support in KDevelop. The end result is that we now have a debugger framework which can be used both for the GDB & LLDB MI communcation. The LLDB plugin teaches KDevelop to talk to the standalone LLDB MI Driver (lldb-mi); so now it's possible to use LLDB as an alternative debugger backend for KDevelop. One interesting thing with LLDB that it's also potentially useful on OS X & Windows for us, especially when the Windows port of LLDB is getting more and more stable.

Analyzer run mode

With 5.1, KDevelop got a new menu entry Analyzer which features a set of actions to work with analyzer-like plugins. During the last months, we merged analyzer plugins into kdevelop.git which are now shipped to you out of the box:

Cppcheck

Cppcheck is a well-known static analysis tool for C/C++ code. Cppcheck is useful for taking a closer look at your source code checking for common programming faults such as out of bounds accesses, memory leaks, null pointer dereferences, uninitialized variables, etc. pp. With the Cppcheck integration in KDevelop running the cppcheck executable is just one click away. KDevelop will pass the correct parameters to cppcheck including potential include paths and other options.

KDevelop with Cppcheck integration
KDevelop with Cppcheck integration

Other analyzers in the pipeline: Valgrind, clang-tidy, krazy2

While the Cppcheck plugin is shipped out of the box, other analyzers are not considered 100% stable yet and still reside in their own repositories. The clang-tidy plugin looks super promising (another static analysis & refactoring tool for C/C++) as it really easy to use from the command-line and thus easy to integrate into our IDE. We plan to import more of those analyzers into kdevelop.git so they'll be part of the kdevelop tarball and are thus available to you without having to install yet another package.

Initial OpenCL language support, CUDA support upcoming

Since 5.1 KDevelop is able to parse code written in the Open Computing Language (OpenCL). The OpenCL language support inside KDevelop is backed by our Clang-based language support backend and thus just required minimal changes in KDevelop to start supporting it. Support for handling NVidia's CUDA files will be part of 5.2 instead. Stay tuned.

KDevelop with OpenCL language support
Properly highlighted OpenCL file in KDevelop

 

Note that for KDevelop to detect .cl files as OpenCL files, an up-to-date shared-mime-info package which contains this patch is required. Alternatively, you can add the mime type yourself by creating the file /usr/share/mime/text/x-opencl-src.xml with appropriate contents and re-running update-mime-database yourself.

Improved Python language support

Python language support now supports Python 3.6 syntax and semantics. In addition, thanks to the work of Francis Herne, various long-standing issues in the semantic analysis engine have been fixed:

  • Loops and comprehensions infer types correctly in many more cases, including on user-defined types with __iter__ and __next__ methods.
  • Type guessing works for arguments named by keywords (not only **kwargs), and works better for class/staticmethods.
  • Property accesses get the return type of the decorated method.
  • Types are inferred correctly from PEP-448 syntax in container literals.
  • Unsure types are handled in subscripts and tuple unpacking.
  • Uses are found for __call__() and __get/setitem__().

These improvements were accompanied by cleaning up dusty code, making future changes simpler as well.Furthermore, our style checker integration has been rewritten, making it much faster and easier to configure.

Screenshot of advanced features under kdev-python
Some of the newly-handled Python language features.

Perforce integration

Thanks to Morten Danielsen Volden we now have Perforce integration in kdevplatform.git, which can be used freely starting with KDevelop 5.1. Perforce is a commercial, proprietary revision control system. The Perforce integration in KDevelop simply works by running a local version of the p4 executable (needs to be installed independently of KDevelop) with appropriate parameters. This is similar to how KDevelop integrates with other VCS, such as Git & Bazaar.

Color scheme selection inside KDevelop

It is now possible to select the current color scheme from within KDevelop, a feature which has been requested several times in the past. This is especially useful for when KDevelop is run under a different desktop environment than KDE Plasma, where the color scheme settings may not be easily accessible.

Screenshot of KDevelop's color scheme selection menu
Selecting the current color scheme inside KDevelop 

Ongoing support for other platforms

We're continuously improving the Windows version of KDevelop and we're planning to release a first KDevelop version for OS X soon (yep, we're repeating us here, please stay tuned!). For the Windows version, we upgraded the KF5 version to 5.32 and the LLVM/Clang version to 3.9.1.

Get it

Together with the source code, we again provide a prebuilt one-file-executable for 64-bit Linux, as well as binary installers for 32- and 64-bit Microsoft Windows. You can find them on our download page.

The 5.1.0 source code and signatures can be downloaded from here.

Please give this version a try and as always let us know about any issues you find via our bug tracker.

ChangeLog

kdevplatform

  • Codegen: Fix crash when documenting template func. Commit. Fixes bug #377036
  • Grepview: Fix search in project root with trailing slash. Commit. Phabricator Code review D4774
  • Fix project tree state not being saved. Commit. Phabricator Code review D4665
  • Trim identifiers before triggering rename action. Commit. Fixes bug #376521
  • Update tab colors when the palette changes. Commit. Fixes bug #358776
  • Grepview: Fix crash on exit with grep dialog open. Commit. Fixes bug #348784
  • Template file dialog: kill old widgets on re-entering TemplateOptionsPage. Commit. Phabricator Code review D4413
  • GrepOutputView: show older search results fully expanded initially. Commit. Phabricator Code review D4605
  • Toolbar state was not being saved / restored. Commit. Phabricator Code review D4122
  • Fix Bug 374458 by properly blocking signals on debugger combo box. Commit. Phabricator Code review D4555
  • Prevent progress notifications on copying and writing back project files. Commit. Phabricator Code review D4409
  • Fix preview for file templates with options: add vars with default values. Commit. Phabricator Code review D4384
  • TemplatePreviewRenderer: inject also some dummy test data. Commit. Phabricator Code review D4369
  • Fix bug 374921: Tool view grouping no longer works in 5.1 branch. Commit. Fixes bug #373213. Phabricator Code review D4219
  • Enable "Open Config"/"Close Project" always if just one project is loaded. Commit. Fixes bug #375234. Phabricator Code review D4216
  • Fix bug 375007 - Asserts when pressing "Show Imports" button in problems tool view. Commit. Phabricator Code review D4152
  • Container types: do not write lock when calling addContentType(). Commit. See bug #374097
  • Fix progress widget flags. Commit. Fixes bug #374357
  • Don't hit assertion with "View Diff". Commit. Fixes bug #373763
  • Remove KDEV_USE_EXTENSION_INTERFACE. Commit. Phabricator Code review D3774
  • Add button to re-run search in files. Commit. Phabricator Code review D3550
  • Add "Documentation" settings category. Commit. Phabricator Code review D3700
  • Shell env script: Read user bashrc again. Commit. Fixes bug #373419
  • Add zsh support for kdevplatform konsole integration. Commit. Phabricator Code review D3171
  • Save/Restore Tool Views order. Commit. Phabricator Code review D3002
  • Fix context help for template data types. Commit. Phabricator Code review D3205
  • Port kdev_format_source script to C++/Qt. Commit. Phabricator Code review D2925
  • Documentation: small UI fix. Commit. Phabricator Code review D3255
  • Feature "Diff From Branch" on BranchManager. Commit. Phabricator Code review D3073
  • Add filtering for ProblemsView. Commit. Fixes bug #339839. Phabricator Code review D3108
  • More helpful error message when failing to load project plugin. Commit. See bug #369326
  • Add "Analyze" group to ContextMenuExtension. Commit. Phabricator Code review D3013
  • Add keyboard shortcut for "Switch Header/Source". Commit. Fixes bug #359136. Phabricator Code review D2757
  • Process QML runtime errors. Commit. Phabricator Code review D2735
  • Use folder prefix is filename is not unique. Commit. Phabricator Code review D1947
  • Implement color scheme selection from these installed in the system using KColorSchemeManager. Commit. Code review #127979. Fixes bug #279592
  • KDevPlatform changes for supporting the -iframework and -F header search path. Commit. Code review #128284
  • [OS X] Show job progress in the Dock tile. Commit. Code review #128188
  • Project controller: make displaying project config dialog async. Commit. Fixes bug #364433
  • Integrate kdev-perforce into kdevelop. Commit. Phabricator Code review D2001
  • Fix variable toolview not sync with framestack view. Commit. Phabricator Code review D1351
  • Respect KDE HIG. Commit. Fixes bug #360503
  • [GCI] Add buttons "jump to first (last) item" to standardoutputview/outputwidget. Commit. Fixes bug #338153. Phabricator Code review D750
  • Remove QtQuick1 dependency. Commit. Code review #125782
  • Don't close documents when saving. Commit. Fixes bug #351895

kdevelop

  • Qmljs: Fix crash access internal function context. Commit. Fixes bug #376586
  • CustomBuildSystemConfigWidget: clear configs before reloading. Commit. Fixes bug #376523
  • Add basic support for parsing OpenCL. Commit. Phabricator Code review D4930
  • Add path escaping to cmake completion. Commit. Fixes bug #338196. Phabricator Code review D4760
  • Return immediately with unsupported custom-build-job arguments. Commit. Fixes bug #376833
  • Improve the Qt5 QtQuick template and make it available in CMake as well. Commit. Phabricator Code review D4721
  • Fix a crash when gdb produces malformed output. Commit. Phabricator Code review D4714
  • Clang: Don't insert new include beyond moc include. Commit. Fixes bug #375274
  • Avoid utimes() in custommake projects, remove unsermake support. Commit. Phabricator Code review D4612. Fixes bug #376432
  • Ninjabuilder: Don't crash on `sudo ninja install`. Commit. Fixes bug #372888
  • Specify generator whenever there's no CMakeCache.txt. Commit. Fixes bug #349877
  • C/C++ Compilers config page: use KUrlRequester, focus edit field on Add. Commit. Phabricator Code review D4582
  • Switch to new X-KDevelop-Languages key. Commit. Phabricator Code review D4424
  • Add ClangClassHelper, to restore features of CppClassHelper. Commit. Phabricator Code review D4359
  • More unit tests and fixes for lldb formatters. Commit. Phabricator Code review D3942
  • Fix segfault when analyzing source code issue. Commit. Code review #129767. Fixes bug #374525
  • Add an app_template for a simple KDevelop plugin. Commit. Phabricator Code review D3785
  • Advanced configuration settings for the CMake ProjectManager. Commit. Code review #129416
  • QtHelp page loading fix. Commit. Phabricator Code review D3671
  • Add zsh support for kdevelop konsole integration. Commit. Phabricator Code review D3172
  • Assert if the gdb plugin was unloaded. Commit. See bug #370314. Code review #129131
  • Cmake manager: fix incorrect settings import from existing build directory. Commit. Phabricator Code review D2964
  • Remove non-existing include dir. Commit. Phabricator Code review D2898
  • Consider showing CppCheckPreferences page under "Analyzers" category in session global config menu. Commit. Phabricator Code review D2821
  • Report man pages loading error. Commit. Code review #128943
  • Fix KDevelop crashes when trying to debug from command-line. Commit. Fixes bug #367837
  • LLDB/GDB plugin: add support for coredumpctl in unittests, and fix LldbTest::testCoreFile. Commit. Phabricator Code review D2604
  • GDB/LLDB plugin: correctly handle string escaping and unescaping. Commit. Phabricator Code review D2375
  • Merge LLDB plugin into master. Commit. Phabricator Code review D2293
  • Reapply some patches to 5.0 that are lost when merging into master. Commit. Phabricator Code review D2292
  • Implement color scheme selection from these installed in the system using KColorSchemeManager. Commit. Code review #127980. Fixes bug #279592
  • Support -iframework and -F header search path options. Commit. Code review #128272
  • Recognise #import directive in the context browser. Commit. Code review #128276
  • Qmljs: Don't hold locks while performing filesystem accesses or calling qmlplugindump. Commit. Fixes bug #363509. Code review #128227
  • Fix issue with kdev-cppcheck selecting wrong project. Commit. Phabricator Code review D1116
  • Always show recursive "missing include" errors in problem view. Commit. See bug #358853
  • Add a testcase for BUG: 358853. Commit. See bug #358853
  • Preserve existing windowIcons via QIcon::fromTheme's fallback. Commit. Code review #126759
  • Make kdevelop-app and kdev-plugins use Qt5 resources for splash, rc, knsrc. Commit. Phabricator Code review D529
  • Make qmljs kdevelop plugin compile on OSX. Commit. Phabricator Code review D456
  • Use IProject->path() instead of folder() which is deprecated and will be removed. Commit. Code review #123117

kdev-python

  • Restore compile-time support for Python 3.4.3+. Commit. Phabricator Code review D4936
  • Very basic property getter support. Commit. See bug #372273. Phabricator Code review D4207
  • Fix OOM condition in style checking: move buffer processing out of read loop. Commit. Fixes bug #375037
  • Style checking: read data from stdin as bytes, not in some encoding. Commit. See bug #375037
  • Completion: wrap expression visitor into a read lock. Commit. Fixes bug #374097
  • Yet more range fixes. Commit. See bug #373850
  • Completion hint: Correct default-argument index for non-static methods. Commit. Fixes bug #369369
  • PEP-448 for list and set literals. Commit. Phabricator Code review D3868
  • PEP-448 unpacking in dict literals. Commit. Phabricator Code review D3867
  • Add types from unpacked dict argument to **kwargs parameter. Commit. Phabricator Code review D3861
  • Lambda expression improvements. Commit. Fixes bug #306212. Phabricator Code review D3555
  • Set mostly-correct endCol on numbers, single-quoted strings and subscripts. Commit. See bug #373850
  • Skip explicit `self` argument when calling via class. Commit. Fixes bug #369364
  • Make ExpressionVisitor::visitCall() clearer. Commit. Phabricator Code review D3524
  • Shorten class context range by one line. Commit. Fixes bug #309817
  • Pass docstring into `docstringContainsHint()` rather than declaration. Commit. Phabricator Code review D3535
  • Show uses for __call__() and __{get,set}item__(). Commit. Phabricator Code review D3512
  • Rename functionDeclarationForCalledDeclaration -> functionForCalled and tweak types. Commit. Phabricator Code review D3534
  • Get iterable content using __iter__() and __next__(). Commit. Fixes bug #369363. Phabricator Code review D3540
  • Make the hack for finding attribute ranges more robust. Commit. Phabricator Code review D3437
  • Get more possible types when subscripting unsure-types. Commit. Phabricator Code review D3427
  • Pass AbstractType::Ptr, not Declaration*, to accessAttribute(). Commit. Fixes bug #359912. Phabricator Code review D3422
  • Improved unpacking and iteration. Commit. Fixes bug #359915. Phabricator Code review D3352
  • Allow configuring a per-project Python interpreter for search paths. Commit. Fixes bug #368970
  • Support expanding widgets in the completion list. Commit. Fixes bug #368263
  • Fix porting bug: path for docfile generator files. Commit. Fixes bug #359905
  • Lock parse lock for a short moment when destroying language support. Commit. Fixes bug #359263
  • Fix path in docfile KCM. Commit. Fixes bug #358036

kdev-php

  • Support of Class::{expr}() syntax from Php 5.4. Commit. Phabricator Code review D4902
  • Support for $this as an array when implementing ArrayAccess. Commit. Phabricator Code review D4776
  • Php7 IIFE syntax parsing. Commit. Fixes bug #370515. Phabricator Code review D4391
  • Fix compile issue due to recent changes in kdevplatform. Commit. Phabricator Code review D3411
  • Fix parsing of the ::class constant. Commit. Phabricator Code review D988
  • Fix parsing of the ::class constant. Commit. Phabricator Code review D988
kfunkTue, 03/21/2017 - 11:00
Category

Comments

Wonderful release, lots of things I like on the C/C++ side. Sadly there's still no Perl support which previous incarnations of KDevelop had (pre-5.x). Would be really nice, if that could be added. ;-)

Permalink

In reply to by Drizzt (not verified)

KDevelop 4 did not have Perl support, and what KDevelop 3 (over 10 years ago) had in terms of language support was much more simplistic than what we consider a supported language nowadays. In this sense I wouldn't say KDevelop ever supported perl.
It's a lot of work to get a language supported, and we don't have the resources to add support for Perl at the moment. If you are interested in working on that, you are very welcome of course!

I found signatures for the source code but where are the signatures for the AppImage files?

Big thanks for python support enhancements.

Hi! Thanks for you work, I used KDevelop 4 and seems 5.x version made a great progress. Just a couple of questions:

1. Are there any support for building and deploying for Android and iOS, like QtCreator has? Or are there any plans to implement it?
2. Have you plans to integrate a tool like clazy?

Permalink

In reply to by Nikita (not verified)

(1): Not really, at this point
(2): Yes, it's theoretically possible to integrate clazy so the internal parser of KDevelop actually reports clazy issues, but there are some difficulties to do this with a distro-packaged libclang. So, plans, yes, but they haven't materialized yet.

KDevelop 5.1.1 released

$
0
0
KDevelop 5.1.1 released

We are happy to announce the release of KDevelop 5.1.1, the first bugfix and stabilization release for KDevelop 5.1!

Get it

Together with the source code, we again provide a prebuilt one-file-executable for 64-bit Linux (AppImage), as well as binary installers for 32- and 64-bit Microsoft Windows. You can find them on our download page.

The 5.1.1 source code and signatures can be downloaded from here.

Please give this version a try and as always let us know about any issues you find via our bug tracker.

ChangeLog

Prebuilt binaries

  • Windows installer: Fix missing icons on Windows installers.
  • AppImage: Ship Breeze widget style. T3538
  • AppImage: Ship Sonnet plugins (based on aspell, hunspell, hspell). T4100
  • AppImage: Ship some default colour schemes (to be used with Settings -> Colour Scheme) with AppImage.
  • AppImage: Built with KF5SysGuard support: Enables "Attach to process" in the AppImage. T5878

kdevplatform

  • Do not extract all template preview images, load from archives on demand. Commit. Phabricator Code review D5701
  • Use https://www.google.com instead of http://www.google.de in google selection external script. Commit. Phabricator Code review D5719
  • Use consistent icon names for build stuff, remove left-over legacy icons. Commit. Phabricator Code review D5651
  • Appwizard: fix broken disconnect in ProjectVcsPage. Commit. Phabricator Code review D5536
  • Stop unused & broken exposure of Project object on D-Bus. Commit. Phabricator Code review D5607
  • Appwizard: store chosen vcsPlugin in developer .kdev4 file. Commit. Phabricator Code review D5513
  • Backgroundparser: Relax assert a bit. Commit. See bug #378933
  • Work-around issue in Path(QString) ctor. Commit. See bug #378933
  • Fix preview file wrongly added on project generation from app template. Commit. Phabricator Code review D5314
  • Fix support for multiple files and relative paths in ShowFilesAfterGeneration. Commit. Phabricator Code review D5316
  • Load Template From File dialogs: fix wrong filter strings usage. Commit. Fixes bug #376040. Phabricator Code review D5155
  • Find/Replace in files: Do not wrap content of tooltip for an output line. Commit. Phabricator Code review D5135

kdevelop

  • Install xdg mimetype definition for OpenCL C. Commit. Phabricator Code review D5621
  • Move print from int to unsigned int. Commit. Phabricator Code review D5654
  • Fix build for MinGW. Commit. Fixes bug #379454
  • Look for Cppcheck as RUNTIME dependencies. Commit. Phabricator Code review D5632
  • The OpenCL language is actually called OpenCL C. Commit. Phabricator Code review D5485
  • Remove unneeded mimetype for *.kdevinternal files. Commit. Phabricator Code review D5624
  • Create KAboutData object only after QApp instance, for working translations. Commit. Phabricator Code review D5598
  • CMake - fix bug with dropping changed settings for existing build directory. Commit. Phabricator Code review D5609
  • Drop explicit %{PROJECTDIR}/ from templates' ShowFilesAfterGeneration. Commit. Phabricator Code review D5531
  • Remove unused "VersionControl" entries from kdev4 samples/templates. Commit. Phabricator Code review D5512
  • Fix ShowFilesAfterGeneration to match generated files. Commit. Fixes bug #378499
  • Update Qt logo image. Commit. Phabricator Code review D5278

kdev-python

  • Fix crash in syntax fix-up code. Commit. Partially fixes bug #378827.
  • Pep8: Make pep8 warnings less annoying. Commit. Phabricator Code review D5397

kdev-php

  • Fix duchain unit tests. Commit. Phabricator Code review D5817
kfunkSat, 05/27/2017 - 10:00
Category

KDevelop 5.1.2 released

$
0
0
KDevelop 5.1.2 released

We are pleased to announce the release of KDevelop version 5.1.2, the second bug-fix release for the 5.1 series. This update contains bug fixes only, and we highly recommend all users of KDevelop 5.1.x to switch to this version. Given that it has been a few months since the release of KDevelop 5.1.1, this version contains quite a lot of changes.

Get it

As always, source code, the AppImage and Windows installers for 32 bit and 64 bit systems can be found on our download page. Your distribution should provide updated packages soon.

The 5.1.2 source code and signatures can be downloaded from here.

Please give this version a try and as always let us know about any issues you find via our bug tracker.

Changelog

Prebuilt binaries

  • AppImage: Various improvements; now ships LLVM 3.9.1
  • Windows installers: Various improvements; now ship Qt 5.9.1

Changes in kdevplatform, kdevelop, kdev-php and kdev-python

An incomplete list of things fixed in 5.1.2 is below:

  • Fixed a crash in the cmake lexer (bug 363269)
  • Various small improvements in cmake and C++ code completion
  • Fix placement of C++ #include completions (https://phabricator.kde.org/D6230)
  • Fix a crash with JS projects on remote directories (bug 369573)
  • Fix a possible crash while parsing PHP code (bug 381123)
  • Fix a hang-on-exit bug (bug 379669)
  • Source formatting preview is back
  • Fix duplicated context menu on icon border (https://phabricator.kde.org/D6838)
  • Fix code display in the uses widget on some systems
  • Fix "Format Files" context menu action
  • Fix a possible crash when parsing Python code with old-style Mac line endings ('\r' only) (bug 378827)
  • Fix jumping to breakpoint location in the breakpoint model (bug 382652)
  • Fix crash on CPUs without SSE2
  • Fix launching executables with spaces in paths on windows
  • Fix possible crash on clicking "show documentation" in tooltip (https://phabricator.kde.org/D6436)
  • Various cleanup work
  • ... and many others, too many to list them here -- run "git log v5.1.1..v5.1.2" in one of the repositories to see all changes.

Other notes

We plan to release KDevelop 5.2.0 in the near future, with more nice updates like much improved performance for C++ code completion, a unified repository for kdevelop and kdevplatform (making it easier to work on KDevelop, especially for new contributors), a first version of support for "Runtimes" like docker containers, as well as improvements for the PHP and Python language support plugins.

sbrauchMon, 08/28/2017 - 23:00
Category

KDevelop 5.2 beta 1 released

$
0
0
KDevelop 5.2 beta 1 released

We are happy to announce the release of KDevelop 5.2 Beta! Tons of new stuff entered KDevelop 5.2, a bigger blog post show-casing all the features in 5.2 will follow when we release the final version. Here's a brief summary of what's new in this version:

Internal changes

After someone triggered discussions at Akademy, KDE's annual developer conference, about why there are still two different repositories -- kdevelop.git and kdevplatform.git -- for the main functionality of KDevelop, the KDevelop team decided that it's time to ditch the idea of having two separate repositories and merged kdevplatform.git into kdevelop.git. This simplifies maintenance of the core bits of KDevelop, makes it easier for newcomers to understand where to find core KDevelop plugins, makes it easy to keep up with code changes, etc. pp.. In the past years, we've noticed that the separation caused more confusion than anything else to all stakeholders.

For end users, nothing will change. This is mostly interesting to developers and packagers: the kdevplatform package can now simply be removed.

Analyzers

With 5.1, KDevelop got a new menu entry Analyzer which features a set of actions to work with analyzer-like plugins. During the last 5.2 development phase, we merged more analyzer plugins into kdevelop.git which are now shipped to you out of the box:

Heaptrack

Heaptrack is a heap memory profiler for C/C++ Linux applications.

heaptrack screenshot
Screenshot of heaptrack run from the KDevelop plugin, visualizing memory usage of KDevelop.

cppcheck

cppcheck is a well-known static analyzer for C++, and can now also be run from within KDevelop by default, showing issues inline.

KDevelop with Cppcheck integration
KDevelop with Cppcheck integration

Improved C++ support

A lot of work was done on stabilizing and improving our clang-based C++ language support. Notable fixes include:

  • Properly pass on some categories of compiler flags from the build system to the analyzer, fixing e. g. parse errors in some Qt header files which cannot be parsed if a certain compiler configuration is not respected
  • Improve performance of C++ code completion in some situations
  • Restore some completion features from 4.x, such as automatic insertion of semicolons in some cases

Improved PHP language support

Thanks to Matthijs Tijink we've got many improvements for the PHP language support. The number of syntax warnings with modern PHP code should be greatly reduced, and the type inference is better.

For lack of a better summary, we're listing the changes here with their accompanying change messages:

  • Add callable type to PHP. (commit. code review D7034)
  • Process member properties/calls for unsure types. (commit. code review D6923)
  • Use null default types for determining argument type. (commit. code review D6915)
  • Fix uses of class in closure parameters and default values for functions. (commit. code review D6690)
  • Fix bug 381123: crash while parsing PHP code. (commit. code review D6837)
  • Use return typehints in typebuilder. (commit. code review D6680)
  • Mark return types as uses. (commit. code review D6675)
  • Allow non-scalar constants. (commit. code review D6670)
  • Add spaceship and null coalesce operators. (commit. code review D6645)
  • Better support iterable typehint. (commit. code review D6644)
  • Add return typehint support. (commit. code review D6643)
  • Add more typehints to arguments. (commit. code review D6342)
  • Add unit test for variadic functions with typehints. (commit. code review D6271)
  • Support more cases of function argument unpacking. (commit. code review D6271)
  • Support for variadic functions in documentation popup. (commit. code review D6256)
  • Implement syntax support for function argument unpacking. (commit. code review D5908)
  • Fix duchain unit tests. (commit. code review D5817)
  • Add support for variadic functions. (commit. code review D5703)
  • Support of Class::{expr}() syntax from Php 5.4. (commit. code review D4902)
  • Support for $this as an array when implementing ArrayAccess. (commit. code review D4776)
  • Php7 IIFE syntax parsing. (commit. fixes bug #370515. code review D4391)

Improved Python language support

Mostly thanks to Francis Herne, some cleanup has been done in the Python language plugin as well.

  • Fixed a false-positive warning when a name used in a closure was defined later in the file.
  • Fixed highlighting of local variables in comprehensions and of parameters in lambda definitions.
  • Infer the correct type when slicing a tuple with constant integers.
  • Infer the correct type from `and` or `or` expressions (Nicolás Alvarez).
  • Internal code cleanups.

Ongoing support for other platforms

We're continuously improving the Windows version of KDevelop. For the Windows version, we upgraded the Qt version to 5.9.1, the KF5 version to 5.37 and the LLVM/Clang version to 5.0.0. Also noteworthy, on Windows, we now also ship QtWebEngine instead of QtWebKit for the documentation browser.

Get it

Together with the source code, we again provide a prebuilt one-file-executable for 64-bit Linux, as well as binary installers for 32- and 64-bit Microsoft Windows. You can find them on our download page in the Experimental Releases section.

The 5.1.80 source code and signatures can be downloaded from here.

Please give this version a try and as always let us know about any issues you find via our bug tracker.

sbrauchMon, 10/02/2017 - 19:00
Category

KDevelop 5.2 released

$
0
0
KDevelop 5.2 released

A little more than half a year after the release of KDevelop 5.1, we are happy to announce the availability of KDevelop 5.2 today. Below is a summary of the significant changes -- you can find some additional information in the beta announcement.

We plan to do a 5.2.1 stabilization release soon, should any major issues show up.

Analyzers

With 5.1, KDevelop got a new menu entry Analyzer which features a set of actions to work with analyzer-like plugins. During the last 5.2 development phase, we merged more analyzer plugins into kdevelop.git which are now shipped to you out of the box:

Heaptrack

Heaptrack is a heap memory profiler for C/C++ Linux applications.

heaptrack screenshot
Screenshot of heaptrack run from the KDevelop plugin, visualizing memory usage of KDevelop.

cppcheck

cppcheck is a well-known static analyzer for C++, and can now also be run from within KDevelop by default, showing issues inline.

KDevelop with Cppcheck integration
KDevelop with Cppcheck integration

Improved C++ support

A lot of work was done on stabilizing and improving our clang-based C++ language support. Notable fixes include:

  • Properly pass on some categories of compiler flags from the build system to the analyzer, fixing e. g. parse errors in some Qt header files which cannot be parsed if a certain compiler configuration is not respected
  • Improve performance of C++ code completion in some situations
  • Restore some completion features from 4.x, such as automatic insertion of semicolons in some cases

More improvements, such as better handling of template class member functions, are already being worked on and will be in one of the next versions of KDevelop.

Improved PHP language support

Thanks to Matthijs Tijink we've got many improvements for the PHP language support. The number of syntax warnings with modern PHP code should be greatly reduced, and the type inference is better. The improvements include added support for new language features, work on the type system, as well as bug fixes. Notable improvements include:

  • Add callable type to PHP. (commit. code review D7034)
  • Process member properties/calls for unsure types. (commit. code review D6923)
  • Fix uses of class in closure parameters and default values for functions. (commit. code review D6690)
  • Allow non-scalar constants. (commit. code review D6670)
  • Add spaceship and null coalesce operators. (commit. code review D6645)
  • Support more cases of function argument unpacking. (commit. code review D6271)
  • Support for variadic functions in documentation popup. (commit. code review D6256)
  • Implement syntax support for function argument unpacking. (commit. code review D5908)
  • Add support for variadic functions. (commit. code review D5703)
  • Support of Class::{expr}() syntax from Php 5.4. (commit. code review D4902)
  • Support for $this as an array when implementing ArrayAccess. (commit. code review D4776)
  • Php7 IIFE syntax parsing. (commit. fixes bug #370515. code review D4391)

 

PHP support in KDevelop 5.2


PHP support in KDevelop 5.2

Improved Python language support

Mostly thanks to Francis Herne, some cleanup has been done in the Python language plugin as well.

  • Fixed a false-positive warning when a name used in a closure was defined later in the file.
  • Fixed highlighting of local variables in comprehensions and of parameters in lambda definitions.
  • Infer the correct type when slicing a tuple with constant integers.
  • Infer the correct type from `and` or `or` expressions (Nicolás Alvarez).
  • Internal code cleanups.

Ongoing support for other platforms

We're continuously improving the Windows version of KDevelop. For the Windows version, we upgraded the Qt version to 5.9.1, the KF5 version to 5.37 and the LLVM/Clang version to 5.0.0. Also noteworthy, on Windows, we now also ship QtWebEngine instead of QtWebKit for the documentation browser.

Get it

Together with the source code, we again provide a prebuilt one-file-executable for 64-bit Linux, as well as binary installers for 32- and 64-bit Microsoft Windows. You can find them on our download page.

The 5.2.0 source code and signatures can be downloaded from here.

Should you find any issues in KDevelop 5.2, please let us know in the bug tracker.

sbrauchTue, 2017/11/14 - 16:30
Category

Comments

Sorry, I think You broke Qt Documentation because internal links don't work. Just try to open any page this documentation and clink on any link. You will go nowhere :(. Built documentation is no so much usable if I'm not able to navigate inside. Reported bug: 386929

Looking on changes in Cpp support, seems that KDevelop team focused here on improving python support. Skipping included addons like cppcheck and heaptrack the rest looks a bit poor :(.

Heaptrack looks absolutely fantastic, and is nicely integrated via the provided plugin - thanks a whole lot for this fantastic release once more, cementing my love for Kdevelop.

Keep it up folks!

KDevelop 5.2.1 released

$
0
0
KDevelop 5.2.1 released

Just a few days after the release of KDevelop 5.2.0, we today provide a stabilization and bugfix release with version 5.2.1. This is a bugfix-only release, which introduces no new features and as such is a safe and recommended update for everyone currently using KDevelop 5.2.0.

You can find the updated Windows 32- and 64 bit installers, the Linux AppImage, as well as the source code archives on our download page.

Issues fixed:

  • Fix a crash which often happened when switching git branches in the background in C++ projects. This temporarily disables documentation warnings, as well as parsed documentation display in the tooltips, until the underlying issue is fixed upstream. (bug, upstream bug)
  • Fix no compiler being set by default on Windows, causing KDevelop to fail finding the C++ standard library. (bug)
  • Fix standard library paths not being passed as include paths when using clang as compiler on windows. (review)
  • Fix a crash happening on some systems when opening a session. (bug)
  • Fix include path completion not showing project-defined system includes (i.e. includes added as system includes but by your project). (bug)
  • Fix crash when batch-editing defines in the define editor. (bug)
  • Fix an assert (only happened in debug mode) and potential crash when showing problem tooltip. (bug)
  • Fix links in documentation browser not working in the AppImage. (bug)
  • Fix build failure when building in-source when translations are present. (bug)
  • Fix a crash when showing navigation tooltip in PHP projects in some situations. (bug)
  • Fix targets being duplicated when using CMake subprojects. (bug)
  • Fix console toolview asking to delete a temporary file interactively. (bug)
  • Fix a lot of AUTOMOC warnings while compiling with CMake 3.10
  • Fix some tool view context menus having empty entries. (bug)
  • Fix the progress widget in the statusbar not showing in some sessions. (review)
  • Adapt cache clear logic to ensure that the code model cache (~/.cache/kdevduchain) is always cleared when changing to a different KDevelop version (including patch versions). Unsuitable data in the cache has caused a range of issues in the past, including crashes. If you really need to keep the cache, you can create an (empty) file with the version suffix of the target version in the cache folder.
  • Fix KDevelop not starting up with the welcome page enabled (which it is by default) on systems without OpenGL support. (bug)
  • Fix build with Qt version 5.5.
  • Fix file templates not working on Windows (this fix should be in the Windows 5.2.0 installers already, but was not in the source tarballs).

Please let us know of any issues you encounter when using KDevelop on the bug tracker, in the mailing lists for development or users (kdevelop@kde.org, kdevelop-devel@kde.org), or in the comment section of this release announcement.

We think KDevelop 5.2.1 should work quite well now, but if more issues show up, we will provide another bugfix release shortly.

sbrauchFri, 2017/11/24 - 11:00
Category

Comments


KDevelop with Cppcheck Integration

$
0
0
KDevelop with Cppcheck Integration

Starting with 5.1 release KDevelop supports built-in integration with static-analysis tool Cppcheck. Cppcheck provides unique code analysis to detect bugs and focuses on detecting undefined behaviour and dangerous coding constructs. The goal is to detect only real errors in the code (i.e. have very few false positives). Such analysis is very useful for all projects, especially for projects with complex structure and large code volume. Convenient integration with the development environment greatly simplifies and speeds up the process of code checking, as there is no need to study the analyzer documentation, its manual configuration and code navigation when processing the analysis results.

To use cppcheck integration in KDevelop, you only need to:

  1. Install cppcheck with using standard tools of your operating system.
  2. Select the required check parameters in the project properties.
  3. Run the check and analyze the code for found (potential) errors.

Let's take a closer look at the process of setting up and running the analyzer (we suppose that cppcheck is already installed).

Configure cppcheck in KDevelop (optional)

First, you must verify that the path to the cppcheck executable is correct. The path should be automatically detected but if you install cppcheck to non-standard place or if you want to use non-system version such path must be setup through plugin configuration page: "Settings" -> "Configure KDevelop" -> "Analyzers" -> "Cppcheck":

Cppcheck plugin config page

By default "native" cppcheck's output it not shown during the check and also we hide it's XML output. This can be enabled with appropriate checkbox and output can be viewed manually in the standard "Test" tool view:

If cppcheck executable path is ok we can set up check parameters for the individual projects through project's configuration page.

Configure check parameters for the individual projects (optional)

"Project" -> "Open Configuration" -> "Cppcheck":

Project's configuration page

The config page contains tabbar to control cppcheck behavior and auto-updated command line panel which displays the resulting cppcheck command line. First tab allows you enable/disable different types of analysis. Full description can be found in the cppcheck documentation and short version is displayed as tooltip for the selected checkbox.

Second page allows you setup include directories where cppcheck will try to find headers during analysis. By default we enable only "project" includes but you also enable "system" directories (like /usr/include/). Note that enabling system directories can slowdown the analysis. You also can block some include directories if necessary:

Include directories configuration

Last tab allows you to pass custom extra parameters to the cppcheck. This may be useful since built-in GUI controls supports only commonly-used functionality. See cppcheck documentation for all supported parameters:

Extra parameters settings

When all configuration steps are finished press "OK"/"Apply" to save your changes. Next we are ready to start code analysis.

Starting the cppcheck code analysis

This can be done with 3 ways:

  1. From the main menu: "Code" -> "Analyze Current File/Project With".
  2. From the editor context menu: "Analyze Current File/Project With".
  3. From the "Projects" tool view context menu. You should select some element in the tree and call context menu: "Analyze With" -> "Cppcheck". Depending on the selection the check will be start for whole project, some directory or for the single file.

When the analysis is started the standard "Problems" tool view is activated and opens "Cppcheck" tab. All problems will be placed into the table and can be activated with mouse-click on appropriate line. When some problem is activated the corresponding source file will be open in the editor and cursor will be placed on error's line:

Cppcheck errors view

 

You should analyze the problem's code and fix it if necessary. Note that some errors are not errors but only cppcheck recommendations. Some errors can be false-positive cppcheck triggers therefore no fixes needed. Also some error lines displays information not associated with source code - when, for example, cppcheck can't find include paths for some headers. Note that cppcheck tool is not ideal and you should carefully analyze each error line in the report and decide to fix or ignore it.

After fixing the errors found by cppcheck the analysis can be restarted. This can be do as described earlier or by "one-click" on first button in the "Cppcheck" problems view ("Re-Run Last Cppcheck Analysis").

Presented cppcheck integration plugin provides simple and easy-to-use mechanism for checking your code for some common errors. Regular using of such analysis tool can help you to catch and fix many errors before they happens in the released version of your software.

htowerMon, 2018/03/05 - 18:00

KDevelop 5.2.2 and 5.2.3 released

$
0
0
KDevelop 5.2.2 and 5.2.3 released

We today provide a stabilization and bugfix release with version 5.2.2 and 5.2.3. 5.2.2 was tagged 6 weeks ago, but we never managed to release it because we did not have the patience to fix the Windows installers in time due to a broken CI. Windows installers are provided for 5.2.3 again. We'll only provide source tarballs for 5.2.2 and we encourage everyone to just skip this release and use 5.2.3 which contains a few more bug fixes.

This is a bugfix-only release, which introduces no new features and as such is a safe and recommended update for everyone currently using KDevelop 5.2.1.

You can find the updated Windows 32- and 64 bit installers, the Linux AppImage, as well as the source code archives on our download page.

Please let us know of any issues you encounter when using KDevelop on the bug tracker, in the mailing lists for development or users (kdevelop@kde.org, kdevelop-devel@kde.org), or in the comment section of this release announcement.

Change log

kdevelop

  • KDevelop : support whitespace between the '#' and 'include' (or 'import'). (commit. fixes bug #394200. code review D12903)
  • Shell: Display generic project managers again. (commit. code review D12279)
  • Github: Fix Github repositories not fetched. (commit. fixes bug #392553. code review D11980)
  • Avoid emptry entries in project files filter list. (commit. code review D11912)
  • Note org.kdevelop.IBasicVersionControl@kdevgit as dep for kdevghprovider. (commit. code review D11823)
  • Never assert when the assert can fire sporadically. (commit. See bug #357585)
  • Sublime: Release space in tab bar when no status. (commit. See bug #314167)
  • Shell: Save entries of recent projects action. (commit. fixes bug #385915)
  • Lldb: don't issue command when there's no env variables to set, fix Bug 391897. (commit. code review D11524)
  • Fix crash when activating code completion item. (commit. fixes bug #391742)
  • Do not add return type to constructors declaration when editing definition in signature assistant. (commit. fixes bug #365420. code review D11291)
  • Make lambda introduce a context in DU chain. (commit. fixes bug #387994. code review D11303)
  • Fix bug 384082 - cppcheck is checking CMake generated files. (commit. fixes bug #384082. code review D11041)
  • Never run qmlplugindump on plugins that already offer plugins.qmltypes. (commit. code review D10872)
  • Fix CodeCompletion of Strongly Typed Enum. (commit. code review D10738)
  • Make sure qmlplugindump works on my system. (commit. code review D10782)
  • Make sure we don't crash when stopping all jobs. (commit. code review D10874)
  • Help automoc to find metadata JSON files referenced in the code. (commit. code review D10693)
  • Link against KF5::Purpose if it's available. (commit. code review D9921)
  • Properly quote expected string value in lldb formatter unittests. (commit. code review D9929)
  • Unbreak the GDB QUrl pretty printer test. (commit. code review D9922)
  • Unbreak QtPrintersTest::testQString. (commit. code review D9923)
  • Also unbreak QtPrintersTest::testQByteArray. (commit. code review D9924)
  • Work around bug in kLineEdit. (commit. code review D9809. fixes bug #373004)
  • Fix crash when stopping process. (commit. code review D9858)
  • Performance: Reuse the global icon loader. (commit. code review D9783)
  • Cache ProblemPointers per translation unit. (commit. fixes bug #386720. code review D9772)
  • Only set CMAKE_AUTOMOC_MACRO_NAMES with KF5 < 5.42. (commit. code review D9778)
  • Format comments before setting them on the DUChain. (commit. code review D9472)
  • Set toolbar/toolbutton font on quickopen line edit. (commit. code review D9481)

kdev-python

  • Ensure that codestyle.py always returns something on stdout to unlock m_mutex. (commit. fixes bug #392031. code review D11474)
  • Fix crash with contexts opened in the baseclass list of a class definition. (commit. fixes bug #389326)
  • Fix appstream metadata filename and some content, and install it. (commit. code review D9488)

kdev-php

No changes

kfunkSun, 2018/05/20 - 00:00
Category

Comments

Thank you for your work! I use Kdevelop everyday and I'm happy to see a new version.

KDevelop 5.2.4 released

$
0
0
KDevelop 5.2.4 released

As the last stabilization and bugfix release in the 5.2 series, we today make KDevelop 5.2.4 available for download. This release contains a few bug fixes and a bit of polishing, as well as translation updates, and should be a very simple transition for anyone using 5.2.x currently.

Notable changes: 

  • Fix resizing of variable tooltip (D14879)
  • Fix various problems with filters in the output view (bug 343124)
  • Fix a crash which could happen when using the class browser in debug builds with Qt >= 5.11 (D14840)
  • Only show cppcheck menu for cpp files (D14525)
  • PHP support: determine correct type for relational and equality expressions (bug 305341)
  • PHP support: fix a bug with rescheduling jobs (D14113)

KDevelop 5.2.4 can as usual be downloaded from our Downloads page. In addition to the source code, we also provide 32- and 64-bit Windows installers, as well as pre-built binaries for 64-bit Linux as an AppImage.

After closing out the 5.2 series, we also plan to release KDevelop 5.3 soon with lots of improvements.

sbrauchTue, 2018/08/21 - 11:45
Category

KDevelop 5.3 beta 1 released

$
0
0
KDevelop 5.3 beta 1 released

We are happy to announce the release of KDevelop 5.3 Beta, almost exactly twenty years after KDevelop's first official release! Here's a brief summary of what's new in this version:

Analyzers

With 5.1, KDevelop got a new menu entry Analyzer which features a set of actions to work with analyzer-like plugins. For 5.2 the runtime analyzer Heaptrack and the static analyzer cppcheck have been added. During the last 5.3 development phase, we added another analyzer plugin which now is shipped to you out of the box:

Clazy

Clazy is a clang analyzer plugin specialized on Qt-using code, and can now also be run from within KDevelop by default, showing issues inline.

Screenshot of KDevelop with dialog for project-specific Clazy settings, with clazy running in the background

The KDevelop plugin for Clang-Tidy support for now is developed and released independently. It is scheduled to be merged into KDevelop for 5.4.

Internal changes

With all the Analyzers integration available, KDevelop's own codebase has been subject for their application as well. Lots of code has been optimized and, where indicated by the analyzers, stabilized. At the same time modernization to the new standards of C++ and Qt5 has been continued with the analyzers aid, so it can be seen only in the copyright headers KDevelop was founded in 1998 .

Improved C++ support

A lot of work was done on stabilizing and improving our clang-based C++ language support. Notable fixes include:

  • Clang: include tooltips: fix range check. (commit. code review D14865)
  • Allow overriding the path to the builtin clang compiler headers. (commit. See bug #393779)
  • Always use the clang builtin headers for the libclang version we use. (commit. fixes bug #387005. code review D12331)
  • Group completion requests and only handle the last one. (commit. code review D12298)
  • Fix Template (Class/Function) Signatures in Clang Code Completion. (commit. fixes bug #368544. fixes bug #377397. code review D10277)
  • Workaround: find declarations for constructor argument hints. (commit. code review D9745)
  • Clang: Improve argument hint code completion. (commit. code review D9725)

Improved PHP language support

Thanks to Heinz Wiesinger we've got many improvements for the PHP language support.

  • Much improved support for PHP Namespaces
  • Added support for Generators and Generator delegation
  • Updated and expanded the integrated documentation of PHP internals
  • Added support for PHP 7's context sensitive lexer
  • Install the parser as a library so it can be used by other projects (currently, umbrello can use it) (Ralf Habacker)
  • Improved type detection of object properties
  • Added support for the object typehint
  • Better support for ClassNameReferences (instanceof)
  • Expression syntax support improvements, particularly around 'print'
  • Allow optional function parameters before non-optional ones (Matthijs Tijink)
  • Added support for magic constants __DIR__ and __TRAIT__

Improved Python language support

The developers have been concentrating on fixing bugs, which already have been added into the 5.2 series.

So far there is only one improvement specific to 5.3, but surely with more to come:

  • Inject environment profile variables into debug process environment. (commit. fixes bug #322477. code review D14870)

Support for other platforms

KDevelop is written with portability in mind, and relies on Qt for solving the big part there, so next to the original "unixoid" platforms like Linux distributions and the BSD derivatives, other platforms with Qt coverage are in good reach as wel, if people do the final pushing. So far Microsoft Windows has been another supported platform, and there is some experimental, but maintainer-seeking support for macOS. Some porters of Haiku, the BeOS inspired Open Source operating system, have done porting as well, building on the work done for other Qt-based software. For KDevelop 5.3 the small patch still needed has been applied to KDevelop now, so the Haiku ports recipe for KDevelop no longer needs it.

KDevelop is already in the HaikuDepot, currently still at version 5.2.2. It will be updated to 5.3.0 once the release has happened.

KDevelop 5.3 Beta on Haiku

Note to packagers

The Clazy support as mentioned above has a recommended optional runtime dependency, clazy, more specifically the clazy-standalone binary. Currently clazy is only packaged and made available to their users by a few distributions, e.g. Arch Linux, openSUSE Tumbleweed or OpenMandriva,

If your distribution has not yet looked into packaging clazy, please consider to do so. Next to enabling the Clazy support feature in KDevelop, it allows developers to easily fix and optimize their Qt-based software, resulting in a less buggy and more performant software again for you.

You can find more information in the the release announcement of the currently latest clazy release, 1.4.

Downloads

You can find the Linux AppImage (learn about AppImage) here: KDevelop 5.3 beta 1 AppImage (64-bit)
Download the file and make it executable (chmod +x KDevelop-5.2.80-x86_64.AppImage), then run it (./KDevelop-5.2.80-x86_64.AppImage).

The source code can be found here: KDevelop 5.3 beta 1 source code

Note: Unfortunately due to a problem in our Windows build system which we could not fix in time, we cannot provide Windows installers for this release yet. Windows installers will be published again as soon as the problem is fixed. Sorry!

 

sbrauchMon, 2018/10/01 - 23:30
Category

KDevelop 5.3.1 released

$
0
0
KDevelop 5.3.1 released

We today provide a stabilization and bugfix release with version 5.3.1. This is a bugfix-only release, which introduces no new features and as such is a safe and recommended update for everyone currently using KDevelop 5.3.0.

Important changes to AppImage: There have been a couple of significant changes to the AppImage, please check whether it still works for you distribution. The most significant changes were: AppImages are now created on a more recent version of CentOS, now 6.10 instead of 6.8 (which is EOL), plus we no longer ship libfontconfig (cf. commit), libfreetype & libz (cf. commit).

You can find the updated Windows 32- and 64 bit installers, the Linux AppImage, as well as the source code archives on our download page.

ChangeLog

kdevelop

  • Remove the CVS plugin. This was unusable and would crash if used in most cases, but accidentally remained in 5.3.0 (commit. code review D8950)
  • Don't add 'override' specifier for non-modern project settings. (commit. fixes bug #372280. code review D16773)
  • Use qCWarning in path.cpp. (commit. code review D17174)
  • Fix qmakeproject unittest to work on Windows. (commit. code review D17158)
  • Fix defines and includes test to run on Windows. (commit. code review D17156)
  • Fix projectmodel unittest to work on Windows. (commit. code review D17130)
  • Make the filteringstrategy test work on Windows as well. (commit. code review D17098)
  • Fix problem model test on Windows. Make sure that when we create a path the root of that path is created according to what is expected on the current platform. E.g. C: on Windows. (commit. code review D17131)
  • Appimage: use original app desktop file as base for appimage one. (commit. code review D17027)
  • Make test outputmodel pass on windows. (commit. code review D17077)
  • Increase timeout for duchain gcc compatibility test. (commit. code review D16541)
  • Auto-find Clazy documentation also with clazy >= 1.4. (commit. fixes bug #401075. code review D16910)
  • Disable plugin project config if project without a IBuildSystemManager dep. (commit. fixes bug #400769. code review D16915)
  • Appimage: Do not bundle libfontconfig. (commit. code review D16893)
  • Cmake: fix missing addition of policies to documentation index. (commit. code review D15882)
  • FunctionDefinition: only look for (new/other) function definition if we don't have one. (commit. code review D16356)
  • Fix memleaks in duchain unittests. (commit. code review D16458)

kdev-python

  • Remove two outdated methods from shipped built-in documentation

kdev-php

  • Fix handling of array indexes after ClassNameReferences. (commit. fixes bug #401278)
  • Fix syntax support for dynamic member access. (commit. fixes bug #400294. code review D16461)
kfunkThu, 2018/12/20 - 21:45
Category

KDevelop 5.3.2 released

$
0
0
KDevelop 5.3.2 released

We today provide a stabilization and bugfix release with version 5.3.2. This is a bugfix-only release, which introduces no new features and as such is a safe and recommended update for everyone currently using KDevelop 5.3.1.

You can find the updated Windows 32- and 64 bit installers, the Linux AppImage, as well as the source code archives on our download page.

kdevelop

  • Don't call clear() on a shared pointer we don't own. (commit. fixes bug #403644)
  • Workaround the bug found by ASan, which can be seen on FreeBSD CI. (commit. code review D18463)
  • Kdev-clazy: use canonical paths. (commit. code review D15797)
  • Prevent the Extra Arguments ComboBox to Stretch Too Much. (commit. code review D18414)
  • CMake plugin: don't hardcode a default install prefix. (commit. code review D17255)
  • Appimage: skip unneeded cp of cmake, removed later again. (commit. code review D18175)
  • Clang plugin: Handle CUDA files better. (commit. code review D17909)
  • Clang: detect Clang builtin dirs at runtime on Unix. (commit. code review D17858)
  • Actually cleanup the duchain from the background thread. (commit. fixes bug #388743)
  • Appimage: add okteta libs, as used by the debugger memory view. (commit. code review D17888)
  • Grewpview: Fix potential crash in "Find in Files". (commit. fixes bug #402617)
  • Add All Top-Level Targets to the Menu. (commit. code review D18021)
  • Show "Move into Source" action in code menu. (commit. code review D17525)
  • QuickOpen: Trim whitespace from input. (commit. code review D17885)
  • Update kdevelop app icon to latest breeze-icons version. (commit. code review D17839)
  • Appimage: have only kdevelop appdata in the appimage. (commit. code review D17582)
  • Fix first run of appimage creation: get install_colorschemes.py via $SRC. (commit. code review D17581)
  • Fix crash in documentation view. (commit. fixes bug #402026)
  • CMake: skip server entries without empty build system information. (commit. code review D17679)
  • 2 missing KTextEditorPluginIntegration::MainWindow slots. (commit. code review D17465)
  • Polish Purpose integration in the PatchReview plugin. (commit. code review D17424)
  • Hex editor plugin: prepare for incompatible API change of libraries from upcoming Okteta 0.26.0

kdev-python

  • Fix crash when finding context inside annotated assigments. (commit. fixes bug #403045)

kdev-php

No changes

kfunkThu, 2019/03/07 - 09:30
Category

KDevelop 5.3.3 released

$
0
0
KDevelop 5.3.3 released

We today provide a stabilization and bugfix release with version 5.3.3. This is a bugfix-only release, which introduces no new features and as such is a safe and recommended update for everyone currently using a previous version of KDevelop 5.3.

You can find a Linux AppImage as well as the source code archives on our Download page. Windows installers are currently not offered, we are looking for someone interested to take care of that.

kdevelop

  • Use KDE_INSTALL_LOGGINGCATEGORIESDIR for kdebugsettings .categories files. (commit. )
  • TextDocument: remove actions from contextmenu on hide already. (commit. code review D22424)
  • Sublime: fix crash on undocking toolviews with Qt 5.13. (commit. fixes bug #409790)
  • Kdevplatform/interfaces: fix missing explicit QVector include. (commit. )
  • Fix kdevelopui.rc: bump version as required by string context changes. (commit. )
  • Shell: overwrite katectagsplugin to be disabled by default. (commit. )
  • Translate relative paths of input files to absolute ones. (commit. )
  • Welcome page: do not add currently unused qml pages to qrc data. (commit. )
  • Fix browse mode not disabled after Ctrl is released. (commit. )
  • Attempt to fix a crash on shutdown. (commit. )
  • ProblemHighlighter: Fix mark type handling. (commit. )
  • Cmakebuilddirchooser: Set a minimum size. (commit. )
  • Fix memory leaks reported by ASAN. (commit. )
  • Qmake: Move builder plugin to correct category. (commit. fixes bug #407396)
  • Add DesktopEntry to notifyrc. (commit. code review D20920)
  • Output config subpages alphabetically, instead of order in which corresponding plugins were loaded. (commit. code review D14391)
  • Flatpak plugin - fix typo ("flies" -> "files"). (commit. )

kdev-python

  • Use KDE_INSTALL_LOGGINGCATEGORIESDIR for kdebugsettings .categories file. (commit. )

kdev-php

  • Use KDE_INSTALL_LOGGINGCATEGORIESDIR for kdebugsettings .categories file. (commit. )
  • Update phpfunctions.php to phpdoc revision 347011. (commit. )
  • Parse more function aliases. (commit. )
  • More special handling for mcrypt constants. (commit. )
  • Parse more class constants. (commit. )
  • Parse more constants. (commit. )
  • Parse constants under para. (commit. )
  • Parse more constants within tables. (commit. )
  • Parse url stat constants. (commit. )
  • Parse php token constants. (commit. )
  • Parse file upload constants. (commit. )
  • Parse constants under tables. (commit. )
  • Parse constants under section and within tables. (commit. )
  • Parse nl-langinfo constants. (commit. )
  • Parse constants split over multiple lists within one file. (commit. )
  • Fix function declarations with varargs. (commit. )
kossebauWed, 2019/07/17 - 23:07
Category

KDevelop 5.4 beta 1 released

$
0
0
KDevelop 5.4 beta 1 released

We are happy to announce the release of KDevelop 5.4 Beta 1!

5.4 as a new feature version of KDevelop will among other things add some first support for projects using the Meson build system and have the Clang-Tidy support plugin merged as part of built-in plugins. It also brings 11 months of small improvements across the application. Full details will be given in the announcement of the KDevelop 5.4.0 release, which is currently scheduled for in 2 weeks.

Downloads

You can find the Linux AppImage (learn about AppImage) here: KDevelop 5.4 beta 1 AppImage (64-bit)
Download the file and make it executable (chmod +x KDevelop-5.3.80-x86_64.AppImage), then run it (./KDevelop-5.3.80-x86_64.AppImage).

The source code can be found here: KDevelop 5.4 beta 1 source code

Windows installers are currently not offered, we are looking for someone interested to take care of that.

kossebauMon, 2019/07/22 - 18:30
Category

KDevelop 5.4.2 released

$
0
0
KDevelop 5.4.2 released

We today provide a stabilization and bugfix release with version 5.4.2. This is a bugfix-only release, which introduces no new features and as such is a safe and recommended update for everyone currently using a previous version of KDevelop 5.4.

You can find the updated Linux AppImage as well as the source code archives on our download page.

ChangeLog

kdevelop

  • All debuggers: fix VariableCollection to unregister as texthinter provider. (commit. See bug #411371)
  • Contextbrowser: register as texthint provider to existing views on creation. (commit)
  • Fix crash on text hint being triggered after disabling code browser plugin. (commit. See bug #411371)
  • Avoid possible dereference of an invalid iterator. (commit. fixes bug #411323)
  • Kdevplatform/shell: fix outdated window title once project of document loaded. (commit)
  • Kdevplatform/shell: work-around for Qt 5.9/macOS bug showing modified indicator. (commit)
  • Kdevplatform/shell: restore document modified flag in mainwindow title. (commit)
  • Kdevplatform/shell: do not repeat query & differently for current document. (commit)
  • Indicate appsteam the ps desktop file isn't a separate application. (commit. code review D23321. fixes bug #410687)
  • Clang: fix tooltip missing closing bracket with default argument calls. (commit)
  • Include more hidden files in projectfilter plugin (CI, Lint configs...). (commit)

kdev-python

No user-relevant changes.

kdev-php

No user-relevant changes.

kossebauMon, 2019/09/02 - 23:00
Category

KDevelop 5.4.3 released

$
0
0
KDevelop 5.4.3 released

We today provide a stabilization and bugfix release with version 5.4.3. This is a bugfix-only release, which introduces no new features and as such is a safe and recommended update for everyone currently using a previous version of KDevelop 5.4.

You can find the updated Linux AppImage as well as the source code archives on our download page.

ChangeLog

kdevelop

  • ProblemNavigationContext: Fix incorrect link target for file:line links with declarations. (commit)
  • ProjectManagerView: Make items with an empty icon have the same indent as items with a valid icon. (commit)
  • Welcome page: fix version of QtQuick.XmlListModel import to match Qt 5.7 ff. (commit)
  • Welcome page: fix version of QtQuick.Layouts import to match Qt 5.7 ff. (commit)
  • [Grepview] Use the correct fallback icon for Collapse All. (commit)
  • FileManagerListJob: use a semaphore for locking. (commit)
  • Fix Infinite Recursion in DUChain. (commit)
  • Cache the defines/includes for gcc-like compilers per language type. (commit)
  • Only write defines file when needed. (commit)
  • Don't set super long name on completely anon structs. (commit)
  • Use type name as fallback ID for anon typedef'ed structs/unions etc. (commit. fixes bug #409041)
  • Fixed crash when filtering class list. (commit. code review D22660. fixes bug #406931)
  • Gcclikecompiler: properly resolve include paths with symbolic links. (commit. fixes bug #405221)

kdev-python

No user-relevant changes.

kdev-php

  • Fix expressions using array constants. (commit. fixes bug #405719)
  • Don't mark class constants as normal members. (commit)
kossebauMon, 2019/10/21 - 18:31
Category

KDevelop 5.4.4 released

$
0
0
KDevelop 5.4.4 released

We today provide a bugfix and localization update release with version 5.4.4. This release introduces no new features and as such is a safe and recommended update for everyone currently using a previous version of KDevelop 5.4.

You can find the updated Linux AppImage as well as the source code archives on our download page.

ChangeLog

kdevelop

  • Fix copyright date display in About KDevelop/KDevPlatform dialogs. (commit. fixes bug #413390)
  • FindClang.cmake: also search LLVM version 9. (commit)
  • Clang: Workaround for empty problem ranges at start of document. (commit)

kdev-python

No user-relevant changes.

kdev-php

No user-relevant changes.

kossebauMon, 2019/11/04 - 19:02
Category

KDevelop 5.4.5 released

$
0
0
KDevelop 5.4.5 released

We today provide a bugfix and localization update release with version 5.4.5. This release introduces no new features and as such is a safe and recommended update for everyone currently using a previous version of KDevelop 5.4.

You can find the updated Linux AppImage as well as the source code archives on our download page.

ChangeLog

kdevelop

  • Add missing forward declaration (qt5.14). (commit)
  • Fix compilation error with gcc 7.4.1, ambiguous overload. (commit. code review D25639)
  • Remove bad assert. (commit)
  • Remove duplicate fuzzy character "/". (commit)
  • Fix reformat for selected code. (commit)
  • Qthelp: Unbreak support for zipped/tarred QCH files from KNS. (commit)
  • Qthelp: adapt KNewStuff config to move from collect.kde.org to store.kde.org. (commit. fixes bug #377183)

kdev-python

No user-relevant changes.

kdev-php

  • Update phpfunctions.php to phpdoc revision 348276. (commit)
kossebauMon, 2019/12/02 - 15:56
Category
Viewing all 68 articles
Browse latest View live