Skip to content

Draft: Add DCoVarSet to UnivCo to let plugins fix soundness issues (#23923 (comment 543934))

Mikolaj Konarski requested to merge wip/T23923-mikolaj into master

This implements what @simonpj proposed in #23923 (comment 543934).

So far, I've added all the code I'm reasonably sure should be there, but not some extensive additions and refactorings from !3792 that perhaps can be avoided. I've inserted a couple dozen !!! markers into may changes, which signify I don't know what I'm doing in that particular spot. I'm blocked on those.

The general plan, to be attempted after the basic code change is complete, is as written in #23923 (comment 544181):

The plan, as far as I understand what Simon suggests, would be to rip the relevant bits out of !3792 (moving the DCoVarSet from ZapCoProv to UnivCo directly), including some documentation notes, maybe also a smart constructor for backward compatibility and/or a test. Then we'd need to think about the porting guide and perhaps some patches on head.hackage and/or contacting the affected plugin authors (whose plugins must be already faulty, but they would additionally become not-compiling after this change). Anything else?

Merge request reports