Feature: The upgrade check reports sets TYPO3 cannot provide 

Description 

The configuration group of academic:upgrade:check reports a site that depends on a set of an academic extension TYPO3 cannot provide:

Finding Meaning Severity
unavailable-set A site depends on a set of an academic extension that is not installed, that a release removed or that is invalid, or on a set of its own - a site package set, typically - that depends on one, directly or further down. error
Configuration

  x unavailable-set          site:main
    The site "main" depends on "acme/site-package", which needs
    "fgtclb/academic-programs-content-load" - directly or through another set. TYPO3 cannot
    provide "fgtclb/academic-programs-content-load": no active extension ships a valid set of
    that name. TYPO3 answers every page of the site with HTTP 500 ("depends on unavailable sets")
    until the dependency is removed or the set is available again. 3.0 removed it: program pages
    render the content of their main column without it. Remove the dependency from the site
    configuration and from every set of the site package.
Copied!

For a set a release removed, the message says what replaced it. So far these are the three content-load sets 3.0 removed, fgtclb/academic-partners-content-load, fgtclb/academic-programs-content-load and fgtclb/academic-projects-content-load - see Breaking-ContentLoadSetRemoved.rst in the 3.0 changelogs of EXT:academic_partners , EXT:academic_programs and EXT:academic_projects .

Impact 

Unlike most findings of the group, this one is not silent in TYPO3: the site answers every frontend request with HTTP 500. It is reported anyway, and as an error, because the command runs before an upgraded installation goes live - the site only fails once it does.

An alias set whose extension is not installed is reported as unavailable-set rather than as alias-set : it does not deliver.

A set of another vendor that misses a set of another vendor is not reported; the backend module Sites (Sites > Setup on TYPO3 v14) lists every invalid set.