LibreOffice 5.2 Under the Hood Changes

    From The Document Foundation Wiki

    UI-related

    Build / platform improvements

    • Replaced embedded mDNSResponder code with a proper external tarball (Michael Stahl)
    • Removed the large nss-pem patch from the bundled NSS, as it was determined to be mostly unhelpful (Michael Stahl, Giuseppe Castagno)
    • Removed remaining uses of .src templates and support for them in gbuild. (David Tardon)
    • Removed remaining uses of ARCHIVE flag in scp2. (David Tardon)
    • Removed the need for perl Archive::Zip module during creation of installsets. (David Tardon)

    Code quality work

    • More than 20 unittests added to SVGIO import filter (Xisco Faulí). Commits
    • Improved scalability of com::sun::star::uno::WeakReference with many listeners (Noel Grandin)

    Code cleanup

    C++11

    • Finished replacement of boost::ptr_container with std::container<std::unique_ptr> (Michael Stahl)
    • replaced lots of boost::bind with C++11 lambdas or std::bind (Albert Thuswaldner, Nathaniel Pearson, Daniel Robertson, Fabio Buso, Helena Svobodova, Michael Stahl)
    • replaced BOOST_CURRENT_FUNCTION with __func__ (Michael Stahl)
    • replaced boost::noncopyable with C++11 deleted functions (Jochen Nitschke, Michael Stahl)
    • replaced boost::mem_fn with C++11 lambdas or std::mem_fn (Michael Stahl)
    • replaced boost::assign::list_of with C++11 initialization (Michael Stahl)
    • replaced boost::next/prior with C++11 std::next/prev (Michael Stahl)
    • replaced boost::remove_reference with C++11 std::remove_reference (Michael Stahl)
    • replaced boost::is_same with C++11 std::is_same (Michael Stahl)
    • replaced boost::shared_array with C++11 std::shared_ptr (Michael Stahl)
    • replaced some BOOST_PP usage (Michael Stahl)
    • replaced boost::dynamic_bitset with boost::optional<std::bitset> (Michael Stahl)
    • replaced boost::date_time::posix_time with C++11 std::chrono (Michael Stahl)
    • replaced boost::array with C++11 std::array (Michael Stahl)

    Automatic rewrites

    Misc

    • removed the prex.h and postx.h hacks that worked around namespace conflicts with X11 headers (Jorenz Paragas).
    • removed Windows 95 specific mouse wheel support (Noel Grandin)
    • cleaned up includes of oox module with the include-what-you-use tool (Jorenz Paragas)

    Test Infrastructure

    • fixed issues with the Windows SalYieldMutex implementation and periodic TimerQueueTimers that could cause deadlock by overflowing the main thread's message queue in tests that do multi-threaded Calc file imports (Armin Le Grand, Michael Stahl)

    Miscellaneous improvements