Recent Contributions from Collabora to LibreOffice

We’re continually contributing improvements to the LibreOffice code-base as a member of the community (Collabora Online Forum). Here are a few highlights of the last week’s work on behalf of our customers.

“Collabora is a commercial organisation; of course we serve the needs of our paying customers, but it is a real pleasure to be able to contribute alongside the development community to LibreOffice,” said Michael Meeks, General Manager of Collabora Productivity. “It, not only, helps us offer our customers business values and benefits other companies can’t, but it provides us with an incredibly robust development and support resource.”

There’s a lot going on in the community and here are few current projects that demonstrate what people are hacking.

Enabling Calc support for 16384 columns by default

Over the last couple of weeks Luboš Luňák (Llunak) has been working for Collabora on the 16k columns support in Calc. There’s been a lot of work on this already by Noel Grandin and others, but so far this has been hidden behind the experimental option, and normally documents open only with the “normal” 1024 columns support. The goal of this work is to finish the 16k support stable enough for it to be the default, so that people who need this many columns can finally get them without any complications.

If all goes well, and so far Luboš doesn’t see why it shouldn’t, LibreOffice 7.4 will ship with 16k columns being the default. Calc users will then be able to get a lot more columns to work with.

This work is funded/sponsored by DEVxDAO as part of its mission to support Open Source and transparent research and development of emerging technologies and frameworks. Interestingly finishing this work was also a project that was proposed by to be funded by TDF, and ranked as one of the top requested features, it is great that this budget can now be re-applied to another task.

If you have ever been bitten by the “too many columns” dialog box then, why not find out more about what Luboš is working on.

Word-style border fixes in Writer: pages, tables and paragraphs

Miklos Vajna (vmiklos) has been looking at Writer and how it can better render Word-style borders around pages, tables and paragraphs.

Word users expect to able to import their documents to Writer and experience high-fidelity rendering. This means Writer has to support the way page / table / paragraph borders are painted according to the OOXML model as well. This is all done conditionally, so existing ODF documents are left unchanged.

As a result of this work, Writer now has a set of improvements to better render Word-style borders around pages, tables and paragraphs.

Thanks must go to Docmosis and TUBITAK that have made this work by Collabora possible.

Find out more and take a look at some of the improvements that have been made.

Sparklines in Calc

Sparklines are mini charts available in OOXML (XLSX) documents that up to now were not supported by LibreOffice Calc.

Tomaz Vajngerl explained that to add support in LibreOffice for sparklines, they first needed to be read into the LibreOffice data model, but the data model for sparklines didn’t exist, so it first needed to be created. Once the data model was ready we could render the sparklines in the cell area.

Currently the code for this is in a feature branch (feature/sparklines), but it’s in the process of being up-streamed to master. The feature will be available in LibreOffice 7.4.

Thanks to the funding of NGI and the European Union, this missing feature is now being implemented. This project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No 871498.

Find out more about the work going into the development of sparklines in Calc.

These are just a sample of the good work going on to support and develop LibreOffice for the next release. If you’d like to find out more about what Collabora is doing or, perhaps, you’d like to get involved then please visit the Collabora Online User Forum.

Log4j – When Business Choices Undermine Technology


Late in 2021, the Log4j software vulnerability hit the news. This was, and remains, a widespread security risk that impacted Government institutions and commercial organisations that knowingly or unknowingly installed this free piece of software distributed by the non-profit Apache Software Foundation.

Log4j seems not to be the best advertisement for Open Source as this incident has exposed some of the downsides of a more informal approach to software delivery and maintenance. Having said that, it’s well worth reflecting on the large number of derelict and unsupported systems out there in active use in many companies. From Windows XP, to obsolete or unsupported enterprise systems.

Michael Meeks, General Manager of Collabora Productivity, said:

“Organisations deploy solutions that use off-the shelf Open-Source components all the time, which is fine, but they often fail to get the necessary maintenance and support for them. The Log4j vulnerability is a stark reminder of the issues that can arise when this happens and organisations are left to sort out a major problem with little, if any, formal support.”

Open Source and Corporate Responsibility?

In the case of Log4j, the damaging bit of software is supported by a group of Apache volunteers. They are all well meaning and have worked hard to try address the root cause, but when it comes to important or even critical infrastructure, is it really appropriate to rely on software with such informal, part-time support?

Michael Meeks, commented:

“Open Source is unquestionably a force for good. It’s next to impossible to build a significant technology stack without it today. Nevertheless, the Apache Log4j incident calls into question the relationship between Open Source and commercial users and how they can safely unlock the huge business benefits offered by Open Source software deployment.”

“The point remains that when dealing with important infrastructure all software deployed in the enterprise should be supported by a team of dedicated, full-time experts, who can pro-actively engage with risks, and swiftly respond to users’ needs and any problems that may occur. That should create a positive, contributing linkage between between the end-user and the Open Source project.”

Collabora Online Support and Security

In the light of Log4j and the wide-spread problems this has caused, it’s important to emphasise that Collabora Online, which is based on the LibreOffice technology core, benefits not only from paid maintenance and support, but also a significant long term technical investment in code review, linting, fuzzing and extensive automated testing from the community that all end-users should demand of their software applications, combined with the obvious benefits of scrutiny of Open Source code.

Collabora Online is fully supported by a full-time team. Should any problems be discovered they can be easily reported, and dealt with. This includes a support platform and direct contact with engineers. This is further enhanced with a full and complete range of technical documentation, comprehensive SLAs and signed security updates. Users of Collabora Online are never left alone to deal with any problems.

Security is a critical factor in design. Not only does Collabora Online ensure end users can collaborate securely, confident that only those permitted can access documents, but because it can be easily implemented onto an end user’s own infrastructure they have full control over network access and the servers it is hosted on, further protecting data sovereignty.

“All complex software has problems and, despite our best efforts, there are always more to find,” said Michael Meeks. “Having a supplier who is continuously engaged with the community in identifying, fixing, designing around and keeping their customers safe should be a key part of all enterprises open source procurement.”

Collabora Online – A Real Alternative

Managing Change

As humans we’re bad at change; we much prefer what we know and actively protect the status quo. Like it or not, the uncertainty we’ve all experienced over the last two years has forced change upon us. This has challenged organisations to find real alternative solutions to new operational challenges, such as homeworking, and question many of the norms that had previously been ‘set in stone.’

For most organisations, office document functionality underpins their productivity. We’ve all relied on it for years without giving it much thought – it was ‘set in stone.’ Yes, software updates and improvements in functionality have been introduced over the years, but the basic environment has remained familiar, which has helped maintain productivity.

As its name suggests, office document software has been optimised for a traditional office environment. For most organisations pre-pandemic this meant manageable, predictable office buildings in which their staff gathered together to work. The need to enable and support widespread homeworking changed all of this.

What Had Been Relied On No Longer Worked So Well

Practically overnight, many organisations found that the office document software they had relied on for so long was not as suitable when used in a distributed, less-controllable, homeworking environment. In fact, many simply found it too difficult or too expensive to make it work! As a result, many needed to find an affordable solution that was quick and easy to implement, but, importantly, was familiar to their staff.

Commenting, Michael Meeks, General Manager of Collabora Productivity, said:

“Familiarity is so important when it comes to maintaining productivity. Staff in many organisations were already unsettled by their new homeworking reality so the introduction of a new look and feel to learn would have simply added to their uncertainty, and further undermined productivity.”

Collabora Online – A Real Alternative

Unlike many other reduced functionality office document solutions, Collabora Online provides a feature rich and familiar look and feel. Built on the Open Source LibreOffice Technology core, Collabora Online offers a real alternative for organisations experiencing problems with their existing office document solution. In addition to its  familiar look and feel, Collabora Online provides tried and tested collaboration functionality ideally suited to the demands of a homeworking environment.

Tip of the Spear

Migration away from any well-established application is never completely straightforward. After all, we don’t like change. But when faced with specific operational challenges, many organisations are finding that the introduction of Collabora Online is both straightforward and affordable. As such, it can represent the ‘tip of the spear’ for those looking to start or progress a wider migration strategy that enables them to address vendor lock-in, give greater control over data sovereignty as well as to protect data security, within a distributed working environment that looks here to stay.

Michael Meeks concluded:

“Reliance on a small number of dominant vendors is not inevitable! Office document migration is a realistic first step to prove the wider strategy and can help secure some important early wins, such as improved collaboration, better productivity and much greater control over distributed data. This is the best place to start getting your data back under your control.”

Collabora Online 21.11 Delivers New Features and Interoperability Improvements

Powerful Document Collaboration in a Secure, Private Cloud Environment

Cambridge, January 20, 2022 – Today we are pleased to announce the availability of a major new release of Collabora Online, which makes collaborative editing even more productive. This new release enhances personal and team productivity with design improvements, as well as smoother document interchange through improved interoperability, better performance and more.

Collabora Online is the collaboration suite that offers businesses and professionals the best features, interoperability, LTS, and custom support in open source, while respecting user privacy and corporate data security.

 

Addressing the Needs of Our Users

This new major version of Collabora Online is a further example of our ongoing development and commitment to ensuring it continues to address the evolving needs of our users in a rapidly changing world where choice, distributed working, privacy and data security have never been more important.

 

Quicker Functional Sidebar

The new Sidebar is “native” to your browser, thus much more responsive and always functional and easy to use

Collabora Online 21.11 introduces a new “native” sidebar. It is both a performance and usability improvement. It is now drawn directly on the screen by the browser by JavaScript, and no longer constructed on the server and then sent to your browser, making it far more responsive and natural looking. With its more snappy responding buttons and controls, it is a major improvement for all users!

The new sidebar at a glance:

  • Polished appearance
  • Better user experience
  • Faster responding buttons
  • Faster responding drop-down menus.
Collabora Online 21.11: Many elements, like dropdown menus, respond much faster in the new native Sidebar

 

View Documents More Easily

A number of new buttons in the NotebookBar improve the user experience when viewing documents. Zooming, full-screen view or switching the sidebar on and off are now accessible via clear buttons in the layout tab, and no longer only via the status bars or the burger menu. It makes these frequently used functions even easier to find.

 

Performance Improvements

Collabora Online 21.11 brings together many performance improvements that we have been working on through the 6.4.x lifecycle as well as some more advanced optimisations. These are rather hard to screenshot for your viewing pleasure for obvious reasons, but the next two images are a try at least.

There is a lot to tell on asynchronous save, accelerating of JavaScript, saving network traffic, improved multi-user editing and more. Specifically, in spreadsheets, we’ve made auto-spell checking and AutoFilter quicker. Take a look at this performance blog post for more background from a technical point of view.

 

Ongoing Work!

We continue to work to profile and optimise uses-cases that are important to our users, and the upcoming 21.11 micro-releases will exhibit more continuous improvement in this area – as well as ongoing improvements to our document pixel compression to make things even faster and lighter. It’s well worth staying up-to-date with the latest releases.

 

Right-to-left Support Available for All Document Types

Collabora Online 21.11 now supports right-to-left (RTL) text input within all modules. This makes it easier to create and edit documents in Persian or Arabic. The text direction can be set in the “Format” tab under the option “Page Style” (or “Slide Style” for presentations). The code in Collabora Online can detect several RTL language settings and will mirror the user interface accordingly.

 

Calc-Excel Compatible Formulae Improvements

Many functions in Calc have been improved both to extend interoperability with Excel, and to add new functionality. Support for sheet-local scoped names has been added to INDIRECT(), and both TEXT() and OFFSET() have been adapted to various corner cases to behave identically to the competition. TEXTJOIN() and CONCAT() now handle array & matrix arguments row-wise for improved compatibility. In addition, functions that use powerful regular expressions now correctly honour case-insensitivity flags.

 

Interoperability Boosted by Improved PPTX Import

Collabora Online 21.11 includes many interoperability improvements around the import of PPTX files, which we had already implemented in Collabora Office. Images within shapes – even those converted to greyscale or mirrored – are displayed online true to the original.

 

Better Shadow Effects

In earlier versions, shadows used to be rendered as solid copies of objects. The new Blur option now allows for a more realistic rendering of the shadows. The options of the feature can be accessed via the Shadows tab in the Area dialog or directly through updated “native” Sidebar. This feature was initially developed during a GSoC 2020 for the LibreOffice project mentored by Collaborans and then implemented with further refinements in Collabora Office 21.06 and is now also available online.

 

Glow and Soft Edge Effects for Shapes

Collabora Online 21.11 introduces further features allowing to manipulate shapes in a more granular way. Once a shape is selected, you can choose the radius of the Glow effect and its Soft Edges within the sidebar using the Effects parameter. Furthermore, you can select the colour and the degree of transparency of the effect. This function improves interoperability as it can be used for all shapes across Writer, Calc, Impress and Draw.

 

Consistent Use Of Language Identification

The basic model of language annotation that Collabora Online inherited from the LibreOffice core explicitly assigned languages to regions of text. This can easily lead to unexpected results when documents created in one local language (without specifying it further) are opened by another user with a different local language setting. Instead of a powerful, but potentially confusing multi-languages result, Writer now resets the language to the user’s UI locale if no document language had been defined. The current behaviour is more consistent.

 

Shadowed Tables For Use in ODS and PPTX Presentations

Shadow effects are a great way to add depth and appeal to elements. They are available for many objects, such as shapes, and include a range of feature enhancements and parameters, such as the blur effect and transparency. For tables within presentations, shadows are now also available in Collabora Online through the Table Properties dialog.

 

Miscellaneous Changes

In addition to the larger features, there are, of course, numerous smaller changes:

  • Internet Explorer 11 – dropped. This saves significant code complexity in some areas e.g. copy-paste, simplifies testing, and removes legacy javascript polyfills.
  • Auto-cleanup – on by default. We now, by default, are more aggressive towards processes that are idle and are consuming a large amount of CPU, after around five minutes of this behaviour they are killed, to disable that checkout the ‘cleanup’ section in coolwsd.xml.
  • cool conversion. We have migrated our legacy loleaflet and lool paths to browser and cool – which impacts a number of configuration files and binaries. Integrators should continue to use the URLs they receive from the hosting/discovery end-point. Those with reverse proxy and/or HA setups may need to update their proxy configuration with a simple search & replace, please refer to updated documentation of proxy settings. For more information, please read our upgrade notes.

 

Thanks to the Community

This release is a community effort and we fully appreciate and acknowledge their hard work that has made it possible!  A few weeks ago, we already celebrated the wonderful work of these people in this blog post.

 

 

About Collabora Online

Collabora Online 21.11 is our latest enterprise quality release. It’s suitable for large-scale deployment, and comes with SLA, enterprise support with signed security updates as well as interaction with product management, helping to direct our development priorities. Collabora Online integrates flawlessly into Nextcloud, ownCloud, Seafile, and many of the major file sync & share, groupware and hosting solutions. It’s ideal for organisations that want to collaborate on documents, without losing control over them or compromising on privacy. With the ability to host it on your own hardware or to integrate it into a trusted environment, Collabora Online is the ideal online office suite for digital sovereignty. Enterprises interested in using Collabora Online can check out our home page for more information on partner integrations and online demos. Hosting and Cloud businesses that wish to add Collabora Online to their product portfolio can become a partner. For any questions or tailored solutions, do not hesitate to contact hello@collaboraoffice.com.

 

CODE 21.11 delivers key features for secure, easier and faster online document collaboration

This new major release includes a brand new side bar, performance enhancements and interoperability improvements

Cambridge, November 25, 2021 – Collabora announces the availability of Collabora Online Developer Edition CODE 21.11. This major new release targets the three key areas: ease of use, performance and interoperability. The release demonstrates the company’s mission to the technology leader in collaborative editing. Collabora Online businesses the most effective and secure document creation environment with dedicated support and depth of development horsepower.

CODE 21.11 is the herald of the next major business supported Collabora Online release. This free developer version includes all features and enhancements that will be available in our enterprise version, expected early December. CODE releases allows everyone to learn about new features early.

As always, your feedback on possible issues is much appreciated! CODE is the collaboration suite offering home users and early adapters the best features, interoperability in open source, while respecting user privacy and data security.

Get CODE 21.11

Work easier and faster with the good looking and improved UI

CODE 21.11 comes with a significantly faster and better looking user interface..A major improvement for all users.

The new major CODE release is recognized immediately from the brand new Sidebar

Ease of use is enhanced with both a performance and usability improvements. Leveraging our expertise in the mobile space, the Sidebar is built locally by the browser which is fast. Thanks to snappy and responsive buttons and controls, the Sidebar is intuitive and easy to use. This approach reduces the data transfer from the server to the browser. In addition, the widgets can be styled using the same CSS as other UX components, enhancing the look and consistency of the Sidebar across multiple platforms.

The Sidebar is now drawn directly on the screen by the browser through JavaScript, and no longer constructed on the server and then send to your browser. Earlier versions rendered the Sidebar as images on an HTML canvas. CODE 21.11 uses JSON files with the information of the Sidebar, an approach that we had applied earlier for the mobile implementations.  This approach reduces the data transfer from the server to the browser, and also the widgets can now be styled using the same CSS as other UX components, enhancing the look and consistency of the sidebar.

CODE 21.11: Fast & responsive “native” Sidebar

New handsome view functions in the NotebookBar

New buttons in the NotebookBar improve viewing documents. Zooming, full-screen view or switching the sidebar on and off are now accessible via clear buttons in the layout tab, and no longer only via the status bars or the burger menu. The NotebookBar makes these frequently used functions even more easy to find.

A major release with many performance improvements

CODE 21.11 brings together many performance improvements that we have been working on through the 6.4.x lifecycle as well as some more advanced optimizations. These are rather hard to screenshot for your viewing pleasure for obvious reasons, but the next two images are a try at least.

There is a lot to tell on the subject:

  • Asynchronous save
  • accelerating of JavaScipt
  • saving network traffic
  • improved multi-user editing
  • specifically in spreadsheets, we speeded up auto spell checking and AutoFilter.

Improved multi-user editing

One of the test-cases we use, generates text at around ten times the speed of a normal typist. This is something we have been optimizing along with scalability to larger numbers of concurrent editors of the same document. Read more details here, or a deeply technical blog on optimizing for a larger number of users. Or simply watch this video of a torture test of an intense multi-user editing session showing old, 6.4.x, and 21.11 versions from top to bottom.

Optimizing pathological loads – old/6.4.x/21.11

Don’t miss all details in the special blog post!

We publish a specific blog post with more interesting details, ready this week. I can be found here. It is mostly technical but comes with some nice graphics too. Make sure you do not miss it. Follow our announcements on social media (see the footer of this website).

Improving performance is ongoing work! We continue to work to profile and optimize uses-cases that are important to our users, the upcoming 21.11 micro-releases will exhibit more continuous improvement in this area – as well as ongoing improvements to our document pixel compression to make things even faster and lighter. It is well worth staying up-to-date with the latest releases.

Spreadsheets benefit with Excel compatible formulae improvements and extensions

Relentless focus in Calc to extend interoperability with Excel, and to add new functionality do show. Support for sheet-local scoped names has been added to INDIRECT(), and both TEXT() and OFFSET() have been is adapted to various corner cases to behave identically to the competition. TEXTJOIN() and CONCAT() now handle array & matrix arguments row-wise for improved compatibility. In addition, functions that use powerful regular expressions now correctly honour case-insensitivity flags.

PowerPoint PPTX Interoperability boosted

PPTX import improvements include managing images within forms – even those converted to greyscale or mirrored – are displayed online true to the original. This had been implemented in Collabora Office before.

More attractive and realistic shadow effects also enhance interoperability

A new Blur option does now allow for a more realistic rendering of shadows. The options of the feature can be accessed via the Shadows tab in the Area dialog or directly through updated “native” Sidebar.  This feature was initially developed during a GSoC20 for the LibreOffice project mentored by Collaborans and then implemented with further refinements in Collabora Office 21.06 and is now also available online.

Glow and Soft Edge effects for shapes – more than just interoperable

New features manipulate shapes in a more granular way. Once a shape is selected, you can choose the radius of the Glow effect and its Soft Edges within the sidebar using the Effects parameter. You can select the colour and the degree of transparency of the effect.
Not that these interoperability features apply to all shapes across Writer, Calc, Impress and Draw.

Version 21.11 – The new CODE release of the year

Starting with CODE 21.11, we are adopting the numbering of our online office suite to the scheme of our desktop product. The version number indicates the year and month of the first release of the current major version. CODE releases a major version annually and updates with fixes and improvements at approximately monthly intervals. As before, the updates are marked with a third consecutive number. We think that this kind of numbering makes it easier for CODE users to keep track of the versions.

Improved language handling in Writer

The basic model of language annotation that CODE had inherited from the LibreOffice core is that languages are explicitly assigned to regions of text. This can easily lead to unexpected results when documents that have been created in one local language (without specifying it further) are opened by another user with a different local language setting. Instead of a powerful but potentially confusing “multi languages” result, Writer now resets the language to the user’s UI locale if no document language had been defined. This more consistent behaviour was previously implemented in Collabora Office on the desktop, and is now also available online in Writer.

Shadowed tables for use in ODS and PPTX presentations

Shadows are now available for tables within presentations through the Table Properties dialog. The newly added shadow option includes different parameters such as blur and transparency.

Thanks to the Community!

Before we conclude with some final improvements and news, we really want to let you know about all the people that did the hard work, luckily often with joy and fun too, the community that made this release possible!
Shortly  before this release, we celebrated the wonderful work of these people in this blog  post. Do read it and join us in saying thanks!

Read the blog “our next major release was made more fun and beautiful by the community”

Miscellaneous changes

In addition to the larger features, there are of course a large number of smaller changes:

  • Internet Explorer 11 dropped. This saves some rather significant code complexity in some areas eg. copy-paste, simplifies testing, and removes legacy JavaScript polyfills.
  • Auto-cleanup on by default. We now by default are more aggressive towards processes that are idle and are consuming a large amount of CPU, after around five minutes of this behavior they are killed, to disable that checkout the cleanup section in coolwsd.xml.
  • cool conversion. We have migrated our legacy loleaflet and lool paths to browser and cool – which impacts a number of configuration files and binaries. Integrators should continue to use the URLs they receive from the hosting/discovery end-point. Those with HA setups may need to update their proxy configuration with a simple search & replace as/when we do our enterprise COOL release. Generally we have back-compatibility symlinks to make this migration process smoother and simpler.
  • Quarantine. We now have an experimental way (disabled by default) to slowly accumulate files which caused a problem with Collabora Online in a quarantine directory. This can help report issues see thequarantine_files section in coolwsd.xml.
  • Notebookbar by default. Integrations can now change the look and feel of Collabora Online easily, so we have added a new state default state to our user_interface setting to go with the classic vs. notebookbar options to allow using the integration’s default.
  • Dropped deprecated reuse_cookies. This setting was originally a workaround to aid with authentication, prior to having access_token. However, it proved much less useful than originally anticipated, primarily because cookies nowadays have security restrictions in browsers.
  • Initial simple OT undo/redo. In place of falling back to our ‘repair’ mode, we can now undo and redo simple edits in writer to different paragraphs which were made out-of order.
    Surprisingly this  has never been requested as a feature, but we made a start here.

LibreOffice Technology

CODE and Collabora Online are built with LibreOffice Technology by the LibreOffice community in which we love to participate. We cannot thank everyone involved enough for their passionate work.

Built with LibreOffice Technology

About CODE

CODE is the Collabora Online Development Edition. It contains the latest developments and is perfect for home users. It enables them to regain control of their own online documents and to host them themselves in a secure and private environment. For tech-enthusiasts, it is a low-threshold way to get involved and familiar with our online office solution. CODE will be improved continuously and our next supported and maintained Collabora Online product will be built from it. The code is available on GitHub.

Get CODE 21.11

Open source – so feel welcome to join

Collabora has invested significantly in bringing a host of new features and functionality to this latest release, and accounts for the overwhelming volume of contributions. However, we want to acknowledge all of our friends and colleagues who helped to contribute not only to this, but also to the underlying LibreOffice technology. All of our code is open source, and available to the public on GitHub. Would you like to be part of the Collabora Online success story? Check the new website for Online with information, easy hacks and a forum for Online, report issues, and participate today!