After the weird intermediate states of refactoring the modules etc. in 9.0->9.4, we've finally updated PropR to 9.8!
At least so far as it passes the test-suite.
There was some weirdness we had to work around:
-XPartialTypeSignatures changed in an undocumented way, so we now add _ => in front of types to infer constraints as well. See 24425 for more info!
Updated to Cabal 3.10 and new cabal format.
We moved from the old SrcSpan to SrcAnn. This also required us to define orphan instances for Ord and Eq for these.
We have to use a guessTarget now instead of making them on the fly due to targets now including HomeUnit.
We need to parseDynamicFlags on startup for the check-helpers package to be visible! Otherwise the package infrastructure is not initialized?
We now re-export the required modules from check-helpers meaning we don't need to install QuickCheck explicitly.
We add a new configuration paramater ghc_flags that allow users to set the ghc flags for the repair.
We now use explicitly the LinkInMemory and HscInterpreted instead of the hsc_target.
We thread the typed-holes along with the fits, so we can check whether we are replacing the right one. It doesn't alway work (why?), supposedly due to us creating the holes on the fly.
We support two versions now, 9.6 (which is recommended by GHCup) and 9.8, the latest. This is facilitated by a few pre-processsing pragmas, but nothing major.
We don't need relevantCts any more, it's exported now!
From 8.10 to 9.6/8 the order of the returns of the holes has been reversed? Unclear why, but we follow the new convention.
Some traversals are now GhcPs specific. This is due to (I belive) the new annotations on locations that vary between phases? In any case, I followed the types.
After the weird intermediate states of refactoring the modules etc. in 9.0->9.4, we've finally updated PropR to 9.8! At least so far as it passes the test-suite.
There was some weirdness we had to work around:
-XPartialTypeSignatures
changed in an undocumented way, so we now add_ =>
in front of types to infer constraints as well. See 24425 for more info!3.10
and new cabal format.SrcSpan
toSrcAnn
. This also required us to define orphan instances forOrd
andEq
for these.guessTarget
now instead of making them on the fly due to targets now includingHomeUnit
.parseDynamicFlags
on startup for thecheck-helpers
package to be visible! Otherwise the package infrastructure is not initialized?check-helpers
meaning we don't need to installQuickCheck
explicitly.ghc_flags
that allow users to set theghc
flags for the repair.LinkInMemory
andHscInterpreted
instead of thehsc_target
.9.6
(which is recommended by GHCup) and9.8
, the latest. This is facilitated by a few pre-processsing pragmas, but nothing major.GhcPs
specific. This is due to (I belive) the new annotations on locations that vary between phases? In any case, I followed the types.