LibreOffice community focus: Development

Over the past few weeks, we’ve talked to the documentation, localisation, QA (quality assurance) and design communities about their preparations for LibreOffice 6.0, which is due to be released this week. For our final Community Focus, we turn to the developer community, which has helped to implement many of the new features you can see in the release notes.

How does the community work on new features?

Development in LibreOffice is achieved using a wide variety of tools and services, which is a testament to the maturity and longevity of the project. The LibreOffice developer toolkit is best summarized by going through the lifespan of a single patch:

1. Communication. When a user would like to see a new feature in LibreOffice, or identifies a problem, he/she has one of several options to bring it up:

  • Bugzilla: We use our own self-hosted Bugzilla instance. This one of the biggest installations of Bugzilla out there. If you don’t want to report a new issue but would like to contribute towards existing ones, we collect and sort bugs based on skill, difficulty and topic. We also provide a list of EasyHacks that new contributors are encouraged to tackle for a start.
  • E-mail lists: We have several e-mail lists used for general discussion, reports, help and development, the two most important are: libreoffice@lists.freedesktop.org (developers) and users@global.libreoffice.org (users). Here’s how to sign up to the lists.
  • IRC: Core and not-so-core LibreOffice hackers usually hang around in the #libreoffice and #libreoffice-dev channels on the Freenode IRC network. You are welcome to join and ask for help, guidance and general support in there.
  • Telegram, QA, Twitter, etc: We are present on many other online services – global or localized for your community. Check the full list here.

Users, developers and project members usually roam these communication channels and both development and general discussion is taking place. Communication is key. Then the next part is…

2. Development. During this phase the most important tools in the LibreOffice developers’ toolkit are:

  • Git: The LibreOffice source code is self-hosted using Git and is available here. Getting started with LibreOffice and Git is outlined on this page, and an easy build set-up can be achieved using the logerrit tool that we provide.
  • Wiki: The Wiki is a good place to look for information and refine your question before reaching out.
  • Code search: You can easily search (grok) the codebase and reference parts of code in your inquiries to developers using the Opengrok installation.

3. Next steps. Once general agreement has been achieved on how to implement a new feature or fix a specific bug, the following services are used:

  • Gerrit: Core developers and newcomers alike collaborate on the shared code base, using the communication channels outlined before, and Gerrit code review. The Gerrit procedure is recommended for all submissions and all projects that are part of the LibreOffice realm. Signing up on our self hosted Gerrit is crucial to the development process and getting you code admitted into the project.
  • Jenkins and Tinderboxes: Once a specific patch is submitted via Gerrit, a set of automatic continuous integration QA&build tests are being run for all supported platforms, and any defects or regressions will be reported automagically along with feedback from other developers.

An overview of our most critical infrastructure used for development and release engineering is available on this site, while the Wiki has a list of additional services.

Another useful tool – a new addition to the toolkit – is the LibreOffice dashboard. You can use it to inspect the development, release and lifecycle of LibreOffice core and its associated repos with a bird’s-eye view.

So that’s the final Community Focus – a big thanks to all developers and testers who’ve helped to add the many great new features in LibreOffice 6.0! (And thanks to Teodor Mircea Ionita for his help with this post.) Stay tuned to this blog for the official announcement of the new release…

How TDF uses its tendering process to improve LibreOffice and share knowledge with the community

In 2017, The Document Foundation (TDF) launched four tenders aimed at improving LibreOffice in several strategic areas, where the tasks are beyond the capabilities of independent volunteer developers. Proposals from several companies have been carefully evaluated by the Foundation with the help of competent and independent volunteers. Development activity is going to start soon and we want to share some details with you upfront.

All proposals include sharing knowledge via blog posts and other documentation. The source code will be available in the public Git repository, while the development process will be discussed during public ESC calls and in our open mailing lists. This will make it easier for volunteer developers to further contribute to the source code and to implement additional features based on the tendered items.

Development results will be evaluated by TDF jointly with the volunteers who helped to assess the proposals.

These are the four tenders:

(1) Tender to Implement Accessibility Improvements
(https://blog.documentfoundation.org/blog/2017/04/27/tender-accessibility/)

Hypra will develop a tool to find and flag new Glade widgets that are added without accessibility (a11y) markup, which will catch all the common cases and blacklist all the existing dialog and/or widgets without these. The goal is to avoid future a11y regressions.

TDF will invest € 18,000.00

(2) Tender to improve image handling in LibreOffice
(https://blog.documentfoundation.org/blog/2017/05/02/tender-improve-image-handling-libreoffice-201705-01/)

Collabora will develop a mechanism, which will be propagated through filters and UNO APIs, to better manage (compressed) image streams out of document storage into an on-disk cache. This should avoid any chance of data loss, while improving image detail reading performance and storage

TDF will invest € 39,750.00.

(3) Tender to deprecate LibreOffice’s SVG filter in favor of SVGIO
(https://blog.documentfoundation.org/blog/2017/05/03/tender-deprecate-libreoffices-svg-filter-favour-svgio-201705-02/)

CIB will remove the old SVG import filter code (used for importing documents) and switch all SVG handling to the SVGIO filter (used when inserting images into a file).

TDF will invest € 9,520.00.

(4) Tender to implement HSQLDB binary format import in LibreOffice
(https://blog.documentfoundation.org/blog/2017/05/04/tender-implement-hsqldb-binary-format-import-libreoffice-201705-03/)

Collabora will develop a mechanism to import database files with high fidelity from the HSQLDB binary file format, which has been used inside many existing ODB files, by reading the Java serialization code, and writing a filter to import all data into LibreOffice Base. The objective is to remove the legacy Java/HSQLDB database and move to Firebird.

TDF will invest € 29,750.00.

Sunday Marketing #4

Document classification is one of LibreOffice 6.0 improved features. As the concept of classification is not well known outside enterprises and large organizations, to help marketing the feature we have produced this graphic to help community members with presentations. Of course, we have used LibreOffice Draw, and you are invited to localize the ODG file embedded into the attached Hybrid PDF file. The graphic complements the background, which provides additional information about classification.

Brazilian community releases its Getting Started Guide for LibreOffice 5.2

The Internet, January 25th, 2018. The Brazilian community is pleased to announce the immediate availability of the Getting Started Guide 5.2, with all innovations and enhancements from LibreOffice 5.2. The guide is an in-depth update of the 5.0 Getting Started Guide that has already been translated.

The team was composed of IT professionals, translators, engineers, teachers and technicians. The team members are:

  • Chrystina Pelizer (Getting Started Guide project leader, translator and reviewer)
  • Vera Cavalcante (reviewer and book assembler)
  • Fábio Coelho (translators, reviewer and infra manager)
  • Túlio Macedo, Raul Pacheco da Silva, Valdir Barbosa e Olivier Hallot (translators and reviewers)

Thanks to The Document Foundation’s support, the team met together at the Instituto de Física of UNESP university in São Paulo, Brazil for a final review sprint of the translated chapters, and then delivered the contents to Vera Cavalcante for book assembly and release.

Without the face-to-face meeting in December 2017 sponsored by TDF, the guide’s release would have been delayed further due to personal and professional commitments of the volunteer team members. The face-to-face meeting was an opportunity to boost productivity, and the team finished the revision in two days of focused work. The team is planing more meetings for the other guides under production.

The new guide can be downloaded in PDF or ODT formats from the LibreOffice documentation website at http://documentation.libreoffice.org/pt-br/ .

Extended: Job Search for a Development Mentor (#201711-01)

We originally posted this in November, but we are now extending the deadline for applications to February 16, 2018. Note that we will be at FOSDEM (building K, level 1, group A) on February 3 and 4, so you can talk to us in person there!

The Document Foundation (TDF), the charitable entity behind the world’s leading free office suite LibreOffice, seeks an individual – or individuals part (or full) time – to be

a Development Mentor

to start work as soon as possible. The role requires the following:

  • Self-starting, remote working experience
  • Experience contributing to FLOSS communities
  • Excellent communication skills, with enthusiasm for mentoring
  • Coding experience (LibreOffice coding preferred)
  • Willingness to travel to Hackfests & conferences in Europe and globally

The role involves working from home at your location for at least 20 hours per week, up to full-time and includes among other items:

Supporting existing mentors in the LibreOffice community including:

  • Building relationships between existing mentors and new contributors
  • Identifying and on-boarding new contributors
  • Affirming and encouraging their contribution
  • Building initial relationships with them
  • Encouraging them to join IRC to meet the teams
  • Introducing them to domain experts for deeper learning
  • Helping to educate new contributors by
  • Positively reviewing their code contributions
  • Introducing them to our tooling and culture
  • Attracting new contributors by promoting the project
  • Interaction with UX volunteers

Previous experience with such tasks is highly welcome, so is using free software. Speaking and writing English reasonably well is a mandatory requirement.

The work time during the day is flexible, apart from some fixed times when availability is required (e.g. during meetings, which usually take place at 14:00 or 15:00 UTC once per week).

TDF welcomes applications from all suitably qualified persons regardless of their race, sex, disability, religion/belief, sexual orientation or age.

As always, TDF will give some preference to individuals who have previously shown a commitment to TDF, including but not limited to members of TDF. Not being a member, or never having contributed before, does not exclude any applicants from consideration.

TDF is looking forward to receiving your applications, including curriculum vitae, your financial expectations, and the earliest date of your availability, via e-mail to Florian Effenberger at floeff@documentfoundation.org no later than February 16, 2018. You can encrypt your message via PGP/GnuPG.

If you haven’t received feedback by March 16, 2018, your application could not be considered.

Wednesday Community #3

FOSDEM 2018 is approaching. As usual, several members of the LibreOffice community will move to Brussels to gather for the largest meeting of free and open source advocates in Europe.

People attending FOSDEM 2018 can find LibreOffice representatives at LibreOffice booth in building K during Saturday and Sunday.

On Saturday, there will be several LibreOffice-related presentations at the Open Document Editors DevRoom.

Immediately after FOSDEM, on Monday and Tuesday, there will be a LibreOffice HackFest, with developers working at new features and community members meeting to discuss certification, marketing, QA, design, and other relevant topics.