LibreOffice 4.2: Release Notes

    From The Document Foundation Wiki

    Installer (Windows only)

    • The option to select which Modules to install has been removed from the Windows Custom install dialog (Andras Timar). The option made little sense (all the modules are included in the program: it was just the Start Menu icons/shortcuts that were suppressed) and was a source of bugs
    Before
    After

    Writer

    • Embedding images into HTML files enables sending merge mails with images in HTML format tdf#63211 (Edmond Ciorba, Andras Timar)
    Before
    After
    • Character border: format one or more characters with a border. tdf#35155 (Tamás Zolnai)
      Supported file formats: ODT, HTML, DOC, DOCX, RTF
      Setting: Format ▸ Character ▸ Borders (tab)
    Borders tab page in Character dialog
    Border around one or more characters
    • Select-All now works in the special situation when the document starts with a table tdf#37606 (Miklos Vajna)
    New select all when document starts with a table
    • Spellcheck popup menu now allows change tracking operations. tdf#35746 (Miklos Vajna)
    New Writer spellcheck popup menu with redline operations
    • Multiple selection of styles in the Style and Formatting window allow to delete or hide them tdf#67461 (Joren De Cuyper)
    • RTF import: added initial support for group shapes tdf#66040 (Miklos Vajna)
    Before
    After
    • Writer can now create DOT files. For more details, see this blog entry. (Miklos Vajna)
    Writer can now save as the .dot format.
    • AutoCorrection of border enhanced: differences are more visible tdf#71740. (Laurent Balland-Poirier)
    Comparison of border thickness with AutoCorrection
    • Find now support ignoring diacritics for Right-to-left languages tdf#52204 (Abdulmajeed ahmed)
    Before and After
    • Fix comment toggle button position in case of Right-to-left locale set to Right-to-left language tdf#69280 (Abdulaziz A Alayed)
    • Quick search (ctrl + f) is no longer influenced by invisible options from the search-and-replace dialog tdf#62601 (Abdulmajeed ahmed)
    • Cross references of headings don't contain footnote numbers in (1) headers (field "Document/Chapter"), (2) tips of references and (3) dialog Fields tdf#71645 (László Németh)
    Before
    After
    Before
    After
    Larger title, new headings, bigger line spacing, and more
    • DOCX Interoperability: Numerous significant improvements to interoperability with Microsoft Word's DOCX format. For details, see Microsoft Office and OOXML filter improvements.
    • In-place editing of input fields. (Oliver-Rainer Wittmann)
    • Better typesetting: fixed line breaking at hard hyphens and at words before punctuation marks. For more information, see this blog post. tdf#56392 (László Németh)
    Before (above) and after (below)
    • LibreLogo (help) (László Németh):
      • PENCAP/LINECAP feature. Example: SVG animation with rounded line ends, and its source code.
      • Stable batch generation of cropped SVG images. Examples: Images with LibreLogo source code.
      • Optional looping of SVG animations (it needs only a SLEEP command after the last shape). Animated maze (checked in Mozilla Firefox 20.0), and its source code.
      • Relative SVG image path of PICTURE is relative to the path of the document (if it exists).
    • Wildcards in autocorrection tdf#68373 tdf#77603 (László Németh)
      • Input field “Replace” of Autocorrection settings: “Enter the word or abbreviation that you want to replace while you type. Wildcard character sequence .* in the end of word results the replacement of the word before arbitrary suffixes, too. Wildcard character sequence .* before the word results the replacement after arbitrary prefixes, too. For example, the pattern "i18n.*" with the replacement text "internationalization" will find and replace "i18ns" with "internationalizations", or the pattern ".*..." with the replacement text "…" will find and replace three dots in "word..." with the typographically correct precomposed Unicode horizontal ellipsis ("word…").”
      • NOTE: before LibreOffice 4.2.4, this wildcard was only an *. This character was changed to the sequence .* (dot asterisk, similar to the regular expression pattern) in LibreOffice 4.2.4.

    Calc

    • Right-click context menu on bottom left scrollbar arrows to switch sheets (Caolán McNamara)
    Menu Preview
    • Prevent increase indent from running outside the cell (Abdulmajeed ahmed)
    • Extend formula range from all corners tdf#67592 (Tomaž Vajngerl)
    Extended Formula Range
    • Random number generation (Edit ▸ Fill ▸ Random Number...) tdf#66477 (Tomaž Vajngerl).
    Random Number Generator
    • Statistics functions Data ▸ Statistics (alternative to Excel's Add-in "Analysis ToolPak") tdf#66477 (Tomaž Vajngerl)
      • Sampling
      • Descriptive Statistics
      • Analysis of Variance (ANOVA)
      • Correlation
      • Covariance
      • Exponential Smoothing
      • Moving Average
    • Implemented 'Find All' also in case of 'search in all sheets' option - creates a dialog describing matching cells tdf#39881 (Matúš Kukan)
    Find All: matching cells dialog

    Formula engine

    • Added WEBSERVICE and FILTERXML spreadsheet functions for access to web data. (Markus Mohrhard)
    • Added LEFTB, LENB, MIDB and RIGHTB spreadsheet functions working on DBCS double byte character strings. (Zhang Lu)
    • Added COVARIANCE.P and COVARIANCE.S spreadsheet functions for MS-Excel interoperability. tdf#70000 (Winfried Donkers)
    • Added STDEV.P and STDEV.S spreadsheet functions for MS-Excel interoperability. tdf#44134 (Winfried Donkers)
    • Added VAR.P and VAR.S spreadsheet functions for MS-Excel interoperability. tdf#61002 (Winfried Donkers)
    • Added BETA.DIST and BETA.INV spreadsheet functions for MS-Excel interoperability. tdf#71008 (Winfried Donkers)
    • Added BINOM.DIST and BINOM.INV spreadsheet functions for MS-Excel interoperability. tdf#71081 (Winfried Donkers)
    • Added CONFIDENCE.NORM and CONFIDENCE.T spreadsheet functions for MS-Excel interoperability. tdf#71350 (Winfried Donkers)
    • Added F.DIST, F.DIST.RT, F.INV, F.INV.RT and F.TEST spreadsheet functions for MS-Excel interoperability. tdf#71436 (Winfried Donkers)
    • Added EXPON.DIST, HYPGEOM.DIST, POISSON.DIST and WEIBULL.DIST spreadsheet functions for MS-Excel interoperability. tdf#71722 (Winfried Donkers)
    • Added CHISQ.DIST, CHISQ.DIST.RT, CHISQ.INV, CHISQ.INV.RT,CHISQ.TEST, commit. (Winfried Donkers)
    • Improved CRITBINOM spreadsheet function to handle large sample quantities. (Winfried Donkers)
    • Added a new formula interpreter to enable massive parallel calculations of formula cells using GPU via OpenCL. (Kohei Yoshida, Tor Lillqvist, Michael Meeks, Markus Mohrhard, AMD, MultiCoreWare)
    New 'Enable OpenCL' option in the Detailed Calculation Settings dialog.

    Impress / Draw

    • Visual clue in Slide Sorter when a Slide has a Transition or Animation(s) tdf#65456 (Edmond Ciorba, Andras Timar)
    Icon for Transitions or Animations
    • Adding icons to slides having custom animation or transition set, in presenter view, makes easier to present the whole content of the slides tdf#65457 (Edmond Ciorba, Andras Timar)
    Presenter Preview
    Notes View
    Slidesorter View
    • Impress remote control for iOS
    • The side bar is now enabled by default (only in Impress)
    • New Custom Animation toolbar tdf#62082 (Samuel Mehrbrodt)
    Custom animation toolbar

    Base

    • INCOMPATIBLE CHANGE: a checkbox bound to a (var)char (string) field will now write 'true' or 'false', whereas up to LibreOffice 4.1 it wrote the strings '1' or '0'. The read behaviour is backwards compatible and will recognise values '1' or '0'. (Lionel Elie Mamane)
    • NEW FEATURE: reference values in checkboxes are now honoured. This allows to have again the old behaviour of writing '1' or '0' if desired. It also allows e.g. to invert the behaviour of the checkbox (bound to a boolean field) by setting the checkbox properties as follows 'Reference (on): false' and 'Reference (off): true' (Lionel Elie Mamane)

    Chart

    • Import charts from xlsx which don't have proper references but have internal data (Muthu Subramanian)
    • Toolbar buttons for vertical/horizontal grids change behavior to variate grid between major, major&minor and off. tdf#66422 (Tomaž Vajngerl)
    • Trend lines enhancements:
      • Support more than one trend line per series (Tomaž Vajngerl)
      • Force intercept for trend lines tdf#40314 (Tomaž Vajngerl)
      • Extrapolation of trend lines tdf#40316 (Tomaž Vajngerl)
      • Polynomial trend lines tdf#35712 (Tomaž Vajngerl)
      • Moving average trend lines tdf#40315 (Tomaž Vajngerl)
    Trend lines enhancements: multiple trend lines, force intercept (top left), extrapolate trend line (top right), polynomial trend lines (bottom left), moving average trend line (bottom right)

    Core

    Options / General

    Windows Registry changes

    Windows Registry as a configuration backend. Under Windows, LibreOffice uses keys under HKLM/Policies/LibreOffice as a configuration layer on the top of program's layer and below user's layer.

    The following structure is assumed: Last element of Key becomes prop, first part is the path and optionally nodes, when the node has oor:op attribute. Values can be the following: Value (string) and Final (dword, optional) For example the following registry setting:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\LibreOffice\org.openoffice.UserProfile\Data\o]
    "Value"="Example Corp."
    "Final"=dword:00000001
    

    becomes the following in configuration:

    <item oor:path="/org.openoffice.UserProfile/Data">
        <prop oor:name="o" oor:finalized="true">
            <value>Example Corp.</value>
        </prop>
    </item>
    

    Another example:

    [HKEY_LOCAL_MACHINE\Policies\LibreOffice\org.openoffice.Office.OptionsDialog\OptionsDialogGroups\ProductName/#fuse\Pages\BasicIDEOptions/#fuse\Hide]
    "Value"="true"
    

    becomes the following in configuration:

    <item oor:path="/org.openoffice.Office.OptionsDialog/OptionsDialogGroups">
        <node oor:name="ProductName" oor:op="fuse">
            <node oor:name="Pages">
                <node oor:name="BasicIDEOptions" oor:op="fuse">
                    <prop oor:name="Hide">
                        <value>true</value>
                    </prop>
                </node>
            </node>
        </node>
    </item>
    

    Third example (property of an extensible group -> needs type):

    [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\LibreOffice\org.openoffice.Office.Jobs\Jobs\org.openoffice.Office.Jobs:Job['UpdateCheck']\Arguments\AutoCheckEnabled]
    "Value"="false"
    "Final"=dword:00000001
    "Type"="xs:boolean"
    

    becomes the following in configuration:

    <item oor:path="/org.openoffice.Office.Jobs/Jobs/org.openoffice.Office.Jobs:Job['UpdateCheck']/Arguments">
        <prop oor:name="AutoCheckEnabled" oor:type="xs:boolean" oor:finalized="true">
            <value>false</value>
        </prop>
    </item>
    

    With this feature it becomes possible to centrally manage LibreOffice configuration with Group Policy Objects in a Windows domain. It is possible set and optionally lock many LibreOffice settings. The feature was developed by the order of Hungarian E-Governmental Free Software Competence Centre.

    Code quality

    Improved code quality based on the Coverity scan analysis. (Stephan Bergmann, Herbert Dürr, Jan Holesovsky, Andrzej J.R. Hunt, Marc-André Laverdière, Caolán McNamara, Markus Mohrhard, Julien Nabet, Noel Power, Michael Stahl, Norbert Thiebaud, Miklos Vajna)

    Results based on the Coverity scan analysis results. (Data available after registration)

    Filters

    Microsoft Office and OOXML filter improvements

    • Numerous improvements to interoperability with Microsoft Word's DOCX format:
      • Writer now preserves the 'Track Changes ON' when present in a DOCX (track changes data itself is partially preserved). tdf#64826 (Adam Fyne)
      • Solid page background color now roundtripped in DOCX. tdf#65257 (Adam Fyne)
      • Fix for page border margins in DOCX. tdf#64350 (Adam Fyne)
      • Fix for different Odd & Even page flag ignored. tdf#65655 (Adam Fyne)
      • Fix for hidden footer being imported to Writer as normal footer. tdf#64238 (Adam Fyne)
      • Writer now preserves underline color. tdf#65710 (Adam Fyne)
      • Writer now preserves character shading. tdf#65400 (Adam Fyne)
      • Writer now preserves page numbers that don't start at '1'. tdf#66543 tdf#44689 (Adam Fyne)
      • Fix for export of text-box inset property to DOCX. tdf#66929 (Adam Fyne)
      • Fix for DOCX export of page border - (interoperability export case #2) https://wiki.openoffice.org/wiki/Writer/MSInteroperability/PageBorder
      • Fix for preservation of bullets with level 0 (should not be shown). tdf#66781 (Adam Fyne)
      • Fix for page border shadows in DOCX. tdf#64350 (Adam Fyne)
      • Borders in headers\footer now not being lost. tdf#67013 (Adam Fyne)
      • Text-Box background gradient color now preserved correctly. tdf#65295 (Adam Fyne)
      • Preserve rotation information on bitmaps. tdf#70457 (Jacobo Aragunde)
      • Fix wrong position and size values on exported shapes. tdf#70838 (Jacobo Aragunde)
      • Preserve Smart-Art information. (Jacobo Aragunde, Andrés Gómez, Miguel Gómez)
      • Fix wrong alignment and directionality when open DOCX file. tdf#43093 (Faisal M. Al-Otaibi)
      • Fix wrong directionality after save file created by MS. tdf#71646 (Faisal M. Al-Otaibi)
      • OOXML floating table improvements. For more details, see this blog entry. (Miklos Vajna)
      • Ampersand in document title causes corrupt docx tdf#63053 (Abdulmajeed Ahmed)
    • Significant speedups of all OOXML parsing - by splitting parsing / tokenisation into a separate thread, and many other related optimisations to the FastParser (Matus Kukan, Michael Meeks)
    • Support for the default Microsoft Office 2010 and 2013. Agile decryption mechanism (Tomaž Vajngerl)
    • Support for OOXML encryption. tdf#59524 (Tomaž Vajngerl)
    • Numerous other improvements have been made to the Microsoft OOXML Import and Export filters as well as for the Microsoft Office binary file formats and the RTF format. Details:

    Improvements to other import/export filters

    • Improved MathML Export. blog post tdf#66279 (Frédéric Wang)
    • Always embed the standard PostScript core font set in PDF exports. Not embedding them is a deprecated behavior that can lead to document display issues. (Khaled Hosny)
    • PDF bookmarks don't contain footnote numbers tdf#71645 (László Németh)
    Before
    After

    SVG export

    • fix double stroke-width problem. tdf#71136 (László Németh)
    • support stroke-linecap and stroke-linejoin. tdf#71137 (László Németh)

    New import filters

    • Apple Keynote import filter (David Tardon)
      • A sample presentation
      • Update 2014-02-11: because of a mistake, the latest version of libetonyek (the library that handles Keynote import) has not made it into 4.2.0. Therefore support for tables, notes and formatting attributes is delayed for 4.2.1.
    The sample presentation opened in Apple Keynote (on macOS)
    The same presentation opened in LibreOffice (on Linux)
    Notes tab
    • AbiWord import filter (Fridrich Štrba)
    A sample ABW file opened in AbiWord
    The same ABW file opened in LibreOffice
    A sample (zlib compressed) ZABW file opened in AbiWord
    The same ZABW file opened in LibreOffice
    • Import filter for various e-book formats, mostly Palm-based (David Tardon)
      • FictionBook 2
      • PalmDoc
      • PeanutPress (eReader)
      • Plucker
      • TealDoc
      • zTXT
      • Sorry, no ePub yet... Stay tuned for 4.3 :-)
    • Import of more legacy Mac document types (Laurent Alonso)
      • Acta Mac Classic Document
      • Beagle Works / WordPerfect Works Document
      • Great Works Document
      • MacDoc Document
      • More Mac v2-3 Document

    GUI

    • GNOME3 Application Menu integration tdf#48835 (Caolán McNamara)
    Gnome Application menu
    • Multirow tab dialog tab balancing tdf#66435 Now if tabs in a tab dialog need to wrap onto a second line to fit into the space available they will wrap in a more balanced fashion that avoids a single orphan tab. (Stefano Facchini and Caolán McNamara)

    Before:

    Before multirow tab dialog balancing

    After:

    After multirow tab dialog balancing
    • Support MATE and XFCE Desktops (native Open/Save dialogs) tdf#46990(Pader Rezso)
    • Add "Find All" to the Find bar tdf#64451 (Andrzej J.R. Hunt)
    • Windows are now grouped together by application in the taskbar on Windows 7 and higher (Jesús Corrius)
    Windows grouped by application
    • Recent documents list support in the taskbar icon on Windows 7 and higher tdf#35785 (Jesús Corrius and Fridrich Štrba)
    Recent document list in taskbar
    • More supported document types have been added to the "Open With" menu on Windows (Jesús Corrius)
    • Ruler enhancements: snapping to ruler ticks, show ticks above numbers, tooltips (Tomaž Vajngerl)
    Ruler enhancements
    • An Expert Configuration functionality has been added to the Options tab (Efe Gürkan YALAMAN). This can be disable by setting EnableExpertConfiguration to false in the user's configuration.
    About config page
    • Extend support for Document Management Systems: connection to GDrive is now possible, a CMIS Properties dialog allow to edit them (Cuong Cao Ngo)
    • Added Right-to-left\Left-to-right buttons to the Sidebar tdf#67746 (Abdulmajeed ahmed)
    • tdf#71511: Respect accessibility requirements, but also let dark theme users have decent default view colors (Bjoern Michaelsen)

    New start screen

    • The new Start screen has a cleaner layout that makes better use of the available space, even on netbooks. It allows the user to have a quick glimpse of recently-opened documents. You can drop files on it to open them, just as before. (Krisztian Pinter, Mirek Mazel, Stefan Knorr, Krzysztof Ponikiewski, Rodolfo Ribeiro Gomes, Tamas Zolnai, Jan Holesovsky)
    New Start Center

    Formula editor

    • Make use of ZoomSlider in Math tdf#63351 (Thomas Arnhold)
    • Auto Closing of brackets tdf#43090 (Marcos Paulo de Souza)
    • Math: New feature to add colors directly from the Elements Dock by clicking their name (Marcos Paulo de Souza)
    Colors in Math

    Flat icons (Sifr)

    • A new set of icons has been included in LibreOffice 4.2. This icon set, named Sifr, was designed to reach the goal of having beautiful non-distracting icons to help the user concentrate on the document. (Issa Alkurtas, Norah Abanumay, Pavel Haratický and Ahmad Harthi)
    Writer with Sifr icons

    Smiley Face

    • Smiley now smiles! (Ahmad Harthi)
    Smiley face before and after

    Localization

    Language tag support

    Changes as a result of supporting BCP 47 language tags (see also #Core).

    • Catalan Valencian [ca-ES-valencia] is now supported as language for document content. tdf#68714 (Eike Rathke)
    • The legacy kludge for Catalan Valencian UI translation [ca-XV] is now the proper [ca-ES-valencia] tag. (Eike Rathke)
    • All legacy kludge [sh-*] locales are now proper [sr-Latn-*] with support of [sh-*] for existing documents. (Eike Rathke)
    • Added [en-GB-oed] grandfathered tag for "English, Oxford English Dictionary spelling" to language list. (Eike Rathke)
    • Cleaned up the macrolanguage code kludge [ku-*] used for Kurdish written in Latin script and distinguishing scripts by differentiating by country. tdf#63460 (Eike Rathke)
      • ku → kmr-Latn (Northern Kurdish, Latin script)
      • ku-TR → kmr-Latn-TR (Northern Kurdish in Turkey, Latin script)
      • ku-SY → kmr-Latn-SY (Northern Kurdish in Syria, Latin script)
      • ku-IQ → ckb-IQ (Central Kurdish in Iraq, Arabic script)
      • ku-IR → ckb-IR (Central Kurdish in Iran, Arabic script)
      • added sdh-IQ (Southern Kurdish in Iraq, Arabic script)
      • added sdh-IR (Southern Kurdish in Iran, Arabic script)

    New languages/locales in language list

    Available for character attribution and spell-checking.

    • Added Ngäbere_Panama [gym-PA] to language list. tdf#66602 (Eike Rathke)
    • Added Kumyk [kum-RU] to language list. tdf#70089 (Eike Rathke)
    • Added Nogai [nog-RU] to language list. tdf#69987 (Eike Rathke)
    • Added Karakalpak Latin [kaa-Latn-UZ] to language list. tdf#70217 (Eike Rathke)
    • Added Ladin [lld-IT] to language list. tdf#70530 (Eike Rathke)
    • Added Puinave [pui-CO] to language list. tdf#71454 (Eike Rathke)

    New languages/locales with locale data

    Available as default document language and for locale specific formatting.

    • Added Ladin_Italy [lld-IT] locale data for full locale support. tdf#70530 (Domingo Sacristan and Eike Rathke)
    • Added French (Burkina Faso) [fr-BF] and locale data. tdf#71243 (David Delma and Eike Rathke)
    • Added Bamanankan/Bambara_Mali [bm-ML] locale data. tdf#71361 (JJ Méric and Eike Rathke)
    • Added Puinave_Colombia [pui-CO] locale data. tdf#71836 (Michael Bauer and Eike Rathke)
    • Added Arabic_UAE [ar-AE] and Arabic_Kuwait [ar-KW] locale data referrers for AED and KWD currencies. tdf#71140 (Eike Rathke)

    Improved language tools (spell-check dictionaries, thesaurus, hyphenation patterns)

    Information taken from dictionary repository:

    • Greatly improved German language tools (de-AT, de-CH, de-DE) with over 10,000 new words added to the German spell-check dictionary and updated hyphenation patterns. For the first time, the German thesaurus exceeds 100,000 words in over 28,000 meaning groups.
    • Lao (lo_LA) spell-check dictionary added.
    • Brazilian Portuguese (pt_BR) spell-check dictionary updated.(Raimundo Moura, Marcos Paulo de Souza and Alexandre Vicenzi)
    • Spanish spell-check dictionary updated.
    • Swedish spell-check dictionary updated.
    • French spell-check dictionary updated.
    • Dutch spell-check dictionary updated.
    • Scottish Gaelic (gd_GB) spell-check dictionary updated.
    • Slovenian thesaurus updated. (Martin Srebotnjak)

    Adoption of the Euro

    • Latvia adopted the Euro on 2014-01-01, related changes: tdf#73239 (Eike Rathke)
      • Added 'EUR' currency to [lv-LV] and [ltg-LV] locale data and made it their default currency.
      • Added 'LVL' Latvian Lats to the Euro Converter (File ▸ Wizards ▸ Euro Converter...).
      • Added "LVL" conversion factor 0.702804 to the Calc EUROCONVERT() spreadsheet function.
    • Also added the Estonian Kroon "EEK" conversion factor 15.6466 to the Calc EUROCONVERT() spreadsheet function.

    Experimental Features

    • Added an experimental feature of live data streaming (Data ▸ Streams...). This feature is still highly experimental, and is disabled by default. You need to check the Enable experimental features option to enable this feature. (Matúš Kukan, Kohei Yoshida)
    Data stream dialog
    • NEW TECHNOLOGY PREVIEW FEATURE: Firebird SQL connector for LibreOffice Base (Andrzej Hunt). When creating a new Database, select Firebird Embedded in the drop down menu (you have to first enable the Experimental features in Tools ▸ Options ▸ LibreOffice ▸ Advanced). This allows creation of databases that perform many times faster than the previous built-in HSQLDB 1.8, avoiding the C++-to-Java overhead inherent in using HSQLDB. We plan to phase HSQLDB out over the next few releases, and provide a smooth migration path to Firebird. Connecting to modern HSQLDB 2.x external databases remains available through HSQLDB's native interface, namely JDBC.

    Start of a few words about Firebird, please feel free to improve following description of Firebird: "The integration of Firebird in LibreOffice Base is a big step forward. Firebird is a mature relational SQL database that is ACID-compliant and boasts cross-platform support, multi-generation architecture, referential integrity, logging and monitoring capabilities. It offers high performance, excellent concurrency and powerful language support for stored procedures and triggers, and more. It has been used in production systems, under a variety of names, since 1981."

    Firebird Embedded
    • On Windows there is a new experimental accessibility bridge supporting IAccessible2 (IA2), based on code from IBM. By default the legacy Java Access Bridge (JAB) will be used, and Experimental features in Tools ▸ Options ▸ LibreOffice ▸ Advanced switches to the new IA2 bridge; in LO 4.3 the JAB will be removed in favour of IA2. Please check that your accessibility tool supports IA2 before trying it out; NVDA is known to work. For more details see Development/ia2.

    Performance

    Calc

    • Calc's cell storage structure has been completely re-written, to store contiguous cell values in contiguous memory region to improve locality of reference as well as the cost of storage. The new structure also enables hardware accelerated parallel calculations of a large number of cells. (Kohei Yoshida)
    • Calc core now shares all string instances stored in cells and several other places in order to significantly speed up both case sensitive and case insensitive string comparisons, and also to allow string equality check in OpenCL-based formula interpreter. This change also speeds up execution of several cell functions (such as VLOOKUP) that perform a large number of string equality comparisons. Filtering of rows via AutoFilter, Standard Filter, and Advanced Filter should run faster thanks to shared strings. (Kohei Yoshida)
    • Vertically adjacent formula cells containing identical formula token set now share their formula token array instance. This can drastically reduce run-time memory usage of Calc, and also speeds up automatic reference updates when moving cells. (Kohei Yoshida)
    • XLSX import filter has been re-worked to achieve significant boost on the import performance on XLSX documents. The speed up was achieved by moving much of the temporary string allocations and deallocations that occur during the XML parsing phase to a separate thread, and also by re-working the handler logic on the Calc side to reduce inefficiencies, especially with regard to importing of formula cells. (Kohei Yoshida, Michael Meeks, Matúš Kukan)
    • Added an experimental multi-threaded import for XLSX documents. When the experimental features are enabled, Calc tries to import XLSX documents using multiple threads, to import multiple sheets concurrently. (Kohei Yoshida, Michael Meeks)
    • Significant speed up on the export of ODS document that contains a large number of rich-text cells. Refer to this blog post for more details. (Kohei Yoshida)
    • Cell note storage has been re-worked to use multi_type_vector, in order to improve the performance of import and export of documents containing large number of cell comments. (Laurent Godard)
    • Improved performance of VLOOKUP function with use of external references. (Pierre-Eric Pelloux-Prayer)
    • Improved performance of SUM, COUNT, and SUMIFS function. (Kohei Yoshida)

    Infrastructure

    • Added 64-bit builds for macOS.
    • New experimental liblibreoffice API that allows (initially) LibreOffice's filters to be re-used by directly linking to the LibreOffice core. This has a simple C and wrapper C++ API, and brings no run-time dependency (via a very tiny static library / shim) (Michael Meeks)
    • Symbols & source server for LibreOffice on Windows.
    • When a bug is experienced on Windows, it is now easy to get a backtrace or more information about that via Symbols Server and Source Server. (Fridrich Štrba, Luboš Luňák, Jan Holešovský, Christian Lohmaier)
    • More info on how to use it.

    Scripting / Base

    • LibreOffice now bundles Access2Base, a simplified API for scripting of Base (and Writer database forms) in the Basic programming language. It is more concise and easier to learn than the cross-language standard UNO API.

    API Changes

    Removing deprecated configuration options

    C++ UNO language binding and URE libraries

    Java

    New style services

    A large number of existing UNO services were converted to new-style services, which allow for more convenient and more type safe construction; this has no impact on compatibility of existing client code. (Noel Grandin)

    Unpublishing UNO APIs

    UNO API changes

    The following UNO interfaces and services were changed:

    d259e07e851cafa4e0ca68f7ab18535e82c7aed5

    UNO API removals

    The following UNO interfaces and services were removed from the API:

    com.sun.star.awt.MenuLogo 9052caae53ef6ec7eeab20f1ac56bd6310b4451b

    Autodoc replaced by doxygen

    The SDK no longer contains the autodoc documentation tool 9d93ed7cd1b36830f6d7aedd4e6f15667774de1d.

    IDL API documentation can be extracted by doxygen version 1.8.4 or later instead. Download it from http://www.stack.nl/~dimitri/doxygen/download.html

    There are some differences in the documentation markup between autodoc and doxygen; the warnings printed by doxygen are helpful in finding comments that need tweaking.

    uno-skeletonmaker

    The obsolete --java4 command line parameter was removed from the uno-skeletonmaker tool 3cb10e9220da27ca7db2f68007be9e310bdefc4d

    Most Annoying Bugs

    The following annoying bugs were not fixed in time and will be addressed in the regular bug fix releases:

    Release 4.2.7

    Changes in the sorting function were made in this release and are not fully stabilized. Refer to meta-bug below for more information before deciding whether to update to this version.

    • METABUG] Use-Cases for sorting with references tdf#85490 fixed in 4.2.8

    ODF changes

    • This version corrects the misspelling “turquise” for Table Style in Impress. The files which use this style should be fixed by following the following howto: Documentation/HowTo/fix odp fdo71428