In the meantime while I review this request, did you build the package against the Ubuntu archives somewhere in a PPA for its supported architectures already? I would like to see if it builds correctly + would be nice if someone did some functional/upgrade tests of those Ubuntu-built binaries in bionic.
-- You received this bug notification because you are a member of Desktop Packages, which is subscribed to appstream in Ubuntu. https://bugs.launchpad.net/bugs/1762292 Title: FFE: Sync appstream 0.12.0-3 (main) from Debian unstable (main) Status in appstream package in Ubuntu: New Bug description: Please sync appstream 0.12.0-3 (main) from Debian unstable (main) This introduces a new feature release pretty late in the cycle, so it is something to more carefully consider. Even if it's very late, I do think upgrading this package in Bionic is a good idea though. First of all, it makes upgrading the appstream-generator package to version 0.7.1-3 possible, allowing people to generate much better and smaller metadata for Debian and Ubuntu repositories (and this is what sparked the creation of this sync request). But there are also many other good reasons. This is the NEWS file for the new release, with explanations on why we want the respective changes (I shuffled some entries around to form logical groups) : Version 0.12.0 ~~~~~~~~~~~~~~ Released: 2018-04-04 Features: * Implement release types * qt: Support release types This adds a new feature to the AppStream specification and libappstream that allows release metadata to be tagged as "development" or "stable" releases. Nothing in Ubuntu uses this, so adding will not break anything, but having this in the LTS release means upstream projects can use this feature more easily, and Ubuntu will understand metadata containing it. * Update static data lists * spdx: Add some compatibility workarounds for SPDX 3.0 * validator: Validate SPDX license expressions for metadata_license This updates the SPDX license lists to version 3.0 and adds some compatibility glue to libappstream to parse the new license strings introduced in SPDX 3.0. This is very useful to have, because many projects will start using the new identifier, and it makes sense for AppStream in Ubuntu to be ready for that. Furthermore, it prevents errors from people using the new IDs with older AppStream versions (unfortunately, SPDX 3.0 broke the format, AppStream speaks all flavors of SPDX now, though) : https://spdx.org/licenses/ * apt: Add config snippets to enable icon downloads This results in an easy way for users as well as software centers to enable the download of application icon tarballs via APT just by installing a sepecific package (apt-icons-*). This is quite neat to make icon downloads configurable easily, and also have a central place for the APT configuration. The new packages are used in Debian already by GNOME Software and Plasma Dicover. All existing solutions to enable icons work though, this is an optional change. * Implement support for requires/recommends * Add recommends/requires data to the cache * Add a quick way to check if a version satisfies an AsRelation requirement * yaml: Make Requires/Recommends data more compact and easier to emit * Default to format version 0.12 * validator: Validate requires/recommends tags This adds a new feature to allow AppStream components to require other components or system resources (e.g. minimal memory sizes). Nothing uses this yet, due to that this feature also can't break anything. Having it in the LTS means that upstream projects can already add the metadata easily though and have it validated. * ascli: Properly document the --no-net flag * ascli: Allow to disable network access via an environment variable This is useful in a package build environment where AppStream metadata is validated and the distributor wants to make sure appstreamcli doesn't try to access the network without changing upstream's code and passing the --no-net flag explicitly somewhere. Nice feature to have, no risk potential to break existing code. * Make as_str_replace use as_gstring_replace internally * yaml: Ensure all string values have whitespaces stripped * Make as_component_get_launchables public API * apt: Support 48x48px icons This are miscellaneous improvements which should not cause any issue at all. The 48x48px icons are used in some software centers, having them can be useful (this was a feature requested by Elementary, so chances are they will use these icons at some point). Specification: * spec: Add a "type" property to <release/> tag * spec: Initial draft for requires/recommends * spec: Document the YAML Rquires/Recommends fields * spec: Clarify that the memory requirement uses MiB as unit This improve the AppStream specification or extend it. It's just documentation changes. Bugfixes: * qt: Implement missing constructors This fixes some nasty crashes in Qt applications using AppStream, like Plasma Discover. * apt: escape the icon scale factor as it is using the arobase character This fixes a bug which basically rendered HiDPI icons completely useless in AppStream under Debian/Ubuntu. Having this fix will make the use of HiDPI icons in software centers possible. * Check plain language string in as_component_localized_get as well Apparently, in some circumstances text was not properly localized due to that because the function did not check the language code alone after failing to find a localized string for the locale. Improved localization is a good thing. * qt: Define location and soname for all configurations, not just Debug This patch has been in Ubuntu before. Without it, Qt applications using AppStream wouldn't build at all in release mode. * Never override high-quality data with incomplete .desktop data Fixes an issue that would override more complete metadata with less complete versions and also change the metadata after the user installed an application. * Make data update script work with recent SPDX Just a maintenance improvement on the source code itself with no impact on the installed binaries and data. * Add a timeout to URL validity checks Before, appstreamcli would just hang forever when validating on systems with no network access, causing some annoyances especially on CI systems. The package is not causing issues in Debian and other distributions, so far there have been no new bug reports. In general, I think the risk of new issues is low, especially because the new features don't impact the existing common code paths much and are additions (although obviously there is no such thing as no regressions risk). I think the bugfixes especially on HiDPI icons and metadata replacement, as well as features like the updated SPDX license library and SPDX 3.0 support and that updating this package allows for a more recent appstream-generator package to be included make it reasonable to update the package. Changelog entries since current bionic version 0.11.8-3: appstream (0.12.0-3) unstable; urgency=medium * load-desktop-data.patch: Load desktop file data properly again -- Matthias Klumpp <m...@debian.org> Fri, 06 Apr 2018 21:30:08 +0200 appstream (0.12.0-2) unstable; urgency=medium * Make autopkgtest work again * Update d/copyright (Closes: #894856) * icon config: Pull in non-HiDPI config for large icons if large-icon HiDPI config is installed -- Matthias Klumpp <m...@debian.org> Fri, 06 Apr 2018 14:12:26 +0200 appstream (0.12.0-1) unstable; urgency=medium * New upstream version: 0.12.0 * Drop all patches: Applied upstream * Update .symbols file * d/rules: Drop obsolete --parallel flag * Add APT config snippet packages for an easy way of enabling icon downloads for different sizes and HiDPI. -- Matthias Klumpp <m...@debian.org> Wed, 04 Apr 2018 18:36:26 +0200 Build logs and other QA data can be found at Debian: https://tracker.debian.org/pkg/appstream To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/appstream/+bug/1762292/+subscriptions -- Mailing list: https://launchpad.net/~desktop-packages Post to : firstname.lastname@example.org Unsubscribe : https://launchpad.net/~desktop-packages More help : https://help.launchpad.net/ListHelp