- 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
- 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: <release> 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
OBS-URL: https://build.opensuse.org/request/show/681558
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/AppStream?expand=0&rev=43
- 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)
OBS-URL: https://build.opensuse.org/request/show/642258
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/AppStream?expand=0&rev=41
- 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)
OBS-URL: https://build.opensuse.org/request/show/572093
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/AppStream?expand=0&rev=35
- 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)
OBS-URL: https://build.opensuse.org/request/show/570912
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/AppStream?expand=0&rev=33
- 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:
OBS-URL: https://build.opensuse.org/request/show/508298
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/AppStream?expand=0&rev=30