You Got A Question? Ask    GNOME Community!

LibreOffice 4.1 will shine cleaner!

This post was made with an older stylesheet

Maybe the most important thing about LibreOffice’s 4.0 release was the work done in cleaning the code and making it more efficient, while also doing the biggest API cleanup that has ever occurred since the beginning of the project. This would theoretically help boost the project’s development tempo and make things easier for contributors.

With LibreOffice 4.1 being currently on beta2 state (get it) and only a month away from the final release, we can already get a good picture of what impact this whole cleanup had in the development of our favorite office suite.

More cleanup

Cleaning the code and making it more “sexy” as Michael Meeks likes to say, continues to be a major concern for version 4.1. Here is what has been done so far:

  • Tools cleanup

The tools/ module has a lot of duplicate functionality that is not needed and is not good for security. In version 4.1, a complete duplicate file-system abstraction was written out of the code

  • String cleanups

Progress on the removal of the obsolete UniString class was made along with the removal of reduntant namespace prefixes all across the code for OUString and OString. This results in performance improvements and more easily readable code.

  • Sane includes

Moving all the headers to a single top-level include/ directory and de-crufting the makefiles now results in limiting the confusion and unwanted complexity when building modules.

  • Component service registration

All call-sites that create components with new-style service constructors were cleaned up.

  • Less German comments

Comments in the code written in German seriously confuse and linger non-German developers/contributors. In this release, the translation of these comments to the English language continued (but still not finished yet).

More quality

  • Less crashing

Markus Mohrhard created a python script that automatically imports documents and tests if they crash there. The plan is to run this script automatically against all bugzilla documents on a regular basis and correct things before getting released.

  • Static checking

Another source of significant improvement, was the use of static checking tools to increase code quality, and hence reliability.

  • bibisect

Another great tool we that has been improved in 4.1 is bibisect—allowing developers to have a git repository with binaries from every few dozen previous commits included inside it. This allows end-user testers to find very precisely where a given bug was introduced into the product using bisection of lots of binary builds crammed into a single git repository

  • Unit tests

More unit tests were built and executed with LibreOffice 4.1 to avoid regressions as the code changes. These unit tests concern all parts of the suite, but most of all Calc.

  • Build improvements

Build system improvements make version 4.1 building easier than ever. 126 thousand targets, and 1700 makefiles are now fully converted to GNU make leaving the need to use multiple building tools and scripts dead (dmake and Pearl build wrapper no longer needed).

  • Calc core refactoring

The reason the majority of the new unit test concern Calc is the very significant re-factoring work going on in the core. So far, Calc was architected under the delusion that a spreadsheet is composed of cells – which created some serious scalability and performance problems.

The separation of cell broadcaster mechanism from the cell storage is the first step taken in version 4.1, wheres 4.2 will hopefully bring the complete kill of ScBaseCell and move to storage of spans of contiguous data of uniform type down a column.

More beauty

Yeah, user interface improvements will actually land in 4.1 but don’t expect any ground-braking changes in the way things work. Everything(almost) stayed in place, but optical refinements, position corrections and better use of space results in a more attractive application.



More tools

One of the most interesting new features in 4.1 is the PhotoAlbum that will enrich the functionality of Impress. From now on, users will be able to create slide shows using a series of photos!




More testing

As 4.1 official release approaches more and more new features are implemented and you should expect to read a lot more comprehensive and impressive things when time comes. Till then, our job is to test and report any problems to the hard working developers. It is very important to use the current beta in all possible cases and take the time to report any unexpected/unusual behavior.
  Get LibreOffice 4.1 beta-2

  We can't watch comments unless G+ provides an API or if you send a notification, e.g +World Of Gnome
     Sometimes is better to place your questions on GNOME Community
  • Bruno Queiros

    Honestly i barely see the difference. Libreoffice should focus on better .docx compatibility

    • Luya Tshimbalanga

      .docx is a hustle to support with more than 6000 pages documentation. Even Microsoft has trouble to support their own format all in the price of maintaining control of Office market. Patience.
      My own business is using odt format so no big deal.

      • Bruno Queiros

        My comment is one of a user, and just for you to have an idea, at work i have one virtual machine running windows just to be able to work correctly with .docx and .xls

        • Luya Tshimbalanga

          I understand. However, you cannot expect The Document Foundation to fully complete the compatibility of those ooxml formats in short amount time due to some obscure undocumented scripts and deliberate huge size of documentation from Microsoft.
          Simply inform the user about the status.

    • David Gerard

      Do you have a pile of .docx that don’t convert properly? The best way to get your problems fixed would be to make them into test cases and file bugs on them, with the docx in question attached.

    • David Gerard

      And do the same for Apache OpenOffice, just to give both suites something to compete over ;-)

  • Evropi

    I just really, really hope they have the bibliography tool working. It crashed LibreOffice at 3.6. It just did nothing at 4.x. It’s about time LO had a bibliography tool that actually works. Until then, I’m sorry but it can’t touch MS Office (for most other things it does the job very well though)