ACL wants :utf8 for the external-format, not :utf-8-unix. This fixes that.
On 10/11/05, Helmut Eller heller@common-lisp.net wrote:
- Svein Ove Aas [2005-10-10 20:31+0200] writes:
ACL wants :utf8 for the external-format, not :utf-8-unix. This fixes that.
Applied. Thanks.
After having some trouble reintegrating the patch, I had an idea.
Have you given any thought to switching to a distributed RCS such as Darcs? It seems like it would match the development style much better, not to mention make it easier to track down problems such as the one that killed Allegro recently. You could still have an anonymous CVS gateway for those that don't wish to install new software, of course.
(I'm in the middle of tracking down that bug via binary search. It seems likely that it'll take a while; having changesets (and locally) would at least speed things up.)
* Svein Ove Aas [2005-10-11 00:52+0200] writes:
Have you given any thought to switching to a distributed RCS such as Darcs?
Not seriously, but I too get increasingly annoyed with CVS. Especially commits to the larger files slime.el and ChangeLog are now rather slow. (Not to mention the bug in Emacs' VC package which makes it impossible to use compression with CVS.)
I used Darcs only a tiny bit to fetch the code of other people and I don't know how well it works in a multi-user setting. My primary concerns are:
- is there a smooth way for the transition so that we don't lose information like log entries and "who did what"?
- how mature is Luke's darcs-mode? Or is there something better?
It seems like it would match the development style much better, not to mention make it easier to track down problems such as the one that killed Allegro recently. You could still have an anonymous CVS gateway for those that don't wish to install new software, of course.
It would be useful, if we could keep CVS as the default and offer Darcs as alternative until we know that Darcs is up to the task. Is that possible?
Helmut.
Helmut Eller heller@common-lisp.net writes:
- how mature is Luke's darcs-mode? Or is there something better?
darcs-mode is very basic and scarcely touched since it was created. I haven't been using darcs very much (but I use darcs-mode when I do.)
The illustrious John Wiegley has more recently written a fancier darcs interface that I haven't tried myself:
http://www.newartisans.com/johnw/Emacs/darcsum.el
It would be useful, if we could keep CVS as the default and offer Darcs as alternative until we know that Darcs is up to the task. Is that possible?
There are some cvs->darcs converters. I have tried one called 'tailor' that seemed quite okay.
I'm also frustrated with CVS and fond of Darcs but I do think it pays to be conservative with revision control. How about if some Darcs fan creates a Darcs mirror of SLIME CVS (e.g. on common-lisp.net) and we see how many people use it and how they like it.
NB: I have an uneasy feeling that Darcs is not quite as simple as it looks. Nikodemus Siivola and me had a project to suck lots of Darcs repos into one Whacking Great Big repo but discovered that you can't 'pull' from multiple repos if they don't have a common ancestor. (I assumed that all repos would have "the null repository" as a common ancestor.) I asked about this on the Darcs list and got an answer that I didn't understand and this made me uncomfortable because I thought that I understood how Darcs works.
Cheers, Luke
P.S. Martin Pool is a clever fellow who is writing a Darcs-like version control system, http://www.bazaar-ng.org/, but that is much more bleeding edge.
P.P.S. I seem to have some changes to darcs-mode in my local repo but I'm unable to push them just now. Maybe I haven't had enough coffe but I'm confused about not being able to push or pull just now:
luke@monkey:~/hacking/darcs-mode$ darcs push Pushing to /home/luke/public_html/repos/darcs-mode/...
Fri Feb 11 10:18:09 CET 2005 Luke Gorrie luke@member.fsf.org * darcs-find-file-hook fixed for directory not existing Shall I push this patch? (1/2) [ynWvxqadjk], or ? for help: y
Fri Apr 8 19:04:19 CEST 2005 Tomasz Cholewo cholewo@lexmark.com * Fix for XEmacs: define temporary-file-directory. Shall I push this patch? (2/2) [ynWvxqadjk], or ? for help: y
darcs failed: Refusing to apply patches leading to conflicts. There are conflicts in the following files: ./darcs.el
luke@monkey:~/hacking/darcs-mode$ darcs pull Pulling from "/home/luke/public_html/repos/darcs-mode/"... No remote changes to pull in!
Luke Gorrie luke@synap.se writes:
I'm also frustrated with CVS and fond of Darcs but I do think it pays to be conservative with revision control. How about if some Darcs fan creates a Darcs mirror of SLIME CVS (e.g. on common-lisp.net) and we see how many people use it and how they like it.
How about Subversion ? It's basically CVS done right so switching to it is a no brainer IMO.
Or better a Subversion + Darcs instead of a CVS + Darcs. There is a multi tool converter here http://www.darcs.net/DarcsWiki/Tailor
Anyway both Darcs and Subversion are better than CVS A (maybe biaised ;-) comparison is here: http://darcs.net/DarcsWiki/DifferencesFromSubversion
Marc
Il 2005-10-11, Luke Gorrie luke@synap.se ha scritto:
I'm also frustrated with CVS and fond of Darcs but I do think it pays to be conservative with revision control. How about if some Darcs fan creates a Darcs mirror of SLIME CVS (e.g. on common-lisp.net) and we see how many people use it and how they like it.
There is already a slime repository on alioth: http://cl-debian.alioth.debian.org/repository/pvaneynd/slime/ and http://cl-debian.alioth.debian.org/repository/pvaneynd/slime-upstream/
it is used to coordinate the debian packaging.
So far darcs has been quite easy to use, with 2 reservations: - large changes sometimes make it loop. So sbcl for example is not imported into a sbcl-upstream darcs and then pulled into the sbcl debian package like one should do. Instead both are also CVS repositories and we update in place and record that as the 'new version'.
- sometimes I would pull a tagged version and some files are not there. I need to investigate this further as I think I misunderstood how to pull a certain tagged version of the tree.
Groetjes, Peter
On 10/11/05, Helmut Eller heller@common-lisp.net wrote:
- Svein Ove Aas [2005-10-11 00:52+0200] writes:
Have you given any thought to switching to a distributed RCS such as Darcs?
Not seriously, but I too get increasingly annoyed with CVS. Especially commits to the larger files slime.el and ChangeLog are now rather slow. (Not to mention the bug in Emacs' VC package which makes it impossible to use compression with CVS.)
I used Darcs only a tiny bit to fetch the code of other people and I don't know how well it works in a multi-user setting. My primary concerns are:
- is there a smooth way for the transition so that we don't lose information like log entries and "who did what"?
The simple answer is yes - Darcs functionality is a superset of CVS, and people have already looked at the problem.
The ChangeLog is a bit of a problem. Darcs doesn't need it, and shouldn't have it; where CVS is usually a linear sequence of commits, Darcs is based on a pretty much arbitrary graph of patches (changesets), some of which depend on others. This doesn't lend itself well to having changelogs. Darcs provides its own solution, namely the commit messages (which contain all the information we currently put in the changelog).
A Darcs->CVS converter would have to autogenerate the changelog, which is fine; we could even use the output of "darcs changes" with no filtering. The other way around is probably impossible, though. There are frequently single commits with multiple changelog entries, which means it's impossible to tell which belongs to which; also, commits are per-file, not per-changeset.
We wouldn't actually *lose* anything by moving to Darcs, but we're losing information (relatively speaking) every time we commit to CVS.
- how mature is Luke's darcs-mode? Or is there something better?
There are various modes at http://www.darcs.net/DarcsWiki/CategoryEmacs, but personally I've never felt a need for any of them - I use Darcs directly. The general state of things seems to be "immature, but still better than CVS".
It seems like it would match the development style much better, not to mention make it easier to track down problems such as the one that killed Allegro recently. You could still have an anonymous CVS gateway for those that don't wish to install new software, of course.
It would be useful, if we could keep CVS as the default and offer Darcs as alternative until we know that Darcs is up to the task. Is that possible?
No, by which I mean "not usefully"; you lose the Darcs metadata once you reintegrate a patch with the CVS tree. Since this same metadata is required to keep track of divergent trees, things would quickly get awkward.
It's probable that the best way is to jump in feet first. Even so, I'm putting a raw converted CVS copy of Slime at http://brage.info/~svein/repos/slime-cvs/, so you can try before you buy. (Said conversion is going to take a while; having a raw copy of the CVS repository would help.)
On the other hand, if the official Slime tree is to use Darcs, then everyone with commit access also ought to use it; integrating CVS patches with a Darcs tree would be an annoying, neverending job. It is, admittedly, a large change; I wouldn't blame anyone for keeping the status quo.
Also see http://darcs.net/DarcsWiki/DifferencesFromCVS for the most obvious differences.