190
I Use This!
High Activity

News

Analyzed 1 day ago. based on code collected 1 day ago.
Posted over 10 years ago by Milian Wolff
Hey all! Today, after a bit more than a month since I started working on it, I merged the projectfilter branches into KDevplatform/KDevelop. This is a generic configuration interface and library which allows users to customize which folders/files ... [More] KDevelop includes in a project. How to use it Context Menu The simplest way to use the new code to exclude items from a project, is to use the context menu. Simply right click on any folder/file (not the project root, or anything target related) and choose the “exclude item from project” action. This will then add a filter for the selected item(s). If you want to undo this, go to the project configuration (see below) and remove the filter. Context menu to hide items from a project. Configuration For more advanced management of project filters, or to remove filters and/or adapt the default filters, you need to go to the project configuration and select the new “Project Filter” config page. This allows you to add new filters, remove existing ones or edit them, including reordering them. Project filter configuration. How it works The pattern syntax uses QRegExp::WildcardUnix on relative project paths. This should be fairly easy to grasp and similar to what you know from e.g. .gitignore or svn:ignore. Generally, if you can write a .gitignore file then you should be able to configure your KDevelop project as well! If you wonder what you can do with the include/exclude pattern type, see again the documentation of .gitignore and it’s !pattern syntax. It allows you to selectively unhide some paths which where previously hidden. E.g. you can only show *.cpp files in your project by first excluding all files * and then adding an inclusive pattern for *.cpp. Note that the distinction between files/folders is probably not required most of the time. It does allow for some better performance though and may make some patterns more easy to write. Note to Users-Who-Compile-Master-From-Source Those of you who build KDevelop/KDevplatfrom from git master, please make sure to remove kcm_kdev_genericprojectmanagersettings.so and just to make sure also remove kcm_kdev_genericprojectmanagersettings.desktop. Otherwise you’ll get the old generic manager configuration alongside the new project filter, which may break things. If you install KDevelop via the package manager of your distribution, you should have nothing to do but wait until we release a new KDevelop version (4.6) which will then include this new feature! Anyhow, please test this and report bugs on bugs.kde.org. Feature requests also welcome, but I like that this new UI is rather simple and still powerful. I’m reluctant to add more here. Something which I do want to implement in the future though is support for reading e.g. .gitignore files and hiding files based on that from the project. The new API I added to KDevplatform should make this rather easy btw. You/I just have to write a new plugin implementing the IProjectFilterProvider interface and then we could e.g. query git directly for whether a given path is included or not. Cheers! AttachmentSize kdev-projectfilter-config.png83.62 KB kdev-projectfilter-ctxmenu.png24.93 KB [Less]
Posted almost 11 years ago by Milian Wolff
Wow… I’ve been gone for eight days and returned just a few hours ago to Berlin. It doesn’t feel like that. The last days went by in a blur of awesomeness! The reason why I didn’t write a single blog post in between is just that I never had a spare ... [More] minute for that. I arrived on Thursday and instantly enjoyed the warmth of Spain / the Basque country and had a tasty and cheap Menu del Dia at a local Restaurant with fellow KDABians and other KDE friends. Then just a few hours later the first party started, near the old district of the city - amazing! More and more hackers and helpers arrived, the atmosphere was once again so good. The social aspect of this years Akademy was without comparison in my opinion - seriously: Hats off to the local team, you did an amazing job! While the social events on the following days have been just as awesome or even awesomer to awesomest - I especially enjoyed the day trip and jumping into the ocean! - the technical side of Akademy delivered just as well: My favorite talks this year where Mirko’s about ThreadWeaver, which we heavily use in KDevelop. His roadmap and polished API looks much better than what we have nowadays and should allow for much nicer code which might even perform better - kudos! Similarily, I liked Volker’s talk about Expression Templates and Kevin Krammer’s presentation of Declarative Widgets a lot. Both of them are colleagues of mine, so the contents weren’t that new to me - yet hearing it all in a concise and entertaining manner is always worth it. The crowd also seemed to enjoy it. Martin Grässlin’s talk about being the 1% corner case was also highly entertaining and gave a very interesting insight into the problems he tackles day to day. There have been other, less technical talks, which I also appreciated greatly: Kevin Otten’s visionary roadmap for KDE as a community or Till’s highly entertaining presentation of BlackBerry. Which brings me to the sponsors - many thanks! Without them, this year’s event would surely not have been as good as it was! Oh boy, I already wrote a lot, yet only covered the first three days… After the AGM and presentations on the week end followed a full week of highly educational BoF’s - both around KDE topics (such as KF5, KDevelop, …) or “plain” Qt during the Qt Contributor Summit. This was my first time attending the QtCS and I definitely want to see more of this! Discussing the future of QtWebKit and learning more about whats cooking in QtCore was certainly worth it. Being in contact to the QtCreator and QML guys also helps from a tooling point of view in general and from a KDevelop pov in particular. Oh and we got a nice BlackBerry Z10 phone - many thanks for that! The afternoons are mostly a blur - I mostly remember lots of Foosball, Socializing, Drinking, meeting Friends of Old and New, Eating, Partying etc. pp. Anyhow, I think I need to stop here. tl;dr; Thank you local KDE team for organizing such an awesome Akademy + QtCS 2013! Thank you Sponsors for making this possible! PS: All of you who attended talks on the weekend: Go and rate them! The speakers will love you and provide you with even better talks next year! Go to either the page for the talks on saturday or the talks on sunday, then pick the sessions you attended and finally hit the “Feedback” link! PPS: I definitely have to come back to the Basque country, the country side looked beautiful and Bilbao alone is worth the trip! And I didn’t even have time to visit the Guggenheim… Cheers, see you next year you insane awesome crowd of KDE people! [Less]
Posted almost 11 years ago by apol
Usually I don’t blog because there’s not much going on. Lately it’s been because there’s been too much things going on. As always in communities, it’s not something somebody is doing in his corner, but some synergy coming together in a beautiful and convoluted way. Let me try to sort what I’m talking about. The [...]
Posted almost 11 years ago by apol
Usually I don’t blog because there’s not much going on. Lately it’s been because there’s been too much things going on. As always in communities, it’s not something somebody is doing in his corner, but some synergy coming together in a beautiful and convoluted way. Let me try to sort what I’m talking about. The […]
Posted almost 11 years ago by apol
Usually I don’t blog because there’s not much going on. Lately it’s been because there’s been too much things going on. As always in communities, it’s not something somebody is doing in his corner, but some synergy coming together in a beautiful and ... [More] convoluted way. Let me try to sort what I’m talking about. The … Continue reading KDE, the present and present+1 → [Less]
Posted almost 11 years ago by apol
Usually I don’t blog because there’s not much going on. Lately it’s been because there’s been too much things going on. As always in communities, it’s not something somebody is doing in his corner, but some synergy coming together in a beautiful and convoluted way. Let me try to sort what I’m talking about. The […]
Posted almost 11 years ago by apol
Usually I don’t blog because there’s not much going on. Lately it’s been because there’s been too much things going on. As always in communities, it’s not something somebody is doing in his corner, but some synergy coming together in a beautiful and ... [More] convoluted way. Let me try to sort what I’m talking about. The … Continue reading KDE, the present and present+1 → [Less]
Posted over 11 years ago by Milian Wolff
During the sprint in Vienna last year, Aleix and me laid the ground work for a QML/JS language support plugin for KDevelop. Sadly we two only have very limited time working on fancy new features such as that. Thankfully someone stood up and started ... [More] contributing - none other than Andrea Scarpino of ArchLinux KDE/Qt packaging fame. With some help of me and Sven he managed to get the JavaScript support into a much more shiny state - behold: Colorful JavaScript Analysis in KDevelop For simple JavaScript files we already have proper context browsing, uses and declarations. And all that in just a few lines of code thanks to the good work of the QtCreator team, whose JavaScript/QML parser we use (which is the one of the most complicated parts of a language support plugin). Thanks again, guys! The next steps on the JavaScript side will be proper support for objects and prototypes - I’m interested to see how we can cope with that. Then we’ll need support for built-in APIs such as DOM window, document and such. But we’ll keep the other use-cases of JavaScript in mind, like using it to extend your own applications (see e.g. Kate). Anyone else out there who wants to help? Or maybe someone wants to work on our QML support? We KDevelop hackers would be happy to help! [Less]
Posted over 11 years ago by Milian Wolff
Hey all, the KDevelop mailing lists have moved to the KDE infrastructure. See the news on kdevelop.org and head over to the mailing lists site to find the locations of the new mailing lists. Note: No users where migrated, thus you have to register ... [More] again! To do that, sent an email to [email protected] and/or [email protected] with the subject subscribe. Cheers, and again many thanks to the KDE sysadmin crew! [Less]
Posted over 11 years ago by Milian Wolff
Hello all! I’m investigating the feasibility of allowing a subset of C++11 in the KDevelop code base, starting after the branch of 4.5 in a few weeks. I do not want to blindly start going that route just to realize afterwards that I’ve alienated a ... [More] large portion of our user base. Thus I’d very much welcome if you could read through this blog post and give some feedback which we can build our decision on top. Here’s the email I sent to the KDevelop development mailing list: Is anyone opposed to open KDevelop 4.6 for C++11? I.e. that means we continue to work as-is and provide a kick-ass KDevelop 4.5. Once we branch 4.5, we enable C++11 mode globally and start using it in master. Reasons: KDevelop is a free time project and it should be fun to work on it. C++11 is quite a lot of fun, if not only because it’s new. This is actually the main reason for me to go down the C++11 route. This would also allow us to learn C+11 which is a benefit for those of us who do professional work-work programming. Tons of potential performance benefits thanks to constexpr, noexcept, r- value references etc. pp. Much easier to read code thanks to auto, lambdas, alias templates, defaulted functions, etc. pp. This also leads to better maintainability. Improved compiler analysis thanks to e.g. static assert, override, final, nullptr, explicit conversion operators, deleted functions, etc. pp. Compilers: See also: http://wiki.apache.org/stdcxx/C%2B%2B0xCompilerSupport Personally I’d say we should just require these compiler versions and above: clang 3.1 - required for constexpr, lambda, initializer lists, … GCC 4.7 - 4.6 might even be enough, but 4.7 has some more stuff like delegating constructors, override, final and non-static data member initialization. msvc ctp november 2012 (http://blogs.msdn.com/b/vcblog/archive/2012/11/02/visual-c-c-11-and-the-…) Potential Issues: FreeBSD situation? http://wiki.freebsd.org/NewC%2B%2BStack <— I’m not sure how far they are. But quite frankly, I’d say they can stick to KDevelop 4.5 until they have a modern compiler like clang 3.1. Debian? Wheezy should come with GCC 4.7 if I’m not mistaken: http://packages.debian.org/wheezy/gcc Imo it’s fine if we only support that version of Debian. All other distros probably already have GCC 4.7 available, or will have it in their next distro release in time for KDevelop 4.6 Windows? If anything breaks on MSVC it’s imo not an issue as KDevelop is defacto dead on Windows (noone is working on it there). Also considering that the windows team is actually working on proper C++11 support (see link above) its only a matter of time until it has everything we need. Backporting: Now this is imo a potential issue, but considering that we don’t do such a good job in that regard anyways, it’s not that big a deal… And most of the fixes we do backport are oneliners which could be done in the 4.5 branches and forward ported to 4.6. More Issues So far a few more concerns where raised: Mac OSX: only “recent” Mac OSX come with a clang that is new enough. Question is: Which version is that exactly? Do people use KDevelop on an older Mac OS? My personal impression was that most Mac users upgrade asap to the newest OS version, thus this should not be an issue? Windows: While the team around Herb Sutter is doing a tremendous job in advancing the compiler to provide kick-ass standard support, apparently the Windows users are reluctant to upgrade… But the obvious question is: Should we be held back by an imaginary Windows user base? KDevelop does compile on Windows, and mostly works but afaik there are still some very sore spots, esp. in the CMake project management and the lack of a MSVC debugger integration. Anyhow, would allowing C++11 in the KDevelop code base make it considerably harder for potential contributors? Considering that even now we do not get any contributions from Windows users, I doubt it can get any worse… But I do see that it’s a hen/egg problem. BSD: FreeBSD is in the process of using Clang. But is that process already finished? If not, is there any ETA? Will there be Clang 3.1? What about other BSDs and Unixoids? What about unsupported platforms? Personally, I think KDevelop is currently in a pretty good shape. If some platforms would have to stick to KDevelop 4.5, I don’t see such a big issue in that. We could also think about making it our first “LTS” release and backport essential bug fixes for a longer period. Why not the Qt way? Qt 5 makes use of C++11 features where possible in a backwards compatible way. It is of course the correct choice for a library that wants to support multiple platforms. But imo, KDevelop does not have such strict requirements. Rather, it should offer maintainable code that is fun to work on. Thus I am stricly against introducing Q_DECL_CONSTEXPR in our code, instead of using constexpr directly. And of course, in Qt you cannot use auto, nor lambdas, nor many other things as you always have to provide a C++03 fallback. Lets try it out, no? As Aleix pointed out, I’ll probably just start a new branch and introduce some C++11 features there. Then we can see whether the gain in code readability or performance is worth the introduction of the mandatory C++11 requirement. [Less]