Greetings all,
ParenScript has migrated [4] from Darcs to Git for version control. The new repository can be cloned with the command:
git clone http://common-lisp.net/project/parenscript/git/parenscript
Development momentum and adoption has clearly favored Git in recent years; it is used on an increasing number of major projects (the Linux kernel, X.org, Rails, etc.) [2]. There is no risk of it being abandoned anytime soon.
If it were just that though, I probably wouldn't have gone through the pain of converting. The ParenScript darcs repository has become quite slow, especially given its modest size. There are a handful of complex merges in the history that can trigger an exponential meltdown in certain situations [1]. Avoiding more of these types of merges basically means giving up the unique features of Darcs anyway.
I'm a big fan of Darcs, but there is also much to love about Git. Once I discovered the power of `git rebase -i`, I stopped missing Darcs. Here are approximate translations for common commands you'll use:
darcs get | git clone darcs rec | git commit -v darcs pull | git pull darcs send | git format-patch && git send-email
Finally, I do understand that this change may be inconvenient for anyone with a lot of local unsubmitted patches [3]. This change should be best for the project in the long run.
Cheers,
-- Travis
[1] For example, try pulling or unpulling the patch from Tue Jun 26 21:05:23 UTC 2007.
[2] In the Lisp world, Kevin Rosenberg has notably converted all of his project repositories to Git.
[3] If you find yourself in this position, you have a couple of options:
* Clean up your changes and submit them upstream before your branch diverges too much.
* Use darcs2git to convert your Darcs repository, then use git-rebase to splice your local changes onto the upstream repository.
[4] The old repository is still available for now, but it won't be receiving any more commits.
parenscript-devel@common-lisp.net