On Wed, Aug 27, 2008 at 09:56:32AM -0700, Jason Dagit wrote: > David, > > This is the resend you requested. > > I can't be sure that the individal patches below will compile by themselves, > but > I know they result in a working darcs when applied together. Hopefully, > sending like this will make it easier for you to review them!
I know it's a lot of work, but breaking these into managable chunks that *will* compile may be the only way to get this actually reviewed. And this really is important, because I'm pretty confident that in a change of this magnitude, there *will* be bugs present. And the type witness don't really help us in this, because most of the code involved uses functions with wrong type witnesses--which is to say, the functions in Darcs.Repository, which cannot be written with correct type witnesses until we've got something that can handle mutable state. Which means that the code need to be reviewed, and therefore needs to be presented in a comprehensible format. This one still has a conflict in it, so I can't apply this one without the resolution patch--which isn't labelled. > [improve reporting for bug in get_extra > Jason Dagit <[EMAIL PROTECTED]>**20080825011810] hunk > ./src/Darcs/Patch/Depends.lhs 48 > import Darcs.Patch.Info ( PatchInfo, just_name, human_friendly ) > import Darcs.Patch.Set ( PatchSet, SealedPatchSet ) > import Darcs.Patch.Patchy ( sloppyIdentity ) > -import Darcs.Hopefully ( PatchInfoAnd, piap, info, > +import Darcs.Hopefully ( PatchInfoAnd, piap, info, n2pia, > hopefully, conscientiously, hopefullyM ) > import Darcs.Progress ( progressRL ) > hunk ./src/Darcs/Patch/Depends.lhs 51 > -import Darcs.Sealed (Sealed(..), FlippedSeal(..) > +import Darcs.Sealed (Sealed(..), FlippedSeal(..), Sealed2(..) > , flipSeal, seal, unseal ) > import Printer ( errorDoc, renderString, ($$), text ) > #include "impossible.h" > conflictor [ > hunk ./src/Darcs/Patch/Depends.lhs 268 > -get_extra _ _ NilRL = return (flipSeal NilRL) > -get_extra skipped common (hp:<:pps) = > - if info hp `elem` common && is_tag (info hp) > - then case getdeps `fmap` hopefullyM hp of > - Just ds -> get_extra (liftM2 (:>:) ep skipped) (ds++delete (info > hp) common) pps > - Nothing -> get_extra (liftM2 (:>:) ep skipped) (delete (info hp) > common) pps > - else if info hp `elem` common _______________________________________________ darcs-users mailing list [email protected] http://lists.osuosl.org/mailman/listinfo/darcs-users
