Subject: CVS commit: pkgsrc/devel/appstream
From: Adam Ciarcinski
Date: 2024-04-14 19:22:19
Message id: 20240414172220.1466EFA2C@cvs.NetBSD.org

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

Files:
RevisionActionfile
1.5modifypkgsrc/devel/appstream/Makefile
1.2modifypkgsrc/devel/appstream/PLIST
1.4modifypkgsrc/devel/appstream/buildlink3.mk
1.3modifypkgsrc/devel/appstream/distinfo
1.2removepkgsrc/devel/appstream/patches/patch-src_as-system-info.c