Name: darcs version: 2.12.5 License: GPL License-file: COPYING Author: David Roundy , Maintainer: Stability: Experimental Category: Development Synopsis: a distributed, interactive, smart revision control system Description: 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 is based on a unique algebra of patches. . This smartness lets you respond to changing demands in ways that would otherwise not be possible. Learn more about spontaneous branches with darcs. Homepage: http://darcs.net/ Build-Type: Custom Cabal-Version: >= 1.16 extra-source-files: -- C headers src/*.h src/win32/send_email.h src/win32/sys/mman.h -- The contrib directory would make a sensible 'darcs-contrib' package contrib/_darcs.zsh, contrib/darcs_completion, contrib/cygwin-wrapper.bash, contrib/update_roundup.pl, contrib/upload.cgi, contrib/darcs-errors.hlint, contrib/runHLint.sh, README.md, CHANGELOG -- release data release/distributed-version, release/distributed-context -- testsuite tests/data/*.tgz tests/data/README tests/data/*.dpatch tests/data/example_binary.png tests/data/convert/darcs1/*.dpatch tests/data/convert/darcs2/*.dpatch tests/*.sh tests/README.test_maintainers.txt tests/bin/*.hs tests/network/sshlib tests/network/*.sh tests/lib harness/hstestdata.zip GNUmakefile source-repository head type: darcs location: http://darcs.net/ flag curl description: Use libcurl for HTTP support. -- in future this could extend to any other external libraries, -- e.g. libiconv flag pkgconfig description: Use pkgconfig to configure libcurl default: False flag static description: Build static binary default: False flag terminfo description: Use the terminfo package for enhanced console support. flag threaded description: Use threading and SMP support. default: True flag executable description: Build darcs executable default: True flag rts default: False -- We need optimizations by default, regardless of what Hackage says flag optimize default: True description: Build with optimizations (-O2) flag warn-as-error default: False manual: True description: Build with warnings-as-errors -- Note that the Setup script checks whether -liconv is necessary. This flag -- lets us override that decision. When it is True, we use -liconv. When it -- is False, we run tests to decide. flag libiconv Description: Explicitly link against the libiconv library. Default: False flag network-uri description: Get Network.URI from the network-uri package default: True -- ---------------------------------------------------------------------- -- darcs library -- ---------------------------------------------------------------------- Library default-language: Haskell2010 hs-source-dirs: src include-dirs: src exposed-modules: Darcs.Patch Darcs.Patch.Annotate Darcs.Patch.Apply Darcs.Patch.ApplyMonad Darcs.Patch.ApplyPatches Darcs.Patch.Bracketed Darcs.Patch.Bracketed.Instances Darcs.Patch.Bundle Darcs.Patch.Choices Darcs.Patch.Commute Darcs.Patch.CommuteFn Darcs.Patch.Conflict Darcs.Patch.Debug Darcs.Patch.Depends Darcs.Patch.Dummy Darcs.Patch.Effect Darcs.Patch.FileHunk Darcs.Patch.Index.Monad Darcs.Patch.Index.Types Darcs.Patch.Format Darcs.Patch.Info Darcs.Patch.Inspect Darcs.Patch.Invert Darcs.Patch.Match Darcs.Patch.Matchable Darcs.Patch.Merge Darcs.Patch.MonadProgress Darcs.Patch.Named Darcs.Patch.Named.Wrapped Darcs.Patch.OldDate Darcs.Patch.PatchInfoAnd Darcs.Patch.Patchy Darcs.Patch.Patchy.Instances Darcs.Patch.Permutations Darcs.Patch.Prim Darcs.Patch.Prim.Class Darcs.Patch.Prim.V1 Darcs.Patch.Prim.V1.Apply Darcs.Patch.Prim.V1.Coalesce Darcs.Patch.Prim.V1.Commute Darcs.Patch.Prim.V1.Core Darcs.Patch.Prim.V1.Details Darcs.Patch.Prim.V1.Read Darcs.Patch.Prim.V1.Show Darcs.Patch.Prim.FileUUID Darcs.Patch.Prim.FileUUID.ObjectMap Darcs.Patch.Prim.FileUUID.Apply Darcs.Patch.Prim.FileUUID.Coalesce Darcs.Patch.Prim.FileUUID.Commute Darcs.Patch.Prim.FileUUID.Core Darcs.Patch.Prim.FileUUID.Details Darcs.Patch.Prim.FileUUID.Read Darcs.Patch.Prim.FileUUID.Show Darcs.Patch.Progress Darcs.Patch.Read Darcs.Patch.Rebase Darcs.Patch.Rebase.Container Darcs.Patch.Rebase.Fixup Darcs.Patch.Rebase.Item Darcs.Patch.Rebase.Name Darcs.Patch.Rebase.Viewing Darcs.Patch.ReadMonads Darcs.Patch.RegChars Darcs.Patch.Repair Darcs.Patch.RepoPatch Darcs.Patch.RepoType Darcs.Patch.Set Darcs.Patch.Show Darcs.Patch.Split Darcs.Patch.Summary Darcs.Patch.SummaryData Darcs.Patch.TokenReplace Darcs.Patch.TouchesFiles Darcs.Patch.Type Darcs.Patch.Viewing Darcs.Patch.V1 Darcs.Patch.V1.Apply Darcs.Patch.V1.Commute Darcs.Patch.V1.Core Darcs.Patch.V1.Read Darcs.Patch.V1.Show Darcs.Patch.V1.Viewing Darcs.Patch.V2 Darcs.Patch.V2.Non Darcs.Patch.V2.RepoPatch Darcs.Patch.Witnesses.Eq Darcs.Patch.Witnesses.Ordered Darcs.Patch.Witnesses.Sealed Darcs.Patch.Witnesses.Show Darcs.Patch.Witnesses.Unsafe Darcs.Patch.Witnesses.WZipper Darcs.Prelude Darcs.Repository Darcs.Repository.ApplyPatches Darcs.Repository.Cache Darcs.Repository.Clone Darcs.Repository.PatchIndex Darcs.Repository.Diff Darcs.Repository.Flags Darcs.Repository.Format Darcs.Repository.HashedIO Darcs.Repository.HashedRepo Darcs.Repository.Internal Darcs.Repository.Job Darcs.Repository.Merge Darcs.Repository.InternalTypes Darcs.Repository.Match Darcs.Repository.Motd Darcs.Repository.Old Darcs.Repository.Packs Darcs.Repository.Pending Darcs.Repository.Prefs Darcs.Repository.Rebase Darcs.Repository.Repair Darcs.Repository.Resolution Darcs.Repository.State Darcs.Repository.Test Darcs.UI.ApplyPatches Darcs.UI.Commands Darcs.UI.Commands.Add Darcs.UI.Commands.Amend Darcs.UI.Commands.Annotate Darcs.UI.Commands.Apply Darcs.UI.CommandsAux Darcs.UI.Commands.Clone Darcs.UI.Commands.Convert Darcs.UI.Commands.Diff Darcs.UI.Commands.Dist Darcs.UI.Commands.GZCRCs Darcs.UI.Commands.Help Darcs.UI.Commands.Init Darcs.UI.Commands.Log Darcs.UI.Commands.MarkConflicts Darcs.UI.Commands.Move Darcs.UI.Commands.Optimize Darcs.UI.Commands.Pull Darcs.UI.Commands.Push Darcs.UI.Commands.Rebase Darcs.UI.Commands.Record Darcs.UI.Commands.Remove Darcs.UI.Commands.Repair Darcs.UI.Commands.Replace Darcs.UI.Commands.Revert Darcs.UI.Commands.Rollback Darcs.UI.Commands.Send Darcs.UI.Commands.SetPref Darcs.UI.Commands.Show Darcs.UI.Commands.ShowAuthors Darcs.UI.Commands.ShowBug Darcs.UI.Commands.ShowContents Darcs.UI.Commands.ShowDependencies Darcs.UI.Commands.ShowFiles Darcs.UI.Commands.ShowIndex Darcs.UI.Commands.ShowPatchIndex Darcs.UI.Commands.ShowRepo Darcs.UI.Commands.ShowTags Darcs.UI.Commands.Tag Darcs.UI.Commands.Test Darcs.UI.Commands.TransferMode Darcs.UI.Commands.Util Darcs.UI.Commands.Util.Tree Darcs.UI.Commands.Unrecord Darcs.UI.Commands.Unrevert Darcs.UI.Commands.WhatsNew Darcs.UI.Email Darcs.UI.External Darcs.UI.Defaults Darcs.UI.Flags Darcs.UI.Options Darcs.UI.Options.All Darcs.UI.Options.Core Darcs.UI.Options.Flags Darcs.UI.Options.Iso Darcs.UI.Options.Markdown Darcs.UI.Options.Matching Darcs.UI.Options.Util Darcs.UI.PatchHeader Darcs.UI.PrintPatch Darcs.UI.RunCommand Darcs.UI.SelectChanges Darcs.UI.TheCommands Darcs.UI.Usage Darcs.UI.Message.Send Darcs.Util.AtExit Darcs.Util.Bug Darcs.Util.ByteString Darcs.Util.CommandLine Darcs.Util.Compat Darcs.Util.Crypt.SHA1 Darcs.Util.Crypt.SHA256 Darcs.Util.DateMatcher Darcs.Util.DateTime Darcs.Util.Diff Darcs.Util.Diff.Myers Darcs.Util.Diff.Patience Darcs.Util.Download Darcs.Util.Download.Request Darcs.Util.Download.HTTP Darcs.Util.English Darcs.Util.Environment Darcs.Util.Exception Darcs.Util.Exec Darcs.Util.External Darcs.Util.File Darcs.Util.Global Darcs.Util.Hash Darcs.Util.Index Darcs.Util.IsoDate Darcs.Util.Lock Darcs.Util.Path Darcs.Util.Printer Darcs.Util.Printer.Color Darcs.Util.Progress Darcs.Util.Prompt Darcs.Util.Ratified Darcs.Util.Show Darcs.Util.SignalHandler Darcs.Util.Ssh Darcs.Util.Text Darcs.Util.Tree Darcs.Util.Tree.Hashed Darcs.Util.Tree.Monad Darcs.Util.Tree.Plain Darcs.Util.URL Darcs.Util.Workaround Bundled.Posix other-modules: Version Darcs.Util.Download.Curl Darcs.Util.Encoding c-sources: src/atomic_create.c src/fpstring.c src/maybe_relink.c src/umask.c src/system_encoding.c -- see http://bugs.darcs.net/issue1037 cc-options: -D_REENTRANT if os(windows) hs-source-dirs: src/win32 include-dirs: src/win32 other-modules: Darcs.Util.CtrlC Darcs.Util.Encoding.Win32 -- These are kept outside the Darcs.* namespace as System.Posix -- is well-established and its just trying to simulate that -- TODO try to abstract this out better System.Posix System.Posix.Files System.Posix.IO cpp-options: -DWIN32 c-sources: src/win32/send_email.c build-depends: Win32 >= 2.3 && < 2.4 else other-modules: Darcs.Util.Encoding.IConv c-sources: src/h_iconv.c build-depends: unix >= 2.6.0.1 && < 2.8 build-depends: base >= 4.8 && < 4.10, binary >= 0.5 && < 0.9, containers >= 0.5 && < 0.6, regex-compat-tdfa >= 0.95.1 && < 0.96, regex-applicative >= 0.2 && < 0.4, mtl >= 2.1.2 && < 2.3, transformers >= 0.3 && < 0.4.0.0 || > 0.4.0.0 && < 0.6, -- for the Control.Monad.Error -> Control.Monad.Except -- transition transformers-compat >= 0.4 && < 0.6, parsec >= 3.1 && < 3.2, fgl >= 5.5.0.1 && < 5.6, graphviz >= 2999.17.0.1 && < 2999.19, html >= 1.0.1.2 && < 1.1, filepath >= 1.3.0.1 && < 1.5.0.0, haskeline >= 0.6.3 && < 0.8, cryptohash >= 0.4 && < 0.12, base16-bytestring >= 0.1 && < 0.2, utf8-string >= 0.3.6 && < 1.1, vector >= 0.10.0.1 && < 0.13, tar >= 0.4 && < 0.6, data-ordlist == 0.4.*, attoparsec >= 0.11 && < 0.14, zip-archive >= 0.2.3 && < 0.4, async >= 2.0.1.4 && < 2.2, sandi >= 0.4 && < 0.5, unix-compat >= 0.1.2 && < 0.5, bytestring >= 0.10.0.2 && < 0.11, old-time >= 1.1 && < 1.2, time >= 1.5 && < 1.8, -- release notes of GHC 7.10.2 recommends to use text >= 1.2.1.3: -- https://mail.haskell.org/pipermail/haskell/2015-July/024641.html text >= 1.2.1.3 && < 1.3, directory >= 1.2.0.1 && < 1.4.0.0, process >= 1.1.0.2 && < 1.5.0.0, array >= 0.4.0.1 && < 0.6, random >= 1.0.1.1 && < 1.2, hashable >= 1.1.2.5 && < 1.3, mmap >= 0.5 && < 0.6, zlib >= 0.5.4.1 && < 0.7.0.0 if flag(optimize) ghc-options: -O2 else ghc-options: -O0 if flag(warn-as-error) ghc-options: -Werror -- Note: "if true" works around a cabal bug with order of flag composition -- fixed in Cabal 1.18 https://github.com/haskell/cabal/commit/cf0cf077ab6836584fc3bf51d867e63824811d4d if true ghc-options: -Wall -funbox-strict-fields -fwarn-tabs -fno-warn-dodgy-imports if impl(ghc>=8.0) -- This warning is new in GHC 8.0 and is not easy to fix ghc-options: -fno-warn-redundant-constraints if flag(curl) cpp-options: -DHAVE_CURL c-sources: src/hscurl.c cc-options: -DHAVE_CURL if flag(pkgconfig) pkgconfig-depends: libcurl else extra-libraries: curl includes: curl/curl.h if flag(network-uri) build-depends: network-uri == 2.6.*, network == 2.6.* else build-depends: network >= 2.4.1.2 && < 2.6 build-depends: HTTP >= 4000.2.8 && < 4000.4 -- The terminfo package cannot be built on Windows. if flag(terminfo) && !os(windows) build-depends: terminfo >= 0.3 && < 0.5 cpp-options: -DHAVE_TERMINFO -- if true to work around cabal bug with flag ordering if true default-extensions: BangPatterns PatternGuards GADTs TypeOperators FlexibleContexts FlexibleInstances ScopedTypeVariables KindSignatures DataKinds ConstraintKinds RankNTypes TypeFamilies NoMonoLocalBinds -- ---------------------------------------------------------------------- -- darcs itself -- ---------------------------------------------------------------------- Executable darcs if !flag(executable) buildable: False else buildable: True default-language: Haskell2010 main-is: darcs.hs hs-source-dirs: darcs if flag(optimize) ghc-options: -O2 else ghc-options: -O0 if flag(warn-as-error) ghc-options: -Werror -- Note: "if true" works around a cabal bug with order of flag composition if true ghc-options: -Wall -funbox-strict-fields -fwarn-tabs -fno-warn-dodgy-imports if flag(threaded) ghc-options: -threaded if flag(static) ghc-options: -static -optl-static -optl-pthread if flag(rts) ghc-options: -rtsopts if impl(ghc>=8.0) -- This warning is new in GHC 8.0 and is not easy to fix ghc-options: -fno-warn-redundant-constraints -- see http://bugs.darcs.net/issue1037 cc-options: -D_REENTRANT build-depends: darcs, base >= 4.8 && < 4.10 -- if true to work around cabal bug with flag ordering if true default-extensions: BangPatterns PatternGuards GADTs TypeOperators FlexibleContexts FlexibleInstances ScopedTypeVariables KindSignatures RankNTypes TypeFamilies NoMonoLocalBinds -- ---------------------------------------------------------------------- -- unit test driver -- ---------------------------------------------------------------------- test-suite darcs-test buildable: True type: exitcode-stdio-1.0 default-language: Haskell2010 main-is: test.hs hs-source-dirs: harness if os(windows) cpp-options: -DWIN32 build-depends: Win32 >= 2.2 && < 2.4 build-depends: darcs, base >= 4.8 && < 4.10, array >= 0.4.0.1 && < 0.6, bytestring >= 0.10.0.2 && < 0.11, cmdargs >= 0.10 && < 0.11, containers >= 0.1 && < 0.6, filepath >= 1.3.0.1 && < 1.5.0.0, mtl >= 2.1 && < 2.3, shelly >= 1.6.2 && < 1.7, split >= 0.2.2 && < 0.3, text >= 1.2.1.3 && < 1.3, directory >= 1.2.0.1 && < 1.4.0.0, FindBin >= 0.0 && < 0.1, QuickCheck >= 2.6 && < 2.10, HUnit >= 1.2.5.2 && < 1.6, test-framework >= 0.4.0 && < 0.9, test-framework-hunit >= 0.2.2 && < 0.4, test-framework-quickcheck2 >= 0.3 && < 0.4, zip-archive >= 0.2.3 && < 0.4 -- list all unit test modules not exported by libdarcs; otherwise Cabal won't -- include them in the tarball other-modules: Darcs.Test.Email Darcs.Test.Patch.Check Darcs.Test.Patch.Examples.Set1 Darcs.Test.Patch.Examples.Set2Unwitnessed Darcs.Test.Patch.WSub Darcs.Test.Patch.Info Darcs.Test.Patch.Properties.V1Set1 Darcs.Test.Patch.Properties.V1Set2 Darcs.Test.Patch.Properties.Generic Darcs.Test.Patch.Properties.GenericUnwitnessed Darcs.Test.Patch.Properties.Check Darcs.Test.Patch.Properties.RepoPatchV2 Darcs.Test.Patch.Arbitrary.Generic Darcs.Test.Patch.Arbitrary.PrimV1 Darcs.Test.Patch.Arbitrary.PrimFileUUID Darcs.Test.Patch.Arbitrary.RepoPatchV1 Darcs.Test.Patch.Arbitrary.RepoPatchV2 Darcs.Test.Patch.Rebase Darcs.Test.Patch.RepoModel Darcs.Test.Patch.Selection Darcs.Test.Patch.Utils Darcs.Test.Patch.V1Model Darcs.Test.Patch.FileUUIDModel Darcs.Test.Patch.WithState Darcs.Test.Patch Darcs.Test.Misc Darcs.Test.Util.TestResult Darcs.Test.Util.QuickCheck Storage.Hashed.Test if flag(optimize) ghc-options: -O2 else ghc-options: -O0 if flag(warn-as-error) ghc-options: -Werror -- Note: "if true" works around a cabal bug with order of flag composition if true ghc-options: -Wall -funbox-strict-fields -fwarn-tabs if flag(threaded) ghc-options: -threaded if flag(rts) ghc-options: -rtsopts -- see http://bugs.darcs.net/issue1037 cc-options: -D_REENTRANT -- if true to work around cabal bug with flag ordering if true default-extensions: BangPatterns PatternGuards GADTs TypeOperators FlexibleContexts FlexibleInstances ScopedTypeVariables KindSignatures DataKinds ConstraintKinds RankNTypes TypeFamilies NoMonoLocalBinds