cabal
cabal copied to clipboard
Restructure finalCheckPackage, moving it earlier in the cabal-install pipeline
finalCheckPackage (and thus checkPackageProblems) currently performs several different kinds of check on the package:
- checks on the level of the
GenericPackageDescription, such as the checks incheckGenericPackageDescription - checks on the
PackageDescriptionthat may have had hooks applied (either via the oldUserHooks, or newSetupHooks).
This ticket tracks splitting up this logic, so that all the checks on the level of the GenericPackageDescription are done as early as possible within cabal-install (as early as it makes sense to do them; perhaps in project planning). The remaining checks would only need to check information modified by the hooks, but would thus need to be done later, after hooks have been applied (in the case of SetupHooks, after we have configured the package and its components).