[darcs-devel] darcs and ssh issues
David Roundy
droundy at darcs.net
Sun Dec 10 15:14:28 PST 2006
On Sun, Dec 10, 2006 at 10:58:06PM +0100, Tommy Pettersson wrote:
> So my (best) idea (so far) is to couple the entire remote
> machinery to the Repository data structure. Wouldn't that make
> good sense for a union-Pull from multiple external repos? I
> imagine, when a repo is identified, the correct set of tools for
> accessing it (if it's remote) are determined, perhaps not right
> away, but dormant in unsafePerformeIO, since the result should
> be independent of darcs' IO-ing anyway. The Repository data
> structure contains all needed information (I think), at least
> for calling tempdir_loc withCurrentDirectory(<repo root>).
That does. identifyRepository would be perfect for this, and I don't see
how we'd need any ugliness (e.g. unsafePerformeIO) at all! :) And, in
fact, identifyRepository is precisely the right time to verify whatever we
need to know we can actually access it!
> The not so god thing with such solution is it would not let
> itself go directly to stable. It would be tiresome to merge it
> with the Repository module changes in unstable. (Hey, we
> darcsers are not used to do big manual merges, and damn proud of
> it!)
Hmmmm. Sorry about that! (but it'll make the change easier in
darcs-unstable, at least... since identifyRepository will be used more
uniformly.)
> Quick fixes for the stable release includes:
>
> 1. Not allowing darcs to run without a proper temp dir (telling the
> user how to set up one).
> 2. Have darcs sometimes fail mysteriously in mid-operation, telling
> the user to set up a temp dir.
> 3. Let tempdir_loc silently remove _darcs/* suffixes from the
> current path, and according to Murphy's Law fail with "Bug in
> tempdir_loc: impossible".
>
> Number 3 could have the bonus of adhering to the user's setting
> in _darcs/prefs/tmpdir when possible.
>
> I think defying Murphy is the simplest and best solution for
> darcs 1.0.9.
3 sounds good to me.
--
David Roundy
Department of Physics
Oregon State University
More information about the darcs-devel
mailing list