Migrating from dnf-plugin-support-info v1 to v2 - Amazon Linux 2023
Services or capabilities described in AWS documentation might vary by Region. To see the differences applicable to the AWS European Sovereign Cloud Region, see the AWS European Sovereign Cloud User Guide.

Migrating from dnf-plugin-support-info v1 to v2

The dnf-plugin-support-info package has a new major version (v2) with a redesigned output format. This guide helps you update any scripts or tooling that parse dnf supportinfo output.

During the transition period, the v2 plugin ships with legacy = 1 in /etc/dnf/plugins/supportinfo.conf, which preserves v1-compatible output. Once you have updated your scripts, set legacy = 0 to switch to v2 output.

Overview

Timeline

Event Timing
v2 plugin (dnf-plugin-support-info 2.0) available Now
Plugin ships with legacy = 1 (v1-compatible output) Initial v2 release
Default changes to legacy = 0 A future AL2023 quarterly release
v1 format no longer maintained After transition period

What You Need to Do

If you have scripts that parse console output, XML output, or read the XML file from disk, update them to handle the new field names, structure, and file paths. If you use --showjson, your scripts need no changes, because the JSON output is identical between v1 and v2. If you read the XML file directly from disk, switch to downloading the XML from the configured baseurl or use dnf supportinfo --show installed --showxml.

Breaking Changes That Require Action

If You Parse Console Output

Detail Fields

The plugin changed the field labels it displays when you query a specific package:

v1 label v2 label Notes
Support Status Current Status Renamed
Support Periods Support Timeline Renamed, moved to end of output
Support Statement (removed) No longer displayed
Link Link Unchanged (shown when available)
Other Info Other Info Unchanged (shown when available)
(not present) Patch Priority New field
(not present) Support Level Description New field
(not present) Covered Severities New field
(not present) Origin New field

The field label column is now 28 characters wide (previously 20).

v1: dnf supportinfo --pkg apr

Name : apr Version : 1.7.5-1.amzn2023.0.4 State : available Support Status : supported Support Periods : from 2023-03-15 : supported : from 2029-06-30 : unsupported Support Statement : Amazon Linux 2023 end-of-life Link : https://aws.amazon.com/amazon-linux-ami/faqs/ Other Info : This is the support statement for AL2023. The end-of-life : of Amazon Linux 2023 is June 2029. From this point, the : Amazon Linux 2023 packages will no longer receive any : updates from AWS.

v2: dnf supportinfo --pkg apr

Name : apr Version : 1.7.5-1.amzn2023.0.4 State : available Current Status : Supported Patch Priority : Full Support Support Level Description : Full security and bug fix support for all severities Covered Severities : Low, Medium, Important, Critical Origin : Amazon Linux 2023 Core Support Timeline : from 2023-03-15 : supported : from 2029-06-30 : unsupported

Table Columns

The summary table has changed from 6 columns to 7. The v2 table also displays a header row (v1 does not):

v1 column v2 column Change
Name Package Renamed
Version Version Unchanged
State State Unchanged
Support Status Current Status Renamed
(not present) Support Level New column
Date (such as 2029-06-30) Until (Next Phase) (such as 2029-06-30 (end_of_support)) Renamed, format changed
Note Note Unchanged
Important

The date column now includes the next phase name in parentheses. If you parse this field, update your regex or delimiter logic.

v1: dnf supportinfo --show installed

iproute 6.10.0-319.amzn2023.0.1 installed supported 2029-06-30 Kernel6.18 has security support until June 2029 kernel6.12 6.12.90-120.164.amzn2023 installed supported 2029-06-30 Kernel6.12 has security support until June 2029

v2: dnf supportinfo --show installed

Package Version State Support Level Current Status Until (Next Phase) Note alternatives 1.15-2.amzn2023.0.2 installed Full Support Supported 2029-06-30 (unsupported) amazon-linux-repo-cdn 2023.12.20260611-0.amzn2023 installed Full Support Supported 2029-06-30 (unsupported) redis6 6.2.20-2.amzn2023.0.1 installed End of Support End of Life Upstream end-of-life for Redis 6 (redis6) is 2026-01-31

If You Parse --showxml Output

The v2 --showxml output uses a different XML structure than v1. The root <package_support> element is the same, but the child elements, attributes, and hierarchy have changed.

v1: dnf supportinfo --pkg apr --showxml

<?xml version="1.0" ?> <package_support current_as="2026-06-18"> <statements> <statement id="eol" marker="supported" start_date="2023-03-15" end_date="2029-06-30"> <summary>Amazon Linux 2023 end-of-life</summary> <text>This is the support statement for AL2023. The end-of-life of Amazon Linux 2023 is June 2029. From this point, the Amazon Linux 2023 packages will no longer receive any updates from AWS.</text> <link>https://aws.amazon.com/amazon-linux-ami/faqs/</link> <packages> <package name="apr" nevra="1.7.5-1.amzn2023.0.4"/> </packages> </statement> </statements> </package_support>

v2: dnf supportinfo --pkg apr --showxml

<?xml version='1.0' encoding='utf-8'?> <package_support current_as="2026-06-18"> <statements> <statement id="eol_lc" current_phase="supported"> <phases> <phase name="supported" start_date="2023-03-15"> <patch_priority>Full Support</patch_priority> <support_level_description>Full security and bug fix support for all severities</support_level_description> <covered_severities>Low, Medium, Important, Critical</covered_severities> </phase> <phase name="unsupported" start_date="2029-06-30"> <patch_priority>End of Support</patch_priority> <support_level_description>End of support - no further updates</support_level_description> </phase> </phases> <packages> <package name="apr" nevra="1.7.5-1.amzn2023.0.4" state="available" origin="Amazon Linux 2023 Core"/> </packages> </statement> </statements> </package_support>

Key structural differences:

  • v1 uses marker, start_date, end_date attributes on <statement> with <summary>, <text>, <link> children

  • v2 uses current_phase attribute and nested <phases> elements with support level details

  • v2 omits <covered_severities> entirely when empty (instead of an empty element)

  • v2 package elements include state and origin attributes

  • v2 does not include <summary>, <text>, or <link> elements

If You Read the XML File Directly from Disk

The v1 plugin bundled its data file at:

/usr/lib/python*/site-packages/dnf-plugins/support_info.xml
Warning

This file is no longer updated once legacy = 0 takes effect. Do not rely on this path for current data.

The v2 plugin caches data at /var/cache/dnf/support-info/ when run as root. When run as a non-root user, it uses /var/tmp/dnf-username-*/support-info/, following DNF's standard convention for per-user temporary directories. Files in these directories use content-addressed filenames and are not stable. Do not parse them directly.

Recommended alternatives:

  1. Download the XML directly from the configured URL:

    https://cdn.amazonlinux.com/al2023/core/AL2023-supportinfo-1.0.xml
  2. Use the CLI to get structured output for installed packages:

    dnf supportinfo --show installed --showxml

If You Filter with --show

The values accepted by the --show filter have changed:

v1 filter values v2 filter values
supported full_support
unsupported eos

v1 filters are phase names (supported, unsupported). v2 filters are support level names (full_support, eos, etc.).

Run --list-filters to discover available filter values on your system:

dnf supportinfo --list-filters

What Does Not Change

Once you install dnf-plugin-support-info v2, the following remain the same regardless of the legacy setting:

  • --showjson output. The JSON output is identical whether legacy is 0 or 1, because the plugin normalizes to the v2 internal structure before formatting.

  • CLI arguments. All flags (--pkg, --show, --showxml, --showjson, --clean-cache, --list-filters, --sync) work in both modes.

  • Command name. You still run dnf supportinfo.

Note

The --showjson, --clean-cache, --list-filters, and --sync flags are new in v2 and are not available in v1.

Transition Period

The v2 plugin ships with legacy = 1 in /etc/dnf/plugins/supportinfo.conf. During this period:

  1. The plugin downloads v2 data from the configured URL.

  2. Console output, XML output, and filter values continue to behave like v1.

  3. The v1-format XML file remains available at the old path so existing scripts continue to work.

In a future AL2023 quarterly release, the default changes to legacy = 0. At that point:

  • Console output uses v2 field names and structure.

  • --showxml produces the new phases-based format.

  • --show filter values change to support level names.

  • The v1 XML file at the old path is no longer updated.

To keep v1-compatible output temporarily, set legacy = 1 in /etc/dnf/plugins/supportinfo.conf:

[main] legacy = 1
Important

The legacy = 1 option is a temporary bridge. Plan to migrate your tooling to v2 output rather than relying on this setting indefinitely.