Opened 6 months ago

Closed 6 months ago

#18843 closed enhancement (fixed)

AppStream-1.0.0

Reported by: Bruce Dubbs Owned by: Xi Ruoyao
Priority: normal Milestone: 12.1
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description (last modified by Rahul Chandra)

New major version.

Change History (12)

comment:1 by Rahul Chandra, 6 months ago

Owner: changed from blfs-book to Rahul Chandra
Status: newassigned

comment:2 by Rahul Chandra, 6 months ago

Version 0.16.4
~~~~~~~~~~~~~~
Released: 2023-11-10

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

Contributors:
 Gleb Popov, Matthias Klumpp, Tristan Partin

Version 0.16.3

comment:3 by Rahul Chandra, 6 months ago

Description: modified (diff)
Summary: AppStream-0.16.4AppStream-1.0.0

comment:5 by Rahul Chandra, 6 months ago

Resolution: fixed
Status: assignedclosed

comment:6 by Rahul Chandra, 6 months ago

I rolled back to 0.16.4 because 1.0.0 needs QT 6 Refixed @ aa8180ff502310d7b55f206a3c4d8a7be5dac67f

comment:7 by Xi Ruoyao, 6 months ago

Resolution: fixed
Status: closedreopened

This should be reopened then because the currency script will still pick up AppStream-1.0.0.

In BLFS AppStream is mainly used as a build dependency for libadwaita. So I think we should just update to 1.0.0 and disable AppStream in Plasma.

Last edited 6 months ago by Xi Ruoyao (previous) (diff)

comment:8 by Xi Ruoyao, 6 months ago

Owner: changed from Rahul Chandra to Xi Ruoyao
Status: reopenednew

In meson_options.txt:

option('qt',
       type : 'boolean',
       value : false,
       description : 'Build libappstream-qt for Qt6'
)
option('qt5',
       type : 'boolean',
       value : false,
       description: 'Build libappstream-qt5 for Qt5'
)

So we should use -Dqt5=true for Qt5. I'll update again to 1.0.0.

comment:9 by Xi Ruoyao, 6 months ago

Status: newassigned

comment:10 by Xi Ruoyao, 6 months ago

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

in reply to:  10 comment:11 by Xi Ruoyao, 6 months ago

Replying to Xi Ruoyao:

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.

libadwaita FTBFS with 1.0.0, even both 1.0 and 0.16.x are installed. I'll try to grab or make a fix...

comment:12 by Xi Ruoyao, 6 months ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.