diff options
author | Joey Hess <joeyh@debian.org> | 2013-11-22 11:16:03 -0400 |
---|---|---|
committer | Joey Hess <joeyh@debian.org> | 2013-11-22 11:16:03 -0400 |
commit | 7e592e1d6ed5e0b25b37215da7558c6324688d6f (patch) | |
tree | 75a86ff02e9311bcff817f2dcfe9b0a6ca1b5708 /Build/Configure.hs | |
download | git-repair-7e592e1d6ed5e0b25b37215da7558c6324688d6f.tar.gz |
git-repair (1.20131122) unstable; urgency=low
* Added test mode, which can be used to randomly corrupt test
repositories, in reproducible ways, which allows easy
corruption-driven-development.
* Improve repair code in the case where the index file is corrupt,
and this hides other problems.
* Write a dummy .git/HEAD if the file is missing or corrupt, as
git otherwise will not treat the repository as a git repo.
* Improve fsck code to find badly corrupted objects that crash git fsck
before it can complain about them.
* Fixed crashes on bad file encodings.
* Can now run 10000 tests (git-repair --test -n 10000 --force)
with 0 failures.
# imported from the archive
Diffstat (limited to 'Build/Configure.hs')
-rw-r--r-- | Build/Configure.hs | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/Build/Configure.hs b/Build/Configure.hs new file mode 100644 index 0000000..5f41a1b --- /dev/null +++ b/Build/Configure.hs @@ -0,0 +1,31 @@ +{- Checks system configuration and generates SysConfig.hs. -} + +module Build.Configure where + +import System.Environment +import Control.Applicative +import Control.Monad.IfElse + +import Build.TestConfig +import Build.Version +import Git.Version + +tests :: [TestCase] +tests = + [ TestCase "version" getVersion + , TestCase "git" $ requireCmd "git" "git --version >/dev/null" + , TestCase "git version" getGitVersion + , TestCase "nice" $ testCmd "nice" "nice true >/dev/null" + ] + +getGitVersion :: Test +getGitVersion = Config "gitversion" . StringConfig . show + <$> Git.Version.installed + +run :: [TestCase] -> IO () +run ts = do + args <- getArgs + config <- runTests ts + writeSysConfig config + whenM (isReleaseBuild) $ + cabalSetup "git-repair.cabal" |