<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://techbase.kde.org/skins/common/feed.css?0.2"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://techbase.kde.org/api.php?action=feedcontributions&amp;user=Steveire&amp;feedformat=atom</id>
		<title>KDE TechBase - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://techbase.kde.org/api.php?action=feedcontributions&amp;user=Steveire&amp;feedformat=atom"/>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Special:Contributions/Steveire"/>
		<updated>2013-06-19T19:26:18Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.20.2</generator>

	<entry>
		<id>http://techbase.kde.org/Development/ECM_SourceIncompatChanges</id>
		<title>Development/ECM SourceIncompatChanges</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/ECM_SourceIncompatChanges"/>
				<updated>2011-11-24T23:56:46Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== FindFLEX.cmake ===&lt;br /&gt;
&lt;br /&gt;
We use the version from CMake now, which is named FindFlex.cmake (different casing !).&lt;br /&gt;
Beside that there should be no changes in behaviour.&lt;br /&gt;
&lt;br /&gt;
* find_package(FLEX) -&amp;gt; find_package(Flex)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== FindGetText.cmake ===&lt;br /&gt;
&lt;br /&gt;
We use the version from CMake now.&lt;br /&gt;
The syntax of GETTEXT_PROCESS_PO_FILES() changed a bit, it now needs the additional keyword &amp;quot;PO_FILES.&lt;br /&gt;
&lt;br /&gt;
* gettext_process_po_files(de ALL INSTALL_DESTINATION ${dest} file1.po file2.po) -&amp;gt; gettext_process_po_files(de ALL INSTALL_DESTINATION ${dest} PO_FILES file1.po file2.po)&lt;br /&gt;
&lt;br /&gt;
=== FindGIF.cmake ===&lt;br /&gt;
&lt;br /&gt;
We use the version from CMake now.&lt;br /&gt;
There is a minor difference, which will not affect many systems. The KDE version accepted only giflib version 4, while the CMake version accepted any version of giflib. If giflib version 4 .x is required, the version can now be specified:&lt;br /&gt;
&lt;br /&gt;
* find_package(GIF) -&amp;gt; find_package(GIF 4 )&lt;br /&gt;
&lt;br /&gt;
This actually only was an issue on some relatively old Sun machines in 2006. Maybe today it is not even there a problem anymore.&lt;br /&gt;
&lt;br /&gt;
=== FindLibXslt.cmake ===&lt;br /&gt;
&lt;br /&gt;
We use the version from CMake 2.8.7 now.&lt;br /&gt;
There are two changes compared to the one in kdelibs:&lt;br /&gt;
&lt;br /&gt;
* ${LIBEXSLT_LIBRARIES} -&amp;gt; ${LIBXSLT_EXSLT_LIBRARIES}&lt;br /&gt;
* WinCE is probably not supported anymore, patches are welcome&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== FindRUBY.cmake ===&lt;br /&gt;
&lt;br /&gt;
This file does not exist anymore, use FindRuby.cmake coming with CMake instead. Most variables are the same. Below are the changes:&lt;br /&gt;
&lt;br /&gt;
* find_package(RUBY) -&amp;gt; find_package(Ruby)&lt;br /&gt;
* RUBY_INCLUDE_PATH -&amp;gt; RUBY_INCLUDE_DIRS&lt;br /&gt;
&lt;br /&gt;
=== FindX11.cmake ===&lt;br /&gt;
&lt;br /&gt;
The following two variables have been removed, use the newer ones instead:&lt;br /&gt;
&lt;br /&gt;
* X11_Xss_FOUND -&amp;gt; X11_Xscreensaver_FOUND&lt;br /&gt;
* X11_Xss_LIB -&amp;gt; X11_Xscreensaver_LIB&lt;br /&gt;
&lt;br /&gt;
The following libraries are now not part of X11_LIBRARIES anymore, so they may have to be added to target_link_libraries() explicitely where needed:&lt;br /&gt;
&lt;br /&gt;
* X11_Xau_LIB&lt;br /&gt;
* X11_Xft_LIB&lt;br /&gt;
* X11_Xdmcp_LIB&lt;br /&gt;
* X11_Xpm_LIB&lt;br /&gt;
&lt;br /&gt;
=== MacroAddCompileFlags.cmake ===&lt;br /&gt;
&lt;br /&gt;
This file has been removed. Use set_property(.. APPEND_STRING) instead (new in CMake 2.8.6).&lt;br /&gt;
&lt;br /&gt;
* include(MacroAddCompileFlags) -&amp;gt; delete&lt;br /&gt;
* macro_add_compile_flags(target &amp;quot;-O2 -g&amp;quot;) -&amp;gt; set_property(TARGET target APPEND_STRING PROPERTY COMPILE_FLAGS &amp;quot; -O2 -g&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
=== MacroAddLinkFlags.cmake ===&lt;br /&gt;
&lt;br /&gt;
This file has been removed. Use set_property(.. APPEND_STRING) instead (new in CMake 2.8.6).&lt;br /&gt;
&lt;br /&gt;
* include(MacroAddLinkFlags) -&amp;gt; delete&lt;br /&gt;
* macro_add_link_flags(target &amp;quot;-no-rpath&amp;quot;) -&amp;gt; set_property(TARGET target APPEND_STRING PROPERTY LINK_FLAGS &amp;quot; -no-rpath&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
=== MacroAdditionalCleanFiles.cmake ===&lt;br /&gt;
&lt;br /&gt;
This file has been removed. Use set_property(... APPEND ...) instead.&lt;br /&gt;
&lt;br /&gt;
* include(MacroAdditionalCleanFiles) -&amp;gt; delete&lt;br /&gt;
* macro_additional_clean_files(file1 file2 fileN) -&amp;gt; set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES &amp;quot;file1;file2;fileN&amp;quot; )&lt;br /&gt;
&lt;br /&gt;
=== MacroLogFeature.cmake ===&lt;br /&gt;
&lt;br /&gt;
This file has been removed, instead FeatureSummary.cmake from CMake &amp;gt;= 2.8.6 has to be used, which has even more functionality.&lt;br /&gt;
Please have a look at the documentation of FeatureSummary.cmake on the cmake manpage.&lt;br /&gt;
&lt;br /&gt;
* macro_log_feature(&amp;lt;variable&amp;gt; &amp;lt;FEATURE&amp;gt; &amp;lt;DESCRIPTION&amp;gt; &amp;lt;URL&amp;gt; &amp;lt;REQUIRED&amp;gt; &amp;lt;MIN_VERSION&amp;gt; &amp;lt;COMMENTS&amp;gt;) -&amp;gt; set_package_properties(FEATURE PROPERTIES DESCRIPTION &amp;lt;DESCRIPTION&amp;gt; URL &amp;lt;URL&amp;gt; TYPE (RUNTIME|OPTIONAL|RECOMMENDED|REQUIRED) PURPOSE &amp;quot;good for something&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* macro_display_feature_log() -&amp;gt; feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGE)&lt;br /&gt;
&lt;br /&gt;
=== MacroOptionalAddSubdirectory.cmake ===&lt;br /&gt;
&lt;br /&gt;
This file is now part of the extra-cmake-modules package and thus has been renamed to ECMOptionalAddSubdirectory.cmake&lt;br /&gt;
&lt;br /&gt;
* include(MacroOptionalAddSubdirectory) -&amp;gt; include (ECMOptionalAddSubdirectory)&lt;br /&gt;
* macro_optional_add_subdirectory(...) -&amp;gt; ecm_optional_add_subdirectory(...)&lt;br /&gt;
&lt;br /&gt;
=== MacroOptionalDependPackage.cmake ===&lt;br /&gt;
&lt;br /&gt;
This file has been removed, the purpose was broken.&lt;br /&gt;
&lt;br /&gt;
* include (MacroOptionalDependPackage) -&amp;gt; delete&lt;br /&gt;
* macro_optional_depend_package() -&amp;gt; delete&lt;br /&gt;
&lt;br /&gt;
=== MacroOptionalFindPackage.cmake ===&lt;br /&gt;
&lt;br /&gt;
This file does not exist anymore. Instead, starting with CMake 2.8.6, every find_package() call which is not REQUIRED can be disabled by setting the variable CMAKE_DISABLE_FIND_PACKAGE_&amp;lt;PackageName&amp;gt; to TRUE. This makes this macro unnecessary.&lt;br /&gt;
&lt;br /&gt;
* include(MacroFindPackage) -&amp;gt; delete&lt;br /&gt;
* macro_optional_find_package(Foo ...) -&amp;gt; find_package(Foo ... )&lt;br /&gt;
&lt;br /&gt;
=== MacroPushRequiredVars.cmake ===&lt;br /&gt;
&lt;br /&gt;
This file has been merged into CMake, but has been renamed to CMakePushCheckState.cmake.&lt;br /&gt;
&lt;br /&gt;
* include(MacroPushRequiredVars) -&amp;gt; include(CMakePushCheckState)&lt;br /&gt;
* macro_push_required_vars() -&amp;gt; cmake_push_check_state()&lt;br /&gt;
* macro_pop_required_vars() -&amp;gt; cmake_pop_check_state()&lt;br /&gt;
&lt;br /&gt;
=== MacroWriteBasicCMakeVersionFile.cmake ===&lt;br /&gt;
&lt;br /&gt;
This macro has been merged into CMake, but has been renamed to WriteBasicConfigVersionFile.cmake, also the syntax changed slightly. To get exactly the same behaviour as with the old macro, do as shown below. For details see the documentation in the man page.&lt;br /&gt;
&lt;br /&gt;
* include(MacroWriteBasicCMakeVersionFile) -&amp;gt; include (WriteBasicConfigVersionFile)&lt;br /&gt;
* macro_write_basic_cmake_version_file(&amp;lt;outfilename&amp;gt; 1 2 3) -&amp;gt; write_basic_config_version_file(&amp;lt;outfilename&amp;gt; VERSION 1.2.3 COMPATIBILITY AnyNewerVersion )&lt;br /&gt;
&lt;br /&gt;
=== GenerateExportHeader.cmake ===&lt;br /&gt;
&lt;br /&gt;
This has been added to CMake and provides the generate_export_header macro. This macro is the replacement of kde4_create_exports_header.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDELibsModifications</id>
		<title>Projects/KDELibsModifications</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDELibsModifications"/>
				<updated>2011-02-14T21:58:27Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Redirect to communitybase&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page has been moved to [http://community.kde.org/KDE_Core/Modularization communitybase]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Tutorials/Localization/i18n_Build_Systems</id>
		<title>Development/Tutorials/Localization/i18n Build Systems</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Tutorials/Localization/i18n_Build_Systems"/>
				<updated>2011-01-26T18:53:43Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Writing a Messages.sh script */ Document scripts to extract strings from QML and Grantlee files.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Development/Tutorials/Localization/i18n Build Systems}}&lt;br /&gt;
&lt;br /&gt;
{{TutorialBrowser|&lt;br /&gt;
&lt;br /&gt;
series=Localization|&lt;br /&gt;
&lt;br /&gt;
name=Building KDE's l10n Module|&lt;br /&gt;
&lt;br /&gt;
pre=[[../i18n|Writing Applications With Localization in Mind]]|&lt;br /&gt;
next=[[../Language Change|Dealing with language changes]]|&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Abstract ==&lt;br /&gt;
&lt;br /&gt;
Now that your application is ready to be localized, we next look at how to incorporate the necessary mechanisms into the CMake build system of your application.&lt;br /&gt;
&lt;br /&gt;
First we'll explain the &amp;quot;theory&amp;quot; of the steps that need to happen from extracting message strings to installing the generated .po files. After that we'll look at how to implement those steps ([[#Theory: The xgettext toolchain]]). If your application is developed in KDE's subversion repository, many of those steps will happen automatically (see [[#handling i18n in KDE's subversion repository]]). Else you will want to read on in the [[#handling i18n in third party applications]] section.&lt;br /&gt;
&lt;br /&gt;
== Theory: The xgettext toolchain ==&lt;br /&gt;
&lt;br /&gt;
Making translations work consists of the following steps:&lt;br /&gt;
# Extract the translatable strings&lt;br /&gt;
# Merge the new or changed strings with existing translations&lt;br /&gt;
# Compile the translations into message catalogs&lt;br /&gt;
# Install the message catalogs&lt;br /&gt;
# Use the message catalogs in the application&lt;br /&gt;
&lt;br /&gt;
=== Extracting the strings ===&lt;br /&gt;
&lt;br /&gt;
In this step, all the strings you marked as i18n()/ki18n()/etc. in your sources need to be collected into a translation template (.pot) file. Some translateable strings are also contained in .ui, .rc, or .kcfg files. Also tips-of-the-day need to be collected into the .pot file.&lt;br /&gt;
&lt;br /&gt;
These steps are handled by {{path|xgettext}}, {{path|extractrc}}, and {{path|preparetips}} programs, respectively. In some cases you may also need {{path|extractattr}}.&lt;br /&gt;
&lt;br /&gt;
=== Merging translations ===&lt;br /&gt;
&lt;br /&gt;
Generally, only a few translatable string will change at a time, in an application. Some will be removed, some will be added, some will be changed into different strings, and some will be moved around in the source files. These changes need to be reflected in the translations, but of course it would be a huge effort to redo the entire translation every time a string was changed. Rather the changes should be merged with the existing translations. This is the job of the {{path|msgmerge}} tool.&lt;br /&gt;
&lt;br /&gt;
=== Compiling the translations ===&lt;br /&gt;
&lt;br /&gt;
In order to make message lookup fast, the .po files need to be compiled into so-called &amp;quot;message catalogs&amp;quot; (.mo / .gmo). This is done using the {{path|msgfmt}} tool.&lt;br /&gt;
&lt;br /&gt;
=== Installing the message catalogs ===&lt;br /&gt;
&lt;br /&gt;
The compiled message catalogs need to be installed alongside the application. In KDE, the standard location for message catalogs is {{path|$KDEDIR/share/locale/xx/LC_MESSAGES/}}.&lt;br /&gt;
&lt;br /&gt;
=== Using the message catalogs ===&lt;br /&gt;
&lt;br /&gt;
Finally, when the application is run, it needs to load the appropriate message catalog in order to be able to look up and show translated strings. In KDE applications, this is the job of the {{class|KLocale}} class, and in the great majority of cases happens automatically.&lt;br /&gt;
&lt;br /&gt;
For some special cases, such as plugins, look at [[#Runtime Loading Of Catalogs]].&lt;br /&gt;
&lt;br /&gt;
== handling i18n in KDE's subversion repository ==&lt;br /&gt;
&lt;br /&gt;
If your application is developed inside KDE's subversion repository, most of the steps outlined above are automated. In this case, generally, all you will need to do is provide a simple script called {{path|Messages.sh}}, which we will look at below.&lt;br /&gt;
&lt;br /&gt;
In addition, if your top-level folder and .pot file have the same name, the svn2dist script will automatically include .po files when you use it to make a source tarball for your app. &lt;br /&gt;
&lt;br /&gt;
Of course, for the curious, a more detailed account of what happens behind the scences is also provided.&lt;br /&gt;
&lt;br /&gt;
=== Writing a Messages.sh script ===&lt;br /&gt;
&lt;br /&gt;
Basically, the only thing that is necessary to prepare and install translations for applications in KDE's subversion repository, is to provide information, which sources, ui-files or tips need to be translated. For this purpose, you write a small script called {{path|Messages.sh}} and place it in your sources. Here is an example with inline comments:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash n&amp;gt;&lt;br /&gt;
#!bin/sh&lt;br /&gt;
&lt;br /&gt;
# invoke the extractrc script on all .ui, .rc, and .kcfg files in the sources&lt;br /&gt;
# the results are stored in a pseudo .cpp file to be picked up by xgettext.&lt;br /&gt;
$EXTRACTRC `find . -name \*.rc -o -name \*.ui -o -name \*.kcfg` &amp;gt;&amp;gt; rc.cpp&lt;br /&gt;
# if your application contains tips-of-the-day, call preparetips as well.&lt;br /&gt;
$PREPARETIPS &amp;gt; tips.cpp&lt;br /&gt;
# call xgettext on all source files. If your sources have other filename&lt;br /&gt;
# extensions besides .cc, .cpp, and .h, just add them in the find call.&lt;br /&gt;
$XGETTEXT `find . -name \*.cc -o -name \*.cpp -o -name \*.h` -o $podir/APPNAME.pot&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see, this script contains only three actual lines of code, and not all may even be needed. The $XGETTEXT, $PREPARETIPS, $EXTRACTRC, and $podir environment variables are predefined, you do not need to worry about setting these. The only thing that you will need to do is to replace &amp;quot;APPNAME&amp;quot; with the name of your application (but see [[#Naming .pot Files]] for exceptions).&lt;br /&gt;
&lt;br /&gt;
Translatable strings are automatically extracted from c++ files. For non c++ files, the following scripts are used&lt;br /&gt;
* $EXTRACTRC - Extract translatable strings from xml configuration and ui files.&lt;br /&gt;
* $EXTRACTQML - Extract translatable strings from QML files.&lt;br /&gt;
* $EXTRACT_GRANTLEE_TEMPLATE_STRINGS - Extract translatable strings from Grantlee template files.&lt;br /&gt;
&lt;br /&gt;
Try to make sure your Messages.sh script collects only those messages that are really needed. If in doubt, look at other Messages.sh files in the KDE subversion repository for inspiration, or - of course - ask.&lt;br /&gt;
&lt;br /&gt;
=== What's happening behind the scenes ===&lt;br /&gt;
&lt;br /&gt;
{{tip|If your application is in the KDE code repository, all this happens automatically. If your code is not in the KDE repository, you must perform these steps yourself. See [[#handling i18n in third party applications]].}}&lt;br /&gt;
&lt;br /&gt;
Periodically, the script {{path|extract-messages.sh}} (a.k.a. scripty) runs on the KDE server. This program basically calls all Messages.sh scripts in the repository with the appropriate parameters. The extracted messages are stored in template (.pot) files in the templates folder of the l10n module. See [[What Is Scripty]] for more information. &lt;br /&gt;
&lt;br /&gt;
The KDE translation teams translate the messages and commit them into a messages folder corresponding to the language, which is further broken down by module. For example, German translated messages for konqueror are committed to {{path|l10n/de/messages/kdebase/konqueror.po}}. &lt;br /&gt;
&lt;br /&gt;
When the l10n module is built, the .po files are compiled into a binary format for fast lookup and installed as .mo files to {{path|$KDEDIR/share/locale/xx/LC_MESSAGES/}}, where xx is the two-letter ISO 639 code for the language. These are called the message catalogs. &lt;br /&gt;
&lt;br /&gt;
At runtime, the &amp;lt;tt&amp;gt;i18n(...)&amp;lt;/tt&amp;gt; function, using the original string you coded, looks up the string in the message catalog of the user's desktop language and returns the translated string. If the message catalog is missing, or the specific string is not found, &amp;lt;tt&amp;gt;i18n(...)&amp;lt;/tt&amp;gt; falls back to the original string in your code. &lt;br /&gt;
&lt;br /&gt;
.desktop files in your project are handled separately. {{path|makemessages}} extracts strings, such as Name and Comment from the .desktop files and places them into a file named {{path|desktop_mmmm.pot}}, where mmmm is the module name, in the templates folder. Once translators have translated this file, makemessages inserts the translated strings back into the .desktop files. The list of strings extracted is in {{path|l10n/scripts/apply.cc}}. Here's the code that checks for them:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;if (checkTag(&amp;quot;Name&amp;quot;, in, argc, argv, newFile))&lt;br /&gt;
    continue;&lt;br /&gt;
if (checkTag(&amp;quot;Comment&amp;quot;, in, argc, argv, newFile))&lt;br /&gt;
    continue;&lt;br /&gt;
if (checkTag(&amp;quot;Language&amp;quot;, in, argc, argv, newFile))&lt;br /&gt;
    continue;&lt;br /&gt;
if (checkTag(&amp;quot;Keywords&amp;quot;, in, argc, argv, newFile))&lt;br /&gt;
    continue;&lt;br /&gt;
if (checkTag(&amp;quot;About&amp;quot;, in, argc, argv, newFile))&lt;br /&gt;
    continue;&lt;br /&gt;
if (checkTag(&amp;quot;Description&amp;quot;, in, argc, argv, newFile))&lt;br /&gt;
    continue;&lt;br /&gt;
if (checkTag(&amp;quot;GenericName&amp;quot;, in, argc, argv, newFile))&lt;br /&gt;
    continue;&lt;br /&gt;
if (checkTag(&amp;quot;Query&amp;quot;, in, argc, argv, newFile))&lt;br /&gt;
    continue;&lt;br /&gt;
if (checkTag(&amp;quot;ExtraNames&amp;quot;, in, argc, argv, newFile))&lt;br /&gt;
    continue;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== handling i18n in third party applications ==&lt;br /&gt;
&lt;br /&gt;
If your application is developed outside of KDE's subversion repository, you need to take care of generating and installing message catalogs yourself. This is not too hard to do, but you should make sure you have a basic understanding of all steps involved, so you will probably want to read [[#Theory: The xgettext toolchain]], first.&lt;br /&gt;
&lt;br /&gt;
Also, there is more than one way to deal with i18n in your application. We will outline one approach to do so for simple applications, but you may want to diverge from this, if you like to.&lt;br /&gt;
&lt;br /&gt;
=== General considerations ===&lt;br /&gt;
&lt;br /&gt;
The i18n generation process can roughly be divided into two steps:&lt;br /&gt;
&lt;br /&gt;
# Extracting and merging messages&lt;br /&gt;
# Compiling and installing message catalogs&lt;br /&gt;
&lt;br /&gt;
The first step really concerns the ''sources'', while the second step is a natural part of compiling and installing an application. Hence, while the second step should definitely be incorporated into the build system for your application (we assume CMake, here), there is no striking reason for the first step to be handled by the build system.&lt;br /&gt;
&lt;br /&gt;
In fact, the extraction and merging of messages does not map well onto the CMake concept of out-of-source builds, and CMake can't provide too much help for this step, either.&lt;br /&gt;
&lt;br /&gt;
Hence, in this tutorial, we will handle the first step with a standalone shell script, and only the second step will be handled by CMake.&lt;br /&gt;
&lt;br /&gt;
=== Extracting and merging messages ===&lt;br /&gt;
&lt;br /&gt;
If you have read the section [[#handling i18n in KDE's subversion repository]] you will know that in the KDE repository, message extraction and merging is handled by a simple script called Messages.sh, which is invoked by a script called {{path|extract-messages.sh}}. Outside of KDE's repository, you will need to take care of both parts, but fortunately, this is easy enough. Here's a sample script:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash n&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
BASEDIR=&amp;quot;../rkward/&amp;quot;	# root of translatable sources&lt;br /&gt;
PROJECT=&amp;quot;rkward&amp;quot;	# project name&lt;br /&gt;
BUGADDR=&amp;quot;http://sourceforge.net/tracker/?group_id=50231&amp;amp;atid=459007&amp;quot;	# MSGID-Bugs&lt;br /&gt;
WDIR=`pwd`		# working dir&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;Preparing rc files&amp;quot;&lt;br /&gt;
cd ${BASEDIR}&lt;br /&gt;
# we use simple sorting to make sure the lines do not jump around too much from system to system&lt;br /&gt;
find . -name '*.rc' -o -name '*.ui' -o -name '*.kcfg' | sort &amp;gt; ${WDIR}/rcfiles.list&lt;br /&gt;
xargs --arg-file=${WDIR}/rcfiles.list extractrc &amp;gt; ${WDIR}/rc.cpp&lt;br /&gt;
# additional string for KAboutData&lt;br /&gt;
echo 'i18nc(&amp;quot;NAME OF TRANSLATORS&amp;quot;,&amp;quot;Your names&amp;quot;);' &amp;gt;&amp;gt; ${WDIR}/rc.cpp&lt;br /&gt;
echo 'i18nc(&amp;quot;EMAIL OF TRANSLATORS&amp;quot;,&amp;quot;Your emails&amp;quot;);' &amp;gt;&amp;gt; ${WDIR}/rc.cpp&lt;br /&gt;
cd ${WDIR}&lt;br /&gt;
echo &amp;quot;Done preparing rc files&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;Extracting messages&amp;quot;&lt;br /&gt;
cd ${BASEDIR}&lt;br /&gt;
# see above on sorting&lt;br /&gt;
find . -name '*.cpp' -o -name '*.h' -o -name '*.c' | sort &amp;gt; ${WDIR}/infiles.list&lt;br /&gt;
echo &amp;quot;rc.cpp&amp;quot; &amp;gt;&amp;gt; ${WDIR}/infiles.list&lt;br /&gt;
cd ${WDIR}&lt;br /&gt;
xgettext --from-code=UTF-8 -C -kde -ci18n -ki18n:1 -ki18nc:1c,2 -ki18np:1,2 -ki18ncp:1c,2,3 -ktr2i18n:1 \&lt;br /&gt;
	-kI18N_NOOP:1 -kI18N_NOOP2:1c,2 -kaliasLocale -kki18n:1 -kki18nc:1c,2 -kki18np:1,2 -kki18ncp:1c,2,3 \&lt;br /&gt;
	--msgid-bugs-address=&amp;quot;${BUGADDR}&amp;quot; \&lt;br /&gt;
	--files-from=infiles.list -D ${BASEDIR} -D ${WDIR} -o ${PROJECT}.pot || { echo &amp;quot;error while calling xgettext. aborting.&amp;quot;; exit 1; }&lt;br /&gt;
echo &amp;quot;Done extracting messages&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;Merging translations&amp;quot;&lt;br /&gt;
catalogs=`find . -name '*.po'`&lt;br /&gt;
for cat in $catalogs; do&lt;br /&gt;
  echo $cat&lt;br /&gt;
  msgmerge -o $cat.new $cat ${PROJECT}.pot&lt;br /&gt;
  mv $cat.new $cat&lt;br /&gt;
done&lt;br /&gt;
echo &amp;quot;Done merging translations&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;Cleaning up&amp;quot;&lt;br /&gt;
cd ${WDIR}&lt;br /&gt;
rm rcfiles.list&lt;br /&gt;
rm infiles.list&lt;br /&gt;
rm rc.cpp&lt;br /&gt;
echo &amp;quot;Done&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Of course you will want to adjust the variable definitions at the top, and - if needed - add code to extract tips-of-the-day or other additional strings.&lt;br /&gt;
&lt;br /&gt;
The example script assumes that all .po files and the .pot file are kept in a single directory, which is appropriate for most projects.&lt;br /&gt;
&lt;br /&gt;
=== Compiling and installing message catalogs ===&lt;br /&gt;
&lt;br /&gt;
Assuming you use the script from the previous section, you can place the following CMakeLists.txt in the directory containing the .po files:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
FIND_PROGRAM(GETTEXT_MSGFMT_EXECUTABLE msgfmt)&lt;br /&gt;
&lt;br /&gt;
IF(NOT GETTEXT_MSGFMT_EXECUTABLE)&lt;br /&gt;
	MESSAGE(&lt;br /&gt;
&amp;quot;------&lt;br /&gt;
                 NOTE: msgfmt not found. Translations will *not* be installed&lt;br /&gt;
------&amp;quot;)&lt;br /&gt;
ELSE(NOT GETTEXT_MSGFMT_EXECUTABLE)&lt;br /&gt;
&lt;br /&gt;
        SET(catalogname rkward)&lt;br /&gt;
&lt;br /&gt;
        ADD_CUSTOM_TARGET(translations ALL)&lt;br /&gt;
&lt;br /&gt;
        FILE(GLOB PO_FILES *.po)&lt;br /&gt;
&lt;br /&gt;
        FOREACH(_poFile ${PO_FILES})&lt;br /&gt;
                GET_FILENAME_COMPONENT(_poFileName ${_poFile} NAME)&lt;br /&gt;
                STRING(REGEX REPLACE &amp;quot;^${catalogname}_?&amp;quot; &amp;quot;&amp;quot; _langCode ${_poFileName} )&lt;br /&gt;
                STRING(REGEX REPLACE &amp;quot;\\.po$&amp;quot; &amp;quot;&amp;quot; _langCode ${_langCode} )&lt;br /&gt;
&lt;br /&gt;
                IF( _langCode )&lt;br /&gt;
                        GET_FILENAME_COMPONENT(_lang ${_poFile} NAME_WE)&lt;br /&gt;
                        SET(_gmoFile ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo)&lt;br /&gt;
&lt;br /&gt;
                        ADD_CUSTOM_COMMAND(TARGET translations&lt;br /&gt;
                                COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} --check -o ${_gmoFile} ${_poFile}&lt;br /&gt;
                                DEPENDS ${_poFile})&lt;br /&gt;
                        INSTALL(FILES ${_gmoFile} DESTINATION ${LOCALE_INSTALL_DIR}/${_langCode}/LC_MESSAGES/ RENAME ${catalogname}.mo)&lt;br /&gt;
                ENDIF( _langCode )&lt;br /&gt;
&lt;br /&gt;
        ENDFOREACH(_poFile ${PO_FILES})&lt;br /&gt;
&lt;br /&gt;
ENDIF(NOT GETTEXT_MSGFMT_EXECUTABLE)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This iterates over all .po files in the directory, compiles them using msgfmt, and installs them to the standard location. You will want to change &amp;quot;catalogname&amp;quot; to the name of your application.&lt;br /&gt;
&lt;br /&gt;
=== Getting translations ===&lt;br /&gt;
&lt;br /&gt;
Now you just have to find translators to translate the extracted messages into the various languages. As your application gets used by more people, you will find that translators will volunteer to do this. Translated PO files then have to be stored in the po folder with the naming scheme &amp;lt;languagecode&amp;gt;.po.&lt;br /&gt;
&lt;br /&gt;
=== Translating .desktop Files ===&lt;br /&gt;
&lt;br /&gt;
Translating .desktop files is a bit tricky because the translation of .desktop files isn't fetched from .po/.gmo files, but must be part of the .desktop file itself. So we have 2 tasks:&lt;br /&gt;
&lt;br /&gt;
* extract messages from the .desktop file&lt;br /&gt;
* merge the translations in the .desktop file&lt;br /&gt;
&lt;br /&gt;
Our friends from Gnome provide the [http://freedesktop.org/wiki/Software/intltool intltool] package. While this tools is mainly written for the old autotools build system (but KDE uses CMake since KDE 4), we can use this package nevertheless for our purpose. Here is a step-by-step guide:&lt;br /&gt;
&lt;br /&gt;
# Install the [http://freedesktop.org/wiki/Software/intltool intltool] package&lt;br /&gt;
# We assume that your .desktop file is named &amp;quot;MYPROGRAM.desktop&amp;quot;.&lt;br /&gt;
# Make a copy of &amp;quot;MYPROGRAM.desktop&amp;quot; which is named &amp;quot;MYPROGRAM.desktop.template&amp;quot;.&lt;br /&gt;
# In MYPROGRAM.desktop.template substitute the keys &amp;quot;Name&amp;quot; by &amp;quot;_Name&amp;quot;, &amp;quot;GenericName&amp;quot; by &amp;quot;_GenericName&amp;quot; and &amp;quot;Comment&amp;quot; by &amp;quot;_Comment&amp;quot;.&lt;br /&gt;
# Remove all translations from &amp;quot;MYPROGRAM.desktop.template&amp;quot;.&lt;br /&gt;
# Add the following lines to the above described build script, at the end of the section &amp;quot;Preparing rc files&amp;quot;:&amp;lt;code&amp;gt;intltool-extract --quiet --type=gettext/ini PATH/MYPROGRAM.desktop.template&lt;br /&gt;
cat PATH/MYPROGRAM.desktop.template.h &amp;gt;&amp;gt; ${WDIR}/rc.cpp&lt;br /&gt;
rm PATH/MYPROGRAM.desktop.template.h&lt;br /&gt;
cd ${WDIR}&amp;lt;/code&amp;gt;intltool-extract will create a dummy C++ header (PATH/MYPROGRAM.desktop.template.h) with the strings whose key starts with &amp;quot;_&amp;quot;. We append the content of this header file into our &amp;quot;rc.cpp&amp;quot; and remove remove the file than. (We assume that &amp;quot;PATH&amp;quot; is the path to &amp;quot;MYPROGRAM.desktop.template&amp;quot;, relative to the working directory of the script.)&lt;br /&gt;
# Add &amp;quot;-kN_:1&amp;quot; as additional parameter to the xgettext call in the section &amp;quot;Extracting messages&amp;quot;. This is necessary because dummy code that intltool-extract produces uses &amp;quot;N_()&amp;quot; instead of &amp;quot;i18n()&amp;quot;.&lt;br /&gt;
# Add the following lines to the above described build script, at the end of the section &amp;quot;Merging translations&amp;quot;:&amp;lt;code&amp;gt;cd ${WDIR}&lt;br /&gt;
intltool-merge --quiet --desktop-style ${WDIR} PATH/MYPROGRAM.desktop.template PATH2/MYPROGRAM.desktop&amp;lt;/code&amp;gt;This will produce MYPROGRAM.desktop from MYPROGRAM.desktop.template, inserting all available translations in the .po files in the directory ${WDIR}. (We assume that &amp;quot;PATH&amp;quot; is the path to &amp;quot;MYPROGRAM.desktop.template&amp;quot;, relative to the working directory of the script. We assume that &amp;quot;PATH2&amp;quot; is the path to the final location of &amp;quot;MYPROGRAM.desktop&amp;quot;, relative to the working directory of the script.)&lt;br /&gt;
&lt;br /&gt;
{{note|Names of .po files):For intltool, it is ''required'' that the .po files have the name &amp;lt;languagecode&amp;gt;.po without other characters (NOT programname_&amp;lt;languagecode&amp;gt;.po). This is important because intltool-merge simply uses the .po file name (without &amp;quot;.po&amp;quot;) as language key in the .desktop file.}}&lt;br /&gt;
&lt;br /&gt;
== Special cases (plugins, multiple catalogs, etc.) ==&lt;br /&gt;
&lt;br /&gt;
=== Runtime Loading Of Catalogs ===&lt;br /&gt;
&lt;br /&gt;
To have translations show up properly in an application, the name of the .pot file must match the name of the message catalog (.mo) file that your application will read at runtime. But what name will be used at runtime?&lt;br /&gt;
&lt;br /&gt;
In general, it will be the value returned by &amp;lt;tt&amp;gt;{{class|KGlobal}}::instance()-&amp;gt;instanceName()&amp;lt;/tt&amp;gt;. But what will that be? The general rules for standalone applications are:&lt;br /&gt;
* the message catalog will default to the name of the application passed as the first argument to {{class|KAboutData}}&lt;br /&gt;
* if your code calls &amp;lt;tt&amp;gt;{{class|KLocale}}::setMainCatalog()&amp;lt;/tt&amp;gt;, that name will be used instead&lt;br /&gt;
* if your code calls &amp;lt;tt&amp;gt;{{class|KLocale}}::insertCatalog(const QString&amp;amp;)&amp;lt;/tt&amp;gt;, the specified catalog will also be searched in addition to the main catalog&lt;br /&gt;
&lt;br /&gt;
If your code does not call either of the {{class|KLocale}} methods mentioned above and your application is a plugin, it gets a little more complicated. If your code exports your plugin using the &amp;lt;tt&amp;gt;K_EXPORT_COMPONENT_FACTORY&amp;lt;/tt&amp;gt; macro, like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt&amp;gt;K_EXPORT_COMPONENT_FACTORY( libkhtmlkttsdplugin,&lt;br /&gt;
  KGenericFactory&amp;lt;KHTMLPluginKTTSD&amp;gt;(&amp;quot;khtmlkttsd&amp;quot;) )&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
then the catalog name will be the name passed in the {{class|KGenericFactory}} constructor - in the example above that woudl be &amp;lt;tt&amp;gt;khtmlkttsd&amp;lt;/tt&amp;gt;. This is because the macro creates a {{class|Kinstance}} for you with the specified name.&lt;br /&gt;
&lt;br /&gt;
However, some classes, such as &amp;lt;tt&amp;gt;KTextEditor&amp;lt;/tt&amp;gt; create a &amp;lt;tt&amp;gt;KPart&amp;lt;/tt&amp;gt; containing your component and the name passed in the macro is not used. In this case, you should call &amp;lt;tt&amp;gt;{{class|KLocale}}::insertCatalog(const QString&amp;amp;)&amp;lt;/tt&amp;gt; in the component's constructor.&lt;br /&gt;
&lt;br /&gt;
If in doubt, the safest thing to do is to call &amp;lt;tt&amp;gt;{{class|KLocale}}::insertCatalog(const QString&amp;amp;)&amp;lt;/tt&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
{{tip|If you're not using the export macro for your plugin, you probably should be. See the API documentation of KGenericFactory for more information.}}&lt;br /&gt;
&lt;br /&gt;
Calling &amp;lt;tt&amp;gt;{{class|KLocale}}::insertCatalog(const QString&amp;amp;)&amp;lt;/tt&amp;gt; if the catalog has already been inserted does nothing. However, calling &amp;lt;tt&amp;gt;{{class|KLocale}}::removeCatalog(const QString&amp;amp;)&amp;lt;/tt&amp;gt; removes the catalog no matter how many times it has been inserted. Therefore, take care that you do not inadvertently remove the catalog when multiple components are sharing a single catalog. For example, the following sequence will break translations: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code cppqt n&amp;gt;// Component A loads and uses catalog xyz by calling&lt;br /&gt;
insertCatalogue(&amp;quot;xyz&amp;quot;);&lt;br /&gt;
// Component B loads and also uses the same catalog.&lt;br /&gt;
insertCatalogue(&amp;quot;xyz&amp;quot;);&lt;br /&gt;
// component B unloads and calls&lt;br /&gt;
removeCatalogue(&amp;quot;xyz&amp;quot;)&lt;br /&gt;
// Component A now doesn't translate properly.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notice that a sequence such as above will occur automatically if both components A and B are loaded using the &amp;lt;tt&amp;gt;K_EXPORT_COMPONENT_FACTORY&amp;lt;/tt&amp;gt; macro and pass the same name argument to the KGenericFactory constructor.&lt;br /&gt;
&lt;br /&gt;
=== Naming .pot Files ===&lt;br /&gt;
&lt;br /&gt;
The name that you settle on for both the .pot file and catalog should be governed by where your code resides. If it is a component of another application and resides in that application's source tree, you'll want to share the main catalog of the application. &lt;br /&gt;
&lt;br /&gt;
If is a component of another application but resides elsewhere in the code repository, you will probably have to create a separate .pot, but keep in mind that .pot filenames must be unique across all of KDE.&lt;br /&gt;
&lt;br /&gt;
If it is a component of another application, but resides in the source tree of a second application, you should share with the second application. For example, the KDE text-to-speach daemon (KTTSD) includes a plugin for embedded Kate in {{path|kdeaccessibility/kttsd}} source tree. Since the plugin is not installed unless kttsd is installed, it shares its catalog with kttsd and calls &amp;lt;tt&amp;gt;{{class|KLocale}}::insertCatalog(&amp;quot;kttsd&amp;quot;)&amp;lt;/tt&amp;gt; to do this.&lt;br /&gt;
&lt;br /&gt;
== Handbooks ==&lt;br /&gt;
&lt;br /&gt;
Handbooks, which are written in docbook format, are handled different from applications. The translated Handbooks are committed into the l10n module in the docs folder under each language. In addition, the docs folder is broken down by module and application. For example, the German Kate Handbook is committed to the {{path|l10n/de/docs/kdebase/kate/}} folder. When compiled, the German Kate Handbook is installed to {{path|$KDEDIR/share/doc/HTML/de/kate/index.cache.bz2}}.&lt;br /&gt;
&lt;br /&gt;
Note that it is up to each translation team to generate the translated Handbook when they feel it is complete.&lt;br /&gt;
&lt;br /&gt;
[[Category:Programming]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDELibsModifications</id>
		<title>Projects/KDELibsModifications</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDELibsModifications"/>
				<updated>2010-10-31T18:45:45Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Add another relevant thread from last year&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== KDELibs Rearchitecture ==&lt;br /&gt;
&lt;br /&gt;
=== Background ===&lt;br /&gt;
&lt;br /&gt;
Several directions of Qt development and growth present opportunities to make technology created by the KDE community available to more platforms and to more developers of Qt based applications.&lt;br /&gt;
&lt;br /&gt;
* The advancement of Qt to more and more varied hardware&lt;br /&gt;
* The use of Qt as the basis of MeeGo&lt;br /&gt;
* The use of Qt as the basis of other platforms in the future&lt;br /&gt;
* The use of Qt as the basis of other computer workspaces and interfaces in the future (http://mdzlog.alcor.net/2010/10/20/ubuntu-and-qt/)&lt;br /&gt;
* The increased use of Qt in environments such as Industrial Embedded (the machines in your kitchen and house)&lt;br /&gt;
* The increased use of Qt in creating Free and NonFree applications on desktop and mobile environments&lt;br /&gt;
&lt;br /&gt;
This availability raises questions for Qt developers in those situations&lt;br /&gt;
&lt;br /&gt;
* What can I use to create a primary widget-based workspace interface for my device? The answer should be libplasma.&lt;br /&gt;
* How do I initialize some hardware or software asynchronously and report progress? The answer should be KJob.&lt;br /&gt;
* What can I use for asynchronous access to IMAP servers? The answer should be KIMAP and KJob.&lt;br /&gt;
* Are there classes available for advanced model-view, or rich text editing? Yes, in Kdeui/itemviews&lt;br /&gt;
&lt;br /&gt;
If GNOME ever switches to Qt, but wants to keep their own platformy bits like configuration format etc, where will they get Qt based libraries to create functionality for their Qt based platform?&lt;br /&gt;
&lt;br /&gt;
=== The problem ===&lt;br /&gt;
&lt;br /&gt;
One reason kde libraries are not currently the answer to the issues that Qt developers face is that 'platform parts' of kdelibs are introduced early instead of late in the module. For example the use of kdecore introduces requirements for things like KGlobal, KStandardDirs, KComponentData, KLocale, KConfig. While all useful for a workspace and application suite like KDE provides, none of those should be needed to use an asynchronous job API or itemviews library. Many for many Qt applications, QSettings and QObject::tr are sufficient because the application is deployed by the software vendor with specific hardware in a limited number of languages for example.&lt;br /&gt;
&lt;br /&gt;
The bundling of the functional libraries of kdelibs and the platform integration pieces of kdelibs makes encouraging the use by third parties of the libraries but not the platform (where the KDE platform is irrelevant) difficult, not least from a point of view of communicating it clearly.&lt;br /&gt;
&lt;br /&gt;
Discussion on k-c-d: &lt;br /&gt;
* http://thread.gmane.org/gmane.comp.kde.devel.core/67458&lt;br /&gt;
* http://thread.gmane.org/gmane.comp.kde.devel.core/59835&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== An option ===&lt;br /&gt;
&lt;br /&gt;
One way of making the functional libraries of KDElibs more easily available is to split the kdelibs module into two modules named KLibs and KPlatform here for clarity. KLibs would be a 3 tier module:&lt;br /&gt;
&lt;br /&gt;
==== Tier 0: Interfaces. ====&lt;br /&gt;
Some low level modules need access to platform specific data. For example, KLocale uses KStandardDirs to locate gettext translation catalogs. This makes KLocale dependent on the KDE platformy bits. An alternative design is to introduce an interface to get the paths, and implement it trivially on the Qt level, and with KDE integration at the platform level.&lt;br /&gt;
&lt;br /&gt;
The interfaces tier would contain all the interfaces needed (probably few) to access platform specific 'simple types' like strings, urls etc.&lt;br /&gt;
&lt;br /&gt;
It is possible that very pervasive classes in the current KDE4 would need to be in this tier (such as KDateTime), but that would be highly undesirable.&lt;br /&gt;
&lt;br /&gt;
==== Tier 1: Independent libraries ====&lt;br /&gt;
&lt;br /&gt;
Libraries such as KJob, KLocale (in theory at least), KItemViews, KConfig etc which can (be made to) exist standalone and depend only whatever dependencies give them their functionality (eg gettext) belong in Tier 1. Tier 1 libraries can not depend on each other, but can use the Tier 0 interfaces. The Tier 1 module is not QtCore only, but individual libraries might be.&lt;br /&gt;
&lt;br /&gt;
==== Tier 2: Dependent libraries ====&lt;br /&gt;
&lt;br /&gt;
Libraries such as KIMAP, KMIME, KMBox, libakonadi-kde can have hard dependencies on Tier 1 libraries (such as KJob) and on other Tier 2 libraries (KIMAP can use KMIME). Dependencies on platformy libraries from Tier 1 such as KConfig should be discouraged where using Tier 0 interfaces produces the same effect.&lt;br /&gt;
&lt;br /&gt;
==== Platforms ====&lt;br /&gt;
&lt;br /&gt;
KPlatform depends on many but not all of the libraries in the Tiers of KLibs. It implements the interfaces from Tier 0 in terms of the platformy stuff, KConfig, KStandardDirs, KStandardAction etc and contains classes like KComponentData, which all 'applications from the KDE community' use.&lt;br /&gt;
&lt;br /&gt;
Pieces like KDED, KLauncher, KDEinit, KSyCoCa etc are also here.&lt;br /&gt;
&lt;br /&gt;
It should be possible for an integrator similar to MeeGo which defines their own configuration system etc and implement the interfaces to create their own coherent platform and use the functional libraries.&lt;br /&gt;
&lt;br /&gt;
=== Definitions ===&lt;br /&gt;
&lt;br /&gt;
With increasing modularity of kde libraries, we can more easily communicate what the benefits are and what is available. Today, kdelibs could be described as 'A platform and set of integrated libraries to support the development of applications written by the KDE community'.&lt;br /&gt;
&lt;br /&gt;
A more modular architecture could be described as 'KLibs, a set of Free Software functional libraries for Qt based applications' and 'KPlatform, an integrated set of libraries for applications written by the KDE community'. &lt;br /&gt;
&lt;br /&gt;
=== Tasks ===&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Object&lt;br /&gt;
! Change description&lt;br /&gt;
! Responsible &lt;br /&gt;
{{FeatureTodo|kdelibs|Split platformy code from functional libraries||}}&lt;br /&gt;
{{FeatureTodo|kdelibs|Merge kdesupport(which is all functional libraries) into kdelibs||}}&lt;br /&gt;
{{FeatureTodo|kdelibs|Remove K-Classes where Q-Classes are available and sufficient||}}&lt;br /&gt;
{{FeatureTodo|kdelibs|Consider refactoring K-Classes where Q-Classes are available but insufficient. Rather than subclasses and wrappers (which other libraries must use, increasing interdependence), it may be possible to redesign to use Builder pattern in some cases. Eg http://api.kde.org/4.x-api/kdelibs-apidocs/kdeui/html/classKRichTextEdit.html does not really need to be a subclass of QTextEdit.||}}&lt;br /&gt;
{{FeatureTodo|kdelibs|Consider splitting kdecore and kdeui into smaller non-platformy libraries. Additional library loading may be detrimental on some platforms.||}}&lt;br /&gt;
{{FeatureTodo|kdelibs|Consider contributing to Qt parts of kdelibs that are eligable and would be better to have there.||}}&lt;br /&gt;
{{FeatureTodo|kdepimlibs|Merge kdepimlibs non-platformy bits into kdelibs. Be more explicit about dependencies. Eg, KIMAP and libakonadi do not depend on all of kdecore, but mostly just kjob.||}}&lt;br /&gt;
{{FeatureTodo|kdepimlibs|Turn the remaining bits of kdepimlibs into pim platformy stuff only (depending on the kde platformy stuff)||}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KDELibsModifications</id>
		<title>Projects/KDELibsModifications</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KDELibsModifications"/>
				<updated>2010-10-30T01:36:48Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Add page about more modularization in libraries&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== KDELibs Rearchitecture ==&lt;br /&gt;
&lt;br /&gt;
=== Background ===&lt;br /&gt;
&lt;br /&gt;
Several directions of Qt development and growth present opportunities to make technology created by the KDE community available to more platforms and to more developers of Qt based applications.&lt;br /&gt;
&lt;br /&gt;
* The advancement of Qt to more and more varied hardware&lt;br /&gt;
* The use of Qt as the basis of MeeGo&lt;br /&gt;
* The use of Qt as the basis of other platforms in the future&lt;br /&gt;
* The use of Qt as the basis of other computer workspaces and interfaces in the future (http://mdzlog.alcor.net/2010/10/20/ubuntu-and-qt/)&lt;br /&gt;
* The increased use of Qt in environments such as Industrial Embedded (the machines in your kitchen and house)&lt;br /&gt;
* The increased use of Qt in creating Free and NonFree applications on desktop and mobile environments&lt;br /&gt;
&lt;br /&gt;
This availability raises questions for Qt developers in those situations&lt;br /&gt;
&lt;br /&gt;
* What can I use to create a primary widget-based workspace interface for my device? The answer should be libplasma.&lt;br /&gt;
* How do I initialize some hardware or software asynchronously and report progress? The answer should be KJob.&lt;br /&gt;
* What can I use for asynchronous access to IMAP servers? The answer should be KIMAP and KJob.&lt;br /&gt;
* Are there classes available for advanced model-view, or rich text editing? Yes, in Kdeui/itemviews&lt;br /&gt;
&lt;br /&gt;
If GNOME ever switches to Qt, but wants to keep their own platformy bits like configuration format etc, where will they get Qt based libraries to create functionality for their Qt based platform?&lt;br /&gt;
&lt;br /&gt;
=== The problem ===&lt;br /&gt;
&lt;br /&gt;
One reason kde libraries are not currently the answer to the issues that Qt developers face is that 'platform parts' of kdelibs are introduced early instead of late in the module. For example the use of kdecore introduces requirements for things like KGlobal, KStandardDirs, KComponentData, KLocale, KConfig. While all useful for a workspace and application suite like KDE provides, none of those should be needed to use an asynchronous job API or itemviews library. Many for many Qt applications, QSettings and QObject::tr are sufficient because the application is deployed by the software vendor with specific hardware in a limited number of languages for example.&lt;br /&gt;
&lt;br /&gt;
The bundling of the functional libraries of kdelibs and the platform integration pieces of kdelibs makes encouraging the use by third parties of the libraries but not the platform (where the KDE platform is irrelevant) difficult, not least from a point of view of communicating it clearly.&lt;br /&gt;
&lt;br /&gt;
Discussion on k-c-d: http://thread.gmane.org/gmane.comp.kde.devel.core/67458&lt;br /&gt;
&lt;br /&gt;
=== An option ===&lt;br /&gt;
&lt;br /&gt;
One way of making the functional libraries of KDElibs more easily available is to split the kdelibs module into two modules named KLibs and KPlatform here for clarity. KLibs would be a 3 tier module:&lt;br /&gt;
&lt;br /&gt;
==== Tier 0: Interfaces. ====&lt;br /&gt;
Some low level modules need access to platform specific data. For example, KLocale uses KStandardDirs to locate gettext translation catalogs. This makes KLocale dependent on the KDE platformy bits. An alternative design is to introduce an interface to get the paths, and implement it trivially on the Qt level, and with KDE integration at the platform level.&lt;br /&gt;
&lt;br /&gt;
The interfaces tier would contain all the interfaces needed (probably few) to access platform specific 'simple types' like strings, urls etc.&lt;br /&gt;
&lt;br /&gt;
It is possible that very pervasive classes in the current KDE4 would need to be in this tier (such as KDateTime), but that would be highly undesirable.&lt;br /&gt;
&lt;br /&gt;
==== Tier 1: Independent libraries ====&lt;br /&gt;
&lt;br /&gt;
Libraries such as KJob, KLocale (in theory at least), KItemViews, KConfig etc which can (be made to) exist standalone and depend only whatever dependencies give them their functionality (eg gettext) belong in Tier 1. Tier 1 libraries can not depend on each other, but can use the Tier 0 interfaces. The Tier 1 module is not QtCore only, but individual libraries might be.&lt;br /&gt;
&lt;br /&gt;
==== Tier 2: Dependent libraries ====&lt;br /&gt;
&lt;br /&gt;
Libraries such as KIMAP, KMIME, KMBox, libakonadi-kde can have hard dependencies on Tier 1 libraries (such as KJob) and on other Tier 2 libraries (KIMAP can use KMIME). Dependencies on platformy libraries from Tier 1 such as KConfig should be discouraged where using Tier 0 interfaces produces the same effect.&lt;br /&gt;
&lt;br /&gt;
==== Platforms ====&lt;br /&gt;
&lt;br /&gt;
KPlatform depends on many but not all of the libraries in the Tiers of KLibs. It implements the interfaces from Tier 0 in terms of the platformy stuff, KConfig, KStandardDirs, KStandardAction etc and contains classes like KComponentData, which all 'applications from the KDE community' use.&lt;br /&gt;
&lt;br /&gt;
Pieces like KDED, KLauncher, KDEinit, KSyCoCa etc are also here.&lt;br /&gt;
&lt;br /&gt;
It should be possible for an integrator similar to MeeGo which defines their own configuration system etc and implement the interfaces to create their own coherent platform and use the functional libraries.&lt;br /&gt;
&lt;br /&gt;
=== Definitions ===&lt;br /&gt;
&lt;br /&gt;
With increasing modularity of kde libraries, we can more easily communicate what the benefits are and what is available. Today, kdelibs could be described as 'A platform and set of integrated libraries to support the development of applications written by the KDE community'.&lt;br /&gt;
&lt;br /&gt;
A more modular architecture could be described as 'KLibs, a set of Free Software functional libraries for Qt based applications' and 'KPlatform, an integrated set of libraries for applications written by the KDE community'. &lt;br /&gt;
&lt;br /&gt;
=== Tasks ===&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; class=&amp;quot;sortable&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Object&lt;br /&gt;
! Change description&lt;br /&gt;
! Responsible &lt;br /&gt;
{{FeatureTodo|kdelibs|Split platformy code from functional libraries||}}&lt;br /&gt;
{{FeatureTodo|kdelibs|Merge kdesupport(which is all functional libraries) into kdelibs||}}&lt;br /&gt;
{{FeatureTodo|kdelibs|Remove K-Classes where Q-Classes are available and sufficient||}}&lt;br /&gt;
{{FeatureTodo|kdelibs|Consider refactoring K-Classes where Q-Classes are available but insufficient. Rather than subclasses and wrappers (which other libraries must use, increasing interdependence), it may be possible to redesign to use Builder pattern in some cases. Eg http://api.kde.org/4.x-api/kdelibs-apidocs/kdeui/html/classKRichTextEdit.html does not really need to be a subclass of QTextEdit.||}}&lt;br /&gt;
{{FeatureTodo|kdelibs|Consider splitting kdecore and kdeui into smaller non-platformy libraries. Additional library loading may be detrimental on some platforms.||}}&lt;br /&gt;
{{FeatureTodo|kdelibs|Consider contributing to Qt parts of kdelibs that are eligable and would be better to have there.||}}&lt;br /&gt;
{{FeatureTodo|kdepimlibs|Merge kdepimlibs non-platformy bits into kdelibs. Be more explicit about dependencies. Eg, KIMAP and libakonadi do not depend on all of kdecore, but mostly just kjob.||}}&lt;br /&gt;
{{FeatureTodo|kdepimlibs|Turn the remaining bits of kdepimlibs into pim platformy stuff only (depending on the kde platformy stuff)||}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.5_Feature_Plan</id>
		<title>Schedules/KDE4/4.5 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.5_Feature_Plan"/>
				<updated>2010-05-03T09:15:11Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* kdelibs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the SC 4.5 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.5 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.5 Release Goals]] &lt;br /&gt;
*[[Schedules/KDE4/4.4 Feature Plan]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Legend: &lt;br /&gt;
&lt;br /&gt;
*todo =&amp;amp;gt; not started yet &lt;br /&gt;
*in-progress =&amp;amp;gt; started, but not completed yet &lt;br /&gt;
*done =&amp;amp;gt; completed&lt;br /&gt;
&lt;br /&gt;
__TOC__ &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeadmin  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|system-config-printer-kde|Restore feature parity with KDEPrint3 where possible.||Jonathan Riddell, John Layt}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeartwork  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Konqueror|Improvements in session-management|edulix@gmail.com|Eduardo Robles Elvira}} &lt;br /&gt;
{{FeatureTodo|Konqueror|Improvements in tab-bar widget|edulix@gmail.com|Eduardo Robles Elvira}} &lt;br /&gt;
{{FeatureInProgress|Konqueror|New Konqueror bookmarks using Akonadi and Nepomuk, awesome bar|edulix@gmail.com|Eduardo Robles Elvira}} &lt;br /&gt;
{{FeatureInProgress|nspluginviewer|npruntime scripting support|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureTodo|Konqueror|Add speeddial/thumbnails-like start page|germain@ebooksfrance.org|Germain Garand}} &lt;br /&gt;
{{FeatureDone|Konsole|Finish implementing tab context menu|kurt.hindenburg@gmail.com|Kurt Hindenburg}}&lt;br /&gt;
{{FeatureDone|Konsole|Allow setting tab profile from file on command-line|kurt.hindenburg@gmail.com|Kurt Hindenburg}}&lt;br /&gt;
{{FeatureInProgress|Konsole|Adds support for SHELL_SESSION_ID|kurt.hindenburg@gmail.com|Kurt Hindenburg}}&lt;br /&gt;
{{FeatureInProgress|Konsole|Modernize menu layout|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|Konsole|Move to KTabWidget|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|print-manager|New Print manager KCM and applet replacement, using C++|dantti85-pk@yahoo.com.br|Daniel Nicoletti}} &lt;br /&gt;
{{FeatureDone|Dolphin|Drag and drop on tabs|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|Dolphin|Make view sub-menus available as toolbar buttons|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|Dolphin|Smooth scrolling|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Dolphin|Faceted browsing|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureTodo|Dolphin|Make use of additional columns in KDirModel/KFileItemDelegate|frank78@googlemail.com|Frank Reininghaus}} &lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KWallet|Single Sign On using PAM|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Backend for LISa|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Backend for SMB|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Integrate with remote and zeroconf kioslaves|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|Locale KCM|Add support for new KLocale and KCalendarSystem features (see kdelibs section) including Digit Groups, AM/PM, etc.  Improvements to usability of existing money display options.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureInProgress|network kioslave|Backend for UPnP|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave| Backend to discover bluetooth devices and they services |edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureInProgress|bluetooth kioslave|Backend to browse bluetooth devices|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureDone|Nepomuk|Monitor file system changes via inotify|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureTodo|KNotify|Route solid errors via knotify to the device notifier|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Non-Plasma, Non-KWin &lt;br /&gt;
{{FeatureTodo|Icons KCM|More configurable icon sizes|christoph@maxiom.de|Christoph Feck}} &lt;br /&gt;
{{FeatureTodo|Fonts KCM|More configurable fonts|christoph@maxiom.de|Christoph Feck}} &lt;br /&gt;
{{FeatureTodo|BlueDevil Wizard |Write a new Wizard to pair Bluetooth devices |alex@eyeos.org|Alex Fiestas}} &lt;br /&gt;
{{FeatureTodo|Bluetooth KCM|New KCM to manage all bluetooth configurations and devices|ereslibre@kde.org|Rafael Fernandez}}&lt;br /&gt;
{{FeatureTodo|Screenedges|Screenedges handling outside of kwin/plasma|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|Oxygen style|Move window using left-mouse button on windows' empty areas|hugo@oxygen-icons.org|Hugo Pereira Da Costa}}&lt;br /&gt;
{{FeatureInProgress|Oxygen configuration|Oxygen style and decoration standalone expert configuration tool|hugo@oxygen-icons.org|Hugo Pereira Da Costa}}&lt;br /&gt;
{{FeatureInProgress|Free Space Notifier Daemon|Small daemon that warns you when your home has almost no space left|knuckles@gmail.com|Ivo Anjo}}&lt;br /&gt;
{{FeatureInProgress|Activities Daemons|Daemons to handle info about activities (kded daemon and a nepomuk service)|ivan.cukic@kde.org|Ivan Cukic}}&lt;br /&gt;
{{FeatureInProgress|Systemsettings|driconf KCM|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|PowerDevil|Display brightness OSD|debfx-kde@fobos.de|Felix Geyer}}&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Plasma &lt;br /&gt;
{{FeatureInProgress|systemtray/taskmanager|port the systray and tasks applet to windows|windows@kde.org|kde windows}}&lt;br /&gt;
{{FeatureInProgress|systemtray|monochrome statusnotifier based systray icons support|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|systemtray|sort icons by category|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|systemtray|put hidden icons in a popup menu|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|tasks dataengine|export all informations needed to build an applet comparable to the current one|matthieu_gallien@yahoo.fr|Matthieu Gallien}}&lt;br /&gt;
{{FeatureDone|notifications|split systemtray and notifications applet|notmart@gmail.com|Marco Martin}}  &lt;br /&gt;
{{FeatureInProgress|notifications|new look and behaviour for notifications|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|notifications|support for remote applets for notifications|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|netbook/SAL|use QStandardModels|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|netbook/SAL|support for drag and drop of items|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|netbook/SAL|package manager invocation from the toolbox|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|netbook/Workspace KCM|New default options for KWin: tabbox as present windows, that will be set as regular grid|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|libplasma/extenders|put extendergroups in scrollwidgets|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|libplasma/extenders|possibility to detach exteneritems as standalone windows|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|libplasma/theme|more transparent dialogs when the blur effect is enabled|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|libplasma/desktop|Activity Manager UI|chani@kde.org|Chani}}&lt;br /&gt;
{{FeatureTodo|accounts applet|a plasma widget that is a central place to add accounts to social sites like identica and opendesktop, optimized for the netbook shell|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|libplasma|Improvements to Calendar/Clock widgets. Improved config ui. Allow multiple holidays on same day. Allow multiple Holiday Regions. Weekends. etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|folderview|&amp;quot;Open folder&amp;quot; icon to open folder into pop-up at request instead of automatically.|bigras.bruno@gmail.com|Bruno Bigras}}&lt;br /&gt;
{{FeatureTodo|folderview|Extend the configuration UI for nepomuksearch|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Extend Calendar DataEngine with Akonadi calendar incidents|Allows to query calendar events/todos from Akonadi in Plasma|gladhornKDEorg|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureDone|calculator|Added optional libqalculate support in the calculator runner|agostinelli@gmail.com|Matteo Agostinelli}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Add some advanced sorting to KRunner using Nepomuk|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KRunner|Improve keyboard navigation &amp;amp; command history interaction|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureInProgress|device-notifier|Route all solid error notifications via knotify to the device notifier|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureInProgress|device-notifier|Detailed (HAL) error notifications in the device notifier|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureInProgress|Plasma::Theme|Themed CSS support|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureTodo|battery|Weighted charge information for multiple batteries|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureTodo|Plasma|Welcome plasmoid|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|crystal|New desktop search widget|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|networkmanagement|Network management Plasmoid|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|quicklaunch|Improvements from Ingomar Wesp|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KWin&lt;br /&gt;
{{FeatureTodo|Tiling|Merge window tiling branch|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin|New flag to exclude windows from switchers|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KCM Decoration|New decoration kcm with previews and GHNS|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Aurorae|Port Aurorae to GraphicsView and KDecoration|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|Aurorae|Better themeing support|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Aurorae|Window tabbing support|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Aurorae|Decorations on window sides|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Aurorae|Autohiding decoration for maximized windows|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|kwin|hide windows from other activities|chani@kde.org|Chani}}&lt;br /&gt;
{{FeatureTodo|Effects|Move features from present windows to libkwineffects to make them available in desktop grid|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Effects|Add close window button to each window in present windows/desktop grid|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Window Tabbing/libtaskmanager|Announce window groups to be used for grouping in tasks applet|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin/plasma|New window type for Plasma dashboard|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Effects|New blur effect|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Effects|High quality scaling shader for the taskbar thumbnails|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureTodo|KWin|Hint for defining the window snap rect|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Effects|Glide effect for opening and closing windows|iori.yagami.26979@gmail.com|Iori Yagami}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeedu  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Information links in-place for each technical term|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Simulate Lunar Eclipses|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Simulate Satellites and Iridium Flares|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Social and Geographical Integration for KStars|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}} &lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}} &lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}} &lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}} &lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium to use QGV based periodic table widget|mhanwell@kde.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureTodo|Marble|Add proper support for GPX waypoints, tracks and routes display|anders@alweb.dk|Anders Lund}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureDone|Marble|Support OpenStreetMap Nominatim as search backend (MarbleRunner)|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Generalized Animations with GeoDataLookAt support|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Marble|Online-Routing|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|GPS improvements|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|Maemo Support|earthwings@gentoo.org|Bastian Holst, Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|GeoGraphicsScene for Online Service Plugins|bastianholst@gmx.de|Bastian Holst}}&lt;br /&gt;
{{FeatureInProgress|Marble|Follow XDG Base Directory Specification|bastianholst@gmx.de|Bastian Holst}}&lt;br /&gt;
{{FeatureDone|Marble|Download region|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Implement sun locator blendings as derived classes of Marble::Blending|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Configurable texture layer blending|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Import geonames city data|sonu.itbhu@gmail.com|Harshit Jain}}&lt;br /&gt;
{{FeatureInProgress|Marble|Add new icons for online services|gabrieljoel@gmail.com|Gabriel Joel Perez}}&lt;br /&gt;
{{FeatureInProgress|Marble|Download Progressbar in Qt-only version|akssps011@gmail.com|Siddharth Srivastava}}&lt;br /&gt;
{{FeatureInProgress|Marble|Bookmark support|anik.varshney@gmail.com|Kumar Anik Varshney}}&lt;br /&gt;
{{FeatureInProgress|Marble|Various Marble speed improvements|rahn@kde.org|Torsten Rahn, Ariya Hidayat}}&lt;br /&gt;
{{FeatureInProgress|Marble|Plugin to display APRS data|hardaker@users.sourceforge.net|Wes Hardaker}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Type checker for expressions to statically detect errors|aleixpol@kde.org|Aleix Pol}}&lt;br /&gt;
{{FeatureInProgress|KAlgebra|Support for drawing implicit curves|percy.camilo.ta@gmail.com|Percy Camilo Triveño Aucahuasi}}&lt;br /&gt;
{{FeatureInProgress|Parley|Parley practice mode rewritten|gladhornKDEorg|Daniel Laidig, Frederik Gladhorn}}&lt;br /&gt;
{{FeatureTodo|Parley|LaTeX support|laidig_kde.org|Daniel Laidig}}&lt;br /&gt;
{{FeatureTodo|Parley|Better support for entering synonyms|laidig_kde.org|Benjamin Schleinzer, Daniel Laidig}}&lt;br /&gt;
{{FeatureTodo|Cantor|import and polish Qalculate! backend|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureInProgress|KTurtle|Implement GHNS download support|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Implement GHNS upload support|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
{{FeatureDone|Rocs|Node beautification in SVG|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Threads for not blocking the UI|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Redesigned the UI for better usability|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Plugin System|wiglot@gmail.com|Wagner Reck}}&lt;br /&gt;
{{FeatureDone|Rocs|Small plugins as examples|wiglot@gmail.com|Wagner Reck}}&lt;br /&gt;
{{FeatureDone|Rocs|Multiple Script support|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdegames  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
{{FeatureTodo|Granatier|Arena Editor|k.hias@gmx.de|Mathias Kraus}}&lt;br /&gt;
{{FeatureInProgress|Kajongg|New traditional Mahjongg for four players|wolfgang@rohdewald.de|Wolfang Rohdewald}}&lt;br /&gt;
{{FeatureTodo|Kajongg|Default voices for computer players|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureTodo|Kajongg|Make playing against computer suspendable/resumable|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|KBounce|Difficulty levels|ascherfy@gmail.com|Andreas Scherf}}&lt;br /&gt;
{{FeatureDone|KBounce|Random images as background|ascherfy@gmail.com|Andreas Scherf}}&lt;br /&gt;
{{FeatureTodo|KBreakOut|Level Sets|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureTodo|KBreakOut|Sound|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureTodo|KGoldrunner|Add the Demolition game (20 levels)|iandw.au@gmail.com|Ian Wadham}}&lt;br /&gt;
{{FeatureDone|Kigo|Load SGF games from command line and register to mimetype 'application/x-go-sgf'|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|Kigo|Fix KNewStuff provider issues|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|Kiriki|Hint|luizromario@gmail.com|Luiz Romário Santana Rios}}&lt;br /&gt;
{{FeatureTodo|Kolf|Replace with Kolf 2 (help on coding and artwork desired)|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|Konquest|Merge the patch by Sean D'Epagnier to implement many features like map editing|pinaraf@pinaraf.info|Pierre Ducroquet}}&lt;br /&gt;
{{FeatureInProgress|KPat|Add keyboard controls to allow playing without a mouse.|parker.coates@kdemail.net|Parker Coates}}&lt;br /&gt;
{{FeatureInProgress|KPat|Create a new LibKCardGame from KPat's card scene logic. Make it generic and friendly enough for use in other card games. Make the library public if sufficient quality has been reached before SC4.5 release.|parker.coates@kdemail.net|Parker Coates}}&lt;br /&gt;
{{FeatureTodo|KPat|Add support for drop shadows, via support in LibKCardGame.|parker.coates@kdemail.net|Parker Coates}}&lt;br /&gt;
{{FeatureTodo|KsirK|rewrite AI code or at least correct most problems related in bug #170777. Volunteers wanted!|kleag@free.fr|Gaël de Chalendar}} &lt;br /&gt;
{{FeatureTodo|KsirK|Boost playing over Jabber|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|KSquares|Re-write computer player, make it act faster and more intelligent|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|KSquares|Add more types of boards: hexagonal, triangular|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Import new engine|joselb@gmx.net|Johannes Bergmeier}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Port game to new engine|joselb@gmx.net|Johannes Bergmeier}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Adapt view to show information provided by engine|joselb@gmx.net|Johannes Bergmeier}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Add new actions to GUI|joselb@gmx.net|Johannes Bergmeier}}&lt;br /&gt;
{{FeatureInProgress|KTuberling|A new &amp;quot;fast switch&amp;quot; between playgrounds|alex@eyeos.org|Alex Fiestas}}&lt;br /&gt;
{{FeatureTodo|LSkat|Port display and interaction code to LibKCardGame. Depends on LibKCardGame being made a public library.|parker.coates@kdemail.net|Parker Coates}}&lt;br /&gt;
{{FeatureDone|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}233784 Optimize size of puzzle files in default collection] (temporarily fixed for this release cycle with an awful hack)|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}211859 Recieve new puzzles over KNewStuff]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}211861 Introduce handicap as a means to configure difficulty]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}211866 Implement puzzle piles to organize pieces]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}212814 Quick piece grouping]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}213774 Add magnifying glass]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureDone|Palapeli|Rewrite puzzle table mouse interaction stack|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|Palapeli|Cleanup config dialog code|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdegraphics  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|libkdcraw|Make color management options more flexible|marcel.wiesweg@gmx.de|Marcel Wiesweg}} &lt;br /&gt;
{{FeatureDone|libksane|Improve auto-selection|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} &lt;br /&gt;
{{FeatureInProgress|libksane|Highlight scanned area|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} &lt;br /&gt;
{{FeatureTodo|libksane|Add public API for available devices|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} &lt;br /&gt;
{{FeatureTodo|gwenview|Show Nepomuk info in image meta info|agateau@kde.org|Aurelien Gateau}} &lt;br /&gt;
{{FeatureTodo|gwenview|Persistent changes|agateau@kde.org|Aurelien Gateau}}&lt;br /&gt;
{{FeatureTodo|okular|Thumb creators via Okular Core|harsh@harshj.com|Harsh J}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdelibs  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|katepart|Add visual block mode and make the basic commands support it|ehambergαgmail.com|Erlend Hamberg}}&lt;br /&gt;
{{FeatureTodo|katepart|context dependent indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|scripting configuration, esp. for indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|list of available scripts and indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|GHNS for scripts/indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|easier writing of indenters, esp. by automatically reloading them when changed|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|extend list of available default styles for highlighting, remove hardcoded colors from existing XML files|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|improve AutoBrace plugin|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureInProgress|katepart/ktexteditor|defaultvalues, regular expressions, mirroring master, scripting of templates|jowenn(you_know)kde(here_too)org|Joseph Wenninger}}&lt;br /&gt;
{{FeatureInProgress|ktexteditor plugin|InsaneHTML_LE (zencoding like selector input (light edition)|jowenn(you_know)kde(here_too)org|Joseph Wenninger}}&lt;br /&gt;
{{FeatureTodo|katepart|replace smart cursor/ranges API|cullmann@kde.org|Christoph Cullmann}}&lt;br /&gt;
{{FeatureTodo|kdeui|API to integrate KStatusNotifierItem and KNotification: both as class api and DBus specification API|davide.bettio@kdemail.net|Davide Bettio}}&lt;br /&gt;
{{FeatureDone|KCalendarSystem|Add support for Date Difference calculations.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureInProgress|KCalendarSystem|Add support for era based calendar systems.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureInProgress|KCalendarSystem|Add support for Unicode format strings for Qt and cross-platform compatability.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalendarSystem|Add new astronomical calculation support classes to be used in kdelibs to build new astronomically based calendar systems, and in kdepim to build new version of libkholiday.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KCalendarSystem|Add new calendar systems: Bahaii, Chinese, Japanese Era, Buddhist, Thai, etc.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalendarSystem|Add support for traditional/USA week numbering.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|kdecore|Group policy (Windows) backend for KAuth|drf@kde.org|Dario Freddi}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdeui|Implement caps-lock warning for password entry widgets|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for number grouping other than thousands using LC_NUMERIC and LC_MONETARY formats, e.g. India 00 00 000 and China 0000 0000.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add configuration for AM/PM symbols.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Full POSIX compliant format support for date, time, numbers and money.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement more 'named' date/time formats, e.g. ISO, UnixTimestamp, RFC3339, etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add Full date format in addition to existing short and long.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add default colour to optionally display negative numbers.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement separate backends for each supported platform/desktop to use platform localisation in place of KDE locale.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for additional Country Code standards: ISO Alpha 3, ISO Numeric 3, FIPS-10.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for Country Code sub-regions, i.e. States/Provinces/etc. Needed for new KHolidays.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdeui|Improvements to KDatePicker/KDateTable for feature parity with Plasma Calendar widget, i.e. holiday support, select calendar system, etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdeui|DBus interface in StatusNotifierItem to connect it with freedesktop notifications instances|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|khtml|Improvements in kwallet integration|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureInProgress|khtml|Basic audio/video tag support|germain@ebooksfrance.org|Michael Howell and Germain Garand}} &lt;br /&gt;
{{FeatureInProgress|khtml|DOM3 XPath/XPath1 support|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureDone|khtml|Selectors API1|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureTodo|khtml and kparts|More general KPart scripting interfaces|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureTodo|khtml|Implement more of DOM3's CSSOM View module|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureInProgress|khtml|Implement missing parts of DOM3's Background and Borders module|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureTodo|khtml|add new form widgets defined in HTML5 draft|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureDone|KNewStuff|Improved Download Dialog, multiple previews, better integration of details, changelog is displayed|gladhornKDEorg|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|KNewStuff|Icon view mode|gladhornKDEorg|Reza Shah, Frederik Gladhorn}}&lt;br /&gt;
{{FeatureDone|KNewStuff|Upload dialog rewritten: It now supports updating of old uploads, previews, most data that can be entered on the website and allows direct login to the account|gladhornKDEorg|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureTodo|KNewStuff|Support more than one payload|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureTodo|kdeui|Social About Dialog|teo@kde.org|Téo Mrnjavac}}&lt;br /&gt;
{{FeatureTodo|kdeui|Generic find bar widget|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureTodo|kio|SSL client certificate support|ahartmetz@gmail.com|Andreas Hartmetz}}&lt;br /&gt;
{{FeatureTodo|kio|SSL root certificate list GUI + backend|ahartmetz@gmail.com|Andreas Hartmetz}}&lt;br /&gt;
{{FeatureDone|kio|Add &amp;quot;apply to all&amp;quot; checkbox in renamedialog and allow for automatic renaming|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|kio|Port renamedialog to KFileMetaDataWidget|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kio|Don't select extension in renamedialog|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kio|Better listing of applications in file &amp;quot;open with&amp;quot; context menu|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kio|Context menu entry to open all files in their default applications|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureTodo|kio|Add support for additional columns (e.g., smybolic link destination) in KDirModel/KFileItemDelegate|frank78ac@googlemail.com|Frank Reininghaus}}&lt;br /&gt;
{{FeatureDone|kfile|Scroll wheel support for breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kfile|Show all sub-folders in breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|kfile|Middle-click on subfolder in the breadcrumb bar to open in a new tab|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|kfile|Easier access to protocols in breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureTodo|kfile|Show sub-sub-folders (and so on) in breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|kdecore|Generic shared-memory cache|mpyne@kde.org|Michael Pyne}}&lt;br /&gt;
{{FeatureInProgress|kdeui|Redesigned icon cache|mpyne@kde.org|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|kdeui|Support alpha channel in KColor classes|christoph@maxiom.de|Christoph Feck}}&lt;br /&gt;
{{FeatureDone|nepomuk|Redesigned Nepomuk::TagWidget which can now actually be used by applications|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureInProgress|kio|Remember downloads via Nepomuk|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureDone|solid|Broadcast mount/unmount messages across processes|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureTodo|solid|Add parent matching to predicate parsing|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureDone|kdeui|Add the KRecursiveFilterProxyModel to kdeui/itemviews|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|Video Thumbnailer|Add ffmpegthumbnailer for faster video thumbnailing|ascherfy@gmail.com|Andreas Scherf}}&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements -- will move to KDE 4.5 feature plan|mpyne@kde.org|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however -- will move to KDE 4.5 feature plan|mpyne.org|Michael Pyne}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdenetwork  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}} &lt;br /&gt;
{{FeatureTodo|Kopete|Jabber Jingle video support|detlev.casanova@gmail.com|Detlev Casanova}} &lt;br /&gt;
{{FeatureTodo|Kopete|Jabber Jingle ICE support|detlev.casanova@gmail.com|Detlev Casanova}} &lt;br /&gt;
{{FeatureTodo|Kopete|Add support for urls to Bonjour plugin|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureTodo|Kopete|Rich text support for ICQ|kedgedev@gmail.com|Roman Jarosz}} &lt;br /&gt;
{{FeatureDone|Kopete|Extended video controls|fschaefer.oss(at)googlemail.com|Frank Schaefer}} &lt;br /&gt;
{{FeatureTodo|Kopete|Akonadi History Plugin|roideuniverse@gmail.com|Kaushik Saurabh}} &lt;br /&gt;
{{FeatureTodo|Krdc|Connection status screen and reconnect|murraytony@gmail.com|Tony Murray}}&lt;br /&gt;
{{FeatureDone|Krdc|Much improved new connection screen: more info, sortable, interactive, and better use of space|murraytony@gmail.com|Tony Murray}}&lt;br /&gt;
{{FeatureInProgress|KGet|Use plasma notifications to show the progress|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|KGet|Refaktor Torrent-Plugin to base on the newly created libktorrent from extragear|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Better error handling|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdepim  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KAlarm|Port to Akonadi|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|KMail|Port to Akonadi|kde-pim@kde.org|Thomas McGuire}}&lt;br /&gt;
{{FeatureInProgress|KOrganizer|Port to Akonadi|kde-pim@kde.org|Frank Osterfeld, Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KJots|Port to Akonadi|kde-pim@kde.org|Stephen Kelly}}&lt;br /&gt;
{{FeatureInProgress|KHolidays|Add support for alternative calendar systems, advanced holiday calculations, and improved API.|john@layt.net|John Layt}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|knowledgebase|port knowledgebase plasmoid to new engine|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|knowledgebase|Add categories|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureDone|Bookmarks widget|New|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureDone|Mandelbrot Wallpaper|Performance improvements|jacob.benoit.1@gmail.com|Benoit Jacob}} &lt;br /&gt;
{{FeatureDone|Mandelbrot Wallpaper|Rendering improvements (through dithering, extra iterations, and better/simpler formulas)|jacob.benoit.1@gmail.com|Benoit Jacob}}&lt;br /&gt;
{{FeatureDone|Mandelbrot Wallpaper|Allow to import/export parameters and to export to PNG images|jacob.benoit.1@gmail.com|Benoit Jacob}}&lt;br /&gt;
{{FeatureDone|Comic Applet|Add option to show &amp;quot;text&amp;quot;, &amp;quot;icons&amp;quot; or both &amp;quot;text and icons&amp;quot; for tabs|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|Comic Applet|Prefetch next and previous comic strip (thx to Miha Cancula)|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|Character Runner|New|akreuzkamp@web.de|Anton Kreuzkamp}}&lt;br /&gt;
{{FeatureDone|KDE Observatory|Performance improvements, new data engine|sandroandrade@kde.org|Sandro Andrade}}&lt;br /&gt;
{{FeatureInProgress|Plasmaboard|Completly rework the current onscreen keyboard and add key layouts for tablets and mids|bjoern@ruberg-wegener.de|Björn Ruberg}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdesdk  =&lt;br /&gt;
&lt;br /&gt;
{| cellspa/cing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate snowball stemmer for glossary|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Continue implementing XLIFF spec|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Segmentation [editing] functionality|shafff@NOSPAMukr.net |Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Remote translation memories|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate with nepomuk (fast stats retrieval, tag cloud - incl sharing!)|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureInProgress|Kate|Replace old snippet plugin through TNG plugin and enhance the usability of the new plugin|jowenn(you_know)kde(here_too)org|Joseph Wenninger}}&lt;br /&gt;
{{FeatureInProgress|Kate|Port the old XML completion plugin (xmltools)|tomastrnka@gmx.com|Tomáš Trnka}} &lt;br /&gt;
{{FeatureInProgress|Umbrello|Add a code importing wizzard|andi.fischer@NOSPAMhispeed.ch|Andi Fischer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeutils  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Simplify Kerfuffle's API (jobs, interfaces etc) and try to make it stable|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Add feedback for the latest operation in the status bar|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Try multiple plugins for each archive type before failing|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Make the internal previewer optional|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Add a &amp;quot;Preview with...&amp;quot; context menu item|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Make Kerfuffle really thread-safe (and use threads in less places)|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Get rid of the Observer code in Kerfuffle|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Make error reporting work as expected in Kerfuffle|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|KGpg|Make keyserver actions possible to use on multiple keyservers at once|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Improve the titels of the changes to the bytearray to be more descriptive, best using ids to avoid text string|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add a general KPart adapter to Kasten, than finish port of Okteta KPart to Okteta Kasten|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add view profiles, incl. editor/manager|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|printer-applet|Restore feature parity with KDEPrint3 where possible.||Jonathon Riddell, John Layt}} &lt;br /&gt;
{{FeatureDone|kdelirc/kremotecontrol|Transition from KDELirc to KRemoteControl|michael_zanetti@gmx.net|Michael Zanetti}} &lt;br /&gt;
{{FeatureInProgress|KGpg|Add &amp;amp;quot;caff&amp;amp;quot; mode for keysigning|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureInProgress|Okteta|Allow writing structure definitions in JavaScript|alex.richardson@gmx.de|Alex Richardson}} &lt;br /&gt;
{{FeatureInProgress|Okteta|Add KNewStuff support to the structures tool|alex.richardson@gmx.de|Alex Richardson}} &lt;br /&gt;
{{FeatureInProgress|Okteta|Allow pinning structure beginning to a specific offset|alex.richardson@gmx.de|Alex Richardson}}&lt;br /&gt;
{{FeatureInProgress|Okteta|Add possibility to set count of bytes per line/group|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureDone|Okteta|new export formats: S-Record, Intel Hex, Base32, Ascii85, Uuencoding, Xxencoding|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|add QIODevice for AbstractByteArrayModel and make mimetype detection use this instead of only filename |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|Refactor mouse input to controllers for the bytearray widget|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdetoys  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|kteatime|Port to KStatusNotifierItem|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureInProgress|kteatime|Port to KConfigXT|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureInProgress|kteatime|Support categories|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureInProgress|kteatime|Improved indicator icon painting|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|kteatime|Fork multiple instances for multiple timers|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|kteatime|Tea runner|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|kteatime|Improved command line|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|amor|Do some refactoring in amor|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|amor|Improve theme support|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|amor|Implement KNewStuff support|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|amor|Revamp configure dialog|kde@hilefoks.org|Stefan Böhmann}} {{FeatureTodo|amor|Sound support|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|amor|Add KStatusNotifierItem support|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureInProgress|ktux|Do some refactoring in ktux|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|ktux|Revamp configure dialog|kde@hilefoks.org|Stefan Böhmann}} {{FeatureTodo|ktux|Sound support|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Other  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/MovetoGit</id>
		<title>Projects/MovetoGit</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/MovetoGit"/>
				<updated>2010-05-02T14:08:10Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Requirements of KDEPIM and KDAB */ Update progress list&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the page for co-ordinating KDE's move to [http://git-scm.com/ Git].&lt;br /&gt;
&lt;br /&gt;
If you're interested in helping, you should join the [https://mail.kde.org/mailman/listinfo/kde-scm-interest kde-scm-interest@kde.org] mailinglist and [irc://chat.freenode.net/kde-git #kde-git] on freenode.&lt;br /&gt;
&lt;br /&gt;
Meetings are wednesdays, 19:30 UTC, in #kde-git.&lt;br /&gt;
&lt;br /&gt;
=The Plan=&lt;br /&gt;
&lt;br /&gt;
KDE is, eventually, moving to Git. We will be using [http://gitorious.org/ gitorious.org] servers, with funding from Nokia. We will also have our own mirrors using existing KDE servers.&lt;br /&gt;
&lt;br /&gt;
We are working with the Gitorious people to ensure their server will meet all our needs as well as everyone's privacy requirements. The distributed nature of Git will make it easy for us to migrate off gitorious.org at any time should the need arise (but that's unlikely :).&lt;br /&gt;
&lt;br /&gt;
In the summer of 2009, [http://gitorious.org/amarok Amarok] moved to Gitorious to test the waters and find problems that would affect KDE. Once those problems have been solved, all of KDE will be able to switch.&lt;br /&gt;
&lt;br /&gt;
==Why?==&lt;br /&gt;
&lt;br /&gt;
Git offers many advantages over svn, including offline commits and much easier to keep a feature branch up-to-date. Many KDE developers are already using git-svn, but this tool has its limitations. We want to have the full power of Git available, and we have people willing to do the work necessary to migrate.&lt;br /&gt;
&lt;br /&gt;
==How?==&lt;br /&gt;
&lt;br /&gt;
When we move, KDE's svn repository will be migrated into several Git repos, all on gitorious.org. Main modules such as kdelibs and kdebase will each become one repository. Projects in extragear will each have their own repository. The kde.gitorious.org site will have a list (lists?) of all these repositories using the builtin project wiki. Scripts will be provided for downloading, say, all of extragear, so &amp;quot;moving&amp;quot; a project from kdereview to extragear would simply involve editing a file kept online that defined the location of projects.&lt;br /&gt;
&lt;br /&gt;
A few things will stay in subversion - currently websites, translations and manuals. It's possible they could move to Git later, but they won't be part of the mass migration.&lt;br /&gt;
&lt;br /&gt;
On Gitorious, all KDE developers will be part of the [http://gitorious.org/+kde-developers kde-developers group]. Developers in this group are required to set their &amp;quot;full name&amp;quot; for their Gitorious account to their real name. If you want to be in this group, file a bugreport for sysadmin on bugs.kde.org. :)&lt;br /&gt;
&lt;br /&gt;
The procedure to move a project from svn to gitorious.org can be found in [[Projects/MoveToGit/StepsToMove|Steps to follow for Moving]].&lt;br /&gt;
&lt;br /&gt;
=Blockers=&lt;br /&gt;
&lt;br /&gt;
Tasks that need to get done before we can migrate&lt;br /&gt;
&lt;br /&gt;
==SLA for gitorious.org==&lt;br /&gt;
{{Progress bar|30}}&lt;br /&gt;
'''Owner:''' aseigo, frank&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''Progressing well; will take a while''&lt;br /&gt;
&lt;br /&gt;
: The SLA terms need to be documented as well as who will be footing the bill, if any. TZander has talked to Shortcut AS and sent the relevant information (eg cost) to the KDE eV board.&lt;br /&gt;
&lt;br /&gt;
: aseigo and Frank (and someone?) had a meeting with Shortcut people during tokamak. They asked for a rather large sum of money; negotiations are continuing, but we might want to consider hosting our own server...&lt;br /&gt;
&lt;br /&gt;
==Write / update importing rules for svn2git==&lt;br /&gt;
{{Progress bar|5}}&lt;br /&gt;
'''Owner:''' see below - volunteers needed!&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''sandsmark: stuck on a svn2git bug. sho: ???, tumaix:started to read the docs, cryos: getting started [2010-01-06]''&lt;br /&gt;
&lt;br /&gt;
:The importer is on gitorious.org as svn2git we have a set of rules to tell the importer what svn dirs turn into which git repos and those need constant updating whenever a new branch or tag or project is created. Currently the rules are mostly a rough draft, as seen by the large amount of rule-editing that had to be done for Konversation and Amarok. This has not been done for quite some time and so someone should rsync the svn repo run svn2git and fix the rules and importer whenever the import stops.&lt;br /&gt;
&lt;br /&gt;
:This is a very big task, too big for one person; it's probably best to tackle it one module at a time&lt;br /&gt;
&lt;br /&gt;
:To get started on a module, read [[Projects/MoveToGit/UsingSvn2Git|Using Svn2Git]]&lt;br /&gt;
&lt;br /&gt;
:TZander has done the koffice ruleset as of 2009-01-06&lt;br /&gt;
&lt;br /&gt;
:Jpwhiting has finished (more or less) the kdeaccessibility ruleset 2010-01-24.&lt;br /&gt;
&lt;br /&gt;
:aavci has done the k3b ruleset as of 2010-01-27&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
progress details:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!repo&lt;br /&gt;
!owner&lt;br /&gt;
!%&lt;br /&gt;
!comments&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeaccessibility&lt;br /&gt;
|jpwhiting&lt;br /&gt;
|99&lt;br /&gt;
|&amp;quot;more or less&amp;quot;?&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeadmin&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeartwork&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdebase&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdebindings&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeedu&lt;br /&gt;
|cryos?&lt;br /&gt;
|?&lt;br /&gt;
|update me!&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeexamples&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdegames&lt;br /&gt;
|tumaix?&lt;br /&gt;
|?&lt;br /&gt;
|update me!&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdegraphics&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdelibs&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdemultimedia&lt;br /&gt;
|eean&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdenetwork&lt;br /&gt;
| grundleborg&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdepim&lt;br /&gt;
|tnyblom&lt;br /&gt;
|25&lt;br /&gt;
|Basic rules in place, testing and tweaking pending.&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdepim-runtime&lt;br /&gt;
|tnyblom&lt;br /&gt;
|25&lt;br /&gt;
|Basic rules in place, testing and tweaking pending.&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdepimlibs&lt;br /&gt;
|tnyblom&lt;br /&gt;
|90&lt;br /&gt;
|Some minor history glitches, but mostly done.&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeplasma-addons&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdesdk&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdetoys&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeutils&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdewebdev&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|extragear/sdk/kdevelop&lt;br /&gt;
| apaku&lt;br /&gt;
| 95&lt;br /&gt;
| trunk and branches complete, need to cleanup tags from cvs days.&lt;br /&gt;
|-&lt;br /&gt;
|extragear/sdk/kdevplatform&lt;br /&gt;
| apaku&lt;br /&gt;
| 100&lt;br /&gt;
| done, all tags seem fine all branches are there&lt;br /&gt;
|-&lt;br /&gt;
|extragear/sdk/kdevelop-plugins&lt;br /&gt;
| nsams&lt;br /&gt;
| 100&lt;br /&gt;
| done&lt;br /&gt;
|-&lt;br /&gt;
|extragear/sdk/quanta&lt;br /&gt;
| nsams&lt;br /&gt;
| 99&lt;br /&gt;
| done&lt;br /&gt;
|-&lt;br /&gt;
|extragear/utils/krecipes&lt;br /&gt;
| santa&lt;br /&gt;
| 10&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|extragear/*/*&lt;br /&gt;
|&lt;br /&gt;
|xx&lt;br /&gt;
|expand the *'s later (let's focus on the base modules first)&lt;br /&gt;
|-&lt;br /&gt;
|kde-common&lt;br /&gt;
|mattr&lt;br /&gt;
|75&lt;br /&gt;
|analyzing import history&lt;br /&gt;
|-&lt;br /&gt;
|kdesupport&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|koffice&lt;br /&gt;
|tzander&lt;br /&gt;
|85&lt;br /&gt;
|All but tags are done&lt;br /&gt;
|-&lt;br /&gt;
|promo&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|quality&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|tests&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Requirements of KDEPIM and KDAB ==&lt;br /&gt;
&lt;br /&gt;
{{Progress bar|90}}&lt;br /&gt;
'''Owner:''' Stephen Kelly&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''Proposed workflow identified. Partially depends on KDE policies regarding branches and merging. Gathering estimates for porting of tooling from svn to git. People unfamiliar with the tool are starting to learn to use it.''&lt;br /&gt;
&lt;br /&gt;
'''Estimated completion date''': End of May.&lt;br /&gt;
&lt;br /&gt;
'''Summary of issues'''&lt;br /&gt;
&lt;br /&gt;
* Clean slate&lt;br /&gt;
** The existing backlog of commits which need to be merged or ported to trunk needs to be empty before the change to git so that nothing gets lost. This is a lot of work and will take time. ''Estimate'' 10 calendar weeks.&lt;br /&gt;
* Technical difficulties and limitations.&lt;br /&gt;
** Up to KDE 3.5 there was one kdepim module. For the KDE4 cycle, this was split into kdepimlibs and kdepim. For the above mentioned merging to be possible, it makes sense for both to be in the same git module. This poses extra difficulty to the svn2git script.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Email threads'''&lt;br /&gt;
&lt;br /&gt;
* Mid-January thread on scm-interest: http://thread.gmane.org/gmane.comp.kde.devel.pim/26726&lt;br /&gt;
* Early March thread on kde-core-devel (Till email): http://thread.gmane.org/gmane.comp.kde.devel.core/63915/focus=63970&lt;br /&gt;
* Early March thread on kde-core-devel (Till follow-up):&lt;br /&gt;
http://thread.gmane.org/gmane.comp.kde.devel.core/63915/focus=64069&lt;br /&gt;
&lt;br /&gt;
'''Resolved Issues'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Branch maintenance workflow '''Resolution: http://thread.gmane.org/gmane.comp.kde.scm-interest/1310'''&lt;br /&gt;
** KDAB maintains several branches of legacy versions of KDE for enterprise customer deployments. [http://websvn.kde.org:80/branches/kdepim/enterprise/ Enterprise 3.5] [http://websvn.kde.org:80/branches/kdepim/enterprise4/ Enterprise 4 (based on KDE 4.2)]. The current KDEPIM trunk known as Enterprise 5 and is Akonadi based.&lt;br /&gt;
** Periodically (weekly or so), tags are created from the enterprise branches with bugfixes. http://websvn.kde.org:80/tags/kdepim/ Customers can download the tagged versions with the latest updates. Fixes are merged from the Enterprise 3.5 branch, and into trunk (which sometimes involves a lot of work, as the fix must be ported to Akonadi). Additionally, fixes get merged in the other direction. From official KDE modules into the Enterprise branches.&lt;br /&gt;
** Some fixes from Enterprise 3.5 should not be merged into Enterprise 4 for reasons such as no longer being reproducible. Some fixes do not get merged for a long time because they require so much work that porting the fix or feature is deffered. There needs to be a list of commits which should never be merged (blocked commits), and commits which should be merged, but have not been merged yet. The tool [[Development/Tools/svnmerge.py|svnmerge]] is used to facilitate this. svnmerge uses svn properties to maintain lists of commits that are blocked and that have already been integrated. See for example the svn-blocked and svn-integrated properties here: http://websvn.kde.org:80/trunk/KDE/kdepim/. The lists of commits available to be merged into the various branches are here: http://www.kdab.com/~thomas/avail/&lt;br /&gt;
** There needs to be a way in git to keep track of what commits have been merged, what commits need to be merged, and what commits are blocked. There needs to be a way of merging only specific commits from a branch, but not all, and not blocked commits. Proposed solutions:&lt;br /&gt;
*** git cherry-pick allows 'merging' of individual commits, but does not record where the commits came from. Instead it creates a new commit without any reference to where it came from. This alone is unsuitable.&lt;br /&gt;
*** branch per fix. This would lead to an explosion of branches which is not a problem in git as all commits are branches. It may make gitk un-navigatable. There would need to be a naming convention such as komo-merge-&amp;lt;fixname&amp;gt; for branches which should be merged. The commands &amp;lt;tt&amp;gt;git checkout 4.5 &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;git checkout enterprise4.5 &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;git checkout master &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt;. That could of course be optimized, but gets the point across. If the code has changed so much that the branch is unmergable, but the fix still needs to be in trunk, the system breaks down.&lt;br /&gt;
*** Custom git command with flat text files representing the same information as svnmerge, that is lists of blocked and integrated commits. This is most likely to be a workable solution, possibly together with conventional branch naming.&lt;br /&gt;
* Internal Tools and external customer tools and workflows&lt;br /&gt;
** KDAB is a consumer of KDE software, but also has downstream customers fetching software from where it is developed. That is, KDE SVN. For example packages are created from the tags in tags/kdepim. Some of these downstreams are less close to KDE and depend on current workflows. If KDE SVN is not the place to get those updates anymore, this needs to be communicated to those downstreams, and the tools updated. ''Estimate'' 1 week to port the tools.&lt;br /&gt;
*** Internally used tools have been updated and are now being used to access git repos such as dbus.&lt;br /&gt;
* Other commitments&lt;br /&gt;
** Project deadlines and other commitments prevent the possibility of blocking off time to work on git migration when so many other things need to be done which have milestones separate to KDE cycles. The required work to convert to git can't be prioritized as highly, and so will take more time.&lt;br /&gt;
*** Most of the technical work regarding migration of kdepim repos has been completed by community member Torgny Nyblom.&lt;br /&gt;
* Tool knowledge&lt;br /&gt;
** People who don't currently know how to use git need to get familiar with it so that transitioning will be nearly seamless, and not result in too much development slowdown.&lt;br /&gt;
*** Workshops and use of git-svn have been used to bring developers up to speed on how to use git at some level.&lt;br /&gt;
&lt;br /&gt;
=Nice to have before the migration=&lt;br /&gt;
&lt;br /&gt;
==Push log==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' nobody!!&lt;br /&gt;
&lt;br /&gt;
'''Status:''' argonel had a hd failure :( [2010-01-06]&lt;br /&gt;
&lt;br /&gt;
:Gitorious records who pushed each commit.  This is useful information because commits themselves can say anything, and there are legitimate reasons to push commits with another person's name.&lt;br /&gt;
&lt;br /&gt;
:Internally, Gitorious stores this information in an SQL database, and the information is viewable through the web interface.  However we want a way to backup this information for the case that Gitorious suddenly go offline.&lt;br /&gt;
&lt;br /&gt;
:quotes from the mailing list:&lt;br /&gt;
&lt;br /&gt;
&amp;gt; How about every repo has, by convention, a &amp;quot;commits&amp;quot; branch and&lt;br /&gt;
&amp;gt; a post commit hook that ensures whatever meta info is required,&lt;br /&gt;
&amp;gt; however it can be gleaned, is also checked into that commits branch.&lt;br /&gt;
&amp;gt; A bit like how gitosis uses a repo to store auth/acl info to help&lt;br /&gt;
&amp;gt; manage the other repos.&lt;br /&gt;
&lt;br /&gt;
That's exactly my idea. And of course it won't be named commits, because we're &lt;br /&gt;
not talking about commits.&lt;br /&gt;
&lt;br /&gt;
It's a push log, similar to a local repository's reflog.&lt;br /&gt;
&lt;br /&gt;
---------------&lt;br /&gt;
&lt;br /&gt;
For every push, log:&lt;br /&gt;
 - who pushed (not the Unix username, which will be &amp;quot;git&amp;quot;)&lt;br /&gt;
 - which branch heads changed (what from, what to)&lt;br /&gt;
 - which tags were created&lt;br /&gt;
 - the state of all other branches and tags&lt;br /&gt;
&lt;br /&gt;
Just use git commit-tree with the empty tree and save everything in the commit &lt;br /&gt;
message, one after the other.&lt;br /&gt;
&lt;br /&gt;
-----------&lt;br /&gt;
&lt;br /&gt;
This does not require help from gitorious.org until the script is actually written: it's just another pre-receive hook for them to install on their servers.&lt;br /&gt;
it *might* also be possible to run it as a post-receive hook (in which case we can do the whole thing ourselves).&lt;br /&gt;
&lt;br /&gt;
if we self-host, then we won't need this.&lt;br /&gt;
&lt;br /&gt;
==Script for downloading virtual KDE hierarchies==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner''': &lt;br /&gt;
&lt;br /&gt;
'''Status:''' &lt;br /&gt;
&lt;br /&gt;
:Let's start over on this.&lt;br /&gt;
what we already have: two build scripts for kde; kdesvn-build and build-tool.&lt;br /&gt;
what we want: an easy way for people to get large chunks of kde, without thinking about what urls the repos come from or having to look things up.&lt;br /&gt;
&lt;br /&gt;
do kde-svnbuild and build-tool satisfy this well enough?&lt;br /&gt;
or do we want a computer-readable file listing all the repos too?&lt;br /&gt;
&lt;br /&gt;
btw, scripty has its own list of repos already. it's just in a rather weird bash file.&lt;br /&gt;
&lt;br /&gt;
'''Links'''&lt;br /&gt;
[http://kdesvn-build.kde.org/]&lt;br /&gt;
[[Projects/MovetoGit/MassCloneScript]]&lt;br /&gt;
[http://rubyforge.org/projects/build-tool/]&lt;br /&gt;
&lt;br /&gt;
==pre-receive hooks==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' ''volunteers needed!!''&lt;br /&gt;
&lt;br /&gt;
* Line endings and encodings&lt;br /&gt;
&lt;br /&gt;
'''Discussion:'''&lt;br /&gt;
this got accidentally marked as done or something, but it's not.&lt;br /&gt;
&lt;br /&gt;
'''Notes:'''&lt;br /&gt;
&amp;gt; &amp;gt; As for line-endings, be careful because Git is different from Subversion.&lt;br /&gt;
&amp;gt; &lt;br /&gt;
&amp;gt; different how?&lt;br /&gt;
&lt;br /&gt;
Just ensure that all files are stored as LF only, except if there's a &lt;br /&gt;
.gitattributes file saying &amp;quot;-crlf&amp;quot; (i.e., allow it to have CRLF).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Snapshot to read-only svn==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:'''&lt;br /&gt;
&lt;br /&gt;
:It's work, but maybe some people would like it. NEEDED for documentation, in order to get it back into SVN for the translators/scripty/?&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:Could be done with a git-svn gateway presumably? -Mike Arthur 19/10/2009 16:04&lt;br /&gt;
&lt;br /&gt;
:if we leave the docbook stuff in svn, we can avoid this a bit longer. --[[User:Chani|Chani]] 23:21, 12 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
==[[Development/Tutorials/Git|Techbase Documentation]]==&lt;br /&gt;
'''Owner:''' Chani, greeneg, - ''please help out!''&lt;br /&gt;
{{Progress bar|10}}&lt;br /&gt;
&lt;br /&gt;
:At least minimal documentation about how to checkout, how to get a Gitorious account, how to request a merge needed, other git documentation and links to other git information would be very useful also.&lt;br /&gt;
&lt;br /&gt;
:see the [[Development/Tutorials/Git|Git Tutorial Page]]. help wanted!!&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Setup git mirrors for cloning==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' No one (help!)&lt;br /&gt;
:Re-purpose the anonsvn servers. This item might be a blocker.&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
==Local pre-commit hooks==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' argonel&lt;br /&gt;
&lt;br /&gt;
:A set of recommended local hooks that give useful warnings could be nice to have.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
...on the other hand, if we get a lot of bikeshedding about what hooks, then it won't be so nice. so I'd put this in the &amp;quot;very optional&amp;quot; pile. --[[User:Chani|Chani]] 19:10, 16 December 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
=Post-migration Issues=&lt;br /&gt;
&lt;br /&gt;
==Website Branding==&lt;br /&gt;
{{Progress bar|2|text=(initial ideas on the table)}}&lt;br /&gt;
'''Owner:''' ruphy&lt;br /&gt;
&lt;br /&gt;
:KDE Gitorious should be branded accordingly, and should be reachable from git.kde.org as well as kde.gitorious.org&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
=Unscheduled &amp;amp; Open=&lt;br /&gt;
&lt;br /&gt;
==Allow tagging without involving sysadmins==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
&lt;br /&gt;
'''Owner:''' johan&lt;br /&gt;
&lt;br /&gt;
:Pushing a tag currently requires permissions to do a force push, which is a repository-wide checkbox that can only be toggled by a kde-developers admin. Thus the workflow for a dev wanting to do a release tag for his app is to ask an admin to enable force pushing, then to push his tag, and then to tell the admin he can disable force pushing again. This doesn't scale, is insecure, and at odds with KDE's open access policy when it comes to managing the repos (right now in SVN, you need sysadmin to create an app dir in /tags for you, but don't have to ask permission for every individual tag). Johan has promised a solution for this.&lt;br /&gt;
&lt;br /&gt;
:Notable discussion points on kde-scm-interest:&lt;br /&gt;
:http://mail.kde.org/pipermail/kde-scm-interest/2009-November/000782.html&lt;br /&gt;
:http://mail.kde.org/pipermail/kde-scm-interest/2009-November/000784.html&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
==Account setup on Gitorious==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
&lt;br /&gt;
'''Owner:''' ''eean, johan, boud, dario''&lt;br /&gt;
&lt;br /&gt;
:Creating an account on Gitorious isn't hard, but asking to be added to the KDE group is inconvenient. For the migration we should set up a system (via email or wiki?) where developers can ask to have an account autocreated for them, or add their existing Gitorious account to a list to be added to the group. Once this is in place an announcement should be sent to all svn accounts explaining the process, and privacy information.&lt;br /&gt;
&lt;br /&gt;
:Basically the currently method of using Bugzilla works fine now and works fine in the longterm. But in the transition month when hundreds of accounts must be created or added, we need a better system. Its important to make it as easy as possible so that we don't lose anyone in the shuffle.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
: I think most people have made their own accounts by now. this isn't really needed.&lt;br /&gt;
&lt;br /&gt;
==post-update hooks==&lt;br /&gt;
{{Progress bar|90}}&lt;br /&gt;
'''Owner:''' ''morice'' ''Ian Monroe''&lt;br /&gt;
&lt;br /&gt;
:* License checker&lt;br /&gt;
&lt;br /&gt;
'''Discussion:'''&lt;br /&gt;
We have a fairly complete set of post-update hooks now. See [http://gitorious.org/remotehook remotehook]. However, it would be nice to have a system that lives on the Gitorious server and/or requires less manual maintenance. But its certainly workable and no longer a blocker.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Completed Tasks=&lt;br /&gt;
&lt;br /&gt;
==Get rid of svn:externals==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' David Faure&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''???''&lt;br /&gt;
&lt;br /&gt;
:not possible with git, broken by design.&lt;br /&gt;
&lt;br /&gt;
::&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
Exists, but ignorable:&lt;br /&gt;
* kdesupport shared-desktop-ontologies (temporary)&lt;br /&gt;
* playground/utils strigi-chemical/test/ctfr&lt;br /&gt;
* playground/devtools kdevelop4-extra-plugins/php/parser/generated/kdevelop-pg-qt&lt;br /&gt;
* playground/devtools kdevelop4-extra-plugins/python/parser/generated/kdevelop-pg-qt&lt;br /&gt;
* playground/devtools kdevelop4-extra-plugins/qmake/parser/generated/kdevelop-pg-qt&lt;br /&gt;
* playground/devtools kommander-plugins/database3/admin&lt;br /&gt;
* playground/devtools kommander-plugins/database/admin&lt;br /&gt;
* playground/devtools kommander-plugins/datetimefuncs/admin&lt;br /&gt;
* playground/devtools kommander-plugins/htmlpart/admin&lt;br /&gt;
* playground/devtools kommander-plugins/httpform/admin&lt;br /&gt;
* playground/devtools kommander-plugins/kparts/admin&lt;br /&gt;
* playground/devtools kommander-plugins/qtactionproxy/admin&lt;br /&gt;
* playground/devtools kommander-plugins/timewidget/admin&lt;br /&gt;
* playground/devtools kommander-plugins/webkit3/admin&lt;br /&gt;
* playground/devtools kpackagemaker/admin&lt;br /&gt;
&lt;br /&gt;
==EBN==&lt;br /&gt;
{{Progress bar|95}}&lt;br /&gt;
'''Owner:''' ''drf''&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''Amarok has EBN checks''&lt;br /&gt;
&lt;br /&gt;
:EBN's krazy checks currently run on kde's svn repo; it needs upgrading to download and check our git repos too.&lt;br /&gt;
&lt;br /&gt;
:This would be easier if there was a repo-list that EBN could parse, as it can no longer just svn up to get everything.&lt;br /&gt;
&lt;br /&gt;
==Talk to people using other distros about git==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' Sebas, Eike&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
* Gentoo: They seem to be prepared for moving their live SVN packages to git; their package manager has easily-reusable classes to fetch from an SCM and moving the ebuilds to using the git class rather than the SVN class should be easy. Positive comments to that end from people in #gentoo-kde.&lt;br /&gt;
* Fedora: Some unhappyness about git because SVN allows them to remotely produce a diff between two SVN URLs (or two revisions of one and the same URL) without making a checkout first, while git requires making a clone. Kevin Kofler (IRC nick Kevin_Kofler, #fedora-kde) says this will make their packager work harder.&lt;br /&gt;
* Debian: Is indifferent about the SCM switch.&lt;br /&gt;
&lt;br /&gt;
==Post Update hooks==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' ''morice, johan, mattr&lt;br /&gt;
&lt;br /&gt;
:List of scripts needed:&lt;br /&gt;
:* BUG/CCMAIL&lt;br /&gt;
:* email/CIA&lt;br /&gt;
&lt;br /&gt;
:Gitorious needs to provide a way for hooks to be called; KDE needs to write said hooks.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:There is a branch of gitorious called web-hooks http://gitorious.org/gitorious/mainline/commits/web-hooks --Panagiotis Papadopoulos 1 November 2009&lt;br /&gt;
:Same situation as commit emails. I can do it but it doesn't scale well and a Gitorious-supported solution would be nicer. --[[User:Eean|eean]] 16:07, 12 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
==Opt-in privacy exception required for kde-developers==&lt;br /&gt;
&amp;lt;strike&amp;gt;&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' ''Gitorious'', ''KDE e.V. Board'', ''eean''&lt;br /&gt;
&lt;br /&gt;
:KDE sysadmins need access to some information that Shortcut could not give them due to their privacy policy. Examples include an email list of all the developers and SQL-level access to information about all the repos in KDE (since it stores who pushes what, information not stored in the git repo itself).&lt;br /&gt;
&lt;br /&gt;
:Such requirements will likely be put into the contract with Shortcut.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
:So the e.V. Board is an owner since this is a legal/contract/money issue. Added myself only because I'm shepherding the issue. --[[User:Eean|eean]] 16:16, 12 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/strike&amp;gt; &lt;br /&gt;
&lt;br /&gt;
:'''We will not get sql access to the information. For the alternative solution see the Push Log issue'''&lt;br /&gt;
&lt;br /&gt;
==Reviewboard==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' darktears&lt;br /&gt;
&lt;br /&gt;
This should be easily done with Gitorious web interface and merge requests actually.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:but reviewboard has features gitorious (right now) doesn't, like commenting on specific lines and not having to set up a merge request. --chani&lt;br /&gt;
::Also email notifications when someone reviews are needed --thomasz&lt;br /&gt;
:We're working on this for someone else right now, so pretty soon --johan-s&lt;br /&gt;
:I consider the latest changes to gitorious to finish this. If more reviewboard features are still needed, and git supports reviewboard, I think this is something we can look at doing post-conversion. --Ian Monroe&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Gitorious Needs a feature to disable merge request emails for certain repos==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' [http://gitorious.org/gitorious Gitorious]&lt;br /&gt;
&lt;br /&gt;
Have a sensible system for merge request emails.  This is now in place - you can join groups, chose whether to have emails on a per repo basis, etc.&lt;br /&gt;
&lt;br /&gt;
==SSH blocked in corporations and universities.==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' ''Unknown''&lt;br /&gt;
&lt;br /&gt;
:Some universities tend to block the SSH port. There should be a workaround to use SSH on some different port. github.com already runs a SSH server on port 443. But that assumes you are using a proxy. It has been found that this hasn't worked with a lot of people, especially those who have a direct connection to the internet ( so some transparent blocking by the ISP ). It would be great if (almost) every KDE developer were to be asked to check if other ports work before KDE made the switch. Otherwise there could be an automated email where the git patches could be sent, and appropriately patched to the right location too.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:http://blog.gitorious.org/2009/10/20/stuck-behind-a-firewall/, and there's always been HTTP cloning (although the current impl. in Git is a bit on the slow side) --johan-s&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Talk to windows guys about git.==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:'''  aseigo&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
They aren't huge fans of git, but are using it. They require a single mainline and can't cope with multiple branches. Otherwise, it's workable, even if it will take an adjustment period.&lt;br /&gt;
&lt;br /&gt;
==pre-commit hooks==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' ''(unknown)''&lt;br /&gt;
&lt;br /&gt;
:acltest, docbook, EOL/UTF-8&lt;br /&gt;
&lt;br /&gt;
:A web hook isn't good enough for these because they have to run and return whether to allow the push, for every single push to every KDE repo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:gitorious guys said they *might* be willing to allow a few scripts on their server for KDE as a special exception, iirc. --chani&lt;br /&gt;
&lt;br /&gt;
:: Yes, at least for basic things, heavier things like doc building would probably have to be mirrored (goes for pre/post) --johan-s&lt;br /&gt;
&lt;br /&gt;
:It turns out that acl and docbook might not be needed so long as web and docs/ stuff stays in svn.&lt;br /&gt;
&lt;br /&gt;
:: Here's where to find the current scripts - http://websvn.kde.org/trunk/kde-common/svn/hooks/ --[[User:Argonel|Argonel]] 23:06, 11 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
::So: this is actually done because it needs no longer to be done? (boud)&lt;br /&gt;
&lt;br /&gt;
::Apparently, so; moving to complete. (aseigo)&lt;br /&gt;
&lt;br /&gt;
= other notes =&lt;br /&gt;
&lt;br /&gt;
==kde-common/accounts==&lt;br /&gt;
&lt;br /&gt;
Someone said: KDE accounts file is no longer necessary---used for mapping svn ID -&amp;gt; email, but we have that now from Gitorious.&lt;br /&gt;
Answer from David Faure: I strongly disagree. We still need a KDE accounts file. This is very useful for finding people's email addresses, and having an overview on the number of active kde contributors; and if we keep it we can even have a kdepim resource again for filling an addressbook from it, for completion in kmail's composer (so you can write to any other kde contributor by just typing his/her name). It's also used for populating automatically the kde-cvs-announce mailing-list, for announcements. kde-common/accounts is our family tree (well, list), let's not get rid of it.&lt;br /&gt;
&lt;br /&gt;
Here's my proposal for a kde-common/accounts replacement for the git era: We write a post-receive hook that looks at every commit and records all known email addresses for a given real name as well as the commit hash and date of when an address was last encountered. We can then present that data in the form of a file like kde-common/accounts, or write a web interface to query it (with nice links to the commits on Gitorious, etc.) --Eike (Sho_ on IRC)&lt;br /&gt;
&lt;br /&gt;
To clear up possible confusion: The author information for a given commit is baked into the commit object itself, and comes from the configuration of the git repository it was created in. It is unrelated to any Gitorious account. Due to the distributed nature of Git, the one who uses his Gitorious account to push a commit need not be the same who created it. If Developer A creates a commit in his local clone and Developer B fetches it into his local clone directly from Developer A's machine and then pushes it into the public repo, the repo will only show a commit from Developer A. The Gitorious website will show that Developer B has pushed up a commit from Developer A, but that data is not contained in the repository. Thus collecting only Gitorious accounts and their mail addresses is insufficient. --Eike&lt;br /&gt;
&lt;br /&gt;
==Random==&lt;br /&gt;
http://mail.kde.org/pipermail/dot-stories/2005-May/000509.html might be a good guide on what docs we need.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
some of this stuff was from the list from GCDS that was in this email [http://markmail.org/message/u6eqfjece7fibfyo http://markmail.org/message/u6eqfjece7fibfyo]&lt;br /&gt;
&lt;br /&gt;
==IRC Meetings==&lt;br /&gt;
* [[Projects/MovetoGit/Meeting1111|Minutes]] of meeting 11 November 2009&lt;br /&gt;
* [[Projects/MovetoGit/Meeting1118|Next meeting]] 18:00, 25 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
= jobs =&lt;br /&gt;
''TODO merge this with the todolists above''&lt;br /&gt;
&lt;br /&gt;
michael jansen: talking to kdesvn-build/mpyne&lt;br /&gt;
:--Done? -&amp;gt; http://kdesvn-build.kde.org/releases/kdesvn-build-1.10.php -- Panagiotis Papadopoulos 1 November 2009&lt;br /&gt;
::Yes, but the __kdesvn-build-remote used in the impl isn't pleasant for users already on git so it still needs more work for them. [[User:Mpyne|Mpyne]] 20:32, 11 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
jonas: domain name &lt;br /&gt;
&lt;br /&gt;
ML: convert to SSH&lt;br /&gt;
&lt;br /&gt;
chani: techbase docs for scripty &lt;br /&gt;
&lt;br /&gt;
sebas/lydia/leo: communication with teams! tell people! keeping track that &lt;br /&gt;
everything is being done.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.5_Feature_Plan</id>
		<title>Schedules/KDE4/4.5 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.5_Feature_Plan"/>
				<updated>2010-04-26T17:25:49Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* kdelibs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the SC 4.5 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.5 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.5 Release Goals]] &lt;br /&gt;
*[[Schedules/KDE4/4.4 Feature Plan]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Legend: &lt;br /&gt;
&lt;br /&gt;
*todo =&amp;amp;gt; not started yet &lt;br /&gt;
*in-progress =&amp;amp;gt; started, but not completed yet &lt;br /&gt;
*done =&amp;amp;gt; completed&lt;br /&gt;
&lt;br /&gt;
__TOC__ &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeadmin  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|system-config-printer-kde|Restore feature parity with KDEPrint3 where possible.||Jonathan Riddell, John Layt}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeartwork  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Konqueror|Improvements in session-management|edulix@gmail.com|Eduardo Robles Elvira}} &lt;br /&gt;
{{FeatureTodo|Konqueror|Improvements in tab-bar widget|edulix@gmail.com|Eduardo Robles Elvira}} &lt;br /&gt;
{{FeatureInProgress|Konqueror|New Konqueror bookmarks using Akonadi and Nepomuk, awesome bar|edulix@gmail.com|Eduardo Robles Elvira}} &lt;br /&gt;
{{FeatureInProgress|nspluginviewer|npruntime scripting support|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureDone|Konsole|Finish implementing tab context menu|kurt.hindenburg@gmail.com|Kurt Hindenburg}}&lt;br /&gt;
{{FeatureInProgress|Konsole|Allow setting tab profile from file on command-line|kurt.hindenburg@gmail.com|Kurt Hindenburg}}&lt;br /&gt;
{{FeatureInProgress|Konsole|Adds support for SHELL_SESSION_ID|kurt.hindenburg@gmail.com|Kurt Hindenburg}}&lt;br /&gt;
{{FeatureInProgress|Konsole|Modernize menu layout|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|Konsole|Move to KTabWidget|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|print-manager|New Print manager KCM and applet replacement, using C++|dantti85-pk@yahoo.com.br|Daniel Nicoletti}} &lt;br /&gt;
{{FeatureDone|Dolphin|Drag and drop on tabs|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|Dolphin|Make view sub-menus available as toolbar buttons|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|Dolphin|Smooth scrolling|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Dolphin|Faceted browsing|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureTodo|Dolphin|Make use of additional columns in KDirModel/KFileItemDelegate|frank78@googlemail.com|Frank Reininghaus}} &lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KWallet|Single Sign On using PAM|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Backend for LISa|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Backend for SMB|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Integrate with remote and zeroconf kioslaves|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|Locale KCM|Add support for new KLocale features (see kdelibs section) including Digit Groups, AM/PM, etc.  Improvements to usability of existing money display options.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureInProgress|network kioslave|Backend for UPnP|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave| Backend to discover bluetooth devices and they services |edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureInProgress|bluetooth kioslave|Backend to browse bluetooth devices|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureDone|Nepomuk|Monitor file system changes via inotify|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureTodo|KNotify|Route solid errors via knotify to the device notifier|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Non-Plasma, Non-KWin &lt;br /&gt;
{{FeatureTodo|Icons KCM|More configurable icon sizes|christoph@maxiom.de|Christoph Feck}} &lt;br /&gt;
{{FeatureTodo|Fonts KCM|More configurable fonts|christoph@maxiom.de|Christoph Feck}} &lt;br /&gt;
{{FeatureTodo|BlueDevil Wizard |Write a new Wizard to pair Bluetooth devices |alex@eyeos.org|Alex Fiestas}} &lt;br /&gt;
{{FeatureTodo|Bluetooth KCM|New KCM to manage all bluetooth configurations and devices|ereslibre@kde.org|Rafael Fernandez}}&lt;br /&gt;
{{FeatureTodo|Screenedges|Screenedges handling outside of kwin/plasma|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|Oxygen style|Move window using left-mouse button on windows' empty areas|hugo@oxygen-icons.org|Hugo Pereira Da Costa}}&lt;br /&gt;
{{FeatureInProgress|Oxygen configuration|Oxygen style and decoration standalone expert configuration tool|hugo@oxygen-icons.org|Hugo Pereira Da Costa}}&lt;br /&gt;
{{FeatureInProgress|Free Space Notifier Daemon|Small daemon that warns you when your home has almost no space left|knuckles@gmail.com|Ivo Anjo}}&lt;br /&gt;
{{FeatureInProgress|Activities Daemons|Daemons to handle info about activities (kded daemon and a nepomuk service)|ivan.cukic@kde.org|Ivan Cukic}}&lt;br /&gt;
{{FeatureInProgress|Systemsettings|driconf KCM|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Plasma &lt;br /&gt;
{{FeatureInProgress|systemtray/taskmanager|port the systray and tasks applet to windows|windows@kde.org|kde windows}}&lt;br /&gt;
{{FeatureInProgress|systemtray|monochrome statusnotifier based systray icons support|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|systemtray|sort icons by category|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|systemtray|put hidden icons in a popup menu|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|tasks dataengine|export all informations needed to build an applet comparable to the current one|matthieu_gallien@yahoo.fr|Matthieu Gallien}}&lt;br /&gt;
{{FeatureDone|notifications|split systemtray and notifications applet|notmart@gmail.com|Marco Martin}}  &lt;br /&gt;
{{FeatureInProgress|notifications|new look and behaviour for notifications|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|notifications|support for remote applets for notifications|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|netbook/SAL|use QStandardModels|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|netbook/SAL|support for drag and drop of items|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|netbook/SAL|package manager invocation from the toolbox|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|netbook/Workspace KCM|New default options for KWin: tabbox as present windows, that will be set as regular grid|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|libplasma/extenders|put extendergroups in scrollwidgets|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|libplasma/extenders|possibility to detach exteneritems as standalone windows|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|libplasma/theme|more transparent dialogs when the blur effect is enabled|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|libplasma/desktop|Activity Manager UI|chani@kde.org|Chani}}&lt;br /&gt;
{{FeatureTodo|accounts applet|a plasma widget that is a central place to add accounts to social sites like identica and opendesktop, optimized for the netbook shell|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|libplasma|Improvements to Calendar/Clock widgets. Improved config ui. Allow multiple holidays on same day. Allow multiple Holiday Regions. Weekends. etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|folderview|&amp;quot;Open folder&amp;quot; icon to open folder into pop-up at request instead of automatically.|bigras.bruno@gmail.com|Bruno Bigras}}&lt;br /&gt;
{{FeatureTodo|folderview|Extend the configuration UI for nepomuksearch|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Extend Calendar DataEngine with Akonadi calendar incidents|Allows to query calendar events/todos from Akonadi in Plasma|gladhornKDEorg|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureDone|calculator|Added optional libqalculate support in the calculator runner|agostinelli@gmail.com|Matteo Agostinelli}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Add some advanced sorting to KRunner using Nepomuk|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KRunner|Improve keyboard navigation &amp;amp; command history interaction|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureInProgress|device-notifier|Route all solid error notifications via knotify to the device notifier|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureInProgress|device-notifier|Detailed (HAL) error notifications in the device notifier|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureInProgress|Plasma::Theme|Themed CSS support|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureTodo|battery|Weighted charge information for multiple batteries|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureTodo|Plasma|Welcome plasmoid|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|crystal|New desktop search widget|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|networkmanagement|Network management Plasmoid|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|quicklaunch|Improvements from Ingomar Wesp|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KWin&lt;br /&gt;
{{FeatureTodo|Tiling|Merge window tiling branch|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin|New flag to exclude windows from switchers|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KCM Decoration|New decoration kcm with previews and GHNS|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Aurorae|Port Aurorae to GraphicsView and KDecoration|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|Aurorae|Better themeing support|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Aurorae|Window tabbing support|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Aurorae|Decorations on window sides|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Aurorae|Autohiding decoration for maximized windows|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|kwin|hide windows from other activities|chani@kde.org|Chani}}&lt;br /&gt;
{{FeatureTodo|Effects|Move features from present windows to libkwineffects to make them available in desktop grid|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Effects|Add close window button to each window in present windows/desktop grid|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|Window Tabbing/libtaskmanager|Announce window groups to be used for grouping in tasks applet|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin/plasma|New window type for Plasma dashboard|kde@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|Effects|New blur effect|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Effects|High quality scaling shader for the taskbar thumbnails|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureTodo|KWin|Hint for defining the window snap rect|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeedu  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Information links in-place for each technical term|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Simulate Lunar Eclipses|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Simulate Satellites and Iridium Flares|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Social and Geographical Integration for KStars|akarshsimha@gmail.com|Akarsh Simha}} &lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}} &lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}} &lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}} &lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}} &lt;br /&gt;
{{FeatureTodo|Marble|Add proper support for GPX waypoints, tracks and routes display|anders@alweb.dk|Anders Lund}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium to use QGV based periodic table widget|mhanwell@kde.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureDone|Marble|Support OpenStreetMap Nominatim as search backend (MarbleRunner)|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|Generalized Animations with GeoDataLookAt support|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|Online-Routing|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|GPS improvements|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|Maemo Support|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Marble|GeoGraphicsScene for Online Service Plugins|bastianholst@gmx.de|Bastian Holst}}&lt;br /&gt;
{{FeatureDone|Marble|Download region|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Implement sun locator blendings as derived classes of Marble::Blending|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Configurable texture layer blending|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Import geonames city data|sonu.itbhu@gmail.com|Harshit Jain}}&lt;br /&gt;
{{FeatureInProgress|Marble|Add new icons for online services|gabrieljoel@gmail.com|Gabriel Joel Perez}}&lt;br /&gt;
{{FeatureInProgress|Marble|Download Progressbar in Qt-only version|akssps011@gmail.com|Siddharth Srivastava}}&lt;br /&gt;
{{FeatureInProgress|Marble|Bookmark support|anik.varshney@gmail.com|Kumar Anik Varshney}}&lt;br /&gt;
{{FeatureInProgress|Marble|Various Marble speed improvements|rahn@kde.org|Torsten Rahn, Ariya Hidayat}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Type checker for expressions to statically detect errors|aleixpol@kde.org|Aleix Pol}}&lt;br /&gt;
{{FeatureInProgress|KAlgebra|Support for drawing implicit curves|percy.camilo.ta@gmail.com|Percy Camilo Triveño Aucahuasi}}&lt;br /&gt;
{{FeatureInProgress|Parley|Parley practice mode rewritten|gladhornKDEorg|Daniel Laidig, Frederik Gladhorn}}&lt;br /&gt;
{{FeatureTodo|Parley|LaTeX support|laidig_kde.org|Daniel Laidig}}&lt;br /&gt;
{{FeatureTodo|Parley|Better support for entering synonyms|laidig_kde.org|Benjamin Schleinzer, Daniel Laidig}}&lt;br /&gt;
{{FeatureTodo|Cantor|import and polish Qalculate! backend|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureInProgress|KTurtle|Implement GHNS download support|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Implement GHNS upload support|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
{{FeatureDone|Rocs|Node beautification in SVG|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Threads for not blocking the UI|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Redesigned the UI for better usability|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureDone|Rocs|Plugin System|wiglot@gmail.com|Wagner Reck}}&lt;br /&gt;
{{FeatureDone|Rocs|Small plugins as examples|wiglot@gmail.com|Wagner Reck}}&lt;br /&gt;
{{FeatureDone|Rocs|Multiple Script support|tcanabrava@kde.org|Tomaz Canabrava}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdegames  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
{{FeatureTodo|Granatier|Arena Editor|k.hias@gmx.de|Mathias Kraus}}&lt;br /&gt;
{{FeatureDone|KBounce|Difficulty levels|ascherfy@gmail.com|Andreas Scherf}}&lt;br /&gt;
{{FeatureDone|KBounce|Random images as background|ascherfy@gmail.com|Andreas Scherf}}&lt;br /&gt;
{{FeatureTodo|KBreakOut|Level Sets|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureTodo|KBreakOut|Sound|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureTodo|KGoldrunner|Add the Demolition game (20 levels)|iandw.au@gmail.com|Ian Wadham}}&lt;br /&gt;
{{FeatureInProgress|Kiriki|Hint|luizromario@gmail.com|Luiz Romário Santana Rios}}&lt;br /&gt;
{{FeatureTodo|Kolf|Replace with Kolf 2 (help on coding and artwork desired)|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|Konquest|Merge the patch by Sean D'Epagnier to implement many features like map editing|pinaraf@pinaraf.info|Pierre Ducroquet}}&lt;br /&gt;
{{FeatureTodo|KsirK|rewrite AI code or at least correct most problems related in bug #170777. Volunteers wanted!|kleag@free.fr|Gaël de Chalendar}} &lt;br /&gt;
{{FeatureTodo|KsirK|Boost playing over Jabber|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|KSquares|Re-write computer player, make it act faster and more intelligent|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|KSquares|Add more types of boards: hexagonal, triangular|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Import new engine|joselb@gmx.net|Johannes Bergmeier}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Port game to new engine|joselb@gmx.net|Johannes Bergmeier}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Adapt view to show information provided by engine|joselb@gmx.net|Johannes Bergmeier}} &lt;br /&gt;
{{FeatureTodo|KSudoku|Add new actions to GUI|joselb@gmx.net|Johannes Bergmeier}}&lt;br /&gt;
{{FeatureInProgress|Kajongg|New traditional Mahjongg for four players|wolfgang@rohdewald.de|Wolfang Rohdewald}}&lt;br /&gt;
{{FeatureTodo|Kajongg|Default voices for computer players|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureTodo|Kajongg|Make playing against computer suspendable/resumable|wolfgang@rohdewald.de|Wolfgang Rohdewald}}&lt;br /&gt;
{{FeatureDone|Kigo|Load SGF games from command line and register to mimetype 'application/x-go-sgf'|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|Kigo|Fix KNewStuff provider issues|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureInProgress|KTuberling|A new &amp;quot;fast switch&amp;quot; between playgrounds|alex@eyeos.org|Alex Fiestas}}&lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}233784 Optimize size of puzzle files in default collection]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}211859 Recieve new puzzles over KNewStuff]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}211861 Introduce handicap as a means to configure difficulty]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}211866 Implement puzzle piles to organize pieces]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}212814 Quick piece grouping]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureTodo|Palapeli|[https://bugs.kde.org/show_bug.cgi?id{{=}}213774 Add magnifying glass]|majewsky@gmx.net|Stefan Majewsky}} &lt;br /&gt;
{{FeatureDone|Palapeli|Rewrite puzzle table mouse interaction stack|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|Palapeli|Cleanup config dialog code|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdegraphics  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|libkdcraw|Make color management options more flexible|marcel.wiesweg@gmx.de|Marcel Wiesweg}} &lt;br /&gt;
{{FeatureDone|libksane|Improve auto-selection|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} &lt;br /&gt;
{{FeatureInProgress|libksane|Highlight scanned area|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} &lt;br /&gt;
{{FeatureTodo|libksane|Add public API for available devices|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} &lt;br /&gt;
{{FeatureTodo|gwenview|Show Nepomuk info in image meta info|agateau@kde.org|Aurelien Gateau}} &lt;br /&gt;
{{FeatureTodo|gwenview|Persistent changes|agateau@kde.org|Aurelien Gateau}}&lt;br /&gt;
{{FeatureTodo|okular|Thumb creators via Okular Core|harsh@harshj.com|Harsh J}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdelibs  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|katepart|Add visual block mode and make the basic commands support it|ehambergαgmail.com|Erlend Hamberg}}&lt;br /&gt;
{{FeatureTodo|katepart|context dependent indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|scripting configuration, esp. for indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|list of available scripts and indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|GHNS for scripts/indenters|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|easier writing of indenters, esp. by automatically reloading them when changed|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|extend list of available default styles for highlighting, remove hardcoded colors from existing XML files|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureTodo|katepart|improve AutoBrace plugin|mail@milianw.de|Milian Wolff}}&lt;br /&gt;
{{FeatureInProgress|katepart/ktexteditor|defaultvalues, regular expressions, mirroring master, scripting of templates|jowenn(you_know)kde(here_too)org|Joseph Wenninger}}&lt;br /&gt;
{{FeatureInProgress|ktexteditor plugin|InsaneHTML_LE (zencoding like selector input (light edition)|jowenn(you_know)kde(here_too)org|Joseph Wenninger}}&lt;br /&gt;
{{FeatureTodo|katepart|replace smart cursor/ranges API|cullmann@kde.org|Christoph Cullmann}}&lt;br /&gt;
{{FeatureTodo|kdeui|API to integrate KStatusNotifierItem and KNotification: both as class api and DBus specification API|davide.bettio@kdemail.net|Davide Bettio}}&lt;br /&gt;
{{FeatureTodo|KCalendarSystem|Add new astronomical calculation support classes to be used in kdelibs to build new astronomically based calendar systems, and in kdepim to build new version of libkholiday.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KCalendarSystem|Add new calendar systems: Bahaii, Coptic, Ethiopean, Chinese, Japanese, Buddhist, etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdecore|Group policy (Windows) backend for KAuth|drf@kde.org|Dario Freddi}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|If no file printing support in Qt4.5, migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter.  To be discussed on k-c-d first.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdeui|Implement caps-lock warning for password entry widgets|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for number grouping other than thousands using LC_NUMERIC and LC_MONETARY formats, e.g. India 00 00 000 and China 0000 0000.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add configuration for AM/PM symbols.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Full POSIX compliant format support for date, time, numbers and money.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement more 'named' date/time formats, e.g. ISO, UnixTimestamp, RFC3339, etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add Full date format in addition to existing short and long.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add default colour to optionally display negative numbers.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement separate backends for each supported platform/desktop to use platform localisation in place of KDE locale.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for additional Country Code standards: ISO Alpha 3, ISO Numeric 3, FIPS-10.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for Country Code sub-regions, i.e. States/Provinces/etc. Needed for new KHolidays.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdeui|Improvements to KDatePicker/KDateTable for feature parity with Plasma Calendar widget, i.e. holiday support, select calendar system, etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdeui|DBus interface in StatusNotifierItem to connect it with freedesktop notifications instances|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|khtml|Improvements in kwallet integration|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureInProgress|khtml|Basic audio/video tag support|germain@ebooksfrance.org|Michael Howell and Germain Garand}} &lt;br /&gt;
{{FeatureInProgress|khtml|DOM3 XPath/XPath1 support|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureTodo|khtml|Selectors API1|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureTodo|khtml and kparts|More general KPart scripting interfaces|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureTodo|khtml|Implement more of DOM3's CSSOM View module|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureDone|KNewStuff|Improved Download Dialog, multiple previews, better integration of details, changelog is displayed|gladhornKDEorg|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|KNewStuff|Icon view mode|gladhornKDEorg|Reza Shah, Frederik Gladhorn}}&lt;br /&gt;
{{FeatureDone|KNewStuff|Upload dialog rewritten: It now supports updating of old uploads, previews, most data that can be entered on the website and allows direct login to the account|gladhornKDEorg|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureTodo|KNewStuff|Support more than one payload|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureTodo|kdeui|Social About Dialog|teo@kde.org|Téo Mrnjavac}}&lt;br /&gt;
{{FeatureTodo|kdeui|Generic find bar widget|sasch.pe@gmx.de|Sascha Peilicke}}&lt;br /&gt;
{{FeatureTodo|kio|SSL client certificate support|ahartmetz@gmail.com|Andreas Hartmetz}}&lt;br /&gt;
{{FeatureTodo|kio|SSL root certificate list GUI + backend|ahartmetz@gmail.com|Andreas Hartmetz}}&lt;br /&gt;
{{FeatureDone|kio|Add &amp;quot;apply to all&amp;quot; checkbox in renamedialog and allow for automatic renaming|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|kio|Port renamedialog to KFileMetaDataWidget|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|kio|Don't select extension in renamedialog|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureDone|kio|Better listing of applications in file &amp;quot;open with&amp;quot; context menu|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|kio|Context menu entry to open all files in their default applications|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureTodo|kio|Add support for additional columns (e.g., smybolic link destination) in KDirModel/KFileItemDelegate|frank78ac@googlemail.com|Frank Reininghaus}}&lt;br /&gt;
{{FeatureDone|kfile|Scroll wheel support for breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|kfile|Show all sub-folders in breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|kfile|Middle-click on subfolder in the breadcrumb bar to open in a new tab|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureTodo|kfile|Easier access to protocols in breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureTodo|kfile|Show sub-sub-folders (and so on) in breadcrumb bar|toddrme2178@gmail.com|Todd}}&lt;br /&gt;
{{FeatureInProgress|kdecore|Generic shared-memory cache|mpyne@kde.org|Michael Pyne}}&lt;br /&gt;
{{FeatureInProgress|kdeui|Redesigned icon cache|mpyne@kde.org|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|kdeui|Support alpha channel in KColor classes|christoph@maxiom.de|Christoph Feck}}&lt;br /&gt;
{{FeatureDone|nepomuk|Redesigned Nepomuk::TagWidget which can now actually be used by applications|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureInProgress|kio|Remember downloads via Nepomuk|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureDone|solid|Broadcast mount/unmount messages across processes|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureTodo|solid|Add parent matching to predicate parsing|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
{{FeatureInProgress|kdeui|Add the KRecursiveFilterProxyModel to kdeui/itemviews|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|Video Thumbnailer|Add ffmpegthumbnailer for faster video thumbnailing|ascherfy@gmail.com|Andreas Scherf}}&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements -- will move to KDE 4.5 feature plan|mpyne@kde.org|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however -- will move to KDE 4.5 feature plan|mpyne.org|Michael Pyne}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdenetwork  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}} &lt;br /&gt;
{{FeatureTodo|Kopete|Jabber Jingle video support|detlev.casanova@gmail.com|Detlev Casanova}} &lt;br /&gt;
{{FeatureTodo|Kopete|Jabber Jingle ICE support|detlev.casanova@gmail.com|Detlev Casanova}} &lt;br /&gt;
{{FeatureTodo|Kopete|Add support for urls to Bonjour plugin|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureTodo|Kopete|Rich text support for ICQ|kedgedev@gmail.com|Roman Jarosz}} &lt;br /&gt;
{{FeatureDone|Kopete|Extended video controls|fschaefer.oss(at)googlemail.com|Frank Schaefer}} &lt;br /&gt;
{{FeatureTodo|Kopete|Akonadi History Plugin|roideuniverse@gmail.com|Kaushik Saurabh}} &lt;br /&gt;
{{FeatureTodo|Krdc|Connection status screen and reconnect|murraytony@gmail.com|Tony Murray}}&lt;br /&gt;
{{FeatureDone|Krdc|Much improved new connection screen: more info, sortable, interactive, and better use of space|murraytony@gmail.com|Tony Murray}}&lt;br /&gt;
{{FeatureInProgress|KGet|Use plasma notifications to show the progress|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|KGet|Refaktor Torrent-Plugin to base on the newly created libktorrent from extragear|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Better error handling|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdepim  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KAlarm|Port to Akonadi|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|KMail|Port to Akonadi|kde-pim@kde.org|Thomas McGuire}}&lt;br /&gt;
{{FeatureInProgress|KOrganizer|Port to Akonadi|kde-pim@kde.org|Frank Osterfeld, Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KJots|Port to Akonadi|kde-pim@kde.org|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|knowledgebase|port knowledgebase plasmoid to new engine|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|knowledgebase|Add categories|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureDone|Bookmarks widget|New|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureDone|Mandelbrot Wallpaper|Performance improvements|jacob.benoit.1@gmail.com|Benoit Jacob}} &lt;br /&gt;
{{FeatureDone|Mandelbrot Wallpaper|Rendering improvements (through dithering, extra iterations, and better/simpler formulas)|jacob.benoit.1@gmail.com|Benoit Jacob}}&lt;br /&gt;
{{FeatureDone|Mandelbrot Wallpaper|Allow to import/export parameters and to export to PNG images|jacob.benoit.1@gmail.com|Benoit Jacob}}&lt;br /&gt;
{{FeatureDone|Comic Applet|Add option to show &amp;quot;text&amp;quot;, &amp;quot;icons&amp;quot; or both &amp;quot;text and icons&amp;quot; for tabs|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|Comic Applet|Prefetch next and previous comic strip (thx to Miha Cancula)|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureDone|Character Runner|New|akreuzkamp@web.de|Anton Kreuzkamp}}&lt;br /&gt;
{{FeatureDone|KDE Observatory|Performance improvements, new data engine|sandroandrade@kde.org|Sandro Andrade}}&lt;br /&gt;
{{FeatureInProgress|Plasmaboard|Completly rework the current onscreen keyboard and add key layouts for tablets and mids|bjoern@ruberg-wegener.de|Björn Ruberg}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdesdk  =&lt;br /&gt;
&lt;br /&gt;
{| cellspa/cing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate snowball stemmer for glossary|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Continue implementing XLIFF spec|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Segmentation [editing] functionality|shafff@NOSPAMukr.net |Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Remote translation memories|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate with nepomuk (fast stats retrieval, tag cloud - incl sharing!)|shafff@NOSPAMukr.net|Nick Shaforostoff}} &lt;br /&gt;
{{FeatureInProgress|Kate|Replace old snippet plugin through TNG plugin and enhance the usability of the new plugin|jowenn(you_know)kde(here_too)org|Joseph Wenninger}}&lt;br /&gt;
{{FeatureInProgress|Kate|Port the old XML completion plugin (xmltools)|tomastrnka@gmx.com|Tomáš Trnka}} &lt;br /&gt;
{{FeatureInProgress|Umbrello|Add a code importing wizzard|andi.fischer@NOSPAMhispeed.ch|Andi Fischer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdeutils  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Simplify Kerfuffle's API (jobs, interfaces etc) and try to make it stable|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|haraldhv@stud.ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Add feedback for the latest operation in the status bar|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Try multiple plugins for each archive type before failing|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Make the internal previewer optional|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Add a &amp;quot;Preview with...&amp;quot; context menu item|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Make Kerfuffle really thread-safe (and use threads in less places)|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Get rid of the Observer code in Kerfuffle|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|Ark|Make error reporting work as expected in Kerfuffle|kubito@gmail.com|Raphael Kubo da Costa}}&lt;br /&gt;
{{FeatureTodo|KGpg|Make keyserver actions possible to use on multiple keyservers at once|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Improve the titels of the changes to the bytearray to be more descriptive, best using ids to avoid text string|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add a general KPart adapter to Kasten, than finish port of Okteta KPart to Okteta Kasten|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Store bookmarks|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add view profiles, incl. editor/manager|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add KNewStuff support to the structures tool|alex.richardson@gmx.de|Alex Richardson}} &lt;br /&gt;
{{FeatureTodo|Okteta|Allow pinning structure beginning to a specific offset|alex.richardson@gmx.de|Alex Richardson}}&lt;br /&gt;
{{FeatureTodo|printer-applet|Restore feature parity with KDEPrint3 where possible.||Jonathon Riddell, John Layt}} &lt;br /&gt;
{{FeatureDone|kdelirc/kremotecontrol|Transition from KDELirc to KRemoteControl|michael_zanetti@gmx.net|Michael Zanetti}} &lt;br /&gt;
{{FeatureInProgress|KGpg|Add &amp;amp;quot;caff&amp;amp;quot; mode for keysigning|kde@opensource.sf-tec.de|Rolf Eike Beer}}&lt;br /&gt;
{{FeatureInProgress|Okteta|Allow writing structure definitions in JavaScript|alex.richardson@gmx.de|Alex Richardson}} &lt;br /&gt;
{{FeatureInProgress|Okteta|Add possibility to set count of bytes per line/group|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureDone|Okteta|new export formats: S-Record, Intel Hex, Base32, Ascii85, Uuencoding, Xxencoding|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|add QIODevice for AbstractByteArrayModel and make mimetype detection use this instead of only filename |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|Refactor mouse input to controllers for the bytearray widget|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdetoys  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|kteatime|Port to KStatusNotifierItem|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureInProgress|kteatime|Port to KConfigXT|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureInProgress|kteatime|Support categories|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureInProgress|kteatime|Improved indicator icon painting|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|kteatime|Fork multiple instances for multiple timers|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|kteatime|Tea runner|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|kteatime|Improved command line|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|amor|Do some refactoring in amor|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|amor|Improve theme support|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|amor|Implement KNewStuff support|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|amor|Revamp configure dialog|kde@hilefoks.org|Stefan Böhmann}} {{FeatureTodo|amor|Sound support|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureTodo|amor|Add KStatusNotifierItem support|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
{{FeatureInProgress|ktux|Do some refactoring in ktux|kde@hilefoks.org|Stefan Böhmann}} &lt;br /&gt;
{{FeatureTodo|ktux|Revamp configure dialog|kde@hilefoks.org|Stefan Böhmann}} {{FeatureTodo|ktux|Sound support|kde@hilefoks.org|Stefan Böhmann}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Other  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/MovetoGit</id>
		<title>Projects/MovetoGit</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/MovetoGit"/>
				<updated>2010-04-06T16:33:42Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Requirements of KDEPIM and KDAB */ Update progress bar.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the page for co-ordinating KDE's move to [http://git-scm.com/ Git].&lt;br /&gt;
&lt;br /&gt;
If you're interested in helping, you should join the [https://mail.kde.org/mailman/listinfo/kde-scm-interest kde-scm-interest@kde.org] mailinglist and [irc://chat.freenode.net/kde-git #kde-git] on freenode.&lt;br /&gt;
&lt;br /&gt;
Meetings are wednesdays, 19:30 UTC, in #kde-git.&lt;br /&gt;
&lt;br /&gt;
=The Plan=&lt;br /&gt;
&lt;br /&gt;
KDE is, eventually, moving to Git. We will be using [http://gitorious.org/ gitorious.org] servers, with funding from Nokia. We will also have our own mirrors using existing KDE servers.&lt;br /&gt;
&lt;br /&gt;
We are working with the Gitorious people to ensure their server will meet all our needs as well as everyone's privacy requirements. The distributed nature of Git will make it easy for us to migrate off gitorious.org at any time should the need arise (but that's unlikely :).&lt;br /&gt;
&lt;br /&gt;
In the summer of 2009, [http://gitorious.org/amarok Amarok] moved to Gitorious to test the waters and find problems that would affect KDE. Once those problems have been solved, all of KDE will be able to switch.&lt;br /&gt;
&lt;br /&gt;
==Why?==&lt;br /&gt;
&lt;br /&gt;
Git offers many advantages over svn, including offline commits and much easier to keep a feature branch up-to-date. Many KDE developers are already using git-svn, but this tool has its limitations. We want to have the full power of Git available, and we have people willing to do the work necessary to migrate.&lt;br /&gt;
&lt;br /&gt;
==How?==&lt;br /&gt;
&lt;br /&gt;
When we move, KDE's svn repository will be migrated into several Git repos, all on gitorious.org. Main modules such as kdelibs and kdebase will each become one repository. Projects in extragear will each have their own repository. The kde.gitorious.org site will have a list (lists?) of all these repositories using the builtin project wiki. Scripts will be provided for downloading, say, all of extragear, so &amp;quot;moving&amp;quot; a project from kdereview to extragear would simply involve editing a file kept online that defined the location of projects.&lt;br /&gt;
&lt;br /&gt;
A few things will stay in subversion - currently websites, translations and manuals. It's possible they could move to Git later, but they won't be part of the mass migration.&lt;br /&gt;
&lt;br /&gt;
On Gitorious, all KDE developers will be part of the [http://gitorious.org/+kde-developers kde-developers group]. Developers in this group are required to set their &amp;quot;full name&amp;quot; for their Gitorious account to their real name. If you want to be in this group, file a bugreport for sysadmin on bugs.kde.org. :)&lt;br /&gt;
&lt;br /&gt;
The procedure to move a project from svn to gitorious.org can be found in [[Projects/MoveToGit/StepsToMove|Steps to follow for Moving]].&lt;br /&gt;
&lt;br /&gt;
=Blockers=&lt;br /&gt;
&lt;br /&gt;
Tasks that need to get done before we can migrate&lt;br /&gt;
&lt;br /&gt;
==SLA for gitorious.org==&lt;br /&gt;
{{Progress bar|30}}&lt;br /&gt;
'''Owner:''' aseigo, frank&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''Progressing well; will take a while''&lt;br /&gt;
&lt;br /&gt;
: The SLA terms need to be documented as well as who will be footing the bill, if any. TZander has talked to Shortcut AS and sent the relevant information (eg cost) to the KDE eV board.&lt;br /&gt;
&lt;br /&gt;
: aseigo and Frank (and someone?) had a meeting with Shortcut people during tokamak. They asked for a rather large sum of money; negotiations are continuing, but we might want to consider hosting our own server...&lt;br /&gt;
&lt;br /&gt;
==Write / update importing rules for svn2git==&lt;br /&gt;
{{Progress bar|5}}&lt;br /&gt;
'''Owner:''' see below - volunteers needed!&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''sandsmark: stuck on a svn2git bug. sho: ???, tumaix:started to read the docs, cryos: getting started [2010-01-06]''&lt;br /&gt;
&lt;br /&gt;
:The importer is on gitorious.org as svn2git we have a set of rules to tell the importer what svn dirs turn into which git repos and those need constant updating whenever a new branch or tag or project is created. Currently the rules are mostly a rough draft, as seen by the large amount of rule-editing that had to be done for Konversation and Amarok. This has not been done for quite some time and so someone should rsync the svn repo run svn2git and fix the rules and importer whenever the import stops.&lt;br /&gt;
&lt;br /&gt;
:This is a very big task, too big for one person; it's probably best to tackle it one module at a time&lt;br /&gt;
&lt;br /&gt;
:To get started on a module, read [[Projects/MoveToGit/UsingSvn2Git|Using Svn2Git]]&lt;br /&gt;
&lt;br /&gt;
:TZander has done the koffice ruleset as of 2009-01-06&lt;br /&gt;
&lt;br /&gt;
:Jpwhiting has finished (more or less) the kdeaccessibility ruleset 2010-01-24.&lt;br /&gt;
&lt;br /&gt;
:aavci has done the k3b ruleset as of 2010-01-27&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
progress details:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!repo&lt;br /&gt;
!owner&lt;br /&gt;
!%&lt;br /&gt;
!comments&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeaccessibility&lt;br /&gt;
|jpwhiting&lt;br /&gt;
|99&lt;br /&gt;
|&amp;quot;more or less&amp;quot;?&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeadmin&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeartwork&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdebase&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdebindings&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeedu&lt;br /&gt;
|cryos?&lt;br /&gt;
|?&lt;br /&gt;
|update me!&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeexamples&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdegames&lt;br /&gt;
|tumaix?&lt;br /&gt;
|?&lt;br /&gt;
|update me!&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdegraphics&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdelibs&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdemultimedia&lt;br /&gt;
|eean&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdenetwork&lt;br /&gt;
| grundleborg&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdepim&lt;br /&gt;
|tnyblom&lt;br /&gt;
|25&lt;br /&gt;
|Basic rules in place, testing and tweaking pending.&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdepim-runtime&lt;br /&gt;
|tnyblom&lt;br /&gt;
|25&lt;br /&gt;
|Basic rules in place, testing and tweaking pending.&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdepimlibs&lt;br /&gt;
|tnyblom&lt;br /&gt;
|90&lt;br /&gt;
|Some minor history glitches, but mostly done.&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeplasma-addons&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdesdk&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdetoys&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeutils&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdewebdev&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|extragear/sdk/kdevelop&lt;br /&gt;
| apaku&lt;br /&gt;
| 95&lt;br /&gt;
| trunk and branches complete, need to cleanup tags from cvs days.&lt;br /&gt;
|-&lt;br /&gt;
|extragear/sdk/kdevplatform&lt;br /&gt;
| apaku&lt;br /&gt;
| 100&lt;br /&gt;
| done, all tags seem fine all branches are there&lt;br /&gt;
|-&lt;br /&gt;
|extragear/sdk/kdevelop-plugins&lt;br /&gt;
| nsams&lt;br /&gt;
| 100&lt;br /&gt;
| done&lt;br /&gt;
|-&lt;br /&gt;
|extragear/sdk/quanta&lt;br /&gt;
| nsams&lt;br /&gt;
| 99&lt;br /&gt;
| done&lt;br /&gt;
|-&lt;br /&gt;
|extragear/*/*&lt;br /&gt;
|&lt;br /&gt;
|xx&lt;br /&gt;
|expand the *'s later (let's focus on the base modules first)&lt;br /&gt;
|-&lt;br /&gt;
|kde-common&lt;br /&gt;
|mattr&lt;br /&gt;
|75&lt;br /&gt;
|analyzing import history&lt;br /&gt;
|-&lt;br /&gt;
|kdesupport&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|koffice&lt;br /&gt;
|tzander&lt;br /&gt;
|85&lt;br /&gt;
|All but tags are done&lt;br /&gt;
|-&lt;br /&gt;
|promo&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|quality&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|tests&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Requirements of KDEPIM and KDAB ==&lt;br /&gt;
&lt;br /&gt;
{{Progress bar|70}}&lt;br /&gt;
'''Owner:''' Stephen Kelly&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''Proposed workflow identified. Partially depends on KDE policies regarding branches and merging. Gathering estimates for porting of tooling from svn to git. People unfamiliar with the tool are starting to learn to use it.''&lt;br /&gt;
&lt;br /&gt;
'''Estimated completion date''': End of May.&lt;br /&gt;
&lt;br /&gt;
'''Summary of issues'''&lt;br /&gt;
&lt;br /&gt;
* Clean slate&lt;br /&gt;
** The existing backlog of commits which need to be merged or ported to trunk needs to be empty before the change to git so that nothing gets lost. This is a lot of work and will take time. ''Estimate'' 10 calendar weeks.&lt;br /&gt;
* Internal Tools and external customer tools and workflows&lt;br /&gt;
** KDAB is a consumer of KDE software, but also has downstream customers fetching software from where it is developed. That is, KDE SVN. For example packages are created from the tags in tags/kdepim. Some of these downstreams are less close to KDE and depend on current workflows. If KDE SVN is not the place to get those updates anymore, this needs to be communicated to those downstreams, and the tools updated. ''Estimate'' 1 week to port the tools.&lt;br /&gt;
** People who don't currently know how to use git need to get familiar with it so that transitioning will be nearly seamless, and not result in too much development slowdown.&lt;br /&gt;
* Other commitments&lt;br /&gt;
** Project deadlines and other commitments prevent the possibility of blocking off time to work on git migration when so many other things need to be done which have milestones separate to KDE cycles. The required work to convert to git can't be prioritized as highly, and so will take more time.&lt;br /&gt;
* Technical difficulties and limitations.&lt;br /&gt;
** Up to KDE 3.5 there was one kdepim module. For the KDE4 cycle, this was split into kdepimlibs and kdepim. For the above mentioned merging to be possible, it makes sense for both to be in the same git module. This poses extra difficulty to the svn2git script.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Email threads'''&lt;br /&gt;
&lt;br /&gt;
* Mid-January thread on scm-interest: http://thread.gmane.org/gmane.comp.kde.devel.pim/26726&lt;br /&gt;
* Early March thread on kde-core-devel (Till email): http://thread.gmane.org/gmane.comp.kde.devel.core/63915/focus=63970&lt;br /&gt;
* Early March thread on kde-core-devel (Till follow-up):&lt;br /&gt;
http://thread.gmane.org/gmane.comp.kde.devel.core/63915/focus=64069&lt;br /&gt;
&lt;br /&gt;
'''Resolved Issues'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Branch maintenance workflow '''Resolution: http://thread.gmane.org/gmane.comp.kde.scm-interest/1310'''&lt;br /&gt;
** KDAB maintains several branches of legacy versions of KDE for enterprise customer deployments. [http://websvn.kde.org:80/branches/kdepim/enterprise/ Enterprise 3.5] [http://websvn.kde.org:80/branches/kdepim/enterprise4/ Enterprise 4 (based on KDE 4.2)]. The current KDEPIM trunk known as Enterprise 5 and is Akonadi based.&lt;br /&gt;
** Periodically (weekly or so), tags are created from the enterprise branches with bugfixes. http://websvn.kde.org:80/tags/kdepim/ Customers can download the tagged versions with the latest updates. Fixes are merged from the Enterprise 3.5 branch, and into trunk (which sometimes involves a lot of work, as the fix must be ported to Akonadi). Additionally, fixes get merged in the other direction. From official KDE modules into the Enterprise branches.&lt;br /&gt;
** Some fixes from Enterprise 3.5 should not be merged into Enterprise 4 for reasons such as no longer being reproducible. Some fixes do not get merged for a long time because they require so much work that porting the fix or feature is deffered. There needs to be a list of commits which should never be merged (blocked commits), and commits which should be merged, but have not been merged yet. The tool [[Development/Tools/svnmerge.py|svnmerge]] is used to facilitate this. svnmerge uses svn properties to maintain lists of commits that are blocked and that have already been integrated. See for example the svn-blocked and svn-integrated properties here: http://websvn.kde.org:80/trunk/KDE/kdepim/. The lists of commits available to be merged into the various branches are here: http://www.kdab.com/~thomas/avail/&lt;br /&gt;
** There needs to be a way in git to keep track of what commits have been merged, what commits need to be merged, and what commits are blocked. There needs to be a way of merging only specific commits from a branch, but not all, and not blocked commits. Proposed solutions:&lt;br /&gt;
*** git cherry-pick allows 'merging' of individual commits, but does not record where the commits came from. Instead it creates a new commit without any reference to where it came from. This alone is unsuitable.&lt;br /&gt;
*** branch per fix. This would lead to an explosion of branches which is not a problem in git as all commits are branches. It may make gitk un-navigatable. There would need to be a naming convention such as komo-merge-&amp;lt;fixname&amp;gt; for branches which should be merged. The commands &amp;lt;tt&amp;gt;git checkout 4.5 &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;git checkout enterprise4.5 &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;git checkout master &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt;. That could of course be optimized, but gets the point across. If the code has changed so much that the branch is unmergable, but the fix still needs to be in trunk, the system breaks down.&lt;br /&gt;
*** Custom git command with flat text files representing the same information as svnmerge, that is lists of blocked and integrated commits. This is most likely to be a workable solution, possibly together with conventional branch naming.&lt;br /&gt;
&lt;br /&gt;
=Nice to have before the migration=&lt;br /&gt;
&lt;br /&gt;
==Push log==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' nobody!!&lt;br /&gt;
&lt;br /&gt;
'''Status:''' argonel had a hd failure :( [2010-01-06]&lt;br /&gt;
&lt;br /&gt;
:Gitorious records who pushed each commit.  This is useful information because commits themselves can say anything, and there are legitimate reasons to push commits with another person's name.&lt;br /&gt;
&lt;br /&gt;
:Internally, Gitorious stores this information in an SQL database, and the information is viewable through the web interface.  However we want a way to backup this information for the case that Gitorious suddenly go offline.&lt;br /&gt;
&lt;br /&gt;
:quotes from the mailing list:&lt;br /&gt;
&lt;br /&gt;
&amp;gt; How about every repo has, by convention, a &amp;quot;commits&amp;quot; branch and&lt;br /&gt;
&amp;gt; a post commit hook that ensures whatever meta info is required,&lt;br /&gt;
&amp;gt; however it can be gleaned, is also checked into that commits branch.&lt;br /&gt;
&amp;gt; A bit like how gitosis uses a repo to store auth/acl info to help&lt;br /&gt;
&amp;gt; manage the other repos.&lt;br /&gt;
&lt;br /&gt;
That's exactly my idea. And of course it won't be named commits, because we're &lt;br /&gt;
not talking about commits.&lt;br /&gt;
&lt;br /&gt;
It's a push log, similar to a local repository's reflog.&lt;br /&gt;
&lt;br /&gt;
---------------&lt;br /&gt;
&lt;br /&gt;
For every push, log:&lt;br /&gt;
 - who pushed (not the Unix username, which will be &amp;quot;git&amp;quot;)&lt;br /&gt;
 - which branch heads changed (what from, what to)&lt;br /&gt;
 - which tags were created&lt;br /&gt;
 - the state of all other branches and tags&lt;br /&gt;
&lt;br /&gt;
Just use git commit-tree with the empty tree and save everything in the commit &lt;br /&gt;
message, one after the other.&lt;br /&gt;
&lt;br /&gt;
-----------&lt;br /&gt;
&lt;br /&gt;
This does not require help from gitorious.org until the script is actually written: it's just another pre-receive hook for them to install on their servers.&lt;br /&gt;
it *might* also be possible to run it as a post-receive hook (in which case we can do the whole thing ourselves).&lt;br /&gt;
&lt;br /&gt;
if we self-host, then we won't need this.&lt;br /&gt;
&lt;br /&gt;
==Script for downloading virtual KDE hierarchies==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner''': &lt;br /&gt;
&lt;br /&gt;
'''Status:''' &lt;br /&gt;
&lt;br /&gt;
:Let's start over on this.&lt;br /&gt;
what we already have: two build scripts for kde; kdesvn-build and build-tool.&lt;br /&gt;
what we want: an easy way for people to get large chunks of kde, without thinking about what urls the repos come from or having to look things up.&lt;br /&gt;
&lt;br /&gt;
do kde-svnbuild and build-tool satisfy this well enough?&lt;br /&gt;
or do we want a computer-readable file listing all the repos too?&lt;br /&gt;
&lt;br /&gt;
btw, scripty has its own list of repos already. it's just in a rather weird bash file.&lt;br /&gt;
&lt;br /&gt;
'''Links'''&lt;br /&gt;
[http://kdesvn-build.kde.org/]&lt;br /&gt;
[[Projects/MovetoGit/MassCloneScript]]&lt;br /&gt;
[http://rubyforge.org/projects/build-tool/]&lt;br /&gt;
&lt;br /&gt;
==pre-receive hooks==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' ''volunteers needed!!''&lt;br /&gt;
&lt;br /&gt;
* Line endings and encodings&lt;br /&gt;
&lt;br /&gt;
'''Discussion:'''&lt;br /&gt;
this got accidentally marked as done or something, but it's not.&lt;br /&gt;
&lt;br /&gt;
'''Notes:'''&lt;br /&gt;
&amp;gt; &amp;gt; As for line-endings, be careful because Git is different from Subversion.&lt;br /&gt;
&amp;gt; &lt;br /&gt;
&amp;gt; different how?&lt;br /&gt;
&lt;br /&gt;
Just ensure that all files are stored as LF only, except if there's a &lt;br /&gt;
.gitattributes file saying &amp;quot;-crlf&amp;quot; (i.e., allow it to have CRLF).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Snapshot to read-only svn==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:'''&lt;br /&gt;
&lt;br /&gt;
:It's work, but maybe some people would like it. NEEDED for documentation, in order to get it back into SVN for the translators/scripty/?&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:Could be done with a git-svn gateway presumably? -Mike Arthur 19/10/2009 16:04&lt;br /&gt;
&lt;br /&gt;
:if we leave the docbook stuff in svn, we can avoid this a bit longer. --[[User:Chani|Chani]] 23:21, 12 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
==[[Development/Tutorials/Git|Techbase Documentation]]==&lt;br /&gt;
'''Owner:''' Chani, greeneg, - ''please help out!''&lt;br /&gt;
{{Progress bar|10}}&lt;br /&gt;
&lt;br /&gt;
:At least minimal documentation about how to checkout, how to get a Gitorious account, how to request a merge needed, other git documentation and links to other git information would be very useful also.&lt;br /&gt;
&lt;br /&gt;
:see the [[Development/Tutorials/Git|Git Tutorial Page]]. help wanted!!&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Setup git mirrors for cloning==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' No one (help!)&lt;br /&gt;
:Re-purpose the anonsvn servers. This item might be a blocker.&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
==Local pre-commit hooks==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' argonel&lt;br /&gt;
&lt;br /&gt;
:A set of recommended local hooks that give useful warnings could be nice to have.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
...on the other hand, if we get a lot of bikeshedding about what hooks, then it won't be so nice. so I'd put this in the &amp;quot;very optional&amp;quot; pile. --[[User:Chani|Chani]] 19:10, 16 December 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
=Post-migration Issues=&lt;br /&gt;
&lt;br /&gt;
==Website Branding==&lt;br /&gt;
{{Progress bar|2|text=(initial ideas on the table)}}&lt;br /&gt;
'''Owner:''' ruphy&lt;br /&gt;
&lt;br /&gt;
:KDE Gitorious should be branded accordingly, and should be reachable from git.kde.org as well as kde.gitorious.org&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
=Unscheduled &amp;amp; Open=&lt;br /&gt;
&lt;br /&gt;
==Allow tagging without involving sysadmins==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
&lt;br /&gt;
'''Owner:''' johan&lt;br /&gt;
&lt;br /&gt;
:Pushing a tag currently requires permissions to do a force push, which is a repository-wide checkbox that can only be toggled by a kde-developers admin. Thus the workflow for a dev wanting to do a release tag for his app is to ask an admin to enable force pushing, then to push his tag, and then to tell the admin he can disable force pushing again. This doesn't scale, is insecure, and at odds with KDE's open access policy when it comes to managing the repos (right now in SVN, you need sysadmin to create an app dir in /tags for you, but don't have to ask permission for every individual tag). Johan has promised a solution for this.&lt;br /&gt;
&lt;br /&gt;
:Notable discussion points on kde-scm-interest:&lt;br /&gt;
:http://mail.kde.org/pipermail/kde-scm-interest/2009-November/000782.html&lt;br /&gt;
:http://mail.kde.org/pipermail/kde-scm-interest/2009-November/000784.html&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
==Account setup on Gitorious==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
&lt;br /&gt;
'''Owner:''' ''eean, johan, boud, dario''&lt;br /&gt;
&lt;br /&gt;
:Creating an account on Gitorious isn't hard, but asking to be added to the KDE group is inconvenient. For the migration we should set up a system (via email or wiki?) where developers can ask to have an account autocreated for them, or add their existing Gitorious account to a list to be added to the group. Once this is in place an announcement should be sent to all svn accounts explaining the process, and privacy information.&lt;br /&gt;
&lt;br /&gt;
:Basically the currently method of using Bugzilla works fine now and works fine in the longterm. But in the transition month when hundreds of accounts must be created or added, we need a better system. Its important to make it as easy as possible so that we don't lose anyone in the shuffle.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
: I think most people have made their own accounts by now. this isn't really needed.&lt;br /&gt;
&lt;br /&gt;
==post-update hooks==&lt;br /&gt;
{{Progress bar|90}}&lt;br /&gt;
'''Owner:''' ''morice'' ''Ian Monroe''&lt;br /&gt;
&lt;br /&gt;
:* License checker&lt;br /&gt;
&lt;br /&gt;
'''Discussion:'''&lt;br /&gt;
We have a fairly complete set of post-update hooks now. See [http://gitorious.org/remotehook remotehook]. However, it would be nice to have a system that lives on the Gitorious server and/or requires less manual maintenance. But its certainly workable and no longer a blocker.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Completed Tasks=&lt;br /&gt;
&lt;br /&gt;
==Get rid of svn:externals==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' David Faure&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''???''&lt;br /&gt;
&lt;br /&gt;
:not possible with git, broken by design.&lt;br /&gt;
&lt;br /&gt;
::&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
Exists, but ignorable:&lt;br /&gt;
* kdesupport shared-desktop-ontologies (temporary)&lt;br /&gt;
* playground/utils strigi-chemical/test/ctfr&lt;br /&gt;
* playground/devtools kdevelop4-extra-plugins/php/parser/generated/kdevelop-pg-qt&lt;br /&gt;
* playground/devtools kdevelop4-extra-plugins/python/parser/generated/kdevelop-pg-qt&lt;br /&gt;
* playground/devtools kdevelop4-extra-plugins/qmake/parser/generated/kdevelop-pg-qt&lt;br /&gt;
* playground/devtools kommander-plugins/database3/admin&lt;br /&gt;
* playground/devtools kommander-plugins/database/admin&lt;br /&gt;
* playground/devtools kommander-plugins/datetimefuncs/admin&lt;br /&gt;
* playground/devtools kommander-plugins/htmlpart/admin&lt;br /&gt;
* playground/devtools kommander-plugins/httpform/admin&lt;br /&gt;
* playground/devtools kommander-plugins/kparts/admin&lt;br /&gt;
* playground/devtools kommander-plugins/qtactionproxy/admin&lt;br /&gt;
* playground/devtools kommander-plugins/timewidget/admin&lt;br /&gt;
* playground/devtools kommander-plugins/webkit3/admin&lt;br /&gt;
* playground/devtools kpackagemaker/admin&lt;br /&gt;
&lt;br /&gt;
==EBN==&lt;br /&gt;
{{Progress bar|95}}&lt;br /&gt;
'''Owner:''' ''drf''&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''Amarok has EBN checks''&lt;br /&gt;
&lt;br /&gt;
:EBN's krazy checks currently run on kde's svn repo; it needs upgrading to download and check our git repos too.&lt;br /&gt;
&lt;br /&gt;
:This would be easier if there was a repo-list that EBN could parse, as it can no longer just svn up to get everything.&lt;br /&gt;
&lt;br /&gt;
==Talk to people using other distros about git==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' Sebas, Eike&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
* Gentoo: They seem to be prepared for moving their live SVN packages to git; their package manager has easily-reusable classes to fetch from an SCM and moving the ebuilds to using the git class rather than the SVN class should be easy. Positive comments to that end from people in #gentoo-kde.&lt;br /&gt;
* Fedora: Some unhappyness about git because SVN allows them to remotely produce a diff between two SVN URLs (or two revisions of one and the same URL) without making a checkout first, while git requires making a clone. Kevin Kofler (IRC nick Kevin_Kofler, #fedora-kde) says this will make their packager work harder.&lt;br /&gt;
* Debian: Is indifferent about the SCM switch.&lt;br /&gt;
&lt;br /&gt;
==Post Update hooks==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' ''morice, johan, mattr&lt;br /&gt;
&lt;br /&gt;
:List of scripts needed:&lt;br /&gt;
:* BUG/CCMAIL&lt;br /&gt;
:* email/CIA&lt;br /&gt;
&lt;br /&gt;
:Gitorious needs to provide a way for hooks to be called; KDE needs to write said hooks.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:There is a branch of gitorious called web-hooks http://gitorious.org/gitorious/mainline/commits/web-hooks --Panagiotis Papadopoulos 1 November 2009&lt;br /&gt;
:Same situation as commit emails. I can do it but it doesn't scale well and a Gitorious-supported solution would be nicer. --[[User:Eean|eean]] 16:07, 12 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
==Opt-in privacy exception required for kde-developers==&lt;br /&gt;
&amp;lt;strike&amp;gt;&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' ''Gitorious'', ''KDE e.V. Board'', ''eean''&lt;br /&gt;
&lt;br /&gt;
:KDE sysadmins need access to some information that Shortcut could not give them due to their privacy policy. Examples include an email list of all the developers and SQL-level access to information about all the repos in KDE (since it stores who pushes what, information not stored in the git repo itself).&lt;br /&gt;
&lt;br /&gt;
:Such requirements will likely be put into the contract with Shortcut.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
:So the e.V. Board is an owner since this is a legal/contract/money issue. Added myself only because I'm shepherding the issue. --[[User:Eean|eean]] 16:16, 12 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/strike&amp;gt; &lt;br /&gt;
&lt;br /&gt;
:'''We will not get sql access to the information. For the alternative solution see the Push Log issue'''&lt;br /&gt;
&lt;br /&gt;
==Reviewboard==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' darktears&lt;br /&gt;
&lt;br /&gt;
This should be easily done with Gitorious web interface and merge requests actually.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:but reviewboard has features gitorious (right now) doesn't, like commenting on specific lines and not having to set up a merge request. --chani&lt;br /&gt;
::Also email notifications when someone reviews are needed --thomasz&lt;br /&gt;
:We're working on this for someone else right now, so pretty soon --johan-s&lt;br /&gt;
:I consider the latest changes to gitorious to finish this. If more reviewboard features are still needed, and git supports reviewboard, I think this is something we can look at doing post-conversion. --Ian Monroe&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Gitorious Needs a feature to disable merge request emails for certain repos==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' [http://gitorious.org/gitorious Gitorious]&lt;br /&gt;
&lt;br /&gt;
Have a sensible system for merge request emails.  This is now in place - you can join groups, chose whether to have emails on a per repo basis, etc.&lt;br /&gt;
&lt;br /&gt;
==SSH blocked in corporations and universities.==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' ''Unknown''&lt;br /&gt;
&lt;br /&gt;
:Some universities tend to block the SSH port. There should be a workaround to use SSH on some different port. github.com already runs a SSH server on port 443. But that assumes you are using a proxy. It has been found that this hasn't worked with a lot of people, especially those who have a direct connection to the internet ( so some transparent blocking by the ISP ). It would be great if (almost) every KDE developer were to be asked to check if other ports work before KDE made the switch. Otherwise there could be an automated email where the git patches could be sent, and appropriately patched to the right location too.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:http://blog.gitorious.org/2009/10/20/stuck-behind-a-firewall/, and there's always been HTTP cloning (although the current impl. in Git is a bit on the slow side) --johan-s&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Talk to windows guys about git.==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:'''  aseigo&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
They aren't huge fans of git, but are using it. They require a single mainline and can't cope with multiple branches. Otherwise, it's workable, even if it will take an adjustment period.&lt;br /&gt;
&lt;br /&gt;
==pre-commit hooks==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' ''(unknown)''&lt;br /&gt;
&lt;br /&gt;
:acltest, docbook, EOL/UTF-8&lt;br /&gt;
&lt;br /&gt;
:A web hook isn't good enough for these because they have to run and return whether to allow the push, for every single push to every KDE repo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:gitorious guys said they *might* be willing to allow a few scripts on their server for KDE as a special exception, iirc. --chani&lt;br /&gt;
&lt;br /&gt;
:: Yes, at least for basic things, heavier things like doc building would probably have to be mirrored (goes for pre/post) --johan-s&lt;br /&gt;
&lt;br /&gt;
:It turns out that acl and docbook might not be needed so long as web and docs/ stuff stays in svn.&lt;br /&gt;
&lt;br /&gt;
:: Here's where to find the current scripts - http://websvn.kde.org/trunk/kde-common/svn/hooks/ --[[User:Argonel|Argonel]] 23:06, 11 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
::So: this is actually done because it needs no longer to be done? (boud)&lt;br /&gt;
&lt;br /&gt;
::Apparently, so; moving to complete. (aseigo)&lt;br /&gt;
&lt;br /&gt;
= other notes =&lt;br /&gt;
&lt;br /&gt;
==kde-common/accounts==&lt;br /&gt;
&lt;br /&gt;
Someone said: KDE accounts file is no longer necessary---used for mapping svn ID -&amp;gt; email, but we have that now from Gitorious.&lt;br /&gt;
Answer from David Faure: I strongly disagree. We still need a KDE accounts file. This is very useful for finding people's email addresses, and having an overview on the number of active kde contributors; and if we keep it we can even have a kdepim resource again for filling an addressbook from it, for completion in kmail's composer (so you can write to any other kde contributor by just typing his/her name). It's also used for populating automatically the kde-cvs-announce mailing-list, for announcements. kde-common/accounts is our family tree (well, list), let's not get rid of it.&lt;br /&gt;
&lt;br /&gt;
Here's my proposal for a kde-common/accounts replacement for the git era: We write a post-receive hook that looks at every commit and records all known email addresses for a given real name as well as the commit hash and date of when an address was last encountered. We can then present that data in the form of a file like kde-common/accounts, or write a web interface to query it (with nice links to the commits on Gitorious, etc.) --Eike (Sho_ on IRC)&lt;br /&gt;
&lt;br /&gt;
To clear up possible confusion: The author information for a given commit is baked into the commit object itself, and comes from the configuration of the git repository it was created in. It is unrelated to any Gitorious account. Due to the distributed nature of Git, the one who uses his Gitorious account to push a commit need not be the same who created it. If Developer A creates a commit in his local clone and Developer B fetches it into his local clone directly from Developer A's machine and then pushes it into the public repo, the repo will only show a commit from Developer A. The Gitorious website will show that Developer B has pushed up a commit from Developer A, but that data is not contained in the repository. Thus collecting only Gitorious accounts and their mail addresses is insufficient. --Eike&lt;br /&gt;
&lt;br /&gt;
==Random==&lt;br /&gt;
http://mail.kde.org/pipermail/dot-stories/2005-May/000509.html might be a good guide on what docs we need.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
some of this stuff was from the list from GCDS that was in this email [http://markmail.org/message/u6eqfjece7fibfyo http://markmail.org/message/u6eqfjece7fibfyo]&lt;br /&gt;
&lt;br /&gt;
==IRC Meetings==&lt;br /&gt;
* [[Projects/MovetoGit/Meeting1111|Minutes]] of meeting 11 November 2009&lt;br /&gt;
* [[Projects/MovetoGit/Meeting1118|Next meeting]] 18:00, 25 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
= jobs =&lt;br /&gt;
''TODO merge this with the todolists above''&lt;br /&gt;
&lt;br /&gt;
michael jansen: talking to kdesvn-build/mpyne&lt;br /&gt;
:--Done? -&amp;gt; http://kdesvn-build.kde.org/releases/kdesvn-build-1.10.php -- Panagiotis Papadopoulos 1 November 2009&lt;br /&gt;
::Yes, but the __kdesvn-build-remote used in the impl isn't pleasant for users already on git so it still needs more work for them. [[User:Mpyne|Mpyne]] 20:32, 11 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
jonas: domain name &lt;br /&gt;
&lt;br /&gt;
ML: convert to SSH&lt;br /&gt;
&lt;br /&gt;
chani: techbase docs for scripty &lt;br /&gt;
&lt;br /&gt;
sebas/lydia/leo: communication with teams! tell people! keeping track that &lt;br /&gt;
everything is being done.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/MoveToGit/UsingSvn2Git</id>
		<title>Projects/MoveToGit/UsingSvn2Git</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/MoveToGit/UsingSvn2Git"/>
				<updated>2010-03-12T16:20:51Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Getting the tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page documents how to go about getting a KDE module ready for the Great Git Migration of 2010.&lt;br /&gt;
&lt;br /&gt;
=== Getting the tools ===&lt;br /&gt;
&lt;br /&gt;
The necessary tools are hosted at [http://www.gitorious.org/svn2git http://www.gitorious.org/svn2git]. To get started do:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
git clone git://gitorious.org/svn2git/svn2git.git&lt;br /&gt;
git clone git://gitorious.org/svn2git/kde-ruleset.git&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And then install the libsvn-dev package.&lt;br /&gt;
&lt;br /&gt;
This will get you the source code to build svn2git and the KDE ruleset files as they currently exist. Build the svn2git tool before moving on to the next step.&lt;br /&gt;
&lt;br /&gt;
==== Building svn2git ====&lt;br /&gt;
Make sure you have Qt4 installed, then simply issue&lt;br /&gt;
&amp;lt;nowiki&amp;gt;qmake &amp;amp;&amp;amp; make&amp;lt;/nowiki&amp;gt; to build the executable called &amp;quot;svn-all-fast-export&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== How rulesets work ===&lt;br /&gt;
The format for the svn2git rules is pretty simple. First and foremost you&lt;br /&gt;
have to declare some repositories:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
create repository kdelibs&lt;br /&gt;
end repository&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tells svn2git that it should create a git repository called &amp;quot;kdelibs&amp;quot; that we can later on use to put commits into it.&lt;br /&gt;
&lt;br /&gt;
The rest of the file are rules matching specific paths in Subversion, each rule&lt;br /&gt;
specifies what to do with the commits that appeared at the given path. The&lt;br /&gt;
possible actions are ignoring them or adding them to a particular branch in a particular repository. '''Note:''' Ignoring is done by simply leaving out the information about the repository and the branch.&lt;br /&gt;
&lt;br /&gt;
As examples are more explanatory, the following rule would put all commits from 123453 to 456789 from the path /trunk/KDE/kdelibs into the master branch of&lt;br /&gt;
the kdelibs repository:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
match /trunk/KDE/kdelibs/&lt;br /&gt;
  min revision 123453&lt;br /&gt;
  max revision 456789&lt;br /&gt;
  repository kdelibs&lt;br /&gt;
  branch master&lt;br /&gt;
end match&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The min and max revision are useful in cases where the same path in SVN contains&lt;br /&gt;
code for different branches. An example would be KDevelop3, where KDevelop 3.3 was shipped with KDE 3.5 until 3.5.7, 3.5.8 contained KDevelop 3.4 and 3.5.9 contained KDevelop 3.5 and all of those kdevelop versions are now under /branches/KDE/3.5/kdevelop.&lt;br /&gt;
&lt;br /&gt;
The two revision parameters are however not mandatory, if they're left out, then all commits that went to the given matching path in SVN are taken over into the specified branch.&lt;br /&gt;
&lt;br /&gt;
To generate tags with git you use a special format for the branch parameter: refs/tag/&amp;lt;tagname&amp;gt;. So to put all commits from /tags/KDE/4.4.0/kdelibs into the v4.4.0 tag in the kdelibs git repository the rule would be like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
match /tags/KDE/4.4.0/kdelibs/&lt;br /&gt;
  repository kdelibs&lt;br /&gt;
  branch refs/tags/v4.4.0&lt;br /&gt;
end match&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For more examples see the svn2git/samples/ directory and the rules in the kde-ruleset repository.&lt;br /&gt;
&lt;br /&gt;
The recurse action is a hack to tell svn2git to recurse into a directory it &lt;br /&gt;
has just copied or that existed because it is of interest. Example: if we are importing kdelibs, it exists in {{path|trunk/KDE/kdelibs}}. At branching, someone did: &amp;lt;code bash&amp;gt;svn cp $SVNROOT/trunk/KDE $SVNROOT/branches/KDE/4.4&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
SVN recorded in that commit that branches/KDE/4.4 was the only path changed. &lt;br /&gt;
That means the rule &amp;lt;pre&amp;gt;branches/KDE/[^/]+/kdelibs/&amp;lt;/pre&amp;gt; will not match.&lt;br /&gt;
&lt;br /&gt;
We need to tell the tool that something interesting happened inside and it &lt;br /&gt;
should recurse. Then it will apply again all rules to the files that exist at &lt;br /&gt;
that point, at which point the rules will match.&lt;br /&gt;
&lt;br /&gt;
==== Important Details ====&lt;br /&gt;
&lt;br /&gt;
* All matching rules need to end with a '/', else the tool will crash at some point. This is a known bug. The only exception are the rules using the recurse-action.&lt;br /&gt;
&lt;br /&gt;
* Matching rules can use Regular Expressions (according to the QRegExp syntax) in the match line and can use backreferences in the repository and branch parameters using \n (n=1,2,3,...) to reduce the amount of rules.&lt;br /&gt;
&lt;br /&gt;
* The rules form an ordered list that the tool goes through while matching the changed paths for each commit. So if two rules match the same path and neither of the two has more matching criteria, then the rule that is written further up in the file wins. This is useful to exclude certain commits from the extraction process, if you look at the existing kde ruleset  you'll notice that at the top some revisions are ignored.&lt;br /&gt;
&lt;br /&gt;
=== Setting up your system ===&lt;br /&gt;
&lt;br /&gt;
You will need ~60GB (is that correct?) of disk space to get started, as the process requires a copy of the KDE svn database. There is a script that will download this for you (and which can be used to update it periodically using rsync) in kde-ruleset/bin/startSync. By default the startSync script runs rsync in &amp;quot;dry run&amp;quot; mode, so before using it to actually get the svn database edit the startSync script and remove the -n from both rsync lines.&lt;br /&gt;
&lt;br /&gt;
more stuff goes here ...&lt;br /&gt;
&lt;br /&gt;
=== Step-by-Step on writing rules for a module ===&lt;br /&gt;
&lt;br /&gt;
==== Analyzing Subversion history to write rules ====&lt;br /&gt;
First of all you should check wether there are already rules for this module in the kde-ruleset repository. If there are rules already please go down to &amp;quot;Running svn2git&amp;quot;&lt;br /&gt;
&lt;br /&gt;
If there are no rules yet, lets start with the master (aka trunk) branch. The easiest way to find out history with svn is executing:&lt;br /&gt;
&amp;lt;pre&amp;gt;svn log -v --stop-on-copy file:///path/to/kde_svn/trunk/KDE/module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will give you a history of the given module in trunk, it'll stop on the first commit that copied the code from somewhere else. The verbose output will allow you to see where this copy came from.&lt;br /&gt;
&lt;br /&gt;
Now we have a starting point to write a rule, we want all commits from this path in our module repository in the master branch:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
match /trunk/KDE/module/&lt;br /&gt;
  repository module&lt;br /&gt;
  branch master&lt;br /&gt;
end match&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If the log stops at a commit that copied the module from somewhere, we need to&lt;br /&gt;
follow this to also get the history imported from the &amp;quot;old&amp;quot; place the module resided. The same svn command can be used with slightly different path argument:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;svn log -v --stop-on-copy file:///path/to/kde_svn/some/other/path@revision&amp;lt;/pre&amp;gt;&lt;br /&gt;
The @revision is important as the original path usually doesn't exist anymore. With this we can write the next rule to the rules file and repeat until we've finally reached the point where the code was initially imported into svn (or probably cvs in the old days)&lt;br /&gt;
&lt;br /&gt;
Now we can take care of the branches, this is a bit more involved as there may be multiple branches scattered over the /branches directory in svn. You can use the same commands as before to find out the history of a branch if you know the path. This time however you can stop following the source of copy-operations once you've found a source that you've already matched in a rule. That way your branch will be connected to the branch it originated from (which is often trunk aka master) in git.&lt;br /&gt;
&lt;br /&gt;
A useful help with finding branches is svn ls in combination with the path@revision syntax, that way you can view the content of a particular svn directory as it was in an older revision. With this you can even find branches that are not visible (have been deleted) in the current revision.&lt;br /&gt;
&lt;br /&gt;
The rule for putting commits into a git branch in the final repository is only slightly different (the example is for a core module):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
match /branches/KDE/4.4/module&lt;br /&gt;
  repository module&lt;br /&gt;
  branch 4.4&lt;br /&gt;
end match&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And last are the tags, this works the same as branches and trunk, except for using branch refs/tags/v&amp;lt;tag-version&amp;gt; for the branch parameter.&lt;br /&gt;
&lt;br /&gt;
==== Running svn2git ====&lt;br /&gt;
This is the easiest, but most time-consuming part. As example lets say that in our current working directory we have the kde rules repository in kde-ruleset subdir, the svn2git tool in the svn2git subdir and the KDE repository in the kde_svn subdir:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
svn2git/svn-all-fast-export --identity-map kde-ruleset/account-map --rules kde-ruleset/module kde_svn&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will take a few hours usually, but it'll spit out the progress. The tool also writes a logfile to module.log, so in case something goes wrong you can find more details in there.&lt;br /&gt;
&lt;br /&gt;
Once its done you should have a new &amp;quot;module&amp;quot; git repository in your current working directory. &lt;br /&gt;
&lt;br /&gt;
==== Checking for proper history in the new git repository ====&lt;br /&gt;
A very easy way to check wether the history was imported properly is to use the gitk tool from git. It shows you a graphical representation of the history in the git repository which makes it easy to identify where something is wrong.&lt;br /&gt;
&lt;br /&gt;
The tool should be run with the --all switch so it shows all branches.&lt;br /&gt;
&lt;br /&gt;
You can now scroll through the history to check wether things have been imported correctly.&lt;br /&gt;
&lt;br /&gt;
First and foremost there should be the master branch starting at the top with the most recent commit to trunk/ and ending in the oldest commit that imported the code into KDE's svn or cvs repository. &lt;br /&gt;
&lt;br /&gt;
From the master branch there should be several branches going away for each branch you imported. And eventually also branches that start from another non-master branch.&lt;br /&gt;
&lt;br /&gt;
Things that you should look out for are branches that start &amp;quot;nowhere&amp;quot;, that is the first commit in the branch has no parent in another branch or master. This means that svn2git didn't see a commit that created this branch from another using a svn cp command. That can mean that you may have forgotton to add a match rule for some path or that the same path was used for different branches in different revisions. The same applies to tags which have a commit without any parent.&lt;br /&gt;
&lt;br /&gt;
This can usually be fixed by using svn log and svn ls to follow the history of the branch. Eventually you might need to apply the min/max revision paramters.&lt;br /&gt;
&lt;br /&gt;
You'll notice that some tags are looking like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
* * &amp;lt;v1.2.3&amp;gt;&lt;br /&gt;
| |&lt;br /&gt;
* *&lt;br /&gt;
| /&lt;br /&gt;
*&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Thats normal for our tags even if a bit ugly. The reason is that often compile-fixes are done in trunk/ after the tag has been created and then the commit has been merged over to the tag.&lt;br /&gt;
&lt;br /&gt;
Another thing however are tags that are named vx.y.z_124321. These are tags that have been deleted and re-created later. You can usually see that in the svn log history, these tags can either be manually deleted after the repository creation using git tag or you can add rules that ignore certain revisions of the tag-path before the one putting the commits into the git repository:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
match /tags/KDE/3.3.2/kdelibs&lt;br /&gt;
  min revision 424234&lt;br /&gt;
  max revision 424236&lt;br /&gt;
end match&lt;br /&gt;
match /tags/KDE/3.3.2/kdelibs&lt;br /&gt;
  repository kdelibs&lt;br /&gt;
  branch refs/tags/3.3.2&lt;br /&gt;
end match&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you choose to delete them manually please make sure to document this with a textfile or inside the rule file so if someone else does the conversion later again he'll know what manual steps you did.&lt;br /&gt;
&lt;br /&gt;
Before publishing the newly created git repository make sure to repack it. This can greatly reduce it's size (i.e. Phonon's git repository could be shrunken from 18 MB to 5.2 MB)&lt;br /&gt;
&lt;br /&gt;
==== Getting Help ====&lt;br /&gt;
If you run into strange things or can't find a rule for something you can reach the KDE Git migration team on IRC: irc.freenode.org, #kde-git or on the [https://mail.kde.org/mailman/listinfo/kde-scm-interest kde-scm-interest mailinglist]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/MovetoGit</id>
		<title>Projects/MovetoGit</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/MovetoGit"/>
				<updated>2010-03-12T16:03:06Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Requirements of KDEPIM and KDAB */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the page for co-ordinating KDE's move to [http://git-scm.com/ Git].&lt;br /&gt;
&lt;br /&gt;
If you're interested in helping, you should join the [https://mail.kde.org/mailman/listinfo/kde-scm-interest kde-scm-interest@kde.org] mailinglist and [irc://chat.freenode.net/kde-git #kde-git] on freenode.&lt;br /&gt;
&lt;br /&gt;
Meetings are wednesdays, 19:30 UTC, in #kde-git.&lt;br /&gt;
&lt;br /&gt;
=The Plan=&lt;br /&gt;
&lt;br /&gt;
KDE is, eventually, moving to Git. We will be using [http://gitorious.org/ gitorious.org] servers, with funding from Nokia. We will also have our own mirrors using existing KDE servers.&lt;br /&gt;
&lt;br /&gt;
We are working with the Gitorious people to ensure their server will meet all our needs as well as everyone's privacy requirements. The distributed nature of Git will make it easy for us to migrate off gitorious.org at any time should the need arise (but that's unlikely :).&lt;br /&gt;
&lt;br /&gt;
In the summer of 2009, [http://gitorious.org/amarok Amarok] moved to Gitorious to test the waters and find problems that would affect KDE. Once those problems have been solved, all of KDE will be able to switch.&lt;br /&gt;
&lt;br /&gt;
==Why?==&lt;br /&gt;
&lt;br /&gt;
Git offers many advantages over svn, including offline commits and much easier to keep a feature branch up-to-date. Many KDE developers are already using git-svn, but this tool has its limitations. We want to have the full power of Git available, and we have people willing to do the work necessary to migrate.&lt;br /&gt;
&lt;br /&gt;
==How?==&lt;br /&gt;
&lt;br /&gt;
When we move, KDE's svn repository will be migrated into several Git repos, all on gitorious.org. Main modules such as kdelibs and kdebase will each become one repository. Projects in extragear will each have their own repository. The kde.gitorious.org site will have a list (lists?) of all these repositories using the builtin project wiki. Scripts will be provided for downloading, say, all of extragear, so &amp;quot;moving&amp;quot; a project from kdereview to extragear would simply involve editing a file kept online that defined the location of projects.&lt;br /&gt;
&lt;br /&gt;
A few things will stay in subversion - currently websites, translations and manuals. It's possible they could move to Git later, but they won't be part of the mass migration.&lt;br /&gt;
&lt;br /&gt;
On Gitorious, all KDE developers will be part of the [http://gitorious.org/+kde-developers kde-developers group]. Developers in this group are required to set their &amp;quot;full name&amp;quot; for their Gitorious account to their real name. If you want to be in this group, file a bugreport for sysadmin on bugs.kde.org. :)&lt;br /&gt;
&lt;br /&gt;
The procedure to move a project from svn to gitorious.org can be found in [[Projects/MoveToGit/StepsToMove|Steps to follow for Moving]].&lt;br /&gt;
&lt;br /&gt;
=Blockers=&lt;br /&gt;
&lt;br /&gt;
Tasks that need to get done before we can migrate&lt;br /&gt;
&lt;br /&gt;
==SLA for gitorious.org==&lt;br /&gt;
{{Progress bar|30}}&lt;br /&gt;
'''Owner:''' aseigo, frank&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''Progressing well; will take a while''&lt;br /&gt;
&lt;br /&gt;
: The SLA terms need to be documented as well as who will be footing the bill, if any. TZander has talked to Shortcut AS and sent the relevant information (eg cost) to the KDE eV board.&lt;br /&gt;
&lt;br /&gt;
: aseigo and Frank (and someone?) had a meeting with Shortcut people during tokamak. They asked for a rather large sum of money; negotiations are continuing, but we might want to consider hosting our own server...&lt;br /&gt;
&lt;br /&gt;
==Write / update importing rules for svn2git==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' see below - volunteers needed!&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''sandsmark: stuck on a svn2git bug. sho: ???, tumaix:started to read the docs, cryos: getting started [2010-01-06]''&lt;br /&gt;
&lt;br /&gt;
:The importer is on gitorious.org as svn2git we have a set of rules to tell the importer what svn dirs turn into which git repos and those need constant updating whenever a new branch or tag or project is created. Currently the rules are mostly a rough draft, as seen by the large amount of rule-editing that had to be done for Konversation and Amarok. This has not been done for quite some time and so someone should rsync the svn repo run svn2git and fix the rules and importer whenever the import stops.&lt;br /&gt;
&lt;br /&gt;
:This is a very big task, too big for one person; it's probably best to tackle it one module at a time&lt;br /&gt;
&lt;br /&gt;
:To get started on a module, read [[Projects/MoveToGit/UsingSvn2Git|Using Svn2Git]]&lt;br /&gt;
&lt;br /&gt;
:TZander has done the koffice ruleset as of 2009-01-06&lt;br /&gt;
&lt;br /&gt;
:Jpwhiting has finished (more or less) the kdeaccessibility ruleset 2010-01-24.&lt;br /&gt;
&lt;br /&gt;
:aavci has done the k3b ruleset as of 2010-01-27&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
progress details:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!repo&lt;br /&gt;
!owner&lt;br /&gt;
!%&lt;br /&gt;
!comments&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeaccessibility&lt;br /&gt;
|jpwhiting&lt;br /&gt;
|99&lt;br /&gt;
|&amp;quot;more or less&amp;quot;?&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeadmin&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeartwork&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdebase&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdebindings&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeedu&lt;br /&gt;
|cryos?&lt;br /&gt;
|?&lt;br /&gt;
|update me!&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeexamples&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdegames&lt;br /&gt;
|tumaix?&lt;br /&gt;
|?&lt;br /&gt;
|update me!&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdegraphics&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdelibs&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdemultimedia&lt;br /&gt;
|eean&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdenetwork&lt;br /&gt;
| grundleborg&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdepim&lt;br /&gt;
|tnyblom&lt;br /&gt;
|0&lt;br /&gt;
|Just getting started Help needed.&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdepimlibs&lt;br /&gt;
|tnyblom&lt;br /&gt;
|0&lt;br /&gt;
|Just getting started Help needed.&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeplasma-addons&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdesdk&lt;br /&gt;
|mattr&lt;br /&gt;
|0&lt;br /&gt;
|just starting&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdetoys&lt;br /&gt;
|mattr&lt;br /&gt;
|0&lt;br /&gt;
|just starting&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeutils&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdewebdev&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|extragear/sdk/kdevelop&lt;br /&gt;
| apaku&lt;br /&gt;
| 85&lt;br /&gt;
| Misses history from KDE3.3 and older (KDevelop3.2), probably something with layout-changes, might need recurse-action but don't know how to do it.&lt;br /&gt;
|-&lt;br /&gt;
|extragear/sdk/kdevplatform&lt;br /&gt;
| apaku&lt;br /&gt;
| 100&lt;br /&gt;
| done, all tags seem fine all branches are there&lt;br /&gt;
|-&lt;br /&gt;
|extragear/*/*&lt;br /&gt;
|&lt;br /&gt;
|xx&lt;br /&gt;
|expand the *'s later (let's focus on the base modules first)&lt;br /&gt;
|-&lt;br /&gt;
|kde-common&lt;br /&gt;
|mattr&lt;br /&gt;
|0&lt;br /&gt;
|just starting&lt;br /&gt;
|-&lt;br /&gt;
|kdesupport&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|koffice&lt;br /&gt;
|tzander&lt;br /&gt;
|85&lt;br /&gt;
|All but tags are done&lt;br /&gt;
|-&lt;br /&gt;
|promo&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|quality&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|tests&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Requirements of KDEPIM and KDAB ==&lt;br /&gt;
&lt;br /&gt;
{{Progress bar|30}}&lt;br /&gt;
'''Owner:''' Stephen Kelly&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''Proposed workflow identified. Partially depends on KDE policies regarding branches and merging. Gathering estimates for porting of tooling from svn to git. People unfamiliar with the tool are starting to learn to use it.''&lt;br /&gt;
&lt;br /&gt;
'''Estimated completion date''': End of May.&lt;br /&gt;
&lt;br /&gt;
'''Summary of issues'''&lt;br /&gt;
&lt;br /&gt;
* Clean slate&lt;br /&gt;
** The existing backlog of commits which need to be merged or ported to trunk needs to be empty before the change to git so that nothing gets lost. This is a lot of work and will take time. ''Estimate'' 10 calendar weeks.&lt;br /&gt;
* Internal Tools and external customer tools and workflows&lt;br /&gt;
** KDAB is a consumer of KDE software, but also has downstream customers fetching software from where it is developed. That is, KDE SVN. For example packages are created from the tags in tags/kdepim. Some of these downstreams are less close to KDE and depend on current workflows. If KDE SVN is not the place to get those updates anymore, this needs to be communicated to those downstreams, and the tools updated. ''Estimate'' 1 week to port the tools.&lt;br /&gt;
** People who don't currently know how to use git need to get familiar with it so that transitioning will be nearly seamless, and not result in too much development slowdown.&lt;br /&gt;
* Other commitments&lt;br /&gt;
** Project deadlines and other commitments prevent the possibility of blocking off time to work on git migration when so many other things need to be done which have milestones separate to KDE cycles. The required work to convert to git can't be prioritized as highly, and so will take more time.&lt;br /&gt;
* Technical difficulties and limitations.&lt;br /&gt;
** Up to KDE 3.5 there was one kdepim module. For the KDE4 cycle, this was split into kdepimlibs and kdepim. For the above mentioned merging to be possible, it makes sense for both to be in the same git module. This poses extra difficulty to the svn2git script.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Email threads'''&lt;br /&gt;
&lt;br /&gt;
* Mid-January thread on scm-interest: http://thread.gmane.org/gmane.comp.kde.devel.pim/26726&lt;br /&gt;
* Early March thread on kde-core-devel (Till email): http://thread.gmane.org/gmane.comp.kde.devel.core/63915/focus=63970&lt;br /&gt;
* Early March thread on kde-core-devel (Till follow-up):&lt;br /&gt;
http://thread.gmane.org/gmane.comp.kde.devel.core/63915/focus=64069&lt;br /&gt;
&lt;br /&gt;
'''Resolved Issues'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Branch maintenance workflow '''Resolution: http://thread.gmane.org/gmane.comp.kde.scm-interest/1310'''&lt;br /&gt;
** KDAB maintains several branches of legacy versions of KDE for enterprise customer deployments. [http://websvn.kde.org:80/branches/kdepim/enterprise/ Enterprise 3.5] [http://websvn.kde.org:80/branches/kdepim/enterprise4/ Enterprise 4 (based on KDE 4.2)]. The current KDEPIM trunk known as Enterprise 5 and is Akonadi based.&lt;br /&gt;
** Periodically (weekly or so), tags are created from the enterprise branches with bugfixes. http://websvn.kde.org:80/tags/kdepim/ Customers can download the tagged versions with the latest updates. Fixes are merged from the Enterprise 3.5 branch, and into trunk (which sometimes involves a lot of work, as the fix must be ported to Akonadi). Additionally, fixes get merged in the other direction. From official KDE modules into the Enterprise branches.&lt;br /&gt;
** Some fixes from Enterprise 3.5 should not be merged into Enterprise 4 for reasons such as no longer being reproducible. Some fixes do not get merged for a long time because they require so much work that porting the fix or feature is deffered. There needs to be a list of commits which should never be merged (blocked commits), and commits which should be merged, but have not been merged yet. The tool [[Development/Tools/svnmerge.py|svnmerge]] is used to facilitate this. svnmerge uses svn properties to maintain lists of commits that are blocked and that have already been integrated. See for example the svn-blocked and svn-integrated properties here: http://websvn.kde.org:80/trunk/KDE/kdepim/. The lists of commits available to be merged into the various branches are here: http://www.kdab.com/~thomas/avail/&lt;br /&gt;
** There needs to be a way in git to keep track of what commits have been merged, what commits need to be merged, and what commits are blocked. There needs to be a way of merging only specific commits from a branch, but not all, and not blocked commits. Proposed solutions:&lt;br /&gt;
*** git cherry-pick allows 'merging' of individual commits, but does not record where the commits came from. Instead it creates a new commit without any reference to where it came from. This alone is unsuitable.&lt;br /&gt;
*** branch per fix. This would lead to an explosion of branches which is not a problem in git as all commits are branches. It may make gitk un-navigatable. There would need to be a naming convention such as komo-merge-&amp;lt;fixname&amp;gt; for branches which should be merged. The commands &amp;lt;tt&amp;gt;git checkout 4.5 &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;git checkout enterprise4.5 &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;git checkout master &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt;. That could of course be optimized, but gets the point across. If the code has changed so much that the branch is unmergable, but the fix still needs to be in trunk, the system breaks down.&lt;br /&gt;
*** Custom git command with flat text files representing the same information as svnmerge, that is lists of blocked and integrated commits. This is most likely to be a workable solution, possibly together with conventional branch naming.&lt;br /&gt;
&lt;br /&gt;
=Nice to have before the migration=&lt;br /&gt;
&lt;br /&gt;
==Push log==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' nobody!!&lt;br /&gt;
&lt;br /&gt;
'''Status:''' argonel had a hd failure :( [2010-01-06]&lt;br /&gt;
&lt;br /&gt;
:Gitorious records who pushed each commit.  This is useful information because commits themselves can say anything, and there are legitimate reasons to push commits with another person's name.&lt;br /&gt;
&lt;br /&gt;
:Internally, Gitorious stores this information in an SQL database, and the information is viewable through the web interface.  However we want a way to backup this information for the case that Gitorious suddenly go offline.&lt;br /&gt;
&lt;br /&gt;
:quotes from the mailing list:&lt;br /&gt;
&lt;br /&gt;
&amp;gt; How about every repo has, by convention, a &amp;quot;commits&amp;quot; branch and&lt;br /&gt;
&amp;gt; a post commit hook that ensures whatever meta info is required,&lt;br /&gt;
&amp;gt; however it can be gleaned, is also checked into that commits branch.&lt;br /&gt;
&amp;gt; A bit like how gitosis uses a repo to store auth/acl info to help&lt;br /&gt;
&amp;gt; manage the other repos.&lt;br /&gt;
&lt;br /&gt;
That's exactly my idea. And of course it won't be named commits, because we're &lt;br /&gt;
not talking about commits.&lt;br /&gt;
&lt;br /&gt;
It's a push log, similar to a local repository's reflog.&lt;br /&gt;
&lt;br /&gt;
---------------&lt;br /&gt;
&lt;br /&gt;
For every push, log:&lt;br /&gt;
 - who pushed (not the Unix username, which will be &amp;quot;git&amp;quot;)&lt;br /&gt;
 - which branch heads changed (what from, what to)&lt;br /&gt;
 - which tags were created&lt;br /&gt;
 - the state of all other branches and tags&lt;br /&gt;
&lt;br /&gt;
Just use git commit-tree with the empty tree and save everything in the commit &lt;br /&gt;
message, one after the other.&lt;br /&gt;
&lt;br /&gt;
-----------&lt;br /&gt;
&lt;br /&gt;
This does not require help from gitorious.org until the script is actually written: it's just another pre-receive hook for them to install on their servers.&lt;br /&gt;
it *might* also be possible to run it as a post-receive hook (in which case we can do the whole thing ourselves).&lt;br /&gt;
&lt;br /&gt;
if we self-host, then we won't need this.&lt;br /&gt;
&lt;br /&gt;
==Script for downloading virtual KDE hierarchies==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner''': &lt;br /&gt;
&lt;br /&gt;
'''Status:''' &lt;br /&gt;
&lt;br /&gt;
:Let's start over on this.&lt;br /&gt;
what we already have: two build scripts for kde; kdesvn-build and build-tool.&lt;br /&gt;
what we want: an easy way for people to get large chunks of kde, without thinking about what urls the repos come from or having to look things up.&lt;br /&gt;
&lt;br /&gt;
do kde-svnbuild and build-tool satisfy this well enough?&lt;br /&gt;
or do we want a computer-readable file listing all the repos too?&lt;br /&gt;
&lt;br /&gt;
btw, scripty has its own list of repos already. it's just in a rather weird bash file.&lt;br /&gt;
&lt;br /&gt;
'''Links'''&lt;br /&gt;
[http://kdesvn-build.kde.org/]&lt;br /&gt;
[[Projects/MovetoGit/MassCloneScript]]&lt;br /&gt;
[http://rubyforge.org/projects/build-tool/]&lt;br /&gt;
&lt;br /&gt;
==pre-receive hooks==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' ''volunteers needed!!''&lt;br /&gt;
&lt;br /&gt;
* Line endings and encodings&lt;br /&gt;
&lt;br /&gt;
'''Discussion:'''&lt;br /&gt;
this got accidentally marked as done or something, but it's not.&lt;br /&gt;
&lt;br /&gt;
'''Notes:'''&lt;br /&gt;
&amp;gt; &amp;gt; As for line-endings, be careful because Git is different from Subversion.&lt;br /&gt;
&amp;gt; &lt;br /&gt;
&amp;gt; different how?&lt;br /&gt;
&lt;br /&gt;
Just ensure that all files are stored as LF only, except if there's a &lt;br /&gt;
.gitattributes file saying &amp;quot;-crlf&amp;quot; (i.e., allow it to have CRLF).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Snapshot to read-only svn==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:'''&lt;br /&gt;
&lt;br /&gt;
:It's work, but maybe some people would like it. NEEDED for documentation, in order to get it back into SVN for the translators/scripty/?&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:Could be done with a git-svn gateway presumably? -Mike Arthur 19/10/2009 16:04&lt;br /&gt;
&lt;br /&gt;
:if we leave the docbook stuff in svn, we can avoid this a bit longer. --[[User:Chani|Chani]] 23:21, 12 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
==[[Development/Tutorials/Git|Techbase Documentation]]==&lt;br /&gt;
'''Owner:''' Chani, greeneg, - ''please help out!''&lt;br /&gt;
{{Progress bar|10}}&lt;br /&gt;
&lt;br /&gt;
:At least minimal documentation about how to checkout, how to get a Gitorious account, how to request a merge needed, other git documentation and links to other git information would be very useful also.&lt;br /&gt;
&lt;br /&gt;
:see the [[Development/Tutorials/Git|Git Tutorial Page]]. help wanted!!&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Setup git mirrors for cloning==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' No one (help!)&lt;br /&gt;
:Re-purpose the anonsvn servers. This item might be a blocker.&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
==Local pre-commit hooks==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' argonel&lt;br /&gt;
&lt;br /&gt;
:A set of recommended local hooks that give useful warnings could be nice to have.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
...on the other hand, if we get a lot of bikeshedding about what hooks, then it won't be so nice. so I'd put this in the &amp;quot;very optional&amp;quot; pile. --[[User:Chani|Chani]] 19:10, 16 December 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
=Post-migration Issues=&lt;br /&gt;
&lt;br /&gt;
==Website Branding==&lt;br /&gt;
{{Progress bar|2|text=(initial ideas on the table)}}&lt;br /&gt;
'''Owner:''' ruphy&lt;br /&gt;
&lt;br /&gt;
:KDE Gitorious should be branded accordingly, and should be reachable from git.kde.org as well as kde.gitorious.org&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
=Unscheduled &amp;amp; Open=&lt;br /&gt;
&lt;br /&gt;
==Allow tagging without involving sysadmins==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
&lt;br /&gt;
'''Owner:''' johan&lt;br /&gt;
&lt;br /&gt;
:Pushing a tag currently requires permissions to do a force push, which is a repository-wide checkbox that can only be toggled by a kde-developers admin. Thus the workflow for a dev wanting to do a release tag for his app is to ask an admin to enable force pushing, then to push his tag, and then to tell the admin he can disable force pushing again. This doesn't scale, is insecure, and at odds with KDE's open access policy when it comes to managing the repos (right now in SVN, you need sysadmin to create an app dir in /tags for you, but don't have to ask permission for every individual tag). Johan has promised a solution for this.&lt;br /&gt;
&lt;br /&gt;
:Notable discussion points on kde-scm-interest:&lt;br /&gt;
:http://mail.kde.org/pipermail/kde-scm-interest/2009-November/000782.html&lt;br /&gt;
:http://mail.kde.org/pipermail/kde-scm-interest/2009-November/000784.html&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
==Account setup on Gitorious==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
&lt;br /&gt;
'''Owner:''' ''eean, johan, boud, dario''&lt;br /&gt;
&lt;br /&gt;
:Creating an account on Gitorious isn't hard, but asking to be added to the KDE group is inconvenient. For the migration we should set up a system (via email or wiki?) where developers can ask to have an account autocreated for them, or add their existing Gitorious account to a list to be added to the group. Once this is in place an announcement should be sent to all svn accounts explaining the process, and privacy information.&lt;br /&gt;
&lt;br /&gt;
:Basically the currently method of using Bugzilla works fine now and works fine in the longterm. But in the transition month when hundreds of accounts must be created or added, we need a better system. Its important to make it as easy as possible so that we don't lose anyone in the shuffle.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
: I think most people have made their own accounts by now. this isn't really needed.&lt;br /&gt;
&lt;br /&gt;
==post-update hooks==&lt;br /&gt;
{{Progress bar|90}}&lt;br /&gt;
'''Owner:''' ''morice'' ''Ian Monroe''&lt;br /&gt;
&lt;br /&gt;
:* License checker&lt;br /&gt;
&lt;br /&gt;
'''Discussion:'''&lt;br /&gt;
We have a fairly complete set of post-update hooks now. See [http://gitorious.org/remotehook remotehook]. However, it would be nice to have a system that lives on the Gitorious server and/or requires less manual maintenance. But its certainly workable and no longer a blocker.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Completed Tasks=&lt;br /&gt;
&lt;br /&gt;
==Get rid of svn:externals==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' David Faure&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''???''&lt;br /&gt;
&lt;br /&gt;
:not possible with git, broken by design.&lt;br /&gt;
&lt;br /&gt;
::&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
Exists, but ignorable:&lt;br /&gt;
* kdesupport shared-desktop-ontologies (temporary)&lt;br /&gt;
* playground/utils strigi-chemical/test/ctfr&lt;br /&gt;
* playground/devtools kdevelop4-extra-plugins/php/parser/generated/kdevelop-pg-qt&lt;br /&gt;
* playground/devtools kdevelop4-extra-plugins/python/parser/generated/kdevelop-pg-qt&lt;br /&gt;
* playground/devtools kdevelop4-extra-plugins/qmake/parser/generated/kdevelop-pg-qt&lt;br /&gt;
* playground/devtools kommander-plugins/database3/admin&lt;br /&gt;
* playground/devtools kommander-plugins/database/admin&lt;br /&gt;
* playground/devtools kommander-plugins/datetimefuncs/admin&lt;br /&gt;
* playground/devtools kommander-plugins/htmlpart/admin&lt;br /&gt;
* playground/devtools kommander-plugins/httpform/admin&lt;br /&gt;
* playground/devtools kommander-plugins/kparts/admin&lt;br /&gt;
* playground/devtools kommander-plugins/qtactionproxy/admin&lt;br /&gt;
* playground/devtools kommander-plugins/timewidget/admin&lt;br /&gt;
* playground/devtools kommander-plugins/webkit3/admin&lt;br /&gt;
* playground/devtools kpackagemaker/admin&lt;br /&gt;
&lt;br /&gt;
==EBN==&lt;br /&gt;
{{Progress bar|95}}&lt;br /&gt;
'''Owner:''' ''drf''&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''Amarok has EBN checks''&lt;br /&gt;
&lt;br /&gt;
:EBN's krazy checks currently run on kde's svn repo; it needs upgrading to download and check our git repos too.&lt;br /&gt;
&lt;br /&gt;
:This would be easier if there was a repo-list that EBN could parse, as it can no longer just svn up to get everything.&lt;br /&gt;
&lt;br /&gt;
==Talk to people using other distros about git==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' Sebas, Eike&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
* Gentoo: They seem to be prepared for moving their live SVN packages to git; their package manager has easily-reusable classes to fetch from an SCM and moving the ebuilds to using the git class rather than the SVN class should be easy. Positive comments to that end from people in #gentoo-kde.&lt;br /&gt;
* Fedora: Some unhappyness about git because SVN allows them to remotely produce a diff between two SVN URLs (or two revisions of one and the same URL) without making a checkout first, while git requires making a clone. Kevin Kofler (IRC nick Kevin_Kofler, #fedora-kde) says this will make their packager work harder.&lt;br /&gt;
* Debian: Is indifferent about the SCM switch.&lt;br /&gt;
&lt;br /&gt;
==Post Update hooks==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' ''morice, johan, mattr&lt;br /&gt;
&lt;br /&gt;
:List of scripts needed:&lt;br /&gt;
:* BUG/CCMAIL&lt;br /&gt;
:* email/CIA&lt;br /&gt;
&lt;br /&gt;
:Gitorious needs to provide a way for hooks to be called; KDE needs to write said hooks.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:There is a branch of gitorious called web-hooks http://gitorious.org/gitorious/mainline/commits/web-hooks --Panagiotis Papadopoulos 1 November 2009&lt;br /&gt;
:Same situation as commit emails. I can do it but it doesn't scale well and a Gitorious-supported solution would be nicer. --[[User:Eean|eean]] 16:07, 12 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
==Opt-in privacy exception required for kde-developers==&lt;br /&gt;
&amp;lt;strike&amp;gt;&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' ''Gitorious'', ''KDE e.V. Board'', ''eean''&lt;br /&gt;
&lt;br /&gt;
:KDE sysadmins need access to some information that Shortcut could not give them due to their privacy policy. Examples include an email list of all the developers and SQL-level access to information about all the repos in KDE (since it stores who pushes what, information not stored in the git repo itself).&lt;br /&gt;
&lt;br /&gt;
:Such requirements will likely be put into the contract with Shortcut.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
:So the e.V. Board is an owner since this is a legal/contract/money issue. Added myself only because I'm shepherding the issue. --[[User:Eean|eean]] 16:16, 12 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/strike&amp;gt; &lt;br /&gt;
&lt;br /&gt;
:'''We will not get sql access to the information. For the alternative solution see the Push Log issue'''&lt;br /&gt;
&lt;br /&gt;
==Reviewboard==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' darktears&lt;br /&gt;
&lt;br /&gt;
This should be easily done with Gitorious web interface and merge requests actually.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:but reviewboard has features gitorious (right now) doesn't, like commenting on specific lines and not having to set up a merge request. --chani&lt;br /&gt;
::Also email notifications when someone reviews are needed --thomasz&lt;br /&gt;
:We're working on this for someone else right now, so pretty soon --johan-s&lt;br /&gt;
:I consider the latest changes to gitorious to finish this. If more reviewboard features are still needed, and git supports reviewboard, I think this is something we can look at doing post-conversion. --Ian Monroe&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Gitorious Needs a feature to disable merge request emails for certain repos==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' [http://gitorious.org/gitorious Gitorious]&lt;br /&gt;
&lt;br /&gt;
Have a sensible system for merge request emails.  This is now in place - you can join groups, chose whether to have emails on a per repo basis, etc.&lt;br /&gt;
&lt;br /&gt;
==SSH blocked in corporations and universities.==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' ''Unknown''&lt;br /&gt;
&lt;br /&gt;
:Some universities tend to block the SSH port. There should be a workaround to use SSH on some different port. github.com already runs a SSH server on port 443. But that assumes you are using a proxy. It has been found that this hasn't worked with a lot of people, especially those who have a direct connection to the internet ( so some transparent blocking by the ISP ). It would be great if (almost) every KDE developer were to be asked to check if other ports work before KDE made the switch. Otherwise there could be an automated email where the git patches could be sent, and appropriately patched to the right location too.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:http://blog.gitorious.org/2009/10/20/stuck-behind-a-firewall/, and there's always been HTTP cloning (although the current impl. in Git is a bit on the slow side) --johan-s&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Talk to windows guys about git.==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:'''  aseigo&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
They aren't huge fans of git, but are using it. They require a single mainline and can't cope with multiple branches. Otherwise, it's workable, even if it will take an adjustment period.&lt;br /&gt;
&lt;br /&gt;
==pre-commit hooks==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' ''(unknown)''&lt;br /&gt;
&lt;br /&gt;
:acltest, docbook, EOL/UTF-8&lt;br /&gt;
&lt;br /&gt;
:A web hook isn't good enough for these because they have to run and return whether to allow the push, for every single push to every KDE repo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:gitorious guys said they *might* be willing to allow a few scripts on their server for KDE as a special exception, iirc. --chani&lt;br /&gt;
&lt;br /&gt;
:: Yes, at least for basic things, heavier things like doc building would probably have to be mirrored (goes for pre/post) --johan-s&lt;br /&gt;
&lt;br /&gt;
:It turns out that acl and docbook might not be needed so long as web and docs/ stuff stays in svn.&lt;br /&gt;
&lt;br /&gt;
:: Here's where to find the current scripts - http://websvn.kde.org/trunk/kde-common/svn/hooks/ --[[User:Argonel|Argonel]] 23:06, 11 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
::So: this is actually done because it needs no longer to be done? (boud)&lt;br /&gt;
&lt;br /&gt;
::Apparently, so; moving to complete. (aseigo)&lt;br /&gt;
&lt;br /&gt;
= other notes =&lt;br /&gt;
&lt;br /&gt;
==kde-common/accounts==&lt;br /&gt;
&lt;br /&gt;
Someone said: KDE accounts file is no longer necessary---used for mapping svn ID -&amp;gt; email, but we have that now from Gitorious.&lt;br /&gt;
Answer from David Faure: I strongly disagree. We still need a KDE accounts file. This is very useful for finding people's email addresses, and having an overview on the number of active kde contributors; and if we keep it we can even have a kdepim resource again for filling an addressbook from it, for completion in kmail's composer (so you can write to any other kde contributor by just typing his/her name). It's also used for populating automatically the kde-cvs-announce mailing-list, for announcements. kde-common/accounts is our family tree (well, list), let's not get rid of it.&lt;br /&gt;
&lt;br /&gt;
Here's my proposal for a kde-common/accounts replacement for the git era: We write a post-receive hook that looks at every commit and records all known email addresses for a given real name as well as the commit hash and date of when an address was last encountered. We can then present that data in the form of a file like kde-common/accounts, or write a web interface to query it (with nice links to the commits on Gitorious, etc.) --Eike (Sho_ on IRC)&lt;br /&gt;
&lt;br /&gt;
To clear up possible confusion: The author information for a given commit is baked into the commit object itself, and comes from the configuration of the git repository it was created in. It is unrelated to any Gitorious account. Due to the distributed nature of Git, the one who uses his Gitorious account to push a commit need not be the same who created it. If Developer A creates a commit in his local clone and Developer B fetches it into his local clone directly from Developer A's machine and then pushes it into the public repo, the repo will only show a commit from Developer A. The Gitorious website will show that Developer B has pushed up a commit from Developer A, but that data is not contained in the repository. Thus collecting only Gitorious accounts and their mail addresses is insufficient. --Eike&lt;br /&gt;
&lt;br /&gt;
==Random==&lt;br /&gt;
http://mail.kde.org/pipermail/dot-stories/2005-May/000509.html might be a good guide on what docs we need.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
some of this stuff was from the list from GCDS that was in this email [http://markmail.org/message/u6eqfjece7fibfyo http://markmail.org/message/u6eqfjece7fibfyo]&lt;br /&gt;
&lt;br /&gt;
==IRC Meetings==&lt;br /&gt;
* [[Projects/MovetoGit/Meeting1111|Minutes]] of meeting 11 November 2009&lt;br /&gt;
* [[Projects/MovetoGit/Meeting1118|Next meeting]] 18:00, 25 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
= jobs =&lt;br /&gt;
''TODO merge this with the todolists above''&lt;br /&gt;
&lt;br /&gt;
michael jansen: talking to kdesvn-build/mpyne&lt;br /&gt;
:--Done? -&amp;gt; http://kdesvn-build.kde.org/releases/kdesvn-build-1.10.php -- Panagiotis Papadopoulos 1 November 2009&lt;br /&gt;
::Yes, but the __kdesvn-build-remote used in the impl isn't pleasant for users already on git so it still needs more work for them. [[User:Mpyne|Mpyne]] 20:32, 11 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
jonas: domain name &lt;br /&gt;
&lt;br /&gt;
ML: convert to SSH&lt;br /&gt;
&lt;br /&gt;
chani: techbase docs for scripty &lt;br /&gt;
&lt;br /&gt;
sebas/lydia/leo: communication with teams! tell people! keeping track that &lt;br /&gt;
everything is being done.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/MovetoGit</id>
		<title>Projects/MovetoGit</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/MovetoGit"/>
				<updated>2010-03-08T12:15:34Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Restore accidental deletion of most content.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the page for co-ordinating KDE's move to [http://git-scm.com/ Git].&lt;br /&gt;
&lt;br /&gt;
If you're interested in helping, you should join the [https://mail.kde.org/mailman/listinfo/kde-scm-interest kde-scm-interest@kde.org] mailinglist and [irc://chat.freenode.net/kde-git #kde-git] on freenode.&lt;br /&gt;
&lt;br /&gt;
Meetings are wednesdays, 19:30 UTC, in #kde-git.&lt;br /&gt;
&lt;br /&gt;
=The Plan=&lt;br /&gt;
&lt;br /&gt;
KDE is, eventually, moving to Git. We will be using [http://gitorious.org/ gitorious.org] servers, with funding from Nokia. We will also have our own mirrors using existing KDE servers.&lt;br /&gt;
&lt;br /&gt;
We are working with the Gitorious people to ensure their server will meet all our needs as well as everyone's privacy requirements. The distributed nature of Git will make it easy for us to migrate off gitorious.org at any time should the need arise (but that's unlikely :).&lt;br /&gt;
&lt;br /&gt;
In the summer of 2009, [http://gitorious.org/amarok Amarok] moved to Gitorious to test the waters and find problems that would affect KDE. Once those problems have been solved, all of KDE will be able to switch.&lt;br /&gt;
&lt;br /&gt;
==Why?==&lt;br /&gt;
&lt;br /&gt;
Git offers many advantages over svn, including offline commits and much easier to keep a feature branch up-to-date. Many KDE developers are already using git-svn, but this tool has its limitations. We want to have the full power of Git available, and we have people willing to do the work necessary to migrate.&lt;br /&gt;
&lt;br /&gt;
==How?==&lt;br /&gt;
&lt;br /&gt;
When we move, KDE's svn repository will be migrated into several Git repos, all on gitorious.org. Main modules such as kdelibs and kdebase will each become one repository. Projects in extragear will each have their own repository. The kde.gitorious.org site will have a list (lists?) of all these repositories using the builtin project wiki. Scripts will be provided for downloading, say, all of extragear, so &amp;quot;moving&amp;quot; a project from kdereview to extragear would simply involve editing a file kept online that defined the location of projects.&lt;br /&gt;
&lt;br /&gt;
A few things will stay in subversion - currently websites, translations and manuals. It's possible they could move to Git later, but they won't be part of the mass migration.&lt;br /&gt;
&lt;br /&gt;
On Gitorious, all KDE developers will be part of the [http://gitorious.org/+kde-developers kde-developers group]. Developers in this group are required to set their &amp;quot;full name&amp;quot; for their Gitorious account to their real name. If you want to be in this group, file a bugreport for sysadmin on bugs.kde.org. :)&lt;br /&gt;
&lt;br /&gt;
The procedure to move a project from svn to gitorious.org can be found in [[Projects/MoveToGit/StepsToMove|Steps to follow for Moving]].&lt;br /&gt;
&lt;br /&gt;
=Blockers=&lt;br /&gt;
&lt;br /&gt;
Tasks that need to get done before we can migrate&lt;br /&gt;
&lt;br /&gt;
==SLA for gitorious.org==&lt;br /&gt;
{{Progress bar|30}}&lt;br /&gt;
'''Owner:''' aseigo, frank&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''Progressing well; will take a while''&lt;br /&gt;
&lt;br /&gt;
: The SLA terms need to be documented as well as who will be footing the bill, if any. TZander has talked to Shortcut AS and sent the relevant information (eg cost) to the KDE eV board.&lt;br /&gt;
&lt;br /&gt;
: aseigo and Frank (and someone?) had a meeting with Shortcut people during tokamak. They asked for a rather large sum of money; negotiations are continuing, but we might want to consider hosting our own server...&lt;br /&gt;
&lt;br /&gt;
==Write / update importing rules for svn2git==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' see below - volunteers needed!&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''sandsmark: stuck on a svn2git bug. sho: ???, tumaix:started to read the docs, cryos: getting started [2010-01-06]''&lt;br /&gt;
&lt;br /&gt;
:The importer is on gitorious.org as svn2git we have a set of rules to tell the importer what svn dirs turn into which git repos and those need constant updating whenever a new branch or tag or project is created. Currently the rules are mostly a rough draft, as seen by the large amount of rule-editing that had to be done for Konversation and Amarok. This has not been done for quite some time and so someone should rsync the svn repo run svn2git and fix the rules and importer whenever the import stops.&lt;br /&gt;
&lt;br /&gt;
:This is a very big task, too big for one person; it's probably best to tackle it one module at a time&lt;br /&gt;
&lt;br /&gt;
:To get started on a module, read [[Projects/MoveToGit/UsingSvn2Git|Using Svn2Git]]&lt;br /&gt;
&lt;br /&gt;
:TZander has done the koffice ruleset as of 2009-01-06&lt;br /&gt;
&lt;br /&gt;
:Jpwhiting has finished (more or less) the kdeaccessibility ruleset 2010-01-24.&lt;br /&gt;
&lt;br /&gt;
:aavci has done the k3b ruleset as of 2010-01-27&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
progress details:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!repo&lt;br /&gt;
!owner&lt;br /&gt;
!%&lt;br /&gt;
!comments&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeaccessibility&lt;br /&gt;
|jpwhiting&lt;br /&gt;
|99&lt;br /&gt;
|&amp;quot;more or less&amp;quot;?&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeadmin&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeartwork&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdebase&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdebindings&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeedu&lt;br /&gt;
|cryos?&lt;br /&gt;
|?&lt;br /&gt;
|update me!&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeexamples&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdegames&lt;br /&gt;
|tumaix?&lt;br /&gt;
|?&lt;br /&gt;
|update me!&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdegraphics&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdelibs&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdemultimedia&lt;br /&gt;
|eean&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdenetwork&lt;br /&gt;
| grundleborg&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdepim&lt;br /&gt;
|tnyblom&lt;br /&gt;
|0&lt;br /&gt;
|Just getting started Help needed.&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdepimlibs&lt;br /&gt;
|tnyblom&lt;br /&gt;
|0&lt;br /&gt;
|Just getting started Help needed.&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeplasma-addons&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdesdk&lt;br /&gt;
|mattr&lt;br /&gt;
|0&lt;br /&gt;
|just starting&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdetoys&lt;br /&gt;
|mattr&lt;br /&gt;
|0&lt;br /&gt;
|just starting&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeutils&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdewebdev&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|extragear/sdk/kdevelop&lt;br /&gt;
| apaku&lt;br /&gt;
| 85&lt;br /&gt;
| Misses history from KDE3.3 and older (KDevelop3.2), probably something with layout-changes, might need recurse-action but don't know how to do it.&lt;br /&gt;
|-&lt;br /&gt;
|extragear/sdk/kdevplatform&lt;br /&gt;
| apaku&lt;br /&gt;
| 100&lt;br /&gt;
| done, all tags seem fine all branches are there&lt;br /&gt;
|-&lt;br /&gt;
|extragear/*/*&lt;br /&gt;
|&lt;br /&gt;
|xx&lt;br /&gt;
|expand the *'s later (let's focus on the base modules first)&lt;br /&gt;
|-&lt;br /&gt;
|kde-common&lt;br /&gt;
|mattr&lt;br /&gt;
|0&lt;br /&gt;
|just starting&lt;br /&gt;
|-&lt;br /&gt;
|kdesupport&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|koffice&lt;br /&gt;
|tzander&lt;br /&gt;
|100&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|promo&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|quality&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|tests&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Requirements of KDEPIM and KDAB ==&lt;br /&gt;
&lt;br /&gt;
{{Progress bar|10}}&lt;br /&gt;
'''Owner:''' till (To be reassigned)&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''Requirements of tools and for workflow identified. Someone from KDAB will be nominated to co-ordinate and communicate specific requirements''&lt;br /&gt;
&lt;br /&gt;
'''Summary of issues'''&lt;br /&gt;
&lt;br /&gt;
* Branch maintenance workflow&lt;br /&gt;
** KDAB maintains several branches of legacy versions of KDE for enterprise customer deployments. [http://websvn.kde.org:80/branches/kdepim/enterprise/ Enterprise 3.5] [http://websvn.kde.org:80/branches/kdepim/enterprise4/ Enterprise 4 (based on KDE 4.2)]. The current KDEPIM trunk known as Enterprise 5 and is Akonadi based.&lt;br /&gt;
** Periodically (weekly or so), tags are created from the enterprise branches with bugfixes. http://websvn.kde.org:80/tags/kdepim/ Customers can download the tagged versions with the latest updates. Fixes are merged from the Enterprise 3.5 branch, and into trunk (which sometimes involves a lot of work, as the fix must be ported to Akonadi). Additionally, fixes get merged in the other direction. From official KDE modules into the Enterprise branches.&lt;br /&gt;
** Some fixes from Enterprise 3.5 should not be merged into Enterprise 4 for reasons such as no longer being reproducible. Some fixes do not get merged for a long time because they require so much work that porting the fix or feature is deffered. There needs to be a list of commits which should never be merged (blocked commits), and commits which should be merged, but have not been merged yet. The tool [[Development/Tools/svnmerge.py|svnmerge]] is used to facilitate this. svnmerge uses svn properties to maintain lists of commits that are blocked and that have already been integrated. See for example the svn-blocked and svn-integrated properties here: http://websvn.kde.org:80/trunk/KDE/kdepim/. The lists of commits available to be merged into the various branches are here: http://www.kdab.com/~thomas/avail/&lt;br /&gt;
** There needs to be a way in git to keep track of what commits have been merged, what commits need to be merged, and what commits are blocked. There needs to be a way of merging only specific commits from a branch, but not all, and not blocked commits. Proposed solutions:&lt;br /&gt;
*** git cherry-pick allows 'merging' of individual commits, but does not record where the commits came from. Instead it creates a new commit without any reference to where it came from. This alone is unsuitable.&lt;br /&gt;
*** branch per fix. This would lead to an explosion of branches which is not a problem in git as all commits are branches. It may make gitk un-navigatable. There would need to be a naming convention such as komo-merge-&amp;lt;fixname&amp;gt; for branches which should be merged. The commands &amp;lt;tt&amp;gt;git checkout 4.5 &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;git checkout enterprise4.5 &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;git checkout master &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt;. That could of course be optimized, but gets the point across. If the code has changed so much that the branch is unmergable, but the fix still needs to be in trunk, the system breaks down.&lt;br /&gt;
*** Custom git command with flat text files representing the same information as svnmerge, that is lists of blocked and integrated commits. This is most likely to be a workable solution, possibly together with conventional branch naming.&lt;br /&gt;
* Clean slate&lt;br /&gt;
** The existing backlog of commits which need to be merged or ported to trunk needs to be empty before the change to git so that nothing gets lost. This is a lot of work and will take time.&lt;br /&gt;
* Internal Tools and external customer tools and workflows&lt;br /&gt;
** KDAB is a consumer of KDE software, but also has downstream customers fetching software from where it is developed. That is, KDE SVN. For example packages are created from the tags in tags/kdepim. Some of these downstreams are less close to KDE and depend on current workflows. If KDE SVN is not the place to get those updates anymore, this needs to be communicated to those downstreams, and the tools updated.&lt;br /&gt;
** People who don't currently know how to use git need to get familiar with it so that transitioning will be nearly seamless, and not result in too much development slowdown.&lt;br /&gt;
* Other commitments&lt;br /&gt;
** Project deadlines and other commitments prevent the possiblity of blocking off time to work on git migration when so many other things need to be done which have milestones separate to KDE cycles. The required work to convert to git can't be prioritized as highly, and so will take more time.&lt;br /&gt;
* Technical difficulties and limitations.&lt;br /&gt;
** Up to KDE 3.5 there was one kdepim module. For the KDE4 cycle, this was split into kdepimlibs and kdepim. For the above mentioned merging to be possible, it makes sense for both to be in the same git module. This poses extra difficulty to the svn2git script.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Email threads'''&lt;br /&gt;
&lt;br /&gt;
* Mid-January thread on scm-interest: http://thread.gmane.org/gmane.comp.kde.devel.pim/26726&lt;br /&gt;
* Early March thread on kde-core-devel (Till email): http://thread.gmane.org/gmane.comp.kde.devel.core/63915/focus=63970&lt;br /&gt;
* Early March thread on kde-core-devel (Till follow-up):&lt;br /&gt;
http://thread.gmane.org/gmane.comp.kde.devel.core/63915/focus=64069&lt;br /&gt;
&lt;br /&gt;
=Nice to have before the migration=&lt;br /&gt;
&lt;br /&gt;
==Push log==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' nobody!!&lt;br /&gt;
&lt;br /&gt;
'''Status:''' argonel had a hd failure :( [2010-01-06]&lt;br /&gt;
&lt;br /&gt;
:Gitorious records who pushed each commit.  This is useful information because commits themselves can say anything, and there are legitimate reasons to push commits with another person's name.&lt;br /&gt;
&lt;br /&gt;
:Internally, Gitorious stores this information in an SQL database, and the information is viewable through the web interface.  However we want a way to backup this information for the case that Gitorious suddenly go offline.&lt;br /&gt;
&lt;br /&gt;
:quotes from the mailing list:&lt;br /&gt;
&lt;br /&gt;
&amp;gt; How about every repo has, by convention, a &amp;quot;commits&amp;quot; branch and&lt;br /&gt;
&amp;gt; a post commit hook that ensures whatever meta info is required,&lt;br /&gt;
&amp;gt; however it can be gleaned, is also checked into that commits branch.&lt;br /&gt;
&amp;gt; A bit like how gitosis uses a repo to store auth/acl info to help&lt;br /&gt;
&amp;gt; manage the other repos.&lt;br /&gt;
&lt;br /&gt;
That's exactly my idea. And of course it won't be named commits, because we're &lt;br /&gt;
not talking about commits.&lt;br /&gt;
&lt;br /&gt;
It's a push log, similar to a local repository's reflog.&lt;br /&gt;
&lt;br /&gt;
---------------&lt;br /&gt;
&lt;br /&gt;
For every push, log:&lt;br /&gt;
 - who pushed (not the Unix username, which will be &amp;quot;git&amp;quot;)&lt;br /&gt;
 - which branch heads changed (what from, what to)&lt;br /&gt;
 - which tags were created&lt;br /&gt;
 - the state of all other branches and tags&lt;br /&gt;
&lt;br /&gt;
Just use git commit-tree with the empty tree and save everything in the commit &lt;br /&gt;
message, one after the other.&lt;br /&gt;
&lt;br /&gt;
-----------&lt;br /&gt;
&lt;br /&gt;
This does not require help from gitorious.org until the script is actually written: it's just another pre-receive hook for them to install on their servers.&lt;br /&gt;
it *might* also be possible to run it as a post-receive hook (in which case we can do the whole thing ourselves).&lt;br /&gt;
&lt;br /&gt;
if we self-host, then we won't need this.&lt;br /&gt;
&lt;br /&gt;
==Script for downloading virtual KDE hierarchies==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner''': &lt;br /&gt;
&lt;br /&gt;
'''Status:''' &lt;br /&gt;
&lt;br /&gt;
:Let's start over on this.&lt;br /&gt;
what we already have: two build scripts for kde; kdesvn-build and build-tool.&lt;br /&gt;
what we want: an easy way for people to get large chunks of kde, without thinking about what urls the repos come from or having to look things up.&lt;br /&gt;
&lt;br /&gt;
do kde-svnbuild and build-tool satisfy this well enough?&lt;br /&gt;
or do we want a computer-readable file listing all the repos too?&lt;br /&gt;
&lt;br /&gt;
btw, scripty has its own list of repos already. it's just in a rather weird bash file.&lt;br /&gt;
&lt;br /&gt;
'''Links'''&lt;br /&gt;
[http://kdesvn-build.kde.org/]&lt;br /&gt;
[[Projects/MovetoGit/MassCloneScript]]&lt;br /&gt;
[http://rubyforge.org/projects/build-tool/]&lt;br /&gt;
&lt;br /&gt;
==pre-receive hooks==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' ''volunteers needed!!''&lt;br /&gt;
&lt;br /&gt;
* Line endings and encodings&lt;br /&gt;
&lt;br /&gt;
'''Discussion:'''&lt;br /&gt;
this got accidentally marked as done or something, but it's not.&lt;br /&gt;
&lt;br /&gt;
'''Notes:'''&lt;br /&gt;
&amp;gt; &amp;gt; As for line-endings, be careful because Git is different from Subversion.&lt;br /&gt;
&amp;gt; &lt;br /&gt;
&amp;gt; different how?&lt;br /&gt;
&lt;br /&gt;
Just ensure that all files are stored as LF only, except if there's a &lt;br /&gt;
.gitattributes file saying &amp;quot;-crlf&amp;quot; (i.e., allow it to have CRLF).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Snapshot to read-only svn==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:'''&lt;br /&gt;
&lt;br /&gt;
:It's work, but maybe some people would like it. NEEDED for documentation, in order to get it back into SVN for the translators/scripty/?&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:Could be done with a git-svn gateway presumably? -Mike Arthur 19/10/2009 16:04&lt;br /&gt;
&lt;br /&gt;
:if we leave the docbook stuff in svn, we can avoid this a bit longer. --[[User:Chani|Chani]] 23:21, 12 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
==[[Development/Tutorials/Git|Techbase Documentation]]==&lt;br /&gt;
'''Owner:''' Chani, greeneg, - ''please help out!''&lt;br /&gt;
{{Progress bar|10}}&lt;br /&gt;
&lt;br /&gt;
:At least minimal documentation about how to checkout, how to get a Gitorious account, how to request a merge needed, other git documentation and links to other git information would be very useful also.&lt;br /&gt;
&lt;br /&gt;
:see the [[Development/Tutorials/Git|Git Tutorial Page]]. help wanted!!&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Setup git mirrors for cloning==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' No one (help!)&lt;br /&gt;
:Re-purpose the anonsvn servers. This item might be a blocker.&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
==Local pre-commit hooks==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' argonel&lt;br /&gt;
&lt;br /&gt;
:A set of recommended local hooks that give useful warnings could be nice to have.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
...on the other hand, if we get a lot of bikeshedding about what hooks, then it won't be so nice. so I'd put this in the &amp;quot;very optional&amp;quot; pile. --[[User:Chani|Chani]] 19:10, 16 December 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
=Post-migration Issues=&lt;br /&gt;
&lt;br /&gt;
==Website Branding==&lt;br /&gt;
{{Progress bar|2|text=(initial ideas on the table)}}&lt;br /&gt;
'''Owner:''' ruphy&lt;br /&gt;
&lt;br /&gt;
:KDE Gitorious should be branded accordingly, and should be reachable from git.kde.org as well as kde.gitorious.org&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
=Unscheduled &amp;amp; Open=&lt;br /&gt;
&lt;br /&gt;
==Allow tagging without involving sysadmins==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
&lt;br /&gt;
'''Owner:''' johan&lt;br /&gt;
&lt;br /&gt;
:Pushing a tag currently requires permissions to do a force push, which is a repository-wide checkbox that can only be toggled by a kde-developers admin. Thus the workflow for a dev wanting to do a release tag for his app is to ask an admin to enable force pushing, then to push his tag, and then to tell the admin he can disable force pushing again. This doesn't scale, is insecure, and at odds with KDE's open access policy when it comes to managing the repos (right now in SVN, you need sysadmin to create an app dir in /tags for you, but don't have to ask permission for every individual tag). Johan has promised a solution for this.&lt;br /&gt;
&lt;br /&gt;
:Notable discussion points on kde-scm-interest:&lt;br /&gt;
:http://mail.kde.org/pipermail/kde-scm-interest/2009-November/000782.html&lt;br /&gt;
:http://mail.kde.org/pipermail/kde-scm-interest/2009-November/000784.html&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
==Account setup on Gitorious==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
&lt;br /&gt;
'''Owner:''' ''eean, johan, boud, dario''&lt;br /&gt;
&lt;br /&gt;
:Creating an account on Gitorious isn't hard, but asking to be added to the KDE group is inconvenient. For the migration we should set up a system (via email or wiki?) where developers can ask to have an account autocreated for them, or add their existing Gitorious account to a list to be added to the group. Once this is in place an announcement should be sent to all svn accounts explaining the process, and privacy information.&lt;br /&gt;
&lt;br /&gt;
:Basically the currently method of using Bugzilla works fine now and works fine in the longterm. But in the transition month when hundreds of accounts must be created or added, we need a better system. Its important to make it as easy as possible so that we don't lose anyone in the shuffle.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
: I think most people have made their own accounts by now. this isn't really needed.&lt;br /&gt;
&lt;br /&gt;
==post-update hooks==&lt;br /&gt;
{{Progress bar|90}}&lt;br /&gt;
'''Owner:''' ''morice'' ''Ian Monroe''&lt;br /&gt;
&lt;br /&gt;
:* License checker&lt;br /&gt;
&lt;br /&gt;
'''Discussion:'''&lt;br /&gt;
We have a fairly complete set of post-update hooks now. See [http://gitorious.org/remotehook remotehook]. However, it would be nice to have a system that lives on the Gitorious server and/or requires less manual maintenance. But its certainly workable and no longer a blocker.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Completed Tasks=&lt;br /&gt;
&lt;br /&gt;
==Get rid of svn:externals==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' David Faure&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''???''&lt;br /&gt;
&lt;br /&gt;
:not possible with git, broken by design.&lt;br /&gt;
&lt;br /&gt;
::&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
Exists, but ignorable:&lt;br /&gt;
* kdesupport shared-desktop-ontologies (temporary)&lt;br /&gt;
* playground/utils strigi-chemical/test/ctfr&lt;br /&gt;
* playground/devtools kdevelop4-extra-plugins/php/parser/generated/kdevelop-pg-qt&lt;br /&gt;
* playground/devtools kdevelop4-extra-plugins/python/parser/generated/kdevelop-pg-qt&lt;br /&gt;
* playground/devtools kdevelop4-extra-plugins/qmake/parser/generated/kdevelop-pg-qt&lt;br /&gt;
* playground/devtools kommander-plugins/database3/admin&lt;br /&gt;
* playground/devtools kommander-plugins/database/admin&lt;br /&gt;
* playground/devtools kommander-plugins/datetimefuncs/admin&lt;br /&gt;
* playground/devtools kommander-plugins/htmlpart/admin&lt;br /&gt;
* playground/devtools kommander-plugins/httpform/admin&lt;br /&gt;
* playground/devtools kommander-plugins/kparts/admin&lt;br /&gt;
* playground/devtools kommander-plugins/qtactionproxy/admin&lt;br /&gt;
* playground/devtools kommander-plugins/timewidget/admin&lt;br /&gt;
* playground/devtools kommander-plugins/webkit3/admin&lt;br /&gt;
* playground/devtools kpackagemaker/admin&lt;br /&gt;
&lt;br /&gt;
==EBN==&lt;br /&gt;
{{Progress bar|95}}&lt;br /&gt;
'''Owner:''' ''drf''&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''Amarok has EBN checks''&lt;br /&gt;
&lt;br /&gt;
:EBN's krazy checks currently run on kde's svn repo; it needs upgrading to download and check our git repos too.&lt;br /&gt;
&lt;br /&gt;
:This would be easier if there was a repo-list that EBN could parse, as it can no longer just svn up to get everything.&lt;br /&gt;
&lt;br /&gt;
==Talk to people using other distros about git==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' Sebas, Eike&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
* Gentoo: They seem to be prepared for moving their live SVN packages to git; their package manager has easily-reusable classes to fetch from an SCM and moving the ebuilds to using the git class rather than the SVN class should be easy. Positive comments to that end from people in #gentoo-kde.&lt;br /&gt;
* Fedora: Some unhappyness about git because SVN allows them to remotely produce a diff between two SVN URLs (or two revisions of one and the same URL) without making a checkout first, while git requires making a clone. Kevin Kofler (IRC nick Kevin_Kofler, #fedora-kde) says this will make their packager work harder.&lt;br /&gt;
* Debian: Is indifferent about the SCM switch.&lt;br /&gt;
&lt;br /&gt;
==Post Update hooks==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' ''morice, johan, mattr&lt;br /&gt;
&lt;br /&gt;
:List of scripts needed:&lt;br /&gt;
:* BUG/CCMAIL&lt;br /&gt;
:* email/CIA&lt;br /&gt;
&lt;br /&gt;
:Gitorious needs to provide a way for hooks to be called; KDE needs to write said hooks.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:There is a branch of gitorious called web-hooks http://gitorious.org/gitorious/mainline/commits/web-hooks --Panagiotis Papadopoulos 1 November 2009&lt;br /&gt;
:Same situation as commit emails. I can do it but it doesn't scale well and a Gitorious-supported solution would be nicer. --[[User:Eean|eean]] 16:07, 12 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
==Opt-in privacy exception required for kde-developers==&lt;br /&gt;
&amp;lt;strike&amp;gt;&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' ''Gitorious'', ''KDE e.V. Board'', ''eean''&lt;br /&gt;
&lt;br /&gt;
:KDE sysadmins need access to some information that Shortcut could not give them due to their privacy policy. Examples include an email list of all the developers and SQL-level access to information about all the repos in KDE (since it stores who pushes what, information not stored in the git repo itself).&lt;br /&gt;
&lt;br /&gt;
:Such requirements will likely be put into the contract with Shortcut.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
:So the e.V. Board is an owner since this is a legal/contract/money issue. Added myself only because I'm shepherding the issue. --[[User:Eean|eean]] 16:16, 12 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/strike&amp;gt; &lt;br /&gt;
&lt;br /&gt;
:'''We will not get sql access to the information. For the alternative solution see the Push Log issue'''&lt;br /&gt;
&lt;br /&gt;
==Reviewboard==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' darktears&lt;br /&gt;
&lt;br /&gt;
This should be easily done with Gitorious web interface and merge requests actually.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:but reviewboard has features gitorious (right now) doesn't, like commenting on specific lines and not having to set up a merge request. --chani&lt;br /&gt;
::Also email notifications when someone reviews are needed --thomasz&lt;br /&gt;
:We're working on this for someone else right now, so pretty soon --johan-s&lt;br /&gt;
:I consider the latest changes to gitorious to finish this. If more reviewboard features are still needed, and git supports reviewboard, I think this is something we can look at doing post-conversion. --Ian Monroe&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Gitorious Needs a feature to disable merge request emails for certain repos==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' [http://gitorious.org/gitorious Gitorious]&lt;br /&gt;
&lt;br /&gt;
Have a sensible system for merge request emails.  This is now in place - you can join groups, chose whether to have emails on a per repo basis, etc.&lt;br /&gt;
&lt;br /&gt;
==SSH blocked in corporations and universities.==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' ''Unknown''&lt;br /&gt;
&lt;br /&gt;
:Some universities tend to block the SSH port. There should be a workaround to use SSH on some different port. github.com already runs a SSH server on port 443. But that assumes you are using a proxy. It has been found that this hasn't worked with a lot of people, especially those who have a direct connection to the internet ( so some transparent blocking by the ISP ). It would be great if (almost) every KDE developer were to be asked to check if other ports work before KDE made the switch. Otherwise there could be an automated email where the git patches could be sent, and appropriately patched to the right location too.&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:http://blog.gitorious.org/2009/10/20/stuck-behind-a-firewall/, and there's always been HTTP cloning (although the current impl. in Git is a bit on the slow side) --johan-s&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Talk to windows guys about git.==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:'''  aseigo&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
They aren't huge fans of git, but are using it. They require a single mainline and can't cope with multiple branches. Otherwise, it's workable, even if it will take an adjustment period.&lt;br /&gt;
&lt;br /&gt;
==pre-commit hooks==&lt;br /&gt;
{{Progress bar|100}}&lt;br /&gt;
'''Owner:''' ''(unknown)''&lt;br /&gt;
&lt;br /&gt;
:acltest, docbook, EOL/UTF-8&lt;br /&gt;
&lt;br /&gt;
:A web hook isn't good enough for these because they have to run and return whether to allow the push, for every single push to every KDE repo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Discussion'''&lt;br /&gt;
&lt;br /&gt;
:gitorious guys said they *might* be willing to allow a few scripts on their server for KDE as a special exception, iirc. --chani&lt;br /&gt;
&lt;br /&gt;
:: Yes, at least for basic things, heavier things like doc building would probably have to be mirrored (goes for pre/post) --johan-s&lt;br /&gt;
&lt;br /&gt;
:It turns out that acl and docbook might not be needed so long as web and docs/ stuff stays in svn.&lt;br /&gt;
&lt;br /&gt;
:: Here's where to find the current scripts - http://websvn.kde.org/trunk/kde-common/svn/hooks/ --[[User:Argonel|Argonel]] 23:06, 11 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
::So: this is actually done because it needs no longer to be done? (boud)&lt;br /&gt;
&lt;br /&gt;
::Apparently, so; moving to complete. (aseigo)&lt;br /&gt;
&lt;br /&gt;
= other notes =&lt;br /&gt;
&lt;br /&gt;
==kde-common/accounts==&lt;br /&gt;
&lt;br /&gt;
Someone said: KDE accounts file is no longer necessary---used for mapping svn ID -&amp;gt; email, but we have that now from Gitorious.&lt;br /&gt;
Answer from David Faure: I strongly disagree. We still need a KDE accounts file. This is very useful for finding people's email addresses, and having an overview on the number of active kde contributors; and if we keep it we can even have a kdepim resource again for filling an addressbook from it, for completion in kmail's composer (so you can write to any other kde contributor by just typing his/her name). It's also used for populating automatically the kde-cvs-announce mailing-list, for announcements. kde-common/accounts is our family tree (well, list), let's not get rid of it.&lt;br /&gt;
&lt;br /&gt;
Here's my proposal for a kde-common/accounts replacement for the git era: We write a post-receive hook that looks at every commit and records all known email addresses for a given real name as well as the commit hash and date of when an address was last encountered. We can then present that data in the form of a file like kde-common/accounts, or write a web interface to query it (with nice links to the commits on Gitorious, etc.) --Eike (Sho_ on IRC)&lt;br /&gt;
&lt;br /&gt;
To clear up possible confusion: The author information for a given commit is baked into the commit object itself, and comes from the configuration of the git repository it was created in. It is unrelated to any Gitorious account. Due to the distributed nature of Git, the one who uses his Gitorious account to push a commit need not be the same who created it. If Developer A creates a commit in his local clone and Developer B fetches it into his local clone directly from Developer A's machine and then pushes it into the public repo, the repo will only show a commit from Developer A. The Gitorious website will show that Developer B has pushed up a commit from Developer A, but that data is not contained in the repository. Thus collecting only Gitorious accounts and their mail addresses is insufficient. --Eike&lt;br /&gt;
&lt;br /&gt;
==Random==&lt;br /&gt;
http://mail.kde.org/pipermail/dot-stories/2005-May/000509.html might be a good guide on what docs we need.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
some of this stuff was from the list from GCDS that was in this email [http://markmail.org/message/u6eqfjece7fibfyo http://markmail.org/message/u6eqfjece7fibfyo]&lt;br /&gt;
&lt;br /&gt;
==IRC Meetings==&lt;br /&gt;
* [[Projects/MovetoGit/Meeting1111|Minutes]] of meeting 11 November 2009&lt;br /&gt;
* [[Projects/MovetoGit/Meeting1118|Next meeting]] 18:00, 25 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
= jobs =&lt;br /&gt;
''TODO merge this with the todolists above''&lt;br /&gt;
&lt;br /&gt;
michael jansen: talking to kdesvn-build/mpyne&lt;br /&gt;
:--Done? -&amp;gt; http://kdesvn-build.kde.org/releases/kdesvn-build-1.10.php -- Panagiotis Papadopoulos 1 November 2009&lt;br /&gt;
::Yes, but the __kdesvn-build-remote used in the impl isn't pleasant for users already on git so it still needs more work for them. [[User:Mpyne|Mpyne]] 20:32, 11 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
jonas: domain name &lt;br /&gt;
&lt;br /&gt;
ML: convert to SSH&lt;br /&gt;
&lt;br /&gt;
chani: techbase docs for scripty &lt;br /&gt;
&lt;br /&gt;
sebas/lydia/leo: communication with teams! tell people! keeping track that &lt;br /&gt;
everything is being done.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/MovetoGit</id>
		<title>Projects/MovetoGit</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/MovetoGit"/>
				<updated>2010-03-05T17:11:16Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Blockers */ Add info about KDE PIM blockers&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Blockers=&lt;br /&gt;
&lt;br /&gt;
Tasks that need to get done before we can migrate&lt;br /&gt;
&lt;br /&gt;
==SLA for gitorious.org==&lt;br /&gt;
{{Progress bar|30}}&lt;br /&gt;
'''Owner:''' aseigo, frank&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''Progressing well; will take a while''&lt;br /&gt;
&lt;br /&gt;
: The SLA terms need to be documented as well as who will be footing the bill, if any. TZander has talked to Shortcut AS and sent the relevant information (eg cost) to the KDE eV board.&lt;br /&gt;
&lt;br /&gt;
: aseigo and Frank (and someone?) had a meeting with Shortcut people during tokamak. They asked for a rather large sum of money; negotiations are continuing, but we might want to consider hosting our own server...&lt;br /&gt;
&lt;br /&gt;
==Write / update importing rules for svn2git==&lt;br /&gt;
{{Progress bar|0}}&lt;br /&gt;
'''Owner:''' see below - volunteers needed!&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''sandsmark: stuck on a svn2git bug. sho: ???, tumaix:started to read the docs, cryos: getting started [2010-01-06]''&lt;br /&gt;
&lt;br /&gt;
:The importer is on gitorious.org as svn2git we have a set of rules to tell the importer what svn dirs turn into which git repos and those need constant updating whenever a new branch or tag or project is created. Currently the rules are mostly a rough draft, as seen by the large amount of rule-editing that had to be done for Konversation and Amarok. This has not been done for quite some time and so someone should rsync the svn repo run svn2git and fix the rules and importer whenever the import stops.&lt;br /&gt;
&lt;br /&gt;
:This is a very big task, too big for one person; it's probably best to tackle it one module at a time&lt;br /&gt;
&lt;br /&gt;
:To get started on a module, read [[Projects/MoveToGit/UsingSvn2Git|Using Svn2Git]]&lt;br /&gt;
&lt;br /&gt;
:TZander has done the koffice ruleset as of 2009-01-06&lt;br /&gt;
&lt;br /&gt;
:Jpwhiting has finished (more or less) the kdeaccessibility ruleset 2010-01-24.&lt;br /&gt;
&lt;br /&gt;
:aavci has done the k3b ruleset as of 2010-01-27&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
progress details:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
!repo&lt;br /&gt;
!owner&lt;br /&gt;
!%&lt;br /&gt;
!comments&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeaccessibility&lt;br /&gt;
|jpwhiting&lt;br /&gt;
|99&lt;br /&gt;
|&amp;quot;more or less&amp;quot;?&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeadmin&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeartwork&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdebase&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdebindings&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeedu&lt;br /&gt;
|cryos?&lt;br /&gt;
|?&lt;br /&gt;
|update me!&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeexamples&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdegames&lt;br /&gt;
|tumaix?&lt;br /&gt;
|?&lt;br /&gt;
|update me!&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdegraphics&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdelibs&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdemultimedia&lt;br /&gt;
|eean&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdenetwork&lt;br /&gt;
| grundleborg&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdepim&lt;br /&gt;
|tnyblom&lt;br /&gt;
|0&lt;br /&gt;
|Just getting started Help needed.&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdepimlibs&lt;br /&gt;
|tnyblom&lt;br /&gt;
|0&lt;br /&gt;
|Just getting started Help needed.&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeplasma-addons&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdesdk&lt;br /&gt;
|mattr&lt;br /&gt;
|0&lt;br /&gt;
|just starting&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdetoys&lt;br /&gt;
|mattr&lt;br /&gt;
|0&lt;br /&gt;
|just starting&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdeutils&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SC/kdewebdev&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|extragear/sdk/kdevelop&lt;br /&gt;
| apaku&lt;br /&gt;
| 85&lt;br /&gt;
| Misses history from KDE3.3 and older (KDevelop3.2), probably something with layout-changes, might need recurse-action but don't know how to do it.&lt;br /&gt;
|-&lt;br /&gt;
|extragear/sdk/kdevplatform&lt;br /&gt;
| apaku&lt;br /&gt;
| 100&lt;br /&gt;
| done, all tags seem fine all branches are there&lt;br /&gt;
|-&lt;br /&gt;
|extragear/*/*&lt;br /&gt;
|&lt;br /&gt;
|xx&lt;br /&gt;
|expand the *'s later (let's focus on the base modules first)&lt;br /&gt;
|-&lt;br /&gt;
|kde-common&lt;br /&gt;
|mattr&lt;br /&gt;
|0&lt;br /&gt;
|just starting&lt;br /&gt;
|-&lt;br /&gt;
|kdesupport&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|koffice&lt;br /&gt;
|tzander&lt;br /&gt;
|100&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|promo&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|quality&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|tests&lt;br /&gt;
|&lt;br /&gt;
|0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Requirements of KDEPIM and KDAB ==&lt;br /&gt;
&lt;br /&gt;
{{Progress bar|10}}&lt;br /&gt;
'''Owner:''' till (To be reassigned)&lt;br /&gt;
&lt;br /&gt;
'''Status:''' ''Requirements of tools and for workflow identified. Someone from KDAB will be nominated to co-ordinate and communicate specific requirements''&lt;br /&gt;
&lt;br /&gt;
'''Summary of issues'''&lt;br /&gt;
&lt;br /&gt;
* Branch maintenance workflow&lt;br /&gt;
** KDAB maintains several branches of legacy versions of KDE for enterprise customer deployments. [http://websvn.kde.org:80/branches/kdepim/enterprise/ Enterprise 3.5] [http://websvn.kde.org:80/branches/kdepim/enterprise4/ Enterprise 4 (based on KDE 4.2)]. The current KDEPIM trunk known as Enterprise 5 and is Akonadi based.&lt;br /&gt;
** Periodically (weekly or so), tags are created from the enterprise branches with bugfixes. http://websvn.kde.org:80/tags/kdepim/ Customers can download the tagged versions with the latest updates. Fixes are merged from the Enterprise 3.5 branch, and into trunk (which sometimes involves a lot of work, as the fix must be ported to Akonadi). Additionally, fixes get merged in the other direction. From official KDE modules into the Enterprise branches.&lt;br /&gt;
** Some fixes from Enterprise 3.5 should not be merged into Enterprise 4 for reasons such as no longer being reproducible. Some fixes do not get merged for a long time because they require so much work that porting the fix or feature is deffered. There needs to be a list of commits which should never be merged (blocked commits), and commits which should be merged, but have not been merged yet. The tool [[Development/Tools/svnmerge.py|svnmerge]] is used to facilitate this. svnmerge uses svn properties to maintain lists of commits that are blocked and that have already been integrated. See for example the svn-blocked and svn-integrated properties here: http://websvn.kde.org:80/trunk/KDE/kdepim/. The lists of commits available to be merged into the various branches are here: http://www.kdab.com/~thomas/avail/&lt;br /&gt;
** There needs to be a way in git to keep track of what commits have been merged, what commits need to be merged, and what commits are blocked. There needs to be a way of merging only specific commits from a branch, but not all, and not blocked commits. Proposed solutions:&lt;br /&gt;
*** git cherry-pick allows 'merging' of individual commits, but does not record where the commits came from. Instead it creates a new commit without any reference to where it came from. This alone is unsuitable.&lt;br /&gt;
*** branch per fix. This would lead to an explosion of branches which is not a problem in git as all commits are branches. It may make gitk un-navigatable. There would need to be a naming convention such as komo-merge-&amp;lt;fixname&amp;gt; for branches which should be merged. The commands &amp;lt;tt&amp;gt;git checkout 4.5 &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;git checkout enterprise4.5 &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;git checkout master &amp;amp;&amp;amp; git merge $(git branch -a | grep -E ^origin/komo-merge)&amp;lt;/tt&amp;gt;. That could of course be optimized, but gets the point across. If the code has changed so much that the branch is unmergable, but the fix still needs to be in trunk, the system breaks down.&lt;br /&gt;
*** Custom git command with flat text files representing the same information as svnmerge, that is lists of blocked and integrated commits. This is most likely to be a workable solution, possibly together with conventional branch naming.&lt;br /&gt;
* Clean slate&lt;br /&gt;
** The existing backlog of commits which need to be merged or ported to trunk needs to be empty before the change to git so that nothing gets lost. This is a lot of work and will take time.&lt;br /&gt;
* Internal Tools and external customer tools and workflows&lt;br /&gt;
** KDAB is a consumer of KDE software, but also has downstream customers fetching software from where it is developed. That is, KDE SVN. For example packages are created from the tags in tags/kdepim. Some of these downstreams are less close to KDE and depend on current workflows. If KDE SVN is not the place to get those updates anymore, this needs to be communicated to those downstreams, and the tools updated.&lt;br /&gt;
** People who don't currently know how to use git need to get familiar with it so that transitioning will be nearly seamless, and not result in too much development slowdown.&lt;br /&gt;
* Other commitments&lt;br /&gt;
** Project deadlines and other commitments prevent the possiblity of blocking off time to work on git migration when so many other things need to be done which have milestones separate to KDE cycles. The required work to convert to git can't be prioritized as highly, and so will take more time.&lt;br /&gt;
* Technical difficulties and limitations.&lt;br /&gt;
** Up to KDE 3.5 there was one kdepim module. For the KDE4 cycle, this was split into kdepimlibs and kdepim. For the above mentioned merging to be possible, it makes sense for both to be in the same git module. This poses extra difficulty to the svn2git script.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Email threads'''&lt;br /&gt;
&lt;br /&gt;
* Mid-January thread on scm-interest: http://thread.gmane.org/gmane.comp.kde.devel.pim/26726&lt;br /&gt;
* Early March thread on kde-core-devel (Till email): http://thread.gmane.org/gmane.comp.kde.devel.core/63915/focus=63970&lt;br /&gt;
* Early March thread on kde-core-devel (Till follow-up):&lt;br /&gt;
http://thread.gmane.org/gmane.comp.kde.devel.core/63915/focus=64069&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.4_Feature_Plan</id>
		<title>Schedules/KDE4/4.4 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.4_Feature_Plan"/>
				<updated>2009-11-04T16:01:41Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* kdepim */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.4 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.4 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.4 Release Goals]] &lt;br /&gt;
*[[Schedules/KDE4/4.3 Feature Plan]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Legend: &lt;br /&gt;
&lt;br /&gt;
*todo =&amp;amp;gt; not started yet &lt;br /&gt;
*in-progress =&amp;amp;gt; started, but not completed yet &lt;br /&gt;
*done =&amp;amp;gt; completed&lt;br /&gt;
&lt;br /&gt;
__TOC__ &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
{{FeatureDone|kttsd|Clean up kttsd by making it a simple wrapper around speech-dispatcher|jpwhiting@kde.org|Jeremy Whiting}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdeadmin  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|system-config-printer-kde|Restore feature parity with KDEPrint3 where possible.||Jonathan Riddell, John Layt}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdeartwork  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdebase-apps  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Konqueror|Improvements in session-management|edulix@gmail.com|Eduardo Robles Elvira}} {{FeatureTodo|Konqueror|Improvements in tab-bar widget|edulix@gmail.com|Eduardo Robles Elvira}} {{FeatureInProgress|Konqueror|New Konqueror bookmarks using Akonadi and Nepomuk, awesome bar|edulix@gmail.com|Eduardo Robles Elvira}} {{FeatureInProgress|Konqueror|Sidebar cleanups; re-introducing the history module|faure@kde.org|David Faure}} {{FeatureInProgress|Dolphin|&lt;br /&gt;
Version control intergration|peter.penz@gmx.at|Peter Penz}} {{FeatureInProgress|Dolphin|&lt;br /&gt;
Improved search bar including search configuration|peter.penz@gmx.at|Peter Penz}} {{FeatureInProgress|Dolphin|&lt;br /&gt;
Refactoring of Information Panel. KMetaDataWidget and KMetaDataConfigurationDialog should be moved to kdelibs.|peter.penz@gmx.at|Peter Penz}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KWallet|Single Sign On using PAM|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Backend for UPnP|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Backend for LISa|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Backend for SMB|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Integrate with remote and zeroconf kioslaves|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|smb kioslave|add kwallet support|brandon.ml@gmail.com|Carlo Segato}} {{FeatureDone|thumbnail kioslave|Support for comic-book cover previews (.cbr, .cbz, .cbt files)|qwertymaniac@gmail.com|Harsh J}}&lt;br /&gt;
{{FeatureInProgress|thumbnail kioslave|Support for rotated jpegs|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
 {{FeatureInProgress|Nepomuk|Integrate Filesystem service to handle mounting/unmounting of removable devices|trueg@kde.org|Sebastian Trueg}} {{FeatureInProgress|Nepomuk|Add nepomuk kio slave which handles all stating of Nepomuk resources|trueg@kde.org|Sebastian Trueg}} {{FeatureInProgress|Nepomuk|Port Nepomuk to Virtuoso: query service, strigi service|trueg@kde.org|Sebastian Trueg}} {{FeatureInProgress|Locale KCM|Add support for new KLocale features (see kdelibs section) including Currency Code, Decimal Places, Digit Groups, AM/PM, etc.  Improvements to usability of existing options.|john@layt.net|John Layt}} {{FeatureInProgress|Device Automounting|Add support for storage device automounting|tdfischer@fedoraproject.org|Trever Fischer}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Non-Plasma, Non-KWin &lt;br /&gt;
{{FeatureTodo|Icons KCM|More configurable icon sizes|christoph@maxiom.de|Christoph Feck}} {{FeatureTodo|Fonts KCM|More configurable fonts|christoph@maxiom.de|Christoph Feck}} {{FeatureTodo|System Activity|Show CPU usage etc|tapsell@kde.org|John Tapsell}} {{FeatureInProgress|Date/Time KCM|Plasma themed clock|christoph@maxiom.de|Christoph Feck}} {{FeatureInProgress|System Activity|Add scripting support|tapsell@kde.org|John Tapsell}} {{FeatureDone|Solid|RemoteControl Manager/Interface + Lirc backend|michael_zanetti@gmx.net|Michael Zanetti}} {{FeatureDone|System Activity|KAuth integration|tapsell@kde.org|John Tapsell}} {{FeatureDone|System Settings|Improve module appearance for Icons View and provide searching hints|sourtooth@gmail.com|Ben Cooksley}} {{FeatureInProgress|System Setitngs|Reorganize modules|sourtooth@gmail.com|Ben  Cooksley}} {{FeatureInProgress|Mouse KCM|XInput2 support|fredrik@kde.org|Fredrik Höglund}} {{FeatureInProgress|Attica KCM|Initial import|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureInProgress|Solid::Control network environment tracking|Access a high level view of wireless networks by interface, testing in playground|wstephenson@kde.org|Will Stephenson}} &lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KRunner &lt;br /&gt;
{{FeatureDone|KRunner|Window management runner|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureTodo|KRunner|Solid device runner|wilderkde@gmail.com|Jacopo De Simoi}} {{FeatureInProgress|KRunner|Add Firefox support to the bookmark runner|jangerrit@weiler-marker.com|Jan Gerrit Marker}} {{FeatureTodo|KRunner|Solid device runner|wilderkde@gmail.com|Jacopo De Simoi}} {{FeatureInProgress|KRunner|Single runner mode|wilderkde@gmail.com|Jacopo De Simoi}} {{FeatureTodo|KRunner|Manage actions in default interface|wilderkde@gmail.com|Jacopo De Simoi}} &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Plasma - Priority Features &lt;br /&gt;
{{FeatureInProgress|netbook shell|a plasma shell and various containments/applets tailored for netbooks (tech preview status in 4.4)|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Plasma &lt;br /&gt;
{{FeatureTodo|libplasma|better text box look with new svg elements|notmart@gmail.com|Marco Martin}} &lt;br /&gt;
{{FeatureInProgress|accounts applet|a plasma widget that is a central place to add accounts to social sites like identica and opendesktop, optimized for the netbook shell|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|systemtray|visual connection between notifications and new protocol systray icons|notmart@gmail.com|Marco Martin}} &lt;br /&gt;
{{FeatureInProgress|libplasma|Improvements to Calendar/Clock widgets. Improved config ui. Allow multiple holidays on same day. Allow multiple Holiday Regions. Holidays in Tooltip. Holiday region shown in info. Weekends. etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureInProgress|knowledge base plasmoid|new plasmoid: Opendesktop.org knowledgebase client|notmart@gmail.com|Marco Martin}} {{FeatureInProgress|Quicklaunch Plasmoid|new icon size/rows config ui|l.appelhans@gmx.de|Lukas Appelhans}} {{FeatureInProgress|libplasma|Allow user to choose Calendar System to be displayed in Calendar widgets|john@layt.net|John Layt}} {{FeatureInProgress|opendesktop plasmoid|show friends activity|notmart@gmail.com|Marco Martin}} {{FeatureDone|libplasma/kwin|slide animation for popups done by kwin|notmart@gmail.com|Marco Martin}} {{FeatureDone|System tray|Plasmoid support in the system tray|notmart@gmail.com|Marco Martin}} {{FeatureDone|System tray|config ui to decide between always shown, always hidden and auto hide for each systray item|notmart@gmail.com|Marco Martin}} {{FeatureInProgress|Plasma Addon|Wikipedia KRunner|sebas@kde.org|Sebastian Kügler}} {{FeatureInProgress|Plasma Addon|Webslice Plasmoid, qgraphicswidget|sebas@kde.org|Sebastian Kügler}} {{FeatureInProgress|Plasma Addon|Battery popup layout improvements|sebas@kde.org|Sebastian Kügler}} &lt;br /&gt;
{{FeatureTodo|Plasma Addon| Screen-Management Applet for plasma being an easy-to-use alternative to krandrtray adding some functionality for screen management. Builds on top of Kephal |bjoern@ruberg-wegener.de|Björn Ruberg}} &lt;br /&gt;
{{FeatureInProgress|Plasma Mouse Plugins UI|Yet Another UI Redesign|chani@kde.org|Chani}} {{FeatureTodo|libplasma|Plasmoid Cloning - because having to set things up from scratch repeatedly gets old fast|chani@kde.org|Chani}} {{FeatureTodo|taskbar|&amp;quot;other desktops&amp;quot; group - I may not have time for this, feel free to take it|chani@kde.org|Chani}} {{FeatureInProgress|Plasma Weather Ion|New Weather Ion for the wetter.com data source provider|thilo@ginkel.com|Thilo-Alexander Ginkel}} {{FeatureInProgress|Plasma Animator|Create new Plasma::Animator API based on Qt 4.6 Kinetic||Adenilson Cavalcanti, Igor Trindade}} {{FeatureTodo|Plasma KineticScrolling|Port KineticScrolling to Qt 4.6 Kinetic||Adenilson Cavalcanti, Igor Trindade}} {{FeatureInProgress|Plasma-Netbook Animated Layouts|Create Animated Layouts to SAL and NewsPaper||Adenilson Cavalcanti, Igor Trindade}} {{FeatureInProgress|Notification queueing|||Aaron Seigo}} {{FeatureInProgress|Trust Levels|package signing and verification||Rob Sheepmaker Aaron Seigo}} {{FeatureInProgress|JS plasmoid improvements|Animations, KIO and QFile bindings; latter two by security policy||Aaron Seigo}}{{FeatureInProgress|Kiosk improvements|||Aaron Seigo}} {{FeatureInProgress|Activity Bar|||Aaron Seigo}} {{FeatureTodo|folderview|Hover action icons in the icon view|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureTodo|folderview|Hover animations|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|libplasma|Show the PopupApplet's BusyWidget inside the popup|giuliocamuffo@gmail.com|Giulio Camuffo}}&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KWin - Core &lt;br /&gt;
{{FeatureInProgress|KWin|Window tabbing|matamax123@gmail.com|Jorge Emilio Mata}} {{FeatureInProgress|KWin|Window tiling|nsm.nikhil@gmail.com|Nikhil Marathe}} {{FeatureDone|KWin|Quick window maximization and tiling by dragging windows to the edge of the screen|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|Improved virtual desktop KCM|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|Improved window switcher (Alt+Tab)|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|SVG based window decoration theme engine (Aurorae)|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|Merged Ozone and Nitrogen window decorations into Oxygen|hugo.pereira@free.fr|Hugo Pereira Da Costa}} {{FeatureInProgress|KWin|Support for new EWMH hints|fredrik@kde.org|Fredrik Höglund}} &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KWin - Desktop Effects &lt;br /&gt;
{{FeatureDone|KWin|Mouse action support in Present Windows effect|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|New present windows mode to only display windows from a single application|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|Improved flip switch effect|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|Improved logout blur effect||Lucas Murray}} &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KDM&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|pykde4|Python 3 support for PyKDE4|simon@simonzone.com|Simon Edwards}} {{FeatureInProgress|qyoto|Create a new generator for the C# assemblies|arno@arnorehn.de|Arno Rehn}} {{FeatureTodo|qyoto|Replace the current C# cmake macros with more sophisticated ones that also work on windows.|arno@arnorehn.de|Arno Rehn}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdeedu  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Information links in-place for each technical term|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Simulate Lunar Eclipses|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Simulate Satellites and Iridium Flares|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Social and Geographical Integration for KStars|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}} {{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}} {{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}} {{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}} {{FeatureDone|Cantor|Import to kdeedu |alexanderrieder@gmail.com|Alexander Rieder}} &lt;br /&gt;
{{FeatureInProgress|Rocs|Import to kdeedu |tumaix@gmail.com|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureInProgress|KAlgebra|Support for lists|aleixpol@kde.org|Aleix Pol}} {{FeatureInProgress|Marble|Add &amp;quot;download region&amp;quot; feature|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|GeoData Model/View rework||Thibaut Gridel}}&lt;br /&gt;
{{FeatureInProgress|Parley|Rewritten practice|d.laidig@gmx.de|Daniel Laidig}} {{FeatureDone|KAlgebra|Improved MathML Presentation support|aleixpol@kde.org|Aleix Pol}} {{FeatureDone|KAlgebra|Added 2D parametric function plotting|aleixpol@kde.org|Aleix Pol}} {{FeatureDone|KAlgebra|Improved jump detections|aleixpol@kde.org|Aleix Pol}} {{FeatureDone|KAlgebra|Made lambda expressions more usable|aleixpol@kde.org|Aleix Pol}} {{FeatureDone|KStars|Improve Observing List Wizard|prakash.mohan@kdemail.net|Prakash Mohan}} {{FeatureDone|KTurtle|Add F2 context help|nielsslot@gmail.com|Niels Slot}} {{FeatureDone|KTurtle|Add SVG export for the canvas|nielsslot@gmail.com|Niels Slot}} {{FeatureDone|KTurtle|Add HTML export of the code|nielsslot@gmail.com|Niels Slot}} {{FeatureDone|KTurtle|Add printing support for the canvas|nielsslot@gmail.com|Niels Slot}} {{FeatureTodo|Marble|Add proper support for GPX waypoints, tracks and routes display|anders@alweb.dk|Anders Lund}}&lt;br /&gt;
{{FeatureInProgress|Kalzium|Remove libavogadro snapshot, port to use system libavogadro|mhanwell@kde.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium to use QGV based periodic table widget|mhanwell@kde.org|Marcus D. Hanwell}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdegames  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KBreakOut|Level Sets|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureTodo|KBreakOut|Sound|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureTodo|KDiamond|Intelligent animation pre-caching|majewsky@gmx.net|Stefan Majewsky}} {{FeatureTodo|KDiamond|Refactor Board and Diamond classes|majewsky@gmx.net|Stefan Majewsky}} {{FeatureTodo|Kolf|Replace with Kolf 2 (help on coding, artwork and level design desired) &amp;gt;&amp;gt;delayed to KDE 4.5&amp;lt;&amp;lt;|majewsky@gmx.net|Stefan Majewsky}} {{FeatureTodo|KsirK|rewrite AI code or at least correct most problems related in bug #170777. Volunteers wanted!|kleag@free.fr|Gaël de Chalendar}} {{FeatureTodo|KsirK|Boost playing over Jabber|kleag@free.fr|Gaël de Chalendar}} {{FeatureTodo|KSquares|Re-write computer player, make it act faster and more intelligent|ewoerner@kde.org|Eckhart Wörner}} {{FeatureTodo|KSquares|Add more types of boards: hexagonal, triangular|ewoerner@kde.org|Eckhart Wörner}} {{FeatureInProgress|Gluon|release first gluon lib with one game. [http://gluon.tuxfamily.org/]|istdasklar@gmail.com|Sacha schutz}} {{FeatureInProgress|Granatier|New Bomberman like game for KDE 4|k.hias@gmx.de|Mathias Kraus}} {{FeatureInProgress|Granatier|Implement all Bonuses from the default theme|k.hias@gmx.de|Mathias Kraus}} {{FeatureDone|Granatier|Add support for a background|k.hias@gmx.de|Mathias Kraus}} {{FeatureTodo|Granatier|Sidebar with informations regarding the players, like bonuses, handicaps ...|k.hias@gmx.de|Mathias Kraus}} {{FeatureTodo|Granatier|Arena Editor|k.hias@gmx.de|Mathias Kraus}} {{FeatureTodo|Granatier|Replace Phonon with QtMultimedia for better sound|k.hias@gmx.de|Mathias Kraus}} {{FeatureInProgress|KAtomic|Level Sets|dimsuz@gmail.com|Dmitry Suzdalev}} {{FeatureInProgress|KsirK|Polish the skin editor (doc, contextual help, ...)|kleag@free.fr|Gaël de Chalendar}} {{FeatureInProgress|Palapeli|New puzzle game for KDE 4|majewsky@gmx.net|Stefan Majewsky}} {{FeatureDone|Bovo|Highlight the last move to be easier to spot|pelladigabor@gmail.com|Pelladi Gabor}} {{FeatureDone|Bovo|Enable undo after the game has ended, to be able to correct a fatal mis-click|pelladigabor@gmail.com|Pelladi Gabor}} {{FeatureDone|KBreakOut|Improved keyboard support|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureDone|KBreakOut|Fullscreen support|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureDone|KDiamond|Improve time display|majewsky@gmx.net|Stefan Majewsky}} {{FeatureDone|KGoldrunner|Add Mazes game (37 levels), contributed by Steve Mann.|ianw2@optusnet.com.au|Ian Wadham}} {{FeatureDone|KsirK|Previous/Next in start new game as described in bug #170774|kleag@free.fr|Gaël de Chalendar}} {{FeatureInProgress|Kigo|New Go game for KDE 4|sasch.pe@gmx.de|Sascha Peilicke}} {{FeatureDone|Kigo|Fix smaller issues with KNS2|sasch.pe@gmx.de|Sascha Peilicke}} {{FeatureDone|Kigo|Beautify the default theme|sasch.pe@gmx.de|Sascha Peilicke}} {{FeatureInProgress|Kigo|Allow arbitrary jumps in the undo/redo history|sasch.pe@gmx.de|Sascha Peilicke}} {{FeatureInProgress|Kigo|Improve final score visuals|sasch.pe@gmx.de|Sascha Peilicke}} {{FeatureTodo|KSudoku|Import new engine|joselb@gmx.net|Johannes Bergmeier}} {{FeatureTodo|KSudoku|Port game to new engine|joselb@gmx.net|Johannes Bergmeier}} {{FeatureTodo|KSudoku|Adapt view to show information provided by engine|joselb@gmx.net|Johannes Bergmeier}} {{FeatureTodo|KSudoku|Add new actions to GUI|joselb@gmx.net|Johannes Bergmeier}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|libkexiv2|Store metadata in libexiv2 containers, do not lossily encode to QByteArray. Bug 183171|marcel.wiesweg@gmx.de|Marcel Wiesweg}} {{FeatureTodo|libkexiv2|Expose exiv2 API for accessing embedded previews in RAW files.|marcel.wiesweg@gmx.de|Marcel Wiesweg}} {{FeatureTodo|libkdcraw|Make color management options more flexible|marcel.wiesweg@gmx.de|Marcel Wiesweg}} {{FeatureDone|libksane|Add basic twain support on Windows|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} {{FeatureDone|libksane|External API for specifying preview resolution|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} {{FeatureInProgress|libksane|External API for handling selections|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} {{FeatureTodo|libksane|Improve auto-selection|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} {{FeatureInProgress|gwenview|Rework start page|agateau@kde.org|Aurelien Gateau}} {{FeatureInProgress|gwenview|Implement picture importer|agateau@kde.org|Aurelien Gateau}} {{FeatureInProgress|gwenview|New save-as behavior (go to saved as document)|agateau@kde.org|Aurelien Gateau}} {{FeatureTodo|gwenview|Show Nepomuk info in image meta info|agateau@kde.org|Aurelien Gateau}} {{FeatureTodo|gwenview|Persistent changes|agateau@kde.org|Aurelien Gateau}} {{FeatureTodo|gwenview|Folder thumbnails|agateau@kde.org|Aurelien Gateau}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|katepart|Add interface to access highlighting information, port html-export plugin|mail@milianw.de|Milian Wolff}} {{FeatureTodo|KCalendarSystem|Add new astronomical calculation support classes to be used in kdelibs to build new astronomically based calendar systems, and in kdepim to build new version of libkholiday.|john@layt.net|John Layt}} {{FeatureTodo|KCalendarSystem|Add new calendar systems: Bahaii, Coptic, Ethiopean, Chinese, Japanese, Buddhist, etc.|john@layt.net|John Layt}} {{FeatureDone|KCalendarSystem|Add new calendar systems: Indian Civil (Saka), Pure Julian, Pure Gregorian.|john@layt.net|John Layt}} {{FeatureTodo|kdecore|Group policy (Windows) backend for KAuth|drf@kde.org|Dario Freddi}} {{FeatureDone|KDEPrint|Add Odd/Even page selection and server-side page selection when using CUPS.|john@layt.net|John Layt}} {{FeatureTodo|KDEPrint|If no file printing support in Qt4.5, migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter.  To be discussed on k-c-d first.|john@layt.net|John Layt}} {{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}} {{FeatureTodo|kdeui|Implement caps-lock warning for password entry widgets|lemma@confuego.org|Michael Leupold}} {{FeatureInProgress|KLocale|Implement ISO 4217 Currency Code support (http://en.wikipedia.org/wiki/ISO_4217).|john@layt.net|John Layt}} {{FeatureInProgress|KLocale|Separate numeric decimal places and monetary decimal places.|john@layt.net|John Layt}} {{FeatureTodo|KLocale|Implement support for number grouping other than thousands using LC_NUMERIC and LC_MONETARY formats, e.g. India 00 00 000 and China 0000 0000.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add configuration for AM/PM symbols.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Full POSIX compliant format support for date, time, numbers and money.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement more 'named' date/time formats, e.g. ISO, UnixTimestamp, RFC3339, etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add Full date format in addition to existing short and long.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add default colour to optionally display negative numbers.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement separate backends for each supported platform/desktop to use platform localisation in place of KDE locale.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for additional Country Code standards: ISO Alpha 3, ISO Numeric 3, FIPS-10.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for Country Code sub-regions, i.e. States/Provinces/etc. Needed for new KHolidays.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdeui|Improvements to KDatePicker/KDateTable for feature parity with Plasma Calendar widget, i.e. holiday support, select calendar system, etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|Khtml|Improvements in kwallet integration|edulix@gmail.com|Eduardo Robles Elvira}} {{FeatureTodo|Khtml|Basic audio/video tag support|germain@ebooksfrance.org|Michael Howell and Germain Garand}} {{FeatureTodo|Khtml|Implement more of DOM3's CSSOM View module|germain@ebooksfrance.org|Germain Garand}} {{FeatureInProgress|kfile|Move KMetaDataWidget and KMetaDataConfigurationDialog from Dolphin to kfile|peter.penz@gmx.at|Peter Penz}} {{FeatureDone|katepart|Add mapping support for the vi input mode's normal mode|ehambergαgmail.com|Erlend Hamberg}} {{FeatureTodo|katepart|Add visual block mode and make the basic commands support it|ehambergαgmail.com|Erlend Hamberg}} {{FeatureInProgress|katepart|Improve TemplateInterface, i.e. snippet support|mail@milianw.de|Milian Wolff}} {{FeatureInProgress|kdecore|Move event-filter installation out of KApplication and into a new class|lemma@confuego.org|Michael Leupold}} {{FeatureInProgress|kdecore|Polkit-1 backend for KAuth|drf@kde.org|Dario Freddi}} {{FeatureInProgress|kdeui|Support floating point font sizes|christoph@maxiom.de|Christoph Feck}} {{FeatureInProgress|kdeui|Finish the time chooser widget|lemma@confuego.org|Michael Leupold}} {{FeatureInProgress|kio|Limit number of connections per host (per application), add job priorities|ahartmetz@gmail.com|Andreas Hartmetz}} {{FeatureInProgress|kio|Support for automatically renaming conflicting files during copy and move operations|toddrme2178@gmail.com|Todd}} {{FeatureTodo|kio|Better file information in file conflict dialog|toddrme2178@gmail.com|Todd}} {{FeatureInProgress|kio|Remember downloads via Nepomuk|trueg@kde.org|Sebastian Trueg}} {{FeatureInProgress|webkit|Move KDE integration of QtWebKit into kdelibs (but not KPart!)|uwolfer@kde.org|Urs Wolfer}} {{FeatureInProgress|buildsystem|Modular build of KDE modules|neundorf@kde.org|Alexander Neundorf}} {{FeatureDone|katepart|Enable command line scripting again|dhaumann@kde.org|Dominik Haumann}} {{FeatureDone|katepart|Support byte-order mark in unicode files|jowenn@kde.org|Joseph Wenninger}} {{FeatureInProgress|katepart|Improve katepart Vim mode.|alecastanyo@gmail.com|Alejandro Castaño}} {{FeatureInProgress|nepomuk|Add const versions of the accessor methods to the Nepomuk::Types classes|trueg@kde.org|Sebastian Trueg}} &lt;br /&gt;
{{FeatureInProgress|kdeui|Finalize the api for the new systemtray: KStatusNotifierItem|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|kdeui|DBus interface in StatusNotifierItem to connect it with freedesktop notifications instances|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|kdeui|API to integrate KStatusNotifierItem and KNotification: both as class api and DBus specification API|davide.bettio@kdemail.net|Davide Bettio}} &lt;br /&gt;
{{FeatureInProgress|kfile|Make status of file I/O display on file/folder icons(&amp;quot;progress in icons&amp;quot;).|shaun.reich@kdemail.net|Shaun Reich}}&lt;br /&gt;
{{FeatureInProgress|knewstuff|Introduce binary incompatible knewstuff library (as knewstuff3, keeping knewstuff2 as well) which can talk directly to open desktop services via libattica|jpwhiting@kde.org|Jeremy Whiting}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KMix|Nicer OSD (icon, mute state)|esken@kde.org|Christian Esken}} {{FeatureTodo|KMix|Amend Keyboard Shortcuts|esken@kde.org|Christian Esken}} {{FeatureInProgress|KMix|Allow arbitrary ordering of controls|esken@kde.org|Christian Esken}} {{FeatureInProgress|KMix|Add WhatsThis help on controls (Bug 70042)|esken@kde.org|Christian Esken}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdenetwork  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}} {{FeatureTodo|Kopete|Jabber Jingle video support|detlev.casanova@gmail.com|Detlev Casanova}} {{FeatureTodo|Kopete|Jabber Jingle ICE support|detlev.casanova@gmail.com|Detlev Casanova}} {{FeatureTodo|Kopete|Add support for urls to Bonjour plugin|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Kopete|Rich text support for ICQ|kedgedev@gmail.com|Roman Jarosz}} {{FeatureInProgress|KGet|Support for verifying signed files|mat69@gmx.net|Matthias Fuchs}} {{FeatureInProgress|KGet|Support for custom NewTransferDialog in BTPlugin|l.appelhans@gmx.de|Lukas Appelhans}} {{FeatureInProgress|Kopete|Contacts plasmoid|earthwings@gentoo.org|Dennis Nienhüser}} {{FeatureInProgress|Kopete|Telepathy protocol plugin|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Kopete|Telepathy Tubes Desktop Sharing plugin|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Kopete|Akonadi Logger(modify the history plugin)|roideuniverse@gmail.com|Kaushik Saurabh}} {{FeatureInProgress|Krdc|Telepathy Tubes support||Abner Silva}} {{FeatureInProgress|Krfb|Telepathy Tubes support|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Krfb|Core restructuring|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Telepathy|Account Management KCM|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Telepathy|Mission Control launcher KDED|grundleborg@googlemail.com|George Goldberg}} {{FeatureDone|Kopete|Create avatars from a webcam device |alex@eyeos.org |Alex Fiestas}} {{FeatureDone|Krdc|Redesigned workflow to create a new connection|uwolfer@kde.org|Urs Wolfer}} {{FeatureDone|Krdc|Full Screen Switching|murraytony@gmail.com|Tony Murray}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdepim  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|Akregator|Port to use KNotificationItem|tpr@d5k.net|Teemu Rytilahti}} &lt;br /&gt;
{{FeatureInProgress|KAlarm|Implement Akonadi support|djarvie @ kde.org|David Jarvie}} &lt;br /&gt;
{{FeatureInProgress|KAlarm|Provide audio-only alarms|djarvie @ kde.org|David Jarvie}} &lt;br /&gt;
{{FeatureInProgress|KJots|Port to Grantlee for theming support|steveire|Stephen Kelly}}&lt;br /&gt;
{{FeatureInProgress|KJots|Port to Akonadi|steveire|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureDone|plasmaboard|Added a virtual keyboard plasmoid for touchscreen users|bjoern@ruberg-wegener.de|Björn Ruberg}}&lt;br /&gt;
{{FeatureInProgress|KDE Observatory|A new plasmoid for visualizing KDE projects status (commits, commiters, bugs, krazy status, etc)|sandroandrade@kde.org|Sandro S. Andrade}}&lt;br /&gt;
{{FeatureInProgress|opendesktop|Add messaging|ewoerner@kde.org|Eckhart Wörner}} {{FeatureInProgress|opendesktop|Add friendship management|ewoerner@kde.org|Eckhart Wörner}}&lt;br /&gt;
{{FeatureInProgress|ocs engine|Add possibility to use different providers, use attica from kdesupport|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|knowledgebase|port knowledgebase plasmoid to new engine|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|knowledgebase|Add categories|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureInProgress|opendesktop|port opendesktop plasmoid to new engine and rename accordingly|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureInProgress|opendesktop activities|port opendesktop activities plasmoid to new engine and rename accordingly|ewoerner@kde.org|Eckhart Wörner}}&lt;br /&gt;
{{FeatureInProgress|microblogging|new appearance and new twitter api pieces support|notmart@gmail.com|Marco Martin}} &lt;br /&gt;
|} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdesdk  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate snowball stemmer for glossary|shafff@NOSPAMukr.net|Nick Shaforostoff}} {{FeatureTodo|Lokalize|Continue implementing XLIFF spec|shafff@NOSPAMukr.net|Nick Shaforostoff}} {{FeatureTodo|Lokalize|Segmentation [editing] functionality|shafff@NOSPAMukr.net |Nick Shaforostoff}} {{FeatureTodo|Lokalize|Remote translation memories|shafff@NOSPAMukr.net|Nick Shaforostoff}} {{FeatureTodo|Lokalize|Integrate with nepomuk (fast stats retrieval, tag cloud - incl sharing!)|shafff@NOSPAMukr.net|Nick Shaforostoff}} {{FeatureDone|Kate|Add common vim commands like :wq, :new, :bp/bn, etc.|ehambergαgmail.com|Erlend Hamberg}} {{FeatureTodo|Kate|Replace old snippet plugin through TNG plugin|jowenn(you_know)kde(here_too)org|Joseph Wenninger}} {{FeatureTodo|Kate|Integreate GHNS into snippets TNG|jowenn(you_know)kde(here_too)org|Joseph Wenninger}} {{FeatureInProgress|Kate|Refactor parts from snippets TNG plugin into a common library for use by the plugin and for use in kdevelop|jowenn(you_know)kde(here_too)org|Joseph Wenninger}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdeutils  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|haraldhv@stud.ntnu.no|Harald Hvaal}} {{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|haraldhv@stud.ntnu.no|Harald Hvaal}} {{FeatureTodo|Ark|Add feedback for the latest operation in the status bar|kubito@gmail.com|Raphael Kubo da Costa}} {{FeatureTodo|Ark|Add feedback for the latest operation in the status bar|kubito@gmail.com|Raphael Kubo da Costa}} {{FeatureTodo|Ark|Try multiple plugins for each archive type before failing|kubito@gmail.com|Raphael Kubo da Costa}} {{FeatureTodo|Ark|Make the internal previewer optional|kubito@gmail.com|Raphael Kubo da Costa}} {{FeatureTodo|KGpg|Make keyserver actions possible to use on multiple keyservers at once|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|KGpg|Add &amp;amp;quot;caff&amp;amp;quot; mode for keysigning|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|KGpg|Allow searching for trust path in keyring|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|KGpg|Add improved key import result window (with useful summary, filtering, reasonable default size etc.)|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|KGpg|Make generating a key a KJob so it get's better notification support|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|Okteta|add editing capability to Decoding table |kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add further export formats like s-record and intel 16|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureTodo|Okteta|add QIODevice for AbstractByteArrayModel and make mimetype detection use this instead of only filename |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Improve the titels of the changes to the bytearray to be more descriptive, best using ids to avoid text string|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Refactor mouse input to controllers for the bytearray widget|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add a general KPart adapter to Kasten, than finish port of Okteta KPart to Okteta Kasten|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add UTF-8 option to bytearray lineedit|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add marking of bytearray section to widgets, so tools like strings or pod decoder can mark the source, instead of selecting it|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|printer-applet|Restore feature parity with KDEPrint3 where possible.||Jonathon Riddell, John Layt}} {{FeatureInProgress|Okteta|Make dialogs for Goto, Search &amp;amp; Replace embedded|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureInProgress|Okteta|Add tool to view decoding of complex structures|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureDone|kdelirc|Communicate to lirc through solid|michael_zanetti@gmx.net|Michael Zanetti}} {{FeatureInProgress|kdelirc|Integrate solid backend into kdelirc frontend|fscheffold@googlemail.com|Frank Scheffold}} {{FeatureTodo|kdelirc|Cycle mode function|fscheffold@googlemail.com|Frank Scheffold}} {{FeatureTodo|kdelirc|Add a try button in configurations|michael_zanetti@gmx.net|Michael Zanetti}} {{FeatureDone|Okteta|Rename libkakao to Kasten and make the Okteta KPart use it|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|Add embedded dialog to set selection range|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureDone|Okteta|Add Base64 encoder|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureDone|Okteta|Added data generators, like pattern, sequence or from clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureDone|Okteta|Added option to split views|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Other  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
{{FeatureInProgress|kdesupport|Add libattica to kdesupport|ewoerner@kde.org|Eckhart Wörner}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.4_Feature_Plan</id>
		<title>Schedules/KDE4/4.4 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.4_Feature_Plan"/>
				<updated>2009-11-03T23:13:39Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* kdepim */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.4 release. &lt;br /&gt;
&lt;br /&gt;
See also: &lt;br /&gt;
&lt;br /&gt;
*[[Schedules/KDE4/4.4 Release Schedule]] &lt;br /&gt;
*[[Schedules/KDE4/4.4 Release Goals]] &lt;br /&gt;
*[[Schedules/KDE4/4.3 Feature Plan]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Legend: &lt;br /&gt;
&lt;br /&gt;
*todo =&amp;amp;gt; not started yet &lt;br /&gt;
*in-progress =&amp;amp;gt; started, but not completed yet &lt;br /&gt;
*done =&amp;amp;gt; completed&lt;br /&gt;
&lt;br /&gt;
__TOC__ &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdeadmin  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|system-config-printer-kde|Restore feature parity with KDEPrint3 where possible.||Jonathan Riddell, John Layt}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdeartwork  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdebase-apps  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Konqueror|Improvements in session-management|edulix@gmail.com|Eduardo Robles Elvira}} {{FeatureTodo|Konqueror|Improvements in tab-bar widget|edulix@gmail.com|Eduardo Robles Elvira}} {{FeatureInProgress|Konqueror|New Konqueror bookmarks using Akonadi and Nepomuk, awesome bar|edulix@gmail.com|Eduardo Robles Elvira}} {{FeatureInProgress|Konqueror|Sidebar cleanups; re-introducing the history module|faure@kde.org|David Faure}} {{FeatureInProgress|Dolphin|&lt;br /&gt;
Version control intergration|peter.penz@gmx.at|Peter Penz}} {{FeatureInProgress|Dolphin|&lt;br /&gt;
Improved search bar including search configuration|peter.penz@gmx.at|Peter Penz}} {{FeatureInProgress|Dolphin|&lt;br /&gt;
Refactoring of Information Panel. KMetaDataWidget and KMetaDataConfigurationDialog should be moved to kdelibs.|peter.penz@gmx.at|Peter Penz}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KWallet|Single Sign On using PAM|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Backend for UPnP|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Backend for LISa|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Backend for SMB|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|network kioslave|Integrate with remote and zeroconf kioslaves|kossebau@kde.org|Friedrich Kossebau}}&lt;br /&gt;
{{FeatureTodo|smb kioslave|add kwallet support|brandon.ml@gmail.com|Carlo Segato}} {{FeatureDone|thumbnail kioslave|Support for comic-book cover previews (.cbr, .cbz, .cbt files)|qwertymaniac@gmail.com|Harsh J}}&lt;br /&gt;
{{FeatureInProgress|thumbnail kioslave|Support for rotated jpegs|wilderkde@gmail.com|Jacopo De Simoi}}&lt;br /&gt;
 {{FeatureInProgress|Nepomuk|Integrate Filesystem service to handle mounting/unmounting of removable devices|trueg@kde.org|Sebastian Trueg}} {{FeatureInProgress|Nepomuk|Add nepomuk kio slave which handles all stating of Nepomuk resources|trueg@kde.org|Sebastian Trueg}} {{FeatureInProgress|Nepomuk|Port Nepomuk to Virtuoso: query service, strigi service|trueg@kde.org|Sebastian Trueg}} {{FeatureInProgress|Locale KCM|Add support for new KLocale features (see kdelibs section) including Currency Code, Decimal Places, Digit Groups, AM/PM, etc.  Improvements to usability of existing options.|john@layt.net|John Layt}} {{FeatureInProgress|Device Automounting|Add support for storage device automounting|tdfischer@fedoraproject.org|Trever Fischer}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Non-Plasma, Non-KWin &lt;br /&gt;
{{FeatureTodo|Icons KCM|More configurable icon sizes|christoph@maxiom.de|Christoph Feck}} {{FeatureTodo|Fonts KCM|More configurable fonts|christoph@maxiom.de|Christoph Feck}} {{FeatureTodo|System Activity|Show CPU usage etc|tapsell@kde.org|John Tapsell}} {{FeatureInProgress|Date/Time KCM|Plasma themed clock|christoph@maxiom.de|Christoph Feck}} {{FeatureInProgress|System Activity|Add scripting support|tapsell@kde.org|John Tapsell}} {{FeatureDone|Solid|RemoteControl Manager/Interface + Lirc backend|michael_zanetti@gmx.net|Michael Zanetti}} {{FeatureDone|System Activity|KAuth integration|tapsell@kde.org|John Tapsell}} {{FeatureDone|System Settings|Improve module appearance for Icons View and provide searching hints|sourtooth@gmail.com|Ben Cooksley}} {{FeatureInProgress|System Setitngs|Reorganize modules|sourtooth@gmail.com|Ben  Cooksley}} {{FeatureInProgress|Mouse KCM|XInput2 support|fredrik@kde.org|Fredrik Höglund}} {{FeatureInProgress|Attica KCM|Initial import|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KRunner &lt;br /&gt;
{{FeatureDone|KRunner|Window management runner|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureTodo|KRunner|Solid device runner|wilderkde@gmail.com|Jacopo De Simoi}} {{FeatureInProgress|KRunner|Add Firefox support to the bookmark runner|jangerrit@weiler-marker.com|Jan Gerrit Marker}} {{FeatureTodo|KRunner|Solid device runner|wilderkde@gmail.com|Jacopo De Simoi}} {{FeatureInProgress|KRunner|Single runner mode|wilderkde@gmail.com|Jacopo De Simoi}} {{FeatureTodo|KRunner|Manage actions in default interface|wilderkde@gmail.com|Jacopo De Simoi}} &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Plasma - Priority Features &lt;br /&gt;
{{FeatureInProgress|netbook shell|a plasma shell and various containments/applets tailored for netbooks (tech preview status in 4.4)|notmart@gmail.com|Marco Martin}} &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | Plasma &lt;br /&gt;
{{FeatureTodo|libplasma|better text box look with new svg elements|notmart@gmail.com|Marco Martin}} &lt;br /&gt;
{{FeatureInProgress|libplasma|Improvements to Calendar/Clock widgets. Improved config ui. Allow multiple holidays on same day. Allow multiple Holiday Regions. Holidays in Tooltip. Holiday region shown in info. Weekends. etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureInProgress|knowledge base plasmoid|new plasmoid: Opendesktop.org knowledgebase client|notmart@gmail.com|Marco Martin}} {{FeatureInProgress|Quicklaunch Plasmoid|new icon size/rows config ui|l.appelhans@gmx.de|Lukas Appelhans}} {{FeatureInProgress|libplasma|Allow user to choose Calendar System to be displayed in Calendar widgets|john@layt.net|John Layt}} {{FeatureInProgress|opendesktop plasmoid|show friends activity|notmart@gmail.com|Marco Martin}} {{FeatureDone|libplasma/kwin|slide animation for popups done by kwin|notmart@gmail.com|Marco Martin}} {{FeatureDone|System tray|Plasmoid support in the system tray|notmart@gmail.com|Marco Martin}} {{FeatureDone|System tray|config ui to decide between always shown, always hidden and auto hide for each systray item|notmart@gmail.com|Marco Martin}} {{FeatureInProgress|Plasma Addon|Wikipedia KRunner|sebas@kde.org|Sebastian Kügler}} {{FeatureInProgress|Plasma Addon|Webslice Plasmoid, qgraphicswidget|sebas@kde.org|Sebastian Kügler}} {{FeatureInProgress|Plasma Addon|Battery popup layout improvements|sebas@kde.org|Sebastian Kügler}} &lt;br /&gt;
{{FeatureTodo|Plasma Addon| Screen-Management Applet for plasma being an easy-to-use alternative to krandrtray adding some functionality for screen management. Builds on top of Kephal |bjoern@ruberg-wegener.de|Björn Ruberg}} &lt;br /&gt;
{{FeatureInProgress|Plasma Mouse Plugins UI|Yet Another UI Redesign|chani@kde.org|Chani}} {{FeatureTodo|libplasma|Plasmoid Cloning - because having to set things up from scratch repeatedly gets old fast|chani@kde.org|Chani}} {{FeatureTodo|taskbar|&amp;quot;other desktops&amp;quot; group - I may not have time for this, feel free to take it|chani@kde.org|Chani}} {{FeatureInProgress|Plasma Weather Ion|New Weather Ion for the wetter.com data source provider|thilo@ginkel.com|Thilo-Alexander Ginkel}} {{FeatureInProgress|Plasma Animator|Create new Plasma::Animator API based on Qt 4.6 Kinetic||Adenilson Cavalcanti, Igor Trindade}} {{FeatureTodo|Plasma KineticScrolling|Port KineticScrolling to Qt 4.6 Kinetic||Adenilson Cavalcanti, Igor Trindade}} {{FeatureInProgress|Plasma-Netbook Animated Layouts|Create Animated Layouts to SAL and NewsPaper||Adenilson Cavalcanti, Igor Trindade}} {{FeatureInProgress|Notification queueing|||Aaron Seigo}} {{FeatureInProgress|Trust Levels|package signing and verification||Rob Sheepmaker Aaron Seigo}} {{FeatureInProgress|JS plasmoid improvements|Animations, KIO and QFile bindings; latter two by security policy||Aaron Seigo}}{{FeatureInProgress|Kiosk improvements|||Aaron Seigo}} {{FeatureInProgress|Activity Bar|||Aaron Seigo}} {{FeatureTodo|folderview|Hover action icons in the icon view|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|libplasma|Show the PopupApplet's BusyWidget inside the popup|giuliocamuffo@gmail.com|Giulio Camuffo}}&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KWin - Core &lt;br /&gt;
{{FeatureInProgress|KWin|Window tabbing|matamax123@gmail.com|Jorge Emilio Mata}} {{FeatureInProgress|KWin|Window tiling|nsm.nikhil@gmail.com|Nikhil Marathe}} {{FeatureDone|KWin|Quick window maximization and tiling by dragging windows to the edge of the screen|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|Improved virtual desktop KCM|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|Improved window switcher (Alt+Tab)|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|SVG based window decoration theme engine (Aurorae)|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|Merged Ozone and Nitrogen window decorations into Oxygen|hugo.pereira@free.fr|Hugo Pereira Da Costa}} {{FeatureInProgress|KWin|Support for new EWMH hints|fredrik@kde.org|Fredrik Höglund}} &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KWin - Desktop Effects &lt;br /&gt;
{{FeatureDone|KWin|Mouse action support in Present Windows effect|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|New present windows mode to only display windows from a single application|kde@martin-graesslin.com|Martin Gräßlin}} {{FeatureDone|KWin|Improved flip switch effect|kde@martin-graesslin.com|Martin Gräßlin}} &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;text-align: center;&amp;quot; colspan=&amp;quot;4&amp;quot; | KDM&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|pykde4|Python 3 support for PyKDE4|simon@simonzone.com|Simon Edwards}} {{FeatureInProgress|qyoto|Create a new generator for the C# assemblies|arno@arnorehn.de|Arno Rehn}} {{FeatureTodo|qyoto|Replace the current C# cmake macros with more sophisticated ones that also work on windows.|arno@arnorehn.de|Arno Rehn}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdeedu  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Information links in-place for each technical term|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Simulate Lunar Eclipses|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Simulate Satellites and Iridium Flares|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Social and Geographical Integration for KStars|akarshsimha@gmail.com|Akarsh Simha}} {{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}} {{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}} {{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}} {{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}} {{FeatureDone|Cantor|Import to kdeedu |alexanderrieder@gmail.com|Alexander Rieder}} &lt;br /&gt;
{{FeatureInProgress|Rocs|Import to kdeedu |tumaix@gmail.com|Tomaz Canabrava}}&lt;br /&gt;
{{FeatureInProgress|KAlgebra|Support for lists|aleixpol@kde.org|Aleix Pol}} {{FeatureInProgress|Marble|Add &amp;quot;download region&amp;quot; feature|jmho@c-xx.com|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|GeoData Model/View rework||Thibaut Gridel}}&lt;br /&gt;
{{FeatureInProgress|Parley|Rewritten practice|d.laidig@gmx.de|Daniel Laidig}} {{FeatureDone|KAlgebra|Improved MathML Presentation support|aleixpol@kde.org|Aleix Pol}} {{FeatureDone|KAlgebra|Added 2D parametric function plotting|aleixpol@kde.org|Aleix Pol}} {{FeatureDone|KAlgebra|Improved jump detections|aleixpol@kde.org|Aleix Pol}} {{FeatureDone|KAlgebra|Made lambda expressions more usable|aleixpol@kde.org|Aleix Pol}} {{FeatureDone|KStars|Improve Observing List Wizard|prakash.mohan@kdemail.net|Prakash Mohan}} {{FeatureDone|KTurtle|Add F2 context help|nielsslot@gmail.com|Niels Slot}} {{FeatureDone|KTurtle|Add SVG export for the canvas|nielsslot@gmail.com|Niels Slot}} {{FeatureDone|KTurtle|Add HTML export of the code|nielsslot@gmail.com|Niels Slot}} {{FeatureDone|KTurtle|Add printing support for the canvas|nielsslot@gmail.com|Niels Slot}} {{FeatureTodo|Marble|Add proper support for GPX waypoints, tracks and routes display|anders@alweb.dk|Anders Lund}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdegames  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KBreakOut|Level Sets|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureTodo|KBreakOut|Sound|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureTodo|KDiamond|Intelligent animation pre-caching|majewsky@gmx.net|Stefan Majewsky}} {{FeatureTodo|KDiamond|Refactor Board and Diamond classes|majewsky@gmx.net|Stefan Majewsky}} {{FeatureTodo|Kolf|Replace with Kolf 2 (help on coding, artwork and level design desired) &amp;gt;&amp;gt;delayed to KDE 4.5&amp;lt;&amp;lt;|majewsky@gmx.net|Stefan Majewsky}} {{FeatureTodo|KsirK|rewrite AI code or at least correct most problems related in bug #170777. Volunteers wanted!|kleag@free.fr|Gaël de Chalendar}} {{FeatureTodo|KsirK|Boost playing over Jabber|kleag@free.fr|Gaël de Chalendar}} {{FeatureTodo|KSquares|Re-write computer player, make it act faster and more intelligent|ewoerner@kde.org|Eckhart Wörner}} {{FeatureTodo|KSquares|Add more types of boards: hexagonal, triangular|ewoerner@kde.org|Eckhart Wörner}} {{FeatureInProgress|Gluon|release first gluon lib with one game. [http://gluon.tuxfamily.org/]|istdasklar@gmail.com|Sacha schutz}} {{FeatureInProgress|Granatier|New Bomberman like game for KDE 4|k.hias@gmx.de|Mathias Kraus}} {{FeatureInProgress|Granatier|Implement all Bonuses from the default theme|k.hias@gmx.de|Mathias Kraus}} {{FeatureDone|Granatier|Add support for a background|k.hias@gmx.de|Mathias Kraus}} {{FeatureTodo|Granatier|Sidebar with informations regarding the players, like bonuses, handicaps ...|k.hias@gmx.de|Mathias Kraus}} {{FeatureTodo|Granatier|Arena Editor|k.hias@gmx.de|Mathias Kraus}} {{FeatureTodo|Granatier|Replace Phonon with QtMultimedia for better sound|k.hias@gmx.de|Mathias Kraus}} {{FeatureInProgress|KAtomic|Level Sets|dimsuz@gmail.com|Dmitry Suzdalev}} {{FeatureInProgress|KsirK|Polish the skin editor (doc, contextual help, ...)|kleag@free.fr|Gaël de Chalendar}} {{FeatureInProgress|Palapeli|New puzzle game for KDE 4|majewsky@gmx.net|Stefan Majewsky}} {{FeatureDone|Bovo|Highlight the last move to be easier to spot|pelladigabor@gmail.com|Pelladi Gabor}} {{FeatureDone|Bovo|Enable undo after the game has ended, to be able to correct a fatal mis-click|pelladigabor@gmail.com|Pelladi Gabor}} {{FeatureDone|KBreakOut|Improved keyboard support|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureDone|KBreakOut|Fullscreen support|fela.kde@gmail.com|Fela Winkelmolen}} {{FeatureDone|KDiamond|Improve time display|majewsky@gmx.net|Stefan Majewsky}} {{FeatureDone|KGoldrunner|Add Mazes game (37 levels), contributed by Steve Mann.|ianw2@optusnet.com.au|Ian Wadham}} {{FeatureDone|KsirK|Previous/Next in start new game as described in bug #170774|kleag@free.fr|Gaël de Chalendar}} {{FeatureInProgress|Kigo|New Go game for KDE 4|sasch.pe@gmx.de|Sascha Peilicke}} {{FeatureDone|Kigo|Fix smaller issues with KNS2|sasch.pe@gmx.de|Sascha Peilicke}} {{FeatureDone|Kigo|Beautify the default theme|sasch.pe@gmx.de|Sascha Peilicke}} {{FeatureInProgress|Kigo|Allow arbitrary jumps in the undo/redo history|sasch.pe@gmx.de|Sascha Peilicke}} {{FeatureInProgress|Kigo|Improve final score visuals|sasch.pe@gmx.de|Sascha Peilicke}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|libkexiv2|Store metadata in libexiv2 containers, do not lossily encode to QByteArray. Bug 183171|marcel.wiesweg@gmx.de|Marcel Wiesweg}} {{FeatureTodo|libkexiv2|Expose exiv2 API for accessing embedded previews in RAW files.|marcel.wiesweg@gmx.de|Marcel Wiesweg}} {{FeatureTodo|libkdcraw|Make color management options more flexible|marcel.wiesweg@gmx.de|Marcel Wiesweg}} {{FeatureDone|libksane|Add basic twain support on Windows|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} {{FeatureDone|libksane|External API for specifying preview resolution|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} {{FeatureInProgress|libksane|External API for handling selections|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} {{FeatureTodo|libksane|Improve auto-selection|kare.sars@iki.fi|K&amp;amp;aring;re S&amp;amp;auml;rs}} {{FeatureInProgress|gwenview|Rework start page|agateau@kde.org|Aurelien Gateau}} {{FeatureInProgress|gwenview|Implement picture importer|agateau@kde.org|Aurelien Gateau}} {{FeatureInProgress|gwenview|New save-as behavior (go to saved as document)|agateau@kde.org|Aurelien Gateau}} {{FeatureTodo|gwenview|Show Nepomuk info in image meta info|agateau@kde.org|Aurelien Gateau}} {{FeatureTodo|gwenview|Persistent changes|agateau@kde.org|Aurelien Gateau}} {{FeatureTodo|gwenview|Folder thumbnails|agateau@kde.org|Aurelien Gateau}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|katepart|Add interface to access highlighting information, port html-export plugin|mail@milianw.de|Milian Wolff}} {{FeatureTodo|KCalendarSystem|Add new astronomical calculation support classes to be used in kdelibs to build new astronomically based calendar systems, and in kdepim to build new version of libkholiday.|john@layt.net|John Layt}} {{FeatureTodo|KCalendarSystem|Add new calendar systems: Bahaii, Coptic, Ethiopean, Chinese, Japanese, Buddhist, etc.|john@layt.net|John Layt}} {{FeatureDone|KCalendarSystem|Add new calendar systems: Indian Civil (Saka), Pure Julian, Pure Gregorian.|john@layt.net|John Layt}} {{FeatureTodo|kdecore|Group policy (Windows) backend for KAuth|drf@kde.org|Dario Freddi}} {{FeatureDone|KDEPrint|Add Odd/Even page selection and server-side page selection when using CUPS.|john@layt.net|John Layt}} {{FeatureTodo|KDEPrint|If no file printing support in Qt4.5, migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter.  To be discussed on k-c-d first.|john@layt.net|John Layt}} {{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}} {{FeatureTodo|kdeui|Implement caps-lock warning for password entry widgets|lemma@confuego.org|Michael Leupold}} {{FeatureInProgress|KLocale|Implement ISO 4217 Currency Code support (http://en.wikipedia.org/wiki/ISO_4217).|john@layt.net|John Layt}} {{FeatureInProgress|KLocale|Separate numeric decimal places and monetary decimal places.|john@layt.net|John Layt}} {{FeatureTodo|KLocale|Implement support for number grouping other than thousands using LC_NUMERIC and LC_MONETARY formats, e.g. India 00 00 000 and China 0000 0000.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add configuration for AM/PM symbols.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Full POSIX compliant format support for date, time, numbers and money.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement more 'named' date/time formats, e.g. ISO, UnixTimestamp, RFC3339, etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add Full date format in addition to existing short and long.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Add default colour to optionally display negative numbers.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement separate backends for each supported platform/desktop to use platform localisation in place of KDE locale.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for additional Country Code standards: ISO Alpha 3, ISO Numeric 3, FIPS-10.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|KLocale|Implement support for Country Code sub-regions, i.e. States/Provinces/etc. Needed for new KHolidays.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|kdeui|Improvements to KDatePicker/KDateTable for feature parity with Plasma Calendar widget, i.e. holiday support, select calendar system, etc.|john@layt.net|John Layt}} &lt;br /&gt;
{{FeatureTodo|Khtml|Improvements in kwallet integration|edulix@gmail.com|Eduardo Robles Elvira}} {{FeatureInProgress|kfile|Move KMetaDataWidget and KMetaDataConfigurationDialog from Dolphin to kfile|peter.penz@gmx.at|Peter Penz}} {{FeatureDone|katepart|Add mapping support for the vi input mode's normal mode|ehambergαgmail.com|Erlend Hamberg}} {{FeatureTodo|katepart|Add visual block mode and make the basic commands support it|ehambergαgmail.com|Erlend Hamberg}} {{FeatureInProgress|katepart|Improve TemplateInterface, i.e. snippet support|mail@milianw.de|Milian Wolff}} {{FeatureInProgress|kdecore|Move event-filter installation out of KApplication and into a new class|lemma@confuego.org|Michael Leupold}} {{FeatureInProgress|kdecore|Polkit-1 backend for KAuth|drf@kde.org|Dario Freddi}} {{FeatureInProgress|kdeui|Support floating point font sizes|christoph@maxiom.de|Christoph Feck}} {{FeatureInProgress|kdeui|Finish the time chooser widget|lemma@confuego.org|Michael Leupold}} {{FeatureInProgress|kio|Limit number of connections per host (per application), add job priorities|ahartmetz@gmail.com|Andreas Hartmetz}} {{FeatureInProgress|kio|Support for automatically renaming conflicting files during copy and move operations|toddrme2178@gmail.com|Todd}} {{FeatureTodo|kio|Better file information in file conflict dialog|toddrme2178@gmail.com|Todd}} {{FeatureInProgress|kio|Remember downloads via Nepomuk|trueg@kde.org|Sebastian Trueg}} {{FeatureInProgress|webkit|Move KDE integration of QtWebKit into kdelibs (but not KPart!)|uwolfer@kde.org|Urs Wolfer}} {{FeatureInProgress|buildsystem|Modular build of KDE modules|neundorf@kde.org|Alexander Neundorf}} {{FeatureDone|katepart|Enable command line scripting again|dhaumann@kde.org|Dominik Haumann}} {{FeatureDone|katepart|Support byte-order mark in unicode files|jowenn@kde.org|Joseph Wenninger}} {{FeatureInProgress|katepart|Improve katepart Vim mode.|alecastanyo@gmail.com|Alejandro Castaño}} {{FeatureInProgress|nepomuk|Add const versions of the accessor methods to the Nepomuk::Types classes|trueg@kde.org|Sebastian Trueg}} &lt;br /&gt;
{{FeatureInProgress|kdeui|Finalize the api for the new systemtray: KStatusNotifierItem|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|kdeui|API to integrate KStatusNotifierItem and KNotification: both as class api and DBus specification API|notmart@gmail.com|Marco Martin}} &lt;br /&gt;
{{FeatureInProgress|kfile|Make status of file I/O display on file/folder icons(&amp;quot;progress in icons&amp;quot;).|shaun.reich@kdemail.net|Shaun Reich}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|KMix|Nicer OSD (icon, mute state)|esken@kde.org|Christian Esken}} {{FeatureTodo|KMix|Amend Keyboard Shortcuts|esken@kde.org|Christian Esken}} {{FeatureInProgress|KMix|Allow arbitrary ordering of controls|esken@kde.org|Christian Esken}} {{FeatureInProgress|KMix|Add WhatsThis help on controls (Bug 70042)|esken@kde.org|Christian Esken}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdenetwork  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}} {{FeatureTodo|Kopete|Jabber Jingle video support|detlev.casanova@gmail.com|Detlev Casanova}} {{FeatureTodo|Kopete|Jabber Jingle ICE support|detlev.casanova@gmail.com|Detlev Casanova}} {{FeatureTodo|Kopete|Add support for urls to Bonjour plugin|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Kopete|Rich text support for ICQ|kedgedev@gmail.com|Roman Jarosz}} {{FeatureInProgress|KGet|Support for verifying signed files|mat69@gmx.net|Matthias Fuchs}} {{FeatureInProgress|KGet|Support for custom NewTransferDialog in BTPlugin|l.appelhans@gmx.de|Lukas Appelhans}} {{FeatureInProgress|Kopete|Contacts plasmoid|earthwings@gentoo.org|Dennis Nienhüser}} {{FeatureInProgress|Kopete|Telepathy protocol plugin|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Kopete|Telepathy Tubes Desktop Sharing plugin|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Kopete|Akonadi Logger(modify the history plugin)|roideuniverse@gmail.com|Kaushik Saurabh}} {{FeatureInProgress|Krdc|Telepathy Tubes support||Abner Silva}} {{FeatureInProgress|Krfb|Telepathy Tubes support|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Krfb|Core restructuring|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Telepathy|Account Management KCM|grundleborg@googlemail.com|George Goldberg}} {{FeatureInProgress|Telepathy|Mission Control launcher KDED|grundleborg@googlemail.com|George Goldberg}} {{FeatureDone|Kopete|Create avatars from a webcam device |alex@eyeos.org |Alex Fiestas}} {{FeatureDone|Krdc|Redesigned workflow to create a new connection|uwolfer@kde.org|Urs Wolfer}} {{FeatureDone|Krdc|Full Screen Switching|murraytony@gmail.com|Tony Murray}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdepim  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureInProgress|Akregator|Port to use KNotificationItem|tpr@d5k.net|Teemu Rytilahti}} &lt;br /&gt;
{{FeatureInProgress|KAlarm|Implement Akonadi support|djarvie @ kde.org|David Jarvie}} &lt;br /&gt;
{{FeatureInProgress|KAlarm|Provide audio-only alarms|djarvie @ kde.org|David Jarvie}} &lt;br /&gt;
{{FeatureInProgress|KJots|Port to Grantlee for theming support|steveire|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureDone|plasmaboard|Added a virtual keyboard plasmoid for touchscreen users|bjoern@ruberg-wegener.de|Björn Ruberg}}&lt;br /&gt;
{{FeatureInProgress|KDE Observatory|A new plasmoid for visualizing KDE projects status (commits, commiters, bugs, krazy status, etc)|sandroandrade@kde.org|Sandro S. Andrade}}&lt;br /&gt;
{{FeatureInProgress|opendesktop|Add messaging|ewoerner@kde.org|Eckhart Wörner}} {{FeatureInProgress|opendesktop|Add friendship management|ewoerner@kde.org|Eckhart Wörner}}&lt;br /&gt;
{{FeatureInProgress|ocs engine|Add possibility to use different providers, use attica from kdesupport|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|knowledgebase|port knowledgebase plasmoid to new engine|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureTodo|knowledgebase|Add categories|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureInProgress|opendesktop|port opendesktop plasmoid to new engine and rename accordingly|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
{{FeatureInProgress|opendesktop activities|port opendesktop activities plasmoid to new engine and rename accordingly|ewoerner@kde.org|Eckhart Wörner}} &lt;br /&gt;
|} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= kdesdk  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Lokalize|Integrate snowball stemmer for glossary|shafff@NOSPAMukr.net|Nick Shaforostoff}} {{FeatureTodo|Lokalize|Continue implementing XLIFF spec|shafff@NOSPAMukr.net|Nick Shaforostoff}} {{FeatureTodo|Lokalize|Segmentation [editing] functionality|shafff@NOSPAMukr.net |Nick Shaforostoff}} {{FeatureTodo|Lokalize|Remote translation memories|shafff@NOSPAMukr.net|Nick Shaforostoff}} {{FeatureTodo|Lokalize|Integrate with nepomuk (fast stats retrieval, tag cloud - incl sharing!)|shafff@NOSPAMukr.net|Nick Shaforostoff}} {{FeatureDone|Kate|Add common vim commands like :wq, :new, :bp/bn, etc.|ehambergαgmail.com|Erlend Hamberg}} {{FeatureTodo|Kate|Replace old snippet plugin through TNG plugin|jowenn(you_know)kde(here_too)org|Joseph Wenninger}} {{FeatureTodo|Kate|Integreate GHNS into snippets TNG|jowenn(you_know)kde(here_too)org|Joseph Wenninger}} {{FeatureInProgress|Kate|Refactor parts from snippets TNG plugin into a common library for use by the plugin and for use in kdevelop|jowenn(you_know)kde(here_too)org|Joseph Wenninger}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= kdeutils  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact &lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|haraldhv@stud.ntnu.no|Harald Hvaal}} {{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|haraldhv@stud.ntnu.no|Harald Hvaal}} {{FeatureTodo|Ark|Add feedback for the latest operation in the status bar|kubito@gmail.com|Raphael Kubo da Costa}} {{FeatureTodo|Ark|Add feedback for the latest operation in the status bar|kubito@gmail.com|Raphael Kubo da Costa}} {{FeatureTodo|Ark|Try multiple plugins for each archive type before failing|kubito@gmail.com|Raphael Kubo da Costa}} {{FeatureTodo|Ark|Make the internal previewer optional|kubito@gmail.com|Raphael Kubo da Costa}} {{FeatureTodo|KGpg|Make keyserver actions possible to use on multiple keyservers at once|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|KGpg|Add &amp;amp;quot;caff&amp;amp;quot; mode for keysigning|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|KGpg|Allow searching for trust path in keyring|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|KGpg|Add improved key import result window (with useful summary, filtering, reasonable default size etc.)|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|KGpg|Make generating a key a KJob so it get's better notification support|kde@opensource.sf-tec.de|Rolf Eike Beer}} {{FeatureTodo|Okteta|add editing capability to Decoding table |kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add support for memory mapping of files and 64-bit addressing|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add further export formats like s-record and intel 16|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|Add Okular like embedded notifications|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|Store bookmarks and other view settings for next load|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureTodo|Okteta|Add global toggle option for the offset display, hex or decimal|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureTodo|Okteta|add QIODevice for AbstractByteArrayModel and make mimetype detection use this instead of only filename |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add Kate-like combined dialogs to query for actions on files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Improve the titels of the changes to the bytearray to be more descriptive, best using ids to avoid text string|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Merge row and column widgets into one|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Refactor mouse input to controllers for the bytearray widget|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add a general KPart adapter to Kasten, than finish port of Okteta KPart to Okteta Kasten|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Make all user interaction in the KastenCore managers plugin-based|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add UTF-8 option to bytearray lineedit|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add marking of bytearray section to widgets, so tools like strings or pod decoder can mark the source, instead of selecting it|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|printer-applet|Restore feature parity with KDEPrint3 where possible.||Jonathon Riddell, John Layt}} {{FeatureInProgress|Okteta|Make dialogs for Goto, Search &amp;amp; Replace embedded|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureInProgress|Okteta|Add tool to view decoding of complex structures|kossebau@kde.org|Friedrich W. H. Kossebau}} {{FeatureDone|kdelirc|Communicate to lirc through solid|michael_zanetti@gmx.net|Michael Zanetti}} {{FeatureInProgress|kdelirc|Integrate solid backend into kdelirc frontend|fscheffold@googlemail.com|Frank Scheffold}} {{FeatureTodo|kdelirc|Cycle mode function|fscheffold@googlemail.com|Frank Scheffold}} {{FeatureTodo|kdelirc|Add a try button in configurations|michael_zanetti@gmx.net|Michael Zanetti}} {{FeatureDone|Okteta|Rename libkakao to Kasten and make the Okteta KPart use it|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|Add embedded dialog to set selection range|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureDone|Okteta|Add Base64 encoder|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureDone|Okteta|Added data generators, like pattern, sequence or from clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}} &lt;br /&gt;
{{FeatureDone|Okteta|Added option to split views|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Other  =&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;&amp;quot; class=&amp;quot;sortable&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;&amp;quot;&lt;br /&gt;
! Status &lt;br /&gt;
! Project &lt;br /&gt;
! Description &lt;br /&gt;
! Contact&lt;br /&gt;
{{FeatureInProgress|kdesupport|Add libattica to kdesupport|ewoerner@kde.org|Eckhart Wörner}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/Akonadi/Meeting2009-10</id>
		<title>Projects/PIM/Akonadi/Meeting2009-10</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/Akonadi/Meeting2009-10"/>
				<updated>2009-10-17T15:03:59Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Add some notes from a Nepomuk related meeting.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is about the upcoming Akonadi Meeting in October 2009.&lt;br /&gt;
&lt;br /&gt;
Date: October 16th (Friday) - October 18th (Sunday)&lt;br /&gt;
&lt;br /&gt;
== Location / Travel Information ==&lt;br /&gt;
&lt;br /&gt;
=== Office ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
KDAB&lt;br /&gt;
Adalbertstrasse 7/8&lt;br /&gt;
10999 Berlin&lt;br /&gt;
Germany&lt;br /&gt;
Phone: +49-30-5213254-70&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Getting there from the hotel: takes about 15 minutes to walk, just follow the others, most have been here already ;-)&lt;br /&gt;
&lt;br /&gt;
[http://maps.google.com/maps?f=d&amp;amp;source=s_d&amp;amp;saddr=An+der+Schillingbrucke+2,+10243+Berlin,+Germany&amp;amp;daddr=Adalbertstrasse+7%2F8,+10999+Berlin,Germany&amp;amp;hl=en&amp;amp;geocode=&amp;amp;mra=ls&amp;amp;dirflg=w&amp;amp;sll=37.0625,-95.677068&amp;amp;sspn=60.806372,49.130859&amp;amp;ie=UTF8&amp;amp;ll=52.504454,13.426173&amp;amp;spn=0.011611,0.032852&amp;amp;z=16 Hotel -&amp;gt; Office map]&lt;br /&gt;
&lt;br /&gt;
Getting there directly: Take the subway line U8 to &amp;quot;Kottbusser Tor&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
[http://www.bvg.de/index.php/de/Common/Document/field/file/id/2597/filename/S+U-Bahn_aktuell.pdf Subway and rail map of Berlin]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Hotel ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hotel Ibis Berlin City Ost&lt;br /&gt;
An der Schillingbrucke 2&lt;br /&gt;
10243 Berlin&lt;br /&gt;
Germany&lt;br /&gt;
Phone: (+49)30/257600 &lt;br /&gt;
Fax : (+49)30/25760333&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Easiest way to reach the hotel is by taking a train to Ostbahnhof (it's just across the street from the station). If your train doesn't stop there, take the S-Bahn from Hauptbahnhof, any east-bound line will do.&lt;br /&gt;
&lt;br /&gt;
From TXL take the bus labeld 'TXL' to Hauptbahnhof or Alexanderplatz and switch to the S-Bahn there, any east-bound train will do.&lt;br /&gt;
&lt;br /&gt;
In both cases you'll need a single 'AB' Ticket, which can be purchased on ticket machines and costs 2.10€.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Attendees ==&lt;br /&gt;
&lt;br /&gt;
Non-locals, please add yourself, your travel details and accommodation needs to the following table.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name&lt;br /&gt;
! Travel&lt;br /&gt;
! Arrival&lt;br /&gt;
! Departure&lt;br /&gt;
! Accommodation needed&lt;br /&gt;
|-&lt;br /&gt;
| Tobias König&lt;br /&gt;
| train&lt;br /&gt;
| 16th, around 16:00&lt;br /&gt;
| 18th, around 17:30&lt;br /&gt;
| yes&lt;br /&gt;
|-&lt;br /&gt;
| Thomas McGuire&lt;br /&gt;
| train&lt;br /&gt;
| 14th, around 17:00&lt;br /&gt;
| 18th, around 15:00&lt;br /&gt;
| yes&lt;br /&gt;
|-&lt;br /&gt;
| Tom Albers&lt;br /&gt;
| train&lt;br /&gt;
| 16th, around 16:00&lt;br /&gt;
| 18th&lt;br /&gt;
| yes&lt;br /&gt;
|-&lt;br /&gt;
| Dmitry Ivanov&lt;br /&gt;
| plane&lt;br /&gt;
| 16th, around 12:00&lt;br /&gt;
| 18th, around 15:00&lt;br /&gt;
| no&lt;br /&gt;
|-&lt;br /&gt;
| Andras Mantia&lt;br /&gt;
| plane&lt;br /&gt;
| 14th, 17:05 TXL&lt;br /&gt;
| 19th, morning&lt;br /&gt;
| yes&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Sebastian Trueg&lt;br /&gt;
| train&lt;br /&gt;
| 16th afternoon&lt;br /&gt;
| 18th, ~ 18:00&lt;br /&gt;
| yes (prefer not to share a room and will pay myself)&lt;br /&gt;
|-&lt;br /&gt;
| Martin Koller&lt;br /&gt;
| plane&lt;br /&gt;
| 16th around 12:30&lt;br /&gt;
| 18th, ~ 18:00&lt;br /&gt;
| yes&lt;br /&gt;
|-&lt;br /&gt;
| Sascha Peilicke&lt;br /&gt;
| train&lt;br /&gt;
| 16th&lt;br /&gt;
| 20th&lt;br /&gt;
| no&lt;br /&gt;
|-&lt;br /&gt;
| Kevin Ottens&lt;br /&gt;
| plane&lt;br /&gt;
| 11th&lt;br /&gt;
| 18th&lt;br /&gt;
| yes&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
| Will Stephenson&lt;br /&gt;
| drive&lt;br /&gt;
| 16th pm&lt;br /&gt;
| 18th&lt;br /&gt;
| no&lt;br /&gt;
|-&lt;br /&gt;
| Brad Hards&lt;br /&gt;
| train in, flight out&lt;br /&gt;
| 16th around 13:30&lt;br /&gt;
| 19th, 11:05 TXL&lt;br /&gt;
| yes&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Locals present anyway:&lt;br /&gt;
* Bertjan Broeksema&lt;br /&gt;
* Frank Osterfeld&lt;br /&gt;
* Steve Kelly&lt;br /&gt;
* Till Adam&lt;br /&gt;
* Volker Krause&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
Please collect stuff you want to do/discuss here.&lt;br /&gt;
&lt;br /&gt;
* We have quite some new public API which needs to be reviewed, in the following libraries:&lt;br /&gt;
** Mailtransport [[http://deltatauchi.de/~vkrause/kde/mailtransport-kde-4.3-trunk.diff Diff]]&lt;br /&gt;
** MessageViewer&lt;br /&gt;
** KMime [[http://deltatauchi.de/~vkrause/kde/kmime-kde-4.3-trunk.diff Diff]]&lt;br /&gt;
** Akonadi Core [[http://deltatauchi.de/~vkrause/kde/akonadi-kde-4.3-trunk.diff Diff]]&lt;br /&gt;
** Akonadi Contact&lt;br /&gt;
** Akonadi KMime&lt;br /&gt;
** Kontact Interface&lt;br /&gt;
&lt;br /&gt;
* Application porting status and planning, data and settings migration:&lt;br /&gt;
** KMail&lt;br /&gt;
** KOrganizer&lt;br /&gt;
** Akregator&lt;br /&gt;
&lt;br /&gt;
* KDE PIM module organization&lt;br /&gt;
** Fix apps/runtime split again&lt;br /&gt;
&lt;br /&gt;
* Nepomuk integration&lt;br /&gt;
** Fix the usage of non-Fast resources in the feeder agents&lt;br /&gt;
** Fix the feeders to behave according to Sebastian's email, and document the correct behavior somewhere&lt;br /&gt;
** Avoid ontology duplication, move them to kdelibs or soprano maybe?&lt;br /&gt;
&lt;br /&gt;
* Extensions&lt;br /&gt;
** Free / busy management&lt;br /&gt;
** Mail Handling / Rules (Sieve, etc)&lt;br /&gt;
&lt;br /&gt;
* StandardActionManager redesign (to support multiple views and extensibility)&lt;br /&gt;
&lt;br /&gt;
* Do PIM applications still need to be KUniqueApplications?&lt;br /&gt;
&lt;br /&gt;
=== Friday ===&lt;br /&gt;
&lt;br /&gt;
* Hacking&lt;br /&gt;
&lt;br /&gt;
* 18:00 Porting status and planning, module organization etc.&lt;br /&gt;
&lt;br /&gt;
* 19:00 Dinner&lt;br /&gt;
&lt;br /&gt;
* 22:00 API review Akonadi Core library&lt;br /&gt;
&lt;br /&gt;
=== Saturday ===&lt;br /&gt;
&lt;br /&gt;
* 08:15 Hacking&lt;br /&gt;
&lt;br /&gt;
* 10:00 API review libakonadi and mailtransport&lt;br /&gt;
&lt;br /&gt;
* 12:30 Lunch&lt;br /&gt;
&lt;br /&gt;
* 13:00 Nepomuk integration&lt;br /&gt;
&lt;br /&gt;
* 15:30 API review ETM, KMime&lt;br /&gt;
&lt;br /&gt;
* Brad's extensions&lt;br /&gt;
&lt;br /&gt;
* StandardActionMananger redesign&lt;br /&gt;
&lt;br /&gt;
* Hacking&lt;br /&gt;
&lt;br /&gt;
* 19:00 Dinner &lt;br /&gt;
&lt;br /&gt;
* Hacking&lt;br /&gt;
&lt;br /&gt;
=== Sunday ===&lt;br /&gt;
&lt;br /&gt;
* 8:00 Begin&lt;br /&gt;
&lt;br /&gt;
* Hacking&lt;br /&gt;
&lt;br /&gt;
* 12:00 Lunch&lt;br /&gt;
&lt;br /&gt;
* Hacking&lt;br /&gt;
&lt;br /&gt;
== Meeting Notes ==&lt;br /&gt;
&lt;br /&gt;
=== Akonadi/Nepomuk/Search and the future ===&lt;br /&gt;
Attending: Volker, Steve, Sebastian Trueg, Will Stephenson, Kevin Ervin&lt;br /&gt;
&lt;br /&gt;
* Discussed future of desktop PIM and applications which are context or project specific rather than transport specific. Ie, beyond the concepts of &amp;quot;one application handles my email, another handles my contacts, another handles my notes.&amp;quot; Instead these things should be grouped and available in applications which present them by project/task or person.&lt;br /&gt;
** Should be able to clear completed tasks by taking action on them. For any task, there may be multiple action paths to complete before the task is &amp;quot;complete&amp;quot;, eg &amp;quot;The cat just threw up. Clean up the mess. Take the cat to the vet&amp;quot;. Two action paths to handle the sick cat.&lt;br /&gt;
* Communicating with contacts independently of the transport mechanism in an application which can show history of communication with the person. Also, be able to configure notifications such as &amp;quot;Notify me the next time this person is online using the message 'Talk to Alice about the server backups'&amp;quot;&lt;br /&gt;
* Merging of contacts from multiple resources.&lt;br /&gt;
** Tricky because some resources have read-only access.&lt;br /&gt;
** Some resources rewrite fields, which could mean bugs like having to perform a merge operation again and again.&lt;br /&gt;
** Could be sensible to link Akonadi contacts to PIMO::Person objects in Nepomuk.&lt;br /&gt;
* Considering the implementation of how tags should be represented in PIM apps.&lt;br /&gt;
** Showing &amp;quot;All available tags from Nepomuk with linked items in the collections&amp;quot; would not scale because people could have thousands of, eg, emails, but only several would be relevant and contain tagged emails. It could be more sensible to configure individual simple searched such as &amp;quot;show me emails tagged with 'giraffe'&amp;quot; and use searches instead of explicitly using the tag resource.&lt;br /&gt;
** Nepomuk triples can be queried in interesting unrestricted and versatile ways. predicates can be variables and can have placeholders.&lt;br /&gt;
** Discussed the ideas brought out in Zeitgeist and how it can relate to Nepomuk and hooked into KIO.&lt;br /&gt;
* How can PIM relate to plasma activities, for example?&lt;br /&gt;
** Possible that PIM applications should not directly respond to changes in plasma activity, but plasma activity should map in some way to one or more 'PIMO::Project', and therefore change the most easily acceptible data related to the project.&lt;br /&gt;
* Storing search index of encrypted emails in a second, encrypted rdf store.&lt;br /&gt;
** Virtuoso has some useful stuff to make this possible, but it is preferable to create a model in the Soprano interface instead. &lt;br /&gt;
* Synching two Nepomuk stores.&lt;br /&gt;
** Possible to use a resource that represents remote nepomuk objects as akonadi Items and feed them into the local index.&lt;br /&gt;
** Soprano needs to get some more api for that.&lt;br /&gt;
* Separate but related is accessing a remote Akonadi server over ssh for example.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Akonadi]]&lt;br /&gt;
[[Category:PIM]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/Akonadi</id>
		<title>Projects/PIM/Akonadi</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/Akonadi"/>
				<updated>2009-04-21T11:06:20Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* KResource Migration Status */ Add diagram of migration strategy.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Akonadi TODO ==&lt;br /&gt;
The following list contains the things which need to be done for Akonadi.&lt;br /&gt;
&lt;br /&gt;
Note: The person noted in the &amp;quot;Contact&amp;quot; column is not necessarily the one implementing that feature, but the one who can tell you what to do and how to help, i.e. you can also contribute to those tasks ;-)&lt;br /&gt;
&lt;br /&gt;
=== Core ===&lt;br /&gt;
&lt;br /&gt;
==== KDE 4.1 / Akonadi 1.0 ====&lt;br /&gt;
&lt;br /&gt;
Urgent tasks that need to be finished for the KDE 4.1 release ('''May 19th'''):&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Item streaming in ItemSync/ResourceBase|As discussed in Osnabrueck|Tom/Volker}}&lt;br /&gt;
{{FeatureDone|Payload serialization format versioning|see below&lt;br /&gt;
tokoe@kde.org|Tobias}}&lt;br /&gt;
{{FeatureDone|API for additional item parts|As discussed in Osnabruck|Volker/Tobias}}&lt;br /&gt;
{{FeatureDone|Infrastructure for showing additional dialogs from agents/resources|As discussed in Osnabrueck|Tom}}&lt;br /&gt;
{{FeatureDone|Allow to limit ItemFetchJob to current cache content|Prevents search index feeder agents from downloading all remote data|vkrause@kde.org|Volker}}&lt;br /&gt;
{{FeatureDone|Fix API for item/collection modifications|See Osnabrueck meeting notes for details|vkrause@kde.org|Volker}}&lt;br /&gt;
{{FeatureDone|Plugin Versioning|For serializer plugins, also check using Qt plugin stuff instead of the libkdepim plugin framework|tokoe@kde.org|Tobias}}&lt;br /&gt;
{{FeatureDone|Tray app|small app to control the server and have a something that can report errors|tomalbers@kde.nl|Toma}}&lt;br /&gt;
{{FeatureDone|Backup support|Dump &amp;amp; Restore database contents, also useful when upgrading to a newer database version|tomalbers@kde.nl}}&lt;br /&gt;
{{FeatureDone|Akonadi Artwork|Icon for the tray app|tomalbers@kde.nl|Toma}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== KDE 4.2 / Akonadi 1.1 ====&lt;br /&gt;
&lt;br /&gt;
That's the stuff we want to have in 4.2, very roughly ordered by priority. Releases are scheduled for early January 2009.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Server error reporting|Helpful error message when the server cannot be started or if there is some other problem communicating with it.|vkrause@kde.org|Volker}}&lt;br /&gt;
{{FeatureDone|KResource migration tool|For KABC and KCal resources, setting up Akonadi &amp;lt;-&amp;gt; KResource bridges where needed|Volker}}&lt;br /&gt;
{{FeatureDone|KResource bridges|Basically finished, needs more testing|Kevin}}&lt;br /&gt;
{{FeatureDone|Distribution Lists|Serializer Plugin and resource support|Tobias,Kevin}}&lt;br /&gt;
{{FeatureDone|Complete iCal resource|error handling, robustness, legacy formats, file montitoring|Volker}}&lt;br /&gt;
{{FeatureDone|Complete vCard resource|same as iCal + binary legacy format|Bertjan}}&lt;br /&gt;
{{FeatureDone|Item size|Needed by Mailody|toma@kde.org}}&lt;br /&gt;
{{FeatureDone|LINK/UNLINK commands|Managing item references in virtual collections|vkrause@kde.org|Volker}}&lt;br /&gt;
{{FeatureDone|Akonadi Testrunner|Running tests in a self contained Akonadi setup|igor_trindade@yahoo.com.br|Igor}}&lt;br /&gt;
{{FeatureDone|Remote file support for iCal/vCard resources|Replaces net/remote KRes resources|Bertjan}}&lt;br /&gt;
{{FeatureDone|Solid integration|Switch online/offline state in ResourceBase automatically|Bertjan}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Scheduled for KDE 4.3 / Akonadi 1.2 ====&lt;br /&gt;
&lt;br /&gt;
Stuff we want to do for KDE 4.3, scheduled to be released in June 2009. The list is not completed yet, will be discussed during the [[Projects/PIM/Meetings/Osnabrueck_7|Osnabrueck 7]] meeting.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Fix unit tests|Make unittests work without destroying the production database|Igor/Volker}}&lt;br /&gt;
{{FeatureInProgress|Resource testing framework|Automated, shareable tests for resources|Igor/Volker}}&lt;br /&gt;
{{FeatureTodo|Review change notifications|See the various discussions about shortcomings in that area|}}&lt;br /&gt;
{{FeatureDone|Filesystem Backend|Store content data in files instead of the database, transfer filehandles instead of data to the client|Andras}}&lt;br /&gt;
{{FeatureInProgress|Port KOrganizer|Port from KResource to Akonadi|Frank/Sebastian}}&lt;br /&gt;
{{FeatureInProgress|Port KAddressBook|Replace with KContactManager|Tobias}}&lt;br /&gt;
{{FeatureInProgress|IMAP/Kolab resource||Kevin}}&lt;br /&gt;
{{FeatureInProgress|Port KNotes|File resource, serializer plugin, KNotes application, Kontact plugin|Jesper}}&lt;br /&gt;
{{FeatureInProgress|RID based operations|Item/collection retrieval and modification based on remote identifiers|Volker}}&lt;br /&gt;
{{FeatureDone|Microblog Support|Type library, serializer plugin, identi.ca/twitter resources|Tom}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Post KDE 4.3 / Akonadi 1.2 ====&lt;br /&gt;
&lt;br /&gt;
This stuff is currently not considered for 4.3 due to lack of resources. Of course it will be added nevertheless if someone implements it. The list is completely unsorted.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Error reporting|Akonadi::Job basically has only one error code: Unknown|Tobias}}&lt;br /&gt;
{{FeatureInProgress|Finish collection model/view|see below|thomas.mcguire@gmx.net}}&lt;br /&gt;
{{FeatureInProgress|Collection statistics for sub-trees|Provide a CollectionStatus object covering the full sub-tree in the model, allowing accumulated unread counts etc.|Thomas}}&lt;br /&gt;
{{FeatureTodo|Batch jobs for modifying/deleting collections/items|it would be great to have jobs which perform operations on several entities in one sitting (a use-case: mark all as read).|}}&lt;br /&gt;
{{FeatureTodo|Batch job to retrieve a set of items from Akonadi|Those items don't belong to the same collection, rather they are located in different collections|}}&lt;br /&gt;
{{FeatureTodo|CollectionFetchJob/ItemFetchJob should be able to retrieve entities by remote id/mimetype|&lt;br /&gt;
This is problematic with change notifications, as they have to know about the filtering with the \Seen flag as well.&lt;br /&gt;
This type of filtering would be possible with full Nepomuk interface though. We don't want yet another query language here. The plan is to fix the nepomuk agent and use that as semi-public interface for now.|}}&lt;br /&gt;
{{FeatureTodo|ResourceBase::collectionsRetrievalDone is missing|I'm working around by calling collectionsRetrievedIncremental() with empty collection lists|}}&lt;br /&gt;
{{FeatureTodo|Nepomuk integration|Generic Item tag/rate/comment, etc.|Tom}}&lt;br /&gt;
{{FeatureTodo|Account creation wizard|as discussed in Berlin, see below|}}&lt;br /&gt;
{{FeatureTodo|Sync collection tree after creating setting up a resource|see AgentInstanceCreateJob|}}&lt;br /&gt;
{{FeatureTodo|Support standard commands for QUndo framework||}}&lt;br /&gt;
{{FeatureTodo|Conflict detection in resources|See Osnabrueck meeting notes for details|}}&lt;br /&gt;
{{FeatureInProgress|Action framework|see below|vkrause@kde.org|Volker}}&lt;br /&gt;
{{FeatureInProgress|Fix API docs|The libakonadi move as well as the huge API changes following it broke lots of the docs technical and content-wise, see below|Tobias}}&lt;br /&gt;
{{FeatureTodo|Migration|Data and settings from pre-Akonadi times, see below|}}&lt;br /&gt;
{{FeatureTodo|Remote Search|Delegating searches to resources, see below|}}&lt;br /&gt;
{{FeatureTodo|Extended notifications|Item change notification do not yet include their source collections (real and virtual)|}}&lt;br /&gt;
{{FeatureTodo|Alternative for Akonadi::ResourceBase|Not using the scheduler to avoid the serialization of operations, see RSS resource. (This will get very complicated. Maybe use a proxy ResourceBase for this, which is thread-pooled?)|}}&lt;br /&gt;
{{FeatureTodo|Collection parameter for Monitor::itemChanged() and Monitor::itemRemoved()|&lt;br /&gt;
If the item resides in several collections (normal + virtual collections) then emit those signals for each collection. Adding this would mean changing it in many places (Monitor, Observer, ...), this is lots of work but probably the right thing to do.&lt;br /&gt;
Related to virtual collections, since with them, items can be in multiple collections. Better wait until the Nepomuk stuff is finished?|}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Supported Types ===&lt;br /&gt;
&lt;br /&gt;
Overview on the current state of support for various types:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Type !! Serializer !! Multipart Support !! Models !! Views !! Resources !! Notes&lt;br /&gt;
|-&lt;br /&gt;
|Email||yes||partial||MessageModel, MessageCollectionModel, threading proxy model||?||maildir, IMAP||threading agent&lt;br /&gt;
|-&lt;br /&gt;
|News||yes (1)||partial (1)||(1)||(1)||NNTP||&lt;br /&gt;
|-&lt;br /&gt;
|Contact||yes||no||ContactModel||-||vCard, facebook, KRes||&lt;br /&gt;
|-&lt;br /&gt;
|Events||yes||no||EventModel||-||iCal, KRes||&lt;br /&gt;
|-&lt;br /&gt;
|Notes||no||no||-||-||-||not started yet&lt;br /&gt;
|-&lt;br /&gt;
|Feeds||yes||no||Feeds, Items||?||OPML||GSoC in playground/pim&lt;br /&gt;
|-&lt;br /&gt;
|Bookmarks||yes||no||-||-||local bookmarks, del.icio.us||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
(1) see Email&lt;br /&gt;
&lt;br /&gt;
=== Mail specific extensions ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Extend Message Model|Add all required columns, save/restore layout, flag delegate, configurable columns, etc.|}}&lt;br /&gt;
{{FeatureTodo|Share mail flag code|Standard actions, standard flag enum/constants, Nepomuk interaction|}}&lt;br /&gt;
{{FeatureTodo|Extend ENVELOPE|Add more information to the envelope payload part in the serializer plugin, eg. trheading information is missing|}}&lt;br /&gt;
{{FeatureTodo|Fix/finish threading||}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Event/Todo/Journal specific extensions ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Todo proxy model|See KOrganizers To-Do view|Bruno?}}&lt;br /&gt;
{{FeatureInProgress|Subtype identification|See discussion on kde-pim mailinglist|Kevin?}}&lt;br /&gt;
{{FeatureTodo|Agenda view|KOrganizer agenda view based on Akonadi|Bruno?}}&lt;br /&gt;
{{FeatureTodo|Month view|KOrganizer month view based on Akonadi|Bruno?}}&lt;br /&gt;
{{FeatureTodo|Timeline view|KOrganizer timeline view based on Akonadi|}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Resources, Agents and others ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KResource Akonadi bridge|for applications using KCal or KABC|kevin.krammer@gmx.at|Kevin}}&lt;br /&gt;
{{FeatureDone|Akonadi KResource bridge|for data accessed through KCal or KABC resources|kevin.krammer@gmx.at|Kevin}}&lt;br /&gt;
{{FeatureTodo|Expire Agent||}}&lt;br /&gt;
{{FeatureInProgress|MBOX Resource||Bertjan}}&lt;br /&gt;
{{FeatureInProgress|Extend IMAP Resource||Kevin/Andras}}&lt;br /&gt;
{{FeatureInProgress|POP3 Resource||Thomas}}&lt;br /&gt;
{{FeatureInProgress|RSS Resource|GSoC in playground/pim ([[Projects/PIM/RSS_framework_for_Akonadi|Details]])|Dmitry/Frank}}&lt;br /&gt;
{{FeatureTodo|Filter Agent||}}&lt;br /&gt;
{{FeatureTodo|Search||}}&lt;br /&gt;
{{FeatureTodo| History resource||}}&lt;br /&gt;
{{FeatureTodo|Filter Rule GUI|Used by filters and searches|}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Resource status overview (this should list all resources existing in KDE3 or already under development for Akonadi):&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Resource !! Retrieve Collections !! Retrieve Items !! Change Collections !! Change Items !! Configuration !! Notes&lt;br /&gt;
|-&lt;br /&gt;
|iCal||yes (4)||yes (1) (2)||no||yes||yes||remote file support, file watching with conflict handling&lt;br /&gt;
|-&lt;br /&gt;
|vCard||yes (4)||yes (1) (2)||no||yes||yes||remote file support, file watching with conflict handling&lt;br /&gt;
|-&lt;br /&gt;
|maildir||yes (1) (4)||yes (1) (2)||?||?||yes||&lt;br /&gt;
|-&lt;br /&gt;
|mbox||no||no||no||no||no||not started yet, code exists in KMail&lt;br /&gt;
|-&lt;br /&gt;
|IMAP||yes (1) (4)?||yes (1) (2)||no||no||no||code exists in kio_imap4 and Mailody, support for extensions: quota, ACL, annotations missing, what about Kolab and Scalix?&lt;br /&gt;
|-&lt;br /&gt;
|POP3||no||no||no||no||no||not started yet,code exists in kio_pop3&lt;br /&gt;
|-&lt;br /&gt;
|NNTP||yes (4)||yes (2)||n/a||n/a||yes||Needs support for local collection names and collection hierarchy&lt;br /&gt;
|-&lt;br /&gt;
|Local Bookmarks||?||?||?||?||(3)||Code in akonadi/resources&lt;br /&gt;
|-&lt;br /&gt;
|OpenChange||?||?||?||?||?||Code in akonadi/resources&lt;br /&gt;
|-&lt;br /&gt;
|Facebook||?||?||?||?||?||Code in playground/pim&lt;br /&gt;
|-&lt;br /&gt;
|del.icio.us||?||?||?||yes||no||Code in playground/pim&lt;br /&gt;
|-&lt;br /&gt;
|KABC||yes(6)||yes||no||yes||yes||&lt;br /&gt;
|-&lt;br /&gt;
|KCal||yes(6)||yes||yes(7)||yes||yes||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
# only full sync supported currently, need optimization&lt;br /&gt;
# does not yet honor cache policy&lt;br /&gt;
# still relies on QSettings for configuration and/or doesn't provide configuration over D-Bus&lt;br /&gt;
# does not yet provide correct access control settings&lt;br /&gt;
# only adding new items, not changing existing ones&lt;br /&gt;
# availability of child collections depend on whether the KResource plugin has subresources&lt;br /&gt;
# child collections can be added or removed if the KCal plugin can have subresources&lt;br /&gt;
&lt;br /&gt;
=== KResource Migration Status ===&lt;br /&gt;
&lt;br /&gt;
Everything without migration support is implicitly converted to use the compat bridge currently.&lt;br /&gt;
&lt;br /&gt;
[[Image:Akonadi-Kres.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== KABC migration status ====&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! KResource !! Feature equivalent agent !! Migration support !! Notes&lt;br /&gt;
|-&lt;br /&gt;
|directory|| || ||vCard dir in development&lt;br /&gt;
|-&lt;br /&gt;
|file||vCard file||4.2||binary format no longer supported, migrated to compat bridge instead&lt;br /&gt;
|-&lt;br /&gt;
|groupdav||||||&lt;br /&gt;
|-&lt;br /&gt;
|groupwise||||||&lt;br /&gt;
|-&lt;br /&gt;
|kolab||||||&lt;br /&gt;
|-&lt;br /&gt;
|ldapkio||||||&lt;br /&gt;
|-&lt;br /&gt;
|net||vCard file||TODO||&lt;br /&gt;
|-&lt;br /&gt;
|scalix||||||&lt;br /&gt;
|-&lt;br /&gt;
|slox||||||&lt;br /&gt;
|-&lt;br /&gt;
|xmlrpc||||||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== KCal Migration Status ====&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|- &lt;br /&gt;
! KResource !! Feature equivalent agent !! Migration support !! Notes&lt;br /&gt;
|-&lt;br /&gt;
|blog||||||&lt;br /&gt;
|-&lt;br /&gt;
|bugzilla||||||&lt;br /&gt;
|-&lt;br /&gt;
|groupdav||||||&lt;br /&gt;
|-&lt;br /&gt;
|groupwise||||||&lt;br /&gt;
|-&lt;br /&gt;
|kabc (birthday)||birthdays||4.3||&lt;br /&gt;
|-&lt;br /&gt;
|kolab||||||&lt;br /&gt;
|-&lt;br /&gt;
|localdir||||||&lt;br /&gt;
|-&lt;br /&gt;
|local||iCal file||4.2||&lt;br /&gt;
|-&lt;br /&gt;
|remote||iCal file||TODO||remote supports different URLs for upload and download, the iCal file agent doesn't, is this needed at all?&lt;br /&gt;
|-&lt;br /&gt;
|featureplan||||||probably obsolete since we don't use the XML featureplan anymore&lt;br /&gt;
|-&lt;br /&gt;
|scalix||||||&lt;br /&gt;
|-&lt;br /&gt;
|slox||||||&lt;br /&gt;
|-&lt;br /&gt;
|xmlrpc||||||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Akonadi Braindump ==&lt;br /&gt;
Ideas/notes etc. on various open issues in Akonadi.&lt;br /&gt;
&lt;br /&gt;
=== Akonadi Standard Actions ===&lt;br /&gt;
&lt;br /&gt;
Idea: Have something like KStandardAction for Akonadi that not only includes the representation of the action but also its state management and the actual operations. Like libakonadi that should be splitted into a generic, type-independent part and be extensible for type-specific actions. This will enable code sharing among many applications and guarantee consistent actions everywhere.&lt;br /&gt;
&lt;br /&gt;
State management: watch selection models of a collection and/or item model.&lt;br /&gt;
&lt;br /&gt;
Use KXMLGUI for context menus in standard views to allow easy extensibility with custom actions.&lt;br /&gt;
&lt;br /&gt;
Generic actions:&lt;br /&gt;
* new collection [done]&lt;br /&gt;
* new virtual collection&lt;br /&gt;
* delete collection [done for single selection]&lt;br /&gt;
* copy collection [done]&lt;br /&gt;
* cut collection&lt;br /&gt;
* paste collection [done]&lt;br /&gt;
* synchronize collection [done for single selection]&lt;br /&gt;
* synchronize resource&lt;br /&gt;
* synchronize everything&lt;br /&gt;
* show collection properties dialog [done]&lt;br /&gt;
* delete item(s) [done]&lt;br /&gt;
* copy item(s) [done]&lt;br /&gt;
* cut item(s)&lt;br /&gt;
* paste item(s) [done]&lt;br /&gt;
* paste native data&lt;br /&gt;
* tag item(s)&lt;br /&gt;
* comment item&lt;br /&gt;
* rate item(s)&lt;br /&gt;
* configure resource&lt;br /&gt;
* add resource? (would need a type parameter, etc.)&lt;br /&gt;
* delete resource&lt;br /&gt;
* manage local subscriptions [done]&lt;br /&gt;
* move to submenu&lt;br /&gt;
* copy to submenu&lt;br /&gt;
&lt;br /&gt;
The list is definitely long enough to make this worthwhile.&lt;br /&gt;
&lt;br /&gt;
=== Collection Model / Collection View ===&lt;br /&gt;
&lt;br /&gt;
Ideas/missing features/bugs of the collection model/view:&lt;br /&gt;
&lt;br /&gt;
* Enable/disable status columns&lt;br /&gt;
* Show status after the name (see KMail)&lt;br /&gt;
* Size column&lt;br /&gt;
* Save/restore layout&lt;br /&gt;
* &amp;lt;s&amp;gt;Custom collection icons (see KMail, also needed for resource defined special folders (eg. Inbox)&amp;lt;/s&amp;gt;&lt;br /&gt;
* Status tooltips (see KMail in 3.5.9)&lt;br /&gt;
* Quick search&lt;br /&gt;
* Favorite folder view as proxy model on top of the normal collection model (FlatCollectionProxyModel might be helpful for there)&lt;br /&gt;
* Accumulated statistics (unread, total, size)&lt;br /&gt;
* Fix dnd: move/copy/cancel menu always shows up and never has any effect&lt;br /&gt;
&lt;br /&gt;
=== Compatibility ===&lt;br /&gt;
&lt;br /&gt;
Notes on how to keep long-term protocol, source and binary compatibility.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;s&amp;gt;Detect server version in Akonadi::Session, might be useful in case of protocol extensions/changes&amp;lt;/s&amp;gt;&lt;br /&gt;
* What about database server version updates?&lt;br /&gt;
* &amp;lt;s&amp;gt;Versioning or any other kind of serialization format meta data, we'll need that in case of changes in serialization formats (see eg. Robert's compression patch where this is needed)&amp;lt;/s&amp;gt;&lt;br /&gt;
* &amp;lt;s&amp;gt;We currently use 32 bit ids, probably hard to change later on, is that enough?&amp;lt;/s&amp;gt;&lt;br /&gt;
* &amp;lt;s&amp;gt;Plugin versioning&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Resource API issues ===&lt;br /&gt;
&lt;br /&gt;
Notes/ideas/complaints about the Akonadi::ResourceBase API:&lt;br /&gt;
&lt;br /&gt;
* Extremely error prone:&lt;br /&gt;
** Scheduler dead-locks when a requested operation is not correctly announced as finished, esp. a problem in error cases.&lt;br /&gt;
** Using the result methods multiple times or when not requested asserts&lt;br /&gt;
* &amp;lt;s&amp;gt;Item streaming is missing, requiring all data to be in memory at once&amp;lt;/s&amp;gt;&lt;br /&gt;
* Non-incremental updates need to know the results of ItemSync to not have to provide all data, even for already existing/unchanged items.&lt;br /&gt;
&lt;br /&gt;
=== API / BC issues ===&lt;br /&gt;
&lt;br /&gt;
Smaller stuff that should be fixed before the ABI freeze and is not yet listed above:&lt;br /&gt;
&lt;br /&gt;
* Cleanup the D-Bus format used by NotificationMessage&lt;br /&gt;
* No mentioning of &amp;quot;IMAP&amp;quot; in the public API, we are not using IMAP&lt;br /&gt;
* Naming and installed location of libraries, headers and executables (see discussion on kde-pim ML)&lt;br /&gt;
* &amp;lt;s&amp;gt;Payload part labels are QStrings, attribute types are QByteArray&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Deployment issues ===&lt;br /&gt;
&lt;br /&gt;
* Multiple access: Should multiple Akonadi instances' mysqlds access a single set of  data files the mysql will likely corrupt the data.  This can happen in any NFS+YP installation where users can log onto any machine and access shared homes.  MySQL relies on filesystem locking to prevent multiple access. [http://dev.mysql.com/doc/refman/6.0/en/multiple-servers.html MySQL multiple instance docu].&lt;br /&gt;
* [http://dev.mysql.com/doc/refman/6.0/en/innodb-restrictions.html InnoDB tables should not be used on NFS].&lt;br /&gt;
* NFS speed: MySQL documentation recommends against locating its data files on network shares.&lt;br /&gt;
* AppArmor: Distros' AppArmor profiles prevent MySQL from writing outside its defined data directory (usually /var/lib/mysql).  This is a problem at least with *buntu and openSUSE.  These will need to be adapted.   It is possible to daisy-chain profiles so that MySQL started by Akonadi receives a different profile to MySQL running standalone.  An empty profile has all rights.  Another possibility is to adapt the general MySQL profile so it can write to ${XDG_DATA_HOME}/akonadi(usually ${HOME/}.local/share/akonadi).  Both support for profile chaining and ${HOME} may depend on the version of AppArmor installed.  What about SELinux?&lt;br /&gt;
* Backup: MySQL data files should not be backed up without telling the mysqld process, otherwise a corrupt backup will be made.  LOCK TABLES and FLUSH TABLES at the least.  A dump can be made or mysqlhotbackup may be used in some circumstances. We should consider sysadmins' backup techniques when planning/promoting Akonadi, as a simple rsync cronjob with running Akonadi will not work. [http://dev.mysql.com/doc/refman/6.0/en/backup.html MySQL backup advice].&lt;br /&gt;
&lt;br /&gt;
=== Account Creation Wizard ===&lt;br /&gt;
&lt;br /&gt;
Notes on the resource configuration wizard discussion.&lt;br /&gt;
&lt;br /&gt;
* WizardBase class&lt;br /&gt;
* Wizard discovery via .desktop files&lt;br /&gt;
* A wizard can configure multiple resources (eg. IMAP + LDAP for Kolab) and non-resources (mailtransport)&lt;br /&gt;
* Optionally hide resources completely covered by wizards in the Add Account dialog&lt;br /&gt;
* List wizards in the Add Account dialog&lt;br /&gt;
* Store Account -&amp;gt; Resources information to offer deletion of depending resources&lt;br /&gt;
&lt;br /&gt;
=== PostgreSQL datastore support ===&lt;br /&gt;
&lt;br /&gt;
First review of the akonadi code reveals PGSQL Qt driver is already supported, but the code is not totally ready for it. Some first reading comments about where to patch for supporting PostgreSQL too:&lt;br /&gt;
&lt;br /&gt;
==== akonadi/server/src/storage/dbinitializer.cpp ====&lt;br /&gt;
&lt;br /&gt;
* line 201..., ALTER TABLE ADD [UNIQUE] INDEX syntax is MySQL only, better use the common one CREATE [UNIQUE] INDEX ... one [done with revision 789899]&lt;br /&gt;
* line 303, QString DbInitializer::sqlType(const QString &amp;amp; type), LONGBLOB is the MySQL type, PostgreSQL will use BYTEA.&lt;br /&gt;
* line 362, qFatal(&amp;quot;Implement index support for your database!&amp;quot;);&lt;br /&gt;
  mysql: SHOW INDEXES FROM %1&lt;br /&gt;
  pgsql: SELECT c2.relname, i.indisprimary, i.indisunique, i.indisclustered, i.indisvalid, pg_catalog.pg_get_indexdef(i.indexrelid, 0, true), c2.reltablespace&lt;br /&gt;
  FROM pg_catalog.pg_class c, pg_catalog.pg_class c2, pg_catalog.pg_index i&lt;br /&gt;
  WHERE c.oid = '16713' AND c.oid = i.indrelid AND i.indexrelid = c2.oid&lt;br /&gt;
  ORDER BY i.indisprimary DESC, i.indisunique DESC, c2.relname&lt;br /&gt;
  &lt;br /&gt;
     relname    | indisprimary | indisunique | indisclustered | indisvalid |                       pg_get_indexdef                        | reltablespace&lt;br /&gt;
  --------------+--------------+-------------+----------------+------------+--------------------------------------------------------------+---------------&lt;br /&gt;
   foo_pkey     | t            | t           | f              | t          | CREATE UNIQUE INDEX foo_pkey ON foo USING btree (id)         |             0&lt;br /&gt;
   foo_time_key | f            | t           | f              | t          | CREATE UNIQUE INDEX foo_time_key ON foo USING btree (&amp;quot;time&amp;quot;) |             0&lt;br /&gt;
  (2 lignes)&lt;br /&gt;
&lt;br /&gt;
==== akonadi/server/src/storage/datastore.cpp ====&lt;br /&gt;
&lt;br /&gt;
* line 700, qint64 DataStore::highestPimItemId() const, seems wrong for a concurrent program (SELECT MAX(col) FROM table; is not reliable if another thread is inserting at the same time) : check the callers&lt;br /&gt;
* line 794, qint64 DataStore::lastInsertId( const QSqlQuery &amp;amp; query ), PostgreSQL doesn't provide concurrent-bogus last_insert_id, but from 8.2 accepts the syntax INSERT INTO ... RETURNING col1, col2, ...;&lt;br /&gt;
* line 806, QString DataStore::dateTimeFromQDateTime( const QDateTime &amp;amp; dateTime ), use PostgreSQL to_char() formatting function for date rather than having Qt do it&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
&lt;br /&gt;
* Avoid examples using KJob::exec() due to its problematic side-effects.&lt;br /&gt;
* Examples in the ItemCreateJob docs (and maybe others) operate on items in the root collection which does not work at all&lt;br /&gt;
* Resurrect the server API docs&lt;br /&gt;
* Content of http://api.kde.org/4.x-api/kdepim-apidocs/akonadi/html/index.html should probably be moved to server or client lib docs&lt;br /&gt;
&lt;br /&gt;
=== Migration of pre-Akonadi data and settings ===&lt;br /&gt;
&lt;br /&gt;
* KCal/KABC&lt;br /&gt;
** switch KRes resources to Akonadi KRes compat resources, use KRes Akonadi compat resource, basically injecting Akonadi inbetween&lt;br /&gt;
** Replace Akonadi KRes compat resources with their ported equivalent&lt;br /&gt;
** Application side does not need migration code, &amp;quot;only&amp;quot; port to Akonadi&lt;br /&gt;
* KMail&lt;br /&gt;
** Should migrate to one resource per account + one for previous local folders&lt;br /&gt;
** Problem: local folders are mixed mbox/maildir&lt;br /&gt;
*** Dedicated KMail compat resource?&lt;br /&gt;
*** Convert everything to maildir first?&lt;br /&gt;
** Flags are stored in proprietary binary format&lt;br /&gt;
* KNode&lt;br /&gt;
** Migrate every account to NNTP resource&lt;br /&gt;
** Local flags should be preserved, stored in proprietary binary format&lt;br /&gt;
** Local subscription state should be preserved (where is that stored?)&lt;br /&gt;
** Local folders using MBOX format + proprietary binary index&lt;br /&gt;
* Akregator&lt;br /&gt;
&lt;br /&gt;
=== Search ===&lt;br /&gt;
&lt;br /&gt;
* Delegation to resources still completely missing&lt;br /&gt;
** Requires query transformation&lt;br /&gt;
** Requires management for live searches&lt;br /&gt;
** Requires the ability to report search results (needs protocol extension)&lt;br /&gt;
* Query language still undecided, current options: XESAM, SPARQL&lt;br /&gt;
* Backend still undecided, current options: XESAM, Nepomuk&lt;br /&gt;
&lt;br /&gt;
== KMail Breakdown Plan ==&lt;br /&gt;
The current plan is to put some parts of KMail into a stand-alone&lt;br /&gt;
library, independent of KMail. This increases code reuse (for example, the message composer could be shared with Mailody) and makes the code a lot easier to maintain and to port to Akonadi.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Bodypart formatters||}}&lt;br /&gt;
{{FeatureTodo|Reader Window||}}&lt;br /&gt;
{{FeatureTodo|Composer: Editor||}}&lt;br /&gt;
{{FeatureTodo|Composer: Message Composer||}}&lt;br /&gt;
{{FeatureTodo|Composer: GUI Window||}}&lt;br /&gt;
{{FeatureTodo|Queue Manager for mailtransport||}}&lt;br /&gt;
{{FeatureTodo|Templates: Core||}}&lt;br /&gt;
{{FeatureTodo|Templates: GUI||}}&lt;br /&gt;
{{FeatureTodo|Port KMCommands||}}&lt;br /&gt;
{{FeatureTodo|Port away from KMMessage and KMFolder* everywhere it is left|An idea might be: wrap KMMsgBase/KMMessage inside a reference counted Message class. Insulate everything else from it by wrapper functions. KMFolder should be easier...|}}&lt;br /&gt;
{{FeatureTodo|Migration application for index and other config||}}&lt;br /&gt;
{{FeatureTodo|Port MDNs||}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== The Road to World Domination ==&lt;br /&gt;
&lt;br /&gt;
Sort of related so the stuff above but with a scope for all of KDE PIM and beyond.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Share identity config GUI parts|eg. the signature configuration widget|}}&lt;br /&gt;
{{FeatureTodo|Mailtransport Agent|Global shared outbox, central mail sending instance|}}&lt;br /&gt;
{{FeatureTodo|Recently sent to support in mailtransport|related to above, based on Akonadi/Nepomuk|}}&lt;br /&gt;
{{FeatureTodo|Composer engine|Shared stuff for KMail/KNode/Mailody: Crypto, editor, editor actions, attachment model, message assembly, etc.|}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Akonadi FAQ ==&lt;br /&gt;
&lt;br /&gt;
This FAQ primarily deals with technical and design questions, if you have questions about using Akonadi (such as &amp;quot;I get error X when starting Akonadi&amp;quot;), please refer to [http://userbase.kde.org/Akonadi userbase.kde.org/Akonadi].&lt;br /&gt;
&lt;br /&gt;
=== Where do I find the Akonadi config files? ===&lt;br /&gt;
&lt;br /&gt;
''~/.config/akonadi/''&lt;br /&gt;
&lt;br /&gt;
=== Where does Akonadi store my data? ===&lt;br /&gt;
&lt;br /&gt;
Akonadi merely acts as a cache for your data, the actual content stays where it has always been, .ics/.vcf/MBOX files, local maildirs, IMAP- and groupware servers. There is only a limited amount of data stored exclusively in Akonadi:&lt;br /&gt;
* Data not supported by the corresponding backends, such as email flags in case of maildir/mbox. This is comparable to KMail's binary index files stored alongside these files in pre-Akonadi times.&lt;br /&gt;
* Internal meta-data used by application or resources, such as information about the last synchronization with a backend or translated folder names.&lt;br /&gt;
* Data that has been changed while the corresponding backend has been offline and has not yet been uploaded.&lt;br /&gt;
&lt;br /&gt;
=== Where can I find the Akonadi database? ===&lt;br /&gt;
&lt;br /&gt;
''~/.local/share/akonadi/''&lt;br /&gt;
&lt;br /&gt;
=== Where can I find the source code? ===&lt;br /&gt;
&lt;br /&gt;
There are three different parts of source code:&lt;br /&gt;
* The Akonadi server, which is KDE-independent. Currently, the code can be found at [http://websvn.kde.org/trunk/kdesupport/akonadi/ kdesupport/akonadi]. The server code will likely move to the [http://www.freedesktop.org/wiki/ freedesktop.org project] in the future, the move has already been [https://bugs.freedesktop.org/show_bug.cgi?id=15711 requested].&lt;br /&gt;
* The Akonadi KDE client libraries are in [http://websvn.kde.org/trunk/KDE/kdepimlibs/akonadi/ kdepimlibs/akonadi].&lt;br /&gt;
* Various agents, resources, the Akonadi console and much other misc stuff is in [http://websvn.kde.org/trunk/KDE/kdepim/akonadi/ kdepim/akonadi]&lt;br /&gt;
&lt;br /&gt;
=== Where can I find documentation? ===&lt;br /&gt;
&lt;br /&gt;
The documentation is mainly in the code itself, in the form of doxygen comments.&lt;br /&gt;
You can find the generated documentation on [api.kde.org api.kde.org], for example:&lt;br /&gt;
&lt;br /&gt;
* General documentation, including a design overview, is [http://api.kde.org/4.x-api/kdepim-apidocs/akonadi/html/index.html here]&lt;br /&gt;
&lt;br /&gt;
: Note that some links in the above documentation which point to the server or the KDE client libraries are currently broken, use the links below to access that documentation.&lt;br /&gt;
* Documentation for the KDE Akonadi client library is [http://api.kde.org/4.x-api/kdepimlibs-apidocs/akonadi/html/index.html here]&lt;br /&gt;
* Documentation about the server is [http://api.kde.org/kdesupport-api/kdesupport-apidocs/akonadi/server/html/index.html here]&lt;br /&gt;
&lt;br /&gt;
=== Which DBMS does Akonadi use? ===&lt;br /&gt;
&lt;br /&gt;
So far only MySQL. There is some work on PostgreSQL support going on though. Basically, every database that is supported by QtSQL can be used, requiring minimal changes in the code at most. However, not all of them provide the features needed by Akonadi (see next two questions).&lt;br /&gt;
&lt;br /&gt;
=== Why not use sqlite? ===&lt;br /&gt;
&lt;br /&gt;
We tried. Really. It can't handle the concurrent access very well, in the best case this means ''very'' slow operations, but we've also seen deadlocks and failing transactions. Once that's fixed in sqlite, adjusting Akonadi to use it again instead of MySQL is no problem.&lt;br /&gt;
&lt;br /&gt;
=== Why not use MySQL/Embedded? ===&lt;br /&gt;
&lt;br /&gt;
We tried that as well, there are two reasons for not using it: No support for the InnoDB engine (which we need for transaction support) and poor availability (only OpenSUSE provided usable packages, needed a patched QSQL driver).&lt;br /&gt;
&lt;br /&gt;
=== Do I need a running MySQL server? ===&lt;br /&gt;
&lt;br /&gt;
No. Akonadi starts its own local MySQL server (unless configured otherwise, see next question). All you need is having the 'mysqld' binary installed at runtime (usually found in the mysql-server package of your distribution).&lt;br /&gt;
&lt;br /&gt;
=== Can Akonadi use a normal MySQL server running on my system? ===&lt;br /&gt;
&lt;br /&gt;
Yes, it can. You find the corresponding settings in ''~/.config/akonadi/akonadiserverrc''.&lt;br /&gt;
&lt;br /&gt;
=== I don't like a database server because of backups/running on NFS/etc. ===&lt;br /&gt;
&lt;br /&gt;
See section &amp;quot;Deployment Issues&amp;quot; above, we are aware of that and working on it. Some of these, like backup/restore are already implemented. But please be aware that most of this issues also existed before (eg. with KMail's custom binary indexes).&lt;br /&gt;
&lt;br /&gt;
=== Can a single Akonadi instance be used by multiple users? ===&lt;br /&gt;
&lt;br /&gt;
No. There has to be one Akonadi server instance per user. However, it is possible to use a shared database server.&lt;br /&gt;
&lt;br /&gt;
=== Can I access the Akonadi server on a remote machine? ===&lt;br /&gt;
No. Akonadi is not a groupware server. It's a local cache only.&lt;br /&gt;
&lt;br /&gt;
=== What's the differences between Akonadi and EDS? ===&lt;br /&gt;
EDS is limited to contacts and calendar data, Akonadi is type-independent. Especially, Akonadi is designed to also handle high-volume data such as email. Akonadi and EDS also differ largely in their access protocol on a technical level (Corba/D-Bus vs. local socket with IMAP-like protocol/D-Bus) and also on a protocol level (type specific vs. generic).&lt;br /&gt;
&lt;br /&gt;
=== How do I create a collection? ===&lt;br /&gt;
&lt;br /&gt;
From the developers point of view, there is Akonadi::CollectionCreateJob for that, from the users point of view, most applications allow that, eg. Mailody or akonadiconsole.&lt;br /&gt;
&lt;br /&gt;
However, there is one limitation: Top-level collections can only be created by resources, not by normal applications. The reason for that is that every object (collection or item) is supposed to have an owning resource, that is a resource that is responsible for storing and retrieving that object. There is an ongoing discussion to remove this restriction though.&lt;br /&gt;
&lt;br /&gt;
So, if you want to create a collection eg. for testing purposes, add a resource first. Most Akonadi applications offer an option to do that, a module for KControl is planned as well.&lt;br /&gt;
&lt;br /&gt;
=== How do I disable automatic migration from KDE's traditional framework? ===&lt;br /&gt;
&lt;br /&gt;
The migration tool is controlled by standard KDE configuration file called ''kres-migratorrc''.&lt;br /&gt;
&lt;br /&gt;
Distributors or system administrators wanting to disable the automatism will probably want to that globally, e.g. by editing the installed default configuration file, or by using KDE's configuration hierachy and using a profile config between that and the user level.&lt;br /&gt;
&lt;br /&gt;
The quickest way to deactivate it for one user account only is to use KDE's ''kwriteconfig'' tool to set the respective configration value with a simple copy&amp;amp;paste of the following command:&lt;br /&gt;
&lt;br /&gt;
''kwriteconfig --file kres-migratorrc --group Migration --key Enabled --type bool false''&lt;br /&gt;
&lt;br /&gt;
Please note that at some point KDE applications such as Kontact, KOrganizer, KMail, KAddressBook will be using Akonadi directly, at which point migration either has to be enabled or performed manually.&lt;br /&gt;
&lt;br /&gt;
=== How do I completely disable Akonadi startup? ===&lt;br /&gt;
&lt;br /&gt;
If you already have applications natively using Akonadi, you of course can't disable Akonadi startup. &amp;lt;i&amp;gt;Mailody&amp;lt;/i&amp;gt; and &amp;lt;i&amp;gt;KPilot&amp;lt;/i&amp;gt; are applications that are already based on Akonadi, for example.&lt;br /&gt;
&lt;br /&gt;
Other applications, like &amp;lt;i&amp;gt;KAddressbook&amp;lt;/i&amp;gt; and &amp;lt;i&amp;gt;KOrganizer&amp;lt;/i&amp;gt;, are not based on Akonadi yet, at the time of writing. Instead, they use the old KResource framework for storing contacts, calendars and notes.&lt;br /&gt;
During the KDE 4.2 beta time, these KResources were automatically migrated to Akonadi-based KResources, the so-called Akonadi compatibility resources. Therefore, applications like KAddressbook and KOrganizer would use Akonadi indirectly through KResources, and therefore would start the Akonadi server when being started. Note that the same situation applies for KMail, which uses addressbook functionality also based on KResources.&lt;br /&gt;
&lt;br /&gt;
If Akonadi doesn't start up correctly for you, the following should help you to disable Akonadi startup and use your old KResources again.&lt;br /&gt;
&lt;br /&gt;
First, disable automatic migration like described in the above FAQ entry.&lt;br /&gt;
Then, open &amp;lt;i&amp;gt;System Settings&amp;lt;/i&amp;gt;, go to the &amp;lt;i&amp;gt;Advanced&amp;lt;/i&amp;gt; tab and open the &amp;lt;i&amp;gt;KDE Resources&amp;lt;/i&amp;gt; config panel. There, you can configure which type of KResources are used for contacts, calendars and notes. If the migration to Akonadi was successful, you'll probably only see the &amp;lt;i&amp;gt;Akonadi Compatibility Resource&amp;lt;/i&amp;gt; as an active resource, and all others disabled.&lt;br /&gt;
&lt;br /&gt;
To disable Akonadi startup, enable your old resources again, then disable and delete the Akonadi compatibility resource.&lt;br /&gt;
&lt;br /&gt;
=== What is the relation between Akonadi and OpenSync? ===&lt;br /&gt;
&lt;br /&gt;
Akonadi and OpenSync focus on different aspects and complement each other. Akonadi provides a unified way to access PIM data for applications and a framework to implement powerful connectors to varies data sources. OpenSync focus is on syncing two sets of PIM data.&lt;br /&gt;
&lt;br /&gt;
An Akonadi plugin for OpenSync is currently under development, allowing to sync PIM data available through Akonadi with any other system supported by OpenSync, especially mobile phones.&lt;br /&gt;
&lt;br /&gt;
=== When should I use Akonadi? ===&lt;br /&gt;
&lt;br /&gt;
More precisely, when should you use for your application specific data instead of eg. just using a local file directly.&lt;br /&gt;
&lt;br /&gt;
Akonadi is especially useful when you need one the following:&lt;br /&gt;
&lt;br /&gt;
* Different backends for your data, like eg. a local file and a remote server. Akonadi provides a unified interface for application developers to access your data independent of the actual backend.&lt;br /&gt;
* Caching and change replay of remote data. Akonadi has support for that built in, giving you free offline support for any remote backend.&lt;br /&gt;
* Desktop-wide sharing of your data. As soon as more than one application (say your main applications and a plasmoid) accesses the same data you need to deal with locking, conflict detection, change notifications, etc. - or let Akonadi do that for you.&lt;br /&gt;
&lt;br /&gt;
However, if you are just looking for a simple way to store your application data without needing one of the above, using Akonadi usually means more implementation work for relatively little gain.&lt;br /&gt;
&lt;br /&gt;
=== Akonadi needs too much space in my home directory! ===&lt;br /&gt;
&lt;br /&gt;
An empty, unused Akonadi database needs about 100 Mb of disk space. This is due to the MySQL InnoDB log files which work similar to a journal in a modern file system. These files are constant in size and independent of the actual data stored in Akonadi. The default size is optimized for performance on average desktop hardware where the use of 100 Mb of disk space is no problem. In other cases, such as multi-user systems or embedded devices, this default might not be optimal though.&lt;br /&gt;
&lt;br /&gt;
The default size can be configured, globally or per-user. The global configuration file can be found in $PREFIX/share/config/akonadi/mysql-global.conf, the per-user file is in ~/.config/akonadi/mysql-local.conf and overwrites settings of the global file. In any of these files, you can change the settings '''innodb_log_file_size''' and assign it a smaller value than the default (64M).&lt;br /&gt;
&lt;br /&gt;
For this setting to take effect you need to restart Akonadi. With older Akonadi versions (&amp;lt;=1.1.1) you might need to manually remove the InnoDB log files from ~/.local/share/akonadi/db_data for this change to take effect. The log files do not contain data after a clean shutdown and thus can safely be removed while Akonadi is not running.&lt;br /&gt;
&lt;br /&gt;
An alternative approach especially for multi-user systems might be the use of a single, global MySQL server instance.&lt;br /&gt;
&lt;br /&gt;
[[Category:PIM]]&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
&lt;br /&gt;
* [[Projects/PIM/Akonadi/Testing|Akonadi Testing Framework]]&lt;br /&gt;
* [[Projects/PIM/Akonadi/Development_Tools|Akonadi Development Tools]]&lt;br /&gt;
* Tutorials:&lt;br /&gt;
** [[Development/Tutorials/Akonadi/Application|Application Development]]&lt;br /&gt;
** [[Development/Tutorials/Akonadi/Resources|Resource Development]]&lt;br /&gt;
** [[Development/Tutorials/Akonadi/SerializerPlugin|Serializer Plugin Development]]&lt;br /&gt;
* [[Projects/PIM/Akonadi/Bookmarks|Bookmark support based on Akonadi]]&lt;br /&gt;
* [http://pim.kde.org/akonadi/ http://pim.kde.org/akonadi/]&lt;br /&gt;
* API docs&lt;br /&gt;
** [http://api.kde.org/4.x-api/kdepimlibs-apidocs/akonadi/html/index.html Client library]&lt;br /&gt;
** [http://api.kde.org/kdesupport-api/kdesupport-apidocs/akonadi/html/ Server]&lt;br /&gt;
* #akonadi IRC channel on freenode&lt;br /&gt;
* Meetings&lt;br /&gt;
** [[Projects/PIM/Akonadi/Meeting2008-11|Halloween Sprint 2008]]&lt;br /&gt;
** [[Projects/PIM/Meetings/Osnabrueck_7|Osnabrueck 7]]&lt;br /&gt;
** [[Projects/PIM/Akonadi/Meeting2009-04|Akonadi April Sprint 2009]]&lt;br /&gt;
* [[Projects/Summer of Code/2009/Ideas#KDE_PIM|Google Summer of Code 2009 Ideas]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/File:Akonadi-Kres.png</id>
		<title>File:Akonadi-Kres.png</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/File:Akonadi-Kres.png"/>
				<updated>2009-04-21T11:01:50Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Diagram of Akonadi bridge resource migration strategy.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Diagram of Akonadi bridge resource migration strategy.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/Akonadi/Meeting2009-04</id>
		<title>Projects/PIM/Akonadi/Meeting2009-04</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/Akonadi/Meeting2009-04"/>
				<updated>2009-04-03T12:21:25Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Add some more to the agenda&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is about the Akonadi Meeting in April 2009.&lt;br /&gt;
&lt;br /&gt;
Date: April 3rd (Friday) - April 5th (Sunday)&lt;br /&gt;
&lt;br /&gt;
== Location/links: ==&lt;br /&gt;
&lt;br /&gt;
* [http://tinyurl.com/cuojlo Hotel &amp;amp; Office on Google Maps]&lt;br /&gt;
* [http://www.bvg.de/index.php/de/Common/Document/field/file/id/2597/filename/S+U-Bahn_aktuell.pdf Subway and rail map of Berlin]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
KDAB&lt;br /&gt;
Adalbertstrasse 7/8&lt;br /&gt;
10999 Berlin&lt;br /&gt;
Germany&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
{{improve}}&lt;br /&gt;
&lt;br /&gt;
* GSoC selection&lt;br /&gt;
* KAddressbook vs. KContactManager&lt;br /&gt;
* Resolve the POP3 agent/resource design disagreement&lt;br /&gt;
* User feedback&lt;br /&gt;
* Investigate the Lionmail performance issue&lt;br /&gt;
* Mail part splitting&lt;br /&gt;
* Searching&lt;br /&gt;
* How should virtual collections/linking be handled? ([http://thread.gmane.org/gmane.comp.kde.devel.pim/23831 thread]) Open issues include &lt;br /&gt;
** whether it should be possible to have both real items and linked items in one collection. If it was allowed it could take away difficult tasks like determining if a collection is virtual (currently hardcoded with search resource identifier in collectionutils_p.h). &lt;br /&gt;
** how to determine if a user operation such as moves are permitted to/from the collection (possibly using collection rights).&lt;br /&gt;
** Should list jobs fetch linked items or should that be configurable in the job?&lt;br /&gt;
** Figure out use cases for virtual collections. Current ones include search collections, nepomuk tagging, 'single inbox'. The tagging and inbox idea are probably just specialized searches anyway.&lt;br /&gt;
** Should it be possible to link collections as well as items?  &lt;br /&gt;
** Should it be possible to cascade virtual collections? (nepomuk tag trees say yes). This is possibly a non issue because there is actually nothing virtual about virtual collections. It could be a regular collection tree which happens to contain no real items and only links to items.&lt;br /&gt;
* Progress on implementing move support in akonadi. ([http://thread.gmane.org/gmane.comp.kde.devel.pim/23754 thread])&lt;br /&gt;
* Can we have a recursive version of contentMimeTypes? (needed by entityTreeModel and could make filtering more sensible)&lt;br /&gt;
* Do we need to set some standards of compliance for names of Payload parts? Considering not all resources from third parties will use our stuff (KABC etc) we need to make sure they use the same names for payload parts.&lt;br /&gt;
* Should Monitor be configurable to watch {un,}subscribed collections?&lt;br /&gt;
* How should statistics work and what information should they give? They should show counts of a particular mimetype in a collection, not just total count. Possibly also counts of items with a particular flag or attribute (new, watched important etc). eg, int CollectionStatistics::countMimetype(const QString &amp;amp;mimeType ), int CollectionStatistics::countAttribute(Akonadi::Attribute attr, const QString &amp;amp;mimeType= QString()), int countFlags(Akonadi::Item::Flags flags, const QString &amp;amp;mimeTypes), (etc?)&lt;br /&gt;
* Do we need a way to know what payload parts are available to an item (or is it possible) or a bool Item::hasFullPayload()?&lt;br /&gt;
* Group photo&lt;br /&gt;
&lt;br /&gt;
== Meeting Notes ==&lt;br /&gt;
&lt;br /&gt;
{{improve|}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Akonadi]]&lt;br /&gt;
[[Category:PIM]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/Akonadi/Meeting2009-04</id>
		<title>Projects/PIM/Akonadi/Meeting2009-04</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/Akonadi/Meeting2009-04"/>
				<updated>2009-04-02T17:32:12Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Add some things to discuss.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is about the Akonadi Meeting in April 2009.&lt;br /&gt;
&lt;br /&gt;
Date: April 3rd (Friday) - April 5th (Sunday)&lt;br /&gt;
&lt;br /&gt;
== Location/links: ==&lt;br /&gt;
&lt;br /&gt;
* [http://tinyurl.com/cuojlo Hotel &amp;amp; Office on Google Maps]&lt;br /&gt;
* [http://www.bvg.de/index.php/de/Common/Document/field/file/id/2597/filename/S+U-Bahn_aktuell.pdf Subway and rail map of Berlin]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
KDAB&lt;br /&gt;
Adalbertstrasse 7/8&lt;br /&gt;
10999 Berlin&lt;br /&gt;
Germany&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
{{improve}}&lt;br /&gt;
&lt;br /&gt;
* GSoC selection&lt;br /&gt;
* KAddressbook vs. KContactManager&lt;br /&gt;
* Resolve the POP3 agent/resource design disagreement&lt;br /&gt;
* User feedback&lt;br /&gt;
* Investigate the Lionmail performance issue&lt;br /&gt;
* Mail part splitting&lt;br /&gt;
* Searching&lt;br /&gt;
* How should virtual collections/linking be handled? ([http://thread.gmane.org/gmane.comp.kde.devel.pim/23831 thread]) Open issues include &lt;br /&gt;
** whether it should be possible to have both real items and linked items in one collection. If it was allowed it could take away difficult tasks like determining if a collection is virtual (currently hardcoded with search resource identifier in collectionutils_p.h). &lt;br /&gt;
** how to determine if a user operation such as moves are permitted to/from the collection (possibly using collection rights).&lt;br /&gt;
** Should list jobs fetch linked items or should that be configurable in the job?&lt;br /&gt;
** Figure out use cases for virtual collections. Current ones include search collections, nepomuk tagging, 'single inbox'. The tagging and inbox idea are probably just specialized searches anyway.&lt;br /&gt;
** Should it be possible to link collections as well as items?  &lt;br /&gt;
** Should it be possible to cascade virtual collections? (nepomuk tag trees say yes). This is possibly a non issue because there is actually nothing virtual about virtual collections. It could be a regular collection tree which happens to contain no real items and only links to items.&lt;br /&gt;
* Progress on implementing move support in akonadi. ([http://thread.gmane.org/gmane.comp.kde.devel.pim/23754 thread])&lt;br /&gt;
* Can we have a recursive version of contentMimeTypes? (needed by entityTreeModel and could make filtering more sensible)&lt;br /&gt;
* Do we need to set some standards of compliance for names of Payload parts? Considering not all resources from third parties will use our stuff (KABC etc) we need to make sure they use the same names for payload parts.&lt;br /&gt;
* Should Monitor be configurable to watch {un,}subscribed collections?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Meeting Notes ==&lt;br /&gt;
&lt;br /&gt;
{{improve|}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Akonadi]]&lt;br /&gt;
[[Category:PIM]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Translator</id>
		<title>Paths/Translator</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Translator"/>
				<updated>2009-01-18T14:23:45Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Add link to Lokalize video&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is a guide to new contributors on how to translate for KDE.&lt;br /&gt;
&lt;br /&gt;
===Dive in ===&lt;br /&gt;
* What are .po and .pot files?&lt;br /&gt;
* joining the mailing list for your language.&lt;br /&gt;
* using X-Test&lt;br /&gt;
* Starting a new translation team&lt;br /&gt;
* Using KBabel/Lokalize http://www.kde.org.br/index.php?title=Tutorial_i18n#Traduzindo_os_arquivos_com_KBabel&lt;br /&gt;
* [http://youonlylivetwice.info/lokalize/lokalize-first.htm Lokalize video tutorial]&lt;br /&gt;
&lt;br /&gt;
===Resources===&lt;br /&gt;
* kde-i18n-doc@&lt;br /&gt;
* irc://freenode.net/kde-i18n&lt;br /&gt;
* i18n.kde.org&lt;br /&gt;
*  http://l10n.kde.org/teams-list.php&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules</id>
		<title>Schedules</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules"/>
				<updated>2009-01-16T14:20:13Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* KDE4 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
During development, the KDE project sets goals in features and dates for upcoming releases. This way, the team knows when it would be a good time to add a new feature or when it's time to&lt;br /&gt;
focus on cleaning up any bugs in preparation for a release. Any plans are tentative schedules and the final dates are generally decided on the kde-core-devel mailing list.&lt;br /&gt;
&lt;br /&gt;
Learn more about [[Schedules/Release Schedules Guide|release schedules]].&lt;br /&gt;
&lt;br /&gt;
== KDE4 ==&lt;br /&gt;
* [[Schedules/KDE4/Goals|KDE 4 Goals]]&lt;br /&gt;
* [[Schedules/KDE4/Application Porting Status|Application Porting Status]]&lt;br /&gt;
&lt;br /&gt;
*'''KDE 4.3'''&lt;br /&gt;
** [[Schedules/KDE4/4.3 Release Schedule|Release Schedule]]&lt;br /&gt;
** [[Schedules/KDE4/4.3 Release Goals|Release Goals]]&lt;br /&gt;
** [[Schedules/KDE4/4.3 Feature Plan|Feature Plan]]&lt;br /&gt;
&lt;br /&gt;
*'''KDE 4.2'''&lt;br /&gt;
** [[Schedules/KDE4/4.2 Release Schedule|Release Schedule]]&lt;br /&gt;
** [[Schedules/KDE4/4.2 Release Goals|Release Goals]]&lt;br /&gt;
** [[Schedules/KDE4/4.2 Feature Plan|Feature Plan]]&lt;br /&gt;
** [[Schedules/Is KDE 4.2 for you?|Is KDE 4.2 for you?]]&lt;br /&gt;
** [[Schedules/KDE4/4.2 Upstream Issues|Release Critical Upstream Issues]]&lt;br /&gt;
** [[Schedules/KDE4/4.2 Requirements|Compilation Requirements]]&lt;br /&gt;
&lt;br /&gt;
*'''KDE 4.1'''&lt;br /&gt;
** [[Schedules/KDE4/4.1 Release Schedule|Release Schedule]]&lt;br /&gt;
** [[Schedules/KDE4/4.1 Release Goals|Release Goals]]&lt;br /&gt;
** [[Schedules/KDE4/4.1 Feature Plan|Feature Plan]]&lt;br /&gt;
** [[Schedules/Is KDE 4.1 for you?|Is KDE 4.1 for you?]]&lt;br /&gt;
&lt;br /&gt;
*'''KDE 4.0'''&lt;br /&gt;
** [[Schedules/KDE4/4.0 Release Schedule|Release Schedule]]&lt;br /&gt;
** [[Schedules/KDE4/4.0 Release Roadmap|Release Milestones]] &lt;br /&gt;
** [[Schedules/KDE4/4.0 Module_Status|Module Status and Pending Application Issues]]&lt;br /&gt;
** [[Schedules/KDE4/4.0 Upstream Issues|Release Critical Upstream Issues]]&lt;br /&gt;
** [[Schedules/KDE4/4.0 Announcements|Announcement Information]]&lt;br /&gt;
** [[Schedules/KDE4/4.0 Requirements|Compilation Requirements]]&lt;br /&gt;
&lt;br /&gt;
== KDE3 ==&lt;br /&gt;
&lt;br /&gt;
*'''KDE 3.5''' [[Schedules/KDE 3.5 Release Schedule|release schedule]], [[Schedules/KDE 3.5 Feature Plan|feature plan]]&lt;br /&gt;
&lt;br /&gt;
=== Previous releases ===&lt;br /&gt;
&lt;br /&gt;
*'''KDE 3.4''' [[Schedules/KDE 3.4 Release Schedule|release schedule]], [[Schedules/KDE 3.4 Feature Plan|feature plan]]&lt;br /&gt;
*'''KDE 3.3''' [[Schedules/KDE 3.3 Release Schedule|release schedule]], [[Schedules/KDE 3.3 Feature Plan|feature plan]]&lt;br /&gt;
*'''KDE 3.2''' [[Schedules/KDE 3.2 Release Schedule|release schedule]], [[Schedules/KDE 3.2 Feature Plan|feature plan]]&lt;br /&gt;
*'''KDE 3.1''' [[Schedules/KDE 3.1 Release Schedule|release schedule]], [[Schedules/KDE 3.1 Feature Plan|feature plan]]&lt;br /&gt;
*'''KDE 3.0''' [[Schedules/KDE 3.0 Release Schedule|release schedule]], [[Schedules/KDE 3.0 Feature Plan|feature plan]]&lt;br /&gt;
&lt;br /&gt;
== KOffice ==&lt;br /&gt;
&lt;br /&gt;
=== Current releases ===&lt;br /&gt;
&lt;br /&gt;
*'''KOffice 2.0''' [[Schedules/KOffice 2.0 Release Schedule|release schedule]], [http://wiki.koffice.org/index.php?title=KOffice2/Goals feature plan]&lt;br /&gt;
*'''KOffice 1.6''' [[Schedules/KOffice 1.6 Release Schedule|release schedule]], [[Schedules/KOffice 1.6 Feature Plan|feature plan]]&lt;br /&gt;
&lt;br /&gt;
=== Previous releases ===&lt;br /&gt;
&lt;br /&gt;
*'''KOffice 1.5''' [[Schedules/KOffice 1.5 Release Schedule|release schedule]], [[Schedules/KOffice 1.5 Feature Plan|feature plan]]&lt;br /&gt;
*'''KOffice 1.4''' [[Schedules/KOffice 1.4 Release Schedule|release schedule]]&lt;br /&gt;
*'''KOffice 1.3''' [[Schedules/KOffice 1.3 Release Schedule|release schedule]]&lt;br /&gt;
&lt;br /&gt;
== Extragear ==&lt;br /&gt;
* [[Schedules/Extragear|Overview of upcoming Extragear releases (WIP)]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/Is_KDE_4.2_for_you%3F</id>
		<title>Schedules/Is KDE 4.2 for you?</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/Is_KDE_4.2_for_you%3F"/>
				<updated>2009-01-15T19:12:04Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Rendering and spelling&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;KDE 4.2 is due to be released at the end of January 2009. This is another&lt;br /&gt;
significant milestone in the ever improving and evolving KDE4 series. KDE&lt;br /&gt;
4.2 is the result of the hard work of hundreds of developers, artists,&lt;br /&gt;
documenters, translators, bug triagers and other technical experts. &lt;br /&gt;
&lt;br /&gt;
Vision for the future computer interface remains the focus of the KDE4&lt;br /&gt;
series. KDE 4.2 brings new improvements and possibilities for interaction&lt;br /&gt;
with your computer and workspace that were never possible in the KDE 3.5&lt;br /&gt;
series. &lt;br /&gt;
 &lt;br /&gt;
For the most part, the workspace will behave as a user familiar with KDE3.5&lt;br /&gt;
expects. Improvements in that area since [[Schedules/Is KDE4.1 For You?|KDE4.1]] include:&lt;br /&gt;
*  The panel can be resized easily.&lt;br /&gt;
*  Panels support the autohide feature.&lt;br /&gt;
*  Widgets can be moved on the panel, from the panel to the background, and from the background to the panel.&lt;br /&gt;
*  The 'desktop background' can be used for icons in the same way as KDE3.5 behaved (that is, without a smaller folderview plasmoid, and with a background image).&lt;br /&gt;
*  Icons on the desktop background or folderview can be freely moved around, and are no longer required to be arranged in a grid.&lt;br /&gt;
*  Network manager will not be part of the official KDE 4.2 release, but will be available through [http://aseigo.blogspot.com/2008/11/on-my-other-perspective.html a collaboration with downstreams] at some point in the KDE4.2 cycle when distributions release their next stable versions (Spring/Summer 2009).&lt;br /&gt;
*  Many rendering issues with nVidia cards are gone since a fixed NVidia driver has been [http://www.nvidia.com/object/unix.html released].&lt;br /&gt;
&lt;br /&gt;
== Remaining Issues in KDE4 ==&lt;br /&gt;
Some issues still remain in KDE4 which will not be fixed in time for&lt;br /&gt;
KDE4.2. If these are still large issues for some users, KDE3 is still&lt;br /&gt;
available, usable and supported on some distributions.&lt;br /&gt;
&lt;br /&gt;
*  '''Printer Configuration''' KDE4 uses the Qt4 printer system directly.&lt;br /&gt;
It has not yet been extended to all of the functionality present in the&lt;br /&gt;
KDE3 print system.&lt;br /&gt;
*  '''Systray rendering''' Some icons still do not render correctly on some&lt;br /&gt;
configurations. Updates to freedesktop.org systems, or porting those icons&lt;br /&gt;
to plasmoids will see this situation improve. Additionally, KDE supports a new window manager hint which will improve the situation when new versions of Qt and Gtk are released and distributed.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
== Applications ==&lt;br /&gt;
All applications in the KDE official modules have seen many improvements,&lt;br /&gt;
bugfixes and new features. As in the case of KDE4.1, some applications familiar to users of KDE3.5 are not yet ported to KDE4 and some of these follow their own release schedules. Users should note however, that KDE3 versions of these applications do still work flawlessly alongside KDE4 applications and in a KDE4 workspace.&lt;br /&gt;
&lt;br /&gt;
Since the release of KDE 4.1, [http://amarok.kde.org/en/releases/2.0.1.1 Amarok 2.0.1.1] has been released. Other notable and popular applications are under continuous development, and some of them may be released near the time of KDE4.2 release including Digikam and [http://www.koffice.org/announcements/announce-2.0beta5.php KOffice].&lt;br /&gt;
&lt;br /&gt;
KDevelop is still under heavy development, and will not be ready for a&lt;br /&gt;
release in time for KDE4.2. However, a compromise of releasing a beta of&lt;br /&gt;
KDevelop with KDE4.2 has been reached. KDevelop is expected to see a full&lt;br /&gt;
KDE4 release several months after release of KDE4.2.&lt;br /&gt;
&lt;br /&gt;
Other applications such as Konversation, Kaffeine and K3B do not yet have&lt;br /&gt;
KDE4 versions, but work is continuing on bringing them to KDE4.&lt;br /&gt;
&lt;br /&gt;
'''Projects with a different release schedule than KDE4.'''&lt;br /&gt;
&lt;br /&gt;
Project (Current Version - Final Release Date)&lt;br /&gt;
* [http://www.digikam.org/ digiKam] ([http://www.digikam.org/drupal/node/420 Beta 8] - Early 2009)&lt;br /&gt;
[http://www.digikam.org/drupal/about/releaseplan Digikam 0.10.0 Release Plan]&lt;br /&gt;
&lt;br /&gt;
* [http://www.krusader.org Krusader 2.0] ([http://www.krusader.org/text.php?t=krusader-2.0.0-beta2.notes Beta 2] - Unknown)&lt;br /&gt;
Krusader is an advanced twin panel (commander style) file manager.&lt;br /&gt;
&lt;br /&gt;
* [http://www.koffice.org/ KOffice 2.0] ([http://www.koffice.org/announcements/announce-2.0beta5.php Beta 5] - Spring 2009)&lt;br /&gt;
Binaries are available for all three major platforms.  The developers are looking for volunteers to help put together screenshots for [http://www.kdedevelopers.org/node/3545 visual changelogs].&lt;br /&gt;
&lt;br /&gt;
* [http://k3b.plainblack.com/ k3b 1.1]  (Pre-Alpha - Unknown)&lt;br /&gt;
An alpha release of 1.1 (the KDE 4 port) is forthcoming, but not yet released.&lt;br /&gt;
&lt;br /&gt;
* [http://kaffeine.kde.org/ Kaffeine] (Pre-Alpha - Unknown) &lt;br /&gt;
The KDE4 port is under way but requires major rewriting to support Phonon and other new features. No releases scheduled at this time.&lt;br /&gt;
&lt;br /&gt;
* [http://kplayer.sourceforge.net/ KPlayer 0.7] (Released January 11 2008) &lt;br /&gt;
KPlayer 0.7 is the KDE4 port of KPlayer that was released on the same day as KDE 4.0. KPlayer 0.7.1 is planned for fall 2008 and will include a KDE4 port of its multimedia library which still used KDE3 compatibility layer in version 0.7.0.&lt;br /&gt;
&lt;br /&gt;
* [http://basket.kde.org/ Basket] (1.0.3.1 (KDE3) - Released June 30 2008)&lt;br /&gt;
The KDE4 port of Basket is currently in a pre-alpha state.&lt;br /&gt;
&lt;br /&gt;
* [http://konversation.kde.org/ Konversation 2.0] (Pre-Alpha - Unknown)&lt;br /&gt;
The KDE4 port will not be released to sometime after version 1.1, which will be the last KDE3 release.&lt;br /&gt;
&lt;br /&gt;
*There are also several [http://games.kde.org/ KDE games] that do not have a KDE 4 port yet. Among these are kasteroids, kfouleggs.&lt;br /&gt;
&lt;br /&gt;
* [http://www.kdevelop.org/ KDevelop 4.0]  (Pre-Alpha - Unknown)&lt;br /&gt;
An alpha release of 4.0 (a rewritten from scratch version)  [http://www.kdevelop.org/mediawiki/index.php/KDevelop_4/KDev3_KDev4_comparison_table is forthcoming], but not yet released. Normal users should continue to use the [http://www.kdevelop.org/index.html?filename=3.5/download.html stable KDevelop 3.5.2] version for the time being.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/Is_KDE_4.2_for_you%3F</id>
		<title>Schedules/Is KDE 4.2 for you?</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/Is_KDE_4.2_for_you%3F"/>
				<updated>2009-01-15T19:09:45Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Fix some rendering and link to nvidia page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;KDE 4.2 is due to be released at the end of January 2009. This is another&lt;br /&gt;
significant milestone in the ever improving and evolving KDE4 series. KDE&lt;br /&gt;
4.2 is the result of the hard work of hundreds of developers, artists,&lt;br /&gt;
documenters, translators, bug triagers and other technical experts. &lt;br /&gt;
&lt;br /&gt;
Vision for the future computer interface remains the focus of the KDE4&lt;br /&gt;
series. KDE 4.2 brings new improvements and possibilities for interaction&lt;br /&gt;
with your computer and workspace that were never possible in the KDE 3.5&lt;br /&gt;
series. &lt;br /&gt;
 &lt;br /&gt;
For the most part, the workspace will behave as a user familiar with KDE3.5&lt;br /&gt;
expects. Improvements in that area since [[Schedules/Is KDE4.1 For You?|KDE4.1]] include:&lt;br /&gt;
*  The panel can be resized easily.&lt;br /&gt;
*  Panels support the autohide feature.&lt;br /&gt;
*  Widgets can be moved on the panel, from the panel to the background, and&lt;br /&gt;
from the background to the panel.&lt;br /&gt;
*  The 'desktop background' can be used for icons in the same way as KDE3.5&lt;br /&gt;
behaved (that is, without a smaller folderview plasmoid, and with a&lt;br /&gt;
backround image).&lt;br /&gt;
*  Icons on the desktop background or folderview can be freely moved&lt;br /&gt;
around, and are no longer required to be arranged in a grid.&lt;br /&gt;
*  Network manager will not be part of the offical KDE 4.2 release, but&lt;br /&gt;
will be available through&lt;br /&gt;
[http://aseigo.blogspot.com/2008/11/on-my-other-perspective.html a&lt;br /&gt;
collaboration with downstreams] at some point in the KDE4.2 cycle when&lt;br /&gt;
distributions release their next stable versions (Spring/Summer 2009).&lt;br /&gt;
*  Many rendering issues with nVidia cards are gone since a fixed NVidia driver has been [http://www.nvidia.com/object/unix.html released].&lt;br /&gt;
&lt;br /&gt;
== Remaining Issues in KDE4 ==&lt;br /&gt;
Some issues still remain in KDE4 which will not be fixed in time for&lt;br /&gt;
KDE4.2. If these are still large issues for some users, KDE3 is still&lt;br /&gt;
available, usable and supported on some distributions.&lt;br /&gt;
&lt;br /&gt;
 *  '''Printer Configuration''' KDE4 uses the Qt4 printer system directly.&lt;br /&gt;
It has not yet been extended to all of the functionality present in the&lt;br /&gt;
KDE3 print system.&lt;br /&gt;
 *  '''Systray rendering''' Some icons still do not render correctly on some&lt;br /&gt;
configurations. Updates to freedesktop.org systems, or porting those icons&lt;br /&gt;
to plasmoids will see this situation improve. Additionally, KDE supports a new window manager hint which will improve the situation when new versions of Qt and Gtk are released and distributed.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
== Applications ==&lt;br /&gt;
All applications in the KDE official modules have seen many improvements,&lt;br /&gt;
bugfixes and new features. As in the case of KDE4.1, some applications familiar to users of KDE3.5 are not yet ported to KDE4 and some of these follow their own release schedules. Users should note however, that KDE3 versions of these applications do still work flawlessly alongside KDE4 applications and in a KDE4 workspace.&lt;br /&gt;
&lt;br /&gt;
Since the release of KDE 4.1, [http://amarok.kde.org/en/releases/2.0.1.1 Amarok 2.0.1.1] has been released. Other notable and popular applications are under continuous development, and some of them may be released near the time of KDE4.2 release including Digikam and [http://www.koffice.org/announcements/announce-2.0beta5.php KOffice].&lt;br /&gt;
&lt;br /&gt;
KDevelop is still under heavy development, and will not be ready for a&lt;br /&gt;
release in time for KDE4.2. However, a compromise of releasing a beta of&lt;br /&gt;
KDevelop with KDE4.2 has been reached. KDevelop is expected to see a full&lt;br /&gt;
KDE4 release several months after release of KDE4.2.&lt;br /&gt;
&lt;br /&gt;
Other applications such as Konversation, Kaffeine and K3B do not yet have&lt;br /&gt;
KDE4 versions, but work is continuing on bringing them to KDE4.&lt;br /&gt;
&lt;br /&gt;
'''Projects with a different release schedule than KDE4.'''&lt;br /&gt;
&lt;br /&gt;
Project (Current Version - Final Release Date)&lt;br /&gt;
* [http://www.digikam.org/ digiKam] ([http://www.digikam.org/drupal/node/420 Beta 8] - Early 2009)&lt;br /&gt;
[http://www.digikam.org/drupal/about/releaseplan Digikam 0.10.0 Release Plan]&lt;br /&gt;
&lt;br /&gt;
* [http://www.krusader.org Krusader 2.0] ([http://www.krusader.org/text.php?t=krusader-2.0.0-beta2.notes Beta 2] - Unknown)&lt;br /&gt;
Krusader is an advanced twin panel (commander style) file manager.&lt;br /&gt;
&lt;br /&gt;
* [http://www.koffice.org/ KOffice 2.0] ([http://www.koffice.org/announcements/announce-2.0beta5.php Beta 5] - Spring 2009)&lt;br /&gt;
Binaries are available for all three major platforms.  The developers are looking for volunteers to help put together screenshots for [http://www.kdedevelopers.org/node/3545 visual changelogs].&lt;br /&gt;
&lt;br /&gt;
* [http://k3b.plainblack.com/ k3b 1.1]  (Pre-Alpha - Unknown)&lt;br /&gt;
An alpha release of 1.1 (the KDE 4 port) is forthcoming, but not yet released.&lt;br /&gt;
&lt;br /&gt;
* [http://kaffeine.kde.org/ Kaffeine] (Pre-Alpha - Unknown) &lt;br /&gt;
The KDE4 port is under way but requires major rewriting to support Phonon and other new features. No releases scheduled at this time.&lt;br /&gt;
&lt;br /&gt;
* [http://kplayer.sourceforge.net/ KPlayer 0.7] (Released January 11 2008) &lt;br /&gt;
KPlayer 0.7 is the KDE4 port of KPlayer that was released on the same day as KDE 4.0. KPlayer 0.7.1 is planned for fall 2008 and will include a KDE4 port of its multimedia library which still used KDE3 compatibility layer in version 0.7.0.&lt;br /&gt;
&lt;br /&gt;
* [http://basket.kde.org/ Basket] (1.0.3.1 (KDE3) - Released June 30 2008)&lt;br /&gt;
The KDE4 port of Basket is currently in a pre-alpha state.&lt;br /&gt;
&lt;br /&gt;
* [http://konversation.kde.org/ Konversation 2.0] (Pre-Alpha - Unknown)&lt;br /&gt;
The KDE4 port will not be released to sometime after version 1.1, which will be the last KDE3 release.&lt;br /&gt;
&lt;br /&gt;
*There are also several [http://games.kde.org/ KDE games] that do not have a KDE 4 port yet. Among these are kasteroids, kfouleggs.&lt;br /&gt;
&lt;br /&gt;
* [http://www.kdevelop.org/ KDevelop 4.0]  (Pre-Alpha - Unknown)&lt;br /&gt;
An alpha release of 4.0 (a rewritten from scratch version)  [http://www.kdevelop.org/mediawiki/index.php/KDevelop_4/KDev3_KDev4_comparison_table is forthcoming], but not yet released. Normal users should continue to use the [http://www.kdevelop.org/index.html?filename=3.5/download.html stable KDevelop 3.5.2] version for the time being.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/Is_KDE_4.2_for_you%3F</id>
		<title>Schedules/Is KDE 4.2 for you?</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/Is_KDE_4.2_for_you%3F"/>
				<updated>2009-01-15T19:06:11Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Create initial page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;KDE 4.2 is due to be released at the end of January 2009. This is another&lt;br /&gt;
significant milestone in the ever improving and evolving KDE4 series. KDE&lt;br /&gt;
4.2 is the result of the hard work of hundreds of developers, artists,&lt;br /&gt;
documenters, translators, bug triagers and other technical experts. &lt;br /&gt;
&lt;br /&gt;
Vision for the future computer interface remains the focus of the KDE4&lt;br /&gt;
series. KDE 4.2 brings new improvements and possibilities for interaction&lt;br /&gt;
with your computer and workspace that were never possible in the KDE 3.5&lt;br /&gt;
series. &lt;br /&gt;
 &lt;br /&gt;
For the most part, the workspace will behave as a user familiar with KDE3.5&lt;br /&gt;
expects. Improvements in that area since [[Schedules/Is KDE4.1 For You?|KDE4.1]] include:&lt;br /&gt;
 *  The panel can be resized easily.&lt;br /&gt;
 *  Panels support the autohide feature.&lt;br /&gt;
 *  Widgets can be moved on the panel, from the panel to the background, and&lt;br /&gt;
from the background to the panel.&lt;br /&gt;
 *  The 'desktop background' can be used for icons in the same way as KDE3.5&lt;br /&gt;
behaved (that is, without a smaller folderview plasmoid, and with a&lt;br /&gt;
backround image).&lt;br /&gt;
 *  Icons on the desktop background or folderview can be freely moved&lt;br /&gt;
around, and are no longer required to be arranged in a grid.&lt;br /&gt;
 *  Network manager will not be part of the offical KDE 4.2 release, but&lt;br /&gt;
will be available through&lt;br /&gt;
[http://aseigo.blogspot.com/2008/11/on-my-other-perspective.html a&lt;br /&gt;
collaboration with downstreams] at some point in the KDE4.2 cycle when&lt;br /&gt;
distributions release their next stable versions (Spring/Summer 2009).&lt;br /&gt;
 *  Many rendering issues with nVidia cards are fixed.&lt;br /&gt;
&lt;br /&gt;
== Remaining Issues in KDE4 ==&lt;br /&gt;
Some issues still remain in KDE4 which will not be fixed in time for&lt;br /&gt;
KDE4.2. If these are still large issues for some users, KDE3 is still&lt;br /&gt;
available, usable and supported on some distributions.&lt;br /&gt;
&lt;br /&gt;
 *  '''Printer Configuration''' KDE4 uses the Qt4 printer system directly.&lt;br /&gt;
It has not yet been extended to all of the functionality present in the&lt;br /&gt;
KDE3 print system.&lt;br /&gt;
 *  '''Systray rendering''' Some icons still do not render correctly on some&lt;br /&gt;
configurations. Updates to freedesktop.org systems, or porting those icons&lt;br /&gt;
to plasmoids will see this situation improve. Additionally, KDE supports a new window manager hint which will improve the situation when new versions of Qt and Gtk are released and distributed.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
== Applications ==&lt;br /&gt;
All applications in the KDE official modules have seen many improvements,&lt;br /&gt;
bugfixes and new features. As in the case of KDE4.1, some applications familiar to users of KDE3.5 are not yet ported to KDE4 and some of these follow their own release schedules. Users should note however, that KDE3 versions of these applications do still work flawlessly alongside KDE4 applications and in a KDE4 workspace.&lt;br /&gt;
&lt;br /&gt;
Since the release of KDE 4.1, [http://amarok.kde.org/en/releases/2.0.1.1 Amarok 2.0.1.1] has been released. Other notable and popular applications are under continuous development, and some of them may be released near the time of KDE4.2 release including Digikam and [http://www.koffice.org/announcements/announce-2.0beta5.php KOffice].&lt;br /&gt;
&lt;br /&gt;
KDevelop is still under heavy development, and will not be ready for a&lt;br /&gt;
release in time for KDE4.2. However, a compromise of releasing a beta of&lt;br /&gt;
KDevelop with KDE4.2 has been reached. KDevelop is expected to see a full&lt;br /&gt;
KDE4 release several months after release of KDE4.2.&lt;br /&gt;
&lt;br /&gt;
Other applications such as Konversation, Kaffeine and K3B do not yet have&lt;br /&gt;
KDE4 versions, but work is continuing on bringing them to KDE4.&lt;br /&gt;
&lt;br /&gt;
'''Projects with a different release schedule than KDE4.'''&lt;br /&gt;
&lt;br /&gt;
Project (Current Version - Final Release Date)&lt;br /&gt;
* [http://www.digikam.org/ digiKam] ([http://www.digikam.org/drupal/node/420 Beta 8] - Early 2009)&lt;br /&gt;
[http://www.digikam.org/drupal/about/releaseplan Digikam 0.10.0 Release Plan]&lt;br /&gt;
&lt;br /&gt;
* [http://www.krusader.org Krusader 2.0] ([http://www.krusader.org/text.php?t=krusader-2.0.0-beta2.notes Beta 2] - Unknown)&lt;br /&gt;
Krusader is an advanced twin panel (commander style) file manager.&lt;br /&gt;
&lt;br /&gt;
* [http://www.koffice.org/ KOffice 2.0] ([http://www.koffice.org/announcements/announce-2.0beta5.php Beta 5] - Spring 2009)&lt;br /&gt;
Binaries are available for all three major platforms.  The developers are looking for volunteers to help put together screenshots for [http://www.kdedevelopers.org/node/3545 visual changelogs].&lt;br /&gt;
&lt;br /&gt;
* [http://k3b.plainblack.com/ k3b 1.1]  (Pre-Alpha - Unknown)&lt;br /&gt;
An alpha release of 1.1 (the KDE 4 port) is forthcoming, but not yet released.&lt;br /&gt;
&lt;br /&gt;
* [http://kaffeine.kde.org/ Kaffeine] (Pre-Alpha - Unknown) &lt;br /&gt;
The KDE4 port is under way but requires major rewriting to support Phonon and other new features. No releases scheduled at this time.&lt;br /&gt;
&lt;br /&gt;
* [http://kplayer.sourceforge.net/ KPlayer 0.7] (Released January 11 2008) &lt;br /&gt;
KPlayer 0.7 is the KDE4 port of KPlayer that was released on the same day as KDE 4.0. KPlayer 0.7.1 is planned for fall 2008 and will include a KDE4 port of its multimedia library which still used KDE3 compatibility layer in version 0.7.0.&lt;br /&gt;
&lt;br /&gt;
* [http://basket.kde.org/ Basket] (1.0.3.1 (KDE3) - Released June 30 2008)&lt;br /&gt;
The KDE4 port of Basket is currently in a pre-alpha state.&lt;br /&gt;
&lt;br /&gt;
* [http://konversation.kde.org/ Konversation 2.0] (Pre-Alpha - Unknown)&lt;br /&gt;
The KDE4 port will not be released to sometime after version 1.1, which will be the last KDE3 release.&lt;br /&gt;
&lt;br /&gt;
*There are also several [http://games.kde.org/ KDE games] that do not have a KDE 4 port yet. Among these are kasteroids, kfouleggs.&lt;br /&gt;
&lt;br /&gt;
* [http://www.kdevelop.org/ KDevelop 4.0]  (Pre-Alpha - Unknown)&lt;br /&gt;
An alpha release of 4.0 (a rewritten from scratch version)  [http://www.kdevelop.org/mediawiki/index.php/KDevelop_4/KDev3_KDev4_comparison_table is forthcoming], but not yet released. Normal users should continue to use the [http://www.kdevelop.org/index.html?filename=3.5/download.html stable KDevelop 3.5.2] version for the time being.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/Meetings/Osnabrueck_7</id>
		<title>Projects/PIM/Meetings/Osnabrueck 7</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/Meetings/Osnabrueck_7"/>
				<updated>2009-01-09T21:36:04Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Agenda */ Add note to update datastore.cpp&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Annual KDE PIM meeting in Osnabrueck 2009.&lt;br /&gt;
&lt;br /&gt;
Date: Jan 09th (friday) to Jan 11th (sunday).&lt;br /&gt;
&lt;br /&gt;
== Location/Travel ==&lt;br /&gt;
&lt;br /&gt;
Location: &amp;lt;b&amp;gt;NEW&amp;lt;/b&amp;gt; office of Intevation GmbH (Neuer Graben 17, 49074 Osnabrück, Germany), http://www.intevation.de/travel.en.html&lt;br /&gt;
&lt;br /&gt;
Hotel: http://www.dom-hotel-osnabrueck.de/index_en.php (as usual)&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
Unscheduled topics and corresponding responsible persons (feel free to remove yourself there if you don't like what I assigned to you ;-) ):&lt;br /&gt;
* Porting strategy for KABC/KCal based resources and applications (Kevin, Tobias)&lt;br /&gt;
** Designing an Akonadi-based replacement for KABC::StdAddressbook&lt;br /&gt;
* Needed Akonadi developments for 4.3 (Volker)&lt;br /&gt;
** Free/Busy support (Brad, Will)&lt;br /&gt;
** Consideration of moving mail output (i.e. kdepim/mailtransport functionality) to Akonadi (Brad, Will also curious)&lt;br /&gt;
* Review Akonadi conflict detection (Stephen, Tobias, Volker)&lt;br /&gt;
** detecting backend induced conflicts on the resource side&lt;br /&gt;
** how to handle conflicts/GUI presentation&lt;br /&gt;
* Re-Redesigned KMime ContentStrategy stuff using KJobs (still to do) (Stephen)&lt;br /&gt;
* How to use Akonadi in your application/best practices/api dox review (Stephen)&lt;br /&gt;
* Review Akonadi extensions currently developed in playground/pim (Stephen, Volker)&lt;br /&gt;
* Review the distlist situation (Kevin, Tobias)&lt;br /&gt;
* Bugzilla organization for Akonadi/KDE PIM (all)&lt;br /&gt;
* Review of datastore.cpp in akonadi including possible refactoring and collectionMoved patch (Stephen, Volker)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Put topics you would like to discuss here&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tentative schedule:&lt;br /&gt;
&lt;br /&gt;
=== Friday ===&lt;br /&gt;
&lt;br /&gt;
All day: arrival&lt;br /&gt;
&lt;br /&gt;
* Forcing Ingo to finally commit his Akonadi work from the last meeting (Volker) ;-)&lt;br /&gt;
* Evaluating the Akonadi migration in 4.2 or: the very last chance to stop Akonadi in 4.2 (Kevin, Volker)&lt;br /&gt;
* KDE PIM runtime/apps split (Tom)&lt;br /&gt;
* Discuss the fd.o situation (Cornelius)&lt;br /&gt;
* Review Akonadi change notification (Stephen, Volker, Kevin, Tobias)&lt;br /&gt;
&lt;br /&gt;
19:00 - 22:00 Dinner at &amp;quot;Chows Garten&amp;quot;, Große Hamkenstr. 19&lt;br /&gt;
&lt;br /&gt;
=== Saturday ===&lt;br /&gt;
&lt;br /&gt;
08:00 Breakfast&lt;br /&gt;
&lt;br /&gt;
* Presentation of the Akonadi on N810 project (Karim, Cédric, Romain, Audrey, Guillermo)&lt;br /&gt;
* KMail porting strategy (Thomas, Till, Ingo, Volker, Stephen)&lt;br /&gt;
* Static code analysis in KDE PIM (Bertjan)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
19:00 Dinner at &amp;quot;Rampendahl&amp;quot;, Hasestr. 35, http://www.rampendahl.de&lt;br /&gt;
&lt;br /&gt;
=== Sunday ===&lt;br /&gt;
&lt;br /&gt;
08:00 Breakfast&lt;br /&gt;
&lt;br /&gt;
All afternoon: departure&lt;br /&gt;
&lt;br /&gt;
== BOFs ==&lt;br /&gt;
&lt;br /&gt;
=== N810 ===&lt;br /&gt;
* David&lt;br /&gt;
* Thorsten&lt;br /&gt;
&lt;br /&gt;
=== Static call graphs with egypt ===&lt;br /&gt;
* Thorsten&lt;br /&gt;
&lt;br /&gt;
== Meeting Notes ==&lt;br /&gt;
&lt;br /&gt;
* KResource -&amp;gt; Akonadi migration&lt;br /&gt;
** disable the creation of KRes client side bridges, but leave the migration enabled as such.&lt;br /&gt;
* Apps/Runtime split:&lt;br /&gt;
** we will create a runtime subdirectory in kdepim containing runtime dependencies (akoandi agents, plugins, etc) which should be buildable separately, cf. kdebase&lt;br /&gt;
* Akonadi MySQL dependency&lt;br /&gt;
** Distributions need to put MySQL on KDE based install/liveCDs. It's size means there is less room for other KDE apps and other distro tools and dependencies.&lt;br /&gt;
** The alternatives MySQL embedded and SQLite were rejected at proof of concept stage for different reasons: MySQL embedded does not handle transactions (doesn't have innoDB backend, which is the only one that supports real transactions), and is not as well supported by upstream for example the 64bit version is not well supported. SQLite is not fast enough for large amounts of data.&lt;br /&gt;
** It might be possible to use Akonadi server with SQLite for example, the default will remain MySQL, but distros will possibly be able to use SQLite for CDs.&lt;br /&gt;
** SQLite specific code still exists in &amp;lt;tt&amp;gt;kdesupport/akonadi/server&amp;lt;/tt&amp;gt;, but needs to be updated as the schema may have changed since switching to use MySQL exclusively.&lt;br /&gt;
* Review Akonadi change notification:&lt;br /&gt;
** Adding ItemMoved and CollectionMoved and adding parent collection to {Collection,Item}Removed in a BC way.&lt;br /&gt;
** Adding parent Collections to the slots itemChanged and collectionChanged was also discussed. The problem is that using a full path in a filesystem as a remoteId can be problematic if a collection higher in the heirarchy is renamed or moved. As a resolution, Items and Collections will both get a QStringList of ancestor collections and only use the filename or dir name as a remoteId instead of a full path. This is only of interest to Resources. Even some resources (eg with only one collection) will ignore it and use a full path.&lt;br /&gt;
** If this gets built into Item and Collection, then this means that retrieveItem can remain BC and get this functionality anyway.&lt;br /&gt;
** CollectionSync and ItemSync: Currently compare remoteIds. Will possibly need to be changed to also compare the heirarchy also. Remove assumption that no longer hold like remoteIds being unique over whole collection tree.&lt;br /&gt;
** Ordering will remain in an attribute, and not be built into Collection. Ordering remains an application side configuration issue. Some aspects of this remain an open issue, such as ordering by applications before a remoteId gets generated for an item.&lt;br /&gt;
** Adding ResourceBase::clearCache() to allow the resources to remove any previous cache content in case there configuration changed in a drastic ways. While this should mostly work currently already with the Item/CollectionSync stuff, there might be tricky corner cases if some remoteIds are reused.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Please complete by adding your notes!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:PIM]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/Meetings/Osnabrueck_7</id>
		<title>Projects/PIM/Meetings/Osnabrueck 7</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/Meetings/Osnabrueck_7"/>
				<updated>2009-01-09T21:26:14Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Add some notes about MySQL dependency&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Annual KDE PIM meeting in Osnabrueck 2009.&lt;br /&gt;
&lt;br /&gt;
Date: Jan 09th (friday) to Jan 11th (sunday).&lt;br /&gt;
&lt;br /&gt;
== Location/Travel ==&lt;br /&gt;
&lt;br /&gt;
Location: &amp;lt;b&amp;gt;NEW&amp;lt;/b&amp;gt; office of Intevation GmbH (Neuer Graben 17, 49074 Osnabrück, Germany), http://www.intevation.de/travel.en.html&lt;br /&gt;
&lt;br /&gt;
Hotel: http://www.dom-hotel-osnabrueck.de/index_en.php (as usual)&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
Unscheduled topics and corresponding responsible persons (feel free to remove yourself there if you don't like what I assigned to you ;-) ):&lt;br /&gt;
* Porting strategy for KABC/KCal based resources and applications (Kevin, Tobias)&lt;br /&gt;
** Designing an Akonadi-based replacement for KABC::StdAddressbook&lt;br /&gt;
* Needed Akonadi developments for 4.3 (Volker)&lt;br /&gt;
** Free/Busy support (Brad, Will)&lt;br /&gt;
** Consideration of moving mail output (i.e. kdepim/mailtransport functionality) to Akonadi (Brad, Will also curious)&lt;br /&gt;
* Review Akonadi conflict detection (Stephen, Tobias, Volker)&lt;br /&gt;
** detecting backend induced conflicts on the resource side&lt;br /&gt;
** how to handle conflicts/GUI presentation&lt;br /&gt;
* Re-Redesigned KMime ContentStrategy stuff using KJobs (still to do) (Stephen)&lt;br /&gt;
* How to use Akonadi in your application/best practices/api dox review (Stephen)&lt;br /&gt;
* Review Akonadi extensions currently developed in playground/pim (Stephen, Volker)&lt;br /&gt;
* Review the distlist situation (Kevin, Tobias)&lt;br /&gt;
* Bugzilla organization for Akonadi/KDE PIM (all)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Put topics you would like to discuss here&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tentative schedule:&lt;br /&gt;
&lt;br /&gt;
=== Friday ===&lt;br /&gt;
&lt;br /&gt;
All day: arrival&lt;br /&gt;
&lt;br /&gt;
* Forcing Ingo to finally commit his Akonadi work from the last meeting (Volker) ;-)&lt;br /&gt;
* Evaluating the Akonadi migration in 4.2 or: the very last chance to stop Akonadi in 4.2 (Kevin, Volker)&lt;br /&gt;
* KDE PIM runtime/apps split (Tom)&lt;br /&gt;
* Discuss the fd.o situation (Cornelius)&lt;br /&gt;
* Review Akonadi change notification (Stephen, Volker, Kevin, Tobias)&lt;br /&gt;
&lt;br /&gt;
19:00 - 22:00 Dinner at &amp;quot;Chows Garten&amp;quot;, Große Hamkenstr. 19&lt;br /&gt;
&lt;br /&gt;
=== Saturday ===&lt;br /&gt;
&lt;br /&gt;
08:00 Breakfast&lt;br /&gt;
&lt;br /&gt;
* Presentation of the Akonadi on N810 project (Karim, Cédric, Romain, Audrey, Guillermo)&lt;br /&gt;
* KMail porting strategy (Thomas, Till, Ingo, Volker, Stephen)&lt;br /&gt;
* Static code analysis in KDE PIM (Bertjan)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
19:00 Dinner at &amp;quot;Rampendahl&amp;quot;, Hasestr. 35, http://www.rampendahl.de&lt;br /&gt;
&lt;br /&gt;
=== Sunday ===&lt;br /&gt;
&lt;br /&gt;
08:00 Breakfast&lt;br /&gt;
&lt;br /&gt;
All afternoon: departure&lt;br /&gt;
&lt;br /&gt;
== BOFs ==&lt;br /&gt;
&lt;br /&gt;
=== N810 ===&lt;br /&gt;
* David&lt;br /&gt;
* Thorsten&lt;br /&gt;
&lt;br /&gt;
=== Static call graphs with egypt ===&lt;br /&gt;
* Thorsten&lt;br /&gt;
&lt;br /&gt;
== Meeting Notes ==&lt;br /&gt;
&lt;br /&gt;
* KResource -&amp;gt; Akonadi migration&lt;br /&gt;
** disable the creation of KRes client side bridges, but leave the migration enabled as such.&lt;br /&gt;
* Apps/Runtime split:&lt;br /&gt;
** we will create a runtime subdirectory in kdepim containing runtime dependencies (akoandi agents, plugins, etc) which should be buildable separately, cf. kdebase&lt;br /&gt;
* Akonadi MySQL dependency&lt;br /&gt;
** Distributions need to put MySQL on KDE based install/liveCDs. It's size means there is less room for other KDE apps and other distro tools and dependencies.&lt;br /&gt;
** The alternatives MySQL embedded and SQLite were rejected at proof of concept stage for different reasons: MySQL embedded does not handle transactions (doesn't have innoDB backend, which is the only one that supports real transactions), and is not as well supported by upstream for example the 64bit version is not well supported. SQLite is not fast enough for large amounts of data.&lt;br /&gt;
** It might be possible to use Akonadi server with SQLite for example, the default will remain MySQL, but distros will possibly be able to use SQLite for CDs.&lt;br /&gt;
** SQLite specific code still exists in &amp;lt;tt&amp;gt;kdesupport/akonadi/server&amp;lt;/tt&amp;gt;, but needs to be updated as the schema may have changed since switching to use MySQL exclusively.&lt;br /&gt;
* Review Akonadi change notification:&lt;br /&gt;
** Adding ItemMoved and CollectionMoved and adding parent collection to {Collection,Item}Removed in a BC way.&lt;br /&gt;
** Adding parent Collections to the slots itemChanged and collectionChanged was also discussed. The problem is that using a full path in a filesystem as a remoteId can be problematic if a collection higher in the heirarchy is renamed or moved. As a resolution, Items and Collections will both get a QStringList of ancestor collections and only use the filename or dir name as a remoteId instead of a full path. This is only of interest to Resources. Even some resources (eg with only one collection) will ignore it and use a full path.&lt;br /&gt;
** If this gets built into Item and Collection, then this means that retrieveItem can remain BC and get this functionality anyway.&lt;br /&gt;
** CollectionSync and ItemSync: Currently compare remoteIds. Will possibly need to be changed to also compare the heirarchy also. Remove assumption that no longer hold like remoteIds being unique over whole collection tree.&lt;br /&gt;
** Ordering will remain in an attribute, and not be built into Collection. Ordering remains an application side configuration issue. Some aspects of this remain an open issue, such as ordering by applications before a remoteId gets generated for an item.&lt;br /&gt;
** Adding ResourceBase::clearCache() to allow the resources to remove any previous cache content in case there configuration changed in a drastic ways. While this should mostly work currently already with the Item/CollectionSync stuff, there might be tricky corner cases if some remoteIds are reused.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Please complete by adding your notes!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:PIM]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/Meetings/Osnabrueck_7</id>
		<title>Projects/PIM/Meetings/Osnabrueck 7</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/Meetings/Osnabrueck_7"/>
				<updated>2009-01-09T17:41:41Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Agenda */ Add some resolution to some items&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Annual KDE PIM meeting in Osnabrueck 2009.&lt;br /&gt;
&lt;br /&gt;
Date: Jan 09th (friday) to Jan 11th (sunday).&lt;br /&gt;
&lt;br /&gt;
== Location/Travel ==&lt;br /&gt;
&lt;br /&gt;
Location: &amp;lt;b&amp;gt;NEW&amp;lt;/b&amp;gt; office of Intevation GmbH (Neuer Graben 17, 49074 Osnabrück, Germany), http://www.intevation.de/travel.en.html&lt;br /&gt;
&lt;br /&gt;
Hotel: http://www.dom-hotel-osnabrueck.de/index_en.php (as usual)&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
Unscheduled topics and corresponding responsible persons (feel free to remove yourself there if you don't like what I assigned to you ;-) ):&lt;br /&gt;
* Porting strategy for KABC/KCal based resources and applications (Kevin, Tobias)&lt;br /&gt;
** Designing an Akonadi-based replacement for KABC::StdAddressbook&lt;br /&gt;
* Needed Akonadi developments for 4.3 (Volker)&lt;br /&gt;
** Free/Busy support (Brad)&lt;br /&gt;
** Consideration of moving mail output (i.e. kdepim/mailtransport functionality) to Akonadi (Brad)&lt;br /&gt;
* Review Akonadi change notification (Stephen, Volker, Kevin, Tobias)&lt;br /&gt;
** Adding ItemMoved and CollectionMoved and adding parent collection to {Collection,Item}Removed in a BC way.&lt;br /&gt;
** Adding parent Collections to the slots itemChanged and collectionChanged was also discussed. The problem is that using a full path in a filesystem as a remoteId can be problematic if a collection higher in the heirarchy is renamed or moved. As a resolution, Items and Collections will both get a QStringList of ancestor collections and only use the filename or dir name as a remoteId instead of a full path. This is only of interest to Resources. Even some resources (eg with only one collection) will ignore it and use a full path.&lt;br /&gt;
** If this gets built into Item and Collection, then this means that retrieveItem can remain BC and get this functionality anyway.&lt;br /&gt;
** CollectionSync and ItemSync: Currently compare remoteIds. Will possibly need to be changed to also compare the heirarchy also. Remove assumption that no longer hold like remoteIds being unique over whole collection tree.&lt;br /&gt;
** Ordering will remain in an attribute, and not be built into Collection. Ordering remains an application side configuration issue. Some aspects of this remain an open issue, such as ordering by applications before a remoteId gets generated for an item.&lt;br /&gt;
* Review Akonadi conflict detection (Stephen, Tobias, Volker)&lt;br /&gt;
** detecting backend induced conflicts on the resource side&lt;br /&gt;
** how to handle conflicts/GUI presentation&lt;br /&gt;
* Re-Redesigned KMime ContentStrategy stuff using KJobs (still to do) (Stephen)&lt;br /&gt;
* How to use Akonadi in your application/best practices/api dox review (Stephen)&lt;br /&gt;
* Review Akonadi extensions currently developed in playground/pim (Stephen, Volker)&lt;br /&gt;
* Review the distlist situation (Kevin, Tobias)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Put topics you would like to discuss here&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tentative schedule:&lt;br /&gt;
&lt;br /&gt;
=== Friday ===&lt;br /&gt;
&lt;br /&gt;
All day: arrival&lt;br /&gt;
&lt;br /&gt;
* Forcing Ingo to finally commit his Akonadi work from the last meeting (Volker) ;-)&lt;br /&gt;
* Evaluating the Akonadi migration in 4.2 or: the very last chance to stop Akonadi in 4.2 (Kevin, Volker)&lt;br /&gt;
* KDE PIM runtime/apps split (Tom)&lt;br /&gt;
* Discuss the fd.o situation (Cornelius)&lt;br /&gt;
&lt;br /&gt;
19:00 Dinner at &amp;quot;Chows Garten&amp;quot;, Große Hamkenstr. 19&lt;br /&gt;
&lt;br /&gt;
=== Saturday ===&lt;br /&gt;
&lt;br /&gt;
08:00 Breakfast&lt;br /&gt;
&lt;br /&gt;
* Presentation of the Akonadi on N810 project (Karim, Cédric, Romain, Audrey, Guillermo)&lt;br /&gt;
* KMail porting strategy (Thomas, Till, Ingo, Volker, Stephen)&lt;br /&gt;
* Static code analysis in KDE PIM (Bertjan)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
19:00 Dinner at &amp;quot;Rampendahl&amp;quot;, Hasestr. 35, http://www.rampendahl.de&lt;br /&gt;
&lt;br /&gt;
=== Sunday ===&lt;br /&gt;
&lt;br /&gt;
08:00 Breakfast&lt;br /&gt;
&lt;br /&gt;
All afternoon: departure&lt;br /&gt;
&lt;br /&gt;
== BOFs ==&lt;br /&gt;
&lt;br /&gt;
=== N810 ===&lt;br /&gt;
* David&lt;br /&gt;
* Thorsten&lt;br /&gt;
&lt;br /&gt;
=== Static call graphs with egypt ===&lt;br /&gt;
* Thorsten&lt;br /&gt;
&lt;br /&gt;
== Meeting Notes ==&lt;br /&gt;
&lt;br /&gt;
* KResource -&amp;gt; Akonadi migration&lt;br /&gt;
** disable the creation of KRes client side bridges, but leave the migration enabled as such.&lt;br /&gt;
* Apps/Runtime split:&lt;br /&gt;
** we will create a runtime subdirectory in kdepim containing runtime dependencies (akoandi agents, plugins, etc) which should be buildable separately, cf. kdebase&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Please complete by adding your notes!&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:PIM]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started</id>
		<title>Getting Started</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started"/>
				<updated>2009-01-05T19:37:58Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Add link to project neon page.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started}}&lt;br /&gt;
{{Box|Getting the Source|&lt;br /&gt;
[[Image:Action_down.svg|right|32px]]&lt;br /&gt;
* [[Getting_Started/Using Project Neon to contribute to KDE|Using Project Neon to contribute to KDE]]&lt;br /&gt;
* [[Getting_Started/Sources/Anonymous SVN|Anonymous SVN Quickstart Guide]]&lt;br /&gt;
* [[Getting_Started/Sources/Using Subversion with KDE|Using Subversion with KDE]] ''A more in depth look at accessing KDE source code with subversion, including the repository layout and working with revisions and patches.''&lt;br /&gt;
* [[Getting_Started/Sources/Snapshots|Daily Snapshots]]&lt;br /&gt;
* [http://websvn.kde.org/ Browse Code Online]&lt;br /&gt;
|100%}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Building KDE|&lt;br /&gt;
[[Image:Action_tool.svg|right|32px]]&lt;br /&gt;
There are different KDE branches. For production use, we recommend using a stable version of KDE.&lt;br /&gt;
* [[Getting_Started/Build/KDE4|KDE 4 (Development version, TRUNK)]]&lt;br /&gt;
* [[Getting_Started/Build/KDE4.x|KDE 4.x (Current 4.x Release or 4.x SVN BRANCH)]]&lt;br /&gt;
* [[Getting_Started/Build/Stable Version|KDE 3.5 (Stable version)]]&lt;br /&gt;
* [[Getting_Started/Build|Other versions and FAQ]] ''Including information for building on non-linux systems''&lt;br /&gt;
|100%}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Setting up the Environment|&lt;br /&gt;
[[Image:Action_pen.svg|right|32px]]&lt;br /&gt;
After KDE has been built, you'll want a good way to launch apps and perform your regular development tasks:&lt;br /&gt;
* [[Getting_Started/Increased Productivity in KDE4 with Scripts|Increased Productivity in KDE4 with Scripts]]&lt;br /&gt;
* [[Getting_Started/Set up KDE 4 for development|Set up KDE 4 for development]]&lt;br /&gt;
|100%}}&lt;br /&gt;
[[Category:Build KDE]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Using_Project_Neon_to_contribute_to_KDE</id>
		<title>Getting Started/Using Project Neon to contribute to KDE</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Using_Project_Neon_to_contribute_to_KDE"/>
				<updated>2009-01-05T19:28:30Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Initial creation of page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://edge.launchpad.net/project-neon Project Neon] is a nightly build of the latest KDE trunk. It is an easy way for new contributors to KDE to get started without having to build the entire KDE-SVN tree and maintain the checkout. Additionally, dependencies are automatically handled and updated. This is suitable for new developers, translators, usability designers, documenters, promoters, bug triagers etc. This process makes the steps detailed on [[Getting_Started/Build/KDE4|this page]], including changes to your [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|.bashrc]] unnecessary.&lt;br /&gt;
&lt;br /&gt;
However, for developers, it may at some point become necessary to build more components from SVN as you become more involved in the project. The [[Getting_Started/Build/KDE4/kdesvn-build|kdesvn-build]] script is an easy way to build all or parts of KDE SVN.&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
Project neon always requires the latest stable Kubuntu release. As of January 2009, that is version 8.10. Previous versions of Kubuntu are not supported. It is possible to port Project Neon to other distributions, though there are currently no maintainers for other distributions working on the project. OpenSuse provides their own weekly build of KDE trunk. Find instructions on how to use it [[Getting Started/Using OpenSuse factory packages for development|here]]. &lt;br /&gt;
&lt;br /&gt;
== Installing Project Neon ==&lt;br /&gt;
&lt;br /&gt;
To use Project Neon, add the following PPA (Personal Package Archive) to your sources.list using your preferred method:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
# Project neon nightly KDE4 build&lt;br /&gt;
deb http://ppa.launchpad.net/project-neon/ubuntu intrepid main&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After that, you can simply install the nightly package of whichever modules you want to work on. The following packages are available:&lt;br /&gt;
&lt;br /&gt;
 kde-nightly-kdebase&lt;br /&gt;
 kde-nightly-kdeplasma-addons&lt;br /&gt;
 kde-nightly-kdepim&lt;br /&gt;
 kde-nightly-kdeedu&lt;br /&gt;
 kde-nightly-kdenetwork&lt;br /&gt;
 kde-nightly-kdeutils&lt;br /&gt;
 kde-nightly-kdegraphics&lt;br /&gt;
 kde-nightly-kdemultimedia&lt;br /&gt;
&lt;br /&gt;
You can install all of the packages or just the ones you are interested in, depending on what you want to use them for. For example if you want to install the latest KDE Workspace (plasma, kwin etc), install the kde-nightly-kdebase package and kde-nightly-kdeplasma-addons package for extra plasmoids.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install kde-nightly-kdebase kde-nightly-kdeplasma-addons&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you are only interested in application development in another module, you can install just the module package.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install kde-nightly-kdepim&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
That command will also install the kdelibs, kdepimlibs and other dependencies too. In your regular (stable) kde session you can then run the nightly version of your chosen application by using the full path from the command line.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
/opt/kde-nightly/bin/kmail&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will correctly use the nightly version of libraries instead of using the stable versions, so no other changes are necessary to your library path etc.&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of using the full path to the executable, you could add the following to your .bashrc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
_STABLE_PATH=$PATH&lt;br /&gt;
function switchtonightly {&lt;br /&gt;
  export PATH=/opt/kde-nightly/bin:$_STABLE_PATH&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function switchtostable {&lt;br /&gt;
  export PATH=$_STABLE_PATH&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will allow you to optionally run unstable applications when you choose to in your session.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
# Runs the stable version of kmail&lt;br /&gt;
kmail&lt;br /&gt;
switchtonightly&lt;br /&gt;
# runs the nightly version of kmail&lt;br /&gt;
kmail&lt;br /&gt;
# runs the nightly version of knode&lt;br /&gt;
knode&lt;br /&gt;
switchtostable&lt;br /&gt;
# runs the stable version of kmail&lt;br /&gt;
kmail&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that settings for applications that you run from project neon do not conflict with your regular application settings and data. &amp;lt;tt&amp;gt;.kde-neon/&amp;lt;/tt&amp;gt; is used instead of &amp;lt;tt&amp;gt;.kde/&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Using Project Neon for development ==&lt;br /&gt;
&lt;br /&gt;
If you are joining one of the development teams in KDE, you will need a real svn checkout in order to contribute your code back to the project and create patches easily.&lt;br /&gt;
&lt;br /&gt;
Some extra tools (neonmake) are provided for this purpose in the package amarok-nightly-tools. The packages come with development headers and debugging symbols built in.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install amarok-nightly-tools&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you are already using a nightly package of the module you want to develop for, you should remove that, and checkout the development version. For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
# Remove the packaged nightly version&lt;br /&gt;
sudo aptitude purge kde-nightly-kdepim&lt;br /&gt;
# Get the dependencies for building kdepim&lt;br /&gt;
sudo apt-get build-deps kde-nightly-kdepim&lt;br /&gt;
cd ~&lt;br /&gt;
# You may choose to do your development in a different folder.&lt;br /&gt;
cd Development&lt;br /&gt;
# Gets the latest version of the kdepim module.&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepim&lt;br /&gt;
# Shortcut provided by Project Neon to make the module&lt;br /&gt;
# and install it to the prefix /opt/kde-nightly/&lt;br /&gt;
neonmake&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that you should usually checkout a module from kde, not an application. Most modules contain libraries shared within the module and which are necessary to build the applications in the module.&lt;br /&gt;
&lt;br /&gt;
Also of note is the neonmake command. This is a shortcut which temporarily sets some environment variables like the LD_LIBRARY_PATH, the install prefix etc, then runs the equivalent of &amp;lt;tt&amp;gt;cmake &amp;amp;&amp;amp; make &amp;amp;&amp;amp; make install&amp;lt;/tt&amp;gt;. It also runs rpath to configure the executable file to use the nightly libraries.&lt;br /&gt;
&lt;br /&gt;
== Using Project Neon for translation ==&lt;br /&gt;
&lt;br /&gt;
The Project Neon nightly packages include English language strings only. Translated packages are not available. However, if you are translating KDE applications, you can install the translations from KDE SVN in your normal workflow.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~&lt;br /&gt;
cd Translations&lt;br /&gt;
# The -N switch checks out only the top level directory from svn.&lt;br /&gt;
svn co -N svn://anonsvn.kde.org/home/kde/trunk/l10n-kde4&lt;br /&gt;
cd l10n-kde4&lt;br /&gt;
# scripts neccessary to build translations.&lt;br /&gt;
svn co scripts&lt;br /&gt;
# Get the german translations&lt;br /&gt;
svn up de&lt;br /&gt;
# Generate the build files for the German language pack&lt;br /&gt;
./scripts/autogen.sh de&lt;br /&gt;
neonmake&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After building the translations it is possible to either change the language in system settings, or run applications in another language using the environment variable KDE_LANG.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
switchtonightly&lt;br /&gt;
KDE_LANG=de kmail&lt;br /&gt;
switchtostable&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Using Project Neon for documentation ==&lt;br /&gt;
&lt;br /&gt;
The Project Neon nightly source packages include the offical KDE User Documentation in English.&lt;br /&gt;
&lt;br /&gt;
TODO: How to build user docs from svn.&lt;br /&gt;
&lt;br /&gt;
== Using Project Neon for promotion ==&lt;br /&gt;
&lt;br /&gt;
If you are creating screenshots or screencasts of the latest version of KDE, project Neon is a simple and fast way of getting a default KDE4 session.&lt;br /&gt;
&lt;br /&gt;
The KDE Promotion team recommends using the default background, theme, icons etc when preparing offical promotional materials (unless the feature you are showing is related to configuring KDE artwork). Project Neon uses the default artwork that comes with KDE4, so it is useful for creating promo materials.&lt;br /&gt;
&lt;br /&gt;
Here is a shortcut to get all available modules from the PPA:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install kde-nightly-kdebase kde-nightly-kdeplasma-addons \&lt;br /&gt;
kde-nightly-kdepim kde-nightly-kdeedu kde-nightly-kdenetwork \&lt;br /&gt;
kde-nightly-kdeutils kde-nightly-kdegraphics kde-nightly-kdemultimedia&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The application [http://ariya.blogspot.com/2008/06/creating-fancy-screenshots-with.html screenie] is provided in Kubuntu 8.10 as &amp;lt;tt&amp;gt;screenie-qt&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install screenie-qt&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Template:UserbaseLink</id>
		<title>Template:UserbaseLink</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Template:UserbaseLink"/>
				<updated>2009-01-05T15:08:08Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: &amp;lt;noinclude&amp;gt; == How to use this template ==  If the userbase page has the same name as the techbase page, simply put &amp;lt;nowiki&amp;gt;{{UserbaseLink}}&amp;lt;/nowiki&amp;gt; in the source of the page.  &amp;lt;/noinclud...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
== How to use this template ==&lt;br /&gt;
&lt;br /&gt;
If the userbase page has the same name as the techbase page, simply put &amp;lt;nowiki&amp;gt;{{UserbaseLink}}&amp;lt;/nowiki&amp;gt; in the source of the page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&amp;lt;includeonly&amp;gt;&lt;br /&gt;
The {{{1|{{PAGENAME}}}}} page on [http://userbase.kde.org/{{{1|{{PAGENAME}}}}} Userbase].&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Steveire/Games_template</id>
		<title>User:Steveire/Games template</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Steveire/Games_template"/>
				<updated>2009-01-05T15:07:12Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Mockup games template&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Arcade Games &lt;br /&gt;
| [[KBounce]] [[KGoldrunner]]  [[KLines]]  [[Kolf]]  [[KSame]]  [[KSpaceduel]]&lt;br /&gt;
|-&lt;br /&gt;
| Card games  &lt;br /&gt;
| [[KPatience]]  [[LsKat]]&lt;br /&gt;
|-&lt;br /&gt;
| Board Games &lt;br /&gt;
|-&lt;br /&gt;
| Card games &lt;br /&gt;
|-&lt;br /&gt;
| Dice Games &lt;br /&gt;
|-&lt;br /&gt;
| Logic Games &lt;br /&gt;
|-&lt;br /&gt;
| Tactic and Strategy &lt;br /&gt;
| [[Katomic]]  [[KBattleship]]  [[KJumpingCube]]  [[KMines]]  [[KNetWalk]]  [[KolorLines]]  [[Konquest]] [[KsirK]]  [[SameGame]]&lt;br /&gt;
|-&lt;br /&gt;
| Toys&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Usability</id>
		<title>Paths/Usability</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Usability"/>
				<updated>2009-01-03T16:47:12Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Add mailing list&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for people who want to become usability designers in KDE.&lt;br /&gt;
&lt;br /&gt;
== Dive in ==&lt;br /&gt;
* [[Tutorials/What is the HIG?]]&lt;br /&gt;
* [[Tutorials/Reviewing KDE apps for the HIG violations]]&lt;br /&gt;
* [[Tutorials/Using qt designer to fix HIG issues]]&lt;br /&gt;
* [[Tutorials/Writing use cases and scenarios]]&lt;br /&gt;
* [[Projects/Usability/HIG/SOU_Workspace/How_to_write_KDE4_Human_Interface_Guidelines]]&lt;br /&gt;
&lt;br /&gt;
== Resources ==&lt;br /&gt;
* {{KDEML|kde-usability}}&lt;br /&gt;
* [[Projects/Usability]]&lt;br /&gt;
* [[Projects/Usability/HIG]]&lt;br /&gt;
* http://www.openusability.org/&lt;br /&gt;
* [[Projects/Usability/Project_User_Research_Template]]&lt;br /&gt;
* Existing User Research Profiles&lt;br /&gt;
** [[Projects/Gwenview/User_Research_Profile]]&lt;br /&gt;
** [[Projects/Kopete/User_Research_Profile]]&lt;br /&gt;
** [[Projects/Okular/User_Research_Profile]]&lt;br /&gt;
* Books (What books?)&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Usability</id>
		<title>Paths/Usability</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Usability"/>
				<updated>2009-01-03T16:45:08Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Initial page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is for people who want to become usability designers in KDE.&lt;br /&gt;
&lt;br /&gt;
== Dive in ==&lt;br /&gt;
* [[Tutorials/What is the HIG?]]&lt;br /&gt;
* [[Tutorials/Reviewing KDE apps for the HIG violations]]&lt;br /&gt;
* [[Tutorials/Using qt designer to fix HIG issues]]&lt;br /&gt;
* [[Tutorials/Writing use cases and scenarios]]&lt;br /&gt;
* [[Projects/Usability/HIG/SOU_Workspace/How_to_write_KDE4_Human_Interface_Guidelines]]&lt;br /&gt;
&lt;br /&gt;
== Resources ==&lt;br /&gt;
* [[Projects/Usability]]&lt;br /&gt;
* [[Projects/Usability/HIG]]&lt;br /&gt;
* http://www.openusability.org/&lt;br /&gt;
* [[Projects/Usability/Project_User_Research_Template]]&lt;br /&gt;
* Existing User Research Profiles&lt;br /&gt;
** [[Projects/Gwenview/User_Research_Profile]]&lt;br /&gt;
** [[Projects/Kopete/User_Research_Profile]]&lt;br /&gt;
** [[Projects/Okular/User_Research_Profile]]&lt;br /&gt;
* Books (What books?)&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Restructuring_techbase_and_userbase</id>
		<title>Projects/Restructuring techbase and userbase</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Restructuring_techbase_and_userbase"/>
				<updated>2009-01-03T15:20:26Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Remove some irrelevant stuff from the irc log.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The story so far:&lt;br /&gt;
&lt;br /&gt;
* http://thread.gmane.org/gmane.comp.kde.devel.core/55248&lt;br /&gt;
&lt;br /&gt;
* [[Projects/Contributor_Paths]]&lt;br /&gt;
&lt;br /&gt;
* part of kde-devel thread starting from dhaumanns mail. http://thread.gmane.org/gmane.comp.kde.devel.general/56132/focus=56136&lt;br /&gt;
&lt;br /&gt;
* IRC discussion:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: I don't have much time, but maybe we can make&lt;br /&gt;
something out of it&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Hey, so currently there's a projects structure in techbase,&lt;br /&gt;
which shows some apps and stuff&lt;br /&gt;
&amp;lt;steveire&amp;gt;  I think it would make more sense to use&lt;br /&gt;
techbase.kde.org/$MODULE or $APP etc. I mentioned it briefly earlier today&lt;br /&gt;
elsewhere:&lt;br /&gt;
http://thread.gmane.org/gmane.comp.kde.devel.pim/23239/focus=23259&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Since we don't have much time, I'll just quickly say what I'm&lt;br /&gt;
going to propose so you know. Modules and apps get top level urls. I don't&lt;br /&gt;
see much need to try to maintain a parent child relationship between pages&lt;br /&gt;
because none really exsits. Parents don't have a list of children and&lt;br /&gt;
children don't have a link to their parent (although I think that can be&lt;br /&gt;
turned on). And I don't think it would be chaos to allow apps and modules&lt;br /&gt;
have top level urls.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: it'll lead to people adding stuff to techbase that&lt;br /&gt;
doesn't belong there I fear.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Also, we should probably think about what MW features we want&lt;br /&gt;
to use and be consistent about it. I mean there's the subpage feature&lt;br /&gt;
(which we're already pretty consistent about) and the categories feature&lt;br /&gt;
(which I don't think we're very constistent about yet.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  that's why we have the rather strict structure for now.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  dhaumann: Like what for example?&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: see wiki.kde.org&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  that's *the* example.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: meanwhile, I do think that e.g. a Plasma toplevel&lt;br /&gt;
item makes sense&lt;br /&gt;
&amp;lt;steveire&amp;gt;  I've never really used it, but I'll have a look. What was put&lt;br /&gt;
there that doesn't belong?&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  it's simply a *mess*&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  :)&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Yes, but also, what is the focus of techbase.kde.org/plasma?&lt;br /&gt;
How to start contributing to it? Writing plasmoids? etc?&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  on techbase aaron was also pretty much involved. Unfortunately&lt;br /&gt;
he's not here right now, but I would like to have his input.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  OK, well maybe I'll cc him too when I email kde-www about this&lt;br /&gt;
stuff.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  in Plasma/* could be all related to plasma. Contributing,&lt;br /&gt;
Tutorials, whatever&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: can you CC me as well?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Yes, sure&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: did you look at userbase already?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  What do you mean look at?&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  how it is organized.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  structure wise?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Ah, yes, well a bit. I'll look a bit more.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  yes. they e.g. have Applications and Applicatins/Desktop&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  but then they link to [[KWin]] etc. so they don't add a 3rd&lt;br /&gt;
level but rather link to a new toplevelitem.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: what I'd still like is to have subpages.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Yeah, I see http://userbase.kde.org/Applications/Graphics and&lt;br /&gt;
then http://userbase.kde.org/Gwenview, apps get a top level.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  i.e. if we go to add [[$your_app]] then all related content to&lt;br /&gt;
this app should be in [[$your_app/*]]&lt;br /&gt;
&amp;lt;steveire&amp;gt;  dhaumann: Yes. There I agree.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  that's something I'd agree with. Maybe the userbase people can&lt;br /&gt;
say something about it?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Hopefully. What I'm really looking for is concensus, and&lt;br /&gt;
definitely not silence.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  yes :-)&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: let's have a look at&lt;br /&gt;
http://techbase.kde.org/index.php?title=Projects&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  what we see here are candidates for toplevel items. in fact,&lt;br /&gt;
maybe all&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  I agree for the apps being toplevel. but for example should KDE&lt;br /&gt;
on Mac have a toplevel item as well?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  http://userbase.kde.org/KJots &amp;lt;&amp;lt; This page {{includes}}&lt;br /&gt;
http://userbase.kde.org/KJots/Tips and it's also {{included}} in Tutorials.&lt;br /&gt;
I think we could do more with that kind of structure.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: about he {{:...} thing, how does it work exactly?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  It works the same way as templates, except the leading : makes&lt;br /&gt;
it use the top level instead of looking in the Template: namespace.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  {{Kjots/Tips}} would try to include {{Template:Kjots/Tips}},&lt;br /&gt;
but the leading : makes it not do that.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: is that maintainable?&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  thinking about having a page that gets its content from lots of&lt;br /&gt;
other pages :)&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  also it means duplication in several places. Is that desirable?&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  or what are the benefits&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  ?&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  I can imagine that it would help to have Plasma/Tutorials +&lt;br /&gt;
Development/Tutorials and then a plasma section.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  is that it?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  userbase/tutorials might be one example which would be reduced&lt;br /&gt;
to a series of {{:APP/Tips}}. I think it's less duplication.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  what I meant is: you find the same content at different places,&lt;br /&gt;
which is duplication. :)&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Right, yes I suppose, but I think you want that in some cases.&lt;br /&gt;
Tutorials would be an index of tips for all apps, but if I go to&lt;br /&gt;
http://en.wikipedia.org/wiki/Special:Search?go=Go&amp;amp;search=KJots, there is&lt;br /&gt;
still a section of tips on that page too.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: e.g. if you search for KJots in the search edit&lt;br /&gt;
field, you will get the results KJots and KJots/Tips, which will then&lt;br /&gt;
display the same.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Hehe, I wrote \[\[KJots\]\] there&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  mh. not really problem maybe&lt;br /&gt;
&amp;lt;steveire&amp;gt;  I don't think it's a problem. We can even &amp;lt;noinclude&amp;gt; a link on&lt;br /&gt;
the tips page back to the app page.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  I'm still not sure whether all this is a good idea :) but I'm&lt;br /&gt;
happy that people show interest&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  maybe we can get more feedback on the mailing list, at least&lt;br /&gt;
that's what i hope&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Yes, sure. I just added a noinclude to&lt;br /&gt;
http://userbase.kde.org/KJots/Tips.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  I'll try to put a summary of sorts together and send an email&lt;br /&gt;
later or tomorrow.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Thanks.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  hm. well, that gives you a message if you are on the page&lt;br /&gt;
directly.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  ok, cool.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  If you're not familiar, &amp;lt;includeonly&amp;gt; is analogous, but in the&lt;br /&gt;
other way.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  I know them&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  What I meant is it gives you a notice now that there is more in&lt;br /&gt;
the KJots page, but no more.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  so it has no other effect wrt maintainability or structure.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  nevermind.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  have to leave :)&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  I'm looking forward to find a good solution :)&lt;br /&gt;
&amp;lt;steveire&amp;gt;  We could &amp;lt;includeonly&amp;gt;[[Category:Tips pages]]&amp;lt;/includeonly&amp;gt; and&lt;br /&gt;
the tips pages would be in that category, but not the pages that&lt;br /&gt;
{{:include}} them&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Cool, later.&lt;br /&gt;
&amp;lt;annew&amp;gt; steveire: I've just come in and read this&lt;br /&gt;
&amp;lt;annew&amp;gt; I was wondering how the include works, so that's helped me, thanks&lt;br /&gt;
&amp;lt;steveire&amp;gt;  annew: Hi, sure no problem.&lt;br /&gt;
&amp;lt;annew&amp;gt; steveire: I think we should try for consistency between userbase&lt;br /&gt;
and techbase&lt;br /&gt;
&amp;lt;annew&amp;gt; so could you keep me informed of discussions and decisions?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Also regarging the kjots icon being too big, I think it should&lt;br /&gt;
only be shown once anyway, and not used as a list item as it is now&lt;br /&gt;
&amp;lt;steveire&amp;gt;  annew: Are you on kde-www?&lt;br /&gt;
&amp;lt;annew&amp;gt; no - do you think I should be?&lt;br /&gt;
&amp;lt;annew&amp;gt; perhaps it makes sense&lt;br /&gt;
&amp;lt;steveire&amp;gt;  I'd like to see it as a place to discuss *base.kde.org.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  I think it makes sense.&lt;br /&gt;
&amp;lt;annew&amp;gt; ok - I'll subscribe tonight&lt;br /&gt;
&amp;lt;steveire&amp;gt;  jucato was involved in setting up userbase too wasn't he?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Hmm, looks like userbase only allows openid, and not 'normal'&lt;br /&gt;
registration.&lt;br /&gt;
&amp;lt;annew&amp;gt; yes - danimo insisted on that&lt;br /&gt;
&amp;lt;annew&amp;gt; it makes creating a test account non-trivial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Restructuring_techbase_and_userbase</id>
		<title>Projects/Restructuring techbase and userbase</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Restructuring_techbase_and_userbase"/>
				<updated>2009-01-03T15:14:11Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Initial creation of page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The story so far:&lt;br /&gt;
&lt;br /&gt;
* http://thread.gmane.org/gmane.comp.kde.devel.core/55248&lt;br /&gt;
&lt;br /&gt;
* [[Projects/Contributor_Paths]]&lt;br /&gt;
&lt;br /&gt;
* part of kde-devel thread starting from dhaumanns mail. http://thread.gmane.org/gmane.comp.kde.devel.general/56132/focus=56136&lt;br /&gt;
&lt;br /&gt;
* IRC discussion:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: I don't have much time, but maybe we can make&lt;br /&gt;
something out of it&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Hey, so currently there's a projects structure in techbase,&lt;br /&gt;
which shows some apps and stuff&lt;br /&gt;
&amp;lt;steveire&amp;gt;  I think it would make more sense to use&lt;br /&gt;
techbase.kde.org/$MODULE or $APP etc. I mentioned it briefly earlier today&lt;br /&gt;
elsewhere:&lt;br /&gt;
http://thread.gmane.org/gmane.comp.kde.devel.pim/23239/focus=23259&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Since we don't have much time, I'll just quickly say what I'm&lt;br /&gt;
going to propose so you know. Modules and apps get top level urls. I don't&lt;br /&gt;
see much need to try to maintain a parent child relationship between pages&lt;br /&gt;
because none really exsits. Parents don't have a list of children and&lt;br /&gt;
children don't have a link to their parent (although I think that can be&lt;br /&gt;
turned on). And I don't think it would be chaos to allow apps and modules&lt;br /&gt;
have top level urls.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: it'll lead to people adding stuff to techbase that&lt;br /&gt;
doesn't belong there I fear.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Also, we should probably think about what MW features we want&lt;br /&gt;
to use and be consistent about it. I mean there's the subpage feature&lt;br /&gt;
(which we're already pretty consistent about) and the categories feature&lt;br /&gt;
(which I don't think we're very constistent about yet.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  that's why we have the rather strict structure for now.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  dhaumann: Like what for example?&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: see wiki.kde.org&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  that's *the* example.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: meanwhile, I do think that e.g. a Plasma toplevel&lt;br /&gt;
item makes sense&lt;br /&gt;
&amp;lt;steveire&amp;gt;  I've never really used it, but I'll have a look. What was put&lt;br /&gt;
there that doesn't belong?&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  it's simply a *mess*&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  :)&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Yes, but also, what is the focus of techbase.kde.org/plasma?&lt;br /&gt;
How to start contributing to it? Writing plasmoids? etc?&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  on techbase aaron was also pretty much involved. Unfortunately&lt;br /&gt;
he's not here right now, but I would like to have his input.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  OK, well maybe I'll cc him too when I email kde-www about this&lt;br /&gt;
stuff.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  in Plasma/* could be all related to plasma. Contributing,&lt;br /&gt;
Tutorials, whatever&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: can you CC me as well?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Yes, sure&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: did you look at userbase already?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  What do you mean look at?&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  how it is organized.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  structure wise?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Ah, yes, well a bit. I'll look a bit more.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  yes. they e.g. have Applications and Applicatins/Desktop&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  but then they link to [[KWin]] etc. so they don't add a 3rd&lt;br /&gt;
level but rather link to a new toplevelitem.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: what I'd still like is to have subpages.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Yeah, I see http://userbase.kde.org/Applications/Graphics and&lt;br /&gt;
then http://userbase.kde.org/Gwenview, apps get a top level.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  i.e. if we go to add [[$your_app]] then all related content to&lt;br /&gt;
this app should be in [[$your_app/*]]&lt;br /&gt;
&amp;lt;steveire&amp;gt;  dhaumann: Yes. There I agree.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  that's something I'd agree with. Maybe the userbase people can&lt;br /&gt;
say something about it?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Hopefully. What I'm really looking for is concensus, and&lt;br /&gt;
definitely not silence.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  yes :-)&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: let's have a look at&lt;br /&gt;
http://techbase.kde.org/index.php?title=Projects&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  what we see here are candidates for toplevel items. in fact,&lt;br /&gt;
maybe all&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  I agree for the apps being toplevel. but for example should KDE&lt;br /&gt;
on Mac have a toplevel item as well?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  http://userbase.kde.org/KJots &amp;lt;&amp;lt; This page {{includes}}&lt;br /&gt;
http://userbase.kde.org/KJots/Tips and it's also {{included}} in Tutorials.&lt;br /&gt;
I think we could do more with that kind of structure. It looks like&lt;br /&gt;
userbase has section links turned off though, which makes editing it a&lt;br /&gt;
problem. Maybe we can get those back on.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  you have to log in, iirc&lt;br /&gt;
&amp;lt;steveire&amp;gt;  dhaumann: Even logged in I don't see them. annew said the same&lt;br /&gt;
thing to me.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  hm ok.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  no idea then&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: about he {{:...} thing, how does it work exactly?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  It works the same way as templates, except the leading : makes&lt;br /&gt;
it use the top level instead of looking in the Template: namespace.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  {{Kjots/Tips}} would try to include {{Template:Kjots/Tips}},&lt;br /&gt;
but the leading : makes it not do that.&lt;br /&gt;
Part    Ingmar has left this channel.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: is that maintainable?&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  thinking about having a page that gets its content from lots of&lt;br /&gt;
other pages :)&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  also it means duplication in several places. Is that desirable?&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  or what are the benefits&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  ?&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  I can imagine that it would help to have Plasma/Tutorials +&lt;br /&gt;
Development/Tutorials and then a plasma section.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  is that it?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  userbase/tutorials might be one example which would be reduced&lt;br /&gt;
to a series of {{:APP/Tips}}. I think it's less duplication.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  what I meant is: you find the same content at different places,&lt;br /&gt;
which is duplication. :)&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Right, yes I suppose, but I think you want that in some cases.&lt;br /&gt;
Tutorials would be an index of tips for all apps, but if I go to&lt;br /&gt;
http://en.wikipedia.org/wiki/Special:Search?go=Go&amp;amp;search=KJots, there is&lt;br /&gt;
still a section of tips on that page too.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  steveire: e.g. if you search for KJots in the search edit&lt;br /&gt;
field, you will get the results KJots and KJots/Tips, which will then&lt;br /&gt;
display the same.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Hehe, I wrote \[\[KJots\]\] there&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  mh. not really problem maybe&lt;br /&gt;
&amp;lt;steveire&amp;gt;  I don't think it's a problem. We can even &amp;lt;noinclude&amp;gt; a link on&lt;br /&gt;
the tips page back to the app page.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  I'm still not sure whether all this is a good idea :) but I'm&lt;br /&gt;
happy that people show interest&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  maybe we can get more feedback on the mailing list, at least&lt;br /&gt;
that's what i hope&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Yes, sure. I just added a noinclude to&lt;br /&gt;
http://userbase.kde.org/KJots/Tips.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  I'll try to put a summary of sorts together and send an email&lt;br /&gt;
later or tomorrow.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Thanks.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  hm. well, that gives you a message if you are on the page&lt;br /&gt;
directly.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  ok, cool.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  If you're not familiar, &amp;lt;includeonly&amp;gt; is analogous, but in the&lt;br /&gt;
other way.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  I know them&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  What I meant is it gives you a notice now that there is more in&lt;br /&gt;
the KJots page, but no more.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  so it has no other effect wrt maintainability or structure.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  nevermind.&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  have to leave :)&lt;br /&gt;
&amp;lt;dhaumann&amp;gt;  I'm looking forward to find a good solution :)&lt;br /&gt;
&amp;lt;steveire&amp;gt;  We could &amp;lt;includeonly&amp;gt;[[Category:Tips pages]]&amp;lt;/includeonly&amp;gt; and&lt;br /&gt;
the tips pages would be in that category, but not the pages that&lt;br /&gt;
{{:include}} them&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Cool, later.&lt;br /&gt;
&amp;lt;annew&amp;gt; steveire: I've just come in and read this&lt;br /&gt;
&amp;lt;annew&amp;gt; I was wondering how the include works, so that's helped me, thanks&lt;br /&gt;
&amp;lt;steveire&amp;gt;  annew: Hi, sure no problem.&lt;br /&gt;
&amp;lt;annew&amp;gt; steveire: I think we should try for consistency between userbase&lt;br /&gt;
and techbase&lt;br /&gt;
&amp;lt;annew&amp;gt; so could you keep me informed of discussions and decisions?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Also regarging the kjots icon being too big, I think it should&lt;br /&gt;
only be shown once anyway, and not used as a list item as it is now&lt;br /&gt;
&amp;lt;steveire&amp;gt;  annew: Are you on kde-www?&lt;br /&gt;
&amp;lt;annew&amp;gt; no - do you think I should be?&lt;br /&gt;
&amp;lt;annew&amp;gt; perhaps it makes sense&lt;br /&gt;
&amp;lt;steveire&amp;gt;  I'd like to see it as a place to discuss *base.kde.org.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  I think it makes sense.&lt;br /&gt;
&amp;lt;annew&amp;gt; ok - I'll subscribe tonight&lt;br /&gt;
&amp;lt;steveire&amp;gt;  jucato was involved in setting up userbase too wasn't he?&lt;br /&gt;
&amp;lt;annew&amp;gt; I'm wondering about those section Edits -&lt;br /&gt;
&amp;lt;annew&amp;gt; I don't think all pages have them&lt;br /&gt;
&amp;lt;annew&amp;gt; I wonder whether there is something in the structure of the page&lt;br /&gt;
that decides that&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Well, for example on http://userbase.kde.org/KJots, There&lt;br /&gt;
should be edit links beside Tips, like there's edit links by all the&lt;br /&gt;
secions here: http://techbase.kde.org/Projects/PIM/KJots&lt;br /&gt;
&amp;lt;annew&amp;gt; steveire: it looks as though it's tied to heading levels&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Oh?&lt;br /&gt;
&amp;lt;annew&amp;gt; which page did you look at when you couldn't see them?  can you&lt;br /&gt;
remember?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  http://userbase.kde.org/KJots&lt;br /&gt;
&amp;lt;annew&amp;gt; I see an [edit] against Features and against Tips&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Really? Maybe it's a user-side configuration issue...&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Yep: http://userbase.kde.org/Special:Preferences&lt;br /&gt;
&amp;lt;annew&amp;gt; strange&lt;br /&gt;
&amp;lt;steveire&amp;gt;  We should check if that's the default for new accounts. Maybe I&lt;br /&gt;
changed it and don't remember&lt;br /&gt;
&amp;lt;annew&amp;gt; I don't know enough about this to check?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  It's probably part of localsettings.php- You probably can't&lt;br /&gt;
check.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Except by creating a new account.&lt;br /&gt;
&amp;lt;annew&amp;gt; do we have to get danimo or tstaerk to do this, or can you?&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Nah, I'll create a test account and see what happens.&lt;br /&gt;
&amp;lt;steveire&amp;gt;  Hmm, looks like userbase only allows openid, and not 'normal'&lt;br /&gt;
registration.&lt;br /&gt;
&amp;lt;annew&amp;gt; yes - danimo insisted on that&lt;br /&gt;
&amp;lt;annew&amp;gt; it makes creating a test account non-trivial&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/Meetings/Osnabrueck_7</id>
		<title>Projects/PIM/Meetings/Osnabrueck 7</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/Meetings/Osnabrueck_7"/>
				<updated>2009-01-02T18:31:34Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Agenda */ Add some stuff.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Annual KDE PIM meeting in Osnabrueck 2009.&lt;br /&gt;
&lt;br /&gt;
Date: Jan 09th (friday) to Jan 11th (sunday).&lt;br /&gt;
&lt;br /&gt;
== Location/Travel ==&lt;br /&gt;
&lt;br /&gt;
Location: &amp;lt;b&amp;gt;NEW&amp;lt;/b&amp;gt; office of Intevation GmbH (Neuer Graben 17, 49074 Osnabrück, Germany), http://www.intevation.de/travel.en.html&lt;br /&gt;
&lt;br /&gt;
Hotel: http://www.dom-hotel-osnabrueck.de/index_en.php (as usual)&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
Unscheduled topics and corresponding responsible persons (feel free to remove yourself there if you don't like what I assigned to you ;-) ):&lt;br /&gt;
* Presentation of the Akonadi on N810 project (Karim, Cédric, Romain, Audrey, Guillermo)&lt;br /&gt;
* Static code analysis in KDE PIM (Bertjan)&lt;br /&gt;
* KDE PIM runtime/apps split (Tom)&lt;br /&gt;
* KMail porting strategy (Thomas, Till, Ingo, Volker, Stephen)&lt;br /&gt;
* Forcing Ingo to finally commit his Akonadi work from the last meeting (Volker) ;-)&lt;br /&gt;
* Evaluating the Akonadi migration in 4.2 or: the very last chance to stop Akonadi in 4.2 (Kevin, Volker)&lt;br /&gt;
* Porting strategy for KABC/KCal based resources and applications (Kevin, Tobias)&lt;br /&gt;
** Designing an Akonadi-based replacement for KABC::StdAddressbook&lt;br /&gt;
* Needed Akonadi developments for 4.3 (Volker)&lt;br /&gt;
* Review Akonadi change notification (Stephen, Volker, Kevin, Tobias)&lt;br /&gt;
** Adding ItemMoved and CollectionMoved and adding parent collection to {Collection,Item}Removed in a BC way.&lt;br /&gt;
* Review Akonadi conflict detection (Stephen, Tobias, Volker)&lt;br /&gt;
** detecting backend induced conflicts on the resource side&lt;br /&gt;
** how to handle conflicts/GUI presentation&lt;br /&gt;
* Re-Redesigned KMime ContentStrategy stuff using KJobs (still to do) (Stephen)&lt;br /&gt;
* How to use akonadi in your application/best practices/api dox review (Stephen)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Put topics you would like to discuss here&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tentative schedule:&lt;br /&gt;
&lt;br /&gt;
=== Friday ===&lt;br /&gt;
&lt;br /&gt;
All day: arrival&lt;br /&gt;
&lt;br /&gt;
20:00 Dinner&lt;br /&gt;
&lt;br /&gt;
=== Saturday ===&lt;br /&gt;
&lt;br /&gt;
08:00 Breakfast&lt;br /&gt;
&lt;br /&gt;
20:00 Dinner&lt;br /&gt;
&lt;br /&gt;
=== Sunday ===&lt;br /&gt;
&lt;br /&gt;
08:00 Breakfast&lt;br /&gt;
&lt;br /&gt;
All afternoon: departure&lt;br /&gt;
&lt;br /&gt;
== Meeting Notes ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;Please complete by adding your notes!&amp;lt;/b&amp;gt;&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Kdepim</id>
		<title>Kdepim</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Kdepim"/>
				<updated>2009-01-02T13:44:41Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Redirecting to Projects/PIM&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#redirect [[Projects/PIM]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Translator</id>
		<title>Paths/Translator</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Translator"/>
				<updated>2008-12-30T16:44:00Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is a guide to new contributors on how to translate for KDE.&lt;br /&gt;
&lt;br /&gt;
===Dive in ===&lt;br /&gt;
* What are .po and .pot files?&lt;br /&gt;
* joining the mailing list for your language.&lt;br /&gt;
* using X-Test&lt;br /&gt;
* Starting a new translation team&lt;br /&gt;
* Using KBabel/Lokalize http://www.kde.org.br/index.php?title=Tutorial_i18n#Traduzindo_os_arquivos_com_KBabel&lt;br /&gt;
&lt;br /&gt;
===Resources===&lt;br /&gt;
* kde-i18n-doc@&lt;br /&gt;
* irc://freenode.net/kde-i18n&lt;br /&gt;
* i18n.kde.org&lt;br /&gt;
*  http://l10n.kde.org/teams-list.php&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Translator</id>
		<title>Paths/Translator</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Translator"/>
				<updated>2008-12-30T16:40:56Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: This page is a guide to new contributors on how to translate for KDE.  ===Dive in === * What are .po and .pot files? * joining the mailing list for your language. * using X-Test * Starting...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is a guide to new contributors on how to translate for KDE.&lt;br /&gt;
&lt;br /&gt;
===Dive in ===&lt;br /&gt;
* What are .po and .pot files?&lt;br /&gt;
* joining the mailing list for your language.&lt;br /&gt;
* using X-Test&lt;br /&gt;
* Starting a new translation team&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Resources===&lt;br /&gt;
* kde-i18n-doc@&lt;br /&gt;
* irc://freenode.net/kde-i18n&lt;br /&gt;
* i18n.kde.org&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Kdepim</id>
		<title>Kdepim</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Kdepim"/>
				<updated>2008-12-30T16:31:57Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Personal information Management suite from the KDE project.&lt;br /&gt;
&lt;br /&gt;
The KDEPIM team develops applications such as Kontact, KMail, KNode, KOrganizer, KAddressbook, Akregator, KJots and others.&lt;br /&gt;
&lt;br /&gt;
To join the team, simply email the {{KDEML|kdepim}} mailing list, and join the irc://freenode.net/kontact irc channel.&lt;br /&gt;
&lt;br /&gt;
== Development ==&lt;br /&gt;
Current development focus as of January 2009 is on the Akonadi service and porting existing applications to Akonadi and KMime and other frameworks in KDE4.&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
(Someone is rewriting kmail docs, right?)&lt;br /&gt;
&lt;br /&gt;
== Artwork ==&lt;br /&gt;
* (How's our icons)&lt;br /&gt;
* Custom email css templates etc&lt;br /&gt;
&lt;br /&gt;
== Resources ==&lt;br /&gt;
&lt;br /&gt;
* http://doc.trolltech.com/4.4/richtext.html - Used for the kmail composer. See also [http://api.kde.org/4.x-api/kdelibs-apidocs/kdeui/html/classKRichTextWidget.html KRichTextWidget].&lt;br /&gt;
* http://doc.trolltech.com/4.4/model-view-programming.html - Used throughout kdepim including kmail tree views etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Relevant RFCs?&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Artist</id>
		<title>Paths/Artist</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Artist"/>
				<updated>2008-12-30T16:24:06Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is a guide to new contributors on how to create artwork for KDE.&lt;br /&gt;
&lt;br /&gt;
===Dive in ===&lt;br /&gt;
* [[Paths/Artist/Creating desktop backgrounds]] - What sizes to make etc?&lt;br /&gt;
* [[Paths/Artist/Creating themes]]&lt;br /&gt;
* [[Paths/Artist/Creating KDE website designs]] - Are there standard css files somewhere?&lt;br /&gt;
* [[Paths/Artist/Creating icons]]&lt;br /&gt;
* [[Paths/Artist/Creating sounds]]&lt;br /&gt;
* [[Paths/Artist/Creating cursors]]&lt;br /&gt;
* [[Paths/Artist/Creating logos]]&lt;br /&gt;
* [[Paths/Artist/Creating plasma themes]]&lt;br /&gt;
* [[Paths/Artist/Submitting your artwork]] - kde-look (available through GHNS I think?), svn (kdeartwork/kdebase?), other?&lt;br /&gt;
* [[Paths/Artist/Naming icons correctly]]&lt;br /&gt;
* [[Paths/Artist/Using scripts to simplify icon management in SVN]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Resources===&lt;br /&gt;
* {{KDEML|kde-artists}}&lt;br /&gt;
* IRC: oxygen/kde-artists&lt;br /&gt;
* Oxygen palette?&lt;br /&gt;
* Useful inkscape tutorials?&lt;br /&gt;
* icon naming standard&lt;br /&gt;
* xdg mailing list&lt;br /&gt;
* etc?&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Artist</id>
		<title>Paths/Artist</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Artist"/>
				<updated>2008-12-30T16:21:23Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: This page is a guide to new contributors on how to create artwork for KDE.  ===Dive in === * Paths/Artist/Creating desktop backgrounds * Paths/Artist/Creating themes * [[Paths/Arti...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is a guide to new contributors on how to create artwork for KDE.&lt;br /&gt;
&lt;br /&gt;
===Dive in ===&lt;br /&gt;
* [[Paths/Artist/Creating desktop backgrounds]]&lt;br /&gt;
* [[Paths/Artist/Creating themes]]&lt;br /&gt;
* [[Paths/Artist/Creating KDE website designs]]&lt;br /&gt;
* [[Paths/Artist/Creating icons]]&lt;br /&gt;
* [[Paths/Artist/Creating sounds]]&lt;br /&gt;
* [[Paths/Artist/Creating cursors]]&lt;br /&gt;
* [[Paths/Artist/Creating logos]]&lt;br /&gt;
* [[Paths/Artist/Creating plasma themes]]&lt;br /&gt;
* [[Paths/Artist/Putting your art on kde-look]]&lt;br /&gt;
* [[Paths/Artist/Finalizing icon SVGZ files]]&lt;br /&gt;
* [[Paths/Artist/Using scripts to simplify icon management in SVN]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Resources===&lt;br /&gt;
* {{KDEML|kde-artists}}&lt;br /&gt;
* IRC: oxygen/kde-artists&lt;br /&gt;
* Oxygen palette?&lt;br /&gt;
* Useful inkscape tutorials?&lt;br /&gt;
* icon naming standard&lt;br /&gt;
* xdg mailing list&lt;br /&gt;
* etc?&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Developer/Development_tools_and_tips</id>
		<title>Paths/Developer/Development tools and tips</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Developer/Development_tools_and_tips"/>
				<updated>2008-12-30T16:10:49Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: == Tools == These should be guides on how to get started with the tools. * Qt Assistant. Run &amp;lt;tt&amp;gt;assistant&amp;lt;/tt&amp;gt; from the command line. * [[Development/Tutorials/Debugging/Debugging_with_GD...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Tools ==&lt;br /&gt;
These should be guides on how to get started with the tools.&lt;br /&gt;
* Qt Assistant. Run &amp;lt;tt&amp;gt;assistant&amp;lt;/tt&amp;gt; from the command line.&lt;br /&gt;
* [[Development/Tutorials/Debugging/Debugging_with_GDB|GDB]].&lt;br /&gt;
* [[Development/Tools/Valgrind]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Tips ==&lt;br /&gt;
* Use konqueror shortcuts to navigate to qt and kde classes. For example, type &amp;lt;tt&amp;gt;qt:qtextedit&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;kde:kdialog&amp;lt;/tt&amp;gt; into konquerors address bar.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Kdepim</id>
		<title>Kdepim</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Kdepim"/>
				<updated>2008-12-30T16:02:38Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Add some resources&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Personal information Management suite from the KDE project.&lt;br /&gt;
&lt;br /&gt;
The KDEPIM team develops applications such as Kontact, KMail, KNode, KOrganizer, KAddressbook, Akregator, KJots and others.&lt;br /&gt;
&lt;br /&gt;
To join the team, simply email the {{KDEML|kdepim}} mailing list, and join the irc://freenode.net/kontact irc channel.&lt;br /&gt;
&lt;br /&gt;
Current development focus as of January 2009 is on the Akonadi service and porting existing applications to Akonadi and KMime and other frameworks in KDE4.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Resources ===&lt;br /&gt;
&lt;br /&gt;
* http://doc.trolltech.com/4.4/richtext.html - Used for the kmail composer. See also [http://api.kde.org/4.x-api/kdelibs-apidocs/kdeui/html/classKRichTextWidget.html KRichTextWidget].&lt;br /&gt;
* http://doc.trolltech.com/4.4/model-view-programming.html - Used throughout kdepim including kmail tree views etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Relevant RFCs?&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Developer/Tour_of_Qt_and_KDE_frameworks</id>
		<title>Paths/Developer/Tour of Qt and KDE frameworks</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Developer/Tour_of_Qt_and_KDE_frameworks"/>
				<updated>2008-12-30T15:57:59Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A knowledge of some of the Qt framework is necessary to understand the KDE framework and design.&lt;br /&gt;
&lt;br /&gt;
Start by exploring the 'Core features' section in the documentation.&lt;br /&gt;
http://doc.trolltech.com/4.4/ and the associated [http://doc.trolltech.com/4.4/examples.html Examples].&lt;br /&gt;
&lt;br /&gt;
It is important to note that some of the features of Qt are not used in KDE applications.&lt;br /&gt;
&lt;br /&gt;
* The Qt resource system is not used.&lt;br /&gt;
* CMake is used instead of QMake.&lt;br /&gt;
* KDE uses the gettext system for translations instead of the Qt tr() system.&lt;br /&gt;
* Many Qt classes have KDE subclasses or equivalents which should be used instead. (KFileDialog instead of QFileDialog, KTextEdit instead of QTextEdit). The KDE classes provide greater system integration.&lt;br /&gt;
* The KIO system should be used instead of QHttp or QNetworkAccessManager (see also Policies/API_to_Avoid)&lt;br /&gt;
&lt;br /&gt;
[[Development/Architecture/KDE4]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Developer/Tour_of_Qt_and_KDE_frameworks</id>
		<title>Paths/Developer/Tour of Qt and KDE frameworks</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Developer/Tour_of_Qt_and_KDE_frameworks"/>
				<updated>2008-12-30T15:56:30Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: A knowledge of some of the Qt framework is necessary to understand the KDE framework and design.  Start by exploring the 'Core features' section in the documentation. http://doc.trolltech....&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A knowledge of some of the Qt framework is necessary to understand the KDE framework and design.&lt;br /&gt;
&lt;br /&gt;
Start by exploring the 'Core features' section in the documentation.&lt;br /&gt;
http://doc.trolltech.com/4.4/ and the associated [http://doc.trolltech.com/4.4/examples.html Examples].&lt;br /&gt;
&lt;br /&gt;
It is important to note that some of the features of Qt are not used in KDE applications.&lt;br /&gt;
&lt;br /&gt;
* The Qt resource system is not used.&lt;br /&gt;
* CMake is used instead of QMake.&lt;br /&gt;
* KDE uses the gettext system for translations instead of the Qt tr() system.&lt;br /&gt;
* Many Qt classes have KDE subclasses or equivalents which should be used instead. (KFileDialog instead of QFileDialog, KTextEdit instead of QTextEdit). The KDE classes provide greater system integration.&lt;br /&gt;
* The KIO system should be used instead of QHttp or QNetworkAccessManager (see also Policies/API_to_Avoid)&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Developer/Basics_of_KDE_applications</id>
		<title>Paths/Developer/Basics of KDE applications</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Developer/Basics_of_KDE_applications"/>
				<updated>2008-12-30T15:50:18Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Add more links to material&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This series of tutorials introduces the basics of KDE applications in C++. A simple application is built up step by step.&lt;br /&gt;
&lt;br /&gt;
[[Development/Tutorials#Introduction_To_KDE_4_Programming]]&lt;br /&gt;
&lt;br /&gt;
TODO: Find a better way of including these tutorials here.&lt;br /&gt;
&lt;br /&gt;
Also follow the Qt tutorials:&lt;br /&gt;
http://doc.trolltech.com/4.4/tutorials.html&lt;br /&gt;
&lt;br /&gt;
Also read up to Chapter 2 in the book [http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html thinking in c++].&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Developer/How_to_use_CMake</id>
		<title>Paths/Developer/How to use CMake</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Developer/How_to_use_CMake"/>
				<updated>2008-12-30T15:43:49Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: Development/Tutorials/CMake  Development/CMake&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Development/Tutorials/CMake]]&lt;br /&gt;
&lt;br /&gt;
[[Development/CMake]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Kdepim</id>
		<title>Kdepim</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Kdepim"/>
				<updated>2008-12-30T15:40:15Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: Personal information Management suite from the KDE project.  The KDEPIM team develops applications such as Kontact, KMail, KNode, KOrganizer, KAddressbook, Akregator, KJots and others.  To...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Personal information Management suite from the KDE project.&lt;br /&gt;
&lt;br /&gt;
The KDEPIM team develops applications such as Kontact, KMail, KNode, KOrganizer, KAddressbook, Akregator, KJots and others.&lt;br /&gt;
&lt;br /&gt;
To join the team, simply email the {{KDEML|kdepim}} mailing list, and join the irc://freenode.net/kontact irc channel.&lt;br /&gt;
&lt;br /&gt;
Current development focus as of January 2009 is on the Akonadi service and porting existing applications to Akonadi and KMime and other frameworks in KDE4.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Developer/Join_a_team</id>
		<title>Paths/Developer/Join a team</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Developer/Join_a_team"/>
				<updated>2008-12-30T15:35:07Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: One of the main benefits of creating software within the KDE community is having a team of other contributors with goals and achievements to work with. The KDE Software Distribution has ma...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;One of the main benefits of creating software within the KDE community is having a team of other contributors with goals and achievements to work with.&lt;br /&gt;
The KDE Software Distribution has many teams of developers working together to create the applications and workspaces you are familiar with. Joining one of the teams will improve your own skills quicker and make visible improvements in the next KDE release.&lt;br /&gt;
&lt;br /&gt;
[[Build/KDE4]] May be necessary&lt;br /&gt;
&lt;br /&gt;
[[Plasma]]&lt;br /&gt;
&lt;br /&gt;
[[Kdegames]]&lt;br /&gt;
&lt;br /&gt;
[[Kdeedu]]&lt;br /&gt;
&lt;br /&gt;
[[Kdepim]]&lt;br /&gt;
&lt;br /&gt;
[[KOffice]]&lt;br /&gt;
&lt;br /&gt;
[[Amarok]]&lt;br /&gt;
&lt;br /&gt;
[[Kdenetwork]]&lt;br /&gt;
&lt;br /&gt;
[[Kdegraphics]]&lt;br /&gt;
&lt;br /&gt;
[[Kdeutils]]&lt;br /&gt;
&lt;br /&gt;
[[KDevelop]]&lt;br /&gt;
&lt;br /&gt;
Add More?&lt;br /&gt;
&lt;br /&gt;
Others:&lt;br /&gt;
Kile etc?&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Developer/Fixing_bugs_and_sending_patches</id>
		<title>Paths/Developer/Fixing bugs and sending patches</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Developer/Fixing_bugs_and_sending_patches"/>
				<updated>2008-12-30T15:29:36Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: Once you have simple kde4 applications compiling, you know you have your development environment set up correctly and you can start fixing bugs.  The [https://bugs.kde.org/buglist.cgi?keyw...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Once you have simple kde4 applications compiling, you know you have your development environment set up correctly and you can start fixing bugs.&lt;br /&gt;
&lt;br /&gt;
The [https://bugs.kde.org/buglist.cgi?keywords=junior-jobs&amp;amp;bug_status=UNCONFIRMED&amp;amp;bug_status=NEW&amp;amp;bug_status=ASSIGNED&amp;amp;bug_status=REOPENED&amp;amp;cmdtype=doit Junior Jobs] page on bugzilla is a list of bugs that other developers marked as suitable for junior developers to fix. It could make a good starting point for finding bugs to fix. Alternatively you could pick your favorite application and start fixing bugs in it.&lt;br /&gt;
&lt;br /&gt;
The first step is to get the source of the application you need to fix.&lt;br /&gt;
&lt;br /&gt;
TODO:&lt;br /&gt;
 Rest of instructions&lt;br /&gt;
&lt;br /&gt;
[[Contribute/Send_Patches]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Developer/Basics_of_KDE_applications</id>
		<title>Paths/Developer/Basics of KDE applications</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Developer/Basics_of_KDE_applications"/>
				<updated>2008-12-30T15:21:17Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: This series of tutorials introduces the basics of KDE applications in C++. A simple application is built up step by step.  Development/Tutorials#Introduction_To_KDE_4_Programming  TODO...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This series of tutorials introduces the basics of KDE applications in C++. A simple application is built up step by step.&lt;br /&gt;
&lt;br /&gt;
[[Development/Tutorials#Introduction_To_KDE_4_Programming]]&lt;br /&gt;
&lt;br /&gt;
TODO: Find a better way of including these tutorials here.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Contributor_Paths</id>
		<title>Contributor Paths</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Contributor_Paths"/>
				<updated>2008-12-30T15:11:20Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: This page is a starting point for people who want to become KDE contributors.   {{Box|Become a KDE Developer| Start on the Developer path  }}  {{Box|Become a KDE Artist...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is a starting point for people who want to become KDE contributors. &lt;br /&gt;
&lt;br /&gt;
{{Box|Become a KDE Developer|&lt;br /&gt;
Start on the [[Paths/Developer|Developer path]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Become a KDE Artist|&lt;br /&gt;
Start on the [[Paths/Artist|Artist path]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Become a KDE Documenter|&lt;br /&gt;
Start on the [[Paths/Documenter|Documenter path]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Become a KDE Translator|&lt;br /&gt;
Start on the [[Paths/Translator|Translator path]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Join the KDE Bugsquad|&lt;br /&gt;
Start on the [[Paths/Bugsquad|Bugsquad path]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Join the KDE Usability Team|&lt;br /&gt;
Start on the [[Paths/Usability|Usability path]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Join the KDE Promotion Team|&lt;br /&gt;
Start on the [[Paths/Promotion|Promotion path]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Join the KDE Websites Team|&lt;br /&gt;
Start on the [[Paths/Websites|Websites path]] &lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths</id>
		<title>Paths</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths"/>
				<updated>2008-12-30T15:10:48Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Redirecting to Contributor Paths&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Contributor Paths]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Developer</id>
		<title>Paths/Developer</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Developer"/>
				<updated>2008-12-30T15:09:46Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: This page is a guide to new KDE contributors who want to create software.   There are several entry points to this path. If you are not an experienced developer, but are willing to give it...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is a guide to new KDE contributors who want to create software. &lt;br /&gt;
&lt;br /&gt;
There are several entry points to this path. If you are not an experienced&lt;br /&gt;
developer, but are willing to give it a try, start at the top. A more&lt;br /&gt;
experienced developer could start with the introductory Qt or KDE&lt;br /&gt;
tutorials, whereas an experienced C++/Qt developer could skip up to&lt;br /&gt;
learning about the Pillars of KDE.&lt;br /&gt;
&lt;br /&gt;
== Dive in ==&lt;br /&gt;
&lt;br /&gt;
:: '''[[Paths/Developer/Creating plasmoids with scripts|Creating plasmoids with scripts]]''' Learn how to create simple plasmoids with QtScript and python. No compiling required.&lt;br /&gt;
&lt;br /&gt;
:: '''[[Paths/Developer/Creating application plugins and scripts|Creating Application plugins and scripts]]''' Learn to create plugins for Kig, koffice, and other KDE applications. No compiling required.&lt;br /&gt;
&lt;br /&gt;
:: '''[[Paths/Developer/Basics of KDE applications|Basics of KDE applications]]''' Learn to create a simple KDE application in C++. This series introduces several aspects of the KDE framework, so would be useful even for seasoned C++ developers to read.&lt;br /&gt;
&lt;br /&gt;
:: '''[[Paths/Developer/Fixing bugs and sending patches|Fixing bugs and sending patches]]''' Once you understand the basics of how kde applications are built, it's time to start improving it.&lt;br /&gt;
&lt;br /&gt;
:: '''[[Paths/Developer/Join a team|Join a team]]''' Work together with other KDE developers. Join the Plasma team! Or the KDE-PIM team! Or the KDE EDU team! Or the KDE Games team! Or ...&lt;br /&gt;
&lt;br /&gt;
:: '''[[Paths/Developer/How to use CMake|How to use CMake]]''' Get to understand the KDE build system and the layout of the KDE Software Distribution and buildsystem&lt;br /&gt;
&lt;br /&gt;
:: '''[[Paths/Developer/Tour of Qt and KDE frameworks|Tour of Qt and KDE frameworks]]''' For greater integration, KDE uses replacements for some Qt modules and classes.&lt;br /&gt;
&lt;br /&gt;
:: '''[[Paths/Developer/Development tools and tips|Development Tools and tips]]''' Learn to use the tools to create KDE software.&lt;br /&gt;
&lt;br /&gt;
:: '''[[Paths/Developer/Writing translatable code|Writing translatable code]]''' &lt;br /&gt;
&lt;br /&gt;
:: '''[[Paths/Developer/Writing API documentation|Writing API documentation]]'''&lt;br /&gt;
&lt;br /&gt;
:: '''[[Paths/Developer/Writing portable Code|Writing portable Code]]'''&lt;br /&gt;
&lt;br /&gt;
:: '''[[Paths/Developer/Getting your application to the users|Getting your application to the users]]''' Put your application on kde-apps.org, or in the official KDE modules.&lt;br /&gt;
&lt;br /&gt;
:: '''[[Paths/Developer/Design patterns|Design patterns]]''' Understanding some of the patterns found in Qt and KDE.&lt;br /&gt;
&lt;br /&gt;
== Resources ==&lt;br /&gt;
&lt;br /&gt;
This is a list of resources to help you along the way to making valuable&lt;br /&gt;
contributions to KDE. This is not required reading, or mailing lists you&lt;br /&gt;
must subscribe to, but just a list of where to go for help.&lt;br /&gt;
&lt;br /&gt;
=== Links and Documentation ===&lt;br /&gt;
* irc://freenode.net/kde-devel - Chat to kde developers in real time.&lt;br /&gt;
* {{KDEML|kde-devel}} KDE developers mailing list. This list is for development of KDE applications, while {{KDEML|kde-core-devel}} is for development of the KDE libraries.&lt;br /&gt;
* http://doc.trolltech.com/latest/ - Qt API documentation. As all KDE applications use Qt classes, these will become familiar quickly. &lt;br /&gt;
* http://api.kde.org - KDE API documentation. &lt;br /&gt;
* http://www.qtcentre.org/ - Unofficial website of Qt developers. This is not a KDE website, but another resource for relevant tutorials, [http://www.qtcentre.org/forum/ forum] and [http://wiki.qtcentre.org/ wiki]&lt;br /&gt;
* [http://doc.trolltech.com/qq/ Qt Quarterly] - Regularly published usage tips from the Engineers who create Qt.&lt;br /&gt;
* [http://lists.trolltech.com/qt-interest/ Qt interest] - Mailing list for the Qt community. Helpful for Qt related issues.&lt;br /&gt;
* [http://doc.trolltech.com/4.4/demos.html Qt demos] - Simple uses of individual parts of the Qt framework.&lt;br /&gt;
* [http://doc.trolltech.com/4.4/examples.html Qt examples] - Somewhat more complex example uses of Qt.&lt;br /&gt;
&lt;br /&gt;
=== Books ===&lt;br /&gt;
* [http://cartan.cas.suffolk.edu/oopdocbook/opensource/ Design patterns in Qt] Free licenced complete book on Qt&lt;br /&gt;
* [Foundations of Qt development] By KDE contributor Johan Thelin.&lt;br /&gt;
* [http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html Thinking in c++]&lt;br /&gt;
Free licenced book on fundamentals of C++&lt;br /&gt;
* [Design Patterns] Gang of Four book describing many object orientated&lt;br /&gt;
patterns found in qt/kde&lt;br /&gt;
* [Programming pearls] Gain understanding of algorithms&lt;br /&gt;
* [[Development/Further_Information]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Developer/Creating_plasmoids_with_scripts</id>
		<title>Paths/Developer/Creating plasmoids with scripts</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Developer/Creating_plasmoids_with_scripts"/>
				<updated>2008-12-30T15:09:25Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: No tutorials exist here yet. Existing plasma tutorials are c++ focussed.  Plasma  http://chani.wordpress.com/2008/12/29/adventures-in-plasmaland-part-1/   TODO: Write a series of tutor...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;No tutorials exist here yet. Existing plasma tutorials are c++ focussed.&lt;br /&gt;
&lt;br /&gt;
[[Plasma]]&lt;br /&gt;
&lt;br /&gt;
http://chani.wordpress.com/2008/12/29/adventures-in-plasmaland-part-1/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TODO:&lt;br /&gt;
Write a series of tutorials using an interpreted language from a hello world label to something more useful.&lt;br /&gt;
&lt;br /&gt;
Apparently there's a plasma clock written in python somewhere. Turn it into a tutorial&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Paths/Developer/Creating_application_plugins_and_scripts</id>
		<title>Paths/Developer/Creating application plugins and scripts</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Paths/Developer/Creating_application_plugins_and_scripts"/>
				<updated>2008-12-30T15:09:14Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: {{:KOffice/Plugin Tutorials}}  TODO: Get tutorials together for other applications which support scripting. kig etc.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{:KOffice/Plugin Tutorials}}&lt;br /&gt;
&lt;br /&gt;
TODO:&lt;br /&gt;
Get tutorials together for other applications which support scripting. kig etc.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Tutorials</id>
		<title>Development/Tutorials</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Tutorials"/>
				<updated>2008-12-30T15:08:11Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Development/Tutorials}}&lt;br /&gt;
&lt;br /&gt;
Tutorials are the fastest way of finding out what KDE will do for you, and how to do it. Here is a list of currently available tutorials '''for KDE4'''. Material for KDE3 and KDE2 is available on the bottom of this page.&lt;br /&gt;
&lt;br /&gt;
== Introduction To KDE 4 Programming ==&lt;br /&gt;
Are you interested in writing applications with KDE 4? This tutorial series is aimed at those completely new to KDE programming.&lt;br /&gt;
;[[Development/Tutorials/First program|Hello World]]&lt;br /&gt;
:''A preliminary introduction to the very basics of KDE4 programming''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Using KXmlGuiWindow|Creating the Main Window]]&lt;br /&gt;
:''This tutorial shows you the magic of an application's most important thing: The main window.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Using KActions|Using KActions]]&lt;br /&gt;
:''How to add actions to the menus and toolbars.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Saving and loading|Saving and Loading]]&lt;br /&gt;
:''Introduces the KIO library while adding loading and saving support to our application.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/KCmdLineArgs|Command line arguments]]&lt;br /&gt;
:''Adds the ability to specify which file to open from the command line to our text editor.''&lt;br /&gt;
&lt;br /&gt;
== Basics ==&lt;br /&gt;
;[[Development/Tutorials/KDE4 Porting Guide|Porting Your Application]]&lt;br /&gt;
:''Help Porting Applications from Qt3/KDE3 to Qt4/KDE4''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/CMake|Introduction to CMake]]&lt;br /&gt;
:''How to use the CMake build system used by KDE4.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Common Programming Mistakes|Common Programming Mistakes]]&lt;br /&gt;
:''Various common mistakes made while developing Qt and KDE applications and how to avoid them.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Using Qt Designer|Using Qt Designer to build user interfaces]]&lt;br /&gt;
:''How to create UI files with designer, and how to integrate them into a KDE program.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Creating Libraries|Creating Libraries to share code]]&lt;br /&gt;
:''How to add the library to the buildsystem and how to prepare the source code.''&lt;br /&gt;
&lt;br /&gt;
== Testing And Debugging ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Debugging|Debugging your application]]&lt;br /&gt;
:''Tips, tools and techniques to apply when debugging your KDE application''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Unittests|Writing Unittests for Qt4 and KDE4 with QTestLib]] ([http://developer.kde.org/documentation/tutorials/writingunittests/writingunittests.html Original link])&lt;br /&gt;
:''Tutorial by [mailto:bradh@frogmouth.net Brad Hards] that describes how to write unit tests using the QTestLib framework. It is presented as an example based tutorial, and is still under development.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Code_Checking|Semi-automatic ways to detect code errors]]&lt;br /&gt;
:''Techniques you can use to detect errors in KDE code''&lt;br /&gt;
&lt;br /&gt;
== Managing Configuration Data With KConfig ==&lt;br /&gt;
;[[Development/Tutorials/KConfig|Introduction To KConfig]]&lt;br /&gt;
:''An overview of the KConfig classes and how to use them in your application code''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Using KConfig XT|Using KConfig XT]]&lt;br /&gt;
:''Tutorial on how to efficiently use the KConfig XT framework.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Updating KConfig Files|Updating KConfig Files]]&lt;br /&gt;
:''Tutorial on how to write an update script to keep changes in your application's config file format in sync with the user's already existing config file''&lt;br /&gt;
&lt;br /&gt;
== Services: Applications and Plugins ==&lt;br /&gt;
;[[Development/Tutorials/Services/Introduction|Introduction to the Services Framework]]&lt;br /&gt;
:''An overview of the services framework in KDE and what it provides the application developer. Covers the system configuration cache (SyCoCa), the source data files and what the indexed information can be used for.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Services/Traders|Finding Services Using Trader Queries]]&lt;br /&gt;
:''How to find services, such as plugins or mimetypes, that are indexed in the SyCoCa using Trader Query Syntax''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Services/Plugins|Creating and Loading Plugins Using KService]]&lt;br /&gt;
:''Learn how to define custom plugin types, find installed plugins (including 3rd party plugins) and load them in an easy and portable fashion using KService.''&lt;br /&gt;
&lt;br /&gt;
== Localization ==&lt;br /&gt;
See also [[Localization|Localization portal]].&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Localization/Unicode|Introduction To Unicode]]&lt;br /&gt;
:''An introduction to what Unicode is as well as how to handle Unicode data in KDE applications.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Localization/i18n|Writing Applications With Localization In Mind]]&lt;br /&gt;
:''This tutorial covers what localization is, why it's important and how to ensure your application is ready to be localized. A must read for all application developers.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Localization/i18n Mistakes|Avoiding Common Localization Pitfalls]]&lt;br /&gt;
:''There are several common mistakes that prevent applications from being properly localized. Find out what they are and how to easily avoid them in this tutorial.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Localization/Building KDE's l10n Module|Building KDE's Localization Module]]&lt;br /&gt;
:''Building and installing language support from KDE's localization (l10n) module is a good idea for those working on applications in the main KDE repository. Doing so will allow you to test your application in another language and spot problem areas. Learn how to do just that in this tutorial.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Localization/i18n Build Systems|Incorporating i18n Into the Build System]]&lt;br /&gt;
:''Once your application is ready to be localized, the next step is to ensure that translation files are built automatically and kept up to date. This tutorial covers the necessary CMakeFiles.txt additions as well the process of distributing the resulting message catalogs with your application.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Localization/i18n Challenges|Common i18n Challenges and Solutions]]&lt;br /&gt;
:''This tutorial covers challenges that you may eventually run into such as translating handbooks and other data that exists outside of the source code, merging and handling obsolete .po files, dealing with freezes, coding in languages other than English and creating independent releases of or moving applications between KDE modules.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Localization/i18n_Semantics|Semantic Markup of Messages]]&lt;br /&gt;
:''To ensure consistent presentation and more meaningful representations of messages in applications, semantic markup can be applied to messages marked for translation using the KUIT system. This tutorial describes how this system works.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Localization/i18n Krazy|Automated i18n Code Checking]]&lt;br /&gt;
:''The Krazy code checker scans KDE's code and reports common i18n mistakes.''&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/API_Documentation|API Documentation]]&lt;br /&gt;
:''This tutorial explains how to document your APIs properly.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Man_Pages|Man Pages]]&lt;br /&gt;
:''Writing and Generating Reference Manual Pages.''&lt;br /&gt;
&lt;br /&gt;
== Application Automation and Scripting ==&lt;br /&gt;
&lt;br /&gt;
=== D-Bus ===&lt;br /&gt;
; [[Development/Tutorials/D-Bus/Introduction|Introduction to D-Bus]]&lt;br /&gt;
:''A straight-forward introduction to the core concepts in D-Bus from an application developer's perspective, this tutorial covers what D-Bus is and how it can be used by applications.''&lt;br /&gt;
; [[Development/Tutorials/D-Bus/Accessing Interfaces|Accessing D-Bus Interfaces]]&lt;br /&gt;
:''A step-by-step guide to calling D-Bus methods and connecting to D-Bus signals using QtDBus.''&lt;br /&gt;
; [[Development/Tutorials/D-Bus/Intermediate_D-Bus|Intermediate D-Bus]]&lt;br /&gt;
:''Tips to make use of QtDBus when faced with problematic real-world interfaces.''&lt;br /&gt;
; [[Development/Tutorials/D-Bus/Creating Interfaces|Creating D-Bus Interfaces]]&lt;br /&gt;
:''Learn how to expose functionality in your application by creating and using custom D-Bus interfaces. Covers generating the XML descriptions, instantiating interfaces at run time and setting up the build system with CMake.''&lt;br /&gt;
; [[Development/Tutorials/D-Bus/Autostart Services|D-Bus Autostart Services]]&lt;br /&gt;
:''Turn your application into a D-Bus autostart service with this tutorial. This D-Bus feature, also known as &amp;quot;D-Bus service activation&amp;quot;, will ensure that even when your application isn't running that D-Bus calls made to it will work by relying on the D-Bus daemon itself to start your app if and when needed.''&lt;br /&gt;
; [[Development/Tutorials/Porting_to_D-Bus|Porting from DCOP to D-Bus]]&lt;br /&gt;
: ''Port your applications from DCOP to D-Bus with this handy guide.''&lt;br /&gt;
&lt;br /&gt;
=== Konqueror ===&lt;br /&gt;
; [[Development/Tutorials/Creating Konqueror Service Menus|Creating Konqueror Service Menus]]&lt;br /&gt;
:''This tutorial shows you how to create mimetype-specific actions in Konqueror's context menu (aka &amp;quot;servicemenus&amp;quot;).''&lt;br /&gt;
&lt;br /&gt;
=== Kross ===&lt;br /&gt;
; [[Development/Tutorials/Kross/Introduction|Introduction to Kross]]&lt;br /&gt;
:''An introduction to the Kross Scripting Framework.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Kross/Hello_World|Hello World]]&lt;br /&gt;
:''A first application with working kross code.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Kross/Call_Functions_in_Kross|Calling Functions in Kross]]&lt;br /&gt;
:''Simple demonstration of calling scripting functions''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Kross/Connecting_Signals_and_slots_in_Kross|Connecting Signals and Slots in Kross]]&lt;br /&gt;
:''Simple demonstration of connecting object signals with script slots''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Kross/Scripts-as-Plugins|Scripts as Plugins with Kross]]&lt;br /&gt;
:''This tutorial provides a step-by-step introduction how to integrate scripts as plugins into a KDE application.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Kross/Scripts-as-KPlugins|Load Kross Scripts as KPlugins]]&lt;br /&gt;
:''This tutorial provides a step-by-step introduction how to load scripts as KPlugins.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Kross/Script-Actions|Placing script actions in your application menus ]]&lt;br /&gt;
:''Simple demonstration on how to extend you application menus to execute script files.''&lt;br /&gt;
&lt;br /&gt;
{{:KOffice/Plugin Tutorials}}&lt;br /&gt;
&lt;br /&gt;
=== SuperKaramba ===&lt;br /&gt;
; [[Development/Tutorials/SuperKaramba|SuperKaramba Tutorial]]&lt;br /&gt;
:''This tutorial provides an overview of SuperKaramba, theme files and scripting with Python, Ruby and JavaScript.''&lt;br /&gt;
&lt;br /&gt;
== Plugins and KParts ==&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Writing kontact plugins|Writing kontact plugins]]:''Kontact plugins are KParts. This tutorial describes how you can write one.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Using KParts|Using KParts]]:''Learn how to load a KPart into an application window.''&lt;br /&gt;
&lt;br /&gt;
== Search and Metadata ==&lt;br /&gt;
&lt;br /&gt;
=== Strigi ===&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Writing file analyzers|Writing file analyzers]]&lt;br /&gt;
:''File analyzers extract data from files to display in the file dialogs and file managers. The data gathered this way is also used to search for files. KDE4 allows the use of multiple analyzers per file type. This tutorial describes how you can write new analyzers.''&lt;br /&gt;
&lt;br /&gt;
=== [http://nepomuk.kde.org Nepomuk] ===&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Metadata/Nepomuk/Quickstart|Nepomuk Quickstart]]&lt;br /&gt;
:''How to use Nepomuk resources in a quick and painless way without much fuss.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Metadata/Nepomuk/RDFIntroduction|RDF and Ontologies in Nepomuk]]&lt;br /&gt;
:''An introduction to RDF and the usage of ontologies in Nepomuk.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Metadata/Nepomuk/Resources|Handling Resources with Nepomuk]]&lt;br /&gt;
:''Nepomuk is the KDE library which provides easy access to metadata in the Nepomuk system. Learn how to make your application create and read metadata using the Nepomuk system.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Metadata/Nepomuk/ResourceGenerator|Using the Nepomuk Resource Generator]]&lt;br /&gt;
:''Nepomuk includes a resource generator which creates convenience classes for handling metadata.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Metadata/Nepomuk/AdvancedQueries|Advanced Queries]]&lt;br /&gt;
:''The real power of Nepomuk can only be exposed when performing fancy queries on the data repository. This tutorial provides an introduction to semantic and full text queries in Nepomuk.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Metadata/Nepomuk/NepomukServer|The Nepomuk Server and the Architecture of the Nepomuk subsystem]]&lt;br /&gt;
:''The Nepomuk Server hosts the main Nepomuk data repository and can be accessed directly via a Soprano API.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Metadata/Nepomuk/NepomukServices|Nepomuk Services]]&lt;br /&gt;
:''The Nepomuk Server manages a set of Nepomuk services.''&lt;br /&gt;
:* [[Development/Tutorials/Metadata/Nepomuk/StorageService|Storage Service]] ''The probably most important service hosts the Nepomuk data repository using [http://soprano.sourceforge.net Soprano].''&lt;br /&gt;
:* [[Development/Tutorials/Metadata/Nepomuk/OntologyLoaderService|Ontology Loader]] ''Makes sure installed ontologies such as RDF, RDFS, NRL, or Xesam are loaded into the storage repository.''&lt;br /&gt;
:* [[Development/Tutorials/Metadata/Nepomuk/FileWatchService|File Watch Service]] ''Monitors the file system for changes and updates the file resource paths and URIs in Nepomuk.''&lt;br /&gt;
:* [[Development/Tutorials/Metadata/Nepomuk/StrigiService|Strigi Service]] ''Controls Strigi, the file indexing tool which extracts metadata from files and stores it into the storage repository.''&lt;br /&gt;
:* [[Development/Tutorials/Metadata/Nepomuk/QueryService|Query Service]] ''Provides persistant query folders.''&lt;br /&gt;
&lt;br /&gt;
== Hardware Awareness (Solid) ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Solid_Tutorials|Introduction to Solid]]&lt;br /&gt;
:''An introduction to using the Solid hardware discovery and interaction system in KDE applications.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Solid_Network_Tutorial|Accessing Network Information]]&lt;br /&gt;
:''How to use the Solid system to get information about the network''&lt;br /&gt;
&lt;br /&gt;
== Multimedia (Phonon) ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Phonon/Introduction|Phonon]]&lt;br /&gt;
:''How to start with the multimedia API''&lt;br /&gt;
&lt;br /&gt;
:''How to compile and use Phonon and its GStreamer backend on Linux using Qt 4.3.x''&lt;br /&gt;
::''This article gives you a quick brief of how you can use checkout, compile Phonon and its GStreamer backend on GNU/Linux with just Qt 4.3.x. Towards the end, the article also describes how a developer can make use of Phonon to create simple audio and video players. You can read the article [http://www.vcreatelogic.com/oss/docs/CompilingPhononOnLinux.pdf here]. You can download the editable OpenDocumentText file from [http://www.prashanthudupa.com/phonon/CompilingPhononOnLinux.odt here].''&lt;br /&gt;
&lt;br /&gt;
== Plasma ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Plasma/GettingStarted|Getting Started With Plasmoids]]&lt;br /&gt;
:''Creating your first Plasma widget, or Plasmoid, in C++ with an SVG background, an icon and some text''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Plasma/DataEngines|Writing A DataEngine]]&lt;br /&gt;
:''DataEngines provide a [http://api.kde.org/4.x-api/kdebase-workspace-apidocs/plasma/html/classPlasma_1_1DataEngine.html  standardized interface] to various data sources for visualizations to use. Learn what a DataEngine is and how to write one of your own.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Plasma/UsingDataEngines|Using DataEngines in Plasmoids]]&lt;br /&gt;
:''With a DataEngine, it is possible to retrieve data for display in a simple and standard way. This tutorial covers the topic of how to use DataEngines for this purpose in Plasmoids.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Plasma/AbstractRunner|Creating Runners]]&lt;br /&gt;
:''Runners are plugins that provide action-based search functionality in the Plasma workspace &amp;quot;run command&amp;quot; dialog. These plugins can be used by any application that links again libplasma.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Plasma/Theme|Creating a Plasma Theme]]&lt;br /&gt;
:''Guide to creating your first Plasma theme.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Plasma/UsingExtenders|Using Extenders]]&lt;br /&gt;
:''This guide shows you how to create a simple applet (a stripped down kuiserver applet) that uses extenders.''&lt;br /&gt;
&lt;br /&gt;
== Communication (Decibel) ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Decibel/GettingStarted|Getting started with Decibel]]&lt;br /&gt;
:''This tutorial describes how to set up Decibel.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Decibel/Handling_TextChannels|Handling TextChannels]]&lt;br /&gt;
:''This tutorial introduces the basics of handling incoming TextChannels by guiding you through building a simple text chat application.''&lt;br /&gt;
&lt;br /&gt;
== Personal Information Management (Akonadi) ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Akonadi/Resources|Developing Akonadi Resources]]&lt;br /&gt;
:''Akonadi Resources are agent programs which transport PIM data between Akonadi and a backend (files, servers, etc)''&lt;br /&gt;
&lt;br /&gt;
== Kate / Kwrite ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Kate/KTextEditor Plugins|Getting started with KTextEditor plugins]]&lt;br /&gt;
:''Creating your first KTextEditor plugin''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Kate/KTextEditor_Plugins_Advanced|Developing a plugin with configuration dialog]]&lt;br /&gt;
:''Adding a configuration dialog to the Time &amp;amp; Date example''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Kate/KTextEditor_Example|A small Editor]]&lt;br /&gt;
:''Create a small application using KTextEditor''&lt;br /&gt;
&lt;br /&gt;
==Printing==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Printing Hello World|Hello World]]&lt;br /&gt;
:''Introduction to the KDE printing system''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Printing Print Dialog|Print Dialog]]&lt;br /&gt;
:''Using the KDE print dialog''&lt;br /&gt;
&lt;br /&gt;
== kioslaves ==&lt;br /&gt;
* [[Development/Tutorials/KIO Slaves/Using KIO Slaves in your Program|Using kioslaves in your Program]]&lt;br /&gt;
* [[Development/Tutorials/KIO Slaves/Hello World|Creating a Hello-World kioslave]]&lt;br /&gt;
&lt;br /&gt;
== Get Hot New Stuff ==&lt;br /&gt;
; [[Development/Tutorials/K_Hot_New_Stuff2|New introduction to Get Hot New Stuff 2]]&lt;br /&gt;
:''A short tutorial about how to use KHotNewStuff2 in your application.''&lt;br /&gt;
&lt;br /&gt;
* old links for KNS1 content:&lt;br /&gt;
; [[Development/Tutorials/Introduction to Get Hot New Stuff|Introduction to Get Hot New Stuff]]&lt;br /&gt;
:''An introduction to the developer-friendly network update system that allows KDE applications to fetch new application data at runtime in a user friendly manner.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/KNewStuffSecure|KNewStuff Secure]] ([http://developer.kde.org/documentation/tutorials/knewstuffsecure/index.html Original Link])&lt;br /&gt;
:''Tutorial showing how to share resources in a secured way (KDE 3.4 and later).''  By Andr&amp;amp;#225;s Mantia &amp;amp;lt;amantia@kde.org&amp;amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Goya ==&lt;br /&gt;
; [[Development/Tutorials/Introduction to Goya usage|Introduction to Goya usage]]&lt;br /&gt;
:''An introduction for the Goya subsystem usage, which allows you to easily add widgets to your itemviews and connect their signals to your code, as they were real widgets.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Introduction to Goya usage 2|Introduction to Goya usage (part 2)]]&lt;br /&gt;
:''The second part of the tutorial, with a slightly more complex example than the first part.''&lt;br /&gt;
&lt;br /&gt;
== Other programming languages ==&lt;br /&gt;
&lt;br /&gt;
=== Python ===&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Python introduction to signals and slots|101 Introduction to signals and slots]]&lt;br /&gt;
:''A simple introduction to Qt's signal and slot architecture.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Languages/Python/PyKDE_WebKit_Tutorial|PyKDE WebKit Tutorial]]&lt;br /&gt;
:''A simple web browser application in PyKDE''&lt;br /&gt;
&lt;br /&gt;
=== Ruby ===&lt;br /&gt;
&lt;br /&gt;
;[http://developer.kde.org/language-bindings/ruby/kde3tutorial/index.html KDE Ruby Korundum tutorial]&lt;br /&gt;
:''A ruby version of Antonio Larrosa Jim&amp;amp;eacute;nez's KDE tutorial by Richard Dale. See the [http://developer.kde.org/language-bindings/ruby/index.html Ruby Developers Corner] for Qt tutorials and other info.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Qt4_Ruby_Tutorial|Qt4 Ruby Tutorial]]&lt;br /&gt;
:''Trolltech's fabulous introductory tutorial to Qt, translated to Ruby.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Plasma/RubyApplet|Creating a Plasma Widget in Ruby]]&lt;br /&gt;
:''Tutorial that shows how to create your first Plasma Applet using the Ruby language.''&lt;br /&gt;
&lt;br /&gt;
=== Shell ===&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Shell_Scripting_with_KDE_Dialogs|Shell Scripting with KDE dialogs]] ([http://developer.kde.org/documentation/tutorials/kdialog/t1.html Original Link]) &lt;br /&gt;
:''Tutorial by [mailto:bradh@frogmouth.net Brad Hards] that describes how to use KDE dialogs in shell scripts with kdialog. It is presented as an example based tutorial.''&lt;br /&gt;
&lt;br /&gt;
== Graphics Programming ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/Graphics/Performance|QPainter Perfomance]]&lt;br /&gt;
:''Hints on avoiding common mistakes leading to poor performance when using QPainter''&lt;br /&gt;
&lt;br /&gt;
== Using the KDE Games Libraries ==&lt;br /&gt;
;[[Development/Tutorials/Games/KStandardGameAction| KStandardGameAction]]&lt;br /&gt;
:''Using libkdegames to make your game fit the kdegames standard''&lt;br /&gt;
;[[Development/Tutorials/Games/Highscores| Highscores]]&lt;br /&gt;
:''Implementing a simple highscore table into your game''&lt;br /&gt;
;[[Development/Tutorials/Games/Theme Selector| Theme Selector]]&lt;br /&gt;
:''Using the libkdegames theme selection dialog''&lt;br /&gt;
;[[Development/Tutorials/Games/Palapeli Patterns| Palapeli Patterns]]&lt;br /&gt;
:''Creating a pattern for Palapeli''&lt;br /&gt;
;[[Development/Tutorials/Games/KGLEngine2d| KGLEngine2d]]&lt;br /&gt;
:''Using KGLEngine2d for 2D games development''&lt;br /&gt;
&lt;br /&gt;
== Using the KDE PIM Libraries ==&lt;br /&gt;
;[[Development/Tutorials/PIM/ical| iCalendar functionality]]&lt;br /&gt;
:''Using kcal to manage iCalendar files''&lt;br /&gt;
&lt;br /&gt;
== Other tutorials ==&lt;br /&gt;
&lt;br /&gt;
=== 2D Plotting (KPlotWidget) ===&lt;br /&gt;
;[[Development/Tutorials/KPlotWidget|Using the KDE data-plotting widget]]&lt;br /&gt;
:''This tutorial introduces KPlotWidget, which is used for 2-D data plotting.  It includes information on simple usage of the widget (including adding and modifying data sets, and customizing the plot axes and labels), and advanced customization (including extending the widget through sub-classing).''&lt;br /&gt;
&lt;br /&gt;
=== Spelling and Grammar Checking (Sonnet) ===&lt;br /&gt;
;[[Development/Tutorials/Sonnet/SonnetTutorial|Adding spell-checking or grammar-checking to KDE applications]]&lt;br /&gt;
:''This tutorial introduces Sonnet and how one may use it to add language correction to your KDE application. Sonnet's auxiliary features shall be described in a separate tutorial.''&lt;br /&gt;
&lt;br /&gt;
=== Pixmap cache (KPixmapCache) ===&lt;br /&gt;
;[[Development/Tutorials/KPixmapCache|Using the KDE pixmap cache]]&lt;br /&gt;
:''This tutorial shows how to use KPixmapCache to cache e.g. pixmaps generated from SVGs or some data.''&lt;br /&gt;
&lt;br /&gt;
=== Using MarbleWidget (Marble) ===&lt;br /&gt;
;[[Development/Tutorials/MarbleWidget|Using MarbleWidget]]&lt;br /&gt;
:''This short tutorial describes how to use the MarbleWidget in your project''&lt;br /&gt;
&lt;br /&gt;
=== Using local SCM for KDE development ===&lt;br /&gt;
;[[Development/Tutorials/Git|Using Git to develop for KDE]]&lt;br /&gt;
:''This tutorial shows how to use Git to develop for KDE''&lt;br /&gt;
&lt;br /&gt;
=== Implementing KSysGuard sensors and adding them ===&lt;br /&gt;
;[[Development/Tutorials/Sensors]]&lt;br /&gt;
:''This tutorial shows how to write and KSysGuard sensor and connect it to the systray.''&lt;br /&gt;
&lt;br /&gt;
== KDE2 and KDE3 Materials ==&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/KDE3|KDE3 Tutorials]]&lt;br /&gt;
:''These tutorials cover topics related to KDE3.''&lt;br /&gt;
&lt;br /&gt;
;[[Development/Tutorials/KDE2|KDE2 Tutorials]]&lt;br /&gt;
:''These tutorials cover topics related to KDE2.''&lt;br /&gt;
&lt;br /&gt;
[[Category:KDE4]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KOffice</id>
		<title>Projects/KOffice</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KOffice"/>
				<updated>2008-12-30T15:06:54Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: KOffice is the document processing suite from the KDE project.  http://koffice.org/  {{:KOffice/Plugin Tutorials}}&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;KOffice is the document processing suite from the KDE project.&lt;br /&gt;
&lt;br /&gt;
http://koffice.org/&lt;br /&gt;
&lt;br /&gt;
{{:KOffice/Plugin Tutorials}}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KOffice/Plugin_Tutorials</id>
		<title>Projects/KOffice/Plugin Tutorials</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KOffice/Plugin_Tutorials"/>
				<updated>2008-12-30T15:06:35Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: KOffice/Development Tutorials moved to KOffice/Plugin Tutorials&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== KOffice Plugin Tutorials ===&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/KOffice Overview|KOffice Overview]]&lt;br /&gt;
:''This document shows an overview of the different KOffice plugin types and tells you what each of their purpose and strengths are.''  If you are new with KOffice plugins, this is the place to start.&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Write a Flake Plugin|Creating KOffice Flake Plugins]]&lt;br /&gt;
:''This tutorial shows you how you can build a plugin for KOffice applications to allow you embed content in ODF documents using Flake.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/KWord Scripting|KWord Scripting]]&lt;br /&gt;
:''This tutorial shows how to script KWord with Python, Ruby or JavaScript using Kross.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/KSpread Scripting|KSpread Scripting]]&lt;br /&gt;
:''This tutorial shows how to script KSpread with Python, Ruby or JavaScript using Kross.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Krita Scripting|Krita Scripting]]&lt;br /&gt;
:''This tutorial shows how to script Krita with Python, Ruby or JavaScript using Kross.''&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KOffice/Development_Tutorials</id>
		<title>Projects/KOffice/Development Tutorials</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KOffice/Development_Tutorials"/>
				<updated>2008-12-30T15:06:35Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: KOffice/Development Tutorials moved to KOffice/Plugin Tutorials&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[KOffice/Plugin Tutorials]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/KOffice/Plugin_Tutorials</id>
		<title>Projects/KOffice/Plugin Tutorials</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/KOffice/Plugin_Tutorials"/>
				<updated>2008-12-30T15:06:15Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: === KOffice Plugin Tutorials ===  ; KOffice Overview :''This document shows an overview of the different KOffice plugin types and tells you what ...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== KOffice Plugin Tutorials ===&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/KOffice Overview|KOffice Overview]]&lt;br /&gt;
:''This document shows an overview of the different KOffice plugin types and tells you what each of their purpose and strengths are.''  If you are new with KOffice plugins, this is the place to start.&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Write a Flake Plugin|Creating KOffice Flake Plugins]]&lt;br /&gt;
:''This tutorial shows you how you can build a plugin for KOffice applications to allow you embed content in ODF documents using Flake.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/KWord Scripting|KWord Scripting]]&lt;br /&gt;
:''This tutorial shows how to script KWord with Python, Ruby or JavaScript using Kross.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/KSpread Scripting|KSpread Scripting]]&lt;br /&gt;
:''This tutorial shows how to script KSpread with Python, Ruby or JavaScript using Kross.''&lt;br /&gt;
&lt;br /&gt;
; [[Development/Tutorials/Krita Scripting|Krita Scripting]]&lt;br /&gt;
:''This tutorial shows how to script Krita with Python, Ruby or JavaScript using Kross.''&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Contributor_Paths</id>
		<title>Projects/Contributor Paths</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Contributor_Paths"/>
				<updated>2008-12-29T15:27:44Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Add some boxes.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a temporary page to hold information about creating techbase pages for contributor paths. The idea is to reorganize the tutorials already present on techbase into categories to teach new people to contribute. The focus is on lowering the barrier to entry, and identifying gaps in the techbase tutorials.&lt;br /&gt;
&lt;br /&gt;
The original thread is here:&lt;br /&gt;
http://thread.gmane.org/gmane.comp.kde.devel.core/55248&lt;br /&gt;
&lt;br /&gt;
What I'm looking for is &lt;br /&gt;
* '''Consensus''' - Is this a good idea and something we want?&lt;br /&gt;
* '''Correctness''' - As I know nothing about artists work, I don't know if creating icons is harder than creating themes, and I don't know if the steps in the path are correct. Similar for the others (docs, translation, etc)&lt;br /&gt;
* '''Collaboration''' - Will you help fill the gaps in the techbase documentation?&lt;br /&gt;
&lt;br /&gt;
== Followups here ==&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.devel.general/56132 Developer]&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.artists/5582 Artist]&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.devel.internationalization-and-documentation/15942 Documenter]&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.devel.internationalization-and-documentation/15941 Translator]&lt;br /&gt;
* Bugsquad - [ link]&lt;br /&gt;
* [http://lists.kde.org/?l=kde-usability&amp;amp;m=123056383919172&amp;amp;w=2 Usability Team]&lt;br /&gt;
* [http://lists.kde.org/?l=kde-promo&amp;amp;m=123056251917223&amp;amp;w=2 Promotion Team]&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.www/355 Websites Team]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Draft of 'root' page ==&lt;br /&gt;
Box is a bad template to use for this stuff. We can do a lot better, but you get the idea&lt;br /&gt;
&lt;br /&gt;
***********&lt;br /&gt;
&lt;br /&gt;
This page is a starting point for people who want to become KDE contributors. &lt;br /&gt;
&lt;br /&gt;
{{Box|Become a KDE Developer|&lt;br /&gt;
Start on the [[:/Paths/Developer|Developer path]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Become a KDE Artist|&lt;br /&gt;
Start on the [[:/Paths/Artist|Artist path]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Become a KDE Documenter|&lt;br /&gt;
Start on the [[:/Paths/Documenter|Documenter path]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Become a KDE Translator|&lt;br /&gt;
Start on the [[:/Paths/Translator|Translator path]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Join the KDE Bugsquad|&lt;br /&gt;
Start on the [[:/Paths/Bugsquad|Bugsquad path]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Join the KDE Usability Team|&lt;br /&gt;
Start on the [[:/Paths/Usability|Usability path]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Join the KDE Promotion Team|&lt;br /&gt;
Start on the [[:/Paths/Promotion|Promotion path]] &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Box|Join the KDE Websites Team|&lt;br /&gt;
Start on the [[:/Paths/Websites|Websites path]] &lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Contributor_Paths</id>
		<title>Projects/Contributor Paths</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Contributor_Paths"/>
				<updated>2008-12-29T15:24:13Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a temporary page to hold information about creating techbase pages for contributor paths. The idea is to reorganize the tutorials already present on techbase into categories to teach new people to contribute. The focus is on lowering the barrier to entry, and identifying gaps in the techbase tutorials.&lt;br /&gt;
&lt;br /&gt;
The original thread is here:&lt;br /&gt;
http://thread.gmane.org/gmane.comp.kde.devel.core/55248&lt;br /&gt;
&lt;br /&gt;
What I'm looking for is &lt;br /&gt;
* '''Consensus''' - Is this a good idea and something we want?&lt;br /&gt;
* '''Correctness''' - As I know nothing about artists work, I don't know if creating icons is harder than creating themes, and I don't know if the steps in the path are correct. Similar for the others (docs, translation, etc)&lt;br /&gt;
* '''Collaboration''' - Will you help fill the gaps in the techbase documentation?&lt;br /&gt;
&lt;br /&gt;
Followups here:&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.devel.general/56132 Developer]&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.artists/5582 Artist]&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.devel.internationalization-and-documentation/15942 Documenter]&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.devel.internationalization-and-documentation/15941 Translator]&lt;br /&gt;
* Bugsquad - [ link]&lt;br /&gt;
* [http://lists.kde.org/?l=kde-usability&amp;amp;m=123056383919172&amp;amp;w=2 Usability Team]&lt;br /&gt;
* [http://lists.kde.org/?l=kde-promo&amp;amp;m=123056251917223&amp;amp;w=2 Promotion Team]&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.www/355 Websites Team]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Contributor_Paths</id>
		<title>Projects/Contributor Paths</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Contributor_Paths"/>
				<updated>2008-12-29T15:12:58Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Update with some links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a temporary page to hold information about creating techbase pages for contributor paths. The idea is to reorganize the tutorials already present on techbase into categories to teach new people to contribute. The focus is on lowering the barrier to entry, and identifying gaps in the techbase tutorials.&lt;br /&gt;
&lt;br /&gt;
The original thread is here:&lt;br /&gt;
http://thread.gmane.org/gmane.comp.kde.devel.core/55248&lt;br /&gt;
&lt;br /&gt;
What I'm looking for is &lt;br /&gt;
* '''Consensus''' - Is this a good idea and something we want?&lt;br /&gt;
* '''Correctness''' - As I know nothing about artists work, I don't know if creating icons is harder than creating themes, and I don't know if the steps in the path are correct. Similar for the others (docs, translation, etc)&lt;br /&gt;
* '''Collaboration''' - Will you help fill the gaps in the techbase documentation?&lt;br /&gt;
&lt;br /&gt;
Followups here:&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.devel.general/56132 Developer]&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.artists/5582 Artist]&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.devel.internationalization-and-documentation/15942 Documenter]&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.devel.internationalization-and-documentation/15941 Translator]&lt;br /&gt;
* Bugsquad - [ link]&lt;br /&gt;
* Usability Team - [ link]&lt;br /&gt;
* [http://lists.kde.org/?l=kde-promo&amp;amp;m=123056251917223&amp;amp;w=2 Promotion Team]&lt;br /&gt;
* [http://thread.gmane.org/gmane.comp.kde.www/355 Websites Team]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/Contributor_Paths</id>
		<title>Projects/Contributor Paths</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/Contributor_Paths"/>
				<updated>2008-12-29T14:26:11Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: New page: This is a temporary page to hold information about creating techbase pages for contributor paths. The idea is to reorganize the tutorials already present on techbase into categories to tea...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a temporary page to hold information about creating techbase pages for contributor paths. The idea is to reorganize the tutorials already present on techbase into categories to teach new people to contribute. The focus is on lowering the barrier to entry, and identifying gaps in the techbase tutorials.&lt;br /&gt;
&lt;br /&gt;
The original thread is here:&lt;br /&gt;
http://thread.gmane.org/gmane.comp.kde.devel.core/55248&lt;br /&gt;
&lt;br /&gt;
What I'm looking for is &lt;br /&gt;
* '''Consensus''' - Is this a good idea and something we want?&lt;br /&gt;
* '''Correctness''' - As I know nothing about artists work, I don't know if creating icons is harder than creating themes, and I don't know if the steps in the path are correct. Similar for the others (docs, translation, etc)&lt;br /&gt;
* '''Collaboration''' - Will you help fill the gaps in the techbase documentation?&lt;br /&gt;
&lt;br /&gt;
Followups here:&lt;br /&gt;
* Developer - [http://thread.gmane.org/gmane.comp.kde.devel.general/56132 link]&lt;br /&gt;
* Artist - [ link]&lt;br /&gt;
* Documenter - [ link]&lt;br /&gt;
* Translator - [ link]&lt;br /&gt;
* Bugsquad - [ link]&lt;br /&gt;
* Usability Team - [ link]&lt;br /&gt;
* Promotion Team - [ link]&lt;br /&gt;
* Websites Team - [ link]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan</id>
		<title>Schedules/KDE4/4.2 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan"/>
				<updated>2008-11-09T16:33:56Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* kdepim */ Import knowit files for KJots done.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.2 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.2 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.1 Feature Plan]]&lt;br /&gt;
* [[Schedules/KDE4/4.2 Release Goals]]&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|System Settings|add Administrator mode button|alediaferia@gmail.com|Alessandro Diaferia}}&lt;br /&gt;
{{FeatureTodo|PolicyKit integration|Add PolicyKit support for KDE|drf54321@gmail.com|Dario Freddi}}&lt;br /&gt;
{{FeatureTodo|KPackageKit|Pushing in KPackageKit (dependant on PolicyKit integration)|dantti85-dev@yahoo.com.br|Daniel}}&lt;br /&gt;
{{FeatureDone|Eigen|Make Eigen 2 ready for KDE, and move it to kdesupport|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureInProgress|Eigen|Port all Eigen-using code in KDE and KOffice to Eigen 2.0|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureInProgress|KNotify|Create OSD based replacement for current KPassivePopup|ben()eclipse.endoftheinternet.org|Ben Cooksley}}&lt;br /&gt;
{{FeatureTodo|Dikku Context Framework|Create a context framework with working activities|harikrishna.anandhan@gmail.com|Harikrishna Anandhan}}&lt;br /&gt;
{{FeatureDone|kwrited|Use knotify in kwrited|gkiagiad@csd.uoc.gr|George Kiagiadakis}}&lt;br /&gt;
{{FeatureInProgress|Akonadi|Various Akonadi related items can be found here http://techbase.kde.org/Projects/PIM/Akonadi#Scheduled_for_4.2|kde-pim@kde.org|Akonadi Developers}}&lt;br /&gt;
{{FeatureTodo|Printer Admin|KDEPrint is dead, long live system-config-printer-kde (kdeadmin) and printer-applet (kdeutils)!  Thanks to jriddell for these.  Restore feature parity in user interfaces where possible.|john@layt.net|john Layt}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kross|Extend QtScript integration.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|*Defer to 4.3* Migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter, modify to utilise new Qt4.4 features.  To be discussed on k-c-d first.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalenderSystem|*Defer to 4.3* Add new calendar systems: Indian Civil (Saka), Ethiopean, Chinese, Pure Julian, Pure Gregorian. (Note, not all may live in kdelibs or be available as a global calendar system)|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureInProgress|KLocale|Implement KLocale based methods to return working week start and end days and day of religious observance.  Currently KCalendarSystem provides dayOfPray(), but for Gregorian this is not correct in all locales where it is used.  Currently KDatePicker hardcodes Saturday and dayOfPray() as weekend days which may not be correct in all locales.  To be discussed first on k-c-d and with kdepim.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|Phonon|add Port class for fine grained control over data flow between Phonon objects|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|make AbstractMediaStream/StreamInterface threadsafe|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|&amp;quot;low-level&amp;quot; PCM I/O with at least an ALSA implementation|kretz@kde.org|Matthias Kretz and Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Phonon|VideoWidget snapshot function|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|KConfig|API review and export KConfigBackend|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigSkeleton KConfigGroup aware|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigDialog work nicer with KConfigSkeleton + manually managed widgets|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KUrlNavigator|Provide an option to always show the full path in the breadcrumb mode.|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureInProgress|Katepart|Make a Vi input mode for Katepart|ehamberg@gmail.com|Erlend Hamberg}}&lt;br /&gt;
{{FeatureTodo|KIO::Global|Make KDynamicJobTracker do the checking if the kuiserver service is registered or not, for full implementation of &amp;quot;Progress in the same window&amp;quot;|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
{{FeatureTodo|KJS|Further performance improvements, in particular variable access (Blizzard stage 2), calling convention (FrostByte stage 2) and object property model improvements|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KJS and KHTML|Support for transparent reindenting of standalone sources in debugger, debug info management improvements, DOM/CSS inspection|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KHTML|SVG support in KHTML (port from WebKit)|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureDone|KHTML|Use of IDString (hashed strings) for local names, prefixes and namespaces in DOM core instead of document-related ids, in particular for better API compatibility with WebCore|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureInProgress|KHTML|String optimizations. Class style selector performance improvement. DOMString API extension.|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureTodo|KHTML|More automation in JS/C++ bindings generation|maksim@kde.org|Maksim Orlovich and Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureTodo|KHTML|XPath level 1|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureTodo|KHTML|Scriptable extension plug-ins|porten@kde.org|Harri}}&lt;br /&gt;
{{FeatureTodo|KHTML|Gaussian SVG filter|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureTodo|KHTML|Support for CSS3 border-* properties|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|KHTML|Finish support of Video/Audio elements|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureInProgress|KHTML|Early domain name resolution (prefetch)|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureInProgress|KHTML|KHTMLFindBar - an embedded search/find-as-you-type bar|bbeschow@cs.tu-berlin.de|Bernhard Beschow}}&lt;br /&gt;
{{FeatureTodo|KHTML|Faster page cache|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureDone|kwallet|Move kwalletd to kdebase-runtime|dfaure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureInProgress|kdeui|Rich text builders for KTextEdit, including BBCode, html, plain text markup, mediawiki and markdown output.|steveire@gmail.com| Stephen Kelly}}&lt;br /&gt;
{{FeatureDone|i18n|proper filenames decoding for FAT mounting, in KUrls and content-disposition|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Kross|expose KAssistantDialog as part of forms module|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|KLocale|Method to strip accelerator marker from UI strings; needs to take into account CJK-style markers too.|caslav.ilic@gmx.net|Chusslove Illich}}&lt;br /&gt;
{{FeatureInProgress|KStyle|New branch style for treeviews|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureTodo|kdeui|entries to help menu and aboutdata pointing to UserBase entry and forum.kde.org|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureInProgress|CMake|Reduced library link interface|neundorf@kde.org|Alexander Neundorf}}&lt;br /&gt;
{{FeatureTodo|CMake|Exporting and importing (library) targets|neundorf@kde.org|Alexander Neundorf}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Color KCM|Add 'smart setting' of extended colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Add KDE3 scheme import|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Query kwin for supported colors; add full set of kwin colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureDone|Power Manager|import PowerDevil|drf@kdemod.ath.cx|Dario Freddi}}&lt;br /&gt;
{{FeatureTodo|Font Installer KCM|Use PolicyKit for installtion of system-wide fonts.|craig@kde.org|Craig Drummond}}&lt;br /&gt;
{{FeatureInProgress|Kephal|Import kephal for better xrandr-support.|dev@aikesommer.name|Aike Sommer}}&lt;br /&gt;
{{FeatureInProgress|ConsoleKit support|Add ConsoleKit support to kdm.|kkofler@fedoraproject.org|Kevin Kofler}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
{{FeatureInProgress|Krunner|Configuration options for blacklisting, user ranking, runner ranking, learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureInProgress|Krunner|SearchMatch configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple GUI for above options|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runners able to share parsing|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Noun-Verb support|ryan.bitanga@gmail.com|Ryan P. Bitanga}}&lt;br /&gt;
{{FeatureTodo|Krunner|Implement Nuno's UI polishings|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runtime syntax documentation|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runner configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Search set paging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|KRunner|runner for the plasma dbus interface|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KRunner|Konqueror history runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureDone|KRunner|Kate sessions runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureDone|KRunner|Recent Documents runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
{{FeatureTodo|Plasma|Welcome plasmoid|aseigo@kde.org|Aaron Seigo}}{{FeatureInProgress|Plasma|JOLIE Integration|ervin@kde.org|Kevin Ottens}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Notification plasmoid|dimsuzkde@gmail.com|Dmitry Suzdalev}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Kuiserver plasmoid|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureTodo|KWin|Make it possible to focus plasma panels|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|panel-&amp;gt;desktop dragging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to full action bar when zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasmagik packaging (and package classes)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureDone|Plasma|Improved Battery applet for Powerdevil|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Networkmanager Plasmoid and DataEngine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New ECMA Script Scriptengines|richmoore44@gmail.com|Richard Moore}}&lt;br /&gt;
{{FeatureDone|Plasma|Extenders|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureDone|Plasma|Wallpaper plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Separate Desktop Settings from DesktopContainment|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Script Security Framework|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Python support|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
{{FeatureDone|Plasma|Plasma Popup Tips|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Collapsing Applet convenience class|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|Plasma|Taskbar grouping|hrigi_1@hotmail.com|Christian Mollekopf}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Weather plasmoid|shawn.starr@rogers.com|Shawn Starr}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Small Form Factors|m.kruisselbrink@student.tue.nl|Marijn Kruisselbrink}}&lt;br /&gt;
{{FeatureDone|Plasma|Plasma On Screensaver|chanika@gmail.com|Chani Armitage}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Website update|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Grid applet|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Techbase Tutorials|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Context menu plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Add New Widgets: Pluggable widget browser|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Activity&amp;lt;-&amp;gt;Virtual Desktop Affinity|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Optional Per-Virtual Desktop DesktopView|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Make non-SVG painting in Plasma low-color and non-anim friendly|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Runtime DataEngine documentation (sources, usage, etc)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Panel Autohide|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Keyboard Shortcut Config UI|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Systray++ Spec|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Save icon positioning in folderview|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New wallpapers|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Import Raptor|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Quicklaunch Plasmoid|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|Plasma|Preserve wallpaper choice by copying user paper to home dir|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New way of handling wallpapers and different sizes (package format, and so on...)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Top-level windows plasmoids|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|drop indicator in panel|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|improve usability of appletbrowser delete button|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|adding containments from the appletbrowser (and remove the &amp;quot;add panel&amp;quot; from DefaultDeskrop)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|highlight the applet with active keyboard shortcuts|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|dbus interface|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureDone|Plasma|make the panel controller a bit more usable|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|nicely draw the desktop toolbox when it's moved because of a panel|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|theme Plasma::PushButton with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|Tabbar widget derived from QTabBar and themed with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Complete the panel size sliders feature: an applet can ask the panel to resize|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New theming capabilities by expanding the lower level theming classes (Theme and PanelSvg)|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Activitybar: an applet to quickly switch between activities|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|A new plasmoid that implements the functionality of a simple web browser|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|Plasma|Visual clue when dragging applets from applet browser to the panel|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Wallpaper plugin: Mandelbrot fractal explorer|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureDone|Plasma|Google Gadgets support|idlecat511@gmail.com|Tiger Dong}}&lt;br /&gt;
{{FeatureDone|Plasma|Add Google Gadgets from Internet through AppletBrowser|idlecat511@gmail.com|Tiger Dong}}&lt;br /&gt;
{{FeatureTodo|Plasma|Panel form factor support in the folderview applet|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureTodo|Plasma|Support for creating applets for dropped URLs in the folderview applet when it's acting as a containment|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Add a places combo box to the location page in the folderview config dialog|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Core&lt;br /&gt;
{{FeatureDone|KWin|New window snapping zones; screen center and window corners|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Move maximized windows between Xinerama screens|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Support for decoration shadows|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureTodo|KWin|Implement [http://standards.freedesktop.org/wm-spec/wm-spec-latest.html#id2552578 _NET_WM_FULLSCREEN_MONITORS] EWMH spec hint|vR@movingparts.net|Jason 'vanRijn' Kasper}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Desktop Effects&lt;br /&gt;
{{FeatureDone|KWin|Compositing self-check|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|KWin|Global animation speed setting|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|KWin|Motion dynamics|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Improved UI for selecting window/desktop switcher|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|UI for assigning effects to screen edges|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Cube/cylinder/sphere effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Magic lamp minimize effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Animation in box switch effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin|Mouse interaction for cover switch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin|Thumbnail bar in the cover switch effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Improved snow effect; Different sizes, better randomness and different directions|torgny.johansson@gmail.com|Torgny Johansson}}&lt;br /&gt;
{{FeatureTodo|KWin|Shader for snow effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Improved desktop grid|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|New present window layout modes|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Invert only selected windows|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KCal Library|Make the KCal library dependent on the external libical package (from freeassocation) rather than our own old, forked version.|winter@kde.org|Allen Winter}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kopete|MSNP15 implementation for MSN|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Updated contact list interface (uses Qt 4 rather than Qt 3)|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureTodo|Kopete|Update Kopete to better support Decibel|kopete-devel@kde.org|Kopete Developers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Contacts plasmoid|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Kopete|Move file transfer request into chat window|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureDone|Kopete|Message delivery notifications|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureDone|Kopete|Improve file transfer progress dialog|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Jabber Jingle Audio support|detlev.casanova@gmail.com|Detlev Casanova}}&lt;br /&gt;
{{FeatureInProgress|KGet|MultiSource-Downloading|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Support mms://-protocol, see https://launchpad.net/libmms|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|MLDonkey-Plugin based on libkmldonkey|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|Advanced Details|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Network Manager Applet|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureInProgress|KRDC|NX support|gdavid.devel@gmail.com|David Gross}}&lt;br /&gt;
{{FeatureDone|KRDC|Greatly improve experience for LDAP (e.g. MS Active Directory) administrators|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureDone|KRDC|Improve per-host settings (remember scaling mode and other options) |gpothier@gmail.com|Guillaume Pothier}}&lt;br /&gt;
{{FeatureTodo|KRDC|Minimal-clutter mode to optimize screen real estate usage|gpothier@gmail.com|Guillaume Pothier}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KonsoleKalendar|Add an option to support resources that might need a GUI (i.e. all resources)|kevin.krammer@gmx.at|Kevin Krammer}}&lt;br /&gt;
{{FeatureInProgress|Akregator|Support for syncing the feed list with Google Reader |osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Improve alarm edit and preferences dialog layouts|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Add holidays support|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|Kleopatra|OpenPGP support|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureInProgress|KNotes|Zeroconf support for sending notes on LAN|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureDone|Kontact|New Planner summary; combines Appointment+To-do+SpecialDates into 1 pretty summary|o_timocin@gmx.de|Oral Timocin}}&lt;br /&gt;
{{FeatureDone|Akregator|Basic support for enclosures (Displaying links, mimetype and size)|osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureTodo|[http://kblogger.pwsp.net KBlogger]|KBlogger, a blogging application|christian_weilbach@.web.de|Christian Weilbach}}&lt;br /&gt;
{{FeatureTodo|Kleopatra|Konqueror and Dolphin Kleopatra plugins|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureDone|KMail|Aggregated attachment view in the mail header area of the reader window|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Merge the new message list from the SoC branch|mcguire@kde.org|Thomas McGuire}}&lt;br /&gt;
{{FeatureTodo|KMail|Save metadata about attachments to Nepomuk when saving them|onurf@su.sabanciuniv.edu|Ismail Onur Filiz}}&lt;br /&gt;
{{FeatureTodo|Kontact|Support for Kontact wide profiles|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Drag and drop in the free-busy view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for comments in replies to invitations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for extended free-busy lists|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureInProgress|KPilot|Port old conduits to new base conduit architecture and KDE4/Qt4|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureInProgress|KPilot|Finish Keyring conduit, base conduit code and test cases, category syncing|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|KBlogger|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|KNode|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureDone|Kjots| Import notes from KnowIt as KJots pages. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureInProgress|Kjots| Create and port to akonadi model. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Add support for nepomuk including tagging, possibly storage, and linking. Also a nepomuk tag proxy model for representing the structure as tagged.|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureInProgress|Kjots| Create plasmoid capable of showing the entire tree, or a single book.|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Email KJots pages using default mail client ({{bug|124509}}. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kontact|Tip-of-the-Day summary|molkentin@kde.org|Daniel Molkentin}}&lt;br /&gt;
{{FeatureInProgress|Akonadi|Migration of contacts and calendar data from KResource to Akonadi ([http://techbase.kde.org/Projects/PIM/Akonadi#Scheduled_for_4.2 Details])||Volker Krause, Kevin Krammer, Tobias Koenig}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Okteta|rework Decoding table, add int64 and UTF-8|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|refactor KByteArrayView and add a row-oriented view|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|make editing capability to Decoding table |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|work on Tabs: add remove button, make Tab buddy of view, accept drop of url as load command|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for import by drop, both url and data|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|copy again puts also a value or char variant of the data to clipboard|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|parameter dialog for &amp;quot;Copy as...&amp;quot;|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add further export formats like s-record and intel 16|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add a document info tool(view)|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|Add option to expand selection in Goto dialog|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureInProgress|Ark|Implement proper drag/drop between Ark/dolphin|haraldhv((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureDone|Ark|Make the service menu work (possibly doing it as a KonqPopupPlugin|haraldhv((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureDone|Ark|Proper password support|haraldhv((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|haraldhv((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Implement a plugin for .gz files|haraldhv((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|haraldhv((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|kwalletmanager|Move kwalletmanager to the Model/View architecture and redesign the UI|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support custom types via handlers|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support QList&amp;lt;CustomType*&amp;gt; constructs|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|Smoke|Wrap some more APIs (at least Akanodi for all languages and Plasma for C#)|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureInProgress|PyKDE|KCM support and other plugins|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
{{FeatureTodo|krossjava|Integrate into e.g. SuperKaramba and fix issues that show up.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossjava|Documentation++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossfalcon|Unittests++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|libkdegames|New highscore management system|milliams|Matt Williams}}&lt;br /&gt;
{{FeatureDone|kdiamond|Drag jewels|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|kdiamond|Optional OpenGL rendering|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|ksirk|Map scrolling arrows|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|KHotNewStuff skins|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ksirk|Jabber based net game finding|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Use only names in skins instead of numeric ids|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Skins editor|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ktron|Port and remake the KTron game for KDE 4.2|legolas@legolasweb.nl|Stas Verberkt}}&lt;br /&gt;
{{FeatureInProgress|KBreakOut|(Optional) fire on mouse click|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureTodo|KBreakOut|Sounds|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureTodo|KBreakOut|Custom levelsets|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureTodo|KBreakOut|KHotNewStuff support for themes|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureTodo|KNetWalk|Support for custom and non-square board sizes|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureTodo|KGoldrunner|Improvement to sound support and themes|mikelima@cirulla.net}}&lt;br /&gt;
{{FeatureTodo|KBlocks|Support for sounds|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KMahjongg|Support for sounds|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|Killbots|New app for 4.2|parker.coates@gmail.com|Parker Coates}}&lt;br /&gt;
{{FeatureTodo|KSudoku|Port of &amp;quot;print game&amp;quot; feature from old version|paulo.cattai@ltia.fc.unesp.br|Paulo Roberto Cattai}}&lt;br /&gt;
{{FeatureTodo|KSudoku|Redesign of symbol themes|paulo.cattai@ltia.fc.unesp.br|Paulo Roberto Cattai}}&lt;br /&gt;
{{FeatureTodo|KSudoku|Replace the core engine with a new version that will solve most bugs related to gameplay|johannes.bergmeier@gmx.net|Johannes Bergmeier}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Kate|Port and reenable the Snippets plugin.|jpetso@gmx.at|Jakob Petsovits}}&lt;br /&gt;
{{FeatureDone|perldoc KIOSlave|Add KIOSlave to allow reading Perldoc documentation.|michael.pyne&amp;amp;#64;kdemail&amp;amp;#46;net|Michael Pyne}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|XLIFF support|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|various Translation Memory enhancements|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Lokalize|wrap all windows belonging to one project into one MDI window|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Kross-based scripting|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|QA: glossary checklists|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|KAppTemplate|Add DBUS support in templates|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|Umbrello|Port code generation wizard to QWizard and replace all q3 widgets|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
{{FeatureInProgress|Umbrello|Replace all q3 widgets in the refactoring assistant|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
{{FeatureInProgress|Umbrello|Merge in SoC qgraphicsview port branch|krishna.ggk@gm ail.com|Gopala Krishna A}}&lt;br /&gt;
{{FeatureDone|Kate|Move the kate-ctags plugin to kdesdk.|kare.sars@iki.fi|Kåre Särs}}&lt;br /&gt;
{{FeatureDone|Kate|Replace the make-plugin with katebuild-plugin.|kare.sars@iki.fi|Kåre Särs}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KEduca|Rewrite of the classic test writing/taking application|matt@milliams.com|Matt Williams}}&lt;br /&gt;
{{FeatureTodo|KLettres|Number support|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureInProgress|KHangMan|Add a Open File action|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Integrate an editor|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Plasmoid|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Visual Indicator when letter is wrong|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium's periodic table to use new QGraphicsView.|marcus@cryos.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Remove the libavogadro snapshot, depend on libavogadro directly.|jacob@math.jussieu.fr|Benoit Jacob}}&lt;br /&gt;
{{FeatureInProgress|Kalzium|Plasmoid to access Kalzium database|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureTodo|Step|Improve GUI for creating softbody|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureTodo|Step|Use common constraints handling code for collisions|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureDone|KAlgebra|New parser (using QLALR) and new lexer|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Import capability for MathML Presentation Markup in libanalitza|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureTodo|KAlgebra|Export to MathML Presentation Markup|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureTodo|KAlgebra|Some integration with the new KFormula widget|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureInProgress|Parley|Declensions|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|Parley|Rework main window infrastructure|d.laidig@gmx.de|Daniel Laidig}}&lt;br /&gt;
{{FeatureDone|KStars|Display millions of stars|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureDone|KStars|Tool to predict Conjunctions|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Earth Satellites|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Sky Calendar Tool|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Support of Non-western Constellations|jsid@emor3j.fr.eu.org|Jérôme Sonrier}}&lt;br /&gt;
{{FeatureDone|KStars|Include HD Catalog Numbers (in search, in display)|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}}&lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Separate INDI From KStars|mutlaqja@ikarustech.com|Jasem Mutlaq}}&lt;br /&gt;
{{FeatureTodo|KStars|Sync KStars time from device|mutlaqja@ikarustech.com|Jasem Mutlaq}}&lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Improve Observing List Wizard|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Information links in-place for each technical term|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Bookmarks|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for MarbleWidget::setEnabled( bool )|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureTodo|Marble|Editing GeoDataFeatures|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Layer Management Class|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Plugin architecture for map layers|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Extending GeoPainter|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Marble Runners|hdevalence@gmail.com|Henry de Valence}}&lt;br /&gt;
{{FeatureInProgress|Marble|GeoClue Integration |jensmh@gmx.de|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Routing |jensmh@gmx.de|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|More map providers (WMS?) |jensmh@gmx.de|Jens-Michael Hoffmann}}&lt;br /&gt;
{{FeatureInProgress|Marble|Winkel Triple projection / equivalent |hdevalence@gmail.com|Henry de Valence}}&lt;br /&gt;
{{FeatureInProgress|Marble|Marble WorldClock Plasmoid|hdevalence@gmail.com|Henry de Valence}}&lt;br /&gt;
{{FeatureInProgress|Marble|Qt-Version settings dialog|hdevalence@gmail.com|Henry de Valence}}&lt;br /&gt;
{{FeatureInProgress|Marble|Panoramio Support||Shashank Singh}}&lt;br /&gt;
{{FeatureInProgress|Marble|Twitter Plugin||Shashank Singh}}&lt;br /&gt;
{{FeatureInProgress|Marble|TimeZone Support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Support for other planets and the moon|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|DGML2 Support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Support for imperial units|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Graticule plugin|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|MeasureTool plugin|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Port authors list from the Qt-About dialog to the KDE-About dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Basic KML support|ps_ml@gmx.de|Patrick Spendrin}}&lt;br /&gt;
{{FeatureInProgress|Marble|GeoData Model/View Visualization|ps_ml@gmx.de|Patrick Spendrin}}&lt;br /&gt;
{{FeatureInProgress|Marble|More generic projection support|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|Python bindings to the Marble widget and classes|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
{{FeatureInProgress|Marble|Network plugins|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Properties dialog for objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve construction of bisect lines.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve feedback when constructing objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|More geometric objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Script objects as macros (to be reused more than once).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve the Cabri import filter.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve the new/edit script wizard.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|KTurtle|Export canvas as image|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Optional rulers/grid for canvas units|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add command line|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add a color picker|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
{{FeatureInProgress|KBruch|Usability Improvements|tiago.porangaba@ltia.fc.unesp.br|Tiago Porangaba}}&lt;br /&gt;
{{FeatureInProgress|KBruch|Merging KPercentage functionalities into KBruch|tiago.porangaba@ltia.fc.unesp.br|Tiago Porangaba}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Visualization of Schemes and Gradients at same time|tiago.porangaba@ltia.fc.unesp.br|Tiago Porangaba}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KsCD|Dbus Connection for Now Playing plasmoid|bouchikhi.amine@gmail.com|Amine Bouchikhi}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|Make Dragon indipendent from Xine|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|File Manager|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|play media dialog|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|slider changes|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|show info while playing audio files|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Use XCOMPOSITE real transparency when available for the track announcement popup|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow disabling crossfade|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KMagnifier|Refactor color menu, re-add invert, break current color blindness code into &amp;quot;daltonize&amp;quot; and &amp;quot;simulate&amp;quot;|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KMagnifier|Add color-shift modes to help people with color blindness|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KSnapshot|Add support for grabbing a single screen in multihead|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|Increase jpeg image quality from 75% to 85%|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|If we're saving the window decorations then record the window title and class in the image (if the format supports it) to play nice with indexers like strigi|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureTodo|Okular|Sound annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Link annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Improve annotation support: for existing types (rubber stamps, line, note, etc), and for the way they are constructed and handled.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Caret annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Okular|Support for videos &amp;amp; movie annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Support .snp and .emf file formats|bradh@kde.org|Brad Hards}}&lt;br /&gt;
{{FeatureDone|Gwenview|Support for animated images (.gif and .mng)|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Red Eye Reduction|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Nepomuk integration|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Dolphin-like single-click selection|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Optional tree view|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Okular|Usable inverse search.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Synctex support.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|&amp;quot;Okular document package&amp;quot; for import/export a document with metadata (eg annotations).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|Okular|New backend for fax documents.|tokoe@kde.org|Tobias Koenig}}&lt;br /&gt;
{{FeatureTodo|Okular|Usability improvements.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|kio_bookmarks|A new konqueror home page displaying user bookmarks. See [[http://kde-apps.org/content/show.php?content=86516 description]]|xavier.vello@gmail.com|Xavier Vello}}&lt;br /&gt;
{{FeatureInProgress|kuiserver|KUiServer Goya port. General improvements for usability improvements|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
{{FeatureInProgress|kio fish/sftp|port fish and sftp to windows|brandon.ml@gmail.com|Carlo Segato}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|konqueror|A new konqueror recover-dialog replacement|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureTodo|konqueror|Rework bookmarks using Akonadi|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureInProgress|dolphin|Add zoom slider into the status bar and general zooming improvments|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureDone|dolphin|Tooltip previews|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureTodo|dolphin|ui to select preferred default settings for directory view|loic.marteau@gmail.com|Loic Marteau}}&lt;br /&gt;
{{FeatureInProgress|konqueror|Tagging and rating of webpages using Nepomuk - Already finished in playground.|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|PoTD engine|Import from playground|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Frame plasmoid|Honor EXIF rotation - see bug 164605|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Frame plasmoid|Previous, Pause and Next buttons - see bug 164704|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|Comic dataengine|Port all comics to QScript and offer them through GHNS|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureInProgress|Comic dataengine|Finish script support|mat69@gmx.net|Matthias Fuchs}}&lt;br /&gt;
{{FeatureInProgress|Eyes applet|xeyes clone applet|ogoffart%kde.org|Olivier Goffart}}|}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Software_Engineering_Framework</id>
		<title>Development/Software Engineering Framework</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Software_Engineering_Framework"/>
				<updated>2008-10-31T18:50:23Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Marketing and Expectations */ Add community website link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is intended to be a summary of the tools and processes used by the KDE&lt;br /&gt;
project for Software Engineering tasks, i.e. everything around coding&lt;br /&gt;
work. This includes bugfixing, review, testing, documentation,&lt;br /&gt;
requirements etc.&lt;br /&gt;
&lt;br /&gt;
The current tool used by KDE should be listed along with the extent of&lt;br /&gt;
its use, known alternatives, and advantages/disadvantages.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Development Tools ==&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Source Control&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://websvn.kde.org/ Subversion 1.4]&lt;br /&gt;
| people=&lt;br /&gt;
The kde sysadmin team:&lt;br /&gt;
* [http://wire.dattitu.de/authors/2-Dirk Dirk Müller]&lt;br /&gt;
* [http://www.kdab.net/~dfaure/ David Faure]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-scm-interest}}&lt;br /&gt;
| altTools=&lt;br /&gt;
* [http://git.or.cz/ git], repo&lt;br /&gt;
* [http://bazaar-vcs.org/ bazaar]&lt;br /&gt;
* [http://www.selenic.com/mercurial/ mercurial]&lt;br /&gt;
* [[Projects/GitoriousKDE|Gitorious]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Subversion 1.4 is currently used for source control management in KDE on&lt;br /&gt;
a server hosted in Frankfurt. A separate server is used for access to&lt;br /&gt;
the read-only mirror anonsvn.kde.org.&lt;br /&gt;
&lt;br /&gt;
There is interest in migrating to a distributed source control&lt;br /&gt;
management tool, such as GIT. Discussion of this is taking place on the&lt;br /&gt;
{{KDEML|kde-scm-interest}}&lt;br /&gt;
mailing list. It is likely git will be used along with a tool such as repo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Build System&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://www.cmake.org/ CMake 2.6.0]&lt;br /&gt;
* [http://api.kde.org/cmake/modules.html Custom CMake module documentation]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-buildsystem}}&lt;br /&gt;
| people=&lt;br /&gt;
* [http://www.kdedevelopers.org/blog/531 Alexander Neundorf]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CMake is the build tool currently used by KDE. It is Free Software&lt;br /&gt;
developed by [http://www.kitware.com/ kitware inc] and available on&lt;br /&gt;
multiple platforms supported by KDE.&lt;br /&gt;
&lt;br /&gt;
This tool was chosen as the buildsystem for the KDE4 series, and there&lt;br /&gt;
are no plans currently to migrate away from it. CMake version 2.6.2 will be required to build KDE 4.2 final.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Identifier search&lt;br /&gt;
| currentState=&lt;br /&gt;
http://lxr.kde.org&lt;br /&gt;
| people=&lt;br /&gt;
The kde sysadmin team:&lt;br /&gt;
* [http://wire.dattitu.de/authors/2-Dirk Dirk Müller]&lt;br /&gt;
* [http://www.kdab.net/~dfaure/ David Faure]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[http://en.wikipedia.org/wiki/LXR_Cross_Referencer LXR] indexes classes and methods used in KDE. This can be useful for finding examples of how to use a class, and finding all uses of a class while refactoring or updating API.&lt;br /&gt;
&lt;br /&gt;
== Review ==&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Patch review (pre commit)&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://reviewboard.vidsolbach.de/ Review-board] used by plasma project.&lt;br /&gt;
* trunk/kdereview&lt;br /&gt;
| people=&lt;br /&gt;
* David Solbach and the kde sysadmin team maintain the Plasma review-board installation.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-core-devel}}: Discuss KDE patch review and tools&lt;br /&gt;
| altTools=&lt;br /&gt;
* Launchpad.net offers merge review/approval pre-merge [https://code.launchpad.net/~thumper/pqm/test-bzr-home/+merge/296/] [http://news.launchpad.net/cool-new-stuff/review-branch-merge-proposals-in-launchpad] [http://news.launchpad.net/cool-new-stuff/email-interface-to-code-review]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
In general KDE does not have a formal patch review policy for individual&lt;br /&gt;
patches. Some patches do get reviewed prior to committing to svn by the&lt;br /&gt;
relevant mailing lists. This is the case for particularly large patches&lt;br /&gt;
or patches by new developers.&lt;br /&gt;
&lt;br /&gt;
As an official policy kdereview is used to review new applications and&lt;br /&gt;
new classes for kdelibs prior to inclusion in KDE trunk. A drawback of&lt;br /&gt;
this system is that not all reviewers report that they have reviewed the&lt;br /&gt;
new content. It may make sense to have a checklist for reviewers to use,&lt;br /&gt;
eg,&lt;br /&gt;
&lt;br /&gt;
* All new classes documented [x]&lt;br /&gt;
* Private classes and d-pointers used where appropriate [x]&lt;br /&gt;
* Passes all krazy checks [ ]&lt;br /&gt;
* No obvious security concerns [ ]&lt;br /&gt;
* Designed well/maintainable [ ]&lt;br /&gt;
* etc...&lt;br /&gt;
&lt;br /&gt;
This was discussed to some extent [http://thread.gmane.org/gmane.comp.kde.devel.core/54213 here], but has not yet been refined into a techbase page.&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Commit review (after commit)&lt;br /&gt;
| currentState=&lt;br /&gt;
* {{KDEML|kde-commits}} mailing list records all commits to KDE svn.&lt;br /&gt;
* The [http://commit-filter.org commit filter] is used to filter relevant commits based on path of the commit.&lt;br /&gt;
* SVN &amp;lt;tt&amp;gt;CCMAIL:&amp;lt;/tt&amp;gt; feature used to notify relevant mailing lists or individuals of specific commits.&lt;br /&gt;
* SVN &amp;lt;tt&amp;gt;BUG:&amp;lt;/tt&amp;gt; feature used to close bugs, and also notifies all bug subscribers of the commit.&lt;br /&gt;
* SVN &amp;lt;tt&amp;gt;CCBUG:&amp;lt;/tt&amp;gt; feature used to notify closed bugs of updates. Commonly used when porting fixes between branches. Also notifies all bug subscribers of the commit.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-commits}}&lt;br /&gt;
| altTools=&lt;br /&gt;
* Unknown&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The commit filter is used by several projects to forward all commits to the relevant mailing list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Design Review&lt;br /&gt;
| currentState=&lt;br /&gt;
Design review takes place on&lt;br /&gt;
* mailing lists&lt;br /&gt;
* project wikis&lt;br /&gt;
* face-to-face/BOF sessions and sprints&lt;br /&gt;
* kdereview&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-core-devel}} is used to announce new additions to kdereview.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
KDE does not have an offical design review process. Some design review takes place as part of the kdereview process. It may be possible to further formalise this or encourage design documentation.&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Technical documentation&lt;br /&gt;
| currentState=&lt;br /&gt;
* http://techbase.kde.org&lt;br /&gt;
* http://wiki.kde.org&lt;br /&gt;
* http://wiki.koffice.org&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-www}}&lt;br /&gt;
| people=&lt;br /&gt;
* [[User:Danimo|Danimo]] is the MediaWiki admin for techbase.kde.org.&lt;br /&gt;
| futureWork=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
techbase.kde.org is a [http://www.mediawiki.org MediaWiki] powered site used for collaborating on technical tasks such as tutorials, schedules, and project information. wiki.kde.org is a tiki-wiki site with the same function. Both are actively used. It might make sense to merge the two sites.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=API documentation&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://www.stack.nl/~dimitri/doxygen/ Doxygen] is used to generate api documentation from documentation strings in code.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* [[Development/Tutorials/API_Documentation|APIDOX tutorials]] Make KDE API docs better.&lt;br /&gt;
| people=&lt;br /&gt;
* [http://www.kdedevelopers.org/blog/1451 Allen Winter] administers api.kde.org.&lt;br /&gt;
| altTools=&lt;br /&gt;
* [http://labs.trolltech.com/blogs/2008/06/20/introducing-doxygen2qthelp-create-qch-files-from-doxygen-finally/ doxygen2qthelp] used by trolltech to create qt documentation.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
KDE API documentation is generated nightly and hosted on http://api.kde.org. It is also possible to generate the same documentation locally for use in an IDE for example.&lt;br /&gt;
&lt;br /&gt;
It is possible to create [http://www.kdedevelopers.org/node/3010 man pages] and [http://thread.gmane.org/gmane.comp.kde.devel.core/55578 qthelp documentation] from kde sources.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=User documentation&lt;br /&gt;
| currentState=&lt;br /&gt;
* http://userbase.kde.org&lt;br /&gt;
* [http://i18n.kde.org/docs/doc-primer/check-docs.html meinproc] is used to generate user documentation.&lt;br /&gt;
* {{KDEML|kde-docbook}} Records all SVN commits with the &amp;lt;tt&amp;gt;GUI&amp;lt;/tt&amp;gt; magic word.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* http://userbase.kde.org Create tutorials and tips.&lt;br /&gt;
* {{KDEML|kde-doc-english}} Used to coordinate user documentation.&lt;br /&gt;
* {{KDEML|kde-docbook}} Help update documentation after GUI changes.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
User documentation is generated from module doc/ folders and hosted on http://docs.kde.org.&lt;br /&gt;
&lt;br /&gt;
meinproc is a KDE tool (written by Stephen Kulow which uses libxslt to transform docbook into (bzipped) html. At runtime kio_help opens that bzipped html and displays it to the user in khelpcenter.&lt;br /&gt;
&lt;br /&gt;
http://userbase.kde.org is intended to be the primary source of user documentation on the web. Content will possibly be packaged for offline use in the future.&lt;br /&gt;
&lt;br /&gt;
== Testing and Quality ==&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Bug tracking&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://bugs.kde.org/ Bugzilla 3.0.x].&lt;br /&gt;
* KBugBuster&lt;br /&gt;
| people=&lt;br /&gt;
* [http://mattr.info:8080/blog/?s=bugzilla Matt Rogers] and the KDE sysadmin team maintain the KDE bugzilla installation.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-core-devel}} Discuss alternative bug trackers for KDE.&lt;br /&gt;
* {{KDEML|kde-bugs-dist}} Records all updates on bugs.kde.org.&lt;br /&gt;
* {{KDEML|kdelibs-bugs}} Records all updates to kdelibs bugs.&lt;br /&gt;
* {{KDEML|konq-bugs}} Records all updates to konqueror bugs.&lt;br /&gt;
* {{KDEML|kdevelop-bugs}} Records all updates to kdevelop bugs.&lt;br /&gt;
* {{KDEML|amarok-bugs-dist}} Records all updates to amarok bugs.&lt;br /&gt;
| altTools=&lt;br /&gt;
* https://bugs.launchpad.net, [http://www.sourcecode.de/content/leonov-launchpad-desktop-client-first-coming Leonev]&lt;br /&gt;
* [http://trac.edgewall.org/ trac]&lt;br /&gt;
* [http://www.redmine.org/ Redmine] - kind of &amp;quot;Trac on Rails&amp;quot;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Bug tracking in KDE currently is managed using Bugzilla 3.0. Work was recently merged on a transition to Bugzilla 3.0 from Bugzilla 2.16.  There is still cleanup work going on but most features of the previous Bugzilla installation already work.&lt;br /&gt;
&lt;br /&gt;
Bugzilla can be difficult to use and daunting to newbies.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Static code analysis&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://www.englishbreakfastnetwork.org/krazy/ Krazy] hosted at EnglishBreakfastNetwork (EBN).&lt;br /&gt;
* [http://www.coverity.com/ Coverity] is used to find possible sources of defects and suggested optimizations. Results are displayed per module as part of [http://ktown.kde.org/~dirk/dashboard/ Dirks Dashboard builds].&lt;br /&gt;
| people=&lt;br /&gt;
* [http://people.fruitsalad.org/adridg/bobulate/ Adriaan de Groot]&lt;br /&gt;
* [http://www.kdedevelopers.org/blog/1451 Allen Winter]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
*&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Additional checks are always welcome for adding to Krazy. See http://websvn.kde.org/trunk/quality/.&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Build testing&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://developer.kde.org/~dirk/dashboard/ Continuous build server] reports broken builds on linux.&lt;br /&gt;
* [http://www.cdash.org/CDash/index.php?project=kdelibs CDash build server] stores results of non-linux builds for kdelibs.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-core-devel}} Find out how to submit test build results.&lt;br /&gt;
| people=&lt;br /&gt;
* [http://wire.dattitu.de/authors/2-Dirk Dirk Mueller] maintains the dashboard&lt;br /&gt;
* Bill Hoffman is involved with the kitware CDash service.&lt;br /&gt;
* http://www.cdash.org/mailinglist.html&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
There is interest in more build testing for KDE especially on non-linux platforms. Improvements include some standard ctest scripts that can be used to build and submit a dashboard result for kdelibs to CDash. This would be run on a cronjob for simplicity.&lt;br /&gt;
&lt;br /&gt;
Builds are planned for the following platforms:&lt;br /&gt;
&lt;br /&gt;
* Windows&lt;br /&gt;
* MacOS&lt;br /&gt;
* FreeBSD 6 (gcc)&lt;br /&gt;
* FreeBSD 7 (gcc)&lt;br /&gt;
* Solaris (S10, S11) on SPARC and amd64&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Unit testing&lt;br /&gt;
| currentState=&lt;br /&gt;
[[Development/Tutorials/Unittests|Unit tests]] may be written with the QTest framework. Tests can be run with the command '&amp;lt;tt&amp;gt;make test&amp;lt;/tt&amp;gt;'.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* [[Development/Tutorials/Unittests|Techbase Unit tests tutorial]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
It may be possible run run these tests automatically possibly on EBN or on Dirks dashboard.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Quality testing&lt;br /&gt;
| currentState=&lt;br /&gt;
* The early adopter/user community&lt;br /&gt;
* [http://www.sqo-oss.eu/news/coverage/sqo-oss-project-launched-with-kde SQO-OSS]&lt;br /&gt;
| people=&lt;br /&gt;
* [http://people.fruitsalad.org/adridg/bobulate/ Adriaan de Groot]&lt;br /&gt;
* [http://hemswell.lincoln.ac.uk/~padams/index.php Paul Adams]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It may be possible to obtain metrics such as bugs per kloc, defect injection rate etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Profiling and Optimizations&lt;br /&gt;
| currentState=&lt;br /&gt;
* {{KDEML|kde-optimize}} mailing list coordinates optimizations in KDE.&lt;br /&gt;
* Krazy and Coverity tools also include some optimization checks.&lt;br /&gt;
* KDE macros for optimization of common algorithms.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-optimize}}&lt;br /&gt;
* [http://ktown.kde.org/~dirk/dashboard/4.1/i386/kdelibs.html Coverity report for KDE libs].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Tutorials may be provided in the future to help developers optimize their code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Accessibility and Usability&lt;br /&gt;
| currentState=&lt;br /&gt;
* http://usability.kde.org/&lt;br /&gt;
* http://openusability.org/projects.php&lt;br /&gt;
* Season of usability&lt;br /&gt;
| people=&lt;br /&gt;
* [http://weblog.obso1337.org/ Celeste Lyn Paul]&lt;br /&gt;
* [http://ellen.reitmayr.net/index.php/blog Ellen Reitmayr]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-usability}}&lt;br /&gt;
* [[Projects/Usability/HIG KDE Human interaction Guidelines]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Research&lt;br /&gt;
| currentState=&lt;br /&gt;
* http://research.kde.org&lt;br /&gt;
* [http://www.sqo-oss.eu/news/coverage/sqo-oss-project-launched-with-kde SQO-OSS]&lt;br /&gt;
* http://nepomuk.kde.org/ Semantic desktop project funded by the EU.&lt;br /&gt;
| people=&lt;br /&gt;
* [http://people.fruitsalad.org/adridg/bobulate/ Adriaan de Groot]&lt;br /&gt;
* [http://www.kdedevelopers.org/blog/2904 Sebastian Trueg] leads the kde-nepomuk project.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* [http://lists.semanticdesktop.org/mailman/listinfo/nepomuk-kde Nepomuk KDE mailing list]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Marketing and Expectations ==&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Requirements Gathering&lt;br /&gt;
| currentState=&lt;br /&gt;
* Requirements come from user feedback on http://bugs.kde.org and from commercial interests.&lt;br /&gt;
* Developers may do some research into requirements for applications based on User Research Profiles.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* http://bugs.kde.org Fill new wishlist items.&lt;br /&gt;
* {{KDEML|kde-core-devel}} Discuss new ways for kde to gather requirements.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Promotion&lt;br /&gt;
| currentState=&lt;br /&gt;
* The {{KDEML|kde-promo|KDE marketing team}} manage marketing and promotion from official kde sources.&lt;br /&gt;
* http://dot.kde.org is the community forum around promotional announcements.&lt;br /&gt;
* http://www.kde.org/announcements is the official source of promotional announcements regarding KDE.&lt;br /&gt;
* Design and maintenance of KDE websites is organised on the [https://mail.kde.org/mailman/listinfo/kde-www kde-www mailing list]&lt;br /&gt;
* The [http://ev.kde.org/workinggroups/mwg.php Marketing working group] coordinates several marketing efforts such as promoting planning and branding.&lt;br /&gt;
* KDE e.v provides a booth box for conference booths containing posters, leaftlets and other information needed at a conference stand.&lt;br /&gt;
| people=&lt;br /&gt;
* [http://wadejolson.wordpress.com/ Wade Olsen]&lt;br /&gt;
* [http://troy-at-kde.livejournal.com/ Troy Unrau]&lt;br /&gt;
* [http://nowwhatthe.blogspot.com/ Jos Poortvliet]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-promo}}&lt;br /&gt;
* [http://dot.kde.org/addPostingForm Submit dot articles]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Community management&lt;br /&gt;
| currentState=&lt;br /&gt;
* The Community Working Group helps with community advice when needed&lt;br /&gt;
* [http://www.kde.org/code-of-conduct/ Code of Conduct] Based on the Ubuntu Code of Conduct, documents guidelines for acceptable behaviour within the community. Can be summarized as 'Be Excellent to Eachother'.&lt;br /&gt;
* http://community.kde.org. In development website.&lt;br /&gt;
| people=&lt;br /&gt;
* Anne Willson&lt;br /&gt;
* [http://jucato.org Juan Carlos Torres]&lt;br /&gt;
* [http://lydiapintscher.de Lydia Pintscher]&lt;br /&gt;
* Martin Fitzpatrick&lt;br /&gt;
* [http://omat.nl Tom Albers]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* Send an e-mail to community-wg@kde.org&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Communication&lt;br /&gt;
| currentState=&lt;br /&gt;
Developers communicate with each other through&lt;br /&gt;
* [http://lists.kde.org/ mailing lists]&lt;br /&gt;
* [http://searchirc.com/irc-kde-1 IRC]&lt;br /&gt;
* [http://planetkde.org Blogs]&lt;br /&gt;
* Conferences&lt;br /&gt;
Developers communicate with users though&lt;br /&gt;
* [http://planetkde.org Blogs] to some extent (mainly early adopting users).&lt;br /&gt;
* [http://forum.kde.org Forums] to some extent where the developer chooses to.&lt;br /&gt;
* [http://dot.kde.org News announcements]&lt;br /&gt;
Users communicate with each other and developers through&lt;br /&gt;
* [http://forum.kde.org Forums]&lt;br /&gt;
* {{KDEML|kde}} mailing list&lt;br /&gt;
* #kde irc channel.&lt;br /&gt;
| people=&lt;br /&gt;
* [http://c133.org/blog/ Chris Lee] administers planetkde.org&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* Add your blog to planet kde if you contribute to KDE in some way, including development, testing, advocacy, translation, documentation etc.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Release ==&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Release Scheduling&lt;br /&gt;
| currentState=&lt;br /&gt;
* Maintained at [[Schedules]].&lt;br /&gt;
| people=&lt;br /&gt;
*&lt;br /&gt;
* [http://cyrilleberger.blogspot.com/ Cyrill Berger] - KOffice release coordinator.&lt;br /&gt;
* [http://www.kdedevelopers.org/blog/1451 Allen Winter] - KDEPIM release coordinator.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|release-team}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Feature planning&lt;br /&gt;
| currentState=&lt;br /&gt;
* [[Schedules/KDE4/4.1_Feature_Plan]]&lt;br /&gt;
* [[Schedules/KDE4/4.2_Feature_Plan]]&lt;br /&gt;
| people=&lt;br /&gt;
[https://mail.kde.org/mailman/listinfo/release-team The KDE release team]&lt;br /&gt;
| altTools=&lt;br /&gt;
* Launchpad.net offers a blueprints system.&lt;br /&gt;
* [http://wiki.pentaho.com/display/OpenScrum/Home Scrum in Open Source Projects]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-core-devel}} - Discuss the KDE approach to feature planning.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Currently techbase is used for feature planning but there may be better alternatives.&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Downstream packagers and contributions&lt;br /&gt;
| currentState=&lt;br /&gt;
* Many distributions package KDE3 &amp;amp; KDE4.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-packagers}} - Private mailing list for packagers. Includes information relating to security releases.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Theming and Translations ==&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Artwork&lt;br /&gt;
| currentState=&lt;br /&gt;
* The {{KDEML|kde-artists|kde-artists team}} creates offical artwork for KDE.&lt;br /&gt;
* kde-look.org for non-offical artwork.&lt;br /&gt;
| people=&lt;br /&gt;
* [http://pinheiro-kde.blogspot.com/ Nuno Pinheiro]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-artists}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Additional contributed artwork is available on http://kde-look.org.&lt;br /&gt;
&lt;br /&gt;
There may be a need to create tutorials on how to create artwork for kde.&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Translation&lt;br /&gt;
| currentState=&lt;br /&gt;
* http://i18n.kde.org/ is used for level of completion of translations in KDE.&lt;br /&gt;
* GNU gettext is used for translation in KDE.&lt;br /&gt;
* &amp;lt;tt&amp;gt;.po&amp;lt;/tt&amp;gt; files are edited directly in KDE svn to update translations.&lt;br /&gt;
* A kde4 based translation client (lokalize) is being developed in kdesdk/.&lt;br /&gt;
* Krazy includes sanity checks/plurals checking for translation.&lt;br /&gt;
| altTools=&lt;br /&gt;
launchpad.net features a web-based tool called rosetta, which allows for easier fly-by translations. This is considered not to be useful as fly-by translators often do not follow guidelines or consistency rules when translating.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-i18n-doc}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Legal And Support ==&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=KDE e.v. - Representative Legal Entity&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://ev.kde.org KDE e.v] is a registered non-profit organization that represents the KDE Project in legal and financial matters.&lt;br /&gt;
| altTools= N/A&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* [http://ev.kde.org/getinvolved/ KDE e.v. membership]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Resolving licencing issues.&lt;br /&gt;
| currentState=&lt;br /&gt;
* A [http://ev.kde.org/announcements/2008-08-22-fsfe-welcomes-fla.php Fiduicary Licence Agreement] is available, which will allow KDE developers to optionally assign copyright of their contributions to KDE e.v. This would allow easier relicencing of contributors content in the event that KDE needs to move to another licence. It also allows the e.v. to more easily represent the work in the unlikely event of a court dispute involving KDE code.&lt;br /&gt;
* [[Policies/Licensing_Policy|KDE licencing policy]] allows commercial and non-commercial development and proprietry and non-proprietry development.&lt;br /&gt;
* [[Projects/KDE_Relicensing|Projects/KDE_Relicensing]] Effort to relicence KDE code to use version 3 of GNU GPL and LGPL. This work is unfinished but not still being performed. Many contributors are no longer contactable.&lt;br /&gt;
| altTools= N/A&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Sponsorship and Patronship&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://ev.kde.org/supporting-members.php Supporters of KDE] contribute sponsorship money to KDE e.v.&lt;br /&gt;
* http://ev.kde.org/getinvolved/supporting-members.php&lt;br /&gt;
| altTools= N/A&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Policies/Suggested_Review_Criteria</id>
		<title>Policies/Suggested Review Criteria</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Policies/Suggested_Review_Criteria"/>
				<updated>2008-10-30T13:34:51Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Security */ Small note about sql injection.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Code review should be constructive and specific. These criteria are a&lt;br /&gt;
guideline for what reviewers should consider when reviewing new code. This is '''not''' a strict prerequisite to be completed before review. They are just for information purposes to be aware of what aspects of new code have actually been reviewed, and what has not. It is a list of suggestions for reviewers to record the criteria they're reviewing, rather than another barrier for developers of new applications and libraries to worry about. For example a reviewer does not have to test the new code on all platforms or compilers, but can say which ones were tested if more than the most common linux/gcc. See origins [http://thread.gmane.org/gmane.comp.kde.devel.core/54213 here]. &lt;br /&gt;
&lt;br /&gt;
All criteria do not all have to be completed, and additional criteria can optionally be defined by the reviewer. The desired result of a review is that the reviewer states whether the code is of enough quality as it is now, or whether changes are necessary, and what criteria were considered in making&lt;br /&gt;
that assessment.&lt;br /&gt;
&lt;br /&gt;
== Library And Application Code ==&lt;br /&gt;
&lt;br /&gt;
=== General ===&lt;br /&gt;
* The application / library works and performs the expected function.&lt;br /&gt;
* The library / application uses existing kdelibs classes where appropriate instead of reinventing the wheel.&lt;br /&gt;
* The application includes all necessary cmake checks for locating dependencies.&lt;br /&gt;
* Qt classes are not used where a KDE class is more appropriate (KFileDialog vs QDFileDialog, QHttp vs KIO etc).&lt;br /&gt;
&lt;br /&gt;
=== Maintainability ===&lt;br /&gt;
* The application / library is designed for maintainability and is consistent with KDE standards and norms.&lt;br /&gt;
* Complex algorithms and optimizations are sufficiently commented to be understandable.&lt;br /&gt;
* Methods are public, protected, virtual and const as appropriate.&lt;br /&gt;
* Dependencies are still in active development&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
* The application / library has no obvious security flaws.&lt;br /&gt;
* html entities ('&amp;lt;', '&amp;gt;', '&amp;quot;', '&amp;amp;') accepted from external sources are encoded.&lt;br /&gt;
* All places where the application launches external programs should be checked.&lt;br /&gt;
* Any SQL queries processing untrusted data should be checked. Queries need to be escaped appropriately to avoid sql injection.&lt;br /&gt;
&lt;br /&gt;
=== Quality ===&lt;br /&gt;
* The application / library passes all krazy tests. All exceptions in a .krazy file are justified.&lt;br /&gt;
* Exception handling is done right.&lt;br /&gt;
* Classes are threadsafe where appropriate.&lt;br /&gt;
* Appropriate data structures are used ( eg, QMap or QHash etc)&lt;br /&gt;
&lt;br /&gt;
=== Portability ===&lt;br /&gt;
* The new code has no unnecessary platform specific code, such as reading /proc etc. This does not apply to new code which is relevant only on specific platforms.&lt;br /&gt;
* The new code uses syntax which compiles on all supported compilers, free from gcc-isms etc.&lt;br /&gt;
* The application compiles and runs on Windows, Mac, BSD, Solaris.&lt;br /&gt;
&lt;br /&gt;
=== Documentation and comments ===&lt;br /&gt;
* Comments in the code are appropriate and not excessive.&lt;br /&gt;
* Application user documentation is written.&lt;br /&gt;
&lt;br /&gt;
=== Style ===&lt;br /&gt;
* Coding style in consistent with the rest of the library / module. Some modules (kdepim, kdelibs) have style rules to conform to, but most do not.&lt;br /&gt;
* Variable names are consistent with the target module or library module. (m or m_ prefix, camel casing, descriptive variable names instead of a, b and c2 etc)&lt;br /&gt;
* There are no excessively large methods. Methods longer than 40 lines can be broken into multiple methods if possible.&lt;br /&gt;
* There are no excessively long lines. for lines greater than 80 characters it might be possible to use intermediate variables more.&lt;br /&gt;
&lt;br /&gt;
=== i18n and i10n ===&lt;br /&gt;
* One word strings use context for translation&lt;br /&gt;
* Strings are free from word puzzles (see [[Development/Tutorials/Localization/i18n_Mistakes]])&lt;br /&gt;
* The KUIT system is used [[Development/Tutorials/Localization/i18n_Semantics]].&lt;br /&gt;
&lt;br /&gt;
== Libraries Only ==&lt;br /&gt;
=== Maintainability ===&lt;br /&gt;
* All public classes use a private d-pointer class.&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
* All public methods are documented.&lt;br /&gt;
* Private methods and classes are documented where necessary and marked as @internal.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Policies/Application_Lifecycle</id>
		<title>Policies/Application Lifecycle</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Policies/Application_Lifecycle"/>
				<updated>2008-10-30T13:30:39Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Stage 2: Stable */ Add link to Suggested_Review_Criteria page.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;When you want to start a new application (or remove an old application), you want to know where you should place it in the Subversion repository. This document describes where to go in which stage of your application.&lt;br /&gt;
&lt;br /&gt;
See [[#Stage 3: The end]] for instructions on how to deal with old, unmaintained applications.&lt;br /&gt;
&lt;br /&gt;
In a diagram it all comes down to:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:svnguidelines.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Stage 1: The start ===&lt;br /&gt;
The start of a new application can take place on a local disk, in a local repository or any other way. Another option is provided by KDE in the special {{path|/trunk/playground}} folder in the repository where everyone is free to commit ones own application. You can [[Contribute/Get_a_SVN_Account | request an SVN account]] and after that you can import your project in the subfolder of your choice. Applications in playground are organized in folders like KDE is itself. For example, games are in {{path|/trunk/playground/games}}. In each of these folders, there is a {{path|doc}} folder where you should put the docbook documentation of your application.&lt;br /&gt;
&lt;br /&gt;
It is not meant as a backup area, so you should not develop your application somewhere else and only sync the changes now and then to KDE's repository.&lt;br /&gt;
&lt;br /&gt;
As soon as you start releasing your software and match the criteria for the next stage, you should consider moving your application folder to the next stage. When doing this move, don't forget to move also its documentation folder. &lt;br /&gt;
&lt;br /&gt;
Because playground is something like an 'experimental' area, there is only a small amount of applications that make it to the next stage. To keep the playground area accessible and a bit organized, we have created a {{path|/tag/unmaintained/N}} (where 'N' is the KDE  major version the application was written for; e.g. 4 for KDE4 applications). If you do not want to continue your application, move it to that place in the repository. If you do not know how, contact the current contactperson which is mentioned at the bottom of this document.&lt;br /&gt;
&lt;br /&gt;
Whenever an application has not received a commit for one complete year, you will be contacted via email to discuss if you want to continue the application or if it has died. In the latter case or when the email bounces, it will be moved to {{path|/tag/unmaintained/N/}}.&lt;br /&gt;
&lt;br /&gt;
=== Stage 2: Stable ===&lt;br /&gt;
When you have made one of more releases and want to continue to develop it, the term 'playground' does no longer apply to you. That is the right time to move out of here. There are two options to move to: extragear and one of the KDE main modules. If you want to move to one of the KDE main modules, you will get released with KDE. That also means you have to respect that release schedule. The fact you want your program in KDE main modules is not enough and others have to agree is valuable to have it. &lt;br /&gt;
In extragear you are on your own. You make the releases whenever you want and you have to talk to the translators about your release schedule. In the future it might be possible to be released together with the KDE main modules. But at this moment this is not possible.&lt;br /&gt;
&lt;br /&gt;
Whatever you choose, there are some rules to follow before you are allowed to move to either location: &lt;br /&gt;
* There should be user documentation in docbook format. If you need help, you can ask for help to the KDE Documentation team: [https://mail.kde.org/mailman/listinfo/kde-doc-english kde-doc-english@kde.org].&lt;br /&gt;
* There should be developers documentation in the form of apidox for libraries you can check this at [http://www.englishbreakfastnetwork.org/ ebn]&lt;br /&gt;
* There should be no krazy code checker issues reported. Again, you can check that at [http://www.englishbreakfastnetwork.org/ ebn]. There is also a [[Development/Tutorials/Code_Checking|tutorial on using Krazy]] available here on TechBase.&lt;br /&gt;
* If possible, there should have been a basic usability review of your application. Usability people are hard to get, so this is not crucial.&lt;br /&gt;
* You should have checked for basic problems with a profiler. I hope we will get a tutorial on how to do this soon&lt;br /&gt;
* Your application should be [[Development/Tutorials/Localization/i18n|completely translatable]]. &lt;br /&gt;
&lt;br /&gt;
When you decide you want to move to this second stage, move your application to {{path|/trunk/kdereview}} and announce the move on '''kde-core-devel@kde.org'''. In the announcement address the above issues and state where you want your application to move to (which KDE main module or extragear). Extragear only requires general approval on kde-core-devel. A main module requires approval from the community who manages that module (e.g. the kdepim module requires approval from the kdepim community). Don't forget to move the documentation of your application to {{path|/trunk/kdereview/doc}}. Some suggestions for reviewers to consider when reviewing new applications and library code are on [[Policies/Suggested_Review_Criteria]].&lt;br /&gt;
&lt;br /&gt;
The move to kdereview starts a two week review period during which the community can object to your proposal or request additional changes. If there are no objections or requested changes after this two week period, you are allowed to move your application to the place you requested. If your intention is to move to a main module you must additionally get approval from the [[Projects/Release_Team#Module_Coordinators|module coordinator(s)]] who manage that module.&lt;br /&gt;
&lt;br /&gt;
If changes are requested, you can leave your application in kdereview while you are actively working on those issues. If you lack the time to work on the changes, move your application back to playground. Once the requested changes are completed, announce to kde-core-devel that you have completed the requested changes and wait for another week for objections.&lt;br /&gt;
&lt;br /&gt;
Kdereview is only meant as a transitional place from playground to the main modules or extrager. In no case can kdereview be a permanent place to develop your application.&lt;br /&gt;
&lt;br /&gt;
=== Stage 3: The end ===&lt;br /&gt;
Whenever you decide to stop developing the application and that leaves the application without developers, please announce that to kde-core-devel. If nobody stands up to take over maintainership within two weeks, the application has to be moved to the {{path|/trunk/unmaintained/N/}} area as every application in the KDE main modules and in extragear needs to have a maintainer to stay there.&lt;br /&gt;
&lt;br /&gt;
=== Translations ===&lt;br /&gt;
For each move in subversion, the translation files of each language need to move as well. Because this requires a complete checkout of the l10n folder and some knowledge about the structure, you can ask the release-team ('''release-team@kde.org''') to move them. Send a simple mail with the information required to do the move, for example: 'move {{path|/playground/somewhere/someapp}} to {{path|/kdereview/someapp}}'.&lt;br /&gt;
If you want to help out with these kinds of moves, please send a mail! You are welcome to help out.&lt;br /&gt;
&lt;br /&gt;
=== Contact ===&lt;br /&gt;
If you need any help regarding this, please contact Tom Albers ('''tomalbers@kde.nl''')&lt;br /&gt;
&lt;br /&gt;
[[Category:Policies]]&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Policies/Suggested_Review_Criteria</id>
		<title>Policies/Suggested Review Criteria</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Policies/Suggested_Review_Criteria"/>
				<updated>2008-10-30T13:28:27Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Suggested criteria to consider when reviewing new code for KDE.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Code review should be constructive and specific. These criteria are a&lt;br /&gt;
guideline for what reviewers should consider when reviewing new code. This is '''not''' a strict prerequisite to be completed before review. They are just for information purposes to be aware of what aspects of new code have actually been reviewed, and what has not. It is a list of suggestions for reviewers to record the criteria they're reviewing, rather than another barrier for developers of new applications and libraries to worry about. For example a reviewer does not have to test the new code on all platforms or compilers, but can say which ones were tested if more than the most common linux/gcc. See origins [http://thread.gmane.org/gmane.comp.kde.devel.core/54213 here]. &lt;br /&gt;
&lt;br /&gt;
All criteria do not all have to be completed, and additional criteria can optionally be defined by the reviewer. The desired result of a review is that the reviewer states whether the code is of enough quality as it is now, or whether changes are necessary, and what criteria were considered in making&lt;br /&gt;
that assessment.&lt;br /&gt;
&lt;br /&gt;
== Library And Application Code ==&lt;br /&gt;
&lt;br /&gt;
=== General ===&lt;br /&gt;
* The application / library works and performs the expected function.&lt;br /&gt;
* The library / application uses existing kdelibs classes where appropriate instead of reinventing the wheel.&lt;br /&gt;
* The application includes all necessary cmake checks for locating dependencies.&lt;br /&gt;
* Qt classes are not used where a KDE class is more appropriate (KFileDialog vs QDFileDialog, QHttp vs KIO etc).&lt;br /&gt;
&lt;br /&gt;
=== Maintainability ===&lt;br /&gt;
* The application / library is designed for maintainability and is consistent with KDE standards and norms.&lt;br /&gt;
* Complex algorithms and optimizations are sufficiently commented to be understandable.&lt;br /&gt;
* Methods are public, protected, virtual and const as appropriate.&lt;br /&gt;
* Dependencies are still in active development&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
* The application / library has no obvious security flaws.&lt;br /&gt;
* html entities ('&amp;lt;', '&amp;gt;', '&amp;quot;', '&amp;amp;') accepted from external sources are encoded.&lt;br /&gt;
* All places where the application launches external programs should be checked.&lt;br /&gt;
* Any SQL queries processing untrusted data should be checked.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Quality ===&lt;br /&gt;
* The application / library passes all krazy tests. All exceptions in a .krazy file are justified.&lt;br /&gt;
* Exception handling is done right.&lt;br /&gt;
* Classes are threadsafe where appropriate.&lt;br /&gt;
* Appropriate data structures are used ( eg, QMap or QHash etc)&lt;br /&gt;
&lt;br /&gt;
=== Portability ===&lt;br /&gt;
* The new code has no unnecessary platform specific code, such as reading /proc etc. This does not apply to new code which is relevant only on specific platforms.&lt;br /&gt;
* The new code uses syntax which compiles on all supported compilers, free from gcc-isms etc.&lt;br /&gt;
* The application compiles and runs on Windows, Mac, BSD, Solaris.&lt;br /&gt;
&lt;br /&gt;
=== Documentation and comments ===&lt;br /&gt;
* Comments in the code are appropriate and not excessive.&lt;br /&gt;
* Application user documentation is written.&lt;br /&gt;
&lt;br /&gt;
=== Style ===&lt;br /&gt;
* Coding style in consistent with the rest of the library / module. Some modules (kdepim, kdelibs) have style rules to conform to, but most do not.&lt;br /&gt;
* Variable names are consistent with the target module or library module. (m or m_ prefix, camel casing, descriptive variable names instead of a, b and c2 etc)&lt;br /&gt;
* There are no excessively large methods. Methods longer than 40 lines can be broken into multiple methods if possible.&lt;br /&gt;
* There are no excessively long lines. for lines greater than 80 characters it might be possible to use intermediate variables more.&lt;br /&gt;
&lt;br /&gt;
=== i18n and i10n ===&lt;br /&gt;
* One word strings use context for translation&lt;br /&gt;
* Strings are free from word puzzles (see [[Development/Tutorials/Localization/i18n_Mistakes]])&lt;br /&gt;
* The KUIT system is used [[Development/Tutorials/Localization/i18n_Semantics]].&lt;br /&gt;
&lt;br /&gt;
== Libraries Only ==&lt;br /&gt;
=== Maintainability ===&lt;br /&gt;
* All public classes use a private d-pointer class.&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
* All public methods are documented.&lt;br /&gt;
* Private methods and classes are documented where necessary and marked as @internal.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Software_Engineering_Framework</id>
		<title>Development/Software Engineering Framework</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Software_Engineering_Framework"/>
				<updated>2008-10-29T20:34:24Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Many changes and updates&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is intended to be a summary of the tools and processes used by the KDE&lt;br /&gt;
project for Software Engineering tasks, i.e. everything around coding&lt;br /&gt;
work. This includes bugfixing, review, testing, documentation,&lt;br /&gt;
requirements etc.&lt;br /&gt;
&lt;br /&gt;
The current tool used by KDE should be listed along with the extent of&lt;br /&gt;
its use, known alternatives, and advantages/disadvantages.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Development Tools ==&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Source Control&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://websvn.kde.org/ Subversion 1.4]&lt;br /&gt;
| people=&lt;br /&gt;
The kde sysadmin team:&lt;br /&gt;
* [http://wire.dattitu.de/authors/2-Dirk Dirk Müller]&lt;br /&gt;
* [http://www.kdab.net/~dfaure/ David Faure]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-scm-interest}}&lt;br /&gt;
| altTools=&lt;br /&gt;
* [http://git.or.cz/ git], repo&lt;br /&gt;
* [http://bazaar-vcs.org/ bazaar]&lt;br /&gt;
* [http://www.selenic.com/mercurial/ mercurial]&lt;br /&gt;
* [[Projects/GitoriousKDE|Gitorious]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Subversion 1.4 is currently used for source control management in KDE on&lt;br /&gt;
a server hosted in Frankfurt. A separate server is used for access to&lt;br /&gt;
the read-only mirror anonsvn.kde.org.&lt;br /&gt;
&lt;br /&gt;
There is interest in migrating to a distributed source control&lt;br /&gt;
management tool, such as GIT. Discussion of this is taking place on the&lt;br /&gt;
{{KDEML|kde-scm-interest}}&lt;br /&gt;
mailing list. It is likely git will be used along with a tool such as repo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Build System&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://www.cmake.org/ CMake 2.6.0]&lt;br /&gt;
* [http://api.kde.org/cmake/modules.html Custom CMake module documentation]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-buildsystem}}&lt;br /&gt;
| people=&lt;br /&gt;
* [http://www.kdedevelopers.org/blog/531 Alexander Neundorf]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CMake is the build tool currently used by KDE. It is Free Software&lt;br /&gt;
developed by [http://www.kitware.com/ kitware inc] and available on&lt;br /&gt;
multiple platforms supported by KDE.&lt;br /&gt;
&lt;br /&gt;
This tool was chosen as the buildsystem for the KDE4 series, and there&lt;br /&gt;
are no plans currently to migrate away from it. CMake version 2.6.2 will be required to build KDE 4.2 final.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Identifier search&lt;br /&gt;
| currentState=&lt;br /&gt;
http://lxr.kde.org&lt;br /&gt;
| people=&lt;br /&gt;
The kde sysadmin team:&lt;br /&gt;
* [http://wire.dattitu.de/authors/2-Dirk Dirk Müller]&lt;br /&gt;
* [http://www.kdab.net/~dfaure/ David Faure]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[http://en.wikipedia.org/wiki/LXR_Cross_Referencer LXR] indexes classes and methods used in KDE. This can be useful for finding examples of how to use a class, and finding all uses of a class while refactoring or updating API.&lt;br /&gt;
&lt;br /&gt;
== Review ==&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Patch review (pre commit)&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://reviewboard.vidsolbach.de/ Review-board] used by plasma project.&lt;br /&gt;
* trunk/kdereview&lt;br /&gt;
| people=&lt;br /&gt;
* David Solbach and the kde sysadmin team maintain the Plasma review-board installation.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-core-devel}}: Discuss KDE patch review and tools&lt;br /&gt;
| altTools=&lt;br /&gt;
* Launchpad.net offers merge review/approval pre-merge [https://code.launchpad.net/~thumper/pqm/test-bzr-home/+merge/296/] [http://news.launchpad.net/cool-new-stuff/review-branch-merge-proposals-in-launchpad] [http://news.launchpad.net/cool-new-stuff/email-interface-to-code-review]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
In general KDE does not have a formal patch review policy for individual&lt;br /&gt;
patches. Some patches do get reviewed prior to committing to svn by the&lt;br /&gt;
relevant mailing lists. This is the case for particularly large patches&lt;br /&gt;
or patches by new developers.&lt;br /&gt;
&lt;br /&gt;
As an official policy kdereview is used to review new applications and&lt;br /&gt;
new classes for kdelibs prior to inclusion in KDE trunk. A drawback of&lt;br /&gt;
this system is that not all reviewers report that they have reviewed the&lt;br /&gt;
new content. It may make sense to have a checklist for reviewers to use,&lt;br /&gt;
eg,&lt;br /&gt;
&lt;br /&gt;
* All new classes documented [x]&lt;br /&gt;
* Private classes and d-pointers used where appropriate [x]&lt;br /&gt;
* Passes all krazy checks [ ]&lt;br /&gt;
* No obvious security concerns [ ]&lt;br /&gt;
* Designed well/maintainable [ ]&lt;br /&gt;
* etc...&lt;br /&gt;
&lt;br /&gt;
This was discussed to some extent [http://thread.gmane.org/gmane.comp.kde.devel.core/54213 here], but has not yet been refined into a techbase page.&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Commit review (after commit)&lt;br /&gt;
| currentState=&lt;br /&gt;
* {{KDEML|kde-commits}} mailing list records all commits to KDE svn.&lt;br /&gt;
* The [http://commit-filter.org commit filter] is used to filter relevant commits based on path of the commit.&lt;br /&gt;
* SVN &amp;lt;tt&amp;gt;CCMAIL:&amp;lt;/tt&amp;gt; feature used to notify relevant mailing lists or individuals of specific commits.&lt;br /&gt;
* SVN &amp;lt;tt&amp;gt;BUG:&amp;lt;/tt&amp;gt; feature used to close bugs, and also notifies all bug subscribers of the commit.&lt;br /&gt;
* SVN &amp;lt;tt&amp;gt;CCBUG:&amp;lt;/tt&amp;gt; feature used to notify closed bugs of updates. Commonly used when porting fixes between branches. Also notifies all bug subscribers of the commit.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-commits}}&lt;br /&gt;
| altTools=&lt;br /&gt;
* Unknown&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The commit filter is used by several projects to forward all commits to the relevant mailing list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Design Review&lt;br /&gt;
| currentState=&lt;br /&gt;
Design review takes place on&lt;br /&gt;
* mailing lists&lt;br /&gt;
* project wikis&lt;br /&gt;
* face-to-face/BOF sessions and sprints&lt;br /&gt;
* kdereview&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-core-devel}} is used to announce new additions to kdereview.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
KDE does not have an offical design review process. Some design review takes place as part of the kdereview process. It may be possible to further formalise this or encourage design documentation.&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Technical documentation&lt;br /&gt;
| currentState=&lt;br /&gt;
* http://techbase.kde.org&lt;br /&gt;
* http://wiki.kde.org&lt;br /&gt;
* http://wiki.koffice.org&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-www}}&lt;br /&gt;
| people=&lt;br /&gt;
* [[User:Danimo|Danimo]] is the MediaWiki admin for techbase.kde.org.&lt;br /&gt;
| futureWork=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
techbase.kde.org is a [http://www.mediawiki.org MediaWiki] powered site used for collaborating on technical tasks such as tutorials, schedules, and project information. wiki.kde.org is a tiki-wiki site with the same function. Both are actively used. It might make sense to merge the two sites.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=API documentation&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://www.stack.nl/~dimitri/doxygen/ Doxygen] is used to generate api documentation from documentation strings in code.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* [[Development/Tutorials/API_Documentation|APIDOX tutorials]] Make KDE API docs better.&lt;br /&gt;
| people=&lt;br /&gt;
* [http://www.kdedevelopers.org/blog/1451 Allen Winter] administers api.kde.org.&lt;br /&gt;
| altTools=&lt;br /&gt;
* [http://labs.trolltech.com/blogs/2008/06/20/introducing-doxygen2qthelp-create-qch-files-from-doxygen-finally/ doxygen2qthelp] used by trolltech to create qt documentation.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
KDE API documentation is generated nightly and hosted on http://api.kde.org. It is also possible to generate the same documentation locally for use in an IDE for example.&lt;br /&gt;
&lt;br /&gt;
It is possible to create [http://www.kdedevelopers.org/node/3010 man pages] and [http://thread.gmane.org/gmane.comp.kde.devel.core/55578 qthelp documentation] from kde sources.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=User documentation&lt;br /&gt;
| currentState=&lt;br /&gt;
* http://userbase.kde.org&lt;br /&gt;
* [http://i18n.kde.org/docs/doc-primer/check-docs.html meinproc] is used to generate user documentation.&lt;br /&gt;
* {{KDEML|kde-docbook}} Records all SVN commits with the &amp;lt;tt&amp;gt;GUI&amp;lt;/tt&amp;gt; magic word.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* http://userbase.kde.org Create tutorials and tips.&lt;br /&gt;
* {{KDEML|kde-doc-english}} Used to coordinate user documentation.&lt;br /&gt;
* {{KDEML|kde-docbook}} Help update documentation after GUI changes.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
User documentation is generated from module doc/ folders and hosted on http://docs.kde.org.&lt;br /&gt;
&lt;br /&gt;
meinproc is a KDE tool (written by Stephen Kulow which uses libxslt to transform docbook into (bzipped) html. At runtime kio_help opens that bzipped html and displays it to the user in khelpcenter.&lt;br /&gt;
&lt;br /&gt;
http://userbase.kde.org is intended to be the primary source of user documentation on the web. Content will possibly be packaged for offline use in the future.&lt;br /&gt;
&lt;br /&gt;
== Testing and Quality ==&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Bug tracking&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://bugs.kde.org/ Bugzilla 3.0.x].&lt;br /&gt;
* KBugBuster&lt;br /&gt;
| people=&lt;br /&gt;
* [http://mattr.info:8080/blog/?s=bugzilla Matt Rogers] and the KDE sysadmin team maintain the KDE bugzilla installation.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-core-devel}} Discuss alternative bug trackers for KDE.&lt;br /&gt;
* {{KDEML|kde-bugs-dist}} Records all updates on bugs.kde.org.&lt;br /&gt;
* {{KDEML|kdelibs-bugs}} Records all updates to kdelibs bugs.&lt;br /&gt;
* {{KDEML|konq-bugs}} Records all updates to konqueror bugs.&lt;br /&gt;
* {{KDEML|kdevelop-bugs}} Records all updates to kdevelop bugs.&lt;br /&gt;
* {{KDEML|amarok-bugs-dist}} Records all updates to amarok bugs.&lt;br /&gt;
| altTools=&lt;br /&gt;
* https://bugs.launchpad.net, [http://www.sourcecode.de/content/leonov-launchpad-desktop-client-first-coming Leonev]&lt;br /&gt;
* [http://trac.edgewall.org/ trac]&lt;br /&gt;
* [http://www.redmine.org/ Redmine] - kind of &amp;quot;Trac on Rails&amp;quot;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Bug tracking in KDE currently is managed using Bugzilla 3.0. Work was recently merged on a transition to Bugzilla 3.0 from Bugzilla 2.16.  There is still cleanup work going on but most features of the previous Bugzilla installation already work.&lt;br /&gt;
&lt;br /&gt;
Bugzilla can be difficult to use and daunting to newbies.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Static code analysis&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://www.englishbreakfastnetwork.org/krazy/ Krazy] hosted at EnglishBreakfastNetwork (EBN).&lt;br /&gt;
* [http://www.coverity.com/ Coverity] is used to find possible sources of defects and suggested optimizations. Results are displayed per module as part of [http://ktown.kde.org/~dirk/dashboard/ Dirks Dashboard builds].&lt;br /&gt;
| people=&lt;br /&gt;
* [http://people.fruitsalad.org/adridg/bobulate/ Adriaan de Groot]&lt;br /&gt;
* [http://www.kdedevelopers.org/blog/1451 Allen Winter]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
*&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Additional checks are always welcome for adding to Krazy. See http://websvn.kde.org/trunk/quality/.&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Build testing&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://developer.kde.org/~dirk/dashboard/ Continuous build server] reports broken builds on linux.&lt;br /&gt;
* [http://www.cdash.org/CDash/index.php?project=kdelibs CDash build server] stores results of non-linux builds for kdelibs.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-core-devel}} Find out how to submit test build results.&lt;br /&gt;
| people=&lt;br /&gt;
* [http://wire.dattitu.de/authors/2-Dirk Dirk Mueller] maintains the dashboard&lt;br /&gt;
* Bill Hoffman is involved with the kitware CDash service.&lt;br /&gt;
* http://www.cdash.org/mailinglist.html&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
There is interest in more build testing for KDE especially on non-linux platforms. Improvements include some standard ctest scripts that can be used to build and submit a dashboard result for kdelibs to CDash. This would be run on a cronjob for simplicity.&lt;br /&gt;
&lt;br /&gt;
Builds are planned for the following platforms:&lt;br /&gt;
&lt;br /&gt;
* Windows&lt;br /&gt;
* MacOS&lt;br /&gt;
* FreeBSD 6 (gcc)&lt;br /&gt;
* FreeBSD 7 (gcc)&lt;br /&gt;
* Solaris (S10, S11) on SPARC and amd64&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Unit testing&lt;br /&gt;
| currentState=&lt;br /&gt;
[[Development/Tutorials/Unittests|Unit tests]] may be written with the QTest framework. Tests can be run with the command '&amp;lt;tt&amp;gt;make test&amp;lt;/tt&amp;gt;'.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* [[Development/Tutorials/Unittests|Techbase Unit tests tutorial]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
It may be possible run run these tests automatically possibly on EBN or on Dirks dashboard.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Quality testing&lt;br /&gt;
| currentState=&lt;br /&gt;
* The early adopter/user community&lt;br /&gt;
* [http://www.sqo-oss.eu/news/coverage/sqo-oss-project-launched-with-kde SQO-OSS]&lt;br /&gt;
| people=&lt;br /&gt;
* [http://people.fruitsalad.org/adridg/bobulate/ Adriaan de Groot]&lt;br /&gt;
* [http://hemswell.lincoln.ac.uk/~padams/index.php Paul Adams]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It may be possible to obtain metrics such as bugs per kloc, defect injection rate etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Profiling and Optimizations&lt;br /&gt;
| currentState=&lt;br /&gt;
* {{KDEML|kde-optimize}} mailing list coordinates optimizations in KDE.&lt;br /&gt;
* Krazy and Coverity tools also include some optimization checks.&lt;br /&gt;
* KDE macros for optimization of common algorithms.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-optimize}}&lt;br /&gt;
* [http://ktown.kde.org/~dirk/dashboard/4.1/i386/kdelibs.html Coverity report for KDE libs].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Tutorials may be provided in the future to help developers optimize their code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Accessibility and Usability&lt;br /&gt;
| currentState=&lt;br /&gt;
* http://usability.kde.org/&lt;br /&gt;
* http://openusability.org/projects.php&lt;br /&gt;
* Season of usability&lt;br /&gt;
| people=&lt;br /&gt;
* [http://weblog.obso1337.org/ Celeste Lyn Paul]&lt;br /&gt;
* [http://ellen.reitmayr.net/index.php/blog Ellen Reitmayr]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-usability}}&lt;br /&gt;
* [[Projects/Usability/HIG KDE Human interaction Guidelines]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Research&lt;br /&gt;
| currentState=&lt;br /&gt;
* http://research.kde.org&lt;br /&gt;
* [http://www.sqo-oss.eu/news/coverage/sqo-oss-project-launched-with-kde SQO-OSS]&lt;br /&gt;
* http://nepomuk.kde.org/ Semantic desktop project funded by the EU.&lt;br /&gt;
| people=&lt;br /&gt;
* [http://people.fruitsalad.org/adridg/bobulate/ Adriaan de Groot]&lt;br /&gt;
* [http://www.kdedevelopers.org/blog/2904 Sebastian Trueg] leads the kde-nepomuk project.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* [http://lists.semanticdesktop.org/mailman/listinfo/nepomuk-kde Nepomuk KDE mailing list]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Marketing and Expectations ==&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Requirements Gathering&lt;br /&gt;
| currentState=&lt;br /&gt;
* Requirements come from user feedback on http://bugs.kde.org and from commercial interests.&lt;br /&gt;
* Developers may do some research into requirements for applications based on User Research Profiles.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* http://bugs.kde.org Fill new wishlist items.&lt;br /&gt;
* {{KDEML|kde-core-devel}} Discuss new ways for kde to gather requirements.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Promotion&lt;br /&gt;
| currentState=&lt;br /&gt;
* The {{KDEML|kde-promo|KDE marketing team}} manage marketing and promotion from official kde sources.&lt;br /&gt;
* http://dot.kde.org is the community forum around promotional announcements.&lt;br /&gt;
* http://www.kde.org/announcements is the official source of promotional announcements regarding KDE.&lt;br /&gt;
* Design and maintenance of KDE websites is organised on the [https://mail.kde.org/mailman/listinfo/kde-www kde-www mailing list]&lt;br /&gt;
* The [http://ev.kde.org/workinggroups/mwg.php Marketing working group] coordinates several marketing efforts such as promoting planning and branding.&lt;br /&gt;
* KDE e.v provides a booth box for conference booths containing posters, leaftlets and other information needed at a conference stand.&lt;br /&gt;
| people=&lt;br /&gt;
* [http://wadejolson.wordpress.com/ Wade Olsen]&lt;br /&gt;
* [http://troy-at-kde.livejournal.com/ Troy Unrau]&lt;br /&gt;
* [http://nowwhatthe.blogspot.com/ Jos Poortvliet]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-promo}}&lt;br /&gt;
* [http://dot.kde.org/addPostingForm Submit dot articles]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Community management&lt;br /&gt;
| currentState=&lt;br /&gt;
* The Community Working Group helps with community advice when needed&lt;br /&gt;
* [http://www.kde.org/code-of-conduct/ Code of Conduct] Based on the Ubuntu Code of Conduct, documents guidelines for acceptable behaviour within the community. Can be summarized as 'Be Excellent to Eachother'.&lt;br /&gt;
| people=&lt;br /&gt;
* Anne Willson&lt;br /&gt;
* [http://jucato.org Juan Carlos Torres]&lt;br /&gt;
* [http://lydiapintscher.de Lydia Pintscher]&lt;br /&gt;
* Martin Fitzpatrick&lt;br /&gt;
* [http://omat.nl Tom Albers]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* Send an e-mail to community-wg@kde.org&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Communication&lt;br /&gt;
| currentState=&lt;br /&gt;
Developers communicate with each other through&lt;br /&gt;
* [http://lists.kde.org/ mailing lists]&lt;br /&gt;
* [http://searchirc.com/irc-kde-1 IRC]&lt;br /&gt;
* [http://planetkde.org Blogs]&lt;br /&gt;
* Conferences&lt;br /&gt;
Developers communicate with users though&lt;br /&gt;
* [http://planetkde.org Blogs] to some extent (mainly early adopting users).&lt;br /&gt;
* [http://forum.kde.org Forums] to some extent where the developer chooses to.&lt;br /&gt;
* [http://dot.kde.org News announcements]&lt;br /&gt;
Users communicate with each other and developers through&lt;br /&gt;
* [http://forum.kde.org Forums]&lt;br /&gt;
* {{KDEML|kde}} mailing list&lt;br /&gt;
* #kde irc channel.&lt;br /&gt;
| people=&lt;br /&gt;
* [http://c133.org/blog/ Chris Lee] administers planetkde.org&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* Add your blog to planet kde if you contribute to KDE in some way, including development, testing, advocacy, translation, documentation etc.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Release ==&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Release Scheduling&lt;br /&gt;
| currentState=&lt;br /&gt;
* Maintained at [[Schedules]].&lt;br /&gt;
| people=&lt;br /&gt;
*&lt;br /&gt;
* [http://cyrilleberger.blogspot.com/ Cyrill Berger] - KOffice release coordinator.&lt;br /&gt;
* [http://www.kdedevelopers.org/blog/1451 Allen Winter] - KDEPIM release coordinator.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|release-team}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Feature planning&lt;br /&gt;
| currentState=&lt;br /&gt;
* [[Schedules/KDE4/4.1_Feature_Plan]]&lt;br /&gt;
* [[Schedules/KDE4/4.2_Feature_Plan]]&lt;br /&gt;
| people=&lt;br /&gt;
[https://mail.kde.org/mailman/listinfo/release-team The KDE release team]&lt;br /&gt;
| altTools=&lt;br /&gt;
* Launchpad.net offers a blueprints system.&lt;br /&gt;
* [http://wiki.pentaho.com/display/OpenScrum/Home Scrum in Open Source Projects]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-core-devel}} - Discuss the KDE approach to feature planning.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Currently techbase is used for feature planning but there may be better alternatives.&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Downstream packagers and contributions&lt;br /&gt;
| currentState=&lt;br /&gt;
* Many distributions package KDE3 &amp;amp; KDE4.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-packagers}} - Private mailing list for packagers. Includes information relating to security releases.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Theming and Translations ==&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Artwork&lt;br /&gt;
| currentState=&lt;br /&gt;
* The {{KDEML|kde-artists|kde-artists team}} creates offical artwork for KDE.&lt;br /&gt;
* kde-look.org for non-offical artwork.&lt;br /&gt;
| people=&lt;br /&gt;
* [http://pinheiro-kde.blogspot.com/ Nuno Pinheiro]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-artists}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Additional contributed artwork is available on http://kde-look.org.&lt;br /&gt;
&lt;br /&gt;
There may be a need to create tutorials on how to create artwork for kde.&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Translation&lt;br /&gt;
| currentState=&lt;br /&gt;
* http://i18n.kde.org/ is used for level of completion of translations in KDE.&lt;br /&gt;
* GNU gettext is used for translation in KDE.&lt;br /&gt;
* &amp;lt;tt&amp;gt;.po&amp;lt;/tt&amp;gt; files are edited directly in KDE svn to update translations.&lt;br /&gt;
* A kde4 based translation client (lokalize) is being developed in kdesdk/.&lt;br /&gt;
* Krazy includes sanity checks/plurals checking for translation.&lt;br /&gt;
| altTools=&lt;br /&gt;
launchpad.net features a web-based tool called rosetta, which allows for easier fly-by translations. This is considered not to be useful as fly-by translators often do not follow guidelines or consistency rules when translating.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-i18n-doc}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Legal And Support ==&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=KDE e.v. - Representative Legal Entity&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://ev.kde.org KDE e.v] is a registered non-profit organization that represents the KDE Project in legal and financial matters.&lt;br /&gt;
| altTools= N/A&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* [http://ev.kde.org/getinvolved/ KDE e.v. membership]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Resolving licencing issues.&lt;br /&gt;
| currentState=&lt;br /&gt;
* A [http://ev.kde.org/announcements/2008-08-22-fsfe-welcomes-fla.php Fiduicary Licence Agreement] is available, which will allow KDE developers to optionally assign copyright of their contributions to KDE e.v. This would allow easier relicencing of contributors content in the event that KDE needs to move to another licence. It also allows the e.v. to more easily represent the work in the unlikely event of a court dispute involving KDE code.&lt;br /&gt;
* [[Policies/Licensing_Policy|KDE licencing policy]] allows commercial and non-commercial development and proprietry and non-proprietry development.&lt;br /&gt;
* [[Projects/KDE_Relicensing|Projects/KDE_Relicensing]] Effort to relicence KDE code to use version 3 of GNU GPL and LGPL. This work is unfinished but not still being performed. Many contributors are no longer contactable.&lt;br /&gt;
| altTools= N/A&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Sponsorship and Patronship&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://ev.kde.org/supporting-members.php Supporters of KDE] contribute sponsorship money to KDE e.v.&lt;br /&gt;
* http://ev.kde.org/getinvolved/supporting-members.php&lt;br /&gt;
| altTools= N/A&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/Akonadi/Meeting2008-11</id>
		<title>Projects/PIM/Akonadi/Meeting2008-11</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/Akonadi/Meeting2008-11"/>
				<updated>2008-10-20T10:00:20Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Attendees */ Add myself.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is all about the Akonadi Meeting.&lt;br /&gt;
&lt;br /&gt;
Date: Oct 31th (friday) to Nov 2nd (sunday).&lt;br /&gt;
&lt;br /&gt;
== Location/links: ==&lt;br /&gt;
* http://www.linuxhotel.de/&lt;br /&gt;
* http://www.linuxhotel.de/community.html (community prices / rules)&lt;br /&gt;
* http://www.linuxhotel.de/community.en.html (limited info in eng)&lt;br /&gt;
* http://www.linuxhotel.de/anreise.html (how to get there)&lt;br /&gt;
&lt;br /&gt;
== Attendees ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name&lt;br /&gt;
! Travel&lt;br /&gt;
! Arrival&lt;br /&gt;
! Departure&lt;br /&gt;
! Roomtype&lt;br /&gt;
|-&lt;br /&gt;
| Volker Krause&lt;br /&gt;
| train&lt;br /&gt;
| 31&lt;br /&gt;
| 2&lt;br /&gt;
| single&lt;br /&gt;
|-&lt;br /&gt;
| Till Adam&lt;br /&gt;
| train&lt;br /&gt;
| 31&lt;br /&gt;
| 2&lt;br /&gt;
| single&lt;br /&gt;
|-&lt;br /&gt;
| Tom Albers&lt;br /&gt;
| car&lt;br /&gt;
| 31 (m)&lt;br /&gt;
| 2 (e)&lt;br /&gt;
| single&lt;br /&gt;
|-&lt;br /&gt;
| Thomas McGuire&lt;br /&gt;
| train&lt;br /&gt;
| 31&lt;br /&gt;
| 2&lt;br /&gt;
| single&lt;br /&gt;
|-&lt;br /&gt;
| Kevin Krammer&lt;br /&gt;
| plane&lt;br /&gt;
| 31 (m)&lt;br /&gt;
| 2 (e)&lt;br /&gt;
| shared with Will&lt;br /&gt;
|-&lt;br /&gt;
| Will Stephenson&lt;br /&gt;
| train&lt;br /&gt;
| 31&lt;br /&gt;
| 2&lt;br /&gt;
| shared with Kevin&lt;br /&gt;
|-&lt;br /&gt;
| Bertjan Broeksema&lt;br /&gt;
| car (toma)&lt;br /&gt;
| 31 (m)&lt;br /&gt;
| 2 (e)&lt;br /&gt;
| shared with ingo&lt;br /&gt;
|-&lt;br /&gt;
| Ingo Klöcker&lt;br /&gt;
| train&lt;br /&gt;
| 31 (m)&lt;br /&gt;
| 2 (e)&lt;br /&gt;
| shared with Bertjan&lt;br /&gt;
|-&lt;br /&gt;
| Igor Trindade Oliveira&lt;br /&gt;
| plain/car (toma)&lt;br /&gt;
| 31 (m)&lt;br /&gt;
| 2 (e)&lt;br /&gt;
| shared with Dmitry if needed&lt;br /&gt;
|-&lt;br /&gt;
| Stephen Kelly&lt;br /&gt;
| plane/train&lt;br /&gt;
| 31 (m)&lt;br /&gt;
| 2 (e)&lt;br /&gt;
| shared&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
m = morning&lt;br /&gt;
e = evening&lt;br /&gt;
&lt;br /&gt;
- Room reservations are out for these 7 rooms ( 4 single and 3 shared). &lt;br /&gt;
- This reservation is confirmed by LinuxHotel.&lt;br /&gt;
&lt;br /&gt;
== Costs ==&lt;br /&gt;
&lt;br /&gt;
Per person for the location:&lt;br /&gt;
* 5 euro per person per day for the conference room -&amp;gt; 3 days *  5 euro = 15 euro&lt;br /&gt;
* 15 euro per person per night for a double room -&amp;gt; 2 nights * 15 euro = 30 euro&lt;br /&gt;
* or 30 euro per person per night for a single room -&amp;gt; 2 nights * 30 euro = 60 euro&lt;br /&gt;
* 5 euro per person per day for the breakfast -&amp;gt; 2 (sat, sun) * 5 = 10 euro&lt;br /&gt;
* 5 euro per person for the cleaning -&amp;gt; 5 euro&lt;br /&gt;
These costs are payed by the eV directly.&lt;br /&gt;
&lt;br /&gt;
You need to pay for all the food and drinks not included in the price above. Rumors say beer is included ;-) All those payments are not refundable.&lt;br /&gt;
&lt;br /&gt;
Travel costs are refundable, by filling out the form from: http://ev.kde.org/resources/expense_report.pdf &lt;br /&gt;
&lt;br /&gt;
For Igor there has been made a special arrangement.&lt;br /&gt;
&lt;br /&gt;
== Arrange / Todo list ==&lt;br /&gt;
If you want to do any of the items on the list, add your sig to it!&lt;br /&gt;
* some webcams so people can join the event remotely. At least Brad and Tobias want to join in. (I can bring webcams.  Functioning software is another matter - don't expect kopete webcam to work... [[User:Bille|Bille]])&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
* Presentation about Akonadi Test framework&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan</id>
		<title>Schedules/KDE4/4.2 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan"/>
				<updated>2008-10-10T19:40:51Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* kdepim */ Some KJots items&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.2 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.2 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.1 Feature Plan]]&lt;br /&gt;
* [[Schedules/KDE4/Goals]]&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|System Settings|add Administrator mode button|alediaferia@gmail.com|Alessandro Diaferia}}&lt;br /&gt;
{{FeatureDone|Eigen|Make Eigen 2 ready for KDE, and move it to kdesupport|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureInProgress|Eigen|Port all Eigen-using code in KDE and KOffice to Eigen 2.0|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureInProgress|KNotify|Create OSD based replacement for current KPassivePopup|ben()eclipse.endoftheinternet.org|Ben Cooksley}}&lt;br /&gt;
{{FeatureTodo|Dikku Context Framework|Create a context framework with working activities|harikrishna.anandhan@gmail.com|Harikrishna Anandhan}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kross|Extend QtScript integration.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KDEPrint|Reintroduce KDEPrint in some form, depending on what Qt4.4 delivers.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter, modify to utilise new Qt4.4 features.  To be discussed on k-c-d first.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalenderSystem|Add new calendar systems: Indian Civil (Saka), Ethiopean, Chinese, Pure Julian, Pure Gregorian. (Note, not all may live in kdelibs or be available as a global calendar system)|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement KLocale based methods to return weekend days and day of religious observance.  Currently KCalendarSystem provides dayOfPray(), but for Gregorian this is not correct in all locales where it is used.  Currently KDatePicker hardcodes Saturday and dayOfPray() as weekend days which may not be correct in all locales.  To be discussed first on k-c-d and with kdepim.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|Phonon|add Port class for fine grained control over data flow between Phonon objects|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|make AbstractMediaStream/StreamInterface threadsafe|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|&amp;quot;low-level&amp;quot; PCM I/O with at least an ALSA implementation|kretz@kde.org|Matthias Kretz and Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Phonon|VideoWidget snapshot function|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|KConfig|API review and export KConfigBackend|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigSkeleton KConfigGroup aware|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigDialog work nicer with KConfigSkeleton + manually managed widgets|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KUrlNavigator|Provide an option to always show the full path in the breadcrumb mode.|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureInProgress|Katepart|Make a Vi input mode for Katepart|ehamberg@gmail.com|Erlend Hamberg}}&lt;br /&gt;
{{FeatureTodo|KIO::Global|Make KDynamicJobTracker do the checking if the kuiserver service is registered or not, for full implementation of &amp;quot;Progress in the same window&amp;quot;|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
{{FeatureTodo|KJS|Further performance improvements, in particular variable access (Blizzard stage 2), and calling convention (FrostByte stage 2)|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KJS and KHTML|Support for transparent reindenting of standalone sources in debugger, debug info management improvements|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KHTML|SVG support in KHTML (port from WebKit)|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureInProgress|KHTML|Use of IDString (hashed strings) for local names, prefixes and namespaces in DOM core instead of document-related ids, in particular for better API compatibility with WebCore|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureTodo|KHTML|Scriptable extension plug-ins|porten@kde.org|Harri}}&lt;br /&gt;
{{FeatureDone|kwallet|Move kwalletd to kdebase-runtime|dfaure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureInProgress|kdeui|Rich text builders for KTextEdit, including BBCode, html, plain text markup, mediawiki and markdown output.|steveire@gmail.com| Stephen Kelly}}&lt;br /&gt;
{{FeatureDone|i18n|proper filenames decoding for FAT mounting, in KUrls and content-disposition|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Kross|expose KAssistantDialog as part of forms module|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Color KCM|Add 'smart setting' of extended colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Add KDE3 scheme import|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Query kwin for supported colors; add full set of kwin colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|reintroduce KDEPrint Print Management tools, e.g. KCM, kprinter, kjobviewer, etc.  Depends upon progress of kdelibs side of KDEPrint and Qt4.4 feature set.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureDone|Power Manager|import PowerDevil|drf@kdemod.ath.cx|Dario Freddi}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
{{FeatureInProgress|Krunner|Configuration options for blacklisting, user ranking, runner ranking, learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureInProgress|Krunner|SearchMatch configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple GUI for above options|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runners able to share parsing|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Noun-Verb support|ryan.bitanga@gmail.com|Ryan P. Bitanga}}&lt;br /&gt;
{{FeatureTodo|Krunner|Implement Nuno's UI polishings|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runtime syntax documentation|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runner configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Search set paging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|KRunner|runner for the plasma dbus interface|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KRunner|Konqueror history runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Kate sessions runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Recent Documents runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
{{FeatureTodo|Plasma|Welcome plasmoid|aseigo@kde.org|Aaron Seigo}}{{FeatureInProgress|Plasma|JOLIE Integration|ervin@kde.org|Kevin Ottens}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Notification plasmoid|dimsuzkde@gmail.com|Dmitry Suzdalev}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Kuiserver plasmoid|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureTodo|KWin|Make it possible to focus plasma panels|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|panel-&amp;gt;desktop dragging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to full action bar when zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasmagik packaging (and package classes)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Networkmanager Plasmoid and DataEngine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New ECMA Script Scriptengines|richmoore44@gmail.com|Richard Moore}}&lt;br /&gt;
{{FeatureDone|Plasma|Extenders|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureDone|Plasma|Wallpaper plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Separate Desktop Settings from DesktopContainment|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Script Security Framework|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Python support|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
{{FeatureDone|Plasma|Plasma Popup Tips|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Collapsing Applet convenience class|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|Plasma|Taskbar grouping|hrigi_1@hotmail.com|Christian Mollekopf}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Weather plasmoid|shawn.starr@rogers.com|Shawn Starr}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Small Form Factors|m.kruisselbrink@student.tue.nl|Marijn Kruisselbrink}}&lt;br /&gt;
{{FeatureDone|Plasma|Plasma On Screensaver|chanika@gmail.com|Chani Armitage}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Website update|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Grid applet|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Techbase Tutorials|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Context menu plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Add New Widgets: Pluggable widget browser|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Activity&amp;lt;-&amp;gt;Virtual Desktop Affinity|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Optional Per-Virtual Desktop DesktopView|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Make non-SVG painting in Plasma low-color and non-anim friendly|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Runtime DataEngine documentation (sources, usage, etc)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Panel Autohide|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Keyboard Shortcut Config UI|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Systray++ Spec|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Save icon positioning in folderview|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New wallpapers|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Import Raptor|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Preserve wallpaper choice by copying user paper to home dir|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New way of handling wallpapers and different sizes (package format, and so on...)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Top-level windows plasmoids|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|drop indicator in panel|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|improve usability of appletbrowser delete button|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|adding containments from the appletbrowser (and remove the &amp;quot;add panel&amp;quot; from DefaultDeskrop)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|highlight the applet with active keyboard shortcuts|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|dbus interface|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureDone|Plasma|make the panel controller a bit more usable|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|nicely draw the desktop toolbox when it's moved because of a panel|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|theme Plasma::PushButton with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|Tabbar widget derived from QTabBar and themed with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Complete the panel size sliders feature: an applet can ask the panel to resize|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New theming capabilities by expanding the lower level theming classes (Theme and PanelSvg)|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Activitybar: an applet to quickly switch between activities|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|A new plasmoid that implements the functionality of a simple web browser|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Wallpaper plugin: Mandelbrot fractal explorer|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureDone|Plasma|Google Gadgets support|idlecat511@gmail.com|Tiger Dong}}&lt;br /&gt;
{{FeatureTodo|Plasma|Add Google Gadgets from Internet through AppletBrowser|idlecat511@gmail.com|Tiger Dong}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Core&lt;br /&gt;
{{FeatureDone|KWin|New window snapping zones; screen center and window corners|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Move maximized windows between Xinerama screens|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Basic window tiling|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Compositing decoration API additions|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Desktop Effects&lt;br /&gt;
{{FeatureInProgress|KWin|Compositing self-check|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|KWin|Global animation speed setting|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|KWin|Motion dynamics|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|New shadow handling by decorations|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Improved UI for selecting window/desktop switcher|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|UI for assigning effects to screen edges|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Cube/Cylinder/Sphere Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Magic Lamp minimize Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Animation in BoxSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Mouse interaction for CoverSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Additional thumbnails for CoverSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin|Improved Snow Effect; different sizes, better randomness and different directions|torgny.johansson@gmail.com|Torgny Johansson}}&lt;br /&gt;
{{FeatureTodo|KWin|Shader for Snow Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Improved desktop grid|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|New present window layout modes|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Invert only selected windows|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Improved mouse mark/scribble effect|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KCal Library|Make the KCal library dependent on the external libical package (from freeassocation) rather than our own old, forked version.|winter@kde.org|Allen Winter}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kopete|MSNP15 implementation for MSN|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Updated contact list interface (uses Qt 4 rather than Qt 3)|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureTodo|Kopete|Update Kopete to better support Decibel|kopete-devel@kde.org|Kopete Developers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Contacts plasmoid|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Kopete|Move file transfer request into chat window|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Message delivery notifications|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureTodo|Kopete|Improve file transfer progress dialog|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|KGet|MultiSource-Downloading|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Support mms://-protocol, see https://launchpad.net/libmms|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|MLDonkey-Plugin based on libkmldonkey|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|Advanced Details|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Network Manager Applet|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureInProgress|KRDC|NX support|gdavid.devel@gmail.com|David Gross}}&lt;br /&gt;
{{FeatureDone|KRDC|Greatly improve experience for LDAP (e.g. MS Active Directory) administrators|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureDone|KRDC|Improve per-host settings (remember scaling mode and other options) |gpothier@gmail.com|Guillaume Pothier}}&lt;br /&gt;
{{FeatureTodo|KRDC|Minimal-clutter mode to optimize screen real estate usage|gpothier@gmail.com|Guillaume Pothier}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KonsoleKalendar|Add an option to support resources that might need a GUI (i.e. all resources)|kevin.krammer@gmx.at|Kevin Krammer}}&lt;br /&gt;
{{FeatureInProgress|Akregator|Support for syncing the feed list with Google Reader |osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Improve alarm edit and preferences dialog layouts|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Add holidays support|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|Kleopatra|OpenPGP support|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureInProgress|KNotes|Zeroconf support for sending notes on LAN|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureDone|Kontact|New Planner summary; combines Appointment+To-do+SpecialDates into 1 pretty summary|o_timocin@gmx.de|Oral Timocin}}&lt;br /&gt;
{{FeatureInProgress|KPilot|Finish Keyring conduit, base conduit code and test cases, category syncing|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|Akregator|Basic support for enclosures (Displaying links, mimetype and size)|osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureTodo|[http://kblogger.pwsp.net KBlogger]|KBlogger, a blogging application| christian_weilbach@.web.de|Christian Weilbach}}&lt;br /&gt;
{{FeatureTodo|Kleopatra|Konqueror and Dolphin Kleopatra plugins|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureDone|KMail|Aggregated attachment view in the mail header area of the reader window|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KMail|Merge the new message list from the SoC branch|mcguire@kde.org|Thomas McGuire}}&lt;br /&gt;
{{FeatureTodo|Kontact|Support for Kontact wide profiles|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Drag and drop in the free-busy view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for comments in replies to invitations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for extended free-busy lists|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KPilot|Port old conduits to new base conduit architecture and KDE4/Qt4|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|KBlogger|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|KNode|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureInProgress|Kjots| Import notes from KnowIt as KJots pages. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureInProgress|Kjots| Create and port to akonadi model. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Add support for nepomuk including tagging, possibly storage, and linking. Also a nepomuk tag proxy model for representing the structure as tagged.|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureInProgress|Kjots| Create plasmoid capable of showing the entire tree, or a single book.|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Email KJots pages using default mail client ({{bug|124509}}. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kontact|Tip-of-the-Day summary|molkentin@kde.org|Daniel Molkentin}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|refactor KByteArrayView|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|parameter dialog for &amp;quot;Copy as...&amp;quot;|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureInProgress|Ark|Implement proper drag/drop between Ark/dolphin|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Make the service menu work (possibly doing it as a KonqPopupPlugin|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Proper password support|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|kwalletmanager|Move kwalletmanager to the Model/View architecture and redesign the UI|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support custom types via handlers|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support QList&amp;lt;CustomType*&amp;gt; constructs|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|Smoke|Wrap some more APIs (at least Akanodi for all languages and Plasma for C#)|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureInProgress|PyKDE|KCM support and other plugins|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
{{FeatureTodo|krossjava|Integrate into e.g. SuperKaramba and fix issues that show up.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossjava|Documentation++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossfalcon|Unittests++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|libkdegames|New highscore management system|milliams|Matt Williams}}&lt;br /&gt;
{{FeatureDone|kdiamond|Drag jewels|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|kdiamond|Optional OpenGL rendering|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|ksirk|Map scrolling arrows|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|KHotNewStuff skins|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ksirk|Jabber based net game finding|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Use only names in skins instead of numeric ids|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Skins editor|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ktron|Port and remake the KTron game for KDE 4.2|legolas@legolasweb.nl|Stas Verberkt}}&lt;br /&gt;
{{FeatureTodo|KNetWalk|Support for custom and non-square board sizes|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureTodo|KGoldrunner|Improvement to sound support and themes|mikelima@cirulla.net}}&lt;br /&gt;
{{FeatureTodo|KBlocks|Support for sounds|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KMahjongg|Support for sounds|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureInProgress|Killbots|New app for 4.2|parker.coates@gmail.com|Parker Coates}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Kate|Port and reenable the Snippets plugin.|jpetso@gmx.at|Jakob Petsovits}}&lt;br /&gt;
{{FeatureDone|perldoc KIOSlave|Add KIOSlave to allow reading Perldoc documentation.|michael.pyne&amp;amp;#64;kdemail&amp;amp;#46;net|Michael Pyne}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|XLIFF support|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|various Translation Memory enhancements|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Lokalize|wrap all windows belonging to one project into one MDI window|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Kross-based scripting|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|QA: glossary checklists|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|KAppTemplate|Add DBUS support in templates|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|Umbrello|Port code generation wizard to QWizard and replace all q3 widgets|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
{{FeatureInProgress|Umbrello|Replace all q3 widgets in the refactoring assistant|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KEduca|Rewrite of the classic test writing/taking application|matt@milliams.com|Matt Williams}}&lt;br /&gt;
{{FeatureTodo|KLettres|Number support|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureInProgress|KHangMan|Add a Open File action|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Integrate an editor|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Plasmoid|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Visual indicator when letter is wrong|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium's periodic table to use new QGraphicsView.|marcus@cryos.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureInProgress|Kalzium|Plasmoid to access Kalzium database|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureTodo|Step|Improve GUI for creating softbody|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureTodo|Step|Use common constraints handling code for collisions|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureDone|KAlgebra|New parser (using QLALR) and new lexer|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Import capability for MathML Presentation Markup in libanalitza|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureTodo|KAlgebra|Export to MathML Presentation Markup|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureTodo|KAlgebra|Some integration with the new KFormula widget|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureInProgress|Parley|Declensions|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|Parley|Rework main window infrastructure|d.laidig@gmx.de|Daniel Laidig}}&lt;br /&gt;
{{FeatureDone|KStars|Display millions of stars|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureDone|KStars|Tool to predict Conjunctions|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Earth Satellites|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Sky Calendar Tool|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureDone|KStars|Include HD Catalog Numbers (in search, in display)|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}}&lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Separate INDI From KStars|mutlaqja@ikarustech.com|Jasem Mutlaq}}&lt;br /&gt;
{{FeatureTodo|KStars|Sync KStars time from device|mutlaqja@ikarustech.com|Jasem Mutlaq}}&lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Improve Observing List Wizard|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Information links in-place for each technical term|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Bookmarks|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for MarbleWidget::setEnabled( bool )|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureTodo|Marble|Editing GeoDataFeatures|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Layer Management Class|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Plugin architecture for map layers|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Extending GeoPainter|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Marble Runners|hdevalence@gmail.com|Harry de Valence}}&lt;br /&gt;
{{FeatureInProgress|Marble|Marble Plasmoid|hdevalence@gmail.com|Harry de Valence}}&lt;br /&gt;
{{FeatureInProgress|Marble|Qt-Version settings dialog|hdevalence@gmail.com|Harry de Valence}}&lt;br /&gt;
{{FeatureInProgress|Marble|Panoramio Support||Shashank Singh}}&lt;br /&gt;
{{FeatureInProgress|Marble|Twitter Plugin||Shashank Singh}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|Marble|DGML2 Support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Support for imperial units|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Port authors list from the Qt-About dialog to the KDE-About dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Basic KML support|ps_ml@gmx.de|Patrick Spendrin}}&lt;br /&gt;
{{FeatureInProgress|Marble|GeoData Model/View Visualization|ps_ml@gmx.de|Patrick Spendrin}}&lt;br /&gt;
{{FeatureInProgress|Marble|More generic projection support|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Kig|Properties dialog for objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve construction of bisect lines.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve feedback when constructing objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|More geometric objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Script objects as macros (to be reused more than once).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve the Cabri import filter.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|KTurtle|Export canvas as image|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Optional rulers/grid for canvas units|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add command line|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add a color picker|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
{{FeatureInProgress|KBruch|Usability Improvements|tiago.porangaba@ltia.fc.unesp.br|Tiago Porangaba}}&lt;br /&gt;
{{FeatureInProgress|KBruch|Merging KPercentage functionalities into KBruch|tiago.porangaba@ltia.fc.unesp.br|Tiago Porangaba}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Visualization of Schemes and Gradients at same time|tiago.porangaba@ltia.fc.unesp.br|Tiago Porangaba}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Dragon Player|Make Dragon indipendent from Xine|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|File Manager|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|play media dialog|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|slider changes|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|show info while playing audio files|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Use XCOMPOSITE real transparency when available for the track announcement popup|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow disabling crossfade|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KMagnifier|Refactor color menu, re-add invert, break current color blindness code into &amp;quot;daltonize&amp;quot; and &amp;quot;simulate&amp;quot;|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KMagnifier|Add color-shift modes to help people with color blindness|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KSnapshot|Add support for grabbing a single screen in multihead|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|Increase jpeg image quality from 75% to 85%|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|If we're saving the window decorations then record the window title and class in the image (if the format supports it) to play nice with indexers like strigi|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureTodo|Okular|Sound annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Link annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Improve annotation support: for existing types (rubber stamps, line, note, etc), and for the way they are constructed and handled.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Caret annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Okular|Support for videos &amp;amp; movie annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Support .snp and .emf file formats|bradh@kde.org|Brad Hards}}&lt;br /&gt;
{{FeatureDone|Gwenview|Support for animated images (.gif and .mng)|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Red Eye Reduction|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Nepomuk integration|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Dolphin-like single-click selection|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Optional tree view|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|kio_bookmarks|A new konqueror home page displaying user bookmarks. See [[http://kde-apps.org/content/show.php?content=86516 description]]|xavier.vello@gmail.com|Xavier Vello}}&lt;br /&gt;
{{FeatureInProgress|kuiserver|KUiServer Goya port. General improvements for usability improvements|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
{{FeatureInProgress|kio fish/sftp|port fish and sftp to windows|brandon.ml@gmail.com|Carlo Segato}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|konqueror|A new konqueror recover-dialog replacement|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureTodo|konqueror|Rework bookmarks using Akonadi|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureInProgress|dolphin|Add zoom slider into the status bar and general zooming improvments|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureDone|dolphin|Tooltip previews|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|PoTD engine|Import from playground|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Frame plasmoid|Honor EXIF rotation - see bug 164605|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Frame plasmoid|Previous, Pause and Next buttons - see bug 164704|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan</id>
		<title>Schedules/KDE4/4.2 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan"/>
				<updated>2008-10-10T19:36:45Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* kdelibs */ Add rich text builders plan.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.2 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.2 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.1 Feature Plan]]&lt;br /&gt;
* [[Schedules/KDE4/Goals]]&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|System Settings|add Administrator mode button|alediaferia@gmail.com|Alessandro Diaferia}}&lt;br /&gt;
{{FeatureDone|Eigen|Make Eigen 2 ready for KDE, and move it to kdesupport|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureInProgress|Eigen|Port all Eigen-using code in KDE and KOffice to Eigen 2.0|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureInProgress|KNotify|Create OSD based replacement for current KPassivePopup|ben()eclipse.endoftheinternet.org|Ben Cooksley}}&lt;br /&gt;
{{FeatureTodo|Dikku Context Framework|Create a context framework with working activities|harikrishna.anandhan@gmail.com|Harikrishna Anandhan}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kross|Extend QtScript integration.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KDEPrint|Reintroduce KDEPrint in some form, depending on what Qt4.4 delivers.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter, modify to utilise new Qt4.4 features.  To be discussed on k-c-d first.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalenderSystem|Add new calendar systems: Indian Civil (Saka), Ethiopean, Chinese, Pure Julian, Pure Gregorian. (Note, not all may live in kdelibs or be available as a global calendar system)|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement KLocale based methods to return weekend days and day of religious observance.  Currently KCalendarSystem provides dayOfPray(), but for Gregorian this is not correct in all locales where it is used.  Currently KDatePicker hardcodes Saturday and dayOfPray() as weekend days which may not be correct in all locales.  To be discussed first on k-c-d and with kdepim.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|Phonon|add Port class for fine grained control over data flow between Phonon objects|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|make AbstractMediaStream/StreamInterface threadsafe|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|&amp;quot;low-level&amp;quot; PCM I/O with at least an ALSA implementation|kretz@kde.org|Matthias Kretz and Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Phonon|VideoWidget snapshot function|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|KConfig|API review and export KConfigBackend|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigSkeleton KConfigGroup aware|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigDialog work nicer with KConfigSkeleton + manually managed widgets|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KUrlNavigator|Provide an option to always show the full path in the breadcrumb mode.|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureInProgress|Katepart|Make a Vi input mode for Katepart|ehamberg@gmail.com|Erlend Hamberg}}&lt;br /&gt;
{{FeatureTodo|KIO::Global|Make KDynamicJobTracker do the checking if the kuiserver service is registered or not, for full implementation of &amp;quot;Progress in the same window&amp;quot;|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
{{FeatureTodo|KJS|Further performance improvements, in particular variable access (Blizzard stage 2), and calling convention (FrostByte stage 2)|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KJS and KHTML|Support for transparent reindenting of standalone sources in debugger, debug info management improvements|maksim@kde.org|Maksim Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KHTML|SVG support in KHTML (port from WebKit)|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureInProgress|KHTML|Use of IDString (hashed strings) for local names, prefixes and namespaces in DOM core instead of document-related ids, in particular for better API compatibility with WebCore|tsjoker@gmail.com|Vyacheslav Tokarev}}&lt;br /&gt;
{{FeatureTodo|KHTML|Scriptable extension plug-ins|porten@kde.org|Harri}}&lt;br /&gt;
{{FeatureDone|kwallet|Move kwalletd to kdebase-runtime|dfaure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureInProgress|kdeui|Rich text builders for KTextEdit, including BBCode, html, plain text markup, mediawiki and markdown output.|steveire@gmail.com| Stephen Kelly}}&lt;br /&gt;
{{FeatureDone|i18n|proper filenames decoding for FAT mounting, in KUrls and content-disposition|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Kross|expose KAssistantDialog as part of forms module|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Color KCM|Add 'smart setting' of extended colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Add KDE3 scheme import|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Query kwin for supported colors; add full set of kwin colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|reintroduce KDEPrint Print Management tools, e.g. KCM, kprinter, kjobviewer, etc.  Depends upon progress of kdelibs side of KDEPrint and Qt4.4 feature set.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureDone|Power Manager|import PowerDevil|drf@kdemod.ath.cx|Dario Freddi}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
{{FeatureInProgress|Krunner|Configuration options for blacklisting, user ranking, runner ranking, learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureInProgress|Krunner|SearchMatch configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple GUI for above options|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runners able to share parsing|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Noun-Verb support|ryan.bitanga@gmail.com|Ryan P. Bitanga}}&lt;br /&gt;
{{FeatureTodo|Krunner|Implement Nuno's UI polishings|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runtime syntax documentation|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runner configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Search set paging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|KRunner|runner for the plasma dbus interface|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KRunner|Konqueror history runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Kate sessions runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|KRunner|Recent Documents runner|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
{{FeatureTodo|Plasma|Welcome plasmoid|aseigo@kde.org|Aaron Seigo}}{{FeatureInProgress|Plasma|JOLIE Integration|ervin@kde.org|Kevin Ottens}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Notification plasmoid|dimsuzkde@gmail.com|Dmitry Suzdalev}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Kuiserver plasmoid|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureTodo|KWin|Make it possible to focus plasma panels|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|panel-&amp;gt;desktop dragging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to full action bar when zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasmagik packaging (and package classes)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Networkmanager Plasmoid and DataEngine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New ECMA Script Scriptengines|richmoore44@gmail.com|Richard Moore}}&lt;br /&gt;
{{FeatureDone|Plasma|Extenders|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureDone|Plasma|Wallpaper plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Separate Desktop Settings from DesktopContainment|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Script Security Framework|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Python support|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
{{FeatureDone|Plasma|Plasma Popup Tips|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Collapsing Applet convenience class|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|Plasma|Taskbar grouping|hrigi_1@hotmail.com|Christian Mollekopf}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Weather plasmoid|shawn.starr@rogers.com|Shawn Starr}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Small Form Factors|m.kruisselbrink@student.tue.nl|Marijn Kruisselbrink}}&lt;br /&gt;
{{FeatureDone|Plasma|Plasma On Screensaver|chanika@gmail.com|Chani Armitage}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Website update|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Grid applet|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Techbase Tutorials|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Context menu plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Add New Widgets: Pluggable widget browser|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Activity&amp;lt;-&amp;gt;Virtual Desktop Affinity|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Optional Per-Virtual Desktop DesktopView|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Make non-SVG painting in Plasma low-color and non-anim friendly|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Runtime DataEngine documentation (sources, usage, etc)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Panel Autohide|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Keyboard Shortcut Config UI|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Systray++ Spec|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Save icon positioning in folderview|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New wallpapers|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Import Raptor|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Preserve wallpaper choice by copying user paper to home dir|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New way of handling wallpapers and different sizes (package format, and so on...)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Top-level windows plasmoids|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|drop indicator in panel|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|improve usability of appletbrowser delete button|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|adding containments from the appletbrowser (and remove the &amp;quot;add panel&amp;quot; from DefaultDeskrop)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|highlight the applet with active keyboard shortcuts|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|dbus interface|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureDone|Plasma|make the panel controller a bit more usable|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|nicely draw the desktop toolbox when it's moved because of a panel|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|theme Plasma::PushButton with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|Tabbar widget derived from QTabBar and themed with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Complete the panel size sliders feature: an applet can ask the panel to resize|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New theming capabilities by expanding the lower level theming classes (Theme and PanelSvg)|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Activitybar: an applet to quickly switch between activities|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|A new plasmoid that implements the functionality of a simple web browser|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Wallpaper plugin: Mandelbrot fractal explorer|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureDone|Plasma|Google Gadgets support|idlecat511@gmail.com|Tiger Dong}}&lt;br /&gt;
{{FeatureTodo|Plasma|Add Google Gadgets from Internet through AppletBrowser|idlecat511@gmail.com|Tiger Dong}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Core&lt;br /&gt;
{{FeatureDone|KWin|New window snapping zones; screen center and window corners|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Move maximized windows between Xinerama screens|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Basic window tiling|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Compositing decoration API additions|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KWin - Desktop Effects&lt;br /&gt;
{{FeatureInProgress|KWin|Compositing self-check|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|KWin|Global animation speed setting|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|KWin|Motion dynamics|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|New shadow handling by decorations|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Improved UI for selecting window/desktop switcher|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|UI for assigning effects to screen edges|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Cube/Cylinder/Sphere Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Magic Lamp minimize Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Animation in BoxSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Mouse interaction for CoverSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureTodo|KWin|Additional thumbnails for CoverSwitch Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureInProgress|KWin|Improved Snow Effect; different sizes, better randomness and different directions|torgny.johansson@gmail.com|Torgny Johansson}}&lt;br /&gt;
{{FeatureTodo|KWin|Shader for Snow Effect|ubuntu@martin-graesslin.com|Martin Gräßlin}}&lt;br /&gt;
{{FeatureDone|KWin|Improved desktop grid|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|New present window layout modes|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureDone|KWin|Invert only selected windows|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
{{FeatureInProgress|KWin|Improved mouse mark/scribble effect|lmurray@undefinedfire.com|Lucas Murray}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KCal Library|Make the KCal library dependent on the external libical package (from freeassocation) rather than our own old, forked version.|winter@kde.org|Allen Winter}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kopete|MSNP15 implementation for MSN|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Updated contact list interface (uses Qt 4 rather than Qt 3)|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureTodo|Kopete|Update Kopete to better support Decibel|kopete-devel@kde.org|Kopete Developers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Contacts plasmoid|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureDone|Kopete|Move file transfer request into chat window|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Message delivery notifications|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureTodo|Kopete|Improve file transfer progress dialog|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|KGet|MultiSource-Downloading|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Support mms://-protocol, see https://launchpad.net/libmms|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|MLDonkey-Plugin based on libkmldonkey|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|Advanced Details|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Network Manager Applet|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureInProgress|KRDC|NX support|gdavid.devel@gmail.com|David Gross}}&lt;br /&gt;
{{FeatureDone|KRDC|Greatly improve experience for LDAP (e.g. MS Active Directory) administrators|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureDone|KRDC|Improve per-host settings (remember scaling mode and other options) |gpothier@gmail.com|Guillaume Pothier}}&lt;br /&gt;
{{FeatureTodo|KRDC|Minimal-clutter mode to optimize screen real estate usage|gpothier@gmail.com|Guillaume Pothier}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KonsoleKalendar|Add an option to support resources that might need a GUI (i.e. all resources)|kevin.krammer@gmx.at|Kevin Krammer}}&lt;br /&gt;
{{FeatureInProgress|Akregator|Support for syncing the feed list with Google Reader |osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Improve alarm edit and preferences dialog layouts|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|KAlarm|Add holidays support|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureInProgress|Kleopatra|OpenPGP support|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureInProgress|KNotes|Zeroconf support for sending notes on LAN|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureDone|Kontact|New Planner summary; combines Appointment+To-do+SpecialDates into 1 pretty summary|o_timocin@gmx.de|Oral Timocin}}&lt;br /&gt;
{{FeatureInProgress|KPilot|Finish Keyring conduit, base conduit code and test cases, category syncing|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|Akregator|Basic support for enclosures (Displaying links, mimetype and size)|osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureTodo|[http://kblogger.pwsp.net KBlogger]|KBlogger, a blogging application| christian_weilbach@.web.de|Christian Weilbach}}&lt;br /&gt;
{{FeatureTodo|Kleopatra|Konqueror and Dolphin Kleopatra plugins|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureDone|KMail|Aggregated attachment view in the mail header area of the reader window|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KMail|Merge the new message list from the SoC branch|mcguire@kde.org|Thomas McGuire}}&lt;br /&gt;
{{FeatureTodo|Kontact|Support for Kontact wide profiles|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Drag and drop in the free-busy view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for comments in replies to invitations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for extended free-busy lists|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KPilot|Port old conduits to new base conduit architecture and KDE4/Qt4|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|KBlogger|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|KNode|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|Kjots| Import notes from KNotes as KJots pages. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Email KJots pages using default mail client ({{bug|124509}}. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kontact|Tip-of-the-Day summary|molkentin@kde.org|Daniel Molkentin}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|refactor KByteArrayView|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|parameter dialog for &amp;quot;Copy as...&amp;quot;|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureInProgress|Ark|Implement proper drag/drop between Ark/dolphin|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Make the service menu work (possibly doing it as a KonqPopupPlugin|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|Ark|Proper password support|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Support for custom options from the compression interface (eg. a slider for selecting compression level for rar files)|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureTodo|Ark|Add an options dialog (maybe)|harald((at))stud(dot)ntnu.no|Harald Hvaal}}&lt;br /&gt;
{{FeatureInProgress|kwalletmanager|Move kwalletmanager to the Model/View architecture and redesign the UI|lemma@confuego.org|Michael Leupold}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support custom types via handlers|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|krosspython and krossruby|Support QList&amp;lt;CustomType*&amp;gt; constructs|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|Smoke|Wrap some more APIs (at least Akanodi for all languages and Plasma for C#)|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureInProgress|PyKDE|KCM support and other plugins|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
{{FeatureTodo|krossjava|Integrate into e.g. SuperKaramba and fix issues that show up.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossjava|Documentation++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossfalcon|Unittests++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|libkdegames|New highscore management system|milliams|Matt Williams}}&lt;br /&gt;
{{FeatureDone|kdiamond|Drag jewels|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|kdiamond|Optional OpenGL rendering|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|ksirk|Map scrolling arrows|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|KHotNewStuff skins|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ksirk|Jabber based net game finding|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Use only names in skins instead of numeric ids|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|ksirk|Skins editor|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ktron|Port and remake the KTron game for KDE 4.2|legolas@legolasweb.nl|Stas Verberkt}}&lt;br /&gt;
{{FeatureTodo|KNetWalk|Support for custom and non-square board sizes|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureTodo|KGoldrunner|Improvement to sound support and themes|mikelima@cirulla.net}}&lt;br /&gt;
{{FeatureTodo|KBlocks|Support for sounds|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KMahjongg|Support for sounds|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureInProgress|Killbots|New app for 4.2|parker.coates@gmail.com|Parker Coates}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Kate|Port and reenable the Snippets plugin.|jpetso@gmx.at|Jakob Petsovits}}&lt;br /&gt;
{{FeatureDone|perldoc KIOSlave|Add KIOSlave to allow reading Perldoc documentation.|michael.pyne&amp;amp;#64;kdemail&amp;amp;#46;net|Michael Pyne}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|XLIFF support|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|various Translation Memory enhancements|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureDone|Lokalize|wrap all windows belonging to one project into one MDI window|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Kross-based scripting|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|QA: glossary checklists|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|KAppTemplate|Add DBUS support in templates|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|Umbrello|Port code generation wizard to QWizard and replace all q3 widgets|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
{{FeatureInProgress|Umbrello|Replace all q3 widgets in the refactoring assistant|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KEduca|Rewrite of the classic test writing/taking application|matt@milliams.com|Matt Williams}}&lt;br /&gt;
{{FeatureTodo|KLettres|Number support|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureInProgress|KHangMan|Add a Open File action|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Integrate an editor|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Plasmoid|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Visual indicator when letter is wrong|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium's periodic table to use new QGraphicsView.|marcus@cryos.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureInProgress|Kalzium|Plasmoid to access Kalzium database|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureTodo|Step|Improve GUI for creating softbody|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureTodo|Step|Use common constraints handling code for collisions|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureDone|KAlgebra|New parser (using QLALR) and new lexer|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Import capability for MathML Presentation Markup in libanalitza|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureTodo|KAlgebra|Export to MathML Presentation Markup|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureTodo|KAlgebra|Some integration with the new KFormula widget|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureInProgress|Parley|Declensions|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|Parley|Rework main window infrastructure|d.laidig@gmx.de|Daniel Laidig}}&lt;br /&gt;
{{FeatureDone|KStars|Display millions of stars|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureDone|KStars|Tool to predict Conjunctions|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Earth Satellites|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Sky Calendar Tool|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureDone|KStars|Include HD Catalog Numbers (in search, in display)|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|mboquien@free.fr|Médéric Boquien}}&lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Separate INDI From KStars|mutlaqja@ikarustech.com|Jasem Mutlaq}}&lt;br /&gt;
{{FeatureTodo|KStars|Sync KStars time from device|mutlaqja@ikarustech.com|Jasem Mutlaq}}&lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Improve Observing List Wizard|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Display Comet Magnitudes whenever possible|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Information links in-place for each technical term|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Tool to suggest star-hopping techniques???|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|KStars|Extend conjunction tool to have one object unspecified, but have a genre of objects specified instead|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Bookmarks|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for MarbleWidget::setEnabled( bool )|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureTodo|Marble|Editing GeoDataFeatures|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Layer Management Class|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Plugin architecture for map layers|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Extending GeoPainter|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Marble Runners|hdevalence@gmail.com|Harry de Valence}}&lt;br /&gt;
{{FeatureInProgress|Marble|Marble Plasmoid|hdevalence@gmail.com|Harry de Valence}}&lt;br /&gt;
{{FeatureInProgress|Marble|Qt-Version settings dialog|hdevalence@gmail.com|Harry de Valence}}&lt;br /&gt;
{{FeatureInProgress|Marble|Panoramio Support||Shashank Singh}}&lt;br /&gt;
{{FeatureInProgress|Marble|Twitter Plugin||Shashank Singh}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|Marble|DGML2 Support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Support for imperial units|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Port authors list from the Qt-About dialog to the KDE-About dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Basic KML support|ps_ml@gmx.de|Patrick Spendrin}}&lt;br /&gt;
{{FeatureInProgress|Marble|GeoData Model/View Visualization|ps_ml@gmx.de|Patrick Spendrin}}&lt;br /&gt;
{{FeatureInProgress|Marble|More generic projection support|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Kig|Properties dialog for objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve construction of bisect lines.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve feedback when constructing objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|More geometric objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Script objects as macros (to be reused more than once).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve the Cabri import filter.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|KTurtle|Export canvas as image|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Optional rulers/grid for canvas units|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add command line|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureDone|KTurtle|Add a color picker|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
{{FeatureInProgress|KBruch|Usability Improvements|tiago.porangaba@ltia.fc.unesp.br|Tiago Porangaba}}&lt;br /&gt;
{{FeatureInProgress|KBruch|Merging KPercentage functionalities into KBruch|tiago.porangaba@ltia.fc.unesp.br|Tiago Porangaba}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Visualization of Schemes and Gradients at same time|tiago.porangaba@ltia.fc.unesp.br|Tiago Porangaba}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Dragon Player|Make Dragon indipendent from Xine|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|File Manager|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|play media dialog|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|slider changes|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|show info while playing audio files|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Use XCOMPOSITE real transparency when available for the track announcement popup|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow disabling crossfade|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KMagnifier|Refactor color menu, re-add invert, break current color blindness code into &amp;quot;daltonize&amp;quot; and &amp;quot;simulate&amp;quot;|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KMagnifier|Add color-shift modes to help people with color blindness|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KSnapshot|Add support for grabbing a single screen in multihead|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|Increase jpeg image quality from 75% to 85%|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureDone|KSnapshot|If we're saving the window decorations then record the window title and class in the image (if the format supports it) to play nice with indexers like strigi|rich@kde.org|Richard Moore}}&lt;br /&gt;
{{FeatureTodo|Okular|Sound annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Link annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Improve annotation support: for existing types (rubber stamps, line, note, etc), and for the way they are constructed and handled.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Caret annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Okular|Support for videos &amp;amp; movie annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Support .snp and .emf file formats|bradh@kde.org|Brad Hards}}&lt;br /&gt;
{{FeatureDone|Gwenview|Support for animated images (.gif and .mng)|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Red Eye Reduction|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Nepomuk integration|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Dolphin-like single-click selection|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Optional tree view|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|kio_bookmarks|A new konqueror home page displaying user bookmarks. See [[http://kde-apps.org/content/show.php?content=86516 description]]|xavier.vello@gmail.com|Xavier Vello}}&lt;br /&gt;
{{FeatureInProgress|kuiserver|KUiServer Goya port. General improvements for usability improvements|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
{{FeatureInProgress|kio fish/sftp|port fish and sftp to windows|brandon.ml@gmail.com|Carlo Segato}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|konqueror|A new konqueror recover-dialog replacement|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureTodo|konqueror|Rework bookmarks using Akonadi|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureInProgress|dolphin|Add zoom slider into the status bar and general zooming improvments|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureDone|dolphin|Tooltip previews|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeplasma-addons =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|PoTD engine|Import from playground|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Frame plasmoid|Honor EXIF rotation - see bug 164605|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Frame plasmoid|Previous, Pause and Next buttons - see bug 164704|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/Akonadi</id>
		<title>Projects/PIM/Akonadi</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/Akonadi"/>
				<updated>2008-09-27T14:29:18Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* I have an unknown error 255 when running akonadictl */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Akonadi TODO ==&lt;br /&gt;
The following list contains the things which need to be done for Akonadi.&lt;br /&gt;
&lt;br /&gt;
Note: The person noted in the &amp;quot;Contact&amp;quot; column is not necessarily the one implementing that feature, but the one who can tell you what to do and how to help, i.e. you can also contribute to those tasks ;-)&lt;br /&gt;
&lt;br /&gt;
=== Core ===&lt;br /&gt;
&lt;br /&gt;
==== 4.1 ====&lt;br /&gt;
&lt;br /&gt;
Urgent tasks that need to be finished for the KDE 4.1 release ('''May 19th'''):&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Item streaming in ItemSync/ResourceBase|As discussed in Osnabrueck|Tom/Volker}}&lt;br /&gt;
{{FeatureDone|Payload serialization format versioning|see below&lt;br /&gt;
tokoe@kde.org|Tobias}}&lt;br /&gt;
{{FeatureDone|API for additional item parts|As discussed in Osnabruck|Volker/Tobias}}&lt;br /&gt;
{{FeatureDone|Infrastructure for showing additional dialogs from agents/resources|As discussed in Osnabrueck|Tom}}&lt;br /&gt;
{{FeatureDone|Allow to limit ItemFetchJob to current cache content|Prevents search index feeder agents from downloading all remote data|vkrause@kde.org|Volker}}&lt;br /&gt;
{{FeatureDone|Fix API for item/collection modifications|See Osnabrueck meeting notes for details|vkrause@kde.org|Volker}}&lt;br /&gt;
{{FeatureDone|Plugin Versioning|For serializer plugins, also check using Qt plugin stuff instead of the libkdepim plugin framework|tokoe@kde.org|Tobias}}&lt;br /&gt;
{{FeatureDone|Tray app|small app to control the server and have a something that can report errors|tomalbers@kde.nl|Toma}}&lt;br /&gt;
{{FeatureDone|Backup support|Dump &amp;amp; Restore database contents, also useful when upgrading to a newer database version|tomalbers@kde.nl}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Scheduled for 4.2 ====&lt;br /&gt;
&lt;br /&gt;
That's the stuff we want to have in 4.2, very roughly ordered by priority.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Server error reporting|Helpful error message when the server cannot be started or if there is some other problem communicating with it.|vkrause@kde.org|Volker}}&lt;br /&gt;
{{FeatureInProgress|KResource migration tool|For KABC and KCal resources, setting up Akonadi &amp;lt;-&amp;gt; KResource bridges where needed|Volker}}&lt;br /&gt;
{{FeatureInProgress|KResource bridges|Subresource support still has to be done|Kevin}}&lt;br /&gt;
{{FeatureTodo|Complete iCal resource|error handling, robustness, legacy formats, etc.|}}&lt;br /&gt;
{{FeatureInProgress|Complete vCard resource|same as iCal|Bertjan}}&lt;br /&gt;
{{FeatureInProgress|Item size|Needed by Mailody|thomas.mcguire@gmx.net}}&lt;br /&gt;
{{FeatureInProgress|Finish collection model/view|see below|thomas.mcguire@gmx.net}}&lt;br /&gt;
{{FeatureInProgress|Collection statistics for sub-trees|Provide a CollectionStatus object covering the full sub-tree in the model, allowing accumulated unread counts etc.|Thomas}}&lt;br /&gt;
{{FeatureTodo|Batch jobs for modifying/deleting collections/items|it would be great to have jobs which perform operations on several entities in one sitting (a use-case: mark all as read).|}}&lt;br /&gt;
{{FeatureTodo|Batch job to retrieve a set of items from Akonadi|Those items don't belong to the same collection, rather they are located in different collections|}}&lt;br /&gt;
{{FeatureTodo|CollectionFetchJob/ItemFetchJob should be able to retrieve entities by remote id/mimetype|&lt;br /&gt;
This is problematic with change notifications, as they have to know about the filtering with the \Seen flag as well.&lt;br /&gt;
This type of filtering would be possible with full Nepomuk interface though. We don't want yet another query language here. The plan is to fix the nepomuk agent and use that as semi-public interface for now.|}}&lt;br /&gt;
{{FeatureTodo|ResourceBase::collectionsRetrievalDone is missing|I'm working around by calling collectionsRetrievedIncremental() with empty collection lists|}}&lt;br /&gt;
{{FeatureInProgress|LINK/UNLINK commands|Managing item references in virtual collections|vkrause@kde.org|Volker}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Post 4.2 ====&lt;br /&gt;
&lt;br /&gt;
This stuff is currently not considered for 4.2 due to lack of resources. Of course it will be added nevertheless if someone implements it. The list is completely unsorted.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Error reporting|Akonadi::Job basically has only one error code: Unknown|Tobias}}&lt;br /&gt;
{{FeatureInProgress|Akonadi Artwork|Icon for the tray app|tomalbers@kde.nl|Toma}}&lt;br /&gt;
{{FeatureTodo|Nepomuk integration|Generic Item tag/rate/comment, etc.|Tom}}&lt;br /&gt;
{{FeatureTodo|Account creation wizard|as discussed in Berlin, see below|}}&lt;br /&gt;
{{FeatureTodo|Sync collection tree after creating setting up a resource|see AgentInstanceCreateJob|}}&lt;br /&gt;
{{FeatureTodo|Support standard commands for QUndo framework||}}&lt;br /&gt;
{{FeatureTodo|Conflict detection in resources|See Osnabrueck meeting notes for details|}}&lt;br /&gt;
{{FeatureInProgress|Action framework|see below|vkrause@kde.org|Volker}}&lt;br /&gt;
{{FeatureTodo|Solid integration|Switch online/offline state in ResourceBase automatically|}}&lt;br /&gt;
{{FeatureTodo|Make unittests work without destroying the production database||}}&lt;br /&gt;
{{FeatureInProgress|Fix API docs|The libakonadi move as well as the huge API changes following it broke lots of the docs technical and content-wise, see below|Tobias}}&lt;br /&gt;
{{FeatureTodo|Filesystem Backend|Store content data in files instead of the database, transfer filehandles instead of data to the client|}}&lt;br /&gt;
{{FeatureTodo|Migration|Data and settings from pre-Akonadi times, see below|}}&lt;br /&gt;
{{FeatureTodo|Remote Search|Delegating searches to resources, see below|}}&lt;br /&gt;
{{FeatureTodo|Extended notifications|Item change notification do not yet include their source collections (real and virtual)|}}&lt;br /&gt;
{{FeatureTodo|Alternative for Akonadi::ResourceBase|Not using the scheduler to avoid the serialization of operations, see RSS resource. (This will get very complicated. Maybe use a proxy ResourceBase for this, which is thread-pooled?)|}}&lt;br /&gt;
{{FeatureTodo|Collection parameter for Monitor::itemChanged() and Monitor::itemRemoved()|&lt;br /&gt;
If the item resides in several collections (normal + virtual collections) then emit those signals for each collection. Adding this would mean changing it in many places (Monitor, Observer, ...), this is lots of work but probably the right thing to do.&lt;br /&gt;
Related to virtual collections, since with them, items can be in multiple collections. Better wait until the Nepomuk stuff is finished?|}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Supported Types ===&lt;br /&gt;
&lt;br /&gt;
Overview on the current state of support for various types:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Type !! Serializer !! Multipart Support !! Models !! Views !! Resources !! Notes&lt;br /&gt;
|-&lt;br /&gt;
|Email||yes||partial||MessageModel, MessageCollectionModel, threading proxy model||?||maildir, IMAP||threading agent&lt;br /&gt;
|-&lt;br /&gt;
|News||yes (1)||partial (1)||(1)||(1)||NNTP||&lt;br /&gt;
|-&lt;br /&gt;
|Contact||yes||no||ContactModel||-||vCard, facebook, KRes||&lt;br /&gt;
|-&lt;br /&gt;
|Events||yes||no||EventModel||-||iCal, KRes||&lt;br /&gt;
|-&lt;br /&gt;
|Notes||no||no||-||-||-||not started yet&lt;br /&gt;
|-&lt;br /&gt;
|Feeds||yes||no||Feeds, Items||?||OPML||GSoC in playground/pim&lt;br /&gt;
|-&lt;br /&gt;
|Bookmarks||yes||no||-||-||local bookmarks, del.icio.us||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
(1) see Email&lt;br /&gt;
&lt;br /&gt;
=== Mail specific extensions ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Extend Message Model|Add all required columns, save/restore layout, flag delegate, configurable columns, etc.|}}&lt;br /&gt;
{{FeatureTodo|Share mail flag code|Standard actions, standard flag enum/constants, Nepomuk interaction|}}&lt;br /&gt;
{{FeatureTodo|Extend ENVELOPE|Add more information to the envelope payload part in the serializer plugin, eg. trheading information is missing|}}&lt;br /&gt;
{{FeatureTodo|Fix/finish threading||}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Event/Todo/Journal specific extensions ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Todo proxy model|See KOrganizers To-Do view|Bruno?}}&lt;br /&gt;
{{FeatureInProgress|Subtype identification|See discussion on kde-pim mailinglist|Kevin?}}&lt;br /&gt;
{{FeatureTodo|Agenda view|KOrganizer agenda view based on Akonadi|Bruno?}}&lt;br /&gt;
{{FeatureTodo|Month view|KOrganizer month view based on Akonadi|Bruno?}}&lt;br /&gt;
{{FeatureTodo|Timeline view|KOrganizer timeline view based on Akonadi|}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Resources, Agents and others ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KResource Akonadi bridge|for applications using KCal or KABC|kevin.krammer@gmx.at|Kevin}}&lt;br /&gt;
{{FeatureInProgress|Akonadi KResource bridge|for data accessed through KCal or KABC resources|kevin.krammer@gmx.at|Kevin}}&lt;br /&gt;
{{FeatureTodo|Expire Agent||}}&lt;br /&gt;
{{FeatureTodo|MBOX Resource||Thomas}}&lt;br /&gt;
{{FeatureTodo|Extend IMAP Resource||}}&lt;br /&gt;
{{FeatureTodo|POP3 Resource||Thomas}}&lt;br /&gt;
{{FeatureInProgress|RSS Resource|GSoC in playground/pim ([[Projects/PIM/RSS_framework_for_Akonadi|Details]])|Dmitry}}&lt;br /&gt;
{{FeatureTodo|Filter Agent||}}&lt;br /&gt;
{{FeatureTodo|Search||}}&lt;br /&gt;
{{FeatureTodo|Filter Rule GUI|Used by filters and searches|}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Resource status overview (this should list all resources existing in KDE3 or already under development for Akonadi):&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Resource !! Retrieve Collections !! Retrieve Items !! Change Collections !! Change Items !! Configuration !! Notes&lt;br /&gt;
|-&lt;br /&gt;
|iCal||yes (4)||yes (1) (2)||no||yes (5)||yes||does not yet watch for file changes&lt;br /&gt;
|-&lt;br /&gt;
|vCard||yes (4)||yes (1) (2)||no||?||yes||does not yet watch for file changes&lt;br /&gt;
|-&lt;br /&gt;
|maildir||yes (1) (4)||yes (1) (2)||?||?||yes||&lt;br /&gt;
|-&lt;br /&gt;
|mbox||no||no||no||no||no||not started yet, code exists in KMail&lt;br /&gt;
|-&lt;br /&gt;
|IMAP||yes (1) (4)?||yes (1) (2)||no||no||no||code exists in kio_imap4 and Mailody, support for extensions: quota, ACL, annotations missing, what about Kolab and Scalix?&lt;br /&gt;
|-&lt;br /&gt;
|POP3||no||no||no||no||no||not started yet,code exists in kio_pop3&lt;br /&gt;
|-&lt;br /&gt;
|NNTP||yes (4)||yes (2)||n/a||n/a||yes||Needs support for local collection names and collection hierarchy&lt;br /&gt;
|-&lt;br /&gt;
|Local Bookmarks||?||?||?||?||(3)||Code in akonadi/resources&lt;br /&gt;
|-&lt;br /&gt;
|OpenChange||?||?||?||?||?||Code in akonadi/resources&lt;br /&gt;
|-&lt;br /&gt;
|Facebook||?||?||?||?||?||Code in playground/pim&lt;br /&gt;
|-&lt;br /&gt;
|del.icio.us||?||?||?||yes||no||Code in playground/pim&lt;br /&gt;
|-&lt;br /&gt;
|KABC||yes(6)||yes||no||yes||yes||&lt;br /&gt;
|-&lt;br /&gt;
|KCal||yes(6)||yes||yes(7)||yes||yes||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
# only full sync supported currently, need optimization&lt;br /&gt;
# does not yet honor cache policy&lt;br /&gt;
# still relies on QSettings for configuration and/or doesn't provide configuration over D-Bus&lt;br /&gt;
# does not yet provide correct access control settings&lt;br /&gt;
# only adding new items, not changing existing ones&lt;br /&gt;
# availability of child collections depend on whether the KResource plugin has subresources&lt;br /&gt;
# child collections can be added or removed if the KCal plugin can have subresources&lt;br /&gt;
&lt;br /&gt;
== Akonadi Braindump ==&lt;br /&gt;
Ideas/notes etc. on various open issues in Akonadi.&lt;br /&gt;
&lt;br /&gt;
=== Akonadi Standard Actions ===&lt;br /&gt;
&lt;br /&gt;
Idea: Have something like KStandardAction for Akonadi that not only includes the representation of the action but also its state management and the actual operations. Like libakonadi that should be splitted into a generic, type-independent part and be extensible for type-specific actions. This will enable code sharing among many applications and guarantee consistent actions everywhere.&lt;br /&gt;
&lt;br /&gt;
State management: watch selection models of a collection and/or item model.&lt;br /&gt;
&lt;br /&gt;
Use KXMLGUI for context menus in standard views to allow easy extensibility with custom actions.&lt;br /&gt;
&lt;br /&gt;
Generic actions:&lt;br /&gt;
* new collection [done]&lt;br /&gt;
* new virtual collection&lt;br /&gt;
* delete collection [done for single selection]&lt;br /&gt;
* copy collection [done]&lt;br /&gt;
* cut collection&lt;br /&gt;
* paste collection [done]&lt;br /&gt;
* synchronize collection [done for single selection]&lt;br /&gt;
* synchronize resource&lt;br /&gt;
* synchronize everything&lt;br /&gt;
* show collection properties dialog [done]&lt;br /&gt;
* delete item(s) [done]&lt;br /&gt;
* copy item(s) [done]&lt;br /&gt;
* cut item(s)&lt;br /&gt;
* paste item(s) [done]&lt;br /&gt;
* paste native data&lt;br /&gt;
* tag item(s)&lt;br /&gt;
* comment item&lt;br /&gt;
* rate item(s)&lt;br /&gt;
* configure resource&lt;br /&gt;
* add resource? (would need a type parameter, etc.)&lt;br /&gt;
* delete resource&lt;br /&gt;
* manage local subscriptions [done]&lt;br /&gt;
* move to submenu&lt;br /&gt;
* copy to submenu&lt;br /&gt;
&lt;br /&gt;
The list is definitely long enough to make this worthwhile.&lt;br /&gt;
&lt;br /&gt;
=== Collection Model / Collection View ===&lt;br /&gt;
&lt;br /&gt;
Ideas/missing features/bugs of the collection model/view:&lt;br /&gt;
&lt;br /&gt;
* Enable/disable status columns&lt;br /&gt;
* Show status after the name (see KMail)&lt;br /&gt;
* Size column&lt;br /&gt;
* Save/restore layout&lt;br /&gt;
* Custom collection icons (see KMail, also needed for resource defined special folders (eg. Inbox)&lt;br /&gt;
* Status tooltips (see KMail in 3.5.9)&lt;br /&gt;
* Quick search&lt;br /&gt;
* Favorite folder view as proxy model on top of the normal collection model (FlatCollectionProxyModel might be helpful for there)&lt;br /&gt;
* Accumulated statistics (unread, total, size)&lt;br /&gt;
* Fix dnd: move/copy/cancel menu always shows up and never has any effect&lt;br /&gt;
&lt;br /&gt;
=== Compatibility ===&lt;br /&gt;
&lt;br /&gt;
Notes on how to keep long-term protocol, source and binary compatibility.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;s&amp;gt;Detect server version in Akonadi::Session, might be useful in case of protocol extensions/changes&amp;lt;/s&amp;gt;&lt;br /&gt;
* What about database server version updates?&lt;br /&gt;
* &amp;lt;s&amp;gt;Versioning or any other kind of serialization format meta data, we'll need that in case of changes in serialization formats (see eg. Robert's compression patch where this is needed)&amp;lt;/s&amp;gt;&lt;br /&gt;
* &amp;lt;s&amp;gt;We currently use 32 bit ids, probably hard to change later on, is that enough?&amp;lt;/s&amp;gt;&lt;br /&gt;
* &amp;lt;s&amp;gt;Plugin versioning&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Resource API issues ===&lt;br /&gt;
&lt;br /&gt;
Notes/ideas/complaints about the Akonadi::ResourceBase API:&lt;br /&gt;
&lt;br /&gt;
* Extremely error prone:&lt;br /&gt;
** Scheduler dead-locks when a requested operation is not correctly announced as finished, esp. a problem in error cases.&lt;br /&gt;
** Using the result methods multiple times or when not requested asserts&lt;br /&gt;
* &amp;lt;s&amp;gt;Item streaming is missing, requiring all data to be in memory at once&amp;lt;/s&amp;gt;&lt;br /&gt;
* Non-incremental updates need to know the results of ItemSync to not have to provide all data, even for already existing/unchanged items.&lt;br /&gt;
&lt;br /&gt;
=== API / BC issues ===&lt;br /&gt;
&lt;br /&gt;
Smaller stuff that should be fixed before the ABI freeze and is not yet listed above:&lt;br /&gt;
&lt;br /&gt;
* Cleanup the D-Bus format used by NotificationMessage&lt;br /&gt;
* No mentioning of &amp;quot;IMAP&amp;quot; in the public API, we are not using IMAP&lt;br /&gt;
* Naming and installed location of libraries, headers and executables (see discussion on kde-pim ML)&lt;br /&gt;
* &amp;lt;s&amp;gt;Payload part labels are QStrings, attribute types are QByteArray&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Deployment issues ===&lt;br /&gt;
&lt;br /&gt;
* Multiple access: Should multiple Akonadi instances' mysqlds access a single set of  data files the mysql will likely corrupt the data.  This can happen in any NFS+YP installation where users can log onto any machine and access shared homes.  MySQL relies on filesystem locking to prevent multiple access. [http://dev.mysql.com/doc/refman/6.0/en/multiple-servers.html MySQL multiple instance docu].&lt;br /&gt;
* [http://dev.mysql.com/doc/refman/6.0/en/innodb-restrictions.html InnoDB tables should not be used on NFS].&lt;br /&gt;
* NFS speed: MySQL documentation recommends against locating its data files on network shares.&lt;br /&gt;
* AppArmor: Distros' AppArmor profiles prevent MySQL from writing outside its defined data directory (usually /var/lib/mysql).  This is a problem at least with *buntu and openSUSE.  These will need to be adapted.   It is possible to daisy-chain profiles so that MySQL started by Akonadi receives a different profile to MySQL running standalone.  An empty profile has all rights.  Another possibility is to adapt the general MySQL profile so it can write to ${XDG_DATA_HOME}/akonadi(usually ${HOME/}.local/share/akonadi).  Both support for profile chaining and ${HOME} may depend on the version of AppArmor installed.  What about SELinux?&lt;br /&gt;
* Backup: MySQL data files should not be backed up without telling the mysqld process, otherwise a corrupt backup will be made.  LOCK TABLES and FLUSH TABLES at the least.  A dump can be made or mysqlhotbackup may be used in some circumstances. We should consider sysadmins' backup techniques when planning/promoting Akonadi, as a simple rsync cronjob with running Akonadi will not work. [http://dev.mysql.com/doc/refman/6.0/en/backup.html MySQL backup advice].&lt;br /&gt;
&lt;br /&gt;
=== Account Creation Wizard ===&lt;br /&gt;
&lt;br /&gt;
Notes on the resource configuration wizard discussion.&lt;br /&gt;
&lt;br /&gt;
* WizardBase class&lt;br /&gt;
* Wizard discovery via .desktop files&lt;br /&gt;
* A wizard can configure multiple resources (eg. IMAP + LDAP for Kolab) and non-resources (mailtransport)&lt;br /&gt;
* Optionally hide resources completely covered by wizards in the Add Account dialog&lt;br /&gt;
* List wizards in the Add Account dialog&lt;br /&gt;
* Store Account -&amp;gt; Resources information to offer deletion of depending resources&lt;br /&gt;
&lt;br /&gt;
=== PostgreSQL datastore support ===&lt;br /&gt;
&lt;br /&gt;
First review of the akonadi code reveals PGSQL Qt driver is already supported, but the code is not totally ready for it. Some first reading comments about where to patch for supporting PostgreSQL too:&lt;br /&gt;
&lt;br /&gt;
==== akonadi/server/src/storage/dbinitializer.cpp ====&lt;br /&gt;
&lt;br /&gt;
* line 201..., ALTER TABLE ADD [UNIQUE] INDEX syntax is MySQL only, better use the common one CREATE [UNIQUE] INDEX ... one [done with revision 789899]&lt;br /&gt;
* line 303, QString DbInitializer::sqlType(const QString &amp;amp; type), LONGBLOB is the MySQL type, PostgreSQL will use BYTEA.&lt;br /&gt;
* line 362, qFatal(&amp;quot;Implement index support for your database!&amp;quot;);&lt;br /&gt;
  mysql: SHOW INDEXES FROM %1&lt;br /&gt;
  pgsql: SELECT c2.relname, i.indisprimary, i.indisunique, i.indisclustered, i.indisvalid, pg_catalog.pg_get_indexdef(i.indexrelid, 0, true), c2.reltablespace&lt;br /&gt;
  FROM pg_catalog.pg_class c, pg_catalog.pg_class c2, pg_catalog.pg_index i&lt;br /&gt;
  WHERE c.oid = '16713' AND c.oid = i.indrelid AND i.indexrelid = c2.oid&lt;br /&gt;
  ORDER BY i.indisprimary DESC, i.indisunique DESC, c2.relname&lt;br /&gt;
  &lt;br /&gt;
     relname    | indisprimary | indisunique | indisclustered | indisvalid |                       pg_get_indexdef                        | reltablespace&lt;br /&gt;
  --------------+--------------+-------------+----------------+------------+--------------------------------------------------------------+---------------&lt;br /&gt;
   foo_pkey     | t            | t           | f              | t          | CREATE UNIQUE INDEX foo_pkey ON foo USING btree (id)         |             0&lt;br /&gt;
   foo_time_key | f            | t           | f              | t          | CREATE UNIQUE INDEX foo_time_key ON foo USING btree (&amp;quot;time&amp;quot;) |             0&lt;br /&gt;
  (2 lignes)&lt;br /&gt;
&lt;br /&gt;
==== akonadi/server/src/storage/datastore.cpp ====&lt;br /&gt;
&lt;br /&gt;
* line 700, qint64 DataStore::highestPimItemId() const, seems wrong for a concurrent program (SELECT MAX(col) FROM table; is not reliable if another thread is inserting at the same time) : check the callers&lt;br /&gt;
* line 794, qint64 DataStore::lastInsertId( const QSqlQuery &amp;amp; query ), PostgreSQL doesn't provide concurrent-bogus last_insert_id, but from 8.2 accepts the syntax INSERT INTO ... RETURNING col1, col2, ...;&lt;br /&gt;
* line 806, QString DataStore::dateTimeFromQDateTime( const QDateTime &amp;amp; dateTime ), use PostgreSQL to_char() formatting function for date rather than having Qt do it&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
&lt;br /&gt;
* Avoid examples using KJob::exec() due to its problematic side-effects.&lt;br /&gt;
* Examples in the ItemCreateJob docs (and maybe others) operate on items in the root collection which does not work at all&lt;br /&gt;
* Resurrect the server API docs&lt;br /&gt;
* Content of http://api.kde.org/4.x-api/kdepim-apidocs/akonadi/html/index.html should probably be moved to server or client lib docs&lt;br /&gt;
&lt;br /&gt;
=== Migration of pre-Akonadi data and settings ===&lt;br /&gt;
&lt;br /&gt;
* KCal/KABC&lt;br /&gt;
** switch KRes resources to Akonadi KRes compat resources, use KRes Akonadi compat resource, basically injecting Akonadi inbetween&lt;br /&gt;
** Replace Akonadi KRes compat resources with their ported equivalent&lt;br /&gt;
** Application side does not need migration code, &amp;quot;only&amp;quot; port to Akonadi&lt;br /&gt;
* KMail&lt;br /&gt;
** Should migrate to one resource per account + one for previous local folders&lt;br /&gt;
** Problem: local folders are mixed mbox/maildir&lt;br /&gt;
*** Dedicated KMail compat resource?&lt;br /&gt;
*** Convert everything to maildir first?&lt;br /&gt;
** Flags are stored in proprietary binary format&lt;br /&gt;
* KNode&lt;br /&gt;
** Migrate every account to NNTP resource&lt;br /&gt;
** Local flags should be preserved, stored in proprietary binary format&lt;br /&gt;
** Local subscription state should be preserved (where is that stored?)&lt;br /&gt;
** Local folders using MBOX format + proprietary binary index&lt;br /&gt;
* Akregator&lt;br /&gt;
&lt;br /&gt;
=== Search ===&lt;br /&gt;
&lt;br /&gt;
* Delegation to resources still completely missing&lt;br /&gt;
** Requires query transformation&lt;br /&gt;
** Requires management for live searches&lt;br /&gt;
** Requires the ability to report search results (needs protocol extension)&lt;br /&gt;
* Query language still undecided, current options: XESAM, SPARQL&lt;br /&gt;
* Backend still undecided, current options: XESAM, Nepomuk&lt;br /&gt;
&lt;br /&gt;
== KMail Breakdown Plan ==&lt;br /&gt;
The current plan is to put some parts of KMail into a stand-alone&lt;br /&gt;
library, independent of KMail. This increases code reuse (for example, the message composer could be shared with Mailody) and makes the code a lot easier to maintain and to port to Akonadi.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Bodypart formatters||}}&lt;br /&gt;
{{FeatureTodo|Reader Window||}}&lt;br /&gt;
{{FeatureTodo|Composer: Editor||}}&lt;br /&gt;
{{FeatureTodo|Composer: Message Composer||}}&lt;br /&gt;
{{FeatureTodo|Composer: GUI Window||}}&lt;br /&gt;
{{FeatureTodo|Queue Manager for mailtransport||}}&lt;br /&gt;
{{FeatureTodo|Templates: Core||}}&lt;br /&gt;
{{FeatureTodo|Templates: GUI||}}&lt;br /&gt;
{{FeatureTodo|Port KMCommands||}}&lt;br /&gt;
{{FeatureTodo|Port away from KMMessage and KMFolder* everywhere it is left|An idea might be: wrap KMMsgBase/KMMessage inside a reference counted Message class. Insulate everything else from it by wrapper functions. KMFolder should be easier...|}}&lt;br /&gt;
{{FeatureTodo|Migration application for index and other config||}}&lt;br /&gt;
{{FeatureTodo|Port MDNs||}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== The Road to World Domination ==&lt;br /&gt;
&lt;br /&gt;
Sort of related so the stuff above but with a scope for all of KDE PIM and beyond.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Item !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Share identity config GUI parts|eg. the signature configuration widget|}}&lt;br /&gt;
{{FeatureTodo|Mailtransport Agent|Global shared outbox, central mail sending instance|}}&lt;br /&gt;
{{FeatureTodo|Recently sent to support in mailtransport|related to above, based on Akonadi/Nepomuk|}}&lt;br /&gt;
{{FeatureTodo|Composer engine|Shared stuff for KMail/KNode/Mailody: Crypto, editor, editor actions, attachment model, message assembly, etc.|}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Akonadi FAQ ==&lt;br /&gt;
&lt;br /&gt;
=== Where do I find the Akonadi config files? ===&lt;br /&gt;
&lt;br /&gt;
''~/.config/akonadi/''&lt;br /&gt;
&lt;br /&gt;
=== Where does Akonadi store my data? ===&lt;br /&gt;
&lt;br /&gt;
''~/.local/share/akonadi/''&lt;br /&gt;
&lt;br /&gt;
=== Where can I find the source code? ===&lt;br /&gt;
&lt;br /&gt;
There are three different parts of source code:&lt;br /&gt;
* The Akonadi server, which is KDE-independent. Currently, the code can be found at [http://websvn.kde.org/trunk/kdesupport/akonadi/ kdesupport/akonadi]. The server code will likely move to the [http://www.freedesktop.org/wiki/ freedesktop.org project] in the future, the move has already been [https://bugs.freedesktop.org/show_bug.cgi?id=15711 requested].&lt;br /&gt;
* The Akonadi KDE client libraries are in [http://websvn.kde.org/trunk/KDE/kdepimlibs/akonadi/ kdepimlibs/akonadi].&lt;br /&gt;
* Various agents, resources, the Akonadi console and much other misc stuff is in [http://websvn.kde.org/trunk/KDE/kdepim/akonadi/ kdepim/akonadi]&lt;br /&gt;
&lt;br /&gt;
=== Where can I find documentation? ===&lt;br /&gt;
&lt;br /&gt;
The documentation is mainly in the code itself, in the form of doxygen comments.&lt;br /&gt;
You can find the generated documentation on [api.kde.org api.kde.org], for example:&lt;br /&gt;
&lt;br /&gt;
* General documentation, including a design overview, is [http://api.kde.org/4.x-api/kdepim-apidocs/akonadi/html/index.html here]&lt;br /&gt;
&lt;br /&gt;
: Note that some links in the above documentation which point to the server or the KDE client libraries are currently broken, use the links below to access that documentation.&lt;br /&gt;
* Documentation for the KDE Akonadi client library is [http://api.kde.org/4.x-api/kdepimlibs-apidocs/akonadi/html/index.html here]&lt;br /&gt;
* Documentation about the server is [http://api.kde.org/kdesupport-api/kdesupport-apidocs/akonadi/server/html/index.html here]&lt;br /&gt;
&lt;br /&gt;
=== Which DBMS does Akonadi use? ===&lt;br /&gt;
&lt;br /&gt;
So far only MySQL. There is some work on PostgreSQL support going on though. Basically, every database that is supported by QtSQL can be used, requiring minimal changes in the code at most. However, not all of them provide the features needed by Akonadi (see next two questions).&lt;br /&gt;
&lt;br /&gt;
=== Why not use sqlite? ===&lt;br /&gt;
&lt;br /&gt;
We tried. Really. It can't handle the concurrent access very well, in the best case this means ''very'' slow operations, but we've also seen deadlocks and failing transactions. Once that's fixed in sqlite, adjusting Akonadi to use it again instead of MySQL is no problem.&lt;br /&gt;
&lt;br /&gt;
=== Why not use MySQL/Embedded? ===&lt;br /&gt;
&lt;br /&gt;
We tried that as well, there are two reasons for not using it: No support for the InnoDB engine (which we need for transaction support) and poor availability (only OpenSUSE provided usable packages, needed a patched QSQL driver).&lt;br /&gt;
&lt;br /&gt;
=== Do I need a running MySQL server? ===&lt;br /&gt;
&lt;br /&gt;
No. Akonadi starts its own local MySQL server (unless configured otherwise, see next question). All you need is having the 'mysqld' binary installed at runtime (usually found in the mysql-server package of your distribution).&lt;br /&gt;
&lt;br /&gt;
=== Can Akonadi use a normal MySQL server running on my system? ===&lt;br /&gt;
&lt;br /&gt;
Yes, it can. You find the corresponding settings in ''~/.config/akonadi/akonadiserverrc''.&lt;br /&gt;
&lt;br /&gt;
=== I don't like a database server because of backups/running on NFS/etc. ===&lt;br /&gt;
&lt;br /&gt;
See section &amp;quot;Deployment Issues&amp;quot; above, we are aware of that and working on it. Some of these, like backup/restore are already implemented. But please be aware that most of this issues also existed before (eg. with KMail's custom binary indexes).&lt;br /&gt;
&lt;br /&gt;
=== Can a single Akonadi instance be used by multiple users? ===&lt;br /&gt;
&lt;br /&gt;
No. There has to be one Akonadi server instance per user. However, it is possible to use a shared database server.&lt;br /&gt;
&lt;br /&gt;
=== Can I access the Akonadi server on a remote machine? ===&lt;br /&gt;
No. Akonadi is not a groupware server. It's a local cache only.&lt;br /&gt;
&lt;br /&gt;
=== I have an unknown error 255 when running akonadictl ===&lt;br /&gt;
Distributions using Apparmor require you to run '''aa-complain mysqld''' with root privileges then reload apparmor.&lt;br /&gt;
&lt;br /&gt;
On kubuntu this is:&lt;br /&gt;
&lt;br /&gt;
 sudo aa-complain mysqld&lt;br /&gt;
 sudo /etc/init.d/apparmor reload&lt;br /&gt;
&lt;br /&gt;
=== I get a &amp;quot;DB error: 'Could not open required defaults file: /home/$username/.local/share/akonadi//mysql.conf&amp;quot; ===&lt;br /&gt;
Although you probably don't have an apparmor in your processlist, you are still using it, run '''aa-complain mysqld''' and try again.&lt;br /&gt;
&lt;br /&gt;
=== What's the difference to EDS? ===&lt;br /&gt;
EDS is limited to contacts and calendar data, Akonadi is type-independent. Especially, Akonadi is designed to also handle high-volume data such as email. Akonadi and EDS also differ largely in their access protocol on the technical level (Corba/D-Bus vs. local socket with IMAP-like protocol/D-Bus) as well as one the protocol level (type specific vs. generic).&lt;br /&gt;
&lt;br /&gt;
=== How do I create a collection? ===&lt;br /&gt;
&lt;br /&gt;
From the developers point of view, there is Akonadi::CollectionCreateJob for that, from the users point of view, most applications allow that, eg. Mailody or akonadiconsole.&lt;br /&gt;
&lt;br /&gt;
However, there is one limitation: Top-level collections can only be created by resources, not by normal applications. The reason for that is that every object (collection or item) is supposed to have an owning resource, that is a resource that is responsible for storing and retrieving that object. There is an ongoing discussion to remove this restriction though.&lt;br /&gt;
&lt;br /&gt;
So, if you want to create a collection eg. for testing purposes, add a resource first. Most Akonadi applications offer an option to do that, a module for KControl is planned as well.&lt;br /&gt;
&lt;br /&gt;
[[Category:PIM]]&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
&lt;br /&gt;
* [http://pim.kde.org/akonadi/ http://pim.kde.org/akonadi/]&lt;br /&gt;
* #akonadi IRC channel on freenode&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/KJots</id>
		<title>Projects/PIM/KJots</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/KJots"/>
				<updated>2008-09-26T18:25:21Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Books and Pages */ Fix second option description re books&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;For KDE 4.2, KJots will undergo several changes to integrate more with some pillars of KDE- Akonadi, Nepomuk, and Plasma.&lt;br /&gt;
&lt;br /&gt;
This will involve changes in how user data is stored and represented.&lt;br /&gt;
&lt;br /&gt;
== Current state ==&lt;br /&gt;
&lt;br /&gt;
Currently, KJots books and pages are subclasses of QAbstractModelItem (see http://websvn.kde.org/trunk/KDE/kdepim/kjots/kjotsentry.h?view=markup)&lt;br /&gt;
Those classes are responsible for saving and loading data etc. Data is saved to .book files in the AppData directory. These .books files contain top-level books including any nested books.&lt;br /&gt;
&lt;br /&gt;
The books are organized in a bookshelf, which is a QTreeWidget (http://websvn.kde.org/trunk/KDE/kdepim/kjots/bookshelf.h?view=markup).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Current plan for 4.2 ==&lt;br /&gt;
&lt;br /&gt;
The plan is to create some new representations of these objects to integrate with akonadi and nepomuk. This will allow multiple plasmoids to allow interaction with multiple or the same books. Additionally, nepomuk will give the possiblility to represent pages in a heirarchy of tags.&lt;br /&gt;
&lt;br /&gt;
* http://thread.gmane.org/gmane.comp.kde.nepomuk/147&lt;br /&gt;
* http://thread.gmane.org/gmane.comp.kde.devel.pim/22743&lt;br /&gt;
* http://mail.kde.org/pipermail/plasma-devel/2008-September/001256.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plasmoid ===&lt;br /&gt;
&lt;br /&gt;
Plasmoids would have a root index set as the root of the bookshelf, or rooted in one book or tag collection. For example, if you have a structure like:&lt;br /&gt;
&lt;br /&gt;
* Book 1&lt;br /&gt;
** Page 1&lt;br /&gt;
** Page 2&lt;br /&gt;
** Page 3&lt;br /&gt;
** Sub-Book 1&lt;br /&gt;
*** Page 1&lt;br /&gt;
*** Page 2&lt;br /&gt;
* Book 2&lt;br /&gt;
** Page 1&lt;br /&gt;
** Page 2&lt;br /&gt;
&lt;br /&gt;
Then it will be possible to show a plasmoid which displays only Book1 (including Sub-Book1), only Book2, only Sub-Book1, or all books in the bookshelf. Additionally, it will be possible to show only pages with the same tag.&lt;br /&gt;
&lt;br /&gt;
Drag and drop between plasmoids will be possible as well as dragging books from the kjots application or kjots plasmoids onto the plasma workspace to create a new kjots plasmoid rooted at that book.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mimetypes ===&lt;br /&gt;
&lt;br /&gt;
The above drag and drop behaviour requires that a mimetype be registered for kjots books.&lt;br /&gt;
Additionally, akonadi requires that kjots books and pages have mimetypes set to facilitate item retrieval.&lt;br /&gt;
The mimetypes application/x-app-kde-kjots-book and application/x-app-kde-kjots-page will be used for these features.&lt;br /&gt;
&lt;br /&gt;
=== Books and Pages ===&lt;br /&gt;
&lt;br /&gt;
For akonadi support, KJotsBooks and KJotsPages wil be represented by simple structs and books will serialized/deserialized with a&lt;br /&gt;
[http://api.kde.org/4.1-api/kdepimlibs-apidocs/akonadi/html/classAkonadi_1_1ItemSerializerPlugin.html Akonadi::ItemSerializerPlugin]. This will allow syncronization of pages being displayed in different plasmoids and the kjots application.&lt;br /&gt;
&lt;br /&gt;
There are two options for what to serialize. The current state could be preserved, and top-level books would be [http://api.kde.org/4.1-api/kdepimlibs-apidocs/akonadi/html/classAkonadi_1_1Item.html Akonadi::Item]s and would be serialized. The payload would be the pages and nested books within the top-level book.&lt;br /&gt;
&lt;br /&gt;
Alternatively, the system could be changed to represent each book and page as a distinct file. Each page would be a [http://api.kde.org/4.1-api/kdepimlibs-apidocs/akonadi/html/classAkonadi_1_1Item.html Akonadi::Item] and could be serialized/deserialized individually. The payload would be the page content. Books would be Akonadi::Collection objects.&lt;br /&gt;
&lt;br /&gt;
For tagging, nepomuk requires that either books/pages be saved in individual files, or custom book and page classes exist (or both). An ontology will be defined which describes how books and pages relate to each other, and tag capable classes will be generated from that.&lt;br /&gt;
&lt;br /&gt;
I'm not sure if the same class can be used for serialization/deserialization and nepomuk tags. I will probably need AkonadiNoteBook, AkonadiNotePage, and  NepomukNoteBook, NepomukNotePage.&lt;br /&gt;
&lt;br /&gt;
=== Bookshelf ===&lt;br /&gt;
&lt;br /&gt;
The kjots bookshelf will be replaced with an [http://api.kde.org/4.1-api/kdepimlibs-apidocs/akonadi/html/classAkonadi_1_1CollectionModel.html Akonadi::CollectionModel]. Each book in the application will be a collection (which can be nested).&lt;br /&gt;
Page data will be retrieved with the [http://api.kde.org/4.1-api/kdepimlibs-apidocs/akonadi/html/classAkonadi_1_1CollectionModel.html#489f28b6acb4d13e1237765f85b4c120 Akonadi::CollectionModel::Roles::CollectionRole]. An [[Development/Tutorials/Akonadi/Resources|akonadi resource]] will be used to retrieve the collections, add/remove/modifiy items etc.&lt;br /&gt;
&lt;br /&gt;
Using nepomuk types, a proxy model can represent the tags on a particular page, so that pages can be grouped by tag on the left tree. Dragging items around on the tree would change the tags on the item.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects/PIM/KJots</id>
		<title>Projects/PIM/KJots</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects/PIM/KJots"/>
				<updated>2008-09-26T17:36:12Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Plan for using some pillars of kde in kjots.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;For KDE 4.2, KJots will undergo several changes to integrate more with some pillars of KDE- Akonadi, Nepomuk, and Plasma.&lt;br /&gt;
&lt;br /&gt;
This will involve changes in how user data is stored and represented.&lt;br /&gt;
&lt;br /&gt;
== Current state ==&lt;br /&gt;
&lt;br /&gt;
Currently, KJots books and pages are subclasses of QAbstractModelItem (see http://websvn.kde.org/trunk/KDE/kdepim/kjots/kjotsentry.h?view=markup)&lt;br /&gt;
Those classes are responsible for saving and loading data etc. Data is saved to .book files in the AppData directory. These .books files contain top-level books including any nested books.&lt;br /&gt;
&lt;br /&gt;
The books are organized in a bookshelf, which is a QTreeWidget (http://websvn.kde.org/trunk/KDE/kdepim/kjots/bookshelf.h?view=markup).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Current plan for 4.2 ==&lt;br /&gt;
&lt;br /&gt;
The plan is to create some new representations of these objects to integrate with akonadi and nepomuk. This will allow multiple plasmoids to allow interaction with multiple or the same books. Additionally, nepomuk will give the possiblility to represent pages in a heirarchy of tags.&lt;br /&gt;
&lt;br /&gt;
* http://thread.gmane.org/gmane.comp.kde.nepomuk/147&lt;br /&gt;
* http://thread.gmane.org/gmane.comp.kde.devel.pim/22743&lt;br /&gt;
* http://mail.kde.org/pipermail/plasma-devel/2008-September/001256.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Plasmoid ===&lt;br /&gt;
&lt;br /&gt;
Plasmoids would have a root index set as the root of the bookshelf, or rooted in one book or tag collection. For example, if you have a structure like:&lt;br /&gt;
&lt;br /&gt;
* Book 1&lt;br /&gt;
** Page 1&lt;br /&gt;
** Page 2&lt;br /&gt;
** Page 3&lt;br /&gt;
** Sub-Book 1&lt;br /&gt;
*** Page 1&lt;br /&gt;
*** Page 2&lt;br /&gt;
* Book 2&lt;br /&gt;
** Page 1&lt;br /&gt;
** Page 2&lt;br /&gt;
&lt;br /&gt;
Then it will be possible to show a plasmoid which displays only Book1 (including Sub-Book1), only Book2, only Sub-Book1, or all books in the bookshelf. Additionally, it will be possible to show only pages with the same tag.&lt;br /&gt;
&lt;br /&gt;
Drag and drop between plasmoids will be possible as well as dragging books from the kjots application or kjots plasmoids onto the plasma workspace to create a new kjots plasmoid rooted at that book.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Mimetypes ===&lt;br /&gt;
&lt;br /&gt;
The above drag and drop behaviour requires that a mimetype be registered for kjots books.&lt;br /&gt;
Additionally, akonadi requires that kjots books and pages have mimetypes set to facilitate item retrieval.&lt;br /&gt;
The mimetypes application/x-app-kde-kjots-book and application/x-app-kde-kjots-page will be used for these features.&lt;br /&gt;
&lt;br /&gt;
=== Books and Pages ===&lt;br /&gt;
&lt;br /&gt;
For akonadi support, KJotsBooks and KJotsPages wil be represented by simple structs and books will serialized/deserialized with a&lt;br /&gt;
[http://api.kde.org/4.1-api/kdepimlibs-apidocs/akonadi/html/classAkonadi_1_1ItemSerializerPlugin.html Akonadi::ItemSerializerPlugin]. This will allow syncronization of pages being displayed in different plasmoids and the kjots application.&lt;br /&gt;
&lt;br /&gt;
There are two options for what to serialize. The current state could be preserved, and top-level books would be [http://api.kde.org/4.1-api/kdepimlibs-apidocs/akonadi/html/classAkonadi_1_1Item.html Akonadi::Item]s and would be serialized. The payload would be the pages and nested books within the top-level book.&lt;br /&gt;
&lt;br /&gt;
Alternatively, the system could be changed to represent each book and page as a distinct file. Each page/book would be a [http://api.kde.org/4.1-api/kdepimlibs-apidocs/akonadi/html/classAkonadi_1_1Item.html Akonadi::Item] and could be serialized/deserialized individually. The payload would be the page content or the list of pages and nested books in the book.&lt;br /&gt;
&lt;br /&gt;
For tagging, nepomuk requires that either books/pages be saved in individual files, or custom book and page classes exist (or both). An ontology will be defined which describes how books and pages relate to each other, and tag capable classes will be generated from that.&lt;br /&gt;
&lt;br /&gt;
I'm not sure if the same class can be used for serialization/deserialization and nepomuk tags. I will probably need AkonadiNoteBook, AkonadiNotePage, and  NepomukNoteBook, NepomukNotePage.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Bookshelf ===&lt;br /&gt;
&lt;br /&gt;
The kjots bookshelf will be replaced with an [http://api.kde.org/4.1-api/kdepimlibs-apidocs/akonadi/html/classAkonadi_1_1CollectionModel.html Akonadi::CollectionModel]. Each book in the application will be a collection (which can be nested).&lt;br /&gt;
Page data will be retrieved with the [http://api.kde.org/4.1-api/kdepimlibs-apidocs/akonadi/html/classAkonadi_1_1CollectionModel.html#489f28b6acb4d13e1237765f85b4c120 Akonadi::CollectionModel::Roles::CollectionRole]. An [[Development/Tutorials/Akonadi/Resources|akonadi resource]] will be used to retrieve the collections, add/remove/modifiy items etc.&lt;br /&gt;
&lt;br /&gt;
Using nepomuk types, a proxy model can represent the tags on a particular page, so that pages can be grouped by tag on the left tree. Dragging items around on the tree would change the tags on the item.&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/Is_KDE_4.1_for_you%3F</id>
		<title>Schedules/Is KDE 4.1 for you?</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/Is_KDE_4.1_for_you%3F"/>
				<updated>2008-07-29T10:22:58Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Add info re KDE 3.5.10&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;KDE 4.1 is scheduled for release at the end of July 2008. This is a significant milestone for the KDE 4 series and for KDE in general, but as an early &lt;br /&gt;
release in the KDE 4 cycle, it does have some known issues which will not be fixed in KDE 4.1. Huge progress has been made in KDE 4.1 which is listed in the [[Schedules/KDE4/4.1_Feature_Plan|KDE 4.1 Feature Plan]].&lt;br /&gt;
&lt;br /&gt;
Some of the more obvious issues are listed below. If these issues are important to you, you should stay with KDE 3.5 (KDE 3.5.10 is scheduled for release in [[Schedules/KDE_3.5_Release_Schedule#August_2008:_Expected_release_date_of_KDE_3.5.10|August]]) or KDE 4.0 until KDE 4.2 when most of these issues are scheduled to be resolved.&lt;br /&gt;
&lt;br /&gt;
It is possible that distributions will work around some of these issues before distributing to users. KDE 4.2 is currently scheduled for release &lt;br /&gt;
in February 2009. &lt;br /&gt;
&lt;br /&gt;
== The Desktop ==&lt;br /&gt;
&lt;br /&gt;
The desktop in KDE 4.1 will mark the start of some significant user interface changes. This is a step away from the way the KDE 3 desktop was&lt;br /&gt;
designed, but everything possible on your KDE 3.5.9 desktop will also be possible on your KDE 4 desktop. For KDE 4.1, however, some features &lt;br /&gt;
are not yet complete, but should be ready for KDE 4.2.&lt;br /&gt;
&lt;br /&gt;
=== FolderView ===&lt;br /&gt;
&lt;br /&gt;
{{Box|Under Construction|2=[[Image:Action_configure.svg|noframe|left|40px]]&lt;br /&gt;
'''This page is under construction'''. This section could really do with some screenshots on the page. You can help by [{{fullurl:{{PAGENAME}}|action=edit}} editing this page].&lt;br /&gt;
 &amp;lt;div class=&amp;quot;clear&amp;quot;&amp;gt;&amp;lt;/div&amp;gt; }}&lt;br /&gt;
&lt;br /&gt;
FolderView is a new technology on the KDE 4 desktop which allows more than one collection of icons on your &amp;quot;desktop&amp;quot; and discourages using it as&lt;br /&gt;
dumping ground for miscellaneous files.  However, it can still be configured to behave just like KDE 3 did. See [http://blog.lydiapintscher.de/2008/06/14/folderview-is-the-awesome/ this blog entry by Lydia Pintscher] for some more information on FolderView.&lt;br /&gt;
&lt;br /&gt;
The following issues are known and are scheduled to be resolved in KDE 4.2 next February:&lt;br /&gt;
* Icons do not need to be in a grid. You can drag them to any point within the FolderView. However, the location you leave them in is not saved, so they will be in a grid again the next time you start the desktop.&lt;br /&gt;
* You can have a full screen &amp;quot;desktop with icons&amp;quot;, but if you do, you can not have a desktop background. See also: http://www.youtube.com/watch?v=RhYinDOKbE8&lt;br /&gt;
* You can have a desktop background, but then you must use the FolderView in regular, not entire screen mode (as shown in Lydia's blog above).&lt;br /&gt;
&lt;br /&gt;
=== Panels and workspaces ===&lt;br /&gt;
&lt;br /&gt;
Some panel issues can be resolved before KDE 4.2. Because of the modular design of Plasma, a new panel could be quite easily written with autohide functionality. This would likely be written by a distribution team or a developer on kde-apps.org.&lt;br /&gt;
&lt;br /&gt;
* Autohiding of panels is not yet configurable.&lt;br /&gt;
* It is not possible to set different desktop wallpapers for different virtual desktops.&lt;br /&gt;
* The Mac-style menu bar is not available.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Is this really not going to be fixed before KDE 4.2? It looks more like something that would be fixed in a KDE4.1.x release if not before. Is it konsole specific?&lt;br /&gt;
I'm removing this for now.&lt;br /&gt;
 --&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Session management ===&lt;br /&gt;
&lt;br /&gt;
* For a number of applications, e.g. Konsole, sessions do not get restored, as you're used to from KDE 3.5&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Applications ==&lt;br /&gt;
&lt;br /&gt;
=== New and missing applications ===&lt;br /&gt;
Some KDE 3 applications have not yet been ported to KDE 4. Most distributions still package KDE 3 versions of these applications with their KDE 4 desktop. Some notable applications which will not be included in KDE 4.1 are listed below:&lt;br /&gt;
&lt;br /&gt;
* KOffice has a different release schedule than KDE 4. KOffice 2.0 will likely be released late in 2008.  [http://www.koffice.org/news.php#itemKOffice20alpha9released Alpha 9] has been released with binaries for all three major platforms.  The developers are looking for volunteers to help put together screenshots for [http://www.kdedevelopers.org/node/3545 visual changelogs].&lt;br /&gt;
* Amarok has a different release schedule than KDE 4. The Amarok team is currently aiming for a first release in October 2008 for the 2.0 series. Amarok does have their first Alpha release out entitled [http://amarok.kde.org/en/node/523 Malina]. Nightly builds are available through [http://amarok.kde.org/wiki/User:Apachelogger/Project_Neon Project Neon].&lt;br /&gt;
* Konversation has a different release schedule than KDE 4. Konversation 2.0 does not yet have a release schedule.&lt;br /&gt;
* digiKam has a different release schedule than KDE 4.  They have a [http://www.digikam.org/drupal/node/356 beta release] of the KDE 4 port, with many new features.&lt;br /&gt;
* k3b has a different release schedule than KDE 4.  An alpha release of 1.1 (the KDE 4 port) is forthcoming, but not yet released.&lt;br /&gt;
* [http://kaffeine.kde.org/ Kaffeine] has a different release schedule than KDE 4. The KDE 4 port does not yet have a release schedule.&lt;br /&gt;
* Several [http://games.kde.org/ KDE games] do not have a KDE 4 port yet. Among these are kasteroids, kfouleggs, ksirtet.&lt;br /&gt;
* [http://www.krusader.org Krusader] has a different release schedule than KDE 4. There is a [http://krusader.org/down.php#development beta release] available.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Got more info on this? A bug number? A mailing list thread? Will this not be added before KDE 4.2 or is it KDE 4.1 material? &lt;br /&gt;
Removing for now. Login to techbase and use the talk page for more information&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Misc. Features ==&lt;br /&gt;
&lt;br /&gt;
* HTTP proxy support hasn't been ported yet. SOCKS proxies should work fine, however. &lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/Is_KDE_4.1_for_you%3F</id>
		<title>Schedules/Is KDE 4.1 for you?</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/Is_KDE_4.1_for_you%3F"/>
				<updated>2008-07-29T10:19:25Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Clarify a panel autohide issue.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;KDE 4.1 is scheduled for release at the end of July 2008. This is a significant milestone for the KDE 4 series and for KDE in general, but as an early &lt;br /&gt;
release in the KDE 4 cycle, it does have some known issues which will not be fixed in KDE 4.1. Huge progress has been made in KDE 4.1 which is listed in the [[Schedules/KDE4/4.1_Feature_Plan|KDE 4.1 Feature Plan]].&lt;br /&gt;
&lt;br /&gt;
Some of the more obvious issues are listed below. If these issues are important to you, you should stay with KDE 3.5 or KDE 4.0 until KDE 4.2 when most of these issues are scheduled to be resolved.&lt;br /&gt;
&lt;br /&gt;
It is possible that distributions will work around some of these issues before distributing to users. KDE 4.2 is currently scheduled for release &lt;br /&gt;
in February 2009. &lt;br /&gt;
&lt;br /&gt;
== The Desktop ==&lt;br /&gt;
&lt;br /&gt;
The desktop in KDE 4.1 will mark the start of some significant user interface changes. This is a step away from the way the KDE 3 desktop was&lt;br /&gt;
designed, but everything possible on your KDE 3.5.9 desktop will also be possible on your KDE 4 desktop. For KDE 4.1, however, some features &lt;br /&gt;
are not yet complete, but should be ready for KDE 4.2.&lt;br /&gt;
&lt;br /&gt;
=== FolderView ===&lt;br /&gt;
&lt;br /&gt;
{{Box|Under Construction|2=[[Image:Action_configure.svg|noframe|left|40px]]&lt;br /&gt;
'''This page is under construction'''. This section could really do with some screenshots on the page. You can help by [{{fullurl:{{PAGENAME}}|action=edit}} editing this page].&lt;br /&gt;
 &amp;lt;div class=&amp;quot;clear&amp;quot;&amp;gt;&amp;lt;/div&amp;gt; }}&lt;br /&gt;
&lt;br /&gt;
FolderView is a new technology on the KDE 4 desktop which allows more than one collection of icons on your &amp;quot;desktop&amp;quot; and discourages using it as&lt;br /&gt;
dumping ground for miscellaneous files.  However, it can still be configured to behave just like KDE 3 did. See [http://blog.lydiapintscher.de/2008/06/14/folderview-is-the-awesome/ this blog entry by Lydia Pintscher] for some more information on FolderView.&lt;br /&gt;
&lt;br /&gt;
The following issues are known and are scheduled to be resolved in KDE 4.2 next February:&lt;br /&gt;
* Icons do not need to be in a grid. You can drag them to any point within the FolderView. However, the location you leave them in is not saved, so they will be in a grid again the next time you start the desktop.&lt;br /&gt;
* You can have a full screen &amp;quot;desktop with icons&amp;quot;, but if you do, you can not have a desktop background. See also: http://www.youtube.com/watch?v=RhYinDOKbE8&lt;br /&gt;
* You can have a desktop background, but then you must use the FolderView in regular, not entire screen mode (as shown in Lydia's blog above).&lt;br /&gt;
&lt;br /&gt;
=== Panels and workspaces ===&lt;br /&gt;
&lt;br /&gt;
Some panel issues can be resolved before KDE 4.2. Because of the modular design of Plasma, a new panel could be quite easily written with autohide functionality. This would likely be written by a distribution team or a developer on kde-apps.org.&lt;br /&gt;
&lt;br /&gt;
* Autohiding of panels is not yet configurable.&lt;br /&gt;
* It is not possible to set different desktop wallpapers for different virtual desktops.&lt;br /&gt;
* The Mac-style menu bar is not available.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Is this really not going to be fixed before KDE 4.2? It looks more like something that would be fixed in a KDE4.1.x release if not before. Is it konsole specific?&lt;br /&gt;
I'm removing this for now.&lt;br /&gt;
 --&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Session management ===&lt;br /&gt;
&lt;br /&gt;
* For a number of applications, e.g. Konsole, sessions do not get restored, as you're used to from KDE 3.5&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Applications ==&lt;br /&gt;
&lt;br /&gt;
=== New and missing applications ===&lt;br /&gt;
Some KDE 3 applications have not yet been ported to KDE 4. Most distributions still package KDE 3 versions of these applications with their KDE 4 desktop. Some notable applications which will not be included in KDE 4.1 are listed below:&lt;br /&gt;
&lt;br /&gt;
* KOffice has a different release schedule than KDE 4. KOffice 2.0 will likely be released late in 2008.  [http://www.koffice.org/news.php#itemKOffice20alpha9released Alpha 9] has been released with binaries for all three major platforms.  The developers are looking for volunteers to help put together screenshots for [http://www.kdedevelopers.org/node/3545 visual changelogs].&lt;br /&gt;
* Amarok has a different release schedule than KDE 4. The Amarok team is currently aiming for a first release in October 2008 for the 2.0 series. Amarok does have their first Alpha release out entitled [http://amarok.kde.org/en/node/523 Malina]. Nightly builds are available through [http://amarok.kde.org/wiki/User:Apachelogger/Project_Neon Project Neon].&lt;br /&gt;
* Konversation has a different release schedule than KDE 4. Konversation 2.0 does not yet have a release schedule.&lt;br /&gt;
* digiKam has a different release schedule than KDE 4.  They have a [http://www.digikam.org/drupal/node/356 beta release] of the KDE 4 port, with many new features.&lt;br /&gt;
* k3b has a different release schedule than KDE 4.  An alpha release of 1.1 (the KDE 4 port) is forthcoming, but not yet released.&lt;br /&gt;
* [http://kaffeine.kde.org/ Kaffeine] has a different release schedule than KDE 4. The KDE 4 port does not yet have a release schedule.&lt;br /&gt;
* Several [http://games.kde.org/ KDE games] do not have a KDE 4 port yet. Among these are kasteroids, kfouleggs, ksirtet.&lt;br /&gt;
* [http://www.krusader.org Krusader] has a different release schedule than KDE 4. There is a [http://krusader.org/down.php#development beta release] available.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Got more info on this? A bug number? A mailing list thread? Will this not be added before KDE 4.2 or is it KDE 4.1 material? &lt;br /&gt;
Removing for now. Login to techbase and use the talk page for more information&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Misc. Features ==&lt;br /&gt;
&lt;br /&gt;
* HTTP proxy support hasn't been ported yet. SOCKS proxies should work fine, however. &lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan</id>
		<title>Schedules/KDE4/4.2 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.2_Feature_Plan"/>
				<updated>2008-07-23T18:43:11Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* kdepim */ Move anything not green from KDEPIM 4.1 features to 4.2.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for the 4.2 release.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [[Schedules/KDE4/4.2 Release Schedule]]&lt;br /&gt;
* [[Schedules/KDE4/4.1 Feature Plan]]&lt;br /&gt;
* [[Schedules/KDE4/Goals]]&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Other =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|System Settings|add Administrator mode button|?|?}}&lt;br /&gt;
{{FeatureInProgress|Eigen|Finish version 2.0 and move it to kdesupport|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
{{FeatureTodo|Eigen|Port all Eigen-using code in KDE and KOffice to Eigen 2.0|jacob@math.jussieu.fr|Benoît Jacob}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdelibs =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|kross|Extend QtScript integration.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|KDEPrint|Reintroduce KDEPrint in some form, depending on what Qt4.4 delivers.|john@layt.net|john Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Add framework for standard actions for 'Send to...' for e-mail, fax, etc by printing to PDF/PS.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|Migrate FilePrinter class from Okular to enable file printing for all apps via QPrinter, modify to utilise new Qt4.4 features.  To be discussed on k-c-d first.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KCalenderSystem|Add new calendar systems: Indian Civil (Saka), Ethiopean, Chinese, Pure Julian, Pure Gregorian. (Note, not all may live in kdelibs or be available as a global calendar system)|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|KLocale|Implement KLocale based methods to return weekend days and day of religious observance.  Currently KCalendarSystem provides dayOfPray(), but for Gregorian this is not correct in all locales where it is used.  Currently KDatePicker hardcodes Saturday and dayOfPray() as weekend days which may not be correct in all locales.  To be discussed first on k-c-d and with kdepim.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureTodo|Phonon|add Port class for fine grained control over data flow between Phonon objects|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|make AbstractMediaStream/StreamInterface threadsafe|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|&amp;quot;low-level&amp;quot; PCM I/O with at least an ALSA implementation|kretz@kde.org|Matthias Kretz and Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Phonon|VideoWidget snapshot function|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|KConfig|API review and export KConfigBackend|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigSkeleton KConfigGroup aware|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|KConfig|Make KConfigDialog work nicer with KConfigSkeleton + manually managed widgets|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Color KCM|Add 'smart setting' of extended colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Add KDE3 scheme import|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|Color KCM|Query kwin for supported colors; add full set of kwin colors|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KDEPrint|reintroduce KDEPrint Print Management tools, e.g. KCM, kprinter, kjobviewer, etc.  Depends upon progress of kdelibs side of KDEPrint and Qt4.4 feature set.|john@layt.net|john Layt}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |KRunner&lt;br /&gt;
{{FeatureInProgress|Krunner|Configuration options for blacklisting, user ranking, runner ranking, learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureInProgress|Krunner|SearchMatch configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple learning|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Simple GUI for above options|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runners able to share parsing|mumismo@gmail.com|Jordi Polo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Noun-Verb support|ryan.bitanga@gmail.com|Ryan P. Bitanga}}&lt;br /&gt;
{{FeatureTodo|Krunner|Implement Nuno's UI polishings|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runtime syntax documentation|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Runner configuration|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Krunner|Search set paging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|KRunner|runner for the plasma dbus interface|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma - Priority Features&lt;br /&gt;
{{FeatureInProgress|Plasma|Welcome plasmoid|aseigo@kde.org|Aaron Seigo}}{{FeatureInProgress|Plasma|JOLIE Integration|ervin@kde.org|Kevin Ottens}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Notification plasmoid|dimsuzkde@gmail.com|Dmitry Suzdalev}}&lt;br /&gt;
{{FeatureTodo|KWin|Make it possible to focus plasma panels|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|panel-&amp;gt;desktop dragging|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to full action bar when zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasmagik packaging (and package classes)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Networkmanager Plasmoid and DataEngine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureInProgress|Plasma|New ECMA Script Scriptengines|richmoore44@gmail.com|Richard Moore}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Extenders|r.scheepmaker@student.utwente.nl|Rob Scheepmaker}}&lt;br /&gt;
{{FeatureTodo|Plasma|Wallpaper plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Separate Desktop Settings from DesktopContainment|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Script Security Framework|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Python support|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
|- border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;text-align: center&amp;quot; |Plasma&lt;br /&gt;
{{FeatureDone|Plasma|Plasma Popup Tips|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Collapsing Applet convenience class|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureInProgress|Plasma|Taskbar grouping|hrigi_1@hotmail.com|Christian Mollekopf}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Weather plasmoid|shawn.starr@rogers.com|Shawn Starr}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Small Form Factors|m.kruisselbrink@student.tue.nl|Marijn Kruisselbrink}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Plasma On Screensaver|chanika@gmail.com|Chani Armitage}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Website update|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Grid applet|sebas@kde.org|Sebastian Kügler}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Techbase Tutorials|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Context menu plugins|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Add New Widgets: Pluggable widget browser|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Activity&amp;lt;-&amp;gt;Virtual Desktop Affinity|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Optional Per-Virtual Desktop DesktopView|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Make non-SVG painting in Plasma low-color and non-anim friendly|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Runtime DataEngine documentation (sources, usage, etc)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Panel Autohide|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Keyboard Shortcut Config UI|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Systray++ Spec|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Save icon positioning in folderview|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|physics-based animator|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|New wallpapers|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Preserve wallpaper choice by copying user paper to home dir|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|New way of handling wallpapers and different sizes (package format, and so on...)|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|Top-level windows plasmoids|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureTodo|Plasma|drop indicator in panel|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|improve usability of appletbrowser delete button|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|adding containments from the appletbrowser (and remove the &amp;quot;add panel&amp;quot; from DefaultDeskrop)|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|Expand cashew to cover the containment when fully zoomed out|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|highlight the applet with active keyboard shortcuts|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|dbus interface|chanika@gmail.com|Chani}}&lt;br /&gt;
{{FeatureTodo|Plasma|make the panel controller a bit more usable|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|Plasma|nicely draw the desktop toolbox when it's moved because of a panel|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|Plasma|theme Plasma::PushButton with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Tabbar widget derived from QTabBar and themed with svg|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureTodo|Plasma|Complete the panel size sliders feature: an applet can ask the panel to resize|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kopete|MSNP15 implementation for MSN|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|UPnp Support|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Updated contact list interface (uses Qt 4 rather than Qt 3)|mattr@kde.org|Matt Rogers}}&lt;br /&gt;
{{FeatureTodo|Kopete|Update Kopete to better support Decibel|kopete-devel@kde.org|Kopete Developers}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Contacts plasmoid|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|KGet|MultiSource-Downloading|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|KGet|Support mms://-protocol, see https://launchpad.net/libmms|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureTodo|KGet|MLDonkey-Plugin based on libkmldonkey|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Network Manager Applet|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Akregator|Support for syncing the feed list with Google Reader |osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureInProgress|Kleopatra|OpenPGP support|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureInProgress|KNotes|Zeroconf support for sending notes on LAN|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureInProgress|Kontact|New Planner summary; combines Appointment+To-do+SpecialDates into 1 pretty summary|winter@kde.org|Allen Winter}}&lt;br /&gt;
{{FeatureInProgress|KPilot|Finish Keyring conduit, base conduit code and test cases, category syncing|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|Akregator|Basic support for enclosures (Displaying links, mimetype and size)|osterfeld@kde.org|Frank Osterfeld}}&lt;br /&gt;
{{FeatureTodo|[http://kblogger.pwsp.net KBlogger]|KBlogger, a blogging application| christian_weilbach@.web.de|Christian Weilbach}}&lt;br /&gt;
{{FeatureTodo|Kleopatra|Konqueror and Dolphin Kleopatra plugins|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureTodo|KMail|Aggregated attachment view in the mail header area of the reader window|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|Kontact|Support for Kontact wide profiles|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Drag and drop in the free-busy view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for comments in replies to invitations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Support for extended free-busy lists|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Blog-styled journal view|mike@mikearthur.co.uk|Mike Arthur}}&lt;br /&gt;
{{FeatureTodo|KOrganizer|Blogging KResource|mike@mikearthur.co.uk|Mike Arthur}}&lt;br /&gt;
{{FeatureTodo|KPilot|Port old conduits to new base conduit architecture and KDE4/Qt4|jkasper@kde.org|Jason 'vanRijn' Kasper}}&lt;br /&gt;
{{FeatureTodo|KBlogger|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|KNode|Port to use KRichTextEdit (Or KMEditor)|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureTodo|Kjots| Import notes from KNotes as KJots pages. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureTodo|Kjots| Email KJots pages using default mail client ({{bug|124509}}. |steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|Power Manager|import either Guidance Power Manager or move kde4powersaver into kdeutils|?|?}}&lt;br /&gt;
{{FeatureTodo|Okteta|add Kate-like search tool|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|refactor KByteArrayView|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for memory mapping of files|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|parameter dialog for &amp;quot;Copy as...&amp;quot;|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|Okteta|add support for jobs like io, printing, string search or filter|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Smoke|Wrap some more APIs (at least Akanodi for all languages and Plasma for C#)|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureTodo|krossjava|Integrate into e.g. SuperKaramba and fix issues that show up.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureTodo|krossjava|Documentation++|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|PyKDE|KCM support and other plugins|simon@simonzone.com|Simon Edwards}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|libkdegames|New highscore management system|milliams|Matt Williams}}&lt;br /&gt;
{{FeatureDone|kdiamond|Drag jewels|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureTodo|kdiamond|Optional OpenGL rendering|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureInProgress|ksirk|Map scrolling arrows|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|ksirk|KHotNewStuff skins|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|ksirk|Jabber based net game finding|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|ksirk|Use only names in skins instead of numeric ids|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureTodo|ksirk|Skins editor|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureInProgress|ktron|Port and remake the KTron game for KDE 4.2|legolas@legolasweb.nl|Stas Verberkt}}&lt;br /&gt;
{{FeatureTodo|KNetWalk|Support for custom and non-square board sizes|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Kate|Port and reenable the Snippets plugin.|jpetso@gmx.at|Jakob Petsovits}}&lt;br /&gt;
{{FeatureInProgress|perldoc KIOSlave|Move perldoc KIOSlave from playground to kdesdk (awaiting feature window opening)|michael.pyne&amp;amp;#64;kdemail&amp;amp;#46;net|Michael Pyne}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|XLIFF support|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Lokalize|various Translation Memory enhancements|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|Kross-based scripting|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|Lokalize|QA: glossary checklists|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureTodo|KAppTemplate|Add DBUS support in templates|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|Umbrello|Port code generation wizard to QWizard and replace all q3 widgets|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
{{FeatureInProgress|Umbrello|Replace all q3 widgets in the refactoring assistant|andi.fischer@hispeed.ch|Andi Fischer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|KEduca|Rewrite of the classic test writing/taking application|matt@milliams.com|Matt Williams}}&lt;br /&gt;
{{FeatureTodo|KLettres|Number support|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureInProgress|KHangMan|Add a Open File action|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Integrate an editor|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Plasmoid|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KHangMan|Theme manager|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KLettres|Visual indicator when letter is wrong|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|Kalzium|Port Kalzium's periodic table to use new QGraphicsView.|marcus@cryos.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureInProgress|Kalzium|Plasmoid to access Kalzium database|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureTodo|Step|Improve GUI for creating softbody|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureTodo|Step|Use common constraints handling code for collisions|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureInProgress|KAlgebra|New parser using QLALR|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureInProgress|Parley|Declensions|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureInProgress|KStars|Display millions of stars|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Tool to predict Conjunctions|akarshsimha@gmail.com|Akarsh Simha}}&lt;br /&gt;
{{FeatureInProgress|KStars|Earth Satellites|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureInProgress|KStars|Sky Calendar Tool|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Marble widget for Geolocation tool|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Better printed star charts|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Better rendering of comets/asteroids|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|KStars|Texture mapping of the skymap???|kstars@30doradus.org|Jason Harris}}&lt;br /&gt;
{{FeatureTodo|Marble|Export map to MxN pixel bitmap|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Support for MarbleWidget::setEnabled( bool )|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Marble|Map Contents translation|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Layer Management Class|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Plugin architecture for map layers|rahn@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|DGML2 Support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|KDE-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Port authors list from the Qt-About dialog to the KDE-About dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Qt-Version settings dialog|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Improved KML support|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|OpenStreetMap support using original OSM tiles|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Real Time Cloud-Cover|tackat@kde.org|David Roberts / Torsten Rahn}}&lt;br /&gt;
{{FeatureInProgress|Marble|Mercator Projection|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|More generic projection support|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureInProgress|Marble|Usage of Marble in &lt;br /&gt;
non-widgets|inge@lysator.liu.se|Inge Wallin}}&lt;br /&gt;
{{FeatureTodo|Kig|Properties dialog for objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve construction of bisect lines.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve feedback when constructing objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|More geometric objects.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Script objects as macros (to be reused more than once).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Kig|Improve the Cabri import filter.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Export canvas as image|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Optional rulers/grid for canvas units|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Add command line|piacentini@kde.org|Mauricio Piacentini}}&lt;br /&gt;
{{FeatureTodo|KTurtle|Add a color picker|nielsslot@gmail.com|Niels Slot}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Dragon Player|Make Dragon indipendent from Xine|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|File Manager|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|play media dialog|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|slider changes|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|show info while playing audio files|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureTodo|JuK|Remove Qt/KDE3 support lib requirements|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow setting covers directly from URLs supported by KIO - drag/drop already allows this however|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Use XCOMPOSITE real transparency when available for the track announcement popup|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
{{FeatureTodo|JuK|Allow disabling crossfade|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|KMagnifier|Refactor color menu, re-add invert, break current color blindness code into &amp;quot;daltonize&amp;quot; and &amp;quot;simulate&amp;quot;|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
{{FeatureTodo|KMagnifier|Add color-shift modes to help people with color blindness|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KSnapshot|Add support for grabbing a single screen in multihead|rich@kde.org|Richard Moore}}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/KDE4/4.1_Feature_Plan</id>
		<title>Schedules/KDE4/4.1 Feature Plan</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/KDE4/4.1_Feature_Plan"/>
				<updated>2008-07-23T18:42:25Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* kdepim */ Move anything not green from KDEPIM 4.1 features to 4.2.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of planned features for KDE 4.1. '''The deadline for adding entries to this page has already passed'''.&lt;br /&gt;
&lt;br /&gt;
Any features which are not mentioned on this page must be rescheduled for 4.2 and added to the list at [[Schedules/KDE4/4.2 Feature Plan]].&lt;br /&gt;
&lt;br /&gt;
Please ensure that any entries you have on this page are kept up to date with respect to their status (''todo'', ''in-progress'' or ''done'').&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* todo =&amp;gt; not started yet&lt;br /&gt;
* in-progress =&amp;gt; started, but not completed yet&lt;br /&gt;
* done =&amp;gt; completed&lt;br /&gt;
__TOC__&lt;br /&gt;
= kdelibs =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureTodo|various|[[Projects/Widgets_and_Classes | Classes and Widgets]] that should be moved from others modules up into kdelibs|kde-core-devel@kde.org|The Core Developers}}&lt;br /&gt;
{{FeatureDone|kdeui|Add KFadeWidgetEffect to easily add fading UI transitions to KDE applications|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureDone|kdeui|Make icon naming spec compliant 3rd party icon themes like Tango or gnome-icon-theme work correctly.|jpetso@gmx.at|Jakob Petsovits}}&lt;br /&gt;
{{FeatureDone|kross|Add QtScript support|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|KHTML|Support CSS3 Media Queries|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureDone|KHTML|Efficient smooth scrolling|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureDone|Phonon KCM|More UI feedback|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|better integration of pulseaudio|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|Phonon|allow backend switching on the fly|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureDone|Phonon|subtitle, audio track selection|kretz@kde.org|Matthias Kretz and Ian Monroe}}&lt;br /&gt;
{{FeatureTodo|Phonon|DVD menu selection support|imonroe@kde.org|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Phonon|update device preference on the fly|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureDone|kdeui|Goya, a framework for inserting controls into itemviews in a really easy and fast way|ereslibre@kde.org|Rafael Fernández López}}&lt;br /&gt;
{{FeatureDone | kdeui | Rich textedit widget supporting most rich text features. | steveire@gmail.com | Stephen Kelly }}&lt;br /&gt;
{{FeatureInProgress|kdeui|Shortcut schemes for KDE applications|adymo@kdevelop.org|Alexander Dymo}}&lt;br /&gt;
{{FeatureDone|kmimetypetrader/kbuildsycoca|Replace use of profilerc for ordering applications with new mimeapps.list standard|faure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|knewstuff|Support caching, and speed up the interface through use of Models/Views and goya|jeremy@scitools.com|Jeremy Whiting}}&lt;br /&gt;
{{FeatureInProgress|Phonon KCM|Handle advanced devices|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|KDEPrint|Add CUPS Options tabs to QPrintDialog to support n-up, page borders, banner pages, page labels, mirror pages, job scheduling, and manual CUPS options.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureInProgress|KIO|speed limits on KIO Transfers|nolis71cu@gmail.com|Manolo Valdes}}&lt;br /&gt;
{{FeatureInProgress|kdeui|Printing of shortcuts from the shortcut dialog|apaku@gmx.de|Andreas Pakulat}}&lt;br /&gt;
{{FeatureDone|Kate Part|Annotation framework for the editor|apaku@gmx.de|Andreas Pakulat}}&lt;br /&gt;
{{FeatureInProgress|KJS|Bytecode interpreter and performance improvements|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureInProgress|KHTML|Sync class and file structure with WebKit to prepare merging|porten@kde.org|Harri Porten}}&lt;br /&gt;
{{FeatureInProgress|KHTML|contentEditable/designMode implementation|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureInProgress|KCalenderSystem|Complete migration of Jalali, Hijri, and Hebrew calendars to new code base.|john@layt.net|John Layt}}&lt;br /&gt;
{{FeatureDone|dnssd|Models for service browser and domain browser.|qbast@go2.pl|Jakub Stachowski}}&lt;br /&gt;
{{FeatureTodo|KHTML|Adaptable/Scriptable workarounds for broken websites.|maksim@kde.org|Maks Orlovich}}&lt;br /&gt;
{{FeatureTodo|KHTML|support for borders-* properties from the CSS3 Background and Borders Module|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureInProgress|KHTML|support for Audio/Video tags from the HTML5 draft specification|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureDone|KHTML|prospective loading of other network resources while waiting for arrival of blocking scripts|germain@ebooksfrance.org|Germain Garand}}&lt;br /&gt;
{{FeatureInProgress|KJS|Public API for extensions. Possibly analog to JavaScriptCore's C API.|porten@kde.org|Harri Porten}}&lt;br /&gt;
{{FeatureTodo|KTextEditor|Several interface extensions (e.g. open/save filter)|kwrite-devel@kde.org|Kate Developers}}&lt;br /&gt;
{{FeatureTodo|KTextEditor|Plugin for basic collaborative editing|kwrite-devel@kde.org|Kate Developers}}&lt;br /&gt;
{{FeatureInProgress|Kate Part|Scripting support for indentation and little helpers|kwrite-devel@kde.org|Kate Developers}}&lt;br /&gt;
{{FeatureTodo|Kate Part|Input modes to allow e.g. vim-like editing|kwrite-devel@kde.org|Kate Developers}}&lt;br /&gt;
{{FeatureDone|KIO|Implement support for inline editing in KFileItemDelegate|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureDone|KIO|Add support for drawing text shadows in KFileItemDelegate|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureDone|Emoticons lib|An emoticons library so each applications doesn't have to implement the same things over and over again |brandon.ml@gmail.com|Carlo Segato}}&lt;br /&gt;
{{FeatureDone|KFile|Implement fd.o desktop-bookmark-spec for KFilePlacesModel|nf2@scheinwelt.at|Norbert Frese}}&lt;br /&gt;
{{FeatureTodo|kdeui| Support for About Data of libs and modules used by a program |kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|kdeui|Drop-in replacement for QFontComboBox, with more informative previews in non-Latin1 locales|caslav.ilic@gmx.net|Chusslove Illich}}&lt;br /&gt;
{{FeatureDone|KAboutLicense|Select licenses by keyword, to centralize license info texts for frequent licenses.|caslav.ilic@gmx.net|Chusslove Illich}}&lt;br /&gt;
{{FeatureDone|KIO|KIO::AuthInfo and PasswordDialog: optional fields (like &amp;quot;domain&amp;quot;); optional anonymous switch and flag to suppress KIO's password caching|nf2@scheinwelt.at|Norbert Frese}}&lt;br /&gt;
{{FeatureTodo|kdeui|Support for KConfigGroup in KConfigSkeleton|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepimlibs =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Akonadi|Move the Akonadi development library from kdepim.|vkrause@kde.org|Volker Krause}}&lt;br /&gt;
{{FeatureDone|Akonadi|Item streaming in ItemSync/ResourceBase ([[Projects/PIM/Akonadi#Core|details]])|tomalbers@kde.nl|Tom Albers}}&lt;br /&gt;
{{FeatureDone|Akonadi|Payload serialization format versioning ([[Projects/PIM/Akonadi#Core|details]])|tokoe@kde.org|Tobias Koenig}}&lt;br /&gt;
{{FeatureDone|Akonadi|API for additional item parts ([[Projects/PIM/Akonadi#Core|details]])|tokoe@kde.org|Tobias Koenig}}&lt;br /&gt;
{{FeatureDone|Akonadi|Infrastructure for showing additional dialogs from agents/resources ([[Projects/PIM/Akonadi#Core|details]])|tomalbers@kde.nl|Tom Albers}}&lt;br /&gt;
{{FeatureDone|Akonadi|Allow to limit ItemFetchJob to current cache content ([[Projects/PIM/Akonadi#Core|details]])|vkrause@kde.org|Volker Krause}}&lt;br /&gt;
{{FeatureDone|Akonadi|Fix API for item/collection modifications ([[Projects/PIM/Akonadi#Core|details]])|vkrause@kde.org|Volker Krause}}&lt;br /&gt;
{{FeatureDone|Akonadi|Plugin Versioning ([[Projects/PIM/Akonadi#Core|details]])|tokoe@kde.org|Tobias Koenig}}&lt;br /&gt;
{{FeatureDone|Akonadi|Tray app ([[Projects/PIM/Akonadi#Core|details]])|tomalbers@kde.nl|Tom Albers}}&lt;br /&gt;
{{FeatureDone|Akonadi|Backup support ([[Projects/PIM/Akonadi#Core|details]])|tomalbers@kde.nl|Tom Albers}}&lt;br /&gt;
{{FeatureTodo|gpgme++2|newly designed gpgme++ (multithreaded, exceptions, less event loop integration: better for Windows)|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureDone|kpimutils|Change linklocator to use the new emoticon lib|brandon.ml@gmail.com|Carlo Segato}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-apps =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Dolphin|Details-view: Allow to open folders as tree (turned off per default).|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Refactor view-action handling to a DolphinViewActionHandler to share more code with DolphinPart|faure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|Konqueror|Re-implement Copy To / Move To in the popup menu|faure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|Konqueror|Separate Home URL settings in konquerorrc and kfmrc; save toolbar settings into the profile automatically|faure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|Dolphin|Simplify selecting of files in the single-click mode (based on http://aseigo.blogspot.com/2006/04/icons.html).|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureInProgress|Raptor|The KDE4-Application-Menu}}&lt;br /&gt;
{{FeatureDone|Dolphin|Provide optional tooltips for files and directories.|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureDone|Dolphin|Tabs|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureInProgress|Konqueror|Bring back the large tooltip like in kde3|faure@kde.org|David Faure}}&lt;br /&gt;
{{FeatureDone|Konqueror|Session management (save/restore session/restore from crash).|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureDone|Konqueror|Support for undo closed window.|edulix@gmail.com|Eduardo Robles Elvira}}&lt;br /&gt;
{{FeatureDone|Konqueror|Allow to configure the Dolphin KPart within the Konquerors settings dialog.|peter.penz@gmx.at|Peter Penz}}&lt;br /&gt;
{{FeatureDone|KInfocenter|Improve code and usability.|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
{{FeatureDone|KInfocenter|Reimplement partitions list.|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
{{FeatureDone|KInfocenter|Reimplement memory module.|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
{{FeatureDone|KInfocenter|Reimplement PCI module.|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
{{FeatureTodo|KInfocenter|Reimplement Network module.|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-workspace =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Plasma|Kickoff orientation dependent layout|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
{{FeatureDone|kmenuedit|Restore menu system|montel@kde.org|Laurent Montel}}&lt;br /&gt;
{{FeatureDone|KCM autostart|Configure autostart desktop file|montel@kde.org|Laurent Montel}}&lt;br /&gt;
{{FeatureDone|Plasma|improve fail to launch and needs &lt;br /&gt;
config|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|ksmserver|UI for selecting WMs|l.lunak@kde.org|Luboš Luňák}}&lt;br /&gt;
{{FeatureDone|Plasma|polish kickoff|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
{{FeatureDone|Plasma|toolbox improvements |aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|GHNS2 plasma themes|jeremy@scitools.com|Jeremy Whiting}}&lt;br /&gt;
{{FeatureDone|Plasma|Resizable, relocatable panel|binner@kde.org|Stephan Binner}}&lt;br /&gt;
{{FeatureInProgress|Solid|Refactor Solid::Control networking|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
{{FeatureInProgress|Solid|Backend for NetworkManager 0.7|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
{{FeatureInProgress|System Settings|Filtering/Lazy load category modules|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
{{FeatureInProgress|KSysGuard|Monitor process I/O|tapsell@kde.org|John Tapsell}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Mac-like menu bar plasmoid|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureTodo|System Settings|Administrator mode support|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
{{FeatureInProgress|krunner|Revamp GUI.|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureDone|Plasma|keyboard shortcuts|Chani Armitage|chanika@gmail.com}}&lt;br /&gt;
{{FeatureDone|Plasma|webkit widget|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|dashboard widget support|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureInProgress|Plasma|QtScript scriptengine|richmoore44@gmail.com|Richard Moore}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Improve QtScript support|richmoore44@gmail.com|Richard Moore}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Zooming User Interface|chanika@gmail.com|Chani Armitage}}&lt;br /&gt;
{{FeatureDone|Plasma|Multiple Desktop Containments|chanika@gmail.com|Chani Armitage}}&lt;br /&gt;
{{FeatureDone|Plasma|API changes [[Projects/Plasma/Tokamak1]]|panel-devel@kde.org|Plasma team }}&lt;br /&gt;
{{FeatureDone|Plasma|Panel Toolbox|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureDone|Plasma|Panel changes to make it work with the new default theme|notmart@gmail.com|Marco Martin}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Generic folder view applet/containment, that can also be used as the desktop background (showing the desktop folder).|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureDone|Krunner|Configuration dialog for KRunner|ryan.bitanga@gmail.com|Ryan P. Bitanga}}&lt;br /&gt;
{{FeatureDone|Plasma|Temperature sensing in the device engine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureDone|Plasma|Video data in the device engine|cblauvelt@gmail.com|Christopher Blauvelt}}&lt;br /&gt;
{{FeatureTodo|Plasma|New plasma themes|nuno@oxygen-icons.org|Nuno Pinheiro}}&lt;br /&gt;
{{FeatureDone|Plasma|change showConfigurationInterfaction to createConfigurationInterface|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|Plasma|Plasma::Service |aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureTodo|Plasma|panel hiding |aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|KWin|non-linear animations also for KWin|sebas@kde.org|Sebastian Kuegler}}&lt;br /&gt;
{{FeatureDone|KWin|Compiz's wobbly like effect for KWin|cedric.borgese@gmail.com|Cédric Borgese}}&lt;br /&gt;
{{FeatureDone|KDM|Theme KDM (login manager) by default|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureDone|Splash screen|New default splashscreen|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
{{FeatureInProgress|Nepomuk|Simple Desktop Search client based on Nepomuk search|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureInProgress|Plasma|Add a dataengine that implements Notifications DBus interface plasmoid which provides cute visualization of notifications along with nice and easy way to interact with them|dimsuz@gmail.com|Dmitry Suzdalev}}&lt;br /&gt;
{{FeatureDone|Plasma|loadDefaultSetup from a file, not hardcoded|aseigo@kde.org|Aaron Seigo}}&lt;br /&gt;
{{FeatureDone|ksmserver|Make the fade-to-gray logout effect work even when composite is disabled|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebase-runtime =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|nepomuk|Service that monitors file rename and delete operations and updates the metadata accordingly. kded module already exists in playground. problem: depends on inotify.|trueg@kde.org|Sebastian Trueg}}&lt;br /&gt;
{{FeatureDone|KCM emoticons|Adding/editing/removing emoticons theme|brandon.ml@gmail.com|Carlo Segato}}&lt;br /&gt;
{{FeatureDone|KCM splash screen|Be able to install splash screen themes via GHNS2|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|KCM icons|Be able to install icon themes via GHNS2|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureInProgress|phonon-xine|snapshots in video widget|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureTodo|phonon-xine|try to make VideoWidget work on GraphicsView|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureTodo|phonon-xine|make states compatible to other backends|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureTodo|phonon-xine|better support for pulseaudio (most work possibly in kdelibs)|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureInProgress|phonon-gstreamer|Make phonon-gstreamer as released with Qt 4.4 fully integrate into KDE and add the features added to libphonon after libphonon 4.1|kretz@kde.org|Matthias Kretz}}&lt;br /&gt;
{{FeatureDone|desktop ioslave|Add an ioslave that lists the contents of the desktop folder, and reports the names in the .desktop files instead of the actual file names.|fredrik@kde.org|Fredrik Höglund}}&lt;br /&gt;
{{FeatureDone|knotify|Add support for galago-like desktop notifications spec - if knotify will find a certain DBus service on session bus, it'll forward its popup notification events to this service |dimsuz@gmail.com|Dmitry Suzdalev}}&lt;br /&gt;
{{FeatureDone|Oxygen cursors|Oxygen cursor set|riccardo@kde.org|Riccardo Iaconelli}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeaccessibility =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KMagnifier|Add color blindness simulation|mw_triad@users.sourceforge.net|Matthew Woehlke}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeadmin =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KSystemLog|KSystemLog, a Log Viewer Tool. Move from kde-apps|nicolas.ternisien@gmail.com}}&lt;br /&gt;
{{FeatureDone|KCron|Do some refactoring in KCron|nicolas.ternisien@gmail.com}}&lt;br /&gt;
{{FeatureDone|KCron|Improve ergonomy and general interface|nicolas.ternisien@gmail.com}}&lt;br /&gt;
{{FeatureDone|KCron|Fix all existing bugs in KCron|nicolas.ternisien@gmail.com}}&lt;br /&gt;
{{FeatureDone|KCron|Convert KCron into a KCM Module, to use it in System Settings|nicolas.ternisien@gmail.com}}&lt;br /&gt;
{{FeatureInProgress|Environment Variables|Create a environment variables KCM Module|nicolas.ternisien@gmail.com}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeartwork =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdebindings =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Smoke2|Move modular Smoke2 to kdebindings-trunk.|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureDone|PHP-Qt|Move PHP-Qt to kdebindings-trunk.|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
{{FeatureDone|krossjava|Move krossjava to kdebindings-trunk.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|krosspython|Implicit convert PyQt/PyKDE QObject/QWidget instances.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|krossruby|Implicit convert QtRuby/Korundum QObject/QWidget instances.|mail@dipe.org|Sebastian Sauer}}&lt;br /&gt;
{{FeatureDone|Qyoto|Add delegate support for signal/slot connections.|kde-bindings@kde.org|KDE-bindings developers}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeedu =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Kalzium|Clean up the database. I am syncing with the BlueObelisk data repository again. There we decided to remove the density (not a element property but a compound property. I also removed the mean weight. We think it is better to provide correct data than a lot (but partly wrong) data.|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Calculator Plasmoid|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Vector support|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureDone|KAlgebra|2D Function support improved|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureDone|Step|A physics simulator, move from playground to kdeedu module |ks.vladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureDone|Kalzium|Update the snapshot of libavogadro to 0.6.1. This introduces a gazillion new possibilities for the 3D renderer and fixes many issues.|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureDone|Kalzium|Make use of the new libavogadro-version.|cniehaus@kde.org|Carsten Niehaus}}&lt;br /&gt;
{{FeatureDone|Kalzium|Expose molecular editing features of libavogadro.|marcus@cryos.org|Marcus D. Hanwell}}&lt;br /&gt;
{{FeatureDone|Marble|Copy position to clipboard|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureDone|Marble|Create Tiles on compile time|tackat@kde.org|Torsten Rahn}}&lt;br /&gt;
{{FeatureDone|Parley|Redesigned main window|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureDone|Parley|Vocabulary Plasmoid|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureDone|Step|Improve GUI for creating gas|ksvladimir@gmail.com|Vladimir Kuznetsov}}&lt;br /&gt;
{{FeatureDone|KAlgebra|Variables share between 2D and Console|aleixpol@gmail.com|Aleix Pol}}&lt;br /&gt;
{{FeatureDone|Parley|Export as HTML support|frederik.gladhorn@kdemail.net|Frederik Gladhorn}}&lt;br /&gt;
{{FeatureDone|Kiten|Link radselect with kiten|jkerian@gmail.com|Joe Kerian}}&lt;br /&gt;
{{FeatureDone|Kiten|Sort output by dictionary/user selected sorting values|jkerian@gmail.com|Joe Kerian}}&lt;br /&gt;
{{FeatureDone|Kig|Cubic-line intersection in case two of the three intersection points are already present|paolini@dmf.unicatt.it|Maurizio Paolini}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegames =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KBreakout|New game|fela.kde@gmail.com}}&lt;br /&gt;
{{FeatureDone|KDiamond|New game|majewsky@gmx.net|Stefan Majewsky}}&lt;br /&gt;
{{FeatureDone|Kollision|New game|p.capriotti@gmail.com|Paolo Capriotti}}&lt;br /&gt;
{{FeatureDone|KsirK|New game|kleag@free.fr|Gaël de Chalendar}}&lt;br /&gt;
{{FeatureDone|Kubrick|New game|ianw}}&lt;br /&gt;
{{FeatureDone|KBattleship|Bring back Zeroconf support for network games|qbast@go2.pl}}&lt;br /&gt;
{{FeatureDone|KBlocks|Finish display of points and level|piacentini@kde.org}}&lt;br /&gt;
{{FeatureDone|KBlocks|Implement KNewStuff support|piacentini@kde.org}}&lt;br /&gt;
{{FeatureDone|KBlocks|Implement key/action/shortcut configuration|piacentini@kde.org}}&lt;br /&gt;
{{FeatureDone|KBlocks|Docbook|piacentini@kde.org}}&lt;br /&gt;
{{FeatureDone|KMines|Add pause actions|eike.lange@kdemail.net}}&lt;br /&gt;
{{FeatureDone|KNetWalk|Better scoring system|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureDone|KNetWalk|Add support for loading new themes|fela.kde@gmail.com|Fela Winkelmolen}}&lt;br /&gt;
{{FeatureDone|KNetWalk|Configurable keyboard support|eike.lange@kdemail.net}}&lt;br /&gt;
{{FeatureInProgress|KGoldRunner|Improved theming and animation|mikelima@cirulla.net}}&lt;br /&gt;
{{FeatureInProgress|KGoldRunner|Sound support and theming|mikelima@cirulla.net}}&lt;br /&gt;
{{FeatureInProgress|KSquares|Multiplayer support|josef}}&lt;br /&gt;
{{FeatureInProgress|KGGZ|Add kggzcore and kggzdmod libraries|josef}}&lt;br /&gt;
{{FeatureTodo|KBlocks|Add additional themes|piacentini@kde.org}}&lt;br /&gt;
{{FeatureTodo|KGGZ|Add new Qt4-based core client as successor to the old KDE3-based KGGZ|josef (now SoC proposal)}}&lt;br /&gt;
{{FeatureTodo|KGGZ|Fire-and-forget highscore submission for single-player games and client-to-client multiplayer games|josef)}}&lt;br /&gt;
{{FeatureTodo|KGoldRunner|Also see kdegames/kgoldrunner/TODO|ianw}}&lt;br /&gt;
{{FeatureTodo|KGoldRunner|Hot new stuff support for themes and levels|mikelima@cirulla.net}}&lt;br /&gt;
{{FeatureTodo|KGoldRunner|Startup screen|mikelima@cirulla.net}}&lt;br /&gt;
{{FeatureTodo|KMahjongg|Reimplement the Board Editor|piacentini@kde.org}}&lt;br /&gt;
{{FeatureTodo|KShisen|Port to KScoreDialog|piacentini@kde.org}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdegraphics =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Gwenview|Undo system|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureDone|Gwenview|Fullscreen meta information|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureDone|Gwenview|Ability to open an image with another application|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureDone|Okular|Better Text-To-Speech integration: speech the whole document, the current page or the selection.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|Okular|Encryption support for ODF generator|bradh@kde.org}}&lt;br /&gt;
{{FeatureDone|Okular|Backward direction for text search.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Okular|Centralized text &amp;amp; graphics antialias configuration.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|Okular|EPub backend.|elylevy@cs.huji.ac.il|Ely Levy}}&lt;br /&gt;
{{FeatureInProgress|Okular|Improved form support (add missing types, handle the fields better).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Support for tagging with Nepomuk|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Gwenview|Thumbnail bar in view and fullscreen modes|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureDone|Gwenview|Crop ratio|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|KIPI support|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Red eye correction|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureTodo|Gwenview|Start page|aurelien.gateau@free.fr|Aurélien Gâteau}}&lt;br /&gt;
{{FeatureInProgress|Okular|JavaScript support (mostly for PDF documents).|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|Okular|Improved placement and sizing of the presentation mode: choose the screen to use, adapt to screen size changes.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Caret annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Okular|File attachment annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Sound annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Link annotations.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Improve annotation support: for existing types (rubber stamps, line, note, etc), and for the way they are constructed and handled.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureInProgress|Okular|Separate the &amp;quot;view properties&amp;quot; out of the Document, in a View class. Use it for the page view and the presentation mode.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureTodo|Okular|Per-document zoom level.|pino@kde.org|Pino Toscano}}&lt;br /&gt;
{{FeatureDone|libksane|Move libksane to kdegraphics|kare.sars@kolumbus.fi|Kåre Särs}}&lt;br /&gt;
{{FeatureDone|ksaneplugin|Replase libkscan with ksaneplugin|kare.sars@kolumbus.fi|Kåre Särs}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdemultimedia =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Dragon Player|A simple Phonon-based videoplayer application|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|Make Dragon indipendent from Xine|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|File Manager|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|play media dialog|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|slider changes|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureInProgress|Dragon Player|show info while playing audio files|ian.monroe@gmail.com|Ian Monroe}}&lt;br /&gt;
{{FeatureDone|JuK|Show cover art from more sources|michael.pyne@kdemail.net|Michael Pyne}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdenetwork =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KGet|Group-Settings|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureDone|KGet|Torrent-Support|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureDone|KGet|Transfer-Settings|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureDone|KGet|Webinterface|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureDone|Kopete|AIM offline messages|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureDone|Kopete|OTR Encryption support|michael_zanetti@gmx.net|Michael Zanetti}}&lt;br /&gt;
{{FeatureDone|Kopete|Status manager|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureDone|Kopete|Non-intrusive notification system|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureDone|Kopete|Bring back chat style selection via knewstuff2|earthwings@gentoo.org|Dennis Nienhüser}}&lt;br /&gt;
{{FeatureInProgress|Kopete|ICQ 6 status icons|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureInProgress|Kopete|Use notebook lid for auto away|kedgedev@centrum.cz|Roman Jarosz}}&lt;br /&gt;
{{FeatureDone|Kopete|use the new emoticons library|brandon.ml@gmail.com|Carlo Segato}}&lt;br /&gt;
{{FeatureDone|KGet|Nepomuk-Integration|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureDone|KGet|Global Speedlimits|l.appelhans@gmx.de|Lukas Appelhans}}&lt;br /&gt;
{{FeatureDone|KGet|Setup libbtcore from KTorrent in KGet (to avoid dependency to extragear)|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureDone|KGet|Extend the TransferHistory to use SQLite and XML-Backends and display the information inside a kcategorizedview|jgoday@gmail.com|Javier Goday}}&lt;br /&gt;
{{FeatureTodo|Kopete|GroupWise chatroom support|wstephenson@kde.org|Will Stephenson}}&lt;br /&gt;
{{FeatureTodo|[http://decibel.kde.org Decibel]|Decibel, a framework for real time communication services. Move from playground/pim|info@basyskom.de|Tobias Hunger}}&lt;br /&gt;
{{FeatureDone|KRDC|Optional system tray icon (with quick access to bookmarks)|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureDone|KRDC|Improved behavior of entering special keys for better workflow|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureDone|KRDC|Zeroconf support (detecting remote desktop services in local network)|romnes@stud.ntnu.no|Magnus Romnes}}&lt;br /&gt;
{{FeatureDone|KRDC|Bookmark dock widget for quick access to bookmarks|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
{{FeatureDone|KRDC|Support for up- and downscaling VNC remote desktop|uwolfer@kde.org|Urs Wolfer}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdepim =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|KAddressbook|Ability to add LDAP search results to distribution lists|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KAddressbook|Indication of which resource folder a contact belongs to|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KAddressbook|Read-only view for contacts in read-only folders|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KAddressbook|copy/cut/paste context menu items|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KAlarm|Allow use of multiple calendar resources|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Handle time zones and seasonal time changes properly|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Abolish alarm daemon and make kalarm trigger alarms itself|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Replace simple repetitions by recurrence sub-repetitions to reduce confusion|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|New option for display alarm text to be generated by a command|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Option to display alarm only if pre-alarm command succeeded|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|New option to specify reminder times in minutes|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|New option to restrict alarms to working hours|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Prevent multiple identical error messages accumulating for the same alarm|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Provide &amp;quot;don't show again for this alarm&amp;quot; option for command error messages|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Remember main window show/hide options used when KAlarm closed instead of setting them in Preferences dialog|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Simplification and improvements to alarm edit dialog|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KAlarm|Option to display alarms in centre of screen, with enable delay on buttons to avoid accidental acknowledgement|djarvie@kde.org|David Jarvie}}&lt;br /&gt;
{{FeatureDone|KJots|Support more rich text features like text formatting, hyperlinks and ordered/unordered lists.|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureDone|KJots|Add checkmarks to pages.|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureDone|KJots|Port to KRichText widget.|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureDone|KJots|Create a Kontact::Plugin to integrate kjots into Kontact.|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureDone|Kleopatra|Ability to search in internal and external certificates at the same time|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|Kleopatra|General UI Server|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureDone|Kleopatra|New, tabbed, mainwindow design|marc@kdab.net|Marc Mutz (Gpg4win)}}&lt;br /&gt;
{{FeatureDone|KMail|Ability to create hyperlinks in HTML messages|steveire@gmail.com|Stephen Kelly}}&lt;br /&gt;
{{FeatureDone|KMail|Ability to easily create todos with reminders from emails|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Ability to open messages from search results when the reader is hidden|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Better invitation update emails showing what changed|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Better reminder visualization in very small events|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Better, natural language search criteria names|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Clickable status columns|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Client side configurability of warnings in shared folders|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Colored ribbons for indication of signing and encryption status in the composer|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Configuration option for whether invitation emails are automatically deleted or not when having been acted upon|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Copy/paste and drag and drop from/to the mail composer|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Decryption on demand in reader window|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Display of quota information in foldertree tooltips|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Drag and drop and copy and paste support in the search result viewer|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Drag and drop from the mail reader window and mime-tree viewer|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Drag and drop of folders|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Editing of attachments from the composer|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Export and import of filters|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Favorites Folder|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Folder quicksearch|m.koller@surfeu.at|Martin Koller}}&lt;br /&gt;
{{FeatureDone|KMail|Harmonization of actions in main and standalone mail reader windows|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|IMAP Server storage of non-standard flags|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Improved TNEF attachment handling|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Improved quota warnings|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Initialize full search from quicksearch on request|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Override font and fontsize for standalone message viewers|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Per-folder identity configurability|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Recursive IMAP cache troubleshooting|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Resizable recipients area in composer|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Support for creating new mails based on received mails (Resend)|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Support for immediate sync of resource folders|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Support for soft line breaking|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Tab navigation through groups in the address completion|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Text snippets with shortcuts and variable expansion in the composer|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Warning about active out-of-office scripts|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|lost+found recovery of locally changed folders that lose access rights|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KMail|Port to use KRichTextEdit||Thomas McGuire}}&lt;br /&gt;
{{FeatureDone|KNotes|Ability to print notes|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KonsoleKalendar|Support &amp;quot;file&amp;quot; and &amp;quot;localdir&amp;quot; resources|winter@kde.org|Allen Winter}}&lt;br /&gt;
{{FeatureDone|Kontact|Config option to close despite system tray|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|Kontact|Harmonization of component naming in sidebar, configuration, summary view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|Kontact|Right-aligned component navigation toolbar|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|Kontact|Ubiquitous sync actions|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Ability to have both distribution lists and addresbook extension visible|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Aggregated reminders view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Better default resource colors|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Drag and drop of attachments|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Faster initial loading of kolab resources|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Forwarding and delegation of invitations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Improved coloring of agenda view items|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Improved event printing|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Merge of the attachment view in into the main page|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Merge of the free-busy and attendee views for easier scheduling|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Month view scrolling, paging, mouse-wheeling|tom_t@gmx.at|Thomas Thrainer}}&lt;br /&gt;
{{FeatureDone|KOrganizer|More readable Kolab resource folder labels|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Redesigned incidence editor UI|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Side-by-side calendar view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Support for by-value attachments|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Timeline calendar view|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Rich text incidence editor|mike@mikearthur.co.uk|Mike Arthur}}&lt;br /&gt;
{{FeatureDone|KOrganizer|Hide/Show reminder daemon icon in the systeay|winter@kde.org|Allen Winter}}&lt;br /&gt;
{{FeatureDone|KOrganizer|New To-do View (model/view)|tom_t@gmx.at|Thomas Thrainer}}&lt;br /&gt;
{{FeatureDone|[http://wiki.kde.org/ktimetracker ktimetracker]|Column-specific whatsthis-help| |Thorsten St&amp;amp;auml;rk}}&lt;br /&gt;
{{FeatureDone|[http://wiki.kde.org/ktimetracker ktimetracker]|Combined search and add task widget| |Thorsten St&amp;amp;auml;rk}}&lt;br /&gt;
{{FeatureDone|[http://wiki.kde.org/ktimetracker ktimetracker]|Drag&amp;amp;Drop| |Thorsten St&amp;amp;auml;rk}}&lt;br /&gt;
{{FeatureDone|[http://wiki.kde.org/ktimetracker ktimetracker]|File management (file-&amp;gt;load)| |Thorsten St&amp;amp;auml;rk}}&lt;br /&gt;
{{FeatureDone|[http://wiki.kde.org/ktimetracker ktimetracker]|Managing history| |Thorsten St&amp;amp;auml;rk}}&lt;br /&gt;
{{FeatureDone|[http://wiki.kde.org/ktimetracker ktimetracker]|Tracking tasks by active applications| |Thorsten St&amp;amp;auml;rk}}&lt;br /&gt;
{{FeatureDone|[http://wiki.kde.org/ktimetracker ktimetracker]|Whatsthis-help dependent on if a task has been created| |Thorsten St&amp;amp;auml;rk}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|KMail|HTML  Signatures|yez@familieschepers.nl|Edwin Schepers}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|KOrganizer|New Month View (qgraphicsitem)|bvirlet@kdemail.net|Bruno Virlet}}&lt;br /&gt;
{{FeatureDone|KMail|Improved error messages and audit log for cryptographic operations|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
&lt;br /&gt;
{{FeatureDone|KOrganizer|Ability to jump to the right day in the agenda from invitation mails|kdepim@kdab.net|Kolab Konsortium}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdesdk =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|Cervisia|New context menu entry &amp;quot;Add to Ignore List&amp;quot;|christian.loose@hamburg.de|Christian Loose}}&lt;br /&gt;
{{FeatureDone|Lokalize|Move this application (formerly known as Kaider) from extragear|shafff-at-ukr.net|Nick Shaforostoff}}&lt;br /&gt;
{{FeatureInProgress|Cervisia|A file view based on KDirModel|christian.loose@hamburg.de|Christian Loose}}&lt;br /&gt;
{{FeatureInProgress|KBugBuster|Make it work|fabiolocati@gmail.com|Fabio Locati}}&lt;br /&gt;
{{FeatureInProgress|KCachegrind|Everything working again|josef.weidendorfer@gmx.de|Josef Weidendorfer}}&lt;br /&gt;
{{FeatureInProgress|Kate|Session plasmoid|montel@kde.org|Laurent Montel}}&lt;br /&gt;
{{FeatureDone|KAppTemplate|Make a GUI for it |annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|KAppTemplate|Add a PyQt4 template|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|KAppTemplate|Add a Ruby template|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureDone|KAppTemplate|Add a Plasmoid template|annma@kde.org|Anne-Marie Mahfouf}}&lt;br /&gt;
{{FeatureTodo|KCachegrind|Better handling of huge symbols|josef.weidendorfer@gmx.de|Josef Weidendorfer}}&lt;br /&gt;
{{FeatureTodo|kioslave svn|Add Export/Import feature|montel@kde.org|Laurent Montel}}&lt;br /&gt;
{{FeatureTodo|Kate App|Improved session management|kwrite-devel@kde.org|Kate Developers}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdetoys =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdeutils =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureDone|printer-applet|Add printer applet for viewing print jobs and printer auto-configuration.|jriddell@ubuntuFIXMEcom|Jonathan Riddell}}&lt;br /&gt;
{{FeatureDone|Okteta|binary/hex editor (successor to KHexEdit). Move from playground/utils.|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|enable extract-strings tool and add copy|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|add &amp;quot;Export as&amp;quot;|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|make printing support only selection|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureInProgress|Okteta|ask artists for own icon|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureDone|Okteta|more explicit titels for undo/redo actions, also from filters|kossebau@kde.org|Friedrich W. H. Kossebau}}&lt;br /&gt;
{{FeatureInProgress|KDiskFree|Use Solid API|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
{{FeatureTodo|KwikDisk|Replace it by a Plasmoid (in the desktop bar and on the desktop|nicolas.ternisien@gmail.com|Nicolas Ternisien}}&lt;br /&gt;
{{FeatureDone|SuperKaramba|Integrate Kross and be able to write Karambas using Python, Ruby and JavaScript||The SuperKaramba Team}}&lt;br /&gt;
{{FeatureDone|SuperKaramba|Integrate into Plasma||The SuperKaramba Team}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdevelop =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdevplatform =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= kdewebdev =&lt;br /&gt;
{| class=&amp;quot;sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background: #ececec; white-space:nowrap;&amp;quot;&lt;br /&gt;
! Status !! Project !! Description !! Contact&lt;br /&gt;
{{FeatureInProgress|Kommander|Port the executor to KDE4.|amantia@kde.org|Andras Mantia}}&lt;br /&gt;
{{FeatureTodo|Kommander|Create Qt Designer plugins for the editor.|amantia@kde.org|Andras Mantia}}&lt;br /&gt;
{{FeatureInProgress|Quanta Plus|Create an upload plugin.| niko.sams@gmail.com|Niko Sams}}&lt;br /&gt;
{{FeatureInProgress|Quanta Plus|Create a new, state machine based parser.| amantia@kde.org|Andras Mantia}}&lt;br /&gt;
{{FeatureInProgress|Quanta Plus|Port existing functionality to KDevPlatform plugins. Only text mode is targeted.|amantia@kde.org|Andras Mantia}}&lt;br /&gt;
{{FeatureDone|KXslDbg|Port to KDE4.|keith@kdewebdev.org  | &lt;br /&gt;
Keith Isdale}}&lt;br /&gt;
{{FeatureTodo|KLinkStatus|Aided correction of broken links||}}&lt;br /&gt;
{{FeatureDone|KLinkStatus|Site check automation|moura@kdewebdev.org|Paulo Moura Guedes}}&lt;br /&gt;
{{FeatureInProgress|KLinkStatus|D-Bus/Scripting interfaces|moura@kdewebdev.org|Paulo Moura Guedes}}&lt;br /&gt;
{{FeatureInProgress|KLinkStatus|HTML validation|thesquib@gmail.com|Sam Ryan}}&lt;br /&gt;
{{FeatureDone|KLinkStatus|Ability to export only broken links|moura@kdewebdev.org|Paulo Moura Guedes}}&lt;br /&gt;
{{FeatureDone|KLinkStatus|Ability to do background search which only update the GUI when finished (much faster))|moura@kdewebdev.org|Paulo Moura Guedes}}&lt;br /&gt;
{{FeatureDone|KLinkStatus|Tray Icon and KUniqueApplication|Paulo Moura Guedes}}&lt;br /&gt;
{{FeatureDone|KLinkStatus|Scripting Plugin|Paulo Moura Guedes}}&lt;br /&gt;
{{FeatureDone|KLinkStatus|Get Hot New Stuff for HTML result stylesheets|Paulo Moura Guedes}}&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Template:SEFBox</id>
		<title>Template:SEFBox</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Template:SEFBox"/>
				<updated>2008-07-23T16:46:35Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Add some padding between the top and bottom rows.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;visibility:hidden;&amp;quot; &amp;gt;&lt;br /&gt;
=== {{{name}}} ===&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;rbroundbox&amp;quot; style=&amp;quot;width:100%;&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;div class=&amp;quot;rbtopwrap&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;rbtop&amp;quot;&amp;gt;&amp;lt;div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;{{{name}}}&amp;lt;/div&amp;gt;&lt;br /&gt;
 &amp;lt;div class=&amp;quot;rbcontent&amp;quot;&amp;gt;&lt;br /&gt;
{|style=&amp;quot;width:100%; background:#dadde0&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=50% align=center valign=top | '''Current State'''&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
| width=50% align=center valign=top | '''People'''&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding-right:10pt&amp;quot; valign=top |&lt;br /&gt;
{{{currentState|n/a}}}&lt;br /&gt;
| valign=top |&lt;br /&gt;
{{{people|Unknown}}}&lt;br /&gt;
|-  &lt;br /&gt;
| style=&amp;quot;padding-top:10pt&amp;quot; width=50% align=center valign=top | '''Get Involved'''&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
| style=&amp;quot;padding-top:10pt&amp;quot; width=50% align=center valign=top | '''Alternative Tools'''&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding-right:10pt&amp;quot; valign=top |&lt;br /&gt;
{{{getInvolved|n/a}}}&lt;br /&gt;
| valign=top |&lt;br /&gt;
{{{altTools|n/a}}}&lt;br /&gt;
|}&lt;br /&gt;
 &amp;lt;/div&amp;gt;&lt;br /&gt;
 &amp;lt;div class=&amp;quot;rbbot&amp;quot;&amp;gt;&amp;lt;div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Further_Information</id>
		<title>Development/Further Information</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Further_Information"/>
				<updated>2008-07-19T13:09:23Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: (spam) Undo revision 30190 by 61.19.54.164 (Talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Development/Further Information}}&lt;br /&gt;
== Web Sites ==&lt;br /&gt;
* [http://www.KDE.org KDE Home]&lt;br /&gt;
* [http://dot.kde.org KDE Dot News]&lt;br /&gt;
* [http://www.planetkde.org Planet KDE]&lt;br /&gt;
&lt;br /&gt;
==Blogs==&lt;br /&gt;
&lt;br /&gt;
== Books ==&lt;br /&gt;
Below are a list of books associated with KDE 4 development.  These may be specific to applications, using the Qt Toolkit, or specifically KDE 4 books.&lt;br /&gt;
&lt;br /&gt;
===KDE 4 Development Books===&lt;br /&gt;
&lt;br /&gt;
[mailto:manishchaks@gmail.com Manish Chakravarty ] from [http://kde.in KDE India] is working on a KDE 4 programming book. &lt;br /&gt;
The scheduled release date is the the 15th of August 2007&lt;br /&gt;
&lt;br /&gt;
===Qt 4 Development Books===&lt;br /&gt;
&lt;br /&gt;
==== English ====&lt;br /&gt;
&lt;br /&gt;
'''[http://www.qt4-book.com/ The Book of Qt 4: The Art of Building Qt Applications] by Daniel Molkentin'''&lt;br /&gt;
&lt;br /&gt;
Daniel Molkentin, author of this book, is a core developer of KDE. He uses practical examples to explain Qt characteristics like the signal slot concept and its event system. He guides the reader through developing applications both with and without Qt's graphical GUI builder &amp;quot;Qt Designer.&amp;quot; Topics covered include: tools needed to create dialog boxes; steps to follow when developing a GUI-based application; layout; how to visualize data using Qt's &amp;quot;model-view concept&amp;quot;; the QtSql model; the graphics library; as well as how to work with XML, databases, threads, and debugging. The book also includes lots of useful hints on how to use Qt's own datatypes, containers and algorithms and how to develop user-friendly applications.&lt;br /&gt;
&lt;br /&gt;
Available via: [http://www.amazon.com/Book-Qt-Art-Building-Applications/dp/1593271476 Amazon]&lt;br /&gt;
&lt;br /&gt;
'''[http://www.apress.com/book/view/1590598318 Foundations of Qt Development] by Johan Thelin'''&lt;br /&gt;
&lt;br /&gt;
Foundations of Qt Development is based on Qt 4.2, and is aimed at C++ programmers who want to become proficient using this excellent toolkit to create graphical applications that can be ported to all major platforms. The book is focused on teaching you to write your own code in addition to using existing code. And common areas of confusion are identified, addressed, and answered. Youll learn everything you need to know to get up and running fast.&lt;br /&gt;
&lt;br /&gt;
'''[http://www.informit.com/store/product.aspx?isbn=0131879057 An Introduction to Design Patterns in C++ with Qt 4] by Alan Ezust, Paul Ezust'''&lt;br /&gt;
&lt;br /&gt;
Now, with the help of An Introduction to Design Patterns in C++ with Qt 4.1, you can master C++ and design patterns together, using the world's #1 open source framework for cross-platform development: Qt 4.1. This complete tutorial and reference assumes no previous knowledge of C, C++, objects, or patterns. You'll walk through every core concept, one step at a time, learning through an extensive collection of Qt 4.1-tested examples and exercises. Learn objects fast: classes, inheritance, polymorphism, and more. Master powerful design patterns, from Iterator and Visitor to Abstract Factory and Facade. Discover efficient high-level programming techniques utilizing libraries, generics, and containers. Build graphical applications using Qt widgets, models, and views.&lt;br /&gt;
&lt;br /&gt;
Available via: [http://www.amazon.com/gp/product/0131879057 Amazon]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Available on-line at [http://cartan.cas.suffolk.edu/moin/OopDocbook?page=index.html Suffolk University]&lt;br /&gt;
&lt;br /&gt;
'''[http://www.informit.com/store/product.aspx?isbn=0131872494 C++ GUI Programming with Qt 4] by Jasmin Blanchette, Mark Summerfield'''&lt;br /&gt;
&lt;br /&gt;
The only official best-practice guide to Qt 4.1 Programming. Using C++ GUI Programming with Qt 4 you'll discover the most effective Qt 4 programming patterns and techniques as you master key technologies ranging from Qt's model/view architecture to Qt's powerful new 2D paint engine. The authors provide readers with unparalleled insight into Qt's event model and layout system. Then, using realistic examples, they introduce superior techniques for everything from basic GUI development to advanced database and XML integration.&lt;br /&gt;
&lt;br /&gt;
Available via: [http://www.amazon.com/gp/product/0131872494 Amazon]&lt;br /&gt;
&lt;br /&gt;
Free download is available from [http://www.qtrac.eu/C++-GUI-Programming-with-Qt-4-1st-ed.zip Mark Summerfield's web page] (ZIP with PDF, 5.5 MiB)&lt;br /&gt;
&lt;br /&gt;
'''Note''': the 2nd edition is now available which was updated for Qt 4.3 and is available from [http://www.amazon.com/Programming-Prentice-Source-Software-Development/dp/0132354160 Amazon]&lt;br /&gt;
&lt;br /&gt;
'''[http://www.informit.com/store/product.aspx?isbn=0131240722 C++ GUI Programming with Qt 3]'''&lt;br /&gt;
&lt;br /&gt;
The first official Trolltech guide to Qt 3.2 programming written by Trolltech software engineer Jasmin Blanchette and Trolltech's documentation manager Mark Summerfield, with a foreword by Matthias Ettrich, Trolltech lead developer and founder of the KDE project. The book teaches every facet of Qt 3 programming, ranging from basic user interfaces and layout managers to 2D/3D graphics, drag-and-drop, signaling, networking, XML, database integration, even internationalization and multithreading. The book in PDF format and sources can be downloaded from linked publisher's page.&lt;br /&gt;
&lt;br /&gt;
Available via: [http://www.amazon.com/gp/product/0131240722 Amazon]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Available on-line at: [http://www.phptr.com/content/images/0131240722/downloads/blanchette_book.pdf Prentice-Hall] (free PDF download)&lt;br /&gt;
&lt;br /&gt;
'''[http://www.pragmaticprogrammer.com/titles/ctrubyqt/ Rapid GUI Development with QtRuby]'''&lt;br /&gt;
&lt;br /&gt;
See how to use the powerful Qt3 library to create cross-platform GUI applications for Linux and OS X in Ruby. Covers installation, basic and advanced programming, event models, and Korundum. A must if you want to develop software with QtRuby/Korundum.&lt;br /&gt;
&lt;br /&gt;
'''[http://www.charlesriver.com/Books/BookDetail.aspx?productID=114877 Open Source Game Development: Qt Games for KDE, PDA's, and Windows]'''&lt;br /&gt;
&lt;br /&gt;
This book provides beginning and intermediate game programmers with a step-by-step resource to desktop game programming. The reader is introdcuded into the development of a desktop game application using Qt3/Qt4/Qtopia/KDE as development platform. Desktop game relevant topics such as pathfinding, AI, sound, 2D and 3D graphics and network programming are introduced in the scope of Qt and KDE. All topics are accompanied by plenty of source code examples in the book and on the companion CD-ROM.&lt;br /&gt;
&lt;br /&gt;
Available via: [http://www.amazon.com/gp/product/1584504064 Amazon]&lt;br /&gt;
&lt;br /&gt;
==== German ====&lt;br /&gt;
&lt;br /&gt;
[https://www.opensourcepress.de/index.php?26&amp;amp;backPID=15&amp;amp;tt_products=23 Qt 4: Einführung in die Applikationsentwicklung von Daniel Molkentin]&lt;br /&gt;
&lt;br /&gt;
===C++ Programming Books===&lt;br /&gt;
&lt;br /&gt;
==== English ====&lt;br /&gt;
&lt;br /&gt;
'''A Complete Guide to Programming in C++'''&lt;br /&gt;
&lt;br /&gt;
Suited for both complete novices and advanced users of C++. Takes a clear and logical approach using uncluttered English and purposeful examples. With examples and website content, it represents great value for the money and is highly recommended as both a tutorial for students and newcomers to C++ and a dip-in guide for more advanced practitioners. This book teaches you the C++ STL in a natural way while learning C++, while many others relegate the STL to an appendix.&lt;br /&gt;
&lt;br /&gt;
Available via: [http://www.amazon.com/gp/product/0763718173 Amazon]&lt;br /&gt;
&lt;br /&gt;
'''Problem Solving, Abstraction, and Design Using C++'''&lt;br /&gt;
&lt;br /&gt;
This book presents introductory programming material. Only the features of C++ that are appropriate to introductory concepts are introduced. Object-oriented concepts are presented. Abstraction is stressed throughout the book and pointers are presented in a gradual and gentle fashion for easier learning.&lt;br /&gt;
&lt;br /&gt;
Available via: [http://www.amazon.com/exec/obidos/ASIN/0201612771/ Amazon]&lt;br /&gt;
&lt;br /&gt;
'''[http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html Thinking in C++]'''&lt;br /&gt;
&lt;br /&gt;
The effective presentation, along with dozens of helpful code examples, make this book a standout. The text first sets the stage for using C++ with a tour of what object-oriented programming is all about, as well as the software design life cycle. The author then delves into every aspect of C++, from basic keywords and programming principles to more advanced topics, like function and operator overloading, virtual inheritance, exception handling, namespaces, and templates. C++ is a complex language, and the author covers a lot of ground using today's Standard C++, but without getting bogged down in excessive detail.&lt;br /&gt;
&lt;br /&gt;
Available via: [http://www.amazon.com/exec/obidos/ISBN=0139798099/ Amazon]&amp;lt;br /&amp;gt;&lt;br /&gt;
Available via: [http://www1.fatbrain.com/FindItNow/Services/home.cl?from=YGY567&amp;amp;store=1 Fatbrain]&lt;br /&gt;
&lt;br /&gt;
'''Accelerated C++: Practical Programming by Example'''&lt;br /&gt;
&lt;br /&gt;
If you don't have a lot of time, but still want to learn the latest in C++, you don't have to learn C first. You might learn more by digging into current language features and classes from the very beginning. That's the approach that's offered by Accelerated C++, a text that delves into more advanced C++ features like templates and Standard Template Library (STL) collection classes early on. This book arguably can get a motivated beginning programmer into C++ more quickly than other available tutorials.&lt;br /&gt;
&lt;br /&gt;
Available via: [http://www.amazon.com/exec/obidos/ASIN/020170353X/ Amazon]&lt;br /&gt;
&lt;br /&gt;
'''Effective C++: 50 Specific Ways to Improve Your Programs and Design'''&lt;br /&gt;
&lt;br /&gt;
Highly recommended by KDE core developers! It is not a book on syntax, so this should not be the 1st C++ book that you read -- but it should *definitely* be the 2nd! An absolutely terrific book focusing on basic C++ and object-oriented programming techniques. A crucial book for anyone new to C++ to read.&lt;br /&gt;
&lt;br /&gt;
2nd Edition Available via: [http://www.amazon.com/exec/obidos/ASIN/0201924889/ Amazon]&amp;lt;br /&amp;gt; &lt;br /&gt;
3rd Edition Available via: [http://www.amazon.com/exec/obidos/ASIN/0321334876/ Amazon]&lt;br /&gt;
&lt;br /&gt;
'''More Effective C++: 35 New Ways to Improve Your Programs and Designs''' &lt;br /&gt;
&lt;br /&gt;
From the author of the indispensable Effective C++, here are 35 new ways to improve your programs and designs. Drawing on years of experience, Meyers explains how to write software that is more effective: more efficient, more robust, more consistent, more portable, and more reusable. In short, how to write C++ software that's just plain better. For programmers at the intermediate level and above.&lt;br /&gt;
&lt;br /&gt;
Available via: [http://www.amazon.com/exec/obidos/ASIN/020163371X/ Amazon]&lt;br /&gt;
&lt;br /&gt;
'''C++ FAQs''' &lt;br /&gt;
&lt;br /&gt;
This book answers all the questions one can imagine about C++. The author explains the reasoning and principals behind good OO design in a simple and well informed manner. See also the free online [http://www.parashift.com/c++-faq-lite/ C++ FAQ LITE]. If you like the online lite version, you will be ecstatic about the printed book version because it covers much more.&lt;br /&gt;
&lt;br /&gt;
Available via: [http://www.amazon.com/exec/obidos/ASIN/0201589583/ Amazon]&lt;br /&gt;
&lt;br /&gt;
'''[http://www.icce.rug.nl/documents/cplusplus/cplusplus.html C++ Annotations]'''&lt;br /&gt;
&lt;br /&gt;
This online book is intended for knowledgeable users of C who would like to make the transition to C++. It is a guide for C++ programming courses given at the University of Groningen, Netherlands. As such, the book is not a complete C++ handbook. Rather, it serves as an addition to other documentation sources.&lt;br /&gt;
&lt;br /&gt;
Available via: [http://www.amazon.com/exec/obidos/ASIN/020163371X/ Amazon]&lt;br /&gt;
&lt;br /&gt;
'''The C++ Programming Language'''&lt;br /&gt;
&lt;br /&gt;
By Bjarne Stroustrup, the creator of C++. This book is not for people who do not have programming experience in C++ already. This is not a ground up tutorial on how to program in C++, and it is not a fast read. What this book is, however, is probably the best reference book on C++ in existance.&lt;br /&gt;
&lt;br /&gt;
Available via: [http://www.amazon.com/exec/obidos/ASIN/0201700735/ Amazon]&lt;br /&gt;
&lt;br /&gt;
===Other Books===&lt;br /&gt;
&lt;br /&gt;
'''[http://doc.trolltech.com/guibooks.html Books on GUI design]'''&lt;br /&gt;
&lt;br /&gt;
Trolltech's recommendations of books about GUI design.&lt;br /&gt;
&lt;br /&gt;
===Historic===&lt;br /&gt;
'''[http://developer.kde.org/documentation/books/kde-2.0-development/index.html KDE 2.0 Development]'''&lt;br /&gt;
&lt;br /&gt;
A 540 page book available online and in print. Covers KParts, DCOP, aRts, KDevelop, licensing, introductory programming, and other topics. The [http://kde20development.andamooka.org support site] has the full text in various formats along with community annotation and discussion of KDE development. This book is as close to an Official Book by the KDE Project as possible. All authors and technical editors are KDE developers.&lt;br /&gt;
&lt;br /&gt;
== IRC Channels ==&lt;br /&gt;
In general, IRC channels mentioned here are available on FreeNode. Connect to irc.kde.org, and check these channels out for further information.&lt;br /&gt;
&lt;br /&gt;
*KDE User Channel - [irc://irc.kde.org:6667/kde #kde]&lt;br /&gt;
*KDE Development - [irc://irc.kde.org:6667/kde-devel #kde-devel]&lt;br /&gt;
*Phonon - [irc://irc.kde.org:6667/phonon #phonon]&lt;br /&gt;
*Decibel - [irc://irc.kde.org:6667/decibel #decibel]&lt;br /&gt;
*Solid - [irc://irc.kde.org:6667/solid #solid]&lt;br /&gt;
*Plasma - [irc://irc.kde.org:6667/plasma #plasma]&lt;br /&gt;
*KDE EDU - [irc://irc.kde.org:6667/kdeedu #kdeedu]&lt;br /&gt;
*KDE Games - [irc://irc.kde.org:6667/kdegames #kdegames]&lt;br /&gt;
*KDE PIM - [irc://irc.kde.org:6667/kontact #kontact]&lt;br /&gt;
*KDevelop IDE - [irc://irc.kde.org:6667/kdevelop #kdevelop]&lt;br /&gt;
*Amarok - [irc://irc.kde.org:6667/kdevelop #amarok]&lt;br /&gt;
&lt;br /&gt;
== Newsgroups ==&lt;br /&gt;
== Forums ==&lt;br /&gt;
== Events ==&lt;br /&gt;
== Courses and Certifications ==&lt;br /&gt;
== Audio and Video Casts ==&lt;br /&gt;
== Source Code Repositories ==&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Schedules/Is_KDE_4.1_for_you%3F</id>
		<title>Schedules/Is KDE 4.1 for you?</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Schedules/Is_KDE_4.1_for_you%3F"/>
				<updated>2008-07-07T09:50:08Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: Applets can now be dragged on the panel&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;KDE 4.1 is scheduled for release at the end of July 2008. This is a significant milestone for the KDE 4 series and for KDE in general, but as an early &lt;br /&gt;
release in the KDE 4 cycle, it does have some known issues which will not be fixed in KDE 4.1. Huge progress has been made in KDE 4.1 which is listed in the [[Schedules/KDE4/4.1_Feature_Plan|KDE 4.1 Feature Plan]].&lt;br /&gt;
&lt;br /&gt;
Some of the more obvious issues are listed below. If these issues are important to you, you should stay with KDE 3.5 or KDE 4.0 until KDE 4.2 when most of these issues are scheduled to be resolved.&lt;br /&gt;
&lt;br /&gt;
It is possible that distributions will work around some of these issues before distributing to users. KDE 4.2 is currently scheduled for release &lt;br /&gt;
in February 2009.&lt;br /&gt;
&lt;br /&gt;
== The Desktop ==&lt;br /&gt;
&lt;br /&gt;
The desktop in KDE 4.1 will mark the start of some significant user interface changes. This is a step away from the way the KDE 3 desktop was&lt;br /&gt;
designed, but everything possible on your KDE 3.5.9 desktop will also be possible on your KDE 4 desktop. For KDE 4.1, however, some features &lt;br /&gt;
are not yet complete, but should be ready for KDE 4.2.&lt;br /&gt;
&lt;br /&gt;
=== FolderView ===&lt;br /&gt;
&lt;br /&gt;
{{Box|Under Construction|2=[[Image:Action_configure.svg|noframe|left|40px]]&lt;br /&gt;
'''This page is under construction'''. This section could really do with some screenshots on the page. You can help by [{{fullurl:{{PAGENAME}}|action=edit}} editing this page].&lt;br /&gt;
 &amp;lt;div class=&amp;quot;clear&amp;quot;&amp;gt;&amp;lt;/div&amp;gt; }}&lt;br /&gt;
&lt;br /&gt;
FolderView is a new technology on the KDE 4 desktop which allows more than one collection of icons on your &amp;quot;desktop&amp;quot; and discourages making it the&lt;br /&gt;
dumping ground for miscellaneous files (though that is also possible, like in KDE 3). See [http://blog.lydiapintscher.de/2008/06/14/folderview-is-the-awesome/ this blog entry by Lydia Pintscher] for some infomation on FolderView.&lt;br /&gt;
&lt;br /&gt;
The following issues are known are scheduled to be resolved in KDE 4.2 next February:&lt;br /&gt;
* Icons do not need to be in a grid. You can drag them to any point within the FolderView. However, the location you leave them in is not saved, so they will be a grid again the next time you start the desktop.&lt;br /&gt;
* You can have a full screen &amp;quot;desktop with icons&amp;quot;, but if you do, you can not have a desktop background. See also: http://www.youtube.com/watch?v=RhYinDOKbE8&lt;br /&gt;
* You can have a desktop background, but then you must use the FolderView in regular, not entire screen mode (as shown in Lydia's blog above).&lt;br /&gt;
&lt;br /&gt;
=== Panels and workspaces ===&lt;br /&gt;
&lt;br /&gt;
* Autohiding of panels is not yet configurable.&lt;br /&gt;
* It is not possible to set different desktop wallpapers for different virtual desktops.&lt;br /&gt;
* The Mac-style menu bar is not available.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Is this really not going to be fixed before KDE 4.2? It looks more like something that would be fixed in a KDE4.1.x release if not before. Is it konsole specific?&lt;br /&gt;
I'm removing this for now.&lt;br /&gt;
 --&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== Session management ===&lt;br /&gt;
&lt;br /&gt;
* For a number of applications, e.g. Konsole, sessions do not get restored, as you're used to from KDE 3.5&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Applications ==&lt;br /&gt;
&lt;br /&gt;
=== New and missing applications ===&lt;br /&gt;
Some KDE 3 applications have not yet been ported to KDE 4. Most distributions still package KDE 3 versions of these applications with their KDE 4 desktops. Some notable applications which will not be included in KDE 4.1 are listed below:&lt;br /&gt;
&lt;br /&gt;
* KOffice has a different release schedule than KDE 4. KOffice 2.0 will likely be released late in 2008.&lt;br /&gt;
* Amarok has a different release schedule than KDE 4. The Amarok team is currently aiming for a first release in September 2008 for the 2.0 series.&lt;br /&gt;
* Konversation has a different release schedule than KDE 4. Konversation 2.0 does not yet have a release schedule.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Got more info on this? A bug number? A mailing list thread? Will this not be added before KDE 4.2 or is it KDE 4.1 material? &lt;br /&gt;
Removing for now. Login to techbase and use the talk page for more information&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Misc. Features ==&lt;br /&gt;
&lt;br /&gt;
* HTTP proxy support hasn't been ported yet. SOCKS proxies should work fine, however. &lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Steveire</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Development/Software_Engineering_Framework</id>
		<title>Development/Software Engineering Framework</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Development/Software_Engineering_Framework"/>
				<updated>2008-07-02T20:05:54Z</updated>
		
		<summary type="html">&lt;p&gt;Steveire: /* Testing and Quality */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is intended to be a summary of the tools used by the KDE&lt;br /&gt;
project for Software Engineering tasks, i.e. everything around coding&lt;br /&gt;
work. This includes bugfixing, review, testing, documentation,&lt;br /&gt;
requirements etc.&lt;br /&gt;
&lt;br /&gt;
The current tool used by KDE should be listed along with the extent of&lt;br /&gt;
its use, known alternatives, and advantages/disadvantages.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Development Tools ==&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Source Control&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://websvn.kde.org/ Subversion 1.4]&lt;br /&gt;
| people=&lt;br /&gt;
The kde sysadmin team:&lt;br /&gt;
* [http://wire.dattitu.de/authors/2-Dirk Dirk Muller] &lt;br /&gt;
* [http://www.kdab.net/~dfaure/ David Faure]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-scm-interest}}&lt;br /&gt;
| altTools=&lt;br /&gt;
* [http://git.or.cz/ git] &lt;br /&gt;
* [http://bazaar-vcs.org/ bazaar]&lt;br /&gt;
* [http://www.selenic.com/mercurial/ mercurial]&lt;br /&gt;
* [[Projects/GitoriousKDE|Gitorious]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Subversion 1.4 is currently used for source control management in KDE on&lt;br /&gt;
a server hosted in Frankfurt. A separate server is used for access to&lt;br /&gt;
the read-only mirror anonsvn.kde.org.&lt;br /&gt;
&lt;br /&gt;
There is interest in migrating to a distributed source control&lt;br /&gt;
management tool, such as GIT. Discussion of this is taking place on the&lt;br /&gt;
[http://mail.kde.org/pipermail/kde-scm-interest kde-scm-interest]&lt;br /&gt;
mailing list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Build System&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://www.cmake.org/ CMake] &lt;br /&gt;
* [http://api.kde.org/cmake/modules.html Custom CMake module documentation]&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-buildsystem}}&lt;br /&gt;
| people=&lt;br /&gt;
* [http://www.kdedevelopers.org/blog/531 Alexander Neundorf]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CMake is the build tool currently used by KDE. It is Free Software&lt;br /&gt;
developed by [http://www.kitware.com/ kitware inc] and available on&lt;br /&gt;
multiple platforms supported by KDE.&lt;br /&gt;
&lt;br /&gt;
This tool was chosen as the buildsystem for the KDE4 series, and there&lt;br /&gt;
are no plans currently to migrate away from it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Identifier search&lt;br /&gt;
| currentState=&lt;br /&gt;
http://lxr.kde.org &lt;br /&gt;
| people=&lt;br /&gt;
The kde sysadmin team:&lt;br /&gt;
* [http://wire.dattitu.de/authors/2-Dirk Dirk Muller] &lt;br /&gt;
* [http://www.kdab.net/~dfaure/ David Faure]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[http://en.wikipedia.org/wiki/LXR_Cross_Referencer LXR] indexes classes and methods used in KDE. This can be useful for finding examples of how to use a class, and finding all uses of a class while refactoring or updating API.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Review ==&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Patch review (pre commit)&lt;br /&gt;
| currentState=&lt;br /&gt;
* [http://reviewboard.vidsolbach.de/ Review-board] used by plasma project.&lt;br /&gt;
* trunk/kdereview &lt;br /&gt;
| people=&lt;br /&gt;
* David Solbach and the kde sysadmin team maintain the Plasma review-board installation.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-core-devel}}: Discuss KDE patch review and tools&lt;br /&gt;
| altTools=&lt;br /&gt;
* Launchpad.net offers merge review/approval pre-merge [https://code.launchpad.net/~thumper/pqm/test-bzr-home/+merge/296/] [http://news.launchpad.net/cool-new-stuff/review-branch-merge-proposals-in-launchpad] [http://news.launchpad.net/cool-new-stuff/email-interface-to-code-review]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
In general KDE does not have a formal patch review policy for individual&lt;br /&gt;
patches. Some patches do get reviewed prior to committing to svn by the&lt;br /&gt;
relevant mailing lists. This is the case for particularly large patches&lt;br /&gt;
or patches by new developers.&lt;br /&gt;
&lt;br /&gt;
As an official policy kdereview is used to review new applications and&lt;br /&gt;
new classes for kdelibs prior to inclusion in KDE trunk. A drawback of&lt;br /&gt;
this system is that not all reviewers report that they have reviewed the&lt;br /&gt;
new content. It may make sense to have a checklist for reviewers to use,&lt;br /&gt;
eg, &lt;br /&gt;
&lt;br /&gt;
* All new classes documented [x] &lt;br /&gt;
* Private classes and d-pointers used where appropriate [x]&lt;br /&gt;
* Passes all krazy checks [ ]&lt;br /&gt;
* No obvious security concerns [ ]&lt;br /&gt;
* Designed well/maintainable [ ]&lt;br /&gt;
* etc...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Commit review (after commit)&lt;br /&gt;
| currentState=&lt;br /&gt;
* {{KDEML|kde-commits}} mailing list records all commits to KDE svn.&lt;br /&gt;
* The [http://commit-filter.org commit filter] is used to filter relevant commits based on path of the commit.&lt;br /&gt;
* SVN &amp;lt;tt&amp;gt;CCMAIL:&amp;lt;/tt&amp;gt; feature used to notify relevant mailing lists or individuals of specific commits.&lt;br /&gt;
* SVN &amp;lt;tt&amp;gt;BUG:&amp;lt;/tt&amp;gt; feature used to close bugs, and also notifies all bug subscribers of the commit.&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-commits}}&lt;br /&gt;
| altTools=&lt;br /&gt;
* Unknown&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The commit filter is used by several projects to forward all commits to the relevant mailing list.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&gt;
| name=Design Review&lt;br /&gt;
| currentState=&lt;br /&gt;
Design review takes place on &lt;br /&gt;
* mailing lists&lt;br /&gt;
* project wikis&lt;br /&gt;
* face-to-face/BOF sessions and sprints&lt;br /&gt;
* kdereview&lt;br /&gt;
| getInvolved=&lt;br /&gt;
* {{KDEML|kde-core-devel}} is used to announce new additions to kdereview.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
KDE does not have an offical design review process. Some design review takes place as part of the kdereview process. It may be possible to further formalise this or encourage design documentation.&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&lt;br /&gt;
{{SEFBox&lt;br /&g