- Update to version 0.16.1:
Specification:
* docs: Clarify the locations where catalog icons should be placed
* spec: Expand documentation for <issue> elements
* spec: Mention that <issues> 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
OBS-URL: https://build.opensuse.org/request/show/1068212
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/AppStream?expand=0&rev=87
- 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 <extends> 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
OBS-URL: https://build.opensuse.org/request/show/1058048
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/AppStream?expand=0&rev=82
- 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
OBS-URL: https://build.opensuse.org/request/show/942349
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/AppStream?expand=0&rev=70
Not yet built tested, beware.
- Update to version 0.14.4 (needed by future Discover versions)
* 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 <project_license>
* 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 (forwarded request 910733 from luca_b)
OBS-URL: https://build.opensuse.org/request/show/911010
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/AppStream?expand=0&rev=23
Not yet built tested, beware.
- Update to version 0.14.4 (needed by future Discover versions)
* 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 <project_license>
* 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
OBS-URL: https://build.opensuse.org/request/show/910733
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/AppStream?expand=0&rev=66
- 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 (forwarded request 885182 from susnux)
OBS-URL: https://build.opensuse.org/request/show/885246
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/AppStream?expand=0&rev=22
- 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
OBS-URL: https://build.opensuse.org/request/show/885182
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/AppStream?expand=0&rev=64
- 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)
OBS-URL: https://build.opensuse.org/request/show/862246
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/AppStream?expand=0&rev=60
- 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
OBS-URL: https://build.opensuse.org/request/show/818388
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/AppStream?expand=0&rev=56
- 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 <translation/> purpose (Kamil Páral)
* docs: Explicitly rule out nested lists (Marius Vollmer)
OBS-URL: https://build.opensuse.org/request/show/710906
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/AppStream?expand=0&rev=47