Improve the default summaries and logic for licenses.

Review Request #14508 — Created July 15, 2025 and submitted — Latest diff uploaded

Information

Review Board
release-7.1.x

Reviewers

The default summaries for a license are now computed in
LicenseInfo.get_summary(), and now state information such as the
number of days left in a trial or a grace period. The plan name is no
longer wrapped in parentheses by default, but License Providers can
override LicenseInfo.format_plan_name() to set this however they need.

The default summary-building makes use of strings stored in a map, which
helps keep the strings maintainable and avoids a bunch of nested logic.
This is purely internal as a helper.

There are a few other small fixes for typos and types, and
LicenseInfo.__repr__() has been added.

Unit tests pass.

Verified the different states on the Licenses page.

Made use of the summary in the Power Pack work.

Commits

Files