Development and Quality Assurance: TDF’s Annual Report 2022

Annual Report banner

In 2022, 11,769 commits were made to the LibreOffice source code, from 218 authors, in 10 repositories. We also took part in the Google Summer of Code, to support student developers

(This is part of The Document Foundation’s Annual Report for 2022 – we’ll post the full version here soon.)

Infrastructure for developers

TDF provides infrastructure for the developer community to continue their work on LibreOffice. These include Git and Gerrit, to make changes to the source code, along with Bugzilla (to track bug reports and enhancement requests), a wiki (to document changes), and Weblate (for translations).

Most technical discussions took place on the developer mailing list and IRC channel, with the latter providing more real-time communication. Members of the Engineering Steering Committee met weekly, to discuss the most pressing issues with the codebase.

Google Summer of Code (GSoC)

GSoC logo

GSoC is an annual programme in which student developers of free and open source software projects receive stipends from Google for their work. LibreOffice takes part in GSoC every year, and in 2022, two students developed features and updates in the software. Let’s go through them…

Hannah Meeks – VBA Macros – Tests and missing APIs: LibreOffice supports VBA (Visual Basic for Applications) Macros, but the implemented API isn’t complete and the API functions aren’t largely tested. The consequence of this is that the VBA macros in OOXML documents don’t run as intended in LibreOffice, which causes compatibility problems. The goal of this project is to add tests for the functions already implemented and then look for what functions are missing for a method or module and add them. Hannah described her results:

I wrote lots of macros tests which was the main aim of the project and found lots of bugs/areas to fix, so my summer was a success! I also really enjoyed looking into the core and fixing some of these problems. Lots of my tests are still broken in LibreOffice so need fixing – for example, I found that there seem to be problems with new lines being created in Microsoft Word that are not created in LibreOffice Writer.

The second project was by Paris Oplopoios – Extend Z compressed graphic format support. Some graphic formats are compressed with ZIP (deflate) to make them smaller, while the formats themselves don’t support compression. In LibreOffice we already support SVGZ format, but not other formats. The goal of this idea was to look at how SVGZ is implemented and extend that to other formats (EMF, WMF). The extended goal was to implement support for compressing in addition to extracting.

Paris got off to a flying start with the originally defined goal, which was to add import functionality for Z compressed EMF and WMF graphics and thus to improve compatibility with Microsoft documents. In the end, he also implemented exporting of WMZ, EMZ and SVGZ graphics, replaced homegrown PNG export code with one that uses libpng and added automated tests for PNG export in addition to tests for the Z compressed formats.

For more details about the students’ great achievements, see the video below and the results post – and thanks to Tomaž Vajngerl and Miklos Vajna (Collabora) and Thorsten Behrens (allotropia) for mentoring the students.

Please confirm that you want to play a YouTube video. By accepting, you will be accessing content from YouTube, a service provided by an external third party.

YouTube privacy policy

If you accept this notice, your choice will be saved and the page will refresh.


Quality Assurance (QA)

In 2022, the QA team triaged thousands of bugs, bisected hundreds of regressions, and answered questions from countless bug reporters. As one of the most visible groups directly responding to end users, the QA team must be nimble and able to adapt to changes. In addition, it must deal with specific requests for help from other teams.

The QA team meets regularly on IRC on the #libreoffice-qa channel, which is the best medium for discussing bugs and regressions. The IRC channel provides an excellent opportunity to remain in close contact with team members, and to tutor new members in the art and skill of LibreOffice QA. This is bridged to the Telegram group.

During 2022, 5,966 bugs were reported by 2,650 users, which means 115 new bugs were reported every week on average. The QA team prepared monthly reports about their activity and posted on the QA blog.

Top 10 bug reporters

  1. Telesto (288)
  2. Eyal Rozenberg (207)
  3. Mike Kaganski (165)
  4. Xisco Faulí (126)
  5. Gabor Kelemen (111)
  6. Rafael Lima (108)
  7. sdc.blanco (104)
  8. Regina Henschel (93)
  9. NISZ LibreOffice Team (93)
  10. Hossein (59)

Triaging

During 2022, 6,100 bugs were triaged by 391 people. Here are the top 10 bug triagers:

  1. Buovjaga (675)
  2. Dieter (462)
  3. Heiko Tietze (445)
  4. Xisco Faulí (354)
  5. Timur (327)
  6. raal (303)
  7. Julien Nabet (276)
  8. m.a.riosv (268)
  9. Rafael Lima (218)
  10. Mike Kaganski (207)

Bibisecting

Also, during 2022, the QA team performed 622 bibisects of regressions by 32 people. These are the top 10 bisecters:

  1. raal (144)
  2. Xisco Faulí (140)
  3. Timur (63)
  4. Aron Budea (57)
  5. Buovjaga (40)
  6. Stéphane Guillou (stragu) (24)
  7. Timur (20)
  8. Gabor Kelemen (19)
  9. Mike Kaganski (19)
  10. Telesto (18)

Like what we do? Support the LibreOffice project and The Document Foundation – get involved and help our volunteers, or consider making a donation. Thank you!