Status report: consultancy team, week 45, 2024

Caolan

  • nextcloud dynamic installed fonts missing from presentation
    https://gerrit.libreoffice.org/c/core/+/176032
    When forkit installs fonts, sparekits that already exist don't get them by caolanm · Pull Request #10410 · CollaboraOnline/online · GitHub
  • autotext, hack up rudimentary WOPI config dir/store support
  • async autotext warning dialog that appears when there is no autotext
    for a shortcut
  • debug incorrect slide previews on switch back from notes
    https://gerrit.libreoffice.org/c/core/+/176084
  • fix cypress test failure in pr for double key processing fix of F3
    autotext launch
  • serve userconfig.json settings and autotext sample from test
    wopi server
  • merged Chris’s web worker pr for offloading unrle etc work
  • synchronous (for now to get it working) fetch + parse of
    userconfig.json of CheckFileInfo properties from test wopi server
  • synchronous download of userconfig autotext from test wopi server
  • do these from DocumentBroker::updateSessionWithWopiInfo which
    looks like a reasonable place
  • install the synchronously fetched wopi-served autotext into
    jail session, replacing the bootstrapping hard-coded autotext.
    Seems to work fine.
  • convert synchronous fetch of userconfig.json to asynchronous
  • convert sync download of user autotext to async too.
    Still works.
  • rework post-fork reinitialization of PathSubstitution rules
    for autotext locations with an explicit re-initialization, a
    better fix than the earlier effort making these paths “volatile”
  • add sharedconfig to builtin testing wopi server, serve some sample
    shared autotext files, download that sharedconfig autotext, just
    dump it beside the userconfig autotext for now
  • next steps, put that sharedconfig autotext etc in some sensible
    place where it can be reused by multiple jails and start to tweak
    forkit to have another layer a per-server children. Though maybe
    not a lot of actual gain vs just directly populating final kit with
    user+share for the autotext case unless there’s some meaningful way
    to preload the shared autotext.

Tomaz

Analyze and close gaps to PDF-2.0:

  • PDF 2.0 encryption (Version 5, Revision 6)
    • moved most methods into PDFEncryptor class so that we can create an interface (IPDFEncryptor) and a implementation using new encryption
    • successfully implemented HashR6 algorithm which is the most complex one
  • Test that to validate the password (which confirms it working)
    • implemented UE encryption/decryption so it is possible to get the file encryption key
    • decrypted and tested the “Perm” value with permissions, so it is also possible to test the encrpytion of “Perm” is correct
    • added file encryption key creation
    • now implementing PDFEncryptionR6 class as a drop-in replacement