Showing posts with label release. Show all posts
Showing posts with label release. Show all posts

Wednesday, April 4, 2018

Darcs 2.14.0 released

The Darcs team is pleased to announce the release of Darcs 2.14.0!

Darcs is a free, open source revision control system. It is:

  • Distributed: Every user has access to the full command set, removing boundaries between server and client or committer and non-committers.
  • Interactive: Darcs is easy to learn and efficient to use because it asks you questions in response to simple commands, giving you choices in your work flow. You can choose to record one change in a file, while ignoring another. As you update from upstream, you can review each patch name, even the full "diff" for interesting patches.
  • Smart: Originally developed by physicist David Roundy, darcs isbased on a unique algebra of patches.
Learn more about Darcs on http://darcs.net .

Supported GHC and Cabal versions

Darcs 2.14 can be compiled with GHC 8.0, 8.2 and 8.4, and
supports Cabal versions from 1.24.

Windows issues

Darcs 2.14 received many updates in its support of encoding.
However, it may still contain bugs, especially under Windows,
a platform for which we have fewer known users. Please let us
know if you encounter weird behaviour under Windows.

What's new

User Interface:

  •  fix encoding business, make DARCS_DONT_ESCAPE_8BIT=1 default (Ben Franksen, Ganesh Sittampalam)
  • show explicit dependencies in `darcs log -s` (Gian Piero Carrubba)
  • improve bash/zsh completion (Ben, Gian Piero)
  • no longer print an error message when ctrlc'ing pager (Guillaume Hoffmann)
  • darcs help markdown` mentions all files in `_darcs/prefs/` (Guillaume)
  • add patch index status to `show repo` command (Ben)
New features:

  • per-file conflict marking (Ben)
  • make it possible to use DARCS_SCP=rsync (Ben)
  • add --not-in-remote option to unrecord command (Ben)
Performance:

  • plug memory leak and improve efficiency in annotate (Ben)
  • save unneeded FL/RL reverses in SelectChanges module (Ben)
  • optimize token replace code and --look-for-replaces (Ben)
  • no longer show conflicting files on `whatsnew -s`, will reintrodue this
  • feature when it is done efficiently (Guillaume)
Developer-related:

  • separate display and storage of patches (Ben)
  • support GHC 8.2 and GHC 8.4 (Ganesh)
  • many refactorings in Darcs.Repository modules and API (Ben, Guillaume)
  • no longer track build dependencies in Setup.hs, nor use alpha, beta, rc names (Guillaume)
  • refactor `pull --reorder-patches` (Ben)
  • refactor SelectChanges (Ben)
  • remove Patchy typeclass and redundant constaints where possible (Guillaume)
  • fix build with cabal new-build (Francesco Ariis)
  • unit and quickcheck tests for inventories (Ben)
  • throw out all access to bytestring internals from Darcs.Util.ByteString (Ben)
  • refactor, simplify, and document hunk application (Ben)
  • drop support of old cache location and SHA1-hashed repos (Guillaume)
  • rely on GHC's own stack traces for bug reporting (Guillaume)
Issues resolved in Darcs 2.14:

  • fix mail encoding with '.' or '=' as last character (Timo von Holtz)
  • issue2526: whatsnew -l --boring should list boring files (Ben)
  • issue2208: replace detects existing force hunks in working (Ben)
  • issue2512: author name is written to repository after multiple-choice  prompt (Stephan-A. Posselt)
  • issue2359: convert --export mishandles Unicode filenames (Ben)
  • issue2545: prevent argument smuggling in SSH repository URLs (Gian Piero)
  • issue2581: fix rebase pull --reorder (Ben)
  • issue2575: fix unrevert with rebase (Ben)
  • issue2579: allow darcs send to work even if no MTA is installed
  • issue2555: include explicit dependencies in the output of `log -v` (Gian Piero)
  • issue2569: decoding multibyte characters (Ben)
  • issue2563: create remote repo in correct format in ssh tests (Ben)
  • issue2565: create _darcs dir after searching for an existing one (Ben)
  • issue2567: darcs whatsnew --unified (Ben)
  • issue2566: avoid renaming across file systems (Ben)
  • issue2564: delete wrong and irrelevant propConcatPS (Guillaume)
  • issue2559: remove trailing empty lines in patch header edition (Guillaume)
  • issue2536: mask out internal matchers in `show files` routing logic (Gian Piero)

Monday, September 5, 2016

darcs 2.12.1 release

The Darcs team is pleased to announce the release of Darcs 2.12.1!

The most important changes are:
  • fixes for building with GHC 8
  • drop support for GHC 7.6 and 7.8, i.e., require GHC 7.10
  • improvements in `darcs whatsnew` output with irrelevant files (Ben Franksen)
This release can be installed via cabal or (soon) stack. The 2.12 branch is also available as a darcs repository from http://darcs.net/releases/branch-2.12 .

Friday, April 29, 2016

darcs 2.12.0 release

The Darcs team is pleased to announce the release of Darcs 2.12.0.

Downloading

One way of installing Darcs 2.12.0 is with stack:

$ stack install darcs-2.12.0

Or first install the Haskell Platform (http://www.haskell.org/platform)
and install Darcs with cabal-install:

$ cabal update
$ cabal install darcs-2.12.0

You can also download the tarball from
http://darcs.net/releases/darcs-2.12.0.tar.gz and build it by hand.

The 2.12 branch is also available as a darcs repository from
http://darcs.net/releases/branch-2.12

What's new

Patch dependency graph export

The new command `darcs show dependencies`, enables to export the dependency graph of a repository (up to the latest tag, by default) as a Graphviz file:

whatsnew output and third-party VC frontend support

The flag `whatsnew --machine-readable` is a simplified version of `whatsnew -s` for easier parsability by third-party tools. Darcs 2.12 adds conflict markers to the output of whatnew when summarized (ie, when used with the `-s` or `--machine-readable` flags or via the `darcs status` alias). Thanks to this, Darcs support was reintroduced in meld 3.15.2 .

improvements for Git repository imports

File moves are converted to file moves primitives, instead of being file deletes and add as before. This enables to have smaller Darcs respositories with a more understandable history. This change adds to other improvements and fixes that make Git import more practical.

repository Weak Hashes

The command `darcs show repo` now shows a hash that is the XOR
of all hashes of the patches metadata of the repository. Being a XOR,
it does not depend on the patches' ordering. Also it is quite fast to
calculate. This Weak Hash can be useful to quickly check whether two
repositories of a single proyect have the same patches.

Thursday, July 9, 2015

darcs 2.10.1 release

Hi all,

The darcs team is pleased to announce the release of darcs 2.10.1 !

Downloading

The easiest way to install darcs 2.10.1 from source is by first installing the Haskell Platform (http://www.haskell.org/platform). If you have installed the Haskell Platform or cabal-install, you can install this release by doing:

$ cabal update
$ cabal install darcs-2.10.1

Alternatively, you can download the tarball from http://darcs.net/releases/darcs-2.10.1.tar.gz and build it by hand as explained in the README file.

The 2.10 branch is also available as a darcs repository from http://darcs.net/releases/branch-2.10

What's new in darcs 2.10.1 (since darcs 2.10.0)



  • support terminfo 0.4, network 2.6, zlib 0.6, quickcheck 2.8 and attoparsec 0.13
  • errorDoc now prints a stack trace (if profiling was enabled) (Ben Franksen)
  • beautified error messages for command line and default files (Ben Franksen)
  • generalized doFastZip for darcsden support
  • fixed the following bugs:
    • issue2449: test harness/shelly: need to handle mis-encoded/binary data (Ganesh Sittampalam)
    • issue2423: diff only respecting --diff-command when a diff.exe is present (Alain91)
    • issue2447: get contents of deleted file (Ben Franksen)
    • issue2307: add information about 'darcs help manpage' and 'darcs help markdown' (Dan Frumin)
    • issue2461: darcs log --repo=remoterepo creates and populates _darcs (Ben Franksen)
    • issue2459: cloning remote repo fails to use packs if cache is on a different partition (Ben Franksen)

Feedback

If you have an issue with darcs 2.10.1, you can report it on http://bugs.darcs.net/ . You can also report bugs by email to bugs@darcs.net, or come to #darcs on irc.freenode.net.

Sunday, April 19, 2015

darcs 2.10.0 release

Hi all,

The darcs team is pleased to announce the release of darcs 2.10.0.

Downloading

The easiest way to install darcs 2.10.0 from source is by first installing the Haskell Platform (http://www.haskell.org/platform). If you have installed the Haskell Platform or cabal-install, you can install this release by doing:

$ cabal update
$ cabal install darcs-2.10.0

Alternatively, you can download the tarball from http://darcs.net/releases/darcs-2.10.0.tar.gz and build it by hand as explained in the README file.

The 2.10 branch is also available as a darcs repository from http://darcs.net/releases/branch-2.10

Feedback

If you have an issue with darcs 2.10.0, you can report it via the web on http://bugs.darcs.net/ . You can also report bugs by email to bugs at darcs.net, or come to #darcs on irc.freenode.net.

What's new since darcs 2.8.5

New features

  • darcs rebase: enable deep amending of history (Ganesh Sittampalam)
  • darcs pull --reorder: keep local-only patches on top of mainstream patches (Ale Gadea, Ganesh Sittampalam)
  • darcs dist --zip: generate a zip archive from a repository (Guillaume Hoffmann)
  • patch bundle contexts are minimized by default. Enables bundles to be applied to more repositories. (Guillaume Hoffmann)
  • darcs convert export/import for conversion to/from VCSes supporting the fast-export protocol (Petr Rockai, Owen Stephens, Guillaume Hoffmann, Lele Gaifax, Ben Franksen)
  • darcs test --backoff: exponential backoff test strategy, faster than bisect on big repositories (Michael Hendricks)
  • work normally on sshfs-mounted repositories (Nathaniel Filardo)
  • automatic detection of file/directory moves, and of token replaces (Jose Neder)
  • patience diff algorithm by default (Jose Neder)
  • interactive mode for whatsnew (Dan Frumin)
  • tag --ask-deps to create tags that may not include some patches (Ganesh Sittampalam)

User Interface

  • add a last question after all patches have been selected to confirm the whole selection (Florent Becker)
  • command names:
    • clone is the new name of get and put
    • log is the new name of changes
    • amend is the new name of amend-record
  • show output of log into a pager by default (Guillaume Hoffmann)
  • the output of log is more similar to git's:
    • show patch hash in UI (hash of the patch's metadata)
    • put author and date on separate lines (Guillaume Hoffmann)
  • enable to match on patch hash prefix with -h and --hash (Guillaume Hoffmann, Gian Piero Carrubba)
  • better messages:
    • better error messages for http and ssh errors (Ernesto Rodriguez)
    • init, add, remove, move and replace print confirmation messages (Guillaume Hoffmann)
  • rollback only happens in the working copy (Florent Becker, Guillaume Hoffmann)
  • darcs send no longer tries to send a mail by default (Eric Kow)
  • when no patch name given, directly invoke text editor (Jose Neder, Guillaume Hoffmann)
  • use nano as default text editor instead of vi (Guillaume Hoffmann)
  • keep log files for patch name and mail content in _darcs (Ale Gadea)
  • optimize and convert are now supercommands (Guillaume Hoffmann)
  • improve darcs help environment and darcs help markdown (Radoslav Dorcik, Guillaume Hoffmann)
  • warn about duplicate tags when creating a new one (Ale Gadea)
  • allow darcs mv into known, but deleted in working, file (Owen Stephens)
  • improve--not-in-remote, allowing multiple repos and use default (Owen Stephens)

Performance

  • faster darcs diff (Petr Rockai)
  • faster log and annotate thanks to patch index data structure (BSRK Aditya, Benedikt Schmidt, Eric Kow, Guillaume Hoffmann, Ganesh Sittampalam)
  • faster push via ssh by using compression (Ben Franksen)
  • cloning to an ssh destination (formerly darcs put) is more efficient (Guillaume Hoffmann)
  • faster internal representation of patch hashes (Guillaume Hoffmann)
  • when cloning from http, use packs in a more predictable way (Guillaume Hoffmann)
  • store global cache in bucketed format (Marcio Diaz)
  • require and support GHC 7.4 to 7.10 (Ganesh Sittampalam)
  • replace type witness CPP macros with plain Haskell (Eric Kow)
  • hashed-storage is bundled into darcs (Ganesh Sittampalam)
  • replace C SHA256 bindings with external libraries (Ganesh Sittampalam)
  • move the bits of the datetime package we need into Darcs.Util.DateTime (Ganesh Sittampalam)
  • build Darcs once rather than thrice. (Eric Kow)
  • remove home page and manual from darcs' repository (Guillaume Hoffmann)
  • run tests through cabal test (Ryan Desfosses)
  • run fewer darcs-1 related tests in testsuite (Ganesh Sittampalam)
  • Use custom replHook to fix cabal repl (Owen Stephens)
  • darcs.cabal: make Haskell2010 the default-language for all stanzas (Ben Franksen)
  • always compile with mmap support (Ganesh Sittampalam)
  • new options subsystem (Ben Franksen)
  • various cleanups, code restructurations and refactoring, haddocks (Will Langstroth, Owen Stephens, Florent Becker, Guillaume Hoffmann, Michael Hendricks, Eric Kow, Dan Frumin, Ganesh Sittampalam)

Issues resolved in Darcs 2.10

  • issue346: implement "patience diff" from bzr (Jose Neder)
  • issue642: Automatic detection of file renames (Jose Neder)
  • issue822: generalized the IO Type for better error messages and exception handling (Ernesto Rodriguez)
  • issue851: interactive mode for whatsnew (Dan Frumin)
  • issue904: Fix record on Linux/FUSE/sshfs (fall back to sloppy locks automatically) (Nathaniel Filardo)
  • issue1066: clone to ssh URL by locally cloning then copying by scp (Guillaume Hoffmann)
  • issue1268: enable to write darcs init x (Radoslav Dorcik)
  • issue1416: put log files in tempdir instead of in working dir (Ale Gadea)
  • issue1514: send --minimize-context flag for send (Guillaume Hoffmann)
  • issue1624: bucketed cache (Marcio Diaz)
  • issue1828: file listing and working --dry-run for mark-conflicts (Guillaume Hoffmann)
  • issue1987: Garbage collection for inventories and patches (Marcio Diaz)
  • issue2181: put cache in $XDG_CACHE_HOME (~/.cache by default) (Guillaume Hoffmann)
  • issue2193: make that finalizeTentativeChanges no longer run tests (Guillaume Hoffmann)
  • issue2198: move repo testing code to Darcs.Repository.Test (Guillaume Hoffmann)
  • issue2200: darcs replace complains if no filepaths given (Owen Stephens)
  • issue2204: do not send mail by default (Eric Kow)
  • issue2237: prevent patch index creation for non-hashed repos (Owen Stephens)
  • issue2235: Accept RFC2822 dates (Dave Love)
  • issue2246: add default boring entry for emacs session save files (Owen Stephens)
  • issue2253: attempting to use the patch index shouldn't create it on OF repos (Owen Stephens)
  • Issue2278: Document default value for --keep-date / --no-keep-date (Mark Stosberg)
  • issue2199: getMatchingTag needs to commute for dirty tags (Ganesh Sittampalam)
  • issue2247: move patch index creation into the job running code (Ganesh Sittampalam)
  • issue2238: let optsModifier remove all occurrences of LookForAdds (Gian Piero Carrubba)
  • issue2236: make 'n' an alias for 'q' in lastregret questions (Gian Piero Carrubba)
  • issue2155: Expurgate the non-functional annotate --xml-output option (Dave Love)
  • issue2248: always clean up rebase-in-progress state (Ganesh Sittampalam)
  • issue2270: fixed darcs changes -i --only-to-files (Sebastian Fischer)
  • issue2282: don't allow remote operations to copy the rebase patch (Ganesh Sittampalam)
  • issue2287: obliterate -O doesn't overwrite existing file. (Radoslav Dorcik)
  • issue2227: move the rebase patch to the end before an amend-record (Ganesh Sittampalam)
  • issue2277: rebase suspend and unsuspend supports --summary. (Radoslav Dorcik)
  • issue2311: posthook for 'get' should run in created repo (Sebastian Fischer)
  • issue2312: posthooks for 'record' and 'amend-record' should receive DARCS_PATCHES (Sebastian Fischer)
  • issue2163: new option for amend, select author for patch stealing. (Radoslav Dorcik)
  • issue2321: when no patch name given, directly invoke text editor (Jose Neder)
  • issue2320: save prompted author name in ~/.darcs/author instead of ./_darcs/prefs/author (Jose Neder)
  • issue2250: tabbing in usageHelper - pad by max length of command name (BSRK Aditya)
  • issue2309: annotate includes line numbers (Owen Stephens)
  • issue2334: fix win32 build removing file permission functions (Guillaume Hoffmann)
  • issue2343: darcs amend-record does not record my change (Jose Neder)
  • issue2335: one liner when adding tracked files if not verbose (Guillaume Hoffmann)
  • issue2313: whatsnew -l: Stack space overflow (Jose Neder)
  • issue2347: fix amend-record --prompt-long-comment (Guillaume Hoffmann)
  • issue2348: switch to cabal's test framework (Ryan Desfosses)
  • issue2209: Automatically detect replace (Jose Neder)
  • issue2332: ignore case of characters in prompt (Guillaume Hoffmann)
  • issue2263: Option --set-scripts-executable is not properly documented (Ale Gadea)
  • issue2367: rename amend-record to amend, make --unrecord more visible (Guillaume Hoffmann)
  • issue2345: solution using cabal's checkForeignDeps (Dan Frumin)
  • issue2357: switching to regex-compat-tdfa for unicode support (Dan Frumin)
  • issue2379: only use packs to copy pristine when up-to-date (Guillaume Hoffmann)
  • issue2365: correctly copy pristine in no-working-dir clones (Guillaume Hoffmann)
  • issue2244: darcs tag should warn about duplicate tags (Ale Gadea)
  • issue2364: don't break list of 'bad sources' (Sergei Trofimovich)
  • issue2361: optimize --reorder runs forever with one repository (Ale Gadea)
  • issue2364: fix file corruption on double fetch (Sergei Trofimovich)
  • issue2394: make optimize a supercommand (Guillaume Hoffmann)
  • issue2396: make convert a supercommand and enhance help strings (Guillaume Hoffmann)
  • issue2314: output-auto-name in defaults file (Ben Franksen)
  • issue2388: check if inventories dir has been created (Owen Stephens)
  • issue2249: Rename isFile to isValidLocalPath and WorkRepoURL to WorkRepoPossibleURL (Mateusz Lenik)
  • issue2153: allow skipping backwards through depended-upon patches (Andreas Brandt)
  • issue2380: allow darcs mv into known, but deleted in working, file (Owen Stephens)
  • issue2403: need to avoid moving the rebase patch to the end (Ganesh Sittampalam)
  • issue2409: implement darcs rebase apply (Ganesh Sittampalam)
  • issue2385: invoke pager without temporary file (Guillaume Hoffmann)
  • issue2333: better error message when pushing and darcs not in path (Ben Franksen)

Known issues

These are known new issues in darcs 2.10.0:
  • issue2269: rebase should warn about stolen patches at suspend, not unsuspend
  • issue2272: darcs rebase unsuspend should automate or semi-automate handling unrecorded changes
  • issue2276: darcs rebase unsuspend needs UI improvements for "You are not... Amend anyway?"
  • issue2359: convert --export mishandles Unicode filenames
  • issue2372: Please remove "HINT: I could not reach..." message
  • issue2423: diff only respecting --diff-command when a diff.exe is present
  • issue2436: rollback --patches takes ages before first prompt
  • issue2445: internal error if suspended patch is pulled into repository again
  • issue2449: test harness/shelly: need to handle mis-encoded/binary data

Sunday, September 20, 2009

darcs 2.3.1: better docs, less bugs

Dear Darcs users,


The darcs team would like to announce the immediate availability of a new stable version of darcs, 2.3.1. This is the latest development in the 2.3 branch, which brought significant performance improvements. Performance improvement continues to be a core focus of darcs development. Darcs 2.4, planned for January, will build upon the improvements in 2.3 to be even faster.

The user-visible changes in darcs 2.3.1 are:

  • Fix bugs in optimizations in 2.3.0
  • Documentation improvements
  • Remove autoconf build system

A more complete list of changes in this and older versions of darcs can be

found at http://www.darcs.net/NEWS .


Installing


You can obtain the source tarball at the following address:

The build instructions are available in the enclosed README file in this tarball. Moreover, if you have cabal-install available, you can install latest stable release of darcs by issuing the following commands (no tarballs needed):

$ cabal update

$ cabal install darcs

This should give you a darcs binary in `~/.cabal/bin` -- you should probably add this to your PATH. More detailed instructions for installing on Windows are available near the end of this announcement.


Installing on Windows


To install darcs on Windows systems from scratch, please download the Haskell Platform and MSYS:

After installing both, you should have an "MSYS" icon: run MSYS and in the terminal window type (the `$` character denotes the prompt, do not repeat it):

$ cabal update

$ cabal install darcs -f-curl

This should download, compile and install all required dependencies and also darcs itself. The resulting darcs executable will be placed into the Haskell Platform executables folder, and should be accessible from the MSYS shell (just type "darcs --version" to check).

Thursday, July 23, 2009

darcs 2.3.0 is released!

We are pleased to announce the release of Darcs 2.3.0. This is the second of our time-based (biannual) releases and we hope to have many more. Here are some of the key changes from the last release:
  1. Better performance - we believe the darcs whatsnew command is now much faster for hashed repositories. If you notice these improvements, you may be pleased to know that Petr's Summer of Code project aims to extend these improvements to the rest of Darcs. In the meantime, you may also notice improvements in darcs record and darcs changes; reduced memory consumption in darcs check and repair; and also support for hardlinks on NTFS, which allows for faster repeated retrievals on Windows.

  2. Easier installation - Darcs now uses the Cabal build method by default which greatly simplifies installation. Combined with the upcoming Haskell Platform, building Darcs from source is now painless, even under Windows. Future versions of Darcs will use Cabal only.

  3. Improved repository integrity - The new "darcs gzcrcs" feature detects and repairs files with a broken CRC in your darcs repository and caches. To the best of our knowledge, these files were only produced by Darcs 2.0.2 - 2.1.2, and only within "old fashioned" (non-hashed) repositories, and only the CRCs are affected. In any case, we highly recommend upgrading to Darcs 2.3.0 so that you can repair any such files. See issue844 for more details.
Darcs 2.3.0 requires GHC 6.8 or higher, and we recommend using GHC 6.10 for best results. See the official release announcement for more details about this, as well as a more complete list of bug fixes and new features.

Friday, January 16, 2009

darcs 2.2.0 is released!

what's new?

Here are four notable changes since the last release. In short, darcs is a bit faster and works better under Windows:
  • Improvements in Windows support.
  • Performance improvements in darcs repair and robustness improvements in darcs check.
  • First stab at libdarcs — when building through Cabal, all of darcs implementation is now exposed in modules. No API guarantees whatsoever.
  • Low-level optimisations in string handling and filesystem code.
There's a couple of cool new features and some bug fixes, 18 issues resolved overall. Please see the release announcement for more details.

what comes next?

The next major release is scheduled for this July (that's 2009-07), with some nice performance enhancements in store.

The darcs team has been infected with the benchmarking and hackathon habits. In our first darcs hacking sprint last October, we saw some interesting work on some long term improvements: a filename-to-patch cache to look patches up faster, and a notion of "packs" to reduce the effect of latency fetching files and patches over a network. We hope to continue this work in second hacking sprint and up to our next release.

Meanwhile, we may also be hosting a performance hacking contest to see what kinds of cool optimisations the darcs and Haskell communities can come up with.

In short, we'll be having a lot of fun making darcs faster for July. We hope you'll like the results!

Sunday, January 4, 2009

darcs 2.2.0pre2 ready for testing!

Release Manager Petr Ročkai has announced the second pre-release of darcs 2.2.0. There are two versions you can grab:
  • the official version, using the traditional configure, make, make install infrastructure:
    http://repos.mornfall.net/darcs/darcs-2.2.0pre2.tar.gz
  • and a more experimental cabalised version:
    http://repos.mornfall.net/darcs/darcs-2.1.98.2.tar.gz
More details in the announcement!

(P.S. the darcs team is still recruiting for a Darcs Weekly News editor)

Monday, November 17, 2008

darcs 2.1.2 released!

We are pleased to announce the release of darcs 2.1.2, which you can
download from

http://darcs.net/darcs-2.1.2.tar.gz

This is deliberately a very modest release, containing as few changes
from darcs 2.1.0 as we can manage. The changes we have included are
GHC 6.10 support and a bugfix for Windows (notably, one which makes
darcs help work from the DOS prompt without the need for MSYS or
Cygwin). See the attached ChangeLog for details.

So what's next? We have been doing a lot of work and we're eager to
show you some of the results. Our next release is scheduled for January
of 2009, with performance improvements from the darcs hacking sprint,
improved Windows support, a new optional Cabal-based build and a first
cut at libdarcs.

Followers