[darcs-users] Repository browser (was: Moving toward 1.0)
yarcs at qualitycode.com
Tue Nov 25 03:13:03 UTC 2003
David Roundy wrote:
> On Sun, Nov 23, 2003 at 03:09:00PM -0500, Sean E. Russell wrote:
>>Can you define the requirements for this browsing system? What do you
>>want it to be able to do...
I imagine this as an interactive app, where you are always viewing your
repository as it existed right after a particular patch.
At the bottom (or top?), there would be a box displaying the latest
patch that has been applied to the tree you are viewing. The patch name
and log would appear in that section, and there would be a button to
bring up a detailed view of the patch itself.
There would be buttons to shift your view to the next or previous patch,
to the next or previous tag, and to the earliest tree (probably empty),
or latest tree (the current head/tip).
In addition to that, the UI might have a tree on the left, and a text
view pane on the right. Selecting a file in the tree would display it in
the view pane.
There would be a command to export that tree to some other directory,
and whatever other commands would be helpful.
> 5) A search capability would be great: searching for patches
> that modified a given file, for example.
Personally, I want to get a history for a given file, which is basically
the same thing. Should be doable.
So, on to the real point of this message...
I have been "secretly" working on a project that uses the same data
files as darcs. Ok, it's a reimplementation of darcs in a different
language (because I dislike Haskell so much). It's coming along well,
but is not yet at a point where anyone could really use it for anything.
As an aside, I already told David about it, and I view it as an ally of
darcs, rather than a as competitor. People would feel more confident
choosing a new tool if there are other products available that use
exactly the same data formats. I *really* like the way darcs works.
Anyway, I am "announcing" my project now because it already includes
much of the functionality needed to build a repository browser. It seems
like it wouldn't be very difficult to build a browser on top of my core
classes that would accomplish most of what David asked for.
Although writing the browser would slightly delay my real goal of
creating an alternate darcs implementation, it is appealing to me for a
1. It would create real value for real users earlier
2. It would allow me (and others) to safely gain confidence in my code
3. Most of the functionality would be needed anyway
4. It would be an excuse to use wxRuby (see below)
5. It would be a nice tool to help my own development
One "downside" is that it would not initially be a single executable.
I'm writing the code in Ruby, and I would create the UI using the
wxWindows bindings for Ruby. So you would need to have wxWindows, Ruby,
wxRuby, and the browser itself on your system.
Eventually, my non-UI Ruby code could be packaged into a C-callable
library, so you could write an alternate front end for it. And
eventually wxRuby is likely to be mature enough to be able to statically
link wxWindows, so you could end up with a single executable. But all of
that is in the future.
So my question is: If I were to build a wxRuby darcs repository browser,
would people here use it? It seems unlikely that I could complete the
entire tool before darcs 1.0 would be ready, but it should at least be
functional by then.
I guess my other question is whether there are other Ruby developers
here who would be interested in contributing code to the browser.
More information about the darcs-users