Rework some core licensing stubs and prepare for new license actions.

Review Request #14401 — Created April 21, 2025 and submitted — Latest diff uploaded

Information

Review Board
release-7.1.x

Reviewers

License has been updated to provide consistent expiration-related
information, factoring in hard expiration dates, grace periods, and
"expires soon" logic.

LicenseStatus constants have been renamed to go with
licensed/unlicensed terms and expired-based terms.

There are new classes, errors, and stubs for license update checks and
for license actions (which will include things like manually uploading a
license).

License check updates will be driven in an upcoming change. The process
involves asking the License Provider for a license check payload,
sending that payload to an outside server, then passing the result back
to the License Provider for processing.

Type hints have been updated to utilize | instead of Union.

Upcoming changes will begin to flesh out more of this, and add UI around
license displays.

Unit tests pass.

Tested this along with in-progress changes, verifying all these new
capabilities being stubbed out in this change.

Commits

Files