As promised, we are releasing the updated State of the Project Slide Deck, based on data extracted from the LibreOffice dashboard and the Matomo repository. During the 12 months 295 developers worked on the source code, adding 11.098 new commits (Git): 221 volunteer developers (75%) provided 1.871 commits (17%); 8
Continuing our mission to provide the best LibreOffice documentation for our end users, the Documentation Team is proud to announce the release of the latest Writer Guide for LibreOffice 26.2. Whether you’re a beginner or an expert, this guide covers all aspects of the LibreOffice Writer module—from creating simple one-page
Meritocracy is one of the founding principles of the free and open-source software movement. It is also one of the most controversial terms, and the gap between the different meanings people attribute to it is, in some projects, a source of real and damaging conflict. Let us analyse the meaning
“Ideally, we would have preferred to avoid this post.”
When I read those opening words in Italo’s recent statement, “Let’s put an end to the speculation,” they stung. I don’t know if that specific post should have existed or not, but those first few words are a perfect reflection of the current TDF attitude. It is an attitude directed toward the very people who devoted large parts of their lives, their passion, and their hearts to the Foundation’s ideals.
What I am missing is not that specific post that Italo wrote. What I expected—what I felt I earned—was a post that looked me in the eye. I wanted an explanation as to why I am being cast out from the Trustees after everything I’ve honestly given. I wanted to know my specific “guilt,” or why the Foundation now finds “guilt by association” to be an acceptable standard.
And then—I would hope—they would publicly say: “Mike, we appreciate everything you’ve done. We deeply regret the unfortunate decisions we—not you—made over the years. But we feel this is the only path forward, and we are sorry.”
But that is the post they successfully avoided writing.
Ideally, we would have preferred to avoid this post. However, the articles and comments published in response to Collabora’s and Michael Meeks’ biased posts compel us to provide this background information on the events that led to the current situation. Unfortunately, we have to start from the very beginning, but
Euro-Office’s announcement – which sees IONOS, Nextcloud and other companies coming together to create a European alternative to office productivity software – has predictably sparked a wave of comments. Most of these focus on the issue of licensing: is the code open source? Who controls the repository? What are the
PSFirebird is a PowerShell module focused on automating Firebird environments, databases, and common administrative workflows. The main goal is to make Firebird easier to script end-to-end without depending on a manual installer flow or a machine-specific setup.
The problem is trying to solve was simple: working with Firebird in automation often means mixing shell scripts, ad hoc local installs,
Many people have asked The Document Foundation for its official position on what Collabora announced in a blog post. This is not the first announcement of this kind in FLOSS environments, nor will it be the last. Collabora feels that it has to invest in a specific product that differs
The announcement of the Euro-Office is welcome news. The coalition is credible, the governance is sound and the timing is perfect. Europe needs office software, and The Document Foundation is delighted to see such significant players allocating resources to make it happen. However, we have a question. It is not
<!-- Post Title: Modernizing the Firebird ODBC Driver: Moving to CMake and Cleaning House -->
As part of an ongoing effort to improve the project's infrastructure, we have just merged Pull Request #281, which introduces a modern CMake build system and drastically cleans up our repository by removing over 62,000 lines of obsolete configurations, old headers, and broken test projects.
This is the
The door to digital sovereignty is open, please come in For decades, a community of developers, activists, researchers and public officials has quietly worked on the idea that free and open-source software based on open standards is not only the best technical choice, but also the only one compatible with
The LibreOffice documentation team is proud to announce the immediate availability of the Calc Guide 26.2. Whether you’re a beginner or an expert, this guide covers all aspects of the LibreOffice Calc spreadsheet module—from creating simple shopping lists to performing advanced data analysis and complex calculations. “We examine the Calc
The Document Foundation, the non-profit entity behind LibreOffice, has a new developer in its team. Neil Roberts started work this month and will initially focus on LibreOffice’s scripting support. Let’s hear from him… Tell us a bit about yourself! I’m from the UK but I escaped to France after the
I came here due to a (decades-spanning, arguably perverse) love affair with the LibreOffice code body. Less so for a love of organizational bodies.
So I mostly remained passive and watched the coup d’état unfold at the Document Foundation. Where some folks apparently felt the need to have us all thrown out. Oh my.
Should I have been more involved around the apparent issues at TDF? Maybe. But then again, I’m a naive little nerd who loves fixing dysfunctional code way more than navigating dysfunctional political setups. (And to be fair, I tried to do my duty, and did serve a term on the membership committee. Back when that was likely more pleasant than what it would be today.)
A major update has been merged into the FirebirdSQL/firebird-odbc-driver repository (PR #276), introducing a comprehensive Google Test suite to establish a strong regression testing baseline for the project. Authored by fdcastel, this addition is a crucial stepping stone before making future bug fixes or CI/CD improvements.
Key Highlights:
Extensive Coverage: The PR adds a
General Activities LibreOffice 26.2.0 was announced on February 4 LibreOffice 25.8.5 was announced on February 19 LibreOffice 26.2.1 was announced on February 26 Olivier Hallot (TDF) added help for Writer’s text dragging and dropping options, Calc’s “Enter key for paste & clear clipboard” option and “Reject silently” in Calc’s Data
Implementing Firebird 4 Protocol Versions 16 and 17 is crucial for utilizing the advanced features, security enhancements, and performance improvements introduced in Firebird 4.0 and 4.0.1. Using updated clients that support these protocols prevents performance degradation and ensures access to modern functionalities. Key Features Supported by Protocol 16 (Firebird 4.0)Wire Protocol Encryption:&
General Activities Olivier Hallot (TDF) improved Writer help for hyphenation zones and controlling section visibility, fixed the help example for Calc’s SUMIF function, clarified the topic of fixed colours in the help for document themes, expanded the help for Calc’s sort options, explained in help the option for removing cross-document
Not too long ago, a change landed, that brought Biff12 clipboard format support in Calc v.26.2 – thanks Laurent!
It was an easyhack that I authored some time ago; and Laurent volunteered to implement that long-standing missing feature. The small detail was, that the feature was Windows-specific (it is trivial to get the wanted clipboard content there, simply copying from Excel), while Laurent developed on another platform.
Laurent had made the majority of work, before he was stuck, without being able to test / debug further changes. Then, he asked me, if there a way to continue on the platform he used.
At that time, I answered, that no, one would need Windows (and Excel) to continue the implementation. So I jumped in, and added the rest, and in the end, we have created the change in co-authorship.
But later, when part of my code turned out problematic, and I needed to fix it and create a unit test for it, I discovered a trick, that could put Biff12 data into system clipboard on any platform, without Excel – allowing then just paste, and debug everything that’s going on there. It relies on UNO API, and can be implemented e.g. in Basic:
function XTransferable_getTransferData(aFlavor as com.sun.star.datatransfer.DataFlavor) as variant
if (not XTransferable_isDataFlavorSupported(aFlavor)) then exit function
oUcb = CreateUnoService("com.sun.star.ucb.SimpleFileAccess")
oFile = oUcb.openFileRead(ConvertToURL("/path/to/biff12.clipboard.xlsb"))
dim sequence() as byte
oFile.readBytes(sequence, oFile.available()) ' changes value type of 'sequence' to integer
XTransferable_getTransferData = CreateUnoValue("[]byte", sequence)
end function
function XTransferable_getTransferDataFlavors() as variant
aFlavor = new com.sun.star.datatransfer.DataFlavor
aFlavor.MimeType = "application/x-openoffice-biff-12;windows_formatname=""Biff12"""
XTransferable_getTransferDataFlavors = array(aFlavor)
end function
function XTransferable_isDataFlavorSupported(aFlavor as com.sun.star.datatransfer.DataFlavor) as boolean
XTransferable_isDataFlavorSupported = (aFlavor.MimeType = "application/x-openoffice-biff-12;windows_formatname=""Biff12""")
end function
sub setClipboardContent
oClip = CreateUNOService("com.sun.star.datatransfer.clipboard.SystemClipboard")
oClip.setContents(CreateUNOListener("XTransferable_", "com.sun.star.datatransfer.XTransferable"), nothing)
end sub
Running setClipboardContent will prepare the system clipboard on any platform, using a trick of implementing arbitrary UNO interface using CreateUNOListener; and after that, pasting into Calc would allow to see if things work (if content of /path/to/biff12.clipboard.xlsb is pasted, as expected), and make improvements. If I knew this trick back then, I would of course share it with Laurent; but I thought I’d put it here now, so maybe it helps me or someone else in the future. (Note that application/x-openoffice-biff-12;windows_formatname="Biff12" there in the code was the name introduced by Laurent in the discussed commit; indeed, that, and the actual data in the file, would depend on the exact format that you work with.)
If you have a commented text range, which gets deleted while track changes is on and you later save
and load this with Writer's DOCX filter, that works now correctly.
This work is primarily for Collabora Online, but the feature is
available in desktop Writer as well.
It was already possible to comment on text ranges. Comments were also supported inside deletes when
track changes is enabled. These could be already exported to and imported from DOCX in Writer. But
you could not combine these.
With the increasing popularity of commenting text ranges (rather than just inserting a comment with
an anchor), not being able to combine these was annoying.
This required changes to both DOCX import and export: a comment could be deleted or could have an
anchor which is a text range, but you couldn't have both.
You can get a development edition of Collabora Online 25.04 and try it out yourself right now: try
the development edition. Collabora intends to continue
supporting and contributing to LibreOffice, the code is merged so we expect all of this work will be
available in TDF's next release too (26.8).
In LibreOffice development, there are many cases where you want to validate some documents against standards: either Open Document Format (ODF) or MS Office Open XML (OOXML). Here I discuss how to do that.
Update: Article updated to reflect that odfvalidator 0.13.0 has just released.
Open Document Format (ODF) Validation
ODF is the native document file format that LibreOffice and many other open source applications use. It is basically set of XML files that are zipped together, and can describe various aspects of the document, from the content itself to the way it should be displayed. These XML files have to conform to ODF standard, which is presented in XML schemas. The latest version of ODF is 1.4, which is yet to be implemented in LibreOffice.
You may also use the online validator, odfvalidator.org, to do a validation.
Online odfvalidator tool
Please read this disclaimer before using:
This service does not cover all conformance criteria of the OpenDocument Format specification. It is not applicable for formal validation proof. Problems reported by this service only indicate that a document may not conform to the specification. It must not be concluded from errors that are reported that the document does not conform to the specification without further investigation of the error report, and it must not be concluded from the absence of error reports that the OpenDocument Format document conforms to the OpenDocument Format specification.
Office Open XML (OOXML) Validation
MS Office Open XML (OOXML) is the native standard for Microsoft documents format. It is also a set of XML files zipped together, and conform to some XML schemas.
There are tools to do the validation, and the one is used in LibreOffice is Office-o-tron. One can use it with below command to validate an example file, test.docx:
$ java -jar officeotron-0.8.8.jar ~/test.docx
Office-o-tron can be downloaded from dev-www.libreoffice.org server of LibreOffice, and this is currently the latest version:
It is worth noting that Office-o-tron can be also used to validate ODT files.
Extensions to ODF Standard
To go beyond the current ODF standard, new features are sometimes introduced as “ODF extensions”, then are gradually added to the standard. You can read more in TDF Wiki:
LibreOffice 26.2 will be released as final at the beginning of February, 2026 (check the Release Plan). LibreOffice 26.2 Release Candidate 2 (RC2) brings us closer to the final version, which will be preceded by Release Candidate 3 (RC3). Since the previous release, LibreOffice 26.2 RC1, 137 commits have been
Happy new year 2026! I hope that this year will be great for you, and the global LibreOffice community, and the software itself! I hereby discuss the past year 2025, and the outlook for 2026 in the development blog.
At The Document Foundation (TDF), our aim is to improve LibreOffice, the leading free/open source office suite that has millions of users around the world. Our work is community-driven, and the software needs your contribution to become better, and work in a way that you like.
My goal here, is to help people understand LibreOffice code easier via EasyHacks and tutorials, and eventually participate in LibreOffice core development to make LibreOffice better for everyone. In 2025, I wrote 14 posts around LibreOffice development in the dev blog (4 of them are unpublished drafts).
Outlook For the New Year
Focus of the development blog for 2026 in this blog will be:
Introducing new EasyHacks
Using new C++20 constructs
Difficulty Interesting EasyHacks
Describing user interface creation with VCL
VCL weld mechanism
Various weld widgets
Describing UNO Components
You can provide feedback simply by leaving a comment here, or sending me an email to hossein AT libreoffice DOT org.
We provide mentoring support to the individuals who want to start LibreOffice development. You are welcome to contact me if you need help to build LibreOffice and do some EasyHacks via the above email address. You may also refer to our Getting Involved Wiki page:
General Activities LibreOffice 25.8.4 was announced on December 18 Olivier Hallot (TDF) added a help page for Markdown in Writer, JSON in Calc, updated or improved help for View and Appearance options, accessibility options, sort criteria in Calc, file conversion filters, ODF versions, handling of empty cells in Calc, Data
Probably the most simple presentations are just a couple of slides, each slide having a title shape
and an outliner shape, containing some bullets, perhaps with some additional images. Images are just
bitmaps, so let's focus on outliner shapes and their outliner / bullet styles.
What happens if you save these to PPTX and load it back? Can you toggle between a numbering and a
bullet? Can you return to an outliner style after you had direct formatting for your bullet?
If you pressed enter at the end of 'First level', then pressed <tab> to promote the current
paragraph to the second level, nothing happened. The reason for this was that our PPTX export was
missing the list styles of shapes, except for the very first list style. And the same was missing on
the import side, too. With this, not only the rendering of the bullets are OK, but also adding new
paragraphs and using promoting / demoting to change levels work as expected.
The second case was about this document, where the second level had a numbering, not a bullet:
We only had UI to first toggle off a numbering to no numbering, then you could toggle on bullets.
Now it's possible to do this change in one step.
The last case was about styles. Imagine that you had a master page with an outline shape and some
reasonably looking configuration for the first and second levels as outline styles:
Notice how the last paragraph has a slightly inconsistent formatting, due to direct formatting.
Let's fix this.
Go to the end of the last bullet, which is currently not connected to an outline style, toggle
bullets off and then toggle it on again. Now we clear direct formatting when we turn off the bullet,
so next time you turn bullets on, it'll be again connected to the outline style's bullet
configuration and the content will look better.
Note how this even improves consistency: Writer was behaving the same way already, when toggling
bullets off and then toggle on again resulted in getting rid of previously applied unwanted direct
formatting.
Developers and database administrators often operate under a common assumption: unlocking powerful new software features requires significant, time-consuming, and expensive development work. New capabilities frequently sit on the shelf, waiting for the budget and time to rewrite applications to take advantage of them.This assumption, however, doesn't always hold true. Recent versions of the
General Activities LibreOffice 25.8.3 was announced on November 13 Olivier Hallot (TDF) improved the help on sort options and keyboard shortcuts, added help for field variable formats, the Slide Properties Sidebar deck, named Calc formulas and Arabic fonts and right-to-left direction for Math. He also updated help for paragraph alignment
LibreOffice 26.2 will be released as final at the beginning of February, 2026 ( Check the Release Plan ). LibreOffice 26.2 Beta1 is the second pre-release since development of version 26.2 started at the beginning of June, 2025. Since the previous release, LibreOffice 26.2 Alpha1, 419 commits have been submitted
A modern C++ wrapper for the Firebird database API.Documentation | Repositoryfb-cpp provides a clean, modern C++ interface to the Firebird database engine. It wraps the Firebird C++ API with RAII principles, smart pointers, and modern C++ features.Features Modern C++: Uses C++20 features for type safety and performanceRAII: Automatic resource management with smart pointersType Safety:
The Document Foundation is not responsible for the content on planet.documentfoundation.org. However - if you have any concerns about content please contact act Mike Saunders for moderation. Copyright information: Unless otherwise specified in the author's blog, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the "Mozilla Public License v2.0". "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.