Backport uuid based cache file naming scheme
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
fontconfig (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Bionic |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Fontconfig 2.13.0 changed the cache file naming scheme to be based on the contents of ".uuid" file in the directory rather than a hash of the directory name. On a pure debs system this doesn't really matter since everything is using the same libfontconfig.so.
When snaps are involved, it can lead to some apps not seeing the cache files produced by a different fontconfig version. In particular, while libfontconfig 2.13 can reuse 2.12's cache files for read only directories, the reverse is not true. This will be a problem for apps built on top of the "core18" base snap when run on later Ubuntu releases (cosmic, disco, etc).
By providing a backport of the UUID cache file feature to bionic for use by snap applications, we'd avoid this. Having it in bionic-updates would be ideal so that snapcraft picks it up automatically.
[Impact]
* This update changes how fontconfig cache files are named, instead of using md5($dir), it instead uses the contents of a $dir/.uuid file. No changes are made to the format of the cache file contents.
* This change is primarily intended for use by snap applications built with core18: as the updated libfontconfig will fall back to the md5 cache file names for read-only directories without a .uuid file, they will be able to reuse cache files from any host system running fontconfig >= 2.11.95
[Test Case]
* After installing the update, cache files should be generated in /var/cache/
[Regression Potential]
* Applications using a non-default libfontconfig could end up not finding the new cache files and regenerating them in ~/.cache/
description: | updated |
tags: |
added: verification-failed verification-failed-bionic removed: verification-needed verification-needed-bionic |
A backport of the UUID cache file directory feature from fontconfig 2.13.