./devel/appstream, Tools and libraries to work with AppStream metadata

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.0.3, Package name: appstream-1.0.3, Maintainer: pkgsrc-users

AppStream is a collaborative effort for making machine-readable
software metadata easily available to programs that need it. It
is part of the Freedesktop ecosystem and provides a convenient way
to retrieve information about available software, making it one of
the building blocks for modern software centers.

AppStream consists of a specification to describe individual software
component metadata in XML (so-called MetaInfo files), as well as
a derived specification for a metadata-collection format to provide
a list of these metadata entries in XML or YAML for easy consumption
by software centers and other tools which need to know about
available software in a repository. In addition to the metadata
specification, AppStream specifies a set of related features to
help providing better metadata for software repositories (primarily
in Linux distributions). This reference implementation of AppStream
provides a shared library to work with these metadata files, features
to index and query their data quickly, as well as other useful
related functionality to make building programs which work with
software metadata very easy.


Master sites:

Filesize: 3870.699 KB

Version history: (Expand)


CVS history: (Expand)


   2024-04-25 09:22:11 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
appstream: updated to 1.0.3

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
   2024-04-21 15:37:31 by Thomas Klausner | Files touched by this commit (1)
Log message:
appstream: add missing tool dependency
   2024-04-21 15:35:44 by Thomas Klausner | Files touched by this commit (1) | Package updated
Log message:
appstream: remove patch that was removed from distinfo on update
   2024-04-14 19:22:19 by Adam Ciarcinski | Files touched by this commit (5) | Package updated
Log message:
appstream: updated to 1.0.2

Version 1.0.2
~~~~~~~~~~~~~~
Released: 2024-02-24

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 <summary/> 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

Version 1.0.1
~~~~~~~~~~~~~~
Released: 2023-12-16

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

Version 1.0.0
~~~~~~~~~~~~~~
Released: 2023-11-11

Notes:
 * This version breaks API and bumps the SONAME of libappstream!
   Applications using AppStream will have to be ported to the new API.
   The 1.0 release is coinstallable with the stable 0.16.x series.

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 <url/> 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
   2023-11-08 14:21:43 by Thomas Klausner | Files touched by this commit (2377)
Log message:
*: recursive bump for icu 74.1
   2023-10-25 00:11:51 by Thomas Klausner | Files touched by this commit (2298)
Log message:
*: bump for openssl 3
   2023-10-15 10:08:18 by Thomas Klausner | Files touched by this commit (4)
Log message:
appstream: add upstream bug report URLs
   2023-10-15 10:00:14 by Thomas Klausner | Files touched by this commit (7)
Log message:
devel/appstream: import appstream-0.16.3

AppStream is a collaborative effort for making machine-readable
software metadata easily available to programs that need it.  It
is part of the Freedesktop ecosystem and provides a convenient way
to retrieve information about available software, making it one of
the building blocks for modern software centers.

AppStream consists of a specification to describe individual software
component metadata in XML (so-called MetaInfo files), as well as
a derived specification for a metadata-collection format to provide
a list of these metadata entries in XML or YAML for easy consumption
by software centers and other tools which need to know about
available software in a repository.  In addition to the metadata
specification, AppStream specifies a set of related features to
help providing better metadata for software repositories (primarily
in Linux distributions).  This reference implementation of AppStream
provides a shared library to work with these metadata files, features
to index and query their data quickly, as well as other useful
related functionality to make building programs which work with
software metadata very easy.