Jump to content

Digikam/GSoC2013: Difference between revisions

From KDE Community Wiki
No edit summary
 
(156 intermediate revisions by 9 users not shown)
Line 1: Line 1:
= Small Projects to Introduce Students =
= Small Projects to Introduce Students =


== Auto Crop Tool ==
== libjpeg-turbo detection ==
* Brief explanation: In some users case relevant of photo workflow, as Panorama assembly for example, digiKam need an algorithm to detect black hole borders of image and crop it automatically, respecting the most largest suitable image area. No adjustment must be require by end user. As JPEG is the most used image format used in photography and as JPEG library support a loss-less crop feature, a specific way must be implemented to process JPEG crop in batch without to lose image quality.


* Dependencies: Batch Queue Manager, Image Editor.
* Review Board entry : https://git.reviewboard.kde.org/r/108821/
* Bugzilla entry: [https://bugs.kde.org/show_bug.cgi?id=267436 267436], [https://bugs.kde.org/show_bug.cgi?id=204135 204135]
* Assigned to : Pothineni sai bhushan
* Knowledge Prerequisite: C/C++, Qt, Imagery
* Status : <span style="color:green">Pending</span>
* Expected results: new editor and batch queue manager tools to crop automatically images
* Assigned to : Sayantan Datta
 
== Read face from Picasa metadata to populate digiKam database ==
 
* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=314509
* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=277429
* Assigned to : Veaceslav Munteanu


== Auto-Lens correction tool don't work in BQM ==
== Auto-Lens correction tool don't work in BQM ==
Line 20: Line 11:
* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=303848
* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=303848
* Assigned to : Akshay Ratan
* Assigned to : Akshay Ratan
* Status : <span style="color:green">Pending</span>


== Keyboard Tagging Improvements ==
== Keyboard Tagging Improvements ==
Line 26: Line 18:
* Assigned to : Saurabh Patel
* Assigned to : Saurabh Patel
* Note : author keyboard workflow need to be understood and tested. It miss some menu entries to make shortcuts visible to end users.
* Note : author keyboard workflow need to be understood and tested. It miss some menu entries to make shortcuts visible to end users.
* Status : <span style="color:green">Pending</span>
== Panorama Tool - Hiding binaries details ==
* Brief explanation : The goal is to hide the external binaries table when all the binaries are found on the system. A "Binaries' Details" button should be added, which upon clicked will show the table. If all the binaries are not found on start-up, then, the table should be shown by default (can be done by simply generating a pseudo click on the above described button once its implemented). Once it is successfully implemented here, it can be extended to all kipi-plugins which use external binaries.
* Knowledge Prerequisite : C++, Qt
* Assigned to : Nishita Tanwar
* Status : <span style="color:green">Pending</span>
== Read face from Picasa metadata to populate digiKam database ==
* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=314509
* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=277429
* Assigned to : Veaceslav Munteanu
* Status : <span style="color:red">Completed</span>
== Video Support in Advanced Search Tool ==
* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=164442
* Assigned to : Yiou Wang
* Note : an initial patch for Advanced Search tool GUI have been posted and must be adapted to last code from git/master. But DB queries builder is not patched and need to be done.
* Status : <span style="color:red">Completed</span>
== Fix KML export file generator ==
* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=316597
* Assigned to : shashank chakravarthy
* Status : <span style="color:red">Completed</span>
== Remove internal Clapack library ==
* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=295423
* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=251563
* Assigned to : Gowtham Ashok
* Status : <span style="color:red">Completed</span>
== Auto Crop Tool ==
* Brief explanation: In some users case relevant of photo workflow, as Panorama assembly for example, digiKam need an algorithm to detect black hole borders of image and crop it automatically, respecting the most largest suitable image area. No adjustment must be require by end user. As JPEG is the most used image format used in photography and as JPEG library support a loss-less crop feature, a specific way must be implemented to process JPEG crop in batch without to lose image quality.
* Dependencies: Batch Queue Manager, Image Editor.
* Bugzilla entry:  [https://bugs.kde.org/show_bug.cgi?id=267436 267436], [https://bugs.kde.org/show_bug.cgi?id=204135 204135]
* Knowledge Prerequisite: C/C++, Qt, Imagery
* Expected results: new editor and batch queue manager tools to crop automatically images
* Assigned to : Sayantan Datta
* Status : <span style="color:red">Completed</span>
== JAlbum plugin ==
* Bugzilla Entry : https://bugs.kde.org/show_bug.cgi?id=316719
* Assigned to : Gowtham Ashok
* Status : <span style="color:red">Completed</span>


== Sort Image by Pixel Size and Image Ratio ==
== Sort Image by Pixel Size and Image Ratio ==
Line 32: Line 74:
* Assigned to : Pankaj Kumar
* Assigned to : Pankaj Kumar
* Note : this patch is incomplete. It miss something to do in Filter tab from icon view right sidebar, and Advanced Search tool to perform search based on these criteria.
* Note : this patch is incomplete. It miss something to do in Filter tab from icon view right sidebar, and Advanced Search tool to perform search based on these criteria.
* Status : <span style="color:red">Completed</span>
= digiKam Google Summer of Code 2013 Projects list =
== Port Image digiKam Editor Canvas Classes to Qt4 Model/View ==
* Student            : [https://plus.google.com/101883964009694930513 Yiou Wang] <geow812 at gmail dot com>
* Come from          : Beijing, China
* Lead Mentor        : Islam Wazery
* Alternative Mentor : Marcel Wiesweg
* Working on        : digiKam "<span style="color:orange">gsoc2013-editorcanvas-mv</span>" Git branch
* [http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/geow812/2001 Proposal page]
* Status : <span style="color:red">Completed</span>
== Port Showfoto Thumb bar to Qt4 Model/View ==
* Student            : [https://plus.google.com/106020792892118847381 Mohamed Anwer] <mohammed dot ahmed dot anwer at gmail dot com>
* Come from          : Cairo, Egypt
* Lead Mentor        : Islam Wazery
* Alternative Mentor : Gilles Caulier
* Working on        : digiKam "<span style="color:orange">gsoc2013-thumbbar-mv</span>" Git branch
* [http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/tootis/1 Proposal page]
* Status : <span style="color:red">Completed</span>


== Remove internal Clapack library ==
== digiKam Tag Manager ==
 
* Student            : [https://plus.google.com/114906808699351374523 Veaceslav Munteanu] <veaceslav dot munteanu90 at gmail dot com>
* Come from          : Bucharest, Romania
* Lead Mentor        : Smit Mehta
* Alternative Mentor : Marcel Wiesweg
* Working on        : digiKam "<span style="color:orange">gsoc2013-tagmngr</span>" Git branch
* [http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/slavuttici/35001 Proposal page]
* Status : <span style="color:red">Completed</span>
 
== Image Quality Sorter for digiKam ==
 
* Student            : [https://plus.google.com/u/0/113235187016472722859 Gowtham Ashok] <gwty93 at gmail dot com>
* Come from          : Chennai, India
* Lead Mentor        : Gilles Caulier
* Alternative Mentor : Marcel Wiesweg
* Working on        : digiKam "<span style="color:orange">gsoc2013-imgqsort</span>" Git branch
* [http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/gwty/1 Proposal page]
* Status : <span style="color:red">Completed</span>
 
== Local Adjustment Tool in digiKam ==
 
* Student            : [https://plus.google.com/u/0/100302360459800439676 Sayantan Datta] <kenzo dot zombie at gmail dot com>
* Come from          : Durgapur, India
* Lead Mentor        : Gilles Caulier
* Alternative Mentor : ???
* Working on        : digiKam "<span style="color:orange">gsoc2013-localadj</span>" Git branch
* [http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/sayantand/1 Proposal page]
* Status : <span style="color:green">Pending</span>
 
== Cloud Integration Export Plugin ==
 
* Student            : [https://plus.google.com/104511513259179445417 Saurabh Patel] <saurabhpatel7717 at gmail dot com>
* Come from          : Ahmedabad, India
* Lead Mentor        : Pankaj Kumar
* Alternative Mentor : Smit Mehta
* Working on        : Kipi-plugins "<span style="color:orange">gsoc2013-cloudexport</span>" Git branch
* [http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/saurabh_patel/1 Proposal page]
* Status : <span style="color:red">Completed</span>
 
== HDR Composer Plugin ==
 
* Student            : [https://plus.google.com/113001344646173538510 Soumajyoti Sarkar] <ergy dot ergy at gmail dot com>
* Come from          : Shibpur, India
* Lead Mentor        : Benjamin Girault
* Alternative Mentor : Janardhan Reddy and Marcel Wiesweg
* Working on        : Kipi-plugins "<span style="color:orange">gsoc2013-hdr</span>" Git branch
* [http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/soumajyoti/1 Proposal page]
* Status : <span style="color:green">Pending</span>
 
== Video Metadata Write support for Exiv2 ==
 
* Student            : [https://plus.google.com/113704327590506304403 Mahesh Hegde] <maheshmhegade at gmail dot com>
* Come from          : Bangalore, India
* Lead Mentor        : Abhinav Badola
* Alternative Mentor : Gilles Caulier
* Working on        : [https://code.google.com/p/cocoatutorials/source/list Exiv2] and [https://projects.kde.org/projects/extragear/graphics/kipi-plugins/repository/show?rev=development%2Fgsoc2013-videow kipi-plugins],[https://projects.kde.org/projects/kde/kdegraphics/libs/libkexiv2/repository/show?rev=development%2Fgsoc2013-videow libkexiv2]
* Wiki Page         
* [http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/maheshhegde/45001 Proposal page]
* Status : <span style="color:green">Pending</span>
 
== Exiv2 "Cloud Ready" Project ==
 
* Student            : [https://plus.google.com/110063807819910771416 Nhu Dinh Tuan] <nhudinhtuan at gmail dot com>
* Come from          : Singapore, Asia
* Lead Mentor        : Robin Mills
* Alternative Mentor : Abhinav Badola
* Working on        : Exiv2 "<span style="color:orange">gsoc2013-cloudr</span>" Svn branch
* [http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/nhu_dinh_tuan/18001 Proposal page]
* Status : <span style="color:green">Pending</span>
 
= Mentors List and Coordination =
 
{| border="1" class="wikitable"
|-
! Name
! Email
! Come From
|-
| [https://plus.google.com/u/0/116398684787400584523 Gilles Caulier]
| <caulier dot gilles at gmail dot com>
| Aix en provence, France
|-
| [http://www.facebook.com/profile.php?id=1332031299 Marcel Wiesweg]
| <marcel dot wiesweg at gmx dot de>
| Essen, Germany
|-
| [https://plus.google.com/u/0/107198225472060439855 Abhinav Badola]
| <mail dot abu dot to at gmail dot com>
| Chandigarh, India
|-
| [https://plus.google.com/u/0/113404087048256151794 Smit Mehta]
| <smit dot meh at gmail dot com>
|  Chennai, India
|-
| [https://plus.google.com/u/0/114444774108176364727 Islam Wazery]
| <wazery at ubuntu dot com>
| Cairo, Egypt
|-
| [https://plus.google.com/u/0/109282675370620103497 Benjamin Girault]
| <benjamin dot girault at gmail dot com>
| Lyon, France
|-
| [https://plus.google.com/u/0/105109738484224357562 Robin Mills]
| <robin at clanmills dot com>
| San Jose, USA
|-
| [https://plus.google.com/114958890691877878308 Pankaj Kumar]
| <me at panks dot me>
| Hyderabad, India
|-
|}
 
 
Students and mentors will use [https://mail.kde.org/mailman/listinfo/digikam-soc-devel digikam-soc-devel at kde dot org] mailing-list to coordinate projects.
 
= Repositories, Branching, and Dates =
 
== Developer Account ==
 
To be able to code and work on '''digiKam project''', each student must ask for a developer account to KDE Git repository administrator. See [http://techbase.kde.org/Contribute/Get_a_Contributor_Account this page for details] about KDE developers rules.
 
For '''Exiv2 project''', please contact your mentor to get write access on Subversion repository.
 
== Coverity Analyzer Account ==
 
digiKam and Exiv2 have registred in [http://scan2.coverity.com/ Coverty Scan Program] to report all source code dysfunctions. Code is parsed automatically through a cronned script each week end. Reports are forwarded to digikam-soc-devel_at_kde_dot_org mailing-list.
 
To be able to review and fix errors reported by Scan analyzer, all students must be registered in the relevant Coverity project :
 
* [http://scan2.coverity.com/projects/285 digiKam]
* [http://scan2.coverity.com/projects/297 Exiv2]
 
== KDE Repository ==
 
All students working on digiKam will play with KDE Git repository from Git master branch.
 
We have a [https://projects.kde.org/projects/extragear/graphics/digikam/digikam-software-compilation digiKam Software Compilation Repository] where you will be able to checkout all sub-repositories including all shared libraries managed by team. This not included [http://www.exiv2.org/download.html Exiv2] which is hosted outside KDE.
 
Students must have configured KDE developer account and checkout all code from KDE repository using SSH method.
 
Instructions to checkout and compile code is given in [https://projects.kde.org/projects/extragear/graphics/digikam/digikam-software-compilation/repository/revisions/master/raw/README this README file].
 
== Branches Creation and Maintenance ==
 
During GSoC 2013 coding time, git/master will still the stable implementation receiving important fixes. Each students must create a dedicated development branch for each project (your branch name is defined in project list by "Working on" property). In charge for each students to sync it with git/master periodically. To do it, see below as example how to sync digiKam "MY_DEVEL_BRANCH" branch tracking "remotes/origin/development/MY_DEVEL_BRANCH" from KDE git repository:
 
<source lang="bash">
$>git checkout master
$>git pull --rebase
$>git checkout -b MY_DEVEL_BRANCH remotes/origin/development/MY_DEVEL_BRANCH
  Branch MY_DEVEL_BRANCH set up to track remote branch development/MY_DEVEL_BRANCH from origin.
  Switched to a new branch 'MY_DEVEL_BRANCH'
$>git merge master
  Merge made by the 'recursive' strategy.
  ...
$>git push
</source>
 
 
The 2 first lines take a sure that your local master repository is up to date.
The 3rd line create in local the "MY_DEVEL_BRANCH" development branch.
Merge between master and MY_DEVEL_BRANCH branch is done with 4th line. Git can ask you to resolve conflicts here. When it's done, it will ask you a commit comment.
Finally push your merge into remote KDE repository.
 
Note: If you have already created MY_DEVEL_BRANCH branch, just run "git checkout MY_DEVEL_BRANCH" as well instead git checkout -b MY_DEVEL_BRANCH remotes/origin/development/MY_DEVEL_BRANCH. This give this concatenated command line:
 
<source lang="bash">
$>git checkout master; git pull --rebase; git checkout MY_DEVEL_BRANCH; git pull; git merge master
  ...
$>git push
</source>


* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=295423
* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=251563
* Assigned to : Gowtham Ashok


== Video Support in Advanced Search Tool ==
For advanced rules, especially to create remote working branches in KDE git repository, please look on [http://techbase.kde.org/Development/Git/Recipes#Creating_.2F_Deleting_Remote_Branches this tutorial] from KDE TechBase.


* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=164442
== Roadmap and Releases Plan including all GSoC-2013 works ==
* Assigned to : ???
* Note : an initial patch for Advanced Search tool GUI have been posted and must be adapted to last code from git/master. But DB queries builder is not patched and need to be done.


== Fix KML export file generator ==


* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=316597
{| border="1" class="wikitable"
* Assigned to : ???
|-
! Date
! Action
! Remark
|-
| bgcolor="#00FFAA" | 02 Jun 2013
| bgcolor="#00FFAA" | digiKam Software Collection 3.3.0-beta1 released
| bgcolor="#00FFAA" | -
|-
| bgcolor="#00FFAA" | 09 Jun 2013
| bgcolor="#00FFAA" | digiKam GSoC-2013 branches created in KDE git repository
| bgcolor="#00FFAA" | see branches listed in [http://community.kde.org/Digikam/GSoC2013#digiKam_Google_Summer_of_Code_2013_Projects_list projects list]
|-
| bgcolor="#00FFAA" | 09 Jun 2013
| bgcolor="#00FFAA" | Kipi-plugins GSoC-2013 branches created in KDE git repository
| bgcolor="#00FFAA" | see branches listed in [http://community.kde.org/Digikam/GSoC2013#digiKam_Google_Summer_of_Code_2013_Projects_list projects list]
|-
| bgcolor="#00FFAA" | 09 Jun 2013
| bgcolor="#00FFAA" | Exiv2 GSoC-2013 branches created in SVN repository
| bgcolor="#00FFAA" | see branches listed in [http://community.kde.org/Digikam/GSoC2013#digiKam_Google_Summer_of_Code_2013_Projects_list projects list]
|-
| bgcolor="#00FFAA" | 21 Jul 2013
| bgcolor="#00FFAA" | digiKam Software Collection 3.3.0 released
| bgcolor="#00FFAA" | sync with [http://techbase.kde.org/Schedules/KDE4/4.10_Release_Schedule KDE SC 4.10.5]
|-
| bgcolor="#00FFAA" | 01 Sep 2013
| bgcolor="#00FFAA" | digiKam Software Collection 3.4.0 released
| bgcolor="#00FFAA" | sync with [http://techbase.kde.org/Schedules/KDE4/4.11_Release_Schedule KDE SC 4.11.1]
|-
| bgcolor="#00FFAA" | 29 Sep 2013
| bgcolor="#00FFAA" | digiKam Software Collection 3.5.0 released
| bgcolor="#00FFAA" | sync with [http://techbase.kde.org/Schedules/KDE4/4.11_Release_Schedule KDE SC 4.11.2]
|-
| bgcolor="#00FFAA" | 02 Oct 2013
| bgcolor="#00FFAA" | digiKam GSoC-2013 development branches are merged back to git/master
| bgcolor="#00FFAA" | Note : only Tags Manager and Image Quality Sort projects
|-
| bgcolor="#00FFAA" | 03 Nov 2013
| bgcolor="#00FFAA" | Kipi-plugins GSoC-2013 development branches are merged back to git/master
| bgcolor="#00FFAA" | Note : only Cloud Integration Export project
|-
| bgcolor="#00FFAA" | 01 Dec 2013
| bgcolor="#00FFAA" | digiKam Software Collection 4.0.0 beta1
| bgcolor="#00FFAA" | Note : new implementation of libkdcraw using an external shared libraw
|-
| bgcolor="#00FFAA" | 15 Dec 2013
| bgcolor="#00FFAA" | digiKam GSoC-2013 development branches are merged back to git/master
| bgcolor="#00FFAA" | Note : only Showfoto Qt4 model/view port project
|-
| bgcolor="#00FFAA" | 12 Jan 2014
| bgcolor="#00FFAA" | digiKam Software Collection 4.0.0 beta2
| bgcolor="#00FFAA" | Note : huge fixes from Import tool included
|-
| bgcolor="#00FFAA" | 02 Feb 2014
| bgcolor="#00FFAA" | digiKam GSoC-2013 development branches are merged back to git/master
| bgcolor="#00FFAA" | Note : only Image Editor Qt4 model/view port project
|-
| bgcolor="#00FFAA" | 23 Feb 2014
| bgcolor="#00FFAA" | digiKam Software Collection 4.0.0 beta3
| bgcolor="#00FFAA" | Note : Qt3Support classes dependency removed
|-
| bgcolor="#00FFAA" | 30 mar 2014
| bgcolor="#00FFAA" | digiKam Software Collection 4.0.0 beta4
| bgcolor="#00FFAA" |
|-
| bgcolor="#FF9900" | 13 apr 2014
| bgcolor="#FF9900" | digiKam Software Collection 4.0.0 RC
| bgcolor="#FF9900" |
|-
| bgcolor="#FF9900" | 11 may 2014
| bgcolor="#FF9900" | digiKam Software Collection 4.0.0
| bgcolor="#FF9900" | sync with [http://techbase.kde.org/Schedules/KDE4/4.12_Release_Schedule KDE SC 4.12.3]
|}


== Auto-Detected Camera are Unsuitable ==
== Coding Sprint ==


* Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=311393
As  lots of students come from India this year, it will be nice to plan a reunion between developers in  this country to reduce travel and hotel costs.
* Assigned to : ???


= digiKam Google Summer of Code 2013 Proposals =
* [https://plus.google.com/u/0/105465824670275586186 Colin Guthrie] suggesting to apply for future [http://atulchitnis.net/2013/one-more-thing FOSS.IN/2013] event.


All projects proposed to students for Google Summer of Code 2013, have been listed [http://community.kde.org/GSoC/2013/Ideas#digiKam to official KDE wiki page]
* [https://plus.google.com/113691654116060042197 Pradeepto Bhattacharya] propose through G+ to organize the events somewhere in India.

Latest revision as of 12:43, 31 March 2014

Small Projects to Introduce Students

libjpeg-turbo detection

Auto-Lens correction tool don't work in BQM

Keyboard Tagging Improvements

  • Patch to review : http://git.reviewboard.kde.org/r/108382/
  • Assigned to : Saurabh Patel
  • Note : author keyboard workflow need to be understood and tested. It miss some menu entries to make shortcuts visible to end users.
  • Status : Pending

Panorama Tool - Hiding binaries details

  • Brief explanation : The goal is to hide the external binaries table when all the binaries are found on the system. A "Binaries' Details" button should be added, which upon clicked will show the table. If all the binaries are not found on start-up, then, the table should be shown by default (can be done by simply generating a pseudo click on the above described button once its implemented). Once it is successfully implemented here, it can be extended to all kipi-plugins which use external binaries.
  • Knowledge Prerequisite : C++, Qt
  • Assigned to : Nishita Tanwar
  • Status : Pending

Read face from Picasa metadata to populate digiKam database

Video Support in Advanced Search Tool

  • Bugzilla entry : https://bugs.kde.org/show_bug.cgi?id=164442
  • Assigned to : Yiou Wang
  • Note : an initial patch for Advanced Search tool GUI have been posted and must be adapted to last code from git/master. But DB queries builder is not patched and need to be done.
  • Status : Completed

Fix KML export file generator

Remove internal Clapack library

Auto Crop Tool

  • Brief explanation: In some users case relevant of photo workflow, as Panorama assembly for example, digiKam need an algorithm to detect black hole borders of image and crop it automatically, respecting the most largest suitable image area. No adjustment must be require by end user. As JPEG is the most used image format used in photography and as JPEG library support a loss-less crop feature, a specific way must be implemented to process JPEG crop in batch without to lose image quality.
  • Dependencies: Batch Queue Manager, Image Editor.
  • Bugzilla entry: 267436, 204135
  • Knowledge Prerequisite: C/C++, Qt, Imagery
  • Expected results: new editor and batch queue manager tools to crop automatically images
  • Assigned to : Sayantan Datta
  • Status : Completed

JAlbum plugin

Sort Image by Pixel Size and Image Ratio

  • Patch to review : http://git.reviewboard.kde.org/r/108574/
  • Assigned to : Pankaj Kumar
  • Note : this patch is incomplete. It miss something to do in Filter tab from icon view right sidebar, and Advanced Search tool to perform search based on these criteria.
  • Status : Completed

digiKam Google Summer of Code 2013 Projects list

Port Image digiKam Editor Canvas Classes to Qt4 Model/View

  • Student  : Yiou Wang <geow812 at gmail dot com>
  • Come from  : Beijing, China
  • Lead Mentor  : Islam Wazery
  • Alternative Mentor : Marcel Wiesweg
  • Working on  : digiKam "gsoc2013-editorcanvas-mv" Git branch
  • Proposal page
  • Status : Completed

Port Showfoto Thumb bar to Qt4 Model/View

  • Student  : Mohamed Anwer <mohammed dot ahmed dot anwer at gmail dot com>
  • Come from  : Cairo, Egypt
  • Lead Mentor  : Islam Wazery
  • Alternative Mentor : Gilles Caulier
  • Working on  : digiKam "gsoc2013-thumbbar-mv" Git branch
  • Proposal page
  • Status : Completed

digiKam Tag Manager

  • Student  : Veaceslav Munteanu <veaceslav dot munteanu90 at gmail dot com>
  • Come from  : Bucharest, Romania
  • Lead Mentor  : Smit Mehta
  • Alternative Mentor : Marcel Wiesweg
  • Working on  : digiKam "gsoc2013-tagmngr" Git branch
  • Proposal page
  • Status : Completed

Image Quality Sorter for digiKam

  • Student  : Gowtham Ashok <gwty93 at gmail dot com>
  • Come from  : Chennai, India
  • Lead Mentor  : Gilles Caulier
  • Alternative Mentor : Marcel Wiesweg
  • Working on  : digiKam "gsoc2013-imgqsort" Git branch
  • Proposal page
  • Status : Completed

Local Adjustment Tool in digiKam

  • Student  : Sayantan Datta <kenzo dot zombie at gmail dot com>
  • Come from  : Durgapur, India
  • Lead Mentor  : Gilles Caulier
  • Alternative Mentor : ???
  • Working on  : digiKam "gsoc2013-localadj" Git branch
  • Proposal page
  • Status : Pending

Cloud Integration Export Plugin

  • Student  : Saurabh Patel <saurabhpatel7717 at gmail dot com>
  • Come from  : Ahmedabad, India
  • Lead Mentor  : Pankaj Kumar
  • Alternative Mentor : Smit Mehta
  • Working on  : Kipi-plugins "gsoc2013-cloudexport" Git branch
  • Proposal page
  • Status : Completed

HDR Composer Plugin

  • Student  : Soumajyoti Sarkar <ergy dot ergy at gmail dot com>
  • Come from  : Shibpur, India
  • Lead Mentor  : Benjamin Girault
  • Alternative Mentor : Janardhan Reddy and Marcel Wiesweg
  • Working on  : Kipi-plugins "gsoc2013-hdr" Git branch
  • Proposal page
  • Status : Pending

Video Metadata Write support for Exiv2

Exiv2 "Cloud Ready" Project

  • Student  : Nhu Dinh Tuan <nhudinhtuan at gmail dot com>
  • Come from  : Singapore, Asia
  • Lead Mentor  : Robin Mills
  • Alternative Mentor : Abhinav Badola
  • Working on  : Exiv2 "gsoc2013-cloudr" Svn branch
  • Proposal page
  • Status : Pending

Mentors List and Coordination

Name Email Come From
Gilles Caulier <caulier dot gilles at gmail dot com> Aix en provence, France
Marcel Wiesweg <marcel dot wiesweg at gmx dot de> Essen, Germany
Abhinav Badola <mail dot abu dot to at gmail dot com> Chandigarh, India
Smit Mehta <smit dot meh at gmail dot com> Chennai, India
Islam Wazery <wazery at ubuntu dot com> Cairo, Egypt
Benjamin Girault <benjamin dot girault at gmail dot com> Lyon, France
Robin Mills <robin at clanmills dot com> San Jose, USA
Pankaj Kumar <me at panks dot me> Hyderabad, India


Students and mentors will use digikam-soc-devel at kde dot org mailing-list to coordinate projects.

Repositories, Branching, and Dates

Developer Account

To be able to code and work on digiKam project, each student must ask for a developer account to KDE Git repository administrator. See this page for details about KDE developers rules.

For Exiv2 project, please contact your mentor to get write access on Subversion repository.

Coverity Analyzer Account

digiKam and Exiv2 have registred in Coverty Scan Program to report all source code dysfunctions. Code is parsed automatically through a cronned script each week end. Reports are forwarded to digikam-soc-devel_at_kde_dot_org mailing-list.

To be able to review and fix errors reported by Scan analyzer, all students must be registered in the relevant Coverity project :

KDE Repository

All students working on digiKam will play with KDE Git repository from Git master branch.

We have a digiKam Software Compilation Repository where you will be able to checkout all sub-repositories including all shared libraries managed by team. This not included Exiv2 which is hosted outside KDE.

Students must have configured KDE developer account and checkout all code from KDE repository using SSH method.

Instructions to checkout and compile code is given in this README file.

Branches Creation and Maintenance

During GSoC 2013 coding time, git/master will still the stable implementation receiving important fixes. Each students must create a dedicated development branch for each project (your branch name is defined in project list by "Working on" property). In charge for each students to sync it with git/master periodically. To do it, see below as example how to sync digiKam "MY_DEVEL_BRANCH" branch tracking "remotes/origin/development/MY_DEVEL_BRANCH" from KDE git repository:

$>git checkout master
$>git pull --rebase
$>git checkout -b MY_DEVEL_BRANCH remotes/origin/development/MY_DEVEL_BRANCH
  Branch MY_DEVEL_BRANCH set up to track remote branch development/MY_DEVEL_BRANCH from origin.
  Switched to a new branch 'MY_DEVEL_BRANCH'
$>git merge master
  Merge made by the 'recursive' strategy.
  ...
$>git push


The 2 first lines take a sure that your local master repository is up to date. The 3rd line create in local the "MY_DEVEL_BRANCH" development branch. Merge between master and MY_DEVEL_BRANCH branch is done with 4th line. Git can ask you to resolve conflicts here. When it's done, it will ask you a commit comment. Finally push your merge into remote KDE repository.

Note: If you have already created MY_DEVEL_BRANCH branch, just run "git checkout MY_DEVEL_BRANCH" as well instead git checkout -b MY_DEVEL_BRANCH remotes/origin/development/MY_DEVEL_BRANCH. This give this concatenated command line:

$>git checkout master; git pull --rebase; git checkout MY_DEVEL_BRANCH; git pull; git merge master
  ...
$>git push


For advanced rules, especially to create remote working branches in KDE git repository, please look on this tutorial from KDE TechBase.

Roadmap and Releases Plan including all GSoC-2013 works

Date Action Remark
02 Jun 2013 digiKam Software Collection 3.3.0-beta1 released -
09 Jun 2013 digiKam GSoC-2013 branches created in KDE git repository see branches listed in projects list
09 Jun 2013 Kipi-plugins GSoC-2013 branches created in KDE git repository see branches listed in projects list
09 Jun 2013 Exiv2 GSoC-2013 branches created in SVN repository see branches listed in projects list
21 Jul 2013 digiKam Software Collection 3.3.0 released sync with KDE SC 4.10.5
01 Sep 2013 digiKam Software Collection 3.4.0 released sync with KDE SC 4.11.1
29 Sep 2013 digiKam Software Collection 3.5.0 released sync with KDE SC 4.11.2
02 Oct 2013 digiKam GSoC-2013 development branches are merged back to git/master Note : only Tags Manager and Image Quality Sort projects
03 Nov 2013 Kipi-plugins GSoC-2013 development branches are merged back to git/master Note : only Cloud Integration Export project
01 Dec 2013 digiKam Software Collection 4.0.0 beta1 Note : new implementation of libkdcraw using an external shared libraw
15 Dec 2013 digiKam GSoC-2013 development branches are merged back to git/master Note : only Showfoto Qt4 model/view port project
12 Jan 2014 digiKam Software Collection 4.0.0 beta2 Note : huge fixes from Import tool included
02 Feb 2014 digiKam GSoC-2013 development branches are merged back to git/master Note : only Image Editor Qt4 model/view port project
23 Feb 2014 digiKam Software Collection 4.0.0 beta3 Note : Qt3Support classes dependency removed
30 mar 2014 digiKam Software Collection 4.0.0 beta4
13 apr 2014 digiKam Software Collection 4.0.0 RC
11 may 2014 digiKam Software Collection 4.0.0 sync with KDE SC 4.12.3

Coding Sprint

As lots of students come from India this year, it will be nice to plan a reunion between developers in this country to reduce travel and hotel costs.