[darcs-users] [patch304] Reduce DarcsFlag usage in Darcs.Patch and Darcs.Repository

Eric Kow kowey at darcs.net
Sat Jul 17 12:29:55 UTC 2010


On Fri, Jul 16, 2010 at 22:56:47 +0200, Petr Rockai wrote:
> > Petr's patch switch everything to the first approach.  From the user
> > perspective, one small change is that now applying any file which
> > affects a shebang file will cause that file to be set executable
> > (whereas previously it was just patches that added a shebang first
> > line).  I think this is the sort of change that nobody is actually going
> > to notice and is more consistent anyway.
> This is not true -- the behaviour did not change. There's
> setScriptsExecutable like before, and makeScriptsExecutable which takes
> a patch (sequence): the latter is used in place of the hack previously
> residing in apply -- it extracts the paths that were touched by a given
> patch and only looks at those files to check whether they need to be
> made executables.

Are you sure?

While I agree with your characterisation of how the modified
makeScriptsExecutable (optionally constrained by patch sequence), I was
saying that the new approach is almost imperceptibly looser because it
affects the shebang file whether or not the patches in question actually
touch the shebang line whereas the old approach only fires on hunk line
1 patches that add a shebang.  At least, that's how I understand the
implications of the change.  I'm personally happy either way and I think
users won't even notice.  Just checking that we have a shared understanding.
 
> > Why aren't we calling makeScriptsExecutable here? Petr definitely noticed that
> > we ought to do it and we did seem to be threading the opts through in the past.
> Right, we ought and I wanted to, but GHC gave me super-mysterious error
> about constraints (even though I believe that with the about
> non-irrelevant change to Patchy, the contexts all match up, GHC
> disagrees and wants Conflict added to some contexts... I have no idea
> why. I'll look into it in a bit...)

Is it because of these instances?

src/Darcs/Patch/Viewing.hs:instance (Conflict p, Patchy p) => Patchy (FL p)
src/Darcs/Patch/Viewing.hs:instance (Conflict p, Patchy p) => Patchy (RL p)

-- 
Eric Kow <http://www.nltg.brighton.ac.uk/home/Eric.Kow>
For a faster response, please try +44 (0)1273 64 2905.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.osuosl.org/pipermail/darcs-users/attachments/20100717/6672a9a7/attachment.pgp>


More information about the darcs-users mailing list