[darcs-devel] status of darcsden repo

Ganesh Sittampalam ganesh at earth.li
Wed Feb 19 08:10:55 UTC 2020


Hi,

(I wrote this before seeing your last mail, I'm going to send it as-is
and reply to that separately later)

On 18/02/2020 23:38, Ben Franksen wrote:
> Am 18.02.20 um 13:24 schrieb Ganesh Sittampalam:
>> I was actually just drafting an email about darcsden myself, wondering
>> whether it would make sense to just merge it into darcs. There are quite
>> a lot of competing considerations, described below, but the immediate
>> trigger was running into the situation you describe myself, with
>> darcsden being outdated.
> 
> You've mention the idea some time ago. As then I am sceptical, more
> details below.

Apologies for repeating myself. I thought we'd discussed it before but
couldn't (and still can't) find any mailing list discussion by searching
for a subject 'darcsden'.

> My reservations against the idea are of a more principled nature.
> 
> Maintaining a web service is not our core business. We have enough to do
> with darcs proper. And even if this weren't the case, it would still be
> a violation of "do one thing and do it well". It would also "bless"
> darcsden as the one default darcs hosting service implementation,
> discouraging others (and ourselves) from writing something new that uses
> e.g. the command line interface of darcs (hypothetical at the moment, I
> know, but see e.g. darcsweb which is quite simple and still works,
> mostly); or perhaps something that directly works with the on-disk
> representation (which is in fact rather more stable than the current "API").

I guess my view is that maintaining a web UI (which is also intended for
local use, not just the hosting service) should be part of our core
business, particularly given that noone else is doing it at present.

> We both noticed that basing darcsden on darcslib which has *no*
> distinction between public and private parts is highly problematic and
> was perhaps not the best idea to begin with. What you propose amounts to
> coupling them even tighter. If you notice that patients are dying from
> your medicine, the solution is not to increase the dose.

I think if we had a larger ecosystem, having a good API would be a much
larger priority. But we don't, and I don't think it's primarily because
we've never had a good API. Out of the three external interfaces -
command-line, web UI, API - I'd like to have all three, but given
limited time I'd prefer to focus more on the first two. At the moment we
are giving the command-line interface a lot more attention than the web
UI, at least in terms of keeping it working.

>> Also I
>> think that in general keeping it up to date will be easier if done at
>> the same time as other darcs changes, and will also encourage us to
>> think about good abstractions for UI functionality.
> 
> The opposite is more likely to happen: we will use even /more/ of the
> darcs internals in darcsden because it is expedient.

At the moment, as we've discussed before, Darcs.UI.Commands is very
tightly coupled to Darcs.Patch and Darcs.Repository. I think if we had
two different clients sitting in the same place (Darcs.UI.Den and
Darcs.UI.Commands) then there'd be a stronger incentive to factor out
common code.

Anyway, it is possible to work on the two together as you mention, and
I've done so off and on in the past (in my case, via cabal.project
files). I just know that I haven't done so recently for whatever
reason. But I can try to start doing it again and hope it lasts this time.

Cheers,

Ganesh


More information about the darcs-devel mailing list