LibreOffice 5.3 Under the Hood Changes

From The Document Foundation Wiki
Jump to: navigation, search

About this page

This is an in-progress scratch-pad of notes to build the list of under-the-hood changes from as and when we release. Please do not list changes that are to be shipped already in the 5.2 release! Please do not add wish-list changes that you hope will be done, but only what actually has been done already.

What does a good change description look like here:

  • It has a description what has been done (and why).
  • It credits the main authors who did the work – just add them in brackets after the feature, where possible.
  • If it is possible to show the progress using a graph, a graph should be included.

Thanks in advance for your help filling this out!

QA Work

5.3.0 QA Stats


  • Commands can be given an 'IsExperimental' flag so they will show up in the menu/toolbar only if "Experimental features" are active. (Samuel Mehrbrodt, CIB) commit example
  • Various fixes and improvements. commit commit commit (Muhammet Kara, Pardus)

Build / platform improvements

  • Removed boost patches for libraries that are no longer used (Michael Stahl)
  • Replaced most of the pile of boost patches that work around GCC/clang warnings that upstream won't fix with auto-generated wrapper headers that should be easier to maintain (Michael Stahl)
  • (initial) sparc64 port (James Clarke)
  • Added a script check-elf-dynamic-objects to sanity check library dependencies in release or bibisect builds on GNU/Linux (Michael Stahl)
  • Fixed some build failures when compiling in the Turkish locale commit commit (Gökhan Gurbetoğlu, Pardus)
  • Build bundled poppler library against bundled libjpeg (Michael Stahl)
  • Review usage of OSL_BIGENDIAN macro and actually include the header that would define it (Michael Stahl)

Code quality work

  • Various Cppcheck improvements. commit (Muhammet Kara, Pardus)

Code cleanup


Automatic rewrites


  • adapted to PEP8 and further clean-ups (Kenneth Koski)


  • Cleaned up obsolete usage of TCHAR/_tstring in Win32 code (Stuart Swales)
  • Lots of legacy integers of types like sal_uIntPtr converted to sane integer types (Marian Scerbak)
  • sal_Size type replaced with std::size_t except where needed for URE compatibility (Michael Stahl)
  • Various improvements on usages of rtl::OUString and rtl::OUStringBuffer. commit commit commit commit commit commit commit commit commit commit commit commit commit commit (Muhammet Kara, Pardus; Gökhan Gurbetoğlu, Pardus)
  • Cleaned up obsolete OSL_ASSERT, DBG_ASSERT, etc. and replaced them with correct assertions. commit (Gökhan Gurbetoğlu, Pardus)
  • Converted stringarrays to resource strings. tdf#91665 (Muhammet Kara, Pardus)
  • replaced pointless uses of CSPRNG with faster std::random PRNG (Michael Stahl)

Miscellaneous improvements

  • updated various bundled libraries to the latest version (Jochen Nitschke, Michael Stahl, Caolán McNamara, David Tardon, Andras Timar, Jaskaran Singh, Wastack, Laurent Alonso, Miklos Vajna, Kohei Yoshida, Aleksas Pantechovskis)