darcs 2.18.1 💾

Darcs is a cross-platform version control system. It's similarly decentralized as git, mercurial or subversion but with a very different management approach. It focuses on changes rather than trees/snapshots. Which allows it to provide a freer way of working, and a much simpler CLI and a highly interactive user interface. It can work in an offline mode, provides local preparations, easy (non-)branching and merging, email patch sending, parallel development and builtin cherry-pickying from cha

minor feature: * Supports GHC 9.8 and the most recent version of other dependencies at the time of release, with the exception of the tls 2.0 package, which has been held back because of problems connecting to hub.darcs.net (see https://bugs.darcs.net/issue2715). * Substantial rewrite of the 'darcs test' command. The most important user visible change is that a test script can now return an exit code of 125 to reflect an untestable/skipped state (as with with "git bisect run"). This in turn means that a group of patches can be found to be responsible for a failure rather than just a single one. By default, Darcs will try to minimise such a group by reordering patches to remove irrelevant ones from the initial group found from the patch ordering in the repository. This behaviour can be disabled with --no-shrink-failure. * Remove support for downloading via curl This is no longer particularly useful as we now use modern, maintained Haskell libraries for native HTTP downloading, and substantially simplifies this area of the code. * Patch index: Significant performance improvement The patch index is used in commands like annotate and log. A couple of performance improvements were made that should speed up using the patch index. * Progress reporting Progress reports are now provided during more long-running operations, including updating the "index" (a cache that speeds up detecting changes in the working directory), and during merge operations. They also behave better on Windows and when outputting long lines. * Other changes/fixes: * Use hardlinks more often to share files between repositories/caches. * Support --leave-test-dir for all commands that support --test * Avoid extraneous "repo:." entries in _darcs/prefs/sources issue2672 * Add 'darcs clean' command as an alias for 'darcs revert -l' * 'darcs rebase unsuspend': add more patch editing options *

GNU GPL c haskell darcs scm dvcs version-control patch-management