From bf3061a641764d941492814371ebee0342bb768f05e90f0eea475664e7d44546 Mon Sep 17 00:00:00 2001 From: Christophe Marin Date: Fri, 20 Dec 2024 20:10:35 +0000 Subject: [PATCH] 1.0.4 OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/AppStream?expand=0&rev=124 --- .gitattributes | 23 + .gitignore | 1 + AppStream-1.0.3.tar.xz | 3 + AppStream-1.0.3.tar.xz.asc | 16 + AppStream-1.0.4.tar.xz | 3 + AppStream-1.0.4.tar.xz.asc | 16 + AppStream.changes | 1775 ++++++++++++++++++++++++++++++++++++ AppStream.keyring | Bin 0 -> 4731 bytes AppStream.spec | 337 +++++++ _multibuild | 3 + support-meson0.59.patch | 93 ++ 11 files changed, 2270 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 AppStream-1.0.3.tar.xz create mode 100644 AppStream-1.0.3.tar.xz.asc create mode 100644 AppStream-1.0.4.tar.xz create mode 100644 AppStream-1.0.4.tar.xz.asc create mode 100644 AppStream.changes create mode 100644 AppStream.keyring create mode 100644 AppStream.spec create mode 100644 _multibuild create mode 100644 support-meson0.59.patch diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/AppStream-1.0.3.tar.xz b/AppStream-1.0.3.tar.xz new file mode 100644 index 0000000..d8fb527 --- /dev/null +++ b/AppStream-1.0.3.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ab6f6cf644e7875a9508593962e56bb430f4e59ae0bf03be6be7029deb6baa4 +size 2644220 diff --git a/AppStream-1.0.3.tar.xz.asc b/AppStream-1.0.3.tar.xz.asc new file mode 100644 index 0000000..9653a7c --- /dev/null +++ b/AppStream-1.0.3.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCAAdFiEE0zo/DKFrCsxRpgc4SUyKX79N7OsFAmYpSY4ACgkQSUyKX79N +7OtQZxAAkZtNe7ZAimDBtj109lE1Xw2GV5Yl/zEK38AgZer63ogA4dcC3e/EzZkB +ujAE2mxKv1v9Yf2BfL8m3KFZznpZLpN9YyV5KebXQK4fD762GnH7t/U8i9tNzHsB +u9FlKTi2qILXE3/JPYOQmK88rb4t0eKHjFzrtGfCFzJXG/w49Q0GLNoMHRV9c573 +wrFZLB0HMykc1WTa+yZ//tRtLCUbgAk5FPKLCzBTkjgm6ypuVU07tN8FEamLxH9z +dMdheAO5zUBCjtPK0hm5w9z4Hwg22oiw4/U63TO7lzCIDaYpHpD1B/7Wn5gUZMs+ +s+w88uhy7oyVl55kZKZqZxXgu0Q6M0MRyDuvINeFeE/AJNQ8Op0Tzq5YalREvUrS +EnCf31QQ0Q2eXQNeVDg+LGlWjIgy239YsvjJymwCB7nr/Ghh518GvFOuTXiHxglK +YQ8X58dFEHIg/dPqs7v0f+Gs3V80qHQxrLMT9bGiuwd4kTHMq2lTs4yKUzKviB3Z +k8WHr0m+hs7bKcryp6yg9vZ27nWUN/8mFTZOcoWsqQG1p0A2b+9i8okaVGlf64y9 +QXs0l+rOyj0SlsXrLpyinLEbTzUgU1cZvW5lTMW5s2PWkw4IOFiHTMG2VHotYxeB +i8fg3Gdn0YNcGtYMZN20yXRnz5AiDIkfBeO6/+RHsDm9+yOHZoI= +=YPHB +-----END PGP SIGNATURE----- diff --git a/AppStream-1.0.4.tar.xz b/AppStream-1.0.4.tar.xz new file mode 100644 index 0000000..30dd34c --- /dev/null +++ b/AppStream-1.0.4.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d218348067f98c4f34a3ffe2d8219ad9f504b1b2481f1872dec66c77bf37509 +size 2719900 diff --git a/AppStream-1.0.4.tar.xz.asc b/AppStream-1.0.4.tar.xz.asc new file mode 100644 index 0000000..078185d --- /dev/null +++ b/AppStream-1.0.4.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCAAdFiEE0zo/DKFrCsxRpgc4SUyKX79N7OsFAmdWHykACgkQSUyKX79N +7OsXYA/+NB7UtHMYck//r/7r//RmCZ1fN8TTAEjRrf1qnECuvEh0Tpm3J+pytN6C +Caczv36ZM7pdr/W8ivLXmExjiielo38cG5rpiL1qkt2KNMq1Ub2dnDu36KNI5vvb +G1T7YOIpXpgEgi9gChcpksZ8pFN26qEDrogjG2+qck7faOglAUox5lp9muKBoEsM +UkAKT49slQEGeucWffKnIF/wxX902jtbrvcdIyrDuhadiCa4KK7KJ9VcJ0j+mTWH +6erJ3DOhx8+bRaqxeQDCfZKhkxvEQ1Rt2fOk4qg3TGPhwS42mTNg5C8WHXgT44Zg +p2ph998TJsUz5ucLfbir05fnhXOyBbALRndG65JNYCloPctDF0bEC1rK9bJbdHm5 +rJlf9J+cC5rBV936jh5fC0qwz0u8T31V3Dfs8VY0aFidMizl78qflUU0pod/ppNj +9Wrw/7q8HWStMQYflSNJ0niXlzRb//PCodjJ7UbxaLTyBukVOtpHCABklKc9OA4y +me0ks1vvgomy91iybnjA/kk/0UaZOIqkjAfU7vdxGy8vmmigEt0+WvbN7e1xRgpT +bDF0V9POWEE69sVLCw76GamkgIYID9lEa0CRmdxfr+xnrId+pywjfdwINK6W9vsn +3NyVMicP3vKMg1Cztfp2xsJcZnCXTOfpGOVjTuS1MZBSPC+y6Tw= +=I0fK +-----END PGP SIGNATURE----- diff --git a/AppStream.changes b/AppStream.changes new file mode 100644 index 0000000..b6a06cf --- /dev/null +++ b/AppStream.changes @@ -0,0 +1,1775 @@ +------------------------------------------------------------------- +Fri Dec 20 20:08:20 UTC 2024 - Christophe Marin + +- Update to 1.0.4 + Features: + * bundle: Add AS_BUNDLE_KIND_SYSUPDATE + * desktop-style-ids: Add dark support for Plasma + * desktop-style-ids: add pantheon:dark + * qt: Expose branding color + * sysinfo: Add memory size detection support for Illumos and + Solaris + * sysinfo: Add memory size detection support for GNU/Hurd + * validator: Don't fail validation if a snapshot release is + missing a time + Specification: + * docs: Note that support for some legacy path was dropped in 1.0 + * docs: Update fd.o spec URLs + * docs: Better explain desktop applications + * Update ESRA website URL + Bugfixes: + * validator: Make sure we read an initialised variable + * qt: Specify utc as the dates' timezone + * tests: Ignore some tests on Windows + * sysinfo: make uname() usage POSIX compliant + * Only emit legacy compat tag developer_name for catalog data + * compose: Allow file discovery even in symlinked directories + * Avoid a race condition when loading GResource data + * validator: Mention length limit in summary length warning message + * utils: Explicitly set permissions on installed metadata files + * as-vercmp: Fix gtkdoc to not start with '>' + Miscellaneous: + * desktop-style-ids: Remove Endless + * ci: Fix FreeBSD build (update `py-gi-docgen`) + * ci: Update to Ubuntu 24.04 for Debian Testing builds + * utils: Assume 64px as size when installing an icon tarball of + unknown size + +------------------------------------------------------------------- +Mon Aug 19 11:26:49 UTC 2024 - Dominique Leuenberger + +- BuildRequire gettext-devel instead of gettext: allow OBS to + shortcut through gettext-runtime-mini. + +------------------------------------------------------------------- +Tue May 14 13:27:04 UTC 2024 - Dominique Leuenberger + +- Update to version 1.0.3: + + Features: + * validator: Check that description lists don't get translated + * validator: Improve translation checks for descriptions + * cli: compose: Allow to propagate selected custom entries to + catalog output + * validator: Check for common typo of "scheme_preference" + branding property + * xml: Generate a developer_name compat tag for older 3rd-party + parsers + * validator: Flag duplicate branding colors as invalid + * Add Plasma Mobile as recognized desktop-style + + Specification: + * docs: Clarify a developer element is not allowed to exist + multiple times + * docs: Explicitly clarify a developer/name element must not be + repeated + * docs: Clarify metainfo translation rules a bit + + Bugfixes: + * qt: Fix relocation of Config.cmake files + * cli: check-syscompat: Recognize available required controls + as available + * validator: Guard issue emission functions with G_GNUC_PRINTF + * validator: Always use secure string formatting for issue emit + function + * utils: Explicitly set format style when installing catalog + metadata + * Suppress static-analyzer drawing wrong conclusions on GCC 14 + + Miscellaneous: + * docs: List AppStreamCompose as related to AppStream + * docs: Add manpages back + * validator: Mark developer-id-missing as info-priority again + +------------------------------------------------------------------- +Tue Mar 12 16:47:37 UTC 2024 - Antonio Larrosa + +- Add conflict in appstream-qt6-devel with + libAppStreamQt-devel < 1.0. This is required to fix a file + conflict in SLE with the old libAppStreamQt-devel package. + +------------------------------------------------------------------- +Fri Mar 1 09:46:46 UTC 2024 - Christophe Marin + +- Update to 1.0.2 + Features: + * qt: Allow building for multiple Qt major versions at once + * Improve low-quality category check and extend its blacklist + * validator: Add some limited developer-ID validation + * validator: Emit an overridable warning if homepage URL was omitted + * compose: Allow rendering vector graphics to HiDPI bitmaps unconditionally + * compose: Allow setting a custom icon-policy on the command-line + Specification: + * docs: Mention that tag can be translated + * docs: Generate validation issue tag documentation from code + * docs: Add information on how to exclude elements from translation + * spec: Recommend using rDNS strings or Fediverse handles as developer-ID + * spec: Make launchable requirement for desktop-apps more strict + Bugfixes: + * qt: Component::customValue should be const + * validator: Remove mention of shorthands from relation-display-length-value-invalid + * sysinfo: Swap arguments of g_pattern_match_simple + * qt: Add missing screenshot sorting function + * qt: pool: Add missing Q_EMIT keyword + * validator: Improve error message if no valid categories were found + * validator: Make some length limitations more strict + * validator: Only emit developer-name-tag-deprecated once + * validator: Ensure filename is properly included in location info again + * validator: Improve error reporting on images with missing/bad locales + * compose: Don't accidentally set icon scale to 0 in some cases + * compose: Add heuristics to show out-of-scope errors if filters were set + * Don't prematurely abort URL validity check during semi-large redirects + * docs: Update supported hashsums to reflect reality + * docs: Describe version comparison letters special case + * docs: Clarify release descriptions *must not* contain embedded URL + * docs: Explicitly mention /var/cache/swcatalog is a valid + catalog data location + * tests: Fix tests with old & new FontConfig + * its: Allow untranslatable developer/name and agreement sections + Miscellaneous: + * compose: Clarify that "no valid category" can mean bad ones + were ignored + * news-convert: Don't strip out the last text in brackets +- Drop patch, merged upstream: + * # 0001-Don-t-prematurely-abort-URL-validity-check-during-se.patch + +------------------------------------------------------------------- +Sun Feb 18 12:44:31 UTC 2024 - Christophe Marin + +- Add upstream change to fix potential URL validity check errors: + * 0001-Don-t-prematurely-abort-URL-validity-check-during-se.patch + +------------------------------------------------------------------- +Thu Feb 1 09:04:42 UTC 2024 - Christophe Marin + +- Update to 1.0.1 + Bugfixes: + * Fix lib name for Qt5 link target + * meson: Pass -D_DARWIN_C_SOURCE on darwin + * Fix macOS build + * stemmer: Resolve potential issue where stemmer may never be + initialized + * cli: Don't fail what-provides if components were found + * Fix query element order for what-provides queries + * validator: Demote developer-name-tag-deprecated to info + severity for now + * content-rating: Fix missing or wrong value descriptions for + rating IDs + * curl: Add transfer speed timeouts for HTTP downloads + * curl: Retry operations on potentially transient errors + Miscellaneous: + * validator: Improve hint for content-attribute-value-invalid + * Allow building without zstd temporarily +- Drop patches, merged upstream: + * 0001-validator-Demote-developer-name-tag-deprecated-to-in.patch + * 0001-content-rating-Fix-missing-or-wrong-value-descriptio.patch + * 0001-Fix-lib-name-for-Qt5-link-target.patch + +------------------------------------------------------------------- +Wed Jan 31 14:34:55 UTC 2024 - Christophe Marin + +- Switch to the latest GCC version available in Leap for packages + that can't build with the default compiler + +------------------------------------------------------------------- +Fri Dec 15 11:12:14 UTC 2023 - Christophe Marin + +- Use GCC 12 for building on Leap + +------------------------------------------------------------------- +Wed Dec 13 09:30:30 UTC 2023 - Christophe Marin + +- Add upstream change to fix a couple test issues (related to boo#1217047) + * 0001-validator-Demote-developer-name-tag-deprecated-to-in.patch +- Add more changes: + * 0001-content-rating-Fix-missing-or-wrong-value-descriptio.patch + * 0001-Fix-lib-name-for-Qt5-link-target.patch +- Add a Qt6 multibuild flavor + +------------------------------------------------------------------- +Mon Dec 11 09:13:59 UTC 2023 - Frederic Crozat + +- Bump BuildRequires on pkgconfig(xmlb) to 0.3.14. + +------------------------------------------------------------------- +Tue Dec 5 15:53:26 UTC 2023 - Antonio Larrosa + +- Make AppStream-compose-devel require the same version + of libappstream-compose0. + +------------------------------------------------------------------- +Wed Nov 22 09:02:34 UTC 2023 - Christophe Marin + +- Update to 1.0.0. Note that this release has some breaking API + changes. + Features: + * Autoformat C and C++ sources + * Remove all deprecated symbols + * Drop support for many deprecated AppStream XML features + * Use GPtrArray to expose keywords list + * Add length argument to raw metadata parsing functions + * Add component array container class + * Remove named values for display_length relations + * Make AsPool only accept/return component boxes + * Port all API away from per-entity locale overrides + * Reduce appstream.conf to its essentials, make it work on stateless systems + * Hide search engine details from public API + * Wrap release entries in AsReleaseList container class + * Make AsMetadata handle AsReleaseList objects + * Refactor is_satisfied result into new RelationCheckResult class + * Add a method to check all relations of a component and get the result + * Add algorithm to score compatibility with a system, add chassis templates + * ascli: Add new check-syscompat command to check chassis compatibility + * Implement environment property for component screenshots + * Autogenerate translatable DE and gui-environment-style C arrays + * Expose more advanced markup conversion function, update function names + * Allow BLAKE3 and SHA512 checksums for release artifacts + * Stop supporting mailto: URLs in tags + * validator: Improve API and simplify it + * validator: Parse XML in pedantic mode when validating + * validator: Check screenshot environment property + * validator: Only apply summary-has-dot-suffix check to untranslated strings + * compose: Allow creating metadata with complete URLs and no base URL + * spdx: Add API to retrieve a translated license name from an SPDX ID + * qt: Switch to building with Qt6 + * qt: Make it possible to iterate ComponentBox + * qt: Implement AppStream::ComponentBox::erase + * qt: Allow concatenating two ComponentBoxes + * qt: Allow loading Pool asynchronously + * qt: Use ComponentBox/Releases in Qt bindings as well + * qt: Add support for the new API to check relation satisfaction + * qt: Maintenance and namespace fixes, use cPtr() to get C pointers everywhere + * bundle: Add linglong as a new type of bundle + * Add GUI environment IDs for macOS and Microsoft Windows + * validator: Check if Release Description is inside description tag + * validator: Add validation for content_rating + * Add support for building on Win32 + * win32: change some file/path-related code for portability + * Implement the developer element for unique developer IDs + * Implement scaling factor for screenshots + * component-box: Allow removal of components by-index + * Implement support for external references and citations + * Implement usertags for release data as well + * Move ValueFlags to the context, instead of tieing them to components + * pool: search: Add additional weight for exact substring matches on names + * sysinfo: Add memory size detection support for macOS + * Add support for Zstd for on-disk data compression + * utils: Make tar unpacker independent of zstd binary presence + * Drop Python2 provided tag support + * data: Add ‘Endless’ to the list of desktops + * Add NetBSD support + + Specification: + * Drop (most) deprecated information + * docs: Clarify environment-based screenshot ordering + * Add new 'snapshot' release kind + * docs: Build all API documentation with gi-docgen + * spec: Document the new "developer" element + * spec: Document the "reference" tag for registry references + * docs: Add example of YAML for references elements + * Allow hyphens in the last segment of a component-ID + * docs: Drop outdated information from l10n quickstart guide + + Bugfixes: + * meson: check for docbook xsl stylesheets + * Fix tweaking of appstream.pc when building as subproject + * Fix crash in asc_l10n_search_translations_qt() + * qt: Make Qt6 dependency a system dependency. + * meson: do not rely on an exe wrapper + * meson: do not -I/usr/include when !stemmer + * meson: Prevent building attempts with MSVC + * meson: Use an SPDX license indentifier in project(license:) + * Add meson overrides + * compose: Set lower-cased CID for synthesized components again + * compose: Set lower-cased CID in desktop-entry parse function + * compose: Honor prefix in font search + * compose: Select the correct default icon glyphs for fonts + * Don't crash when non-YAML documents are read as YAML + * Do not override default-priority when parsing multiple metadata files + * Ensure stemmer always has the right locale and token-search works + * Require a more recent libxmlb to avoid crashes + * Rename component get_releases to indicate that releases may not be loaded from the web + * Prevent string-id validation functions from matching source comments + * Don't define _POSIX_C_SOURCE when building for NetBSD + + Miscellaneous: + * Explain metainfo-ancient error in more detail + * Make sed invocation more portable + * Add FreeBSD CI + * Allow variable shadowing in C++ code + * Drop the catchall as-enums unit + * vapi: Drop unneeded metadata + * Make AsMetadata return a component box for multiple components + * apt: Make item descriptions more human-friendly + * Streamline README + +------------------------------------------------------------------- +Wed Nov 15 12:08:06 UTC 2023 - Bjørn Lie + +- Update to version 0.16.4: + * Features: + - Allow hyphens in the last segment of a component-ID + - Implement the developer element for unique developer IDs + - Add meson overrides + * Bugfixes: + - meson: Prevent building attempts with MSVC + - meson: Avoid potentially bad sed backup filename when fixing + .pc file + * Miscellaneous: Make sed invocation more portable +- Rebase patch with quilt. + +------------------------------------------------------------------- +Mon Oct 16 15:08:27 UTC 2023 - Antonio Larrosa + +- Fix the documentation being put in the devel subpackage while + the doc subpackage was empty. I think the doc %files section was + probably removed inadvertently since it wasn't mentioned in the + changelog and the doc subpackage declaration was left around. +- Moved the appstreamcli-compose man page to the same package + as the binary. +- Make AppStream-compose-devel explicitly require + libappstream-compose0 to stop rpmlint from reporting an error. + +------------------------------------------------------------------- +Tue Oct 3 05:30:07 UTC 2023 - Antonio Larrosa + +- Enable vala support when building in SLE-15 SP6 +- Fix condition in files section for the case where vala support + is disabled, where some files are being generated but were not + included + +------------------------------------------------------------------- +Sat Aug 26 13:12:31 UTC 2023 - Christophe Marin + +- Update to 0.16.3: + Features: + * compose: Allow creating metadata with complete URLs and no base URL + Bugfixes: + * Fix tweaking of appstream.pc when building as subproject + * Do not override default-priority when parsing multiple metadata files + * Ensure stemmer always has the right locale and token-search works + * Require a more recent libxmlb to avoid crashes + Miscellaneous: + * Work around invalid null-dereference warning in GCC 13 +- Drop patch, merged upstream: + * 0001-Do-not-override-default-priority-when-parsing-multip.patch + +------------------------------------------------------------------- +Fri Jun 2 06:19:52 UTC 2023 - Christophe Marin + +- Update to 0.16.2: + Features: + * Add API for asking whether the pool is empty + * Add DDE to known desktop-environment list + * validator: Check if Release Description is inside description tag + * Make AppStream use BCP47 for locale in XML data + Bugfixes: + * Add missing standard::is-hidden attribute to file search enumerator + * spdx: Accept brackets in spdx license expression check + * introspection: Bring back AS_FORMAT_STYLE_COLLECTION into its enum + * compose: Fix crash in asc_l10n_search_translations_qt() + * compose: Set lower-cased CID for synthesized components again + * Don't crash when non-YAML documents are read as YAML + Miscellaneous: + * sanitizers: Allow null-dereference check again +- Drop patch, merged upstream: + * bfa8fa6ac4ef645368a93384a6c16ac551a40922.patch +- Add upstream change: + * 0001-Do-not-override-default-priority-when-parsing-multip.patch + +------------------------------------------------------------------- +Mon May 22 06:35:40 UTC 2023 - Jiri Srain + +- refresh patch for new glib-2.76 from upstream + +------------------------------------------------------------------- +Mon Mar 13 10:23:15 UTC 2023 - Bjørn Lie + +- Add upstream fix for new glib-2.76: + * bfa8fa6ac4ef645368a93384a6c16ac551a40922.patch + +------------------------------------------------------------------- +Tue Feb 28 14:57:58 UTC 2023 - Fabian Vogt + +- Update to version 0.16.1: + Specification: + * docs: Clarify the locations where catalog icons should be placed + * spec: Expand documentation for elements + * spec: Mention that is not part of the description + * spec: Give some guidance about tone in release descriptions + Bugfixes: + * Fix binding helper macro to behave correctly if a function is passed directly + * Override-merge icons and provided items correctly + * tests: Ensure locale is C.UTF-8 in pool tests + Miscellaneous: + * release: Add sanity checks at beginning of each function +- Add ldconfig_scriptlets for libappstream-compose + +------------------------------------------------------------------- +Sat Feb 4 03:14:38 UTC 2023 - Luna D Dragon + +- Update to version 0.16.0: + * Features: + + pool: Offer API to look up components by bundles + + Bump format version to 0.16 + + Add new AsSystemInfo to read information about the current OS and device + + Add helper to get device names from a modalias + + Implement support for external release metadata + + Add validation support for external release metadata + + compose: Validate external release metadata used for the catalog as well + + its: Add rule for standalone release metadata + + Add function to test if an AsRelation is satisfied on the current system + + cli: Add command to list category contents + + cli: Display colored checkmarks if possible + + cli: Add new is-satisfied check to test relations from the command-line + + cli: Add Markdown export support for metainfo-to-news + + qt: Add support for SystemInfo & relation satisfication checks + * Specification: + + spec: Specify a metadata format for external release descriptions + * Bugfixes: + + Fix build with Clang 15 + + Give a better error message if trying to list too many categories + + Adjust documentation of AsPool.get_components_by_categories to reflect reality + + validator: Validate merge component catalog data properly again + * Miscellaneous: + + Consistently name catalog metadata as such everywhere +- Update support-meson0.59.patch for latest version of AppStream +- Build AppStream with compose support as a separate package. + +------------------------------------------------------------------- +Fri Jan 13 22:51:34 UTC 2023 - Bjørn Lie + +- Use %ldconfig_scriptlets. Leap 15.3 is out of maintenance. + +------------------------------------------------------------------- +Thu Jan 12 07:53:52 UTC 2023 - Antonio Larrosa + +- Update to version 0.15.6: + * Features: + + qt: Add API for ContentRating descriptions and ratingIds + + Add some coccinelle semantic patches for common style issues + + compose: Allow building without SVG support (for bootstrap only) + + validator: + - Check for nodes that are text nodes even though they shouldn't be + - Extend validation for custom tag + - Improve Screenshot validation + * Specification: + + docs: Fix typos in documentation + * Bugfixes: + + validator: + - internat: Don't allow bandwidth_mbitps when value is offline-only + - Fix timestamp validation + - Allow release descriptions to start with punctuation + + compose: + - Only add no-metainfo tag if component isn't already ignored + - Show better error in AscImage if compose was build without rsvg + + Add a hack to clarify proper PtrArray element ownership for language bindings + + qt: + - Port away from deprecated QDateTime API + - Deprecate Component::requires + - Fix warning + - Fix stringListToCharArray and Pool::componentsByCategories + - Port away from deprecated foreach + + as-review: + - Add a typedef for property enums + - Install properties at once rather than individually + - Specify G_PARAM_STATIC_STRINGS for properties + - Emit GObject::notify on property value changes + - Add missing property for as_review_{get,set}_priority() + + ascli: fix NULL pointer dereference + * Miscellaneous: + + docs: Split releases specification into its own section + + style: Make code easier to read by using helper macros in all places + + Make some compiler warnings fatal unconditionally +- Add patch to support meson 0.59 which is the only version available + in SLE 15 SP5: + * support-meson0.59.patch + +------------------------------------------------------------------- +Wed Sep 14 13:25:20 UTC 2022 - Christophe Giboudeaux + +- Don't use %ldconfig_scriptlets. Leap 15.3 doesn't understand it. + +------------------------------------------------------------------- +Fri Sep 2 18:07:51 UTC 2022 - Bjørn Lie + +- Update to version 0.15.5: + * Features: + + validator: + - Allow severity downgrade of releases-not-in-order for GNOME + - Perform stricter integer validation + - Check for url redefinitions + - Validate the "internet" relation item + - Add validation for memory relation + + Implement the "replaces" tag + + Add convenience function that check if component is free by + license and origin + + qt: Add wrappers for AsComponent isFree/supports/replaces + + Always add untranslated component names to the search index + + Implement internet relation item + * Specification: + + spec: + - Specify a proper "replaces" tag + - Add an kind to requires/recommends/supports + * Bugfixes: + + validator: + - Don't permit overriding the unknown root tag issue + - Distinguish translatable from not-translatable tags in + duplicate checks + + compose: + - Don't crash if metainfo file contains an invalid stock icon + - Don't synthesize components for desktop files of settings + apps + + spdx: Fix possible crash when NULL is passed to + is_free_license + + Return the correct values in as_display_length_kind_from_px() + * Miscellaneous: + + Silence static analyzer false-positives based on GCC version + + data: use lxml to get the XDG categories +- Package doc sub-package as noarch. +- Use ldconfig_scriptlets macro for post(un) handling. + +------------------------------------------------------------------- +Wed Jul 6 17:54:45 UTC 2022 - Andreas Stieger + +- AppStream 0.15.4: + * validator: Check timestamp validity + * validator: Allow (limited) overriding of issue tag severities + * validator: Add strict mode + * ascli: validate: Allow simple overriding of issue tags + * validator: Check for exact relation item redefinitions + * Add vcs-browser URL to metainfo.xml + * compose: Improve media-baseurl sanity checks for icon/screenshot policies + * compose: Don't create bad data when localized screenshots exist + * compose: Sanitize prefix value and verify all units for results + * compose: Fail and not just warn if we couldn't open a unit + * compose: Make no-result detection a bit more robust + * compose: Properly handle localized screenshots + * compose: Ignore current locale when analyzing screencasts + +------------------------------------------------------------------- +Mon Apr 25 17:47:50 UTC 2022 - Ferdinand Thiessen + +- Update to version 0.15.3 + * qt: Include enums for VcsBrowser and Contribute + * Add vcs-browser and contribute URL type + * validate: Improve validation of desktop files alongside metainfo data + * its: Mark deprecated rules as deprecated + * Implement l10n support for metainfo keyword tags + * validator: Perform basic validation of keywords in metainfo data + * compose: Prefer metainfo keywords over desktop-entry keywords + * Specification: + * docs: Document keywords for metainfo files as well + * docs: Spell it metainfo, not meta-info if referencing metainfo.xml files + * spec: Document how keywords in metainfo files should be translated + * Multiple Bugfixes +- Update to version 0.15.2 + * Relicense remaining GPL-2.0 code to LGPL-2.1+ + * compose: Allow setting a custom CAInfo file + * qt: Always use C library for enum-to-string conversions + * compose: Allow any amount of release entries for OS components + * compose: Implement more flexible icon policy + * validator: Ensure component-ID has no punctuation prefix + * validator: Check existence of version and date release properties + * Implement component-wide end-of-life date attribute + * compose: Build API documentation + * Support the new swcatalog catalog metadata location and add app-info fallback + * When finding components by ID, use provided IDs if no exact matches were found + * ascli: Fix install/remove commands, add Flatpak support + * Implement XML & YAML read/write of the "branding" tag group + * Handle embedded lists in YAML release info paragraphs + * Specification: + * spec: Specify a "date_eol" property for the component itself + * spec: Specify the new "branding" tag + * docs: Update links to API reference pages + * spec: Require that branding colours start with a hash symbol + * docs: Clarify license and ship license copies + * docs: Document media_baseurl property of components + * Multiple bugfixes + +------------------------------------------------------------------- +Tue Mar 22 20:25:15 UTC 2022 - Bjørn Lie + +- Add Appstream Requires to Appstream-devel package, a devel + package should require it's own binary and config. + +------------------------------------------------------------------- +Fri Mar 4 09:38:33 UTC 2022 - Fabian Vogt + +- Don't refresh the system cache in %post. The user metadata cache + works much better, rely on that instead. + +------------------------------------------------------------------- +Wed Dec 22 11:58:16 UTC 2021 - Callum Farmer + +- Update to version 0.15.1 + * compose: Port over font support from appstream-generator + * compose: Allow overriding unit used for locale processing + * compose: Refine legacy support for desktop-id launchables + * compose: Allow setting the custom desktop-entry translation function + * compose: Allow to run with threading (mostly) disabled + * compose: Reorganize feature flags, allow to disable l10n + * compose: Allow setting a screenshot file size limit + * compose: Allow to disable screencast processing explicitly + * compose: Allow to test whether result has a specific hint tag + * news-convert: Support a "Translators" section + * validator: Check that first rDNS component-ID parts are always lowercased + * validator: Validate capitalization for some selected text blocks + * vapi: Rename PoolFlag to PoolFlags to add the missing deprecated flags + * Fix cache always getting updated even if unnacessary on Debian systems + * Still verify download return codes if download was aborted intentionally + * compose: Warn if metainfo files are missing and data was processed anyway +- Update to version 0.15.0 + * This release contains a complete rewrite of AppStream's + caching code, making use of libxmlb instead of LMDB now. + This will allow for more complex queries and simplifies the + caching code a bit. + * Allow clients to configure the addon autoresolve magic + * Allow clients to control the local metainfo preference + * qt: Add wrappers for new AsPool API + * qt: Wrap the AsPool ::changed signal + * Implement the new "Tags" tag + * Make component-ID search case-insensitive + * compose: Adjust to rsvg API changes + * qt: Align API deprecations with C library API + * Cache Flatpak data properly, and add some quirk fixes for it +- Add BuildRequires itstool +- Add BuildRequires xmlb >= 0.3.6 +- Update BuildRequires glib-2.0 to >= 2.62 +- Remove BuildRequires lmdb-devel + +------------------------------------------------------------------- +Thu Oct 21 13:13:04 UTC 2021 - Christophe Giboudeaux + +- Update to 0.14.6. Check the NEWS file for the list of changes. +- Only install the license files once. + +------------------------------------------------------------------- +Fri Aug 27 05:36:31 UTC 2021 - Alexei Podvalsky + +- Create and install a Vala API file + +------------------------------------------------------------------- +Sun Aug 8 20:07:55 UTC 2021 - Luca Beltrame + +- Update to version 0.14.4 + * qt: Expose setter and getter for pool cache location + * utils: Use GLib's gstring_replace if available + * its: Allow to mark release descriptions as non-translatable + * compose: Point people at the specification if metadata license is invalid + * docs: Clarify which metadata licenses are permitted + * docs: Fix a typo on the icon cache page + * spec: Add a paragraph about which license to put in + * Add documentation for YAML release type and urgency + * Add documentation for YAML provides + * component: Don't strip ";" from keywords before translating them + * utils: Don't strip modifiers when stripping encoding + * compose: Check optipng is there before we use it + * Improve text line wrapping, especially if many newlines are present + * Make word-wrap function unicode-aware + * Make license_is_metadata_license parse more complex expressions + * Improve cache refresh code, don't flag cache as updated if update failed + * Use system cache even if we had to drop some invalid metadata + * Assign more string class members safely + * Fix flashed firmware generating incorrect XML + * Fix YAML having wrong names for the firmware data + +------------------------------------------------------------------- +Tue Apr 13 22:35:29 UTC 2021 - Ferdinand Thiessen + +- Update to version 0.14.3 + * spec: Mention that license-IDs are case-sensitive + * compose: Don't loop endlessly if external desktop l10n function + is set + * Never create a predictable dir in /tmp for caching + * qt: Implement missing Pool::componentsByCategories + * Share one user-owned read-only system metadata cache between all + applications + * pool: Clean up user sysdata caches if we start to use the system + cache + * Port over some parsing improvements for desktop-files from asgen + * compose: Add helper for reading desktop-entry files + * compose: Handle bad UTF-8 in desktop-entry files even better + * search: Perform partial token matches instead of prefix matches + * search: Unconditionally perform partial term matching after + exact matching + * news-to-metainfo: Recognize the "Contributors" section + * Update our own metainfo file for appstreamcli + * Read descriptions from collection XML correctly again + * search: Make whole-search string matching a lot more strict + * validator: Resolve false-positive when testing remote icon + URL validity + * utils: Improve textwrap if text is just one excessively + long word + * compose: Permit U+00AD SOFT HYPHEN in string values + * Validate our own metainfo file + * compose: Don't assume lowest priority for desktop-entry-only + components + * search: Only replace full words with greylist terms, + not partial ones + * ascli: Take all positional parameters as search terms when + searching + +------------------------------------------------------------------- +Wed Feb 17 10:03:36 UTC 2021 - Dominique Leuenberger + +- Update to version 0.14.1: + + Features: + - Switch back from Soup to cURL for HTTP(S). + - validator: Check a few more things on requires/recommends + items. + - Only download the first bytes of a file when checking URLs + for validity. + + Specification: spec: Officially mark tag as + deprecated. + + Bugfixes: + - qt: Return better errors in AppStream::Metadata. + - Do not automatically clean up errors that will be propagated. + - Remove overall extern "C" to make very new (2.67+) GLib + versions happy. + - ascli: Don’t use GNU C extension type names. + - build: Use c11 rather than gnu11 and define vendor extensions + separately. +- Changes from version 0.14.0: + + Features: + - news-to-metainfo: Interpret placeholder release dates as + denoting a dev version. + - Make as_utils_build_data_id public API. + - Add AsReview for attaching user reviews to software + components. + - Add a branch element to component data-IDs. + - utils: Add data-ID hashing and matching functions. + - utils: Make as_gstring_replace public API. + - Add branch info to on-disk cached components. + - content-rating: Add as_content_rating_add_attribute API. + - Rename INPUTMETHOD component kind enum to INPUT_METHOD. + - Add "cabinet" bundle type for firmware deployments. + - Make AsTokenMatch public API. + - Add function to AsScreenshot to get image closest to + preferred size. + - Allow AsComponent to directly ingest desktop-entry data. + - Make as_pool_build_search_tokens API public. + - Add "origin" token match. + - Make as_component_add_provided_item API public. + - Add some useful image dimension constants. + - compose: Add blur function from asglib. + - Add more efficient load_from_bytes method to AsComponent. + + Updated translations. +- Drop fix-build-gcc7.patch: no longer applicable. +- Replace pkgconfig(libsoup-2.4) with pkgconfig(libcurl) + BuildRequires: follow upstreams switch back to cURL. + +------------------------------------------------------------------- +Mon Jan 11 07:58:05 UTC 2021 - Fabian Vogt + +- Disable vala bindings, fails to build on Leap 15.2 because + g-ir-scanner emits the return type before parameters, which vapigen does not like +- Update to 0.13.1: + Bugfixes: + * Install enum types headers to the right location + * qt: Construct library using libappstream dependency object + * validator: Improve check for invalid hyperlinks to reduce false-positives +- Update to 0.13.0: + Notes: + * This release introduces a new library, libappstream-compose, designed to + provide building blocks for composing AppStream metadata. This includes GUI + stuff like font and SVG rendering, which libappstream deliberately does not + provide. The new compose library is not API/ABI stable and should - for now - + only be used by appstream-generator. + Features: + * qt: add missing Provided::KindId enum (Aleix Pol) + * Add experimental libappstream-compose (Matthias Klumpp) + * Implement support for display_length relation kind (Matthias Klumpp) + * Implement "tv-remote" input control kind (Matthias Klumpp) + * Refactor AsRelation to use GVariant internally (Matthias Klumpp) + * content-rating: Align the OARS/CSM mappings of sex-* (Philip Withnall) + * content-rating: Add content rating system APIs from gnome-software (Philip Withnall) + * content-rating: Expand translator comments to link to OARS website (Philip Withnall) + Specification: + * spec: Specify display_length requires/recommends item (Matthias Klumpp) + * spec: Add tv-remote user input control type (Matthias Klumpp) + Bugfixes: + * Use glib-mkenums to create the GType of all the available enums (Corentin Noël) + * Set FD_CLOEXEC on the LMDB FD manually (Fabian Vogt) + * Never ship with an embedded convenience copy of Highlight.js (Matthias Klumpp) + * Don't fail doc install if global highlight.js wasn't found (Matthias Klumpp) + * Properly escape markup when fixing invalid description data (Matthias Klumpp) + * validator: Don't pass NULL to vprintf, it's not an allowed value (Matthias Klumpp) + * meson: Kill deprecation warning for pkgconfig.generate (Matthias Klumpp) + * validator: Demote cid-contains-uppercase-letter from INFO to PEDANTIC (Matthias Klumpp) + * Change some AsPool GIR annotations to only transfer container, + as workaround for issue in GIR (Matthias Klumpp) + * Properly parse YAML font provides entry (Matthias Klumpp) + * content-rating: Lower the OARS/CSM mapping of sex-homosexuality/intense (Philip Withnall) + * Change return annotation of as_agreement_get_sections to "transfer none" (Rico Tzschichholz) + * contrib: Vala expects element-type of PtrArray to reflect their ownership (Rico Tzschichholz) +- Drop patches, now upstream: + * 0001-Set-FD_CLOEXEC-on-the-LMDB-FD-manually.patch + * properly-escape-markup.patch +- Refresh fix-build-gcc7.patch + +------------------------------------------------------------------- +Thu Nov 12 08:39:54 UTC 2020 - Fabian Vogt + +- Add patch to avoid FD leak: + * 0001-Set-FD_CLOEXEC-on-the-LMDB-FD-manually.patch + +------------------------------------------------------------------- +Thu Jul 2 16:50:16 UTC 2020 - Fabian Vogt + +- Update to 0.12.11: + Features: + * Auto-update static category data from fd.o + * Implement support for input control relations + * validator: Validate input control relations + * validator: Put AppStream technical terms and tag names in backticks in + explanation texts + * Modernize the README + * validator: Check for uppercase letters in cids + * Strip beginning/trailing newlines in a number of places + * Make AsContext getter for AsComponent public API + * qt: Add support for name_variant_suffix + * Make component sort-score API public API + * Implement a YAML representation of release artifact information + Specification: + * Build specification and docs with DAPS + * docs: Add (HTML) anchors for requires/recommends items + * spec: Specify user input control recommendations + * docs: Don't show reference to nonexistent provides->service tag for services + * spec: Encourage the use of only lowercase letters for component-IDs + * docs: Document --explain flag in ascli manual page as well + * docs: Add permalink anchors to some list entries + * Formally support BLAKE2b/s as hash functions for release artifacts + * docs: Link to the MetaInfo Creator webapp in a few places + Bugfixes: + * Be less noisy about ignoring excessively long search tokens + * Tighten the "free license" check and prevent false positives + * cache: Use correct fts value per result (David Hewitt) + * validator: Control items can't have a version + * validator: Reduce download timeout + * yaml: Strip encoding when serializing keyword lists + * Allows arbitrary indentation when converting NEWS files + * Ignore NULL values silently in our stringstrip function + * Only dump valid metainfo description markup, sanitize it otherwise +- Add patch to avoid parser errors for invalid descriptions: + * properly-escape-markup.patch +- Add patch to fix build on Leap 15.2: + * fix-build-gcc7.patch + +------------------------------------------------------------------- +Wed Feb 26 13:27:44 UTC 2020 - Christophe Giboudeaux + +- Update to 0.12.10. Check the NEWS file for the complete changelog. +- Drop patches. Issues fixed upstream: + * 0001-Restore-compatibility-with-GLib-2.58.patch + * 0001-Fix-possible-NULL-dereference.patch + * 0002-Don-t-ignore-xmlNodeDump-return-code.patch + * 0003-Fix-infinite-recursion-if-component-has-itself-liste.patch + * find-lmdb.patch + +------------------------------------------------------------------- +Thu Dec 19 00:58:58 UTC 2019 - Stefan Brüns + +- Drop itstools BuildRequires, not required for either building or testing. +- xsltproc is no longer invoked via xmlto, drop xmlto, explicitly + add required xsltproc and docbook-xsl-stylesheets. + +------------------------------------------------------------------- +Tue Jul 30 07:56:11 UTC 2019 - Fabian Vogt + +- Add patches to fix crash with some invalid metainfo (boo#1139463): + * 0001-Fix-possible-NULL-dereference.patch + * 0002-Don-t-ignore-xmlNodeDump-return-code.patch + * 0003-Fix-infinite-recursion-if-component-has-itself-liste.patch +- Update build requirements +- Add %check section + +------------------------------------------------------------------- +Mon Jul 29 18:52:40 UTC 2019 - Fabian Vogt + +- Update summary and description + +------------------------------------------------------------------- +Wed Jun 19 09:26:25 UTC 2019 - Fabian Vogt + +- Update to 0.12.7: + Notes: + * This release changes the way AsPool caches components and will also + permanently keep components in an LMDB-based cache. + Additionally, the GVariant AsComponent serialization was removed. + Features: + * Depend on LMDB (Matthias Klumpp) + * tests: Test pool cache and XML read performance separately (Matthias Klumpp) + * Improvements to data caching and fulltext search (Matthias Klumpp) + * Add new LMDB based component cache (Matthias Klumpp) + * cache: Implicitly hash keys if they are too long for the database (Matthias Klumpp) + * cache: Implement all supported search modes (Matthias Klumpp) + * cache: Implement various performance optimizations and helpers (Matthias Klumpp) + * cache: Allow switch to nosync mode, make insertions threadsafe (Matthias Klumpp) + * Refactor component pool to make use of the mmap'ed caches by default (Matthias Klumpp) + * Don't limit term length in user search queries (Matthias Klumpp) + * Ignore one-letter search terms (Matthias Klumpp) + * pool: Mask removed components in readonly caches so they can not be queried (Matthias Klumpp) + * Remove component GVariant serialization (Matthias Klumpp) + * cache: Use binary representations for cache values (Matthias Klumpp) + * cache: Always refine launchable entries, to make them searchable (Matthias Klumpp) + * Make component scope API public (Matthias Klumpp) + * Handle LicenseRef URLs explicitly when extracing a license URL (Matthias Klumpp) + * Update static data (Matthias Klumpp) + * tests: Update perf test with test for the new cache implementation (Matthias Klumpp) + * its: Add "translatable" option in metainfo.its (fujiwarat) + Specification: + * Add a note about not dropping .desktop suffix from existing IDs (Kalev Lember) + * spec: clarify purpose (Kamil Páral) + * docs: Explicitly rule out nested lists (Marius Vollmer) + * docs: Add link to project page to specification abstract (Matthias Klumpp) + * spec: Clarify format of the appstream: URI (Matthias Klumpp) + * spec: Clarify how to denote proprietary licenses (Matthias Klumpp) + Bugfixes: + * tests: Fix potential wrong output when two tests fail in parallel (Matthias Klumpp) + * validator: Allow some top-level tags to be empty (Matthias Klumpp) + * Only match all things for broad queries, for invalid ones return nothing (Matthias Klumpp) + * Determine system cache age correctly and don't needlessly refresh it (Matthias Klumpp) + * Never attempt to load the system cache when it is not needed (Matthias Klumpp) + * Assume "unknown" distribution ID by default (if /etc/os-release is missing) (Matthias Klumpp) + * cache: Ensure previous cache is closed before opening a new one (Matthias Klumpp) + * Put test data in alphabetical order (Robert Ancell) + * Generate XML and YAML in alphabetical order (Robert Ancell) +- Add patch to work with vanilla lmdb: + * find-lmdb.patch +- Add patch to fix build on Leap: + * 0001-Restore-compatibility-with-GLib-2.58.patch + +------------------------------------------------------------------- +Sun Mar 17 10:01:27 UTC 2019 - Jan Engelhardt + +- Replace boilerplate and em-dash summaries. + +------------------------------------------------------------------- +Mon Mar 4 21:07:15 UTC 2019 - Matthias Eliasson + +- Update to 0.12.6: + Features: + * Implement artifacts (Matthias Klumpp) + * Search improvements (Matthias Klumpp) + Specification: + * doc: help distinguish the 2 'languages' tags (Beuc) + * spec: Document the new artifacts tag (Matthias Klumpp) +- Update to 0.12.5: + Features: + * qt: expose the spdx parser to Qt users (Aleix Pol) + * Implement operating-system component and add convenience functions (Matthias Klumpp) + * qt: Add operating-system component type and a few utility functions (Matthias Klumpp) + * Allow fetching the ISO8601 date directly alongside the timestamp in AsRelease (Matthias Klumpp) + * Implement date_eol for AsRelease (Matthias Klumpp) + * Add convenience methods for retrieving date_eol as UNIX timestamp (Matthias Klumpp) + * qt: Allow retrieving the EOL timestamp for releases (Matthias Klumpp) + * Implement new release details URL (Matthias Klumpp) + * Make rDNS conversion function more generic and add more extensive tests (Matthias Klumpp) + Specification: + * docs: tag can have details url (Jehan) + * spec: Specify the operating-system component (Matthias Klumpp) + * spec: Specify date_eol for releases (Matthias Klumpp) + * docs: Explicitly state list items are allowed in ol/ul lists (Matthias Klumpp) + Bugfixes: + * Don't warn about issues in a cache refresh if there weren't any (Matthias Klumpp) + * Ensure releases are always sorted in descending order (Matthias Klumpp) + * pool: Fix g-i for get_components_*() while GPtrArray owns its elements (Rico Tzschichholz) +- Update to 0.12.4: + Features: + * pool: Be a lot more forgiving when encountering invalid components (Matthias Klumpp) + * Implement component removal via remove-component merges (Matthias Klumpp) + * validator: Warn about insecure URLs, handle mailto: URLs (Matthias Klumpp) + * Add a contact URL type (Robert Ancell) + Specification: + * Document new remove-component merge type (Matthias Klumpp) + Bugfixes: + * as-pool: fix GObject annotation for GPtrArray owning the elements (Corentin Noël) + * Make invalid components ratio check more accurate (Matthias Klumpp) + * Ensure description paragraphs contain no invalid XML tags (Matthias Klumpp) +- Update to 0.12.3: + Notes: + * Beginning with this release, data from local .desktop files will not be loaded into + the pool automatically, unless a metainfo file also exists. + This should ensure less duplicated components in general higher-quality data to be + displayed. It also provides another incentive to add/fix metainfo files. + If you prefer the previous behavior, set the AS_POOL_FLAG_READ_DESKTOP_FILES flag + on your AsPool instance. + Features: + * apt: Ignore errors post-update (Matthias Klumpp) + * validator: Allow content_rating to be empty (Matthias Klumpp) + * ascli: Display stock icon name if no suitable icon was found for details view (Matthias Klumpp) + * Refactor loading of local metainfo files (Matthias Klumpp) + Specification: + * spec: Clarify the requirement for content_attribute tags in content_rating (Matthias Klumpp) + * docs: Write intro for addon quickstart (Matthias Klumpp) + * docs: Replace hyphens in component-IDs of XML examples (Matthias Klumpp) + Bugfixes: + * Ensure all addons are linked to a component (David Hewitt) + * Annotate nullable return types (David Hewitt) + * cache: Set explicit variant types for cases where they can not be inferred (Matthias Klumpp) + * utils: Handle NULL strings when comparing versions (Matthias Klumpp) + * Explicitly include string.h in as-tag.c (Matthias Klumpp) + * Properly ignore desktop-entry components if we have better data (Matthias Klumpp) + * Remove AppStream XSD schema (Matthias Klumpp) + * Update static data (Matthias Klumpp) + * Set error variable if there were some errors during refinement (Stefan Bruens) +- Remove patches, now upstream: + * explicit-variant-types.patch + * workaround-hidden-symbols.patch + +------------------------------------------------------------------- +Tue Oct 16 07:50:17 UTC 2018 - Fabian Vogt + +- Update to 0.12.2: + * Fix a couple of incorrect g_ptr_array_unrefs (Iain Lane) + * Use autofree functions instead of freeing resources + explicitly (Matthias Klumpp) + * Add missing const (Matthias Klumpp) + * Ensure we don't produce a .pc file with unnecessary + Requires.private lines (Matthias Klumpp) + * Stop leaking local GVariantDict instance contents (Phil Miller) + * Drop leaked references to container items (Phil Miller) +- Update to 0.12.1: + Features: + * ascli: Add command to compare version numbers (Matthias Klumpp) + * yaml: Allow reading multiple localized strings from YAML data + (Matthias Klumpp) + * yaml: Always include the untranslated strings (Matthias Klumpp) + * Allow to ignore media_baseurl when parsing metadata (Matthias Klumpp) + * xml: Add implementation of the agreement tag (Matthias Klumpp) + * Add new "repository" component type (Matthias Klumpp) + * yaml: Implement Agreements field (Matthias Klumpp) + * cache: Implement support for agreements (Matthias Klumpp) + * tests: Improve cache data tests, add agreement tag test (Matthias Klumpp) + * Use gperf for perfect hash generation for some tags (Matthias Klumpp) + * tests: Add rundimentary performance test (Matthias Klumpp) + * its: Mark agreement sections as translatable (Matthias Klumpp) + * qt: Add support for service/repository component types (Matthias Klumpp) + Specification: + * docs: Describe the custom tag (Matthias Klumpp) + * spec: Describe the new agreement tag (Matthias Klumpp) + * docs: Clarify that the /usr/share/appdata/ path is legacy and should + not be used (Matthias Klumpp) + Bugfixes: + * its: Allow translation of release descriptions (Marc J) + * Load data from desktop files properly again (Matthias Klumpp) + * Update desktop-environment list (Matthias Klumpp) + * qt: Don't warn about inlining in maintainer mode (Matthias Klumpp) +- Update to 0.12.0: + Features: + * Implement release types (Matthias Klumpp) + * qt: Support release types (Matthias Klumpp) + * Update static data lists (Matthias Klumpp) + * Make as_str_replace use as_gstring_replace internally (Matthias Klumpp) + * spdx: Add some compatibility workarounds for SPDX 3.0 (Matthias Klumpp) + * validator: Validate SPDX license expressions for metadata_license (Matthias Klumpp) + * apt: Add config snippets to enable icon downloads (Matthias Klumpp) + * yaml: Ensure all string values have whitespaces stripped (Matthias Klumpp) + * Make as_component_get_launchables public API (Matthias Klumpp) + * Implement support for requires/recommends (Matthias Klumpp) + * Add recommends/requires data to the cache (Matthias Klumpp) + * Add a quick way to check if a version satisfies an AsRelation requirement (Matthias Klumpp) + * ascli: Properly document the --no-net flag (Matthias Klumpp) + * ascli: Allow to disable network acces via an environment variable (Matthias Klumpp) + * apt: Support 48x48px icons (Matthias Klumpp) + * yaml: Make Requires/Recommends data more compact and easier to emit (Matthias Klumpp) + * validator: Validate requires/recommends tags (Matthias Klumpp) + * Default to format version 0.12 (Matthias Klumpp) + Specification: + * spec: Add a "type" property to tag. (Jehan) + * spec: Initial draft for requires/recommends (Matthias Klumpp) + * spec: Document the YAML Rquires/Recommends fields (Matthias Klumpp) + * spec: Clarify that the memory requirement uses MiB as unit (Matthias Klumpp) + Bugfixes: + * qt: Implement missing constructors (Aleix Pol) + * apt: escape the icon scale factor as it is using the arobase character (Corentin Noël) + * Check plain language string in as_component_localized_get as well (Antonio Rojas) + * qt: Define location and soname for all configurations, not just Debug (Gabriel Souza Franco) + * Never override high-quality data with incomplete .desktop data (Matthias Klumpp) + * Make data update script work with recent SPDX (Matthias Klumpp) + * Add a timeout to URL validity checks (Matthias Klumpp) +- Remove patches, now upstream: + * 0001-Fix-regression-from-153.patch +- Add patch to fix assertion failure on cache refresh (boo#1105691): + * explicit-variant-types.patch +- Add patch to fix build on Leap: + * workaround-hidden-symbols.patch +- Run spec-cleaner + +------------------------------------------------------------------- +Wed May 23 15:25:48 UTC 2018 - kbabioch@suse.com + +- Use OpenPGP signature provided upstream +- Added AppStream.keyring, which contains the key from the author +- Use %license macro for license files + +------------------------------------------------------------------- +Sun Feb 11 12:01:59 UTC 2018 - fabian@ritter-vogt.de + +- appstreamcli can use curl for some checks, so recommend it (boo#1080446) + +------------------------------------------------------------------- +Mon Jan 29 15:38:08 UTC 2018 - alarrosa@suse.com + +- Now the appstream cache is refreshed in %post. The update to 0.11.8 + plus the refresh fixes kde#389531. + +- Headers are now installed to /usr/include/appstream instead of + /usr/inlude/AppStream + +- New package AppStream-doc with the html documentation for AppStream + +- Use meson to build instead of cmake + +- Update to version 0.11.8: + + Features: + * validator: Emit a hint in case a discouraged AppStream ID style is used (Matthias Klumpp) + * l10n: Renamed Norwegian Bokmål language file (Matthias Klumpp) + + Specification: + * docs: Add quickstart instructions for intltool (David Steele) + * spec: Discourage use of hyphens and digit-started segments for IDs (Matthias Klumpp) + + Bugfixes: + * qt: Export the AppStreamQt target (Aleix Pol) + * Various string improvements (Allan Nordhøy) + * validator: Don't make HEAD requests for URL checks, fetch first byte instead (Matthias Klumpp) + * Enforce a non-broken version of gobject-introspection (Matthias Klumpp) + * Ensure LINGUAS update is only run explicitly (Matthias Klumpp) + * Fix a minor memory and fd leak (Matthias Klumpp) + +- Update to version 0.11.7: + + Notes: + * The appstreamcli validation commands now use curl if it is available to check all + URLs in the metadata for existence. + If you don't want this behavior, pass "--nonet" to appstreamcli. There might also + be false positives (one is known with the KDE bugtracker) that need to be investigated, + so feedback on this new feature is welcome. + + Features: + * validator: Check all urls for validity (Matthias Klumpp) + * validator: Check web-application components for missing tags (Matthias Klumpp) + * Add API to retrieve the AppStream library version (Matthias Klumpp) + * apt: Allow fetching 128x128@2 HiDPI icons (Rico Tzschichholz) + + Specification: + * Add the "url" launchable type (Dimitrios Christidis) + * spec: Clarify some icon details in the collection data (Marius Vollmer) + * spec: Allow tags in generic components (Marius Vollmer) + * spec: Specify the web-application component type (Matthias Klumpp) + + Bugfixes: + * Fix endless loop when validating screenshots (Matthias Klumpp) + * ascli: Show a list of component-types when --help is passed to new-template (Matthias Klumpp) + * validator: Drop the wget fallback, making missing curl only an info (Matthias Klumpp) + * meson: Properly define header-file in gir (Rico Tzschichholz) + +- Update to version 0.11.6: + + Features: + * Improve screenshot validation (Matthias Klumpp) + * Allow to disable introspection (Matthias Klumpp) + + Bugfixes: + * Revert back to the old build option names (Matthias Klumpp) + * Apply maintainer flags equally to C++ and C (Matthias Klumpp) + * Explicitly set C/C++ standard versions (Matthias Klumpp) + * vapi: Include the right header (Matthias Klumpp) + * xml: Correctly write screenshots tag again (Matthias Klumpp) + * Do not cache a screenshot that doesn't have images (Matthias Klumpp) + * xml: Support legacy screenshot tags again (Matthias Klumpp) + +- Update to version 0.11.5: + + Features: + * Restructure build feature flags (Matthias Klumpp) + * Allow disabling API documentation build (Matthias Klumpp) + + Bugfixes: + * qt: Don't check bitness when finding AppStreamQt (Matthias Klumpp) + +- Update to version 0.11.4: + + Notes: + * This release switches the build system from CMake to Meson. You will need + Meson (>= 0.42) in order to build AppStream. Please test for any regressions. + + Features: + * Implement Meson support (Matthias Klumpp) + * meson: Make build with sanitizers (partially) work again (Matthias Klumpp) + * meson: Add helper script for building documentation (Matthias Klumpp) + * docs: Always rebuild documentation on-demand (Matthias Klumpp) + * Update README for Meson (Matthias Klumpp) + * Implement cockpit-manifest launchable type (Matthias Klumpp) + * validator: Actually validate the type property of "launchable" tags (Matthias Klumpp) + * Allow to search the pool for components that provide a launchable (Matthias Klumpp) + * qt: Add new function to search components by launchable (Matthias Klumpp) + + Specification: + * spec: New "cockpit-manifest" launchable type (Marius Vollmer) + + Bugfixes: + * validator: Complain if a component has no ID (Matthias Klumpp) + +- Update to version 0.11.3: + + Bugfixes: + * qt: Don't crash when an error is found and no error string is passed (Aleix Pol) + * Propagate document context to the context object for XML files (Matthias Klumpp) + * validator: Correctly recognize "launchable" as valid tag (Matthias Klumpp) + +- Update to version 0.11.2: + + Features: + * cache: Refactor cache functions (Matthias Klumpp) + * Deduplicate origin/locale/arch with AsContext (Matthias Klumpp) + * Get rid of a couple of internal helper methods (Matthias Klumpp) + * cli: When using convert, always assume collection style for YAML (Matthias Klumpp) + + Specification: + * Adjust docs to clearly state that licenses are SPDX expressions (Harald Sitter) + + Bugfixes: + * qt: Improve Icon QDebug information (Aleix Pol) + * Resolve crash when serializing lots of XML documents (Matthias Klumpp) + * xml: Don't truncate translated entries after encounting a wrong locale (Matthias Klumpp) + * Set a real locale if locale is set to "ALL" (Matthias Klumpp) + * validator: Make ending dot in component name only a pedantic issue (Matthias Klumpp) + +- Add patch to export the AppStreamQt target correctly: + * 0001-Fix-regression-from-153.patch + +------------------------------------------------------------------- +Wed Jul 5 09:09:42 UTC 2017 - fabian@ritter-vogt.de + +- Update to version 0.11.1: + + Notes: + * This release contains refactoring of the XML/YAML parsers and some other changes that are more invasive + than usual. + + Features: + * qt: Add new getters/setters and classes to be on par with the GObject library (Jan Grulich) + * qt: Add AS::Metadata class used for parsing desktop and appstream metadata files (Jan Grulich) + * Refactor the XML parser and serialization code (Matthias Klumpp) + * Refactor the YAML parser and emitter code (Matthias Klumpp) + * Implement 'service' component type (Matthias Klumpp) + * Improve speed of metainfo description parsing slightly (Matthias Klumpp) + * test: Add additional testcase for reading metainfo description tags (Matthias Klumpp) + * test: Test metainfo descriptions starting with enumerations (Matthias Klumpp) + + Specification: + * doc: Add Distro Packaging page (Jeremy Bicha) + * doc: Add "service" components and their launchables (Marius Vollmer) + * Allow components to provide other components (provides -> id) (Matthias Klumpp) + + Bugfixes: + * doc: Uncomment line in middle of paragraph (Jeremy Bicha) + * doc: A releases tag is not essential for components, but summary is (Matthias Klumpp) + * Allow descriptions to start with an enumeration (Matthias Klumpp) + * Ensure we always update with fresh data when refreshing the cache (Matthias Klumpp) + * Replace invalid components in the pool with new ones of the same name (Matthias Klumpp) + * Resolve a few potential bugs (found by static checks) (Matthias Klumpp) + * xml: Check if we are trying to parse a real component (Matthias Klumpp) + +- Update to version 0.11.0: + + Features: + * Implement read/write support for content ratings (Matthias Klumpp) + * tests: Test the content_rating tag XML read/write (Matthias Klumpp) + * yaml: Read/write ContentRating (Matthias Klumpp) + * cache: Handle the content-rating property (Matthias Klumpp) + * Add new AsLaunch type (Matthias Klumpp) + * Fully implement the launchable tag (Matthias Klumpp) + * Recognize scaling factor for HiDPI icons (Matthias Klumpp) + * apt: Allow fetching HiDPI icons (Matthias Klumpp) + + Specification: + * spec: Don't give wrong information about the tag (Matthias Klumpp) + * spec: Specify content_rating tag for content age ratings (Matthias Klumpp) + * spec: Specify the new launchable tag and apply its effects (Matthias Klumpp) + * spec: Add note on where to place icons with a scaling factor (Matthias Klumpp) + + Bugfixes: + * Add missing word in string (Anders Jonsson) + * yaml: Fix crash when serializing component with a dbus:user provided item (Matthias Klumpp) + * cache: Don't write cache if there are no valid components (Matthias Klumpp) + * docs: Clarify "permissive" for metadata_license and make the paragraph more explicit (Matthias Klumpp) + * Ensure GVFS never starts in root user slice (Matthias Klumpp) + * Correctly tokenize values with dash or plus (Matthias Klumpp) + * vapi: Add appstream.deps file (Rico Tzschichholz) + +- Update to version 0.10.6: + + Features: + * validator: Be more strict about the tag types in metainfo files (Matthias Klumpp) + * validator: Unconditionally check for name and summary (Matthias Klumpp) + * Move all merge logic to AsComponent (Matthias Klumpp) + * Allow making AppStream consume data from metainfo instead of collection files (Matthias Klumpp) + * apt: Do not enable any icon downloads by default (Matthias Klumpp) + * validator: Check categories in XML as well (Matthias Klumpp) + * cli: Make templates for different component-types a bit more useful (Matthias Klumpp) + * Allow a few more permissive licenses for metadata_license (Matthias Klumpp) + * Add support for "+" operator at the end of SPDX license identifiers (Kalev Lember, Matthias Klumpp) + * cli: Print tiny summary after validation (very useful for validate-tree) (Matthias Klumpp) + * validator: Validate for hyperlinks in description / summary / developer-name (Matthias Klumpp) + * validator: Make missing long description a pedantic issue in more cases (Matthias Klumpp) + * Also recognize "FSFUL" license as pemissive (Matthias Klumpp) + * validator: Adjust priorities of missing modalias/font tags in driver/font components (Matthias Klumpp) + * Skip loading desktop-entries if we know their component already (Matthias Klumpp) + * Be lazier, only parse what is necessary in the data pool (Matthias Klumpp) + + Specification: + * spec: Clarify that name/summary are now always required for metainfo files (Matthias Klumpp) + * spec: Clarify desktop vs. desktop-application (Matthias Klumpp) + * spec: Add a small paragraph about whether and what xmlns to use (Matthias Klumpp) + * spec: Make it clear can be used in metainfo files too (Matthias Klumpp) + * spec: Make clear that update_contact's value is case-insensitive (Matthias Klumpp) + * docs: Make sure all examples follow the reverse-DNS scheme (Matthias Klumpp) + + Bugfixes: + * Don't hardcode share dir but use CMAKE_INSTALL.. (Heiko Becker) + * validator: Don't enforce .desktop suffix on desktop-app component IDs (Matthias Klumpp) + * qt: Allow catching error strings returned by Pool::load (Aleix Pol) + * Always drop data from desktop-entry files if we have better metadata (Matthias Klumpp) + * apt: Install icons back if they went completely missing (Matthias Klumpp) + * Update SPDX and TLD data (Matthias Klumpp) + * yaml: Read release/urgency key (Matthias Klumpp) + +------------------------------------------------------------------- +Thu Jan 12 21:35:52 UTC 2017 - fabian@ritter-vogt.de + +- Update to version 0.10.5: + + Features: + * Match modalias wildcards on regular searches (Matthias Klumpp) + * xml: Add methods to get/set custom data in metainfo/collection files (Matthias Klumpp) + * Make cache update issue messages slightly more verbose (Matthias Klumpp) + * Add preliminary code for reading metainfo files in addition to .desktop files (Matthias Klumpp) + * cache: Cache custom fields as well (Matthias Klumpp) + + Bugfixes: + * qt: Make sure dependencies are fetched when looking for the package (Aleix Pol) + * yaml: Consistently read/write the Suggests field (Matthias Klumpp) + * Correctly read bundle kind from XML data (Matthias Klumpp) + +- Update to version 0.10.4: + + Features: + * qt: Introduce AppStream::Suggested in the Qt frontend (Aleix Pol) + + Bugfixes: + * Properly validate suggests tag (Matthias Klumpp) + * qt: Add an empty check to Provided and return it if necessary (Matthias Klumpp) + * Add path search to find libstemmer headers (#91) (Neal Gompa) + +- Update to version 0.10.3: + + Notes: + * The release breaks the Qt library API. Patches to make KDE Discover use the new API exist + in its Git master branch, and will be available with Plasma 5.9. + The patches will likely not enter the stable branch, so if you want to upgrade AppStream, + you might need to ship patches for Discover downstream to use the new API. + + Features: + * qt: Update API to reflect more recent AppStream features, be easier to + extend and also a bit faster due to removing needless data conversions. + (Matthias Klumpp, Aleix Pol) + * Make components record their origin kind internally (Matthias Klumpp) + * Provide a file:/ URL for icons when we know a file name (Matthias Klumpp) + * Add support for Snappy/Snap bundles (Matthias Klumpp) + + Specification: + * Add new AppStream logo and button (Ken Vermette) + * Add new AppStream logo and buttons to the docs (Matthias Klumpp) + + Bugfixes: + * ascli: When converting, always include all translations (Matthias Klumpp) + * Match .desktop files and metainfo data properly if ID is lacking .desktop suffix (Matthias Klumpp) + +- Update to version 0.10.2: + + Features: + * test: Add unittests for reading urls (Matthias Klumpp) + * qt: Add AppStream::Category class (Matthias Klumpp) + * qt: Add missing URL type (Matthias Klumpp) + * Handle "font" provided type in XML and YAML (Matthias Klumpp) + * Replace Intltool with modern Gettext/Itstool (Matthias Klumpp) + * Add logic to parse desktop entries (Matthias Klumpp) + * Don't add ignored components to the pool (Matthias Klumpp) + * validator: Validate fd.o domain name, make GNOME warning only pedantic (Matthias Klumpp) + * validator: Allow languages tag in metainfo files (Matthias Klumpp) + * Read information from .desktop files and add it to the pool (Matthias Klumpp) + * Give the client app full control on what data sources we load (Matthias Klumpp) + * Add private API for component scoping (Matthias Klumpp) + + Specification: + * docs: Clarify name/summary essentialness for desktop-apps (Matthias Klumpp) + * spec: Clarify how fonts provides should be handled (Matthias Klumpp) + * spec: Simplify font metainfo, add more examples and clarify requirements (Matthias Klumpp) + + Bugfixes: + * ascli: Replace refresh-index with refresh-cache in help text (#81) (Larry Price) + * qt: nullptr access on unopened databases resulting in a crash (Harald Sitter) + * qt: The data pool must always be valid during the Database lifetime (Matthias Klumpp) + * If search results are going to be sorted, it makes sense for higher scores to be at the top of the list. Fixes #77. (Larry Price) + * validator: Don't enforce long descriptions on fonts (Matthias Klumpp) + * Hardcode metainfo directory (Matthias Klumpp) + * ascli: Make every module use the global no-color flag properly (Matthias Klumpp) + * validator: Don't emit excess warnings on missing type properties (Matthias Klumpp) + +- Update to version 0.10.1: + + Features: + * Add AppStream button image (Ken Vermette) + * Ship a metainfo file (Matthias Klumpp) + * Don't use an extra hash table for AsProvided (Matthias Klumpp) + * Register bundle type for AppImageKit (Matthias Klumpp) + * Implement localization component type (Matthias Klumpp) + * validator: Complain less-loudly when encontering GNOME-specific tags (Matthias Klumpp) + * validator: Check for superfluous dots (Matthias Klumpp) + * validator: Strictly validate ID for KDE and GNOME (Matthias Klumpp) + * ascli: Modernize the way we handle subcommands (Matthias Klumpp) + * qt: Allow retrieving the desktop-id of a component (Matthias Klumpp) + + Specification: + * Add new driver component type (Matthias Klumpp) + * spec: Describe localization component type (Matthias Klumpp) + + Bugfixes: + * docs: Add a few missing classes to the API docs (Matthias Klumpp) + * Fix cache (de)serialization for screenshots and suggestions (Matthias Klumpp) + * yaml: Set screenshot image type correctly (Matthias Klumpp) + * cache: Iterate the right dictionary when looking at checksums (#71) (Iain Lane) + * apt: Ignore broken symlinks in /var/lib/apt/lists (Iain Lane) + * as_get_yml_data_origin: Error out if opening the file fails for any reason (Iain Lane) + * Make addons find their target component again (Matthias Klumpp) + * yaml: Don't fail if we encounter a translated node without template (Matthias Klumpp) + * Don't use GObject ref on GPtrArray (Matthias Klumpp) + * ascli: Read metainfo files correctly when converting files (Matthias Klumpp) + * xml: Properly serialize provides tag (Matthias Klumpp) + * pool: Correctly update addon info when loading data from a cache object (Matthias Klumpp) + * ascli: Auto-disable colors if we are not on a tty (Matthias Klumpp) + * yaml: Enforce string/int type on YAML scalars (Matthias Klumpp) + * yaml: Fix loading of cached icons in all formats (Matthias Klumpp) + * qt: Never lie about a component kind (Matthias Klumpp) + +------------------------------------------------------------------- +Wed Sep 21 19:17:57 UTC 2016 - fabian@ritter-vogt.de + +- Use a define for the so version and fix -devel requiring the old libappstream3 + +------------------------------------------------------------------- +Fri Sep 16 07:45:43 UTC 2016 - alarrosa@suse.com + +- Update to version 0.10.0 +- Disable stemming support until we have libstemmer packaged. +- Generate libappstream4 packages since AppStream changes the ABI in 0.10.0 + +Notes: + * This release breaks API/ABI in order to support multiple metadata sets describing the same + component (needed for bundling support), moving away from the database as central data store + and general cleanup. + * Porting is relatively straightforward, if you were using AsDatabase, you should switch to AsPool + now (AsDatabase has been a wrapper around AsPool for a while anyway). + * Many methods became private API with this release, file a bug if you miss anything. + * The 'categories.xml' file is gone - please account for that if you were reading it directly, + and consider using AsCategory instead, which offers the same functionality. + +Features: + * Remove the AsDatabase class (Matthias Klumpp) + * Use cmakedefine for compile-time features (Matthias Klumpp) + * Rename AsDataPool -> AsPool (Matthias Klumpp) + * Add placeholder enum for web applications (Matthias Klumpp) + * qt: Implement Appstream::Release for the Qt interface (Aleix Pol) + * Recognize the "Pantheon" desktop for Elementary (Matthias Klumpp) + * Get rid of the menu parser and make AsCategory more useful instead (Matthias Klumpp) + * Allow AsComponent to automatically check for list-value duplicates (Matthias Klumpp) + * Give bundles their own class (Matthias Klumpp) + * Stop shipping the categories.xml file (Matthias Klumpp) + * Allow multiple metadata sets in the pool to describe a component (Matthias Klumpp) + * Name AppStream metadata styles consistently (Matthias Klumpp) + * Allow the 'C' description fallback to be turned off (Iain Lane) + * Make AsScreenshot return localized images by default (Matthias Klumpp) + * Allow to compare AsRelease versions easily (Matthias Klumpp) + * Make get_icon_repository_paths private API (Matthias Klumpp) + * ascli: Allow dumping metadata as YAML (Matthias Klumpp) + * Use GVariant instead of ProtoBuf based cache (Matthias Klumpp) + * Enable stemming by default (Matthias Klumpp) + * Make components directly reference their addons, avoiding to query twice (Matthias Klumpp) + * Refactor data pool metadata loading (Matthias Klumpp) + * Allow setting the AppStream format version when (de)serializing data (Matthias Klumpp) + * Always write modern metadata, unless a lower format version is requested explicitly (Matthias Klumpp) + * Also find components in searches which have the search keyword in an addon (Matthias Klumpp) + * ascli: Add function to convert XML to YAML and vice versa (Matthias Klumpp) + * Consistent naming for metadata format and style (Matthias Klumpp) + +Specification: + * spec: Add hint on how the keywords tag should be localized (Matthias Klumpp) + +Bugfixes: + * Resolve unit test failures on arm and mips (Matthias Klumpp) + * gir: Correctly annotate ownership transference of GPtrArrays (Matthias Klumpp) + * l10n: Drop languages without translations (Matthias Klumpp) + * Don't hide symbols in public headers (Matthias Klumpp) + * Properly validate desktop-environment strings (Matthias Klumpp) + * validator: Fix name/summary check in validate-tree (Matthias Klumpp) + * xml: Properly write localized keywords (Matthias Klumpp) + * Avoid watching superfluous directories for metadata (Matthias Klumpp) + * Update architecture diagrams and optimize PNGs (Matthias Klumpp) + * Get rid of Xapian-isms (Matthias Klumpp) + +------------------------------------------------------------------- +Fri Sep 16 07:35:01 UTC 2016 - alarrosa@suse.com + +- Update to version 0.9.8 + +Features: + * qt: Different approach for storing the icon size and url relation (Aleix Pol) + * Strictly validate AppStream IDs (Matthias Klumpp) + * Add AsSuggested class (Lucas Moura) + * tests: Test merges for suggestions (Lucas Moura) + * Add functions handling SPDX license ids and expressions (Matthias Klumpp) + * validator: Include a line-hint in the issue report (Matthias Klumpp) + * Implement console-application component type (Matthias Klumpp) + * validator: Validate files following the new cid scheme properly (Matthias Klumpp) + * validator: Validate metadata_license for permissiveness (Matthias Klumpp) + * Compress cache data (Matthias Klumpp) + * Implement "translate" URL type (Matthias Klumpp) + * xml: Implement the suggests tag (Matthias Klumpp) + * yaml: Implement reading and writing of Suggests field (Matthias Klumpp) + * Consider merge components valid if they have at least an ID (Matthias Klumpp) + * yaml: Read/write merge components (Matthias Klumpp) + +Specification: + * spec: Add console-application component type (Matthias Klumpp) + * spec: Streamline the requirements for component-ids (Matthias Klumpp) + * spec: Define a "translate" URL type (Matthias Klumpp) + * spec: Specify the suggests tag (Matthias Klumpp) + * spec: Describe the merge property (Matthias Klumpp) + * spec: Proofreading fixes (Philip Withnall) + +Bugfixes: + * Make searching for multiple terms work properly again (Matthias Klumpp) + * Don't fail on invalid search terms (Matthias Klumpp) + * Don't re-instantiate stemmer on each use (Matthias Klumpp) + * ascli: Line-wrap unicode texts properly on the console (Matthias Klumpp) + * Add missing docs to the API reference (Matthias Klumpp) + * tests: Add test description to each test (Matthias Klumpp) + * Sort search results by default (Matthias Klumpp) + * Fix a few issues with merging (Matthias Klumpp) + +- From version 0.9.7 + +Features: + * Don't fall back to Debian screenshots server if none is specified for the distro (Matthias Klumpp) + * Split out distro-specific helpers (Matthias Klumpp) + * Implement Xapian-less search (Matthias Klumpp) + * Use a pure PB cache instead of Xapian (Matthias Klumpp) + * qt: Don't rely on Xapian for searches (Matthias Klumpp) + * Deprecate AsDatabase (Matthias Klumpp) + * Hide internal symbols from the symbols table (Matthias Klumpp) + * Allow injecting components into the pool and unittest the cache (Matthias Klumpp) + * Add by-category filter to AsDataPool (Matthias Klumpp) + * Validate Freedesktop category names (Matthias Klumpp) + * Allow building AppStream with stemming support (Matthias Klumpp) + * Cache search tokens (Matthias Klumpp) + +Specification: + * docs/quickstart: Clarify the role of releases/provides (Matthias Klumpp) + * docs/quickstart: Screenshot images don't need to define width/height (Matthias Klumpp) + +Bugfixes: + * qt: Properly expose enums for introspection (Aleix Pol) + * qt: Make it possible to easily output data types using QDebug (Aleix Pol) + * xml: Fix formatting of tag (Matthias Klumpp) + * xml: Work around non-threadsafe behavior of libxml2 (Matthias Klumpp) + * xml: Properly write provides tag (Matthias Klumpp) + * Fix code documentation for as_component_get_id (Lucas Moura) + * Fix some xmldata methods documentation (Lucas Moura) + * cli: Create metainfo directory if it is missing and respect DESTDIR (Matthias Klumpp) + +------------------------------------------------------------------- +Thu Jun 9 21:38:35 UTC 2016 - mailaender@opensuse.org + +- Update to version 0.9.6 + +Features: + * Improve metadata file decompression code (Matthias Klumpp) + * validator: Simplify loading of data too (Matthias Klumpp) + * Make it easy to compile with Address Sanitizer enabled (Matthias Klumpp) + * Allow compiling with UBSan as well (Matthias Klumpp) + * Add back support for Travis CI (Matthias Klumpp) + * yaml: Write Releases field (Matthias Klumpp) + +Bugfixes: + * qt: Properly check for component validity (Matthias Klumpp) + * Ensure decompressed metadata is null-terminated (Neil Mayhew) + * validator: Long descriptions are not needed for generic components +(Matthias Klumpp) + * Make VAPI generation depend on GIR typelibs explicitly (Matthias Klumpp) + * Be more verbose when failing to move the cache directory (Matthias Klumpp) + * Handle format errors when parsing YAML metadata (Neil Mayhew) + +------------------------------------------------------------------- +Wed May 18 08:34:41 UTC 2016 - tittiatcoke@gmail.com + +- Drop the separate Vala package and include the files into the + devel package + +------------------------------------------------------------------- +Sun May 8 19:25:29 UTC 2016 - jengelh@inai.de + +- Drop unnecessary manual library require +- Avoid /bin/sh invocation for simple ldconfig calls + +------------------------------------------------------------------- +Fri May 6 17:25:56 UTC 2016 - mailaender@opensuse.org + +- Generate the Vala API + +- Update to version 0.9.5 + +Features: + * Update README (Matthias Klumpp) + * Provide a bit more hints for translators (Matthias Klumpp) + * Improve error messages when reading broken XML (Matthias Klumpp) + * Load all XML in AsXMLData (Matthias Klumpp) + * Implement reading localized images from metadata (Matthias Klumpp) + * Write localized images in XML/YAML serialize routines (Matthias Klumpp) + * Unify codepaths for checking compatible locales (Matthias Klumpp) + * yaml: Implement read/write support for the Languages field (Matthias Klumpp) + * xml: Serialize and read languages tag properly (Matthias Klumpp) + * validator: Validate files in legacy paths too (Matthias Klumpp) + +Specification: + * spec: Allow localized screenshot images (Matthias Klumpp) + +Bugfixes: + * Refactor icon-finding code and fix rare double-free corruption +(Matthias Klumpp) + * Properly validate randomly ordered XML tags for duplicates (Matthias Klumpp) + * validator: The translation tag is only valid in metainfo files +(Matthias Klumpp) + * Be slightly less pedantic about size info when reading screenshot +images (Matthias Klumpp) + * xml: Properly write description tag (Matthias Klumpp) + +- From version 0.9.4 + +Features: + * Handle legacy screenshot tags (Matthias Klumpp) + * Print prettier YAML documents (Matthias Klumpp) + * yaml: Allow loading of distro metadata slices without header +(Matthias Klumpp) + * Do not check for installation candidate on minimal validation +(Matthias Klumpp) + * Don't check if component has an installation candidate before +including it (Matthias Klumpp) + * Quick-check components only when the pool is fully loaded (Matthias Klumpp) + * Support the stub data of GNOME Software (Matthias Klumpp) + * Support reading per-component priorities (Matthias Klumpp) + * Implement the architecture property (Matthias Klumpp) + * Use architecture data to resolve conflicting IDs (Matthias Klumpp) + * Add icon size information to generated XML (Matthias Klumpp) + * xml: Load size hints for icons (Matthias Klumpp) + * l10n: Update + +Specification: + * docs: Explicitly define more minimally required tags per component +type (Matthias Klumpp) + * Make /usr/share/metainfo the canonical path for upstream metadata +(Matthias Klumpp) + * spec: Make architecture a property of , and no tag +(Matthias Klumpp) + * spec: Update the cached icon DEP-11 specification to allow size +information (Matthias Klumpp) + +Bugfixes: + * Fix a few minor issues spotted by the YAML validator (Matthias Klumpp) + * Correctly build distro XML descriptions from upstream XML (Matthias Klumpp) + * Be very strict about which elements are allowed in a description +tag (Matthias Klumpp) + * yaml: Prevent bool keys (Matthias Klumpp) + * ascli: Properly print long descriptions and wrap lines (Matthias Klumpp) + * Export less C++ symbols (Matthias Klumpp) + * Show a better error message when failing to parse XML (Matthias Klumpp) + * Allow adding 0x0 icons (Matthias Klumpp) + * yaml: Implement the updated "cached" icon format in a +backwards-compatible way (Matthias Klumpp) + * apt: Drop flat repository entries (Matthias Klumpp) + * Probe less sizes if we already have size information (Matthias Klumpp) + * Don't make stubs delete package information from valid components +(Matthias Klumpp) + * apt: Handle quoted origin entries properly (Matthias Klumpp) + +- From version 0.9.3 + +Features: + * Allow to update an existing component with fresh metadata + * Implement YAML serialization + * writer: Allow to omit writing a header/root node + * cli: Add convenience method to install metainfo files + * cli: Add a new "status" command for various diagnostic information + * yaml: Allow unicode + * Print prettier XML by default + * l10n: Update + +Bugfixes: + * Reset umask before building the data cache + * apt: Work around APT using server mtime for its downloaded files + +------------------------------------------------------------------- +Mon Feb 29 14:05:16 UTC 2016 - tittiatcoke@gmail.com + +- Update to version 0.9.2 +Features: + * qt: Improve usage of Qt containers (Aleix Pol) + * qt: Implement Component::extends on the Qt front-end (Aleix Pol) + * qt: Also call reserve for bundles on the Qt frontend (Aleix Pol) + * validator: strstrip values when reading XML/YAML and validate + linebreaks in summaries (Matthias Klumpp) + * validator: Check if a description is present (Matthias Klumpp) + * Always build with YAML support (Matthias Klumpp) + * Move XML parser into its own class (Matthias Klumpp) + * Make data-pool use the new YAML-aware metadata parser (Matthias Klumpp) + * Simplify data-pool building routine (Matthias Klumpp) + * Preprocess extension information for frontends (Matthias Klumpp) + * qt: Use the new extensions property (Matthias Klumpp) + * Implement translations tag (Matthias Klumpp) + * cli: Document the "install" command (Matthias Klumpp) + * l10n: Update + +Specification: + * spec: Document the translation tag (Matthias Klumpp) + * doc: Don't use tags in documentation (Matthias Klumpp) + * spec: Mention the essential tags for a type:desktop component (Matthias Klumpp) + +Bugfixes: + * as-cache-builder: Cope with no YAML documents (Iain Lane) + * 50appstream: Don't run if we can't write to the system paths (Iain Lane) + * Check for writability instead of root permissions when updating the cache (Matthias Klumpp) + * qt: Don't compute screenshot images and then forget about them (Aleix Pol) + * Add the missing extends property to the Xapian cache (Matthias Klumpp) + * validator: Don't fail validation for description-less addons. (Matthias Klumpp) + * Make reading empty cache values more robust (Matthias Klumpp) + * Check if GIR scanner & compiler are really installed (Matthias Klumpp) + +------------------------------------------------------------------- +Fri Feb 5 11:53:13 UTC 2016 - tittiatcoke@gmail.com + +- Update to version 0.9.1 + * Improved Qt5 usage + * Implement date property on release tags + * Ship ITS files from KDE upstream +- From version 0.9.0 + * Refactor icon handling + * Modernize AppStream classes + * Update translations + * Drop AsSearchQuery + * Improve error handling for database queries + +------------------------------------------------------------------- +Tue Mar 31 19:30:03 UTC 2015 - hrvoje.senjan@gmail.com + +- Activate appstream-qt5 package + diff --git a/AppStream.keyring b/AppStream.keyring new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..2ca1dc3a0d782173463acc3667c93dfe93a41335e5139f595e396c47ee811714 GIT binary patch literal 4731 zcmcK7RZtuVx&>fpq;Yp`+}$BSli=>|?u5`-a0u=$9YT}ACAd4mB@o<#1$RyGzFSkf zwNrcd&f9(cpT9ci{J8*ZWVQ9KL_|D<^2<>L*&+XO?9Xr7q{I+T*H20NIv-vU`L0@3 zB%rUb85wPTl2T!(J{X$I;n-aHlo760q0U!w7Rf#|0&O{aR;GuGW~08p9ERuWudIaT z&x8x&K$}RN2KIgjg7CPD225?n;yz+6AH=-fG1)2=YnJ@|rv6J!uA+Hc)G*a(oM7Wk zx~Aw0kM%q%?bi>bh7dSsknN(y?qOM<@V157-Hw{1$k%X z%I$6kk%|QvA`>E_A-o1qBB5fUqXCfssKjUhbPP;n5&#k+fCdpj8VVpsB%wo|6_>^; zbitU=DglZrsm59KsGS_60L%mk|3EX}E;vQew@UgZ#Jst^$^M$$?mN0ph7OVFMM zFq?~8I7tOlK0eaVa!wmn@q%SP%I0n^fbzcj$+Q6vM?Jk#SO{N8=`>z%yt?=(vb9Tq zkPylV6SxWtU=v&21}Yid;*;}g$T(|9FZ%0Z023<2aXk5J_PVUVZV|@o)ie$~kEbdN z1ex@iL(B;dT0g%96f~Vp&olk}d}oS~;?u~qhYcA}2;z$b1LIERfp58Z6MM8|(EwGe zqrXd6sjxpOpsY>g%x<8E$JTB!q!ygbRG1^)#R4cuHVKB9?r~raXi1*hSdrvgeXE2V zd^)Ki0{Jc!0X*IULC=gem4Fy|2KNB1ZfmIR(1PnLh{#9<=G|DPV-oDMmG+W7*mn6F zQI3=dE^E@)r0fWMbLf}KnqL{>Redk+ZR>;fVR^E^+CGmfX~)aL!-;Y;qK7o1ichF8 z$*PQixR&=G{p&BFF;t=8QI`;rp|t8ajlEoCGw)Ubkt+<&v8Qk2w#NFDd3LV?){lxM z>8%$GQ~h`(2`ZvSF66#8wc>0rx;W!GcQ7*LBgsXM+C7#({nT_$i6!PJ>-Ft5;#$y- z#%!BC|GrO?XYX{`*$Vr`2v@|Qxa5T0lL-mp**1dyi$NE#t(~=#l{>e`JBNSZ)B6*j z^xxt8J9$V;~00Z9H+gNssmU+Ei?Tu)vxAWLlPeG|k+6sfWk1hOgi z>n4nIKCZu+@EW4i% zd+Jvz=msz=Vsm9so_hgyNe|1OTuW)ZucR?XqWi4gNE%k98(ekfff=pq$k26_KlktJ z5UW%NVjM-X~Zt9qyoglhaGwn)L&C>L7~K5cB!B1SO&*e4I&f+@Jov# zb~LE@PY6Nvl*3v@3)isvvQ-PBk;Eg`p>YJXDc_PHTHbWkp*|qA@HHM5@%6onMP;?B zw*Q-g7_L0^zD;}s{fgGA!hIX>Pa#96tvn`Cr1VTRq*KCG=&b3_SEKBJ0NE(S>o19h!;7Xrt1DB4BR8nF$|UtEZYkfQjx#IIjS zsv?(ef3xt-eIM^DUiKuQkNL@&W8`9wQBUsJB+J+aYQS)pvwQjO;wGnqK_f}ufbTXw z$tl}4r|iF^pUc1EkB=Yh;AZ9I%5CG}_WuKL8y9X&!~^MPZWG(T4YsRRP!$T?R=)P* zt?sJ9;8_z2H0Jtsvk`IXj5ND-cNY93X(szBfMz@tZKheOyh zM6!dGhU3-46tE)=N-=^T+qx?V;>H-%>Js!qD0k?_JiT|+fK!HEQJY#fKAlX5P*zWB zCO7HHawQ`*++Y|Ql5;d1(}eq4Il0^hamLyBDm{DzvolepIc~tNl;$R0M)V44brhAg zgeE~<4)^>d4BgiaSuMI{;v?)yXIfw)j3nWMZt4pi@AIwYRs6o8yL`dB=9ZjLuU2D3 zh(b`rL~mGQ14FF%9Dm}jWY^_hagVoh{y{{a0(DuJ{3)EuN@%W2D>-6-LMyig&60Q) zu<;>pjn<3Wb9%7!Wj;i^(4F5VOGJ%~nPwg1cGND=ccY!IP@Zhr|GR-H{ zOhg|&dGv;^K0ezcihk&0iWO9+!xpxId5yIQ6;8gUDG2#F{>ObuNOu5}nUI)FQ9;1o z&jl(Ir+W%k4rJjhcG9dh`aKgrXTxIsGkd9*#Ljqx>{J}Anbe7mM^W>UsmL5k;WLs< z8XAnSkZl88kx3mFX1v=#_p&YY%4x7e5A{`4=GkenE!vk~Em-AwtyZL5nX00Tj-1@EYfc7uI?_(ZqM8l99#KOfEyD zb=@sc_3O@~QM1l!)RIukE=2V?_)7F59iFp%Y^-G=4cnFxCchU_+$71DazXwAYZzAj zDeMm+YKeUFi^|y*n9q~u&MIR|l9pNy29r^+O#-7+NduFO$pMTkoc_?CvNAv16Mk?5O)nf)k30sksl)&*n2^yL znf}w%zbBo$tCPF8-#)10GEzR_ks3tWd7mFyBqz!`;G zJt`9p)NpiYmE=5l%2G?nzs|6u7K!h6Z|X0fq3NhB(RvyedV_@c zk-cZMgNPzgybHc`+<_JQZr@vUyv1y41yQz{AuTQ7#Y?^d;zU;(bC=9P>!?rQ-e!AF zoBGBmuxo5LN!wsBhQUOHSZE%q-r^;(5<6Lh@U@k`nmrtApZEmo+%2WH%;$&9$c05mc zj@@stoh3q5sM7L=>2DH+gp_>jS*0Uv)`&T-8j3Uz(VtCuY+hGP#L)a$Zxl^*vg_A_ z3#TI2;IQ+1dCE)$;@XJY-fiV9c};q6^j-}Uk+vL*sIEJh*X!L6P#=mDmW})mRzjK zKdiKvo1C8I8S#A@22jz<-E6lj zL>x|EM1$Q!!*>Swf{x;tc8`SZuhd$^n4|nO)sKL!Xq4G8=TUK!ch$ z*@tp`r)774x@-9r=ePpT!YzVPqj0fDQ{OU$2_)uwD*u+os)&0WG_E0S&^|-3;eK0% z>0{bg?wLA?!=@tBNe;MnOv&(1$sX^3&~p8KRjn+WH(pJyhA?%39cmRPz^Xl=R?~`xdgwviA|JgBLeNQ&oT|eqK3;GJwe&{>n>6Gk_B7@5c7XpJQ9%uW^Fafcs3)Pm-lf zxs4y`wxpu5+6L1DXSx=0B*)Eaq@&ljcZBScvhfOI;`R26Zr^kY_Pd~077Q!b;S#}= zpuY{+eyv|FHhR!?08sZ7=QS=46e)MfjI zbn%Daxa+zWP`oMgt2I8f2z(~vJB^I!-*H{S;<+1->*=?*WDd!qt}~q_8K|M*gtZZ3 zh!)zjN8PQ4%XOt3-`SQ5X9cTN^qB;mZ{1!>U<+a3%rH?lrrp*R54ZF1FhKMb`TEPc zohhPYL7}#bxdZe3V@UFi>o4x=f5^EJe(LbZ8YR{IG*(NPr;xn))&_VwULCQNqRP8W zuis<#X5`Wg4oM~1@XSp*){+_FFnQb^kVmS|*&|-2tAN{WhN>r}I(xctP*N*5CSl*6 z5-i48zlxk;zu?f9YEcOmoPN4)x>LctOC=|)ocO&s3q+9}o#{VyB^e7SU%NNp_dnp$ zk(}@(cK^DxV{_~J!4j8mX;>WJ(&c-vGh}wke^n?7W!bZx%`taK5+6C~6$)g!J%}>; zo-cG^GNUKp3XmT(v8Z6lvNp(vz0Hmx#}D%= 150400 && 0%{?is_opensuse} || 0%{?sle_version} >= 150600 || 0%{?suse_version} > 1500 +%bcond_without vala +%endif +%endif +# The default Leap compiler is too old for building AppStream-qt6. use the same compiler for both flavors +%if 0%{?suse_version} == 1500 +%bcond_without gcc13 +%endif +%define rname AppStream +%define libappstream_sover 5 +%define libAppStreamQt_sover 3 +%define libappstream_compose_sover 0 +Name: AppStream%{?pkg_suffix} +Version: 1.0.4 +Release: 0 +Summary: Tools and libraries to work with AppStream metadata +License: LGPL-2.1-or-later +URL: https://www.freedesktop.org/software/appstream/docs/ +Source0: https://www.freedesktop.org/software/appstream/releases/%{rname}-%{version}.tar.xz +Source1: https://www.freedesktop.org/software/appstream/releases/%{rname}-%{version}.tar.xz.asc +Source2: AppStream.keyring +# PATCH-FIX-OPENSUSE +Patch0: support-meson0.59.patch +BuildRequires: cairo-devel +BuildRequires: docbook-xsl-stylesheets +%if %{with gcc13} +BuildRequires: gcc13 +BuildRequires: gcc13-c++ +%endif +BuildRequires: gdk-pixbuf-loader-rsvg +BuildRequires: gettext-devel +BuildRequires: gperf +BuildRequires: itstool +BuildRequires: meson >= 0.59 +BuildRequires: pkgconfig +BuildRequires: xsltproc +%if 0%{?qt6} +BuildRequires: pkgconfig(Qt6Core) >= %{min_qt_version} +BuildRequires: pkgconfig(Qt6Test) >= %{min_qt_version} +%else +BuildRequires: pkgconfig(Qt5Core) >= %{min_qt_version} +BuildRequires: pkgconfig(Qt5Test) >= %{min_qt_version} +%endif +BuildRequires: pkgconfig(gdk-pixbuf-2.0) +BuildRequires: pkgconfig(gio-2.0) +BuildRequires: pkgconfig(glib-2.0) >= 2.62 +BuildRequires: pkgconfig(gobject-introspection-1.0) +BuildRequires: pkgconfig(libcurl) +BuildRequires: pkgconfig(librsvg-2.0) +BuildRequires: pkgconfig(libsystemd) +BuildRequires: pkgconfig(libxml-2.0) +BuildRequires: pkgconfig(pango) +BuildRequires: pkgconfig(xmlb) >= 0.3.14 +BuildRequires: pkgconfig(yaml-0.1) +Recommends: curl +%if %{with vala} +BuildRequires: vala +%endif + +%description +AppStream-Core makes it easy to access application information from the +AppStream database over a nice GObject-based interface. + +%if 0%{?qt6} +%package -n libAppStreamQt%{libAppStreamQt_sover} +Summary: Qt 6 bindings for AppStream +License: GPL-2.0-or-later AND LGPL-2.1-or-later + +%description -n libAppStreamQt%{libAppStreamQt_sover} +The Qt 6 bindings for AppStream. + +%package -n appstream-qt6-devel +Summary: Header files for AppStream's Qt 6 bindings +License: GPL-2.0-or-later AND LGPL-2.1-or-later +Requires: libAppStreamQt%{libAppStreamQt_sover} = %{version} +Requires: libappstream%{libappstream_sover} = %{version} +Conflicts: libAppStreamQt-devel < 1.0 + +%description -n appstream-qt6-devel +This package contains all necessary include files, libraries, +configuration files and development tools (with manual pages) needed to +compile and link applications using the Qt bindings for AppStream. +%else + +%package -n libappstream%{libappstream_sover} +Summary: The main library for AppStream +License: GPL-2.0-or-later AND LGPL-2.1-or-later + +%description -n libappstream%{libappstream_sover} +The main library for AppStream. + +%package -n libAppStreamQt5-%{libAppStreamQt_sover} +Summary: Qt 5 bindings for AppStream +License: GPL-2.0-or-later AND LGPL-2.1-or-later + +%description -n libAppStreamQt5-%{libAppStreamQt_sover} +The Qt 5 bindings for AppStream. + +%package -n appstream-qt5-devel +Summary: Header files for AppStream's Qt 5 bindings +License: GPL-2.0-or-later AND LGPL-2.1-or-later +Requires: libAppStreamQt5-%{libAppStreamQt_sover} = %{version} +Requires: libappstream%{libappstream_sover} = %{version} +# Renamed after the 1.0.0 release +Provides: libAppStreamQt-devel = %{version} +Obsoletes: libAppStreamQt-devel < %{version} + +%description -n appstream-qt5-devel +This package contains all necessary include files, libraries, +configuration files and development tools (with manual pages) needed to +compile and link applications using the Qt bindings for AppStream. + +%package compose +Summary: Support for appstreamcli compose +License: GPL-2.0-or-later AND LGPL-2.1-or-later +Requires: AppStream = %{version} +Requires: gdk-pixbuf-loader-rsvg + +%description compose +This package contains all necessary files, libraries, +configuration files to add compose support to appstreamcli. + +%package -n libappstream-compose%{libappstream_compose_sover} +Summary: Libraries for appstream compose support +License: GPL-2.0-or-later AND LGPL-2.1-or-later + +%description -n libappstream-compose%{libappstream_compose_sover} +The library for AppStream compose support. + +%package compose-devel +Summary: Header files for AppStream Compose support +License: GPL-2.0-or-later AND LGPL-2.1-or-later +Requires: AppStream = %{version} +Requires: AppStream-compose = %{version} +Requires: libappstream-compose%{libappstream_compose_sover} = %{version} + +%description compose-devel +This package contains all necessary files, libraries, +configuration files to add compose support using compose. + +%package devel +Summary: Header files for AppStream development +License: GPL-2.0-or-later +Requires: AppStream = %{version} +Requires: libappstream%{libappstream_sover} = %{version} + +%description devel +This package contains all necessary include files, libraries, +configuration files and development tools (with manual pages) needed to +compile and link applications using AppStream. + +This package contains the documentation for AppStream. + +%package doc +Summary: Documentation for AppStream +License: GPL-2.0-or-later +BuildArch: noarch + +%description doc +AppStream-Core makes it easy to access application information from the +AppStream database over a nice GObject-based interface. + +This package contains the documentation files for AppStream. + +%package -n typelib-1_0-AppStream-compose-1.0 +Summary: Introspection bindings for AppStream Compose +License: LGPL-2.1-or-later +Group: System/Libraries + +%description -n typelib-1_0-AppStream-compose-1.0 +GObject introspection bindings for interfaces provided by AppStream Compose + +%package -n typelib-1_0-AppStream-1.0 +Summary: Introspection bindings for AppStream +License: LGPL-2.1-or-later +Group: System/Libraries + +%description -n typelib-1_0-AppStream-1.0 +GObject introspection bindings for interfaces provided by AppStream. + +%lang_package +%endif + +%prep +%autosetup -p1 -n %{rname}-%{version} + +%build +%define common_options -Ddocs=false -Dapidocs=false -Dstemming=false +%if %{with vala} +%define build_vapi true +%else +%define build_vapi false +%endif + +%if 0%{?qt6} +%define options -Dqt=true -Dqt-versions=6 -Dvapi=false -Dcompose=false -Dgir=false +%else +%define options -Dqt=true -Dqt-versions=5 -Dcompose=true -Dvapi=%{build_vapi} +%endif + +%if %{with gcc13} +export CC=gcc-13 CXX=g++-13 +%endif + +%meson %{common_options} %{options} + +%meson_build + +%install +%meson_install + +# Unneeded test file +rm -r %{buildroot}%{_datadir}/installed-tests + +# Only keep the Qt6 library when using the qt6 flavor +%if 0%{?qt6} +rm %{buildroot}%{_bindir}/appstreamcli +rm %{buildroot}%{_libdir}/libappstream.so* +rm -r %{buildroot}%{_datadir}/{appstream,doc,gettext,locale,man,metainfo} +rm -r %{buildroot}%{_includedir}/appstream +rm -r %{buildroot}%{_libdir}/pkgconfig +%else +%find_lang appstream %{name}.lang +%endif + +%check +%meson_test + +%if 0%{?qt6} +%ldconfig_scriptlets -n libAppStreamQt%{libAppStreamQt_sover} +%else +%ldconfig_scriptlets -n libappstream%{libappstream_sover} +%ldconfig_scriptlets -n libAppStreamQt5-%{libAppStreamQt_sover} +%ldconfig_scriptlets -n libappstream-compose%{libappstream_compose_sover} +%endif + +%if 0%{?qt6} +%files -n libAppStreamQt%{libAppStreamQt_sover} +%{_libdir}/libAppStreamQt.so.%{libAppStreamQt_sover} +%{_libdir}/libAppStreamQt.so.%{version} + +%files -n appstream-qt6-devel +%{_includedir}/AppStreamQt/ +%{_libdir}/cmake/AppStreamQt/ +%{_libdir}/libAppStreamQt.so + +%else + +%files lang -f %{name}.lang + +%files +%doc NEWS +%{_bindir}/appstreamcli +%dir %{_datadir}/appstream +%{_datadir}/appstream/appstream.conf +%dir %{_datadir}/metainfo +%{_datadir}/metainfo/org.freedesktop.appstream.cli.metainfo.xml +%{_mandir}/man1/appstreamcli.* + +%files -n libappstream%{libappstream_sover} +%license COPYING AUTHORS +%{_libdir}/libappstream.so.%{libappstream_sover} +%{_libdir}/libappstream.so.%{version} + +%files -n libAppStreamQt5-%{libAppStreamQt_sover} +%{_libdir}/libAppStreamQt5.so.%{libAppStreamQt_sover} +%{_libdir}/libAppStreamQt5.so.%{version} + +%files -n appstream-qt5-devel +%{_includedir}/AppStreamQt5/ +%{_libdir}/cmake/AppStreamQt5/ +%{_libdir}/libAppStreamQt5.so + +%files compose +%{_datadir}/metainfo/org.freedesktop.appstream.compose.metainfo.xml +%{_libexecdir}/appstreamcli-compose +%{_mandir}/man1/appstreamcli-compose*.1.gz + +%files -n libappstream-compose%{libappstream_compose_sover} +%{_libdir}/libappstream-compose.so.%{version} +%{_libdir}/libappstream-compose.so.%{libappstream_compose_sover} + +%files compose-devel +%{_libdir}/libappstream-compose.so +%{_libdir}/pkgconfig/appstream-compose.pc +%{_includedir}/appstream-compose/ +%{_datadir}/gir-1.0/AppStreamCompose-1.0.gir + +%files devel +%{_libdir}/libappstream.so +%{_libdir}/pkgconfig/appstream.pc +%{_includedir}/appstream/ +%{_datadir}/gir-1.0/AppStream-1.0.gir +%{_datadir}/gettext/ +%if %{with vala} +%dir %{_datadir}/vala/ +%dir %{_datadir}/vala/vapi/ +%{_datadir}/vala/vapi/appstream.deps +%{_datadir}/vala/vapi/appstream.vapi +%endif + +%files doc +%{_datadir}/doc/appstream + +%files -n typelib-1_0-AppStream-1.0 +%{_libdir}/girepository-1.0/AppStream-1.0.typelib + +%files -n typelib-1_0-AppStream-compose-1.0 +%{_libdir}/girepository-1.0/AppStreamCompose-1.0.typelib +%endif + +%changelog diff --git a/_multibuild b/_multibuild new file mode 100644 index 0000000..0467171 --- /dev/null +++ b/_multibuild @@ -0,0 +1,3 @@ + + qt6 + diff --git a/support-meson0.59.patch b/support-meson0.59.patch new file mode 100644 index 0000000..3594eac --- /dev/null +++ b/support-meson0.59.patch @@ -0,0 +1,93 @@ +Add patch to support meson 0.59 which is the only version available in SLE 15 SP5 +Author: Antonio Larrosa + +--- + data/meson.build | 12 ++++++++++++ + meson.build | 4 ++-- + po/meson.build | 15 +++++++++++++++ + 3 files changed, 29 insertions(+), 2 deletions(-) + +diff --git a/data/meson.build b/data/meson.build +index 7ae7a9b3..b9208821 100644 +--- a/data/meson.build ++++ b/data/meson.build +@@ -24,6 +24,17 @@ metainfo_with_relinfo = custom_target('gen-output', + command : [ascli_exe, 'news-to-metainfo', '--limit=6', '@INPUT0@', '@INPUT1@', '@OUTPUT@'] + ) + ++if meson.version().version_compare('<0.62') ++metainfo_i18n = i18n.merge_file ( ++ input: metainfo_with_relinfo, ++ output: 'org.freedesktop.appstream.cli.metainfo.xml', ++ type: 'xml', ++ data_dirs: [meson.current_source_dir()], ++ po_dir: join_paths (source_root, 'po'), ++ install: true, ++ install_dir: metainfo_dir ++) ++else + metainfo_i18n = i18n.itstool_join( + input: metainfo_with_relinfo, + output: 'org.freedesktop.appstream.cli.metainfo.xml', +@@ -32,6 +43,7 @@ metainfo_i18n = i18n.itstool_join( + install: true, + install_dir: metainfo_dir, + ) ++endif + + test('as-validate_metainfo.cli', + ascli_exe, +diff --git a/meson.build b/meson.build +index 4636789f..6742fc7c 100644 +--- a/meson.build ++++ b/meson.build +@@ -1,5 +1,5 @@ + project('AppStream', 'c', +- meson_version: '>=0.62', ++ meson_version: '>=0.59', + default_options: ['c_std=c11', 'cpp_std=gnu++17'], + + license: 'LGPL-2.1-or-later', +@@ -107,7 +107,7 @@ add_project_arguments( + '-Werror=missing-include-dirs', + '-Werror=declaration-after-statement', + '-Werror=format-security', +- ++ '-Werror=format', + '-Wno-missing-field-initializers', + '-Wno-error=missing-field-initializers', + '-Wno-unused-parameter', +diff --git a/po/meson.build b/po/meson.build +index e9ede195..f7c1d842 100644 +--- a/po/meson.build ++++ b/po/meson.build +@@ -1,5 +1,19 @@ + + as_gettext_domain = 'appstream' ++if meson.version().version_compare('<0.62') ++i18n.gettext(as_gettext_domain, ++ preset : 'glib', ++ data_dirs: [join_paths(source_root, 'data')], ++ args: [ ++ '--default-domain=' + as_gettext_domain, ++ '--from-code=UTF-8', ++ '-i', '-F', '-c', '--no-wrap', ++ '--package-name=' + as_gettext_domain, ++ '--copyright-holder=Matthias Klumpp', ++ '--msgid-bugs-address=appstream@lists.freedesktop.org' ++ ] ++) ++else + i18n_result = i18n.gettext(as_gettext_domain, + preset : 'glib', + data_dirs: [join_paths(source_root, 'data')], +@@ -12,6 +26,7 @@ i18n_result = i18n.gettext(as_gettext_domain, + '--msgid-bugs-address=appstream@lists.freedesktop.org' + ] + ) ++endif + + run_target ('make-linguas', + command: ['sh', +-- +2.42.1