GNOME Logs: Search and User Interface Improvements

Short Description

In GSoC 2016, search functionality in GNOME Logs was improved in many ways. Now, further work to be done in GNOME Logs includes seamless integration with other GNOME applications like GNOME Shell and improve the robustness of GNOME Logs by writing a complete test suite. The ultimate goal of my proposal includes implementing the following features:

  • To improve the existing search back end in GNOME Logs
  • To move the sorting functionality from frontend to backend
  • To implement log entries compression for multiple redundant journal entries in the User Interface
  • To write a complete test suite for the same so that implemented functionality is validated accordingly
  • To write a shell search provider module for GNOME Logs which can expose search results to GNOME Shell

About me

I am Pranav Ganorkar, a final year Computer Science Undergraduate student at Mumbai University. Moreover, I had done my GSoC 2016 project under GNOME too, which was an awesome learning experience for me. It inspired me to contribute again to GNOME this year.


My mentors are Jonathan Kang and David King, who are also the current maintainers of GNOME Logs.

Contribution Report

I worked on the following bugs/enhancements during the official GSoC Timeline:


GNOME Bugzilla/Patch Link


Move sorting from view to model



Use event compression in Events List

Bug 709294


Add a shell search provider for GNOME Logs

Bug 753470

Patches in review

Unit tests for backend modules in GNOME Logs


In Progress

All the blog posts written by me about the GSoC work can be accessed here.

Proposed Schedule

Start Date - End Date


5 May - 15 May

Community Bonding Period starts. Will discuss with my mentors about the design of the search provider and the test suite along with the structure of the code to be written and what different modules can come into picture. Implement the patch for transferring the sorting functionality from view to model.

16 May - 31 May

Discussion with mentors regarding design and documentation for the test suite. Test the implemented patch for moving the sorting functionality for any possible bugs. Community Bonding period ends.

1 June - 25 June

Implement the patch for combining multiple redundant log entries into a single log entry (Log entry compression). Continue work on the design of testing suite.

26 June - 30 June

First GSoC evaluation. Implementation of the patches is completed. Continue improving the patches and testing it for any possible bugs or exception handling. Moreover, Make the implemented patches ready to be merged/committed into the GNOME Logs code repository.

1 July - 23 July

Implement the patch for shell search provider and incorporate the changes suggested in the review of the earlier patches. Iteratively improve the patches by taking feedback from the mentors regarding the implemented patches.

24 July - 28 July

Second GSoC evaluation. Implementation of Shell search provider patches is completed. Continue testing the shell search provider patches for any possible bugs/exception handling.

28 July - 2 August

Present the GSoC project at GUADEC 2017 in Manchester and meet my mentors in person. Review the work done upto this point and discuss all the upcoming features to be implemented in GNOME Logs.

2 August - 20 August

Implement the testing suite according to the design and documentation made earlier during the discussions with the mentors.

21 August - 29 August

Final GSoC evaluation. Implementation of the testing suite is completed. Continue testing the suite for bugs and complete code documentation for all the patches so that they can be finally merged/committed into the GNOME Logs code repository.

Outreach/SummerOfCode/2017/Projects/PranavGanorkar_LogsSearchUIImprovement (last edited 2017-08-27 09:29:24 by PranavGanorkar)