Collabora Online Community Roundup #9 (New Year Edition!)

On 1 October 2020, Collabora Online moved to its new home on GitHub, and started settling in the new infrastructure, expanding its fantastic community, and continuing the work to deliver the latest and greatest developments in productivity and collaboration together. Check our new community website for all the details! 😉

Collabora developers also keep fixing and improving our lovely mother project LibreOffice. As all the good work requires some appreciation, let’s take a look at what the seasoned developers of the Collabora team and the volunteer contributors from our community have been doing during the last two months.

Month in Numbers

On the Collabora Online code repository in the last month, 27 authors have pushed 269 commits to master and 538 commits to all branches. On master, 340 files have changed and there have been 13,568 additions and 6,539 deletions.

Screenshot of GitHub Pulse for Collabora Online
Development Activity on Collabora Online GitHub Repository from December 23, 2020 to January 23, 2021

New Contributors

Congratulations to Bayram Çiçek, Umut Bayramoğlu, Gabriel Masei, Shubham Goyal, and Martin Hoffmann for their first pull requests, and congratulations to Fly, kt-solutions, kevdogg, sseide, kratzersmz, Willem-Jan de Hoog, erikfdev, baffclan, duggalsu, Pascal R. sebastiaanveld, Roland Meier, Timmy183-ui, TijZwa, Christian Raue, pieter-groeneweg, RegisPerdreau, Tobias Kaminsky nabilys, shock, Furkan Ünlütürk, Parrenin Frédéric, mrslavutich, Bond Keevil, yaohao0814, Dan Smolik, Sven, dossantg, William Reed for reporting their first issues and improvement requests on our GitHub repository!

  • Thanks to Bayram Çiçek for contributing to one of our easy hacks, by porting some usages of unique pointers to leverage the Util::make_unique() function, and thus helping us make COOL future-proof by preventing certain potential memory leaks.
  • Thanks to Umut Bayramoğlu for helping us make COOL look even cooler by contributing a new top bar comment icon.
  • Thanks to Gabriel Masei for making it possible for users to have their own settings for UI mode (tabbed or classical toolbar) separate from the default configuration of the installation on the server, thus helping COOL to be even more customizable.
  • Thanks to Shubham Goyal for removing now unneeded Poco::Timestamp functions, thus making the Collabora Online code-base a bit cleaner and more lightweight.
  • Thanks to Martin Hoffmann for fixing our Docker build script for the from-the-source option, thus ensuring it doesn’t cause issues with certain configuration options like –with-lo-path later.
  • Thanks to Fly for letting us know about an issue which caused some certain docker containers being restarted repeatedly. And the issue has already been fixed by Andras Timar.
  • Thanks to kt-solutions for reporting a DOM exception specific to the Chrome browser.
  • Thanks to kevdogg for reporting a permisson issue which was causing COOL 6.4.2.2 docker container failing to start. And the issue is again already fixed by Andras Timar. 🙂
  • Thanks to sseide for reporting multiple docker image issues related to time zones, and access permissions.
  • Thanks to kratzersmz for reporting outdated libpoco causing issues with elliptic curve configuration, which has been now fixed by Andras Timar.
  • Thanks to Willem-Jan de Hoog for letting us know about the COOL start script overriding the classic/tabbed menu preference set in loolwsd.xml, thus giving us the opportunity to improve the installation and configuration experience.
  • Thanks to erikfdev for providing valuable feedback on their specific installation, having an unexpectedly large systemplate, caused by the need for fonts in systemplate. Ashod Nakashian is already working on fixing that, which will potentially make specific large COOL installations much thinner.
  • Thanks to baffclan for taking the time to report a potential problem on mobile, and then also clarifying that it was in fact a bug on another product but not COOL.
  • Thanks to duggalsu for reporting a potential CSV open issue (yet to be confirmed) encountered on Collabora Office mobile version installed from F-Droid.

    The search results for Collabora Office on F-Droid when our third party repo has been defined.
    The search results for Collabora Office on F-Droid when our third party repo has been defined.
  • Thanks to Pascal R. for filing a feature request to add the Line command, to be able to add arrows on presentations on mobile/web, thus giving us the opportunity to improve the user experience of Collabora Online. Pedro Silva has already started working on resolving the request.
  • Thanks to sebastiaanveld for letting us know about the room for improvement on our iOS app’s user experience by allowing the user to choose a proper name for a newly created document.
  • Thanks to Roland Meier for reporting an issue he encountered with the docker image after upgrading COOL, thus leading to the discovery of a discrepancy in the documentation.
  • Thanks to Timmy183-ui for letting us know about our users on F-Droid not being notified about the latest snapshots of the Collabora Office Android App. F-Droid releases are in sync with Play Store and users are notified properly now, thanks to Yunusemre Şentürk.
  • Thanks to TijZwa for filing an enhancement request to improve the way how documents with unsaved changes are handled.
  • Thanks to Christian Raue for reporting an issue that was making it very hard to pass multiple dictionaries to the Docker container. It has now been fixed by Andras Timar.
  • Thanks to pieter-groeneweg for reporting an issue which happened after upgrading their installed version of COOL, which was then followed-up by the Collabora team, and seems to be fixed by a configuration change on their setup.
  • Thanks to RegisPerdreau for letting us know about an issue on Writer, which was causing the resolved state of a single-point comment not being saved. It has been fixed now by Miklos Vajna for COOL, Collabora Office and LibreOffice! 🙂
  • Thanks to Tobias Kaminsky for reporting an issue which caused the COOL Docker image to fail with double escaped domains, which has now been fixed by Andras Timar.
  • Thanks to nabilys for letting us know about the on-screen keyboard sometimes getting in the way of the user while interacting with menus on iOS. It will help us improve UX of COOL for all of our mobile users.
  • Thanks to shock for taking the time to report a missing feature on the Android app, which already exists on COOL.
  • Thanks to Furkan Ünlütürk for creating an issue about a specific type of image file causing an error while being inserted into a document on our mobile app.
  • Thanks to Parrenin Frédéric for testing our demo instance of Collabora Online, and providing technical feedback along with suggestions to improve the user experience even further.
  • Thanks to mrslavutich for reporting an issue they encountered while integrating COOL into their own application.
  • Thanks to Bond Keevil for filing an enhancement request for the hyperlink dialog, to recognize/support mailto links.
  • Thanks to yaohao0814 for letting us know about a potential issue while reading documents with our Android app.
  • Thanks to Dan Smolik for reporting a crash that happens on their installation of Collabora Online along with Nextcloud on Debian Buster. It will help us ensure a smoother experience on various platforms.
  • Thanks to Sven for creating an issue for the problem he encountered while trying to sign a document on his installation. It will potentially help us either to ensure it works properly on even more configuration scenarios or help us expand our help documents.
  • Thanks to dossantg for filing an enhancement request regarding font sizes on the Notebookbar (new toolbar UI), thus helping us improve the user experience even further.
  • Thanks to William Reed for sharing his experience while trying to build our docker image from source for ARM64, which might potentially help us improve build support on different platforms.

Thank you all, and welcome aboard! 🙂

Join the fun!

You can also join the fun, and be part of our next list of new contributors! 🙂

Just go to our GitHub repo, fork it, build it (on Linux or on any platform), grab one of our newcomer-friendly easy hacks, and send your first pull request. And if you get stuck at any point, just drop by one of our communication channels. 😉

Highlights

Collabora Online Weekly Meeting #11

COOL Weekly Meeting #11 has taken place on Thursday, February 04, 2021 at 11:00:00 am (UTC) with participants both from the community contributors and the Collabora team. We have got a quick update on what’s going on and discussed matters raised by the contributors, as well as having the chance to say hi to fellow members of the community. Topics discussed in the meeting include:

  • During the quick update part by Muhammet Kara, it’s been reported that COOL has got more than 60 new contributors (24+ code contributors) since the move to GitHub. It has also been mentioned that there are multiple talks by Collabora Online developers in the LibreOffice devroom of the upcoming FOSDEM in the weekend.
  • Pedro Silva has reported that the pull request for the CSV handling work has been tested and is ready to be merged, which will allow users to download Calc documents directly as CSV files, which also has a new icon contributed by Rizal Muttaqin. He has also shared an update on setup and workflow issues some design contributors have been experiencing, which turned out to be solvable by using our Gitpod (cloud IDE) integration and the daily built LibreOffice core archives which came as a nice side effect of it, to lift the burden of building LibreOffice core from scratch on the contributors.

    Collabora Online repo on Gitpod
    It is possible to start hacking COOL in 10 minutes, independent of your operating system!
  • Nicolas Christener has shared an update on the status of the LibreOffice Template Contest, run by Adfinis, stating that they have got some good-looking submissions and they are considering extending the submission deadline.
  • Regarding the “JSON Toolbar / Notebookbar changes” topic, Jan Holesovsky has reported that they are currently working on improving style previews by converting the styles list into a scrollable, responsive list. He has also shared the latest status of the Async Saving effort, which would result in a much smoother experience when saves happen during a collaborative editing session, such as a lot of code refactoring on master and splitting of states into different classes.
  • Gökay Şatır has shared the latest developments on the CanvasTileLayer bits, which would let us have a much crisper look, especially on different zoom levels for all document types. It looks like the latest changes have been related to the columns and headers on Calc documents, along with some bits being moved to typescript, and a custom scrollbar is the next in line.
  • Michael Meeks has been working on load testing with an emphasis on Calc performance and bogus full-page invalidations which cause unnecessary performance penalties.
  • It has also been discussed that new CODE releases are being planned for the upcoming week, consisting of new improvements such as FontWork, incremental dialog / JSON update work, and async save.
  • Availability of COOL on Plasma phone has been brought up by Andreas Kainz, with a conclusion that some funding would be needed to port Collabora Online to Pine64. He has also reported that latest CSS changes for better alignment caused some scrolling issues, along with an issue on the Notebookbar container, which will be looked into by Pedro Silva and Szymon Kłos.
  • Padia Rashesh asked for some elaboration on an easy-hack related to invalidation debugging, and Michael Meeks explained the topic with a live demonstration. Padia has contributed through multiple easy-hacks so far, and it seems like he is just getting started. Pedro Silva is also providing some guidance via comments on pull requests.
  • Muhammet Kara has brought up that master and the 6.4 branch having different ESLint versions has been reported to be causing issues while backporting patches to 6.4. It has been concluded that many safe patches can be backported next week and tested on new CODE releases.

Check out the meeting minutes for the details of the meeting, and join us on Thursday, February 11, 2021, at 11:00 am (UTC) to stay in touch with the rest of the community. You may also make your own suggestions for the next meeting by following the link shared in the COOL Telegram group before the next meeting. We’re looking forward to hearing from you live. 😉

Collabora Online (COOL)

  • Thanks to Andras Timar for various fixes and improvements around our docker images and documentation as well as for cleaning up the code-base by removing some unnecessary bits and updating localizations.
  • Thanks to Ashod Nakashian for various fixes and improvements towards increasing general stability of COOL and maintainability of the code-base along with tests to make our code-base future-proof, working on the async save feature which will be a major leap towards a much smoother experience for users while collaboratively editing documents, and also for reviewing pull requests of other contributors, and for mentoring them through tough issues.
  • Thanks to Michael Meeks for his recent efforts on stress testing tooling, which will help us ensure COOL continues performing well under pressure on large scales, and also for various other improvements and fixes towards improving the debugging facilities[0][1] and the general code quality.
  • Thanks to Pranam Lashkari for various user interface and user experience fixes and improvements such as making sure hyperlink popup is properly positioned around the edge, and adding support for reordering sheet tabs via drag & drop, thus helping COOL be even more feature-rich and user-friendly.
  • Thanks to Miklos Vajna for improving the performance and stability of COOL by fixing an issue that was causing a crash in a specific scenario, as well as various other fixes and improvements such as adding an explanation to the g review command on how to update an existing pull request in the case of local and remote branches having different names.
  • Thanks to Jan Holesovsky for various code-quality improvements and fixes such as making sure proper C++ practices are in place, and helping COOL become lighter by removing unused functions.
  • Thanks to Henry Castro for various fixes and improvements especially around the Macro Selector dialog to get VBA macros working on COOL, and also adding the related menu item Run Macro to the Tools menu for Calc documents.

    Collabora Online Macro Selector Dialog
    Collabora Online Macro Selector Dialog
  • Thanks to Szymon Kłos for various improvements and fixes on the notebookbar and various dialogs such as the statistics dialog and the Fontwork dialog, turning them into native widgets for COOL, thus allowing a more natural look & feel along with less clutter and possibly better user experience.
  • Thanks to Nnamani Ezinne Martina for adding more cypress tests to ensure the quality of Collabora Online on various features of Calc such as Merge Cells, Text Wrap, and Save and Print commands, as well as fixing the Clear Direct Formatting command of Impress, and updating the screenshots of Online Help.
  • Thanks to Pedro Silva for various fixes and improvements around the user interface of COOL to make it have a better and consistent look and feel across different platforms, as well as adding new features such as CSV as a download option besides many other improvements on different dialogs and user interface items.
  • Thanks to Gökay Şatır for his work on CanvasTileLayer, which would make COOL have a much crisper and smoother look and feel.[0][1][2][3][4][5] See the Weekly Meeting notes above for some more details.
  • Thanks to Andreas Kainz for a lot of design and user interface improvements and fixes especially around the Notebookbars towards bringing the new toolbar design in alignment with the mother project and the expectations of common users. He has also made sure that the sidebar icon sizes match the toolbar icon sizes for visual consistency.
  • Thanks to Thaís Vieira for adding cypress tests to ensure the quality of Collabora Online on various toolbar items of Impress, such as Font Size.
  • Thanks to Ayhan Yalçınsoy for adding the Recalculate command to the Data menu, thus helping COOL be even richer in features.
  • Thanks to Rashesh Padia for various fixes and improvements on comments[0][1][2], and also for making sure that the correct number of characters is displayed in the status bar.
  • Thanks to Tor Lillqvist for improving the logging and debugging facilities of COOL by making sure the debug messages from the client are properly logged, are correctly described, and also by adding an ERROR message to be logged, thus improving the developer experience for all of us, as well as various other improvements and fixes.
  • Thanks to Gleb Popov for continuing his work on bringing Collabora Online to FreeBSD, with many commits.
  • Thanks to Dennis Francis for various fixes and improvements around the Canvas layer, which brings a lot of visual and user experience improvements such as smooth zoom animations.
  • Thanks to Mert Tümer for adding the Insert Connectors pop-up dialog, along with various other fixes and improvements such as adding support for pre-fetching next or previous slide tiles based on the direction of the navigation, thus preventing the tear effect while browsing on an Impress document.
  • Thanks to Tamás Zolnai for a lot of fixes and improvements around cypress (testing framework), and the testing facilities for certain integrations, thus helping COOL have an even better automated quality assurance process, and also for mentoring other contributors while writing new cypress tests. Check out his blog post where he summarizes the different loggings available for cypress tests!

    Cypress Logo
    Cypress is a JavaScript end to end testing framework for any project running in a browser.
  • Thanks to Tomaž Vajngerl for working towards bringing support for Draw documents to Collabora Online.[0]
  • Thanks to Marco Cecchetti for improving the documentation thus making it easier to work on and with COOL for both internal and external developers.
  • Thanks to Yunusemre Şentürk for working on bringing Kubernetes cluster support by adding a proof-of-concept setup with just COOL.
  • Thanks to Rizal Muttaqin for contributing an icon for the new Download as CSV option.
  • Thanks to Aron Budea for improving the logging of SSL status by making it properly report the enabled/disabled state.

Collabora Office on Android & iOS

  • Thanks to Tor Lillqvist for various fixes and improvements on the iOS app such as fixing a crash that could happen in certain scenarios, and removing unused functions and constants.
  • Thanks to Mert Tümer for fixing a focus issue on text input of Calc documents on the Android app.

Collabora Online Integrations

  • Thanks to Julius Härtl for various improvements and fixes on Collabora Online’s Nextcloud integration such as making sure a proper error message is given when a user tries to open a document on unsupported external storage, and also for reviewing and merging many pull requests from other contributors.
  • Thanks to Szymon Kłos for improving the user experience of built-in CODE support of Collabora Online’s Nextcloud integration by making sure no unintended timeout happens when AppImage of COOL is still starting, and also by making sure an open file is properly renamed after a Save As operation.
  • Thanks to Joas Schilling for improving the stability of Collabora Online’s Nextclsoud integration by making sure guest names are properly shortened when they are too long to fit in the database.
  • Thanks to Roeland Jago Douma for various under-the-hood improvements and fixes on Collabora Online’s Nextclsoud integration such as making sure certain exceptions are properly logged for inspection and debugging later.
  • Thanks to Dipak Acharya for his contribution towards faster CI and testing cycles for Collabora Online’s ownCloud integration.
  • Thanks to Piotr Mrówczyński for various under-the-hood improvements on Collabora Online’s ownCloud integration.
  • Thanks to Semih Serhat Karakaya[0], Michael Barz[1], Thomas Müller[2], Artur Neumann[3], Benedikt Kulmann[4] for reviewing and merging pull requests of other contributors on Collabora Online’s ownCloud integration.
  • Thanks to Phil Davis for various improvements on the CI and test facilities of Collabora Online’s ownCloud integration.
  • Thanks to Juan Pablo Villafañez for various contributions around versioning and licensing of Collabora Online’s ownCloud integration.
  • Thanks to Swoichha Adhikari for adding SonarCloud badges to Collabora Online’s ownCloud integration.
  • Thanks to Jérémie Lesage for updating documentation and license information of Collabora Online’s Alfresco integration.
  • Thanks to Andras Timar for adding localization support to Collabora Online’s Alfresco integration along with other small fixes.[0]
  • Thanks to Cindy PIASSALE for various improvements and clean-ups on Collabora Online’s Alfresco integration.[0][1][2][3]

Honorable Mentions

  • Thanks to Cor Nouws for leading the marketing team, and not stopping there but continuing with testing & reporting bugs, attending to community events, and keeping us all informed about what’s going on. He also attends LibreOffice Design meetings from time to time to help COOL’s mother project LibreOffice have a better UI & UX.
  • Thanks to Eloy Crespo for his efforts to help the project well-funded as always.
  • Thanks to Marc Rodrigues for continuing to keep us updated on various news around Collabora Online and related FOSS projects, and creating a lot of yummy content to read!
  • Thanks to Pedro Silva for improving various points around the COOL Community Page, and also for helping other contributors by providing instructions on their pull requests as well as reviewing them.
  • Thanks to Andras Timar for keeping us organized, maintaining our translation project on Weblate, and delivering hot new releases of our software!
  • Thanks to Yunusemre Şentürk for various tasks towards keeping our CI chains healthy.
  • Thanks to Jan Holesovsky for doing a lot of research on different topics, and providing mentoring/patch-reviewing/hand-holding/wisdom within the team, in our communication channels, and also on various channels of our lovely mother project LibreOffice.
  • Your friendly community mentor, Muhammet Kara, is also creating & improving easy hacks, running workshops, helping new contributors solving their setup & build issues and reviewing their pull requests, working on easing the build procedure, improving our GitHub presence bit by bit based on its community guidelines, compiling/composing these community updates…

Translators

Last but not least, we can’t thank enough to our translators who constantly help COOL and its friends talk many languages on this earth. Collabora Online speaks many languages, thanks to all of our translators in our translation project, and all of those who previously contributed and keeps contributing to our mother project, LibreOffice.

We’re continuing to work to find good ways to credit translators’ hard work in the product. Please see a list of those involved, and please get in touch if you’re not listed. Many thanks to all those who have worked on translating Online, you rock!

If you would like to help COOL speak your language, you can just go to our translation project on weblate, and start contributing! 😉

Collabora Online translation project on Weblate
Collabora Online translation project on Weblate

Collabora loves LibreOffice!

We’re still contributing to LibreOffice and encourage you too to do so because LibreOffice rocks. 😉

  • Thanks to Miklos Vajna for his work towards better PDF signature verification in Draw, thus potentially improving the user experience of LibreOffice for related scenarios. Check out his blog post for the whole story!
  • Thanks to Miklos Vajna for improving support for shadows of table shapes for PPTX files, thus ensuring better interoperability with other office suites and non-native file formats. Check out his blog post for details!
    Before: Old render result in Impress

    After: New render result in Impress
  • Thanks to Tomaž Vajngerl for his work towards developing a built-in Xray-like UNO object inspector. Check out his blog post to see what has been done so far and what is planned next. This effort has been funded by The Document Foundation, so also thanks a lot to the TDF Board of Directors, and the TDF donors who made the work on this tool possible!
    Development Tool in the menu

    Development tool dockable window
  • Thanks to Gülşah Köse for fixing a bug that was causing certain images on a PPTX file to be shown as mirrored when opened with LibreOffice, and also for fixing a bug that was causing certain images on PPTX files being rendered with unusual aspect ratios, thus improving interoperability with other office suites.
  • Thanks to Noel Grandin for doing various code-quality improvements and modernization all around the LibreOffice code-base.
  • Thanks to Tor Lillqvist for a lot of fixes and improvements especially towards better support on macOS.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.