summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Common.hs2
-rw-r--r--[l---------]debian/changelog162
-rw-r--r--debian/control11
-rw-r--r--[l---------]debian/copyright40
-rw-r--r--debian/patches/fix-build-with-quickcheck-2.8.2.patch34
-rw-r--r--debian/patches/patch-common.hs-to-avoid-duplicate-impor.patch27
-rw-r--r--debian/patches/patch-duplicate-arbitrary-instance-out-o.patch20
-rw-r--r--debian/patches/series4
-rw-r--r--debian/patches/split-out-module-to-work-around-badly-na.patch70
-rw-r--r--debian/source/format1
10 files changed, 364 insertions, 7 deletions
diff --git a/Common.hs b/Common.hs
index 6bd2e7a..7976789 100644
--- a/Common.hs
+++ b/Common.hs
@@ -25,7 +25,7 @@ import Utility.Exception as X
import Utility.SafeCommand as X
import Utility.Process as X
import Utility.Path as X
-import Utility.Directory as X
+import Utility.Directory as X hiding (getFileSize)
import Utility.Monad as X
import Utility.Data as X
import Utility.Applicative as X
diff --git a/debian/changelog b/debian/changelog
index a535994..6dc307f 120000..100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1 +1,161 @@
-../CHANGELOG \ No newline at end of file
+git-repair (1.20151215-2) unstable; urgency=medium
+
+ * Adopt package.
+ Maintainer has approved this via personal communication.
+ * Point Vcs-* fields at my repo.
+ * Use https in Homepage: field & Format: field in d/copyright.
+ * Declare compliance with Debian Policy 4.4.1.
+ * Drop debian/gbp.conf.
+ * Declare Rules-Requires-Root: no.
+ * d/copyright:
+ - Point Source: field at upstream git repo
+ - Fix upstream copyright years to include 2014 & 2015
+ - Replace `License: GPL-3+` body with standard text for this license.
+
+ -- Sean Whitton <spwhitton@spwhitton.name> Wed, 01 Jan 2020 21:38:27 +0000
+
+git-repair (1.20151215-1.2) unstable; urgency=medium
+
+ * Non-maintainer upload.
+ * Patch duplicate Arbitrary instance of EpochTime out of
+ Utility/QuickCheck.hs (Closes: #897509).
+
+ -- Sean Whitton <spwhitton@spwhitton.name> Sun, 22 Jul 2018 14:33:24 +0800
+
+git-repair (1.20151215-1.1) unstable; urgency=medium
+
+ * Non-maintainer upload.
+ * Cherry pick upstream commit to add MIN_VERSION preprocessor guards to
+ some instances defined in Utility.QuickCheck (Closes: #826389).
+ * Cherry pick upstream commit to avoid duplicate import errors in
+ Utility.Directory.
+ * Patch Common.hs to avoid duplicate import errors.
+
+ -- Sean Whitton <spwhitton@spwhitton.name> Tue, 25 Jul 2017 17:27:22 -0700
+
+git-repair (1.20151215-1) unstable; urgency=medium
+
+ * Package 1.20151215-1
+
+ -- Richard Hartmann <richih@debian.org> Wed, 16 Dec 2015 07:26:04 +0100
+
+git-repair (1.20151215) unstable; urgency=medium
+
+ * Fix insecure temporary permissions and potential denial of
+ service attack when creating temp dirs. Closes: #807341
+ * Merge from git-annex.
+
+ -- Joey Hess <id@joeyh.name> Tue, 15 Dec 2015 20:47:59 -0400
+
+git-repair (1.20150106-2) unstable; urgency=medium
+
+ * Fix typo in description
+
+ -- Richard Hartmann <richih@debian.org> Thu, 20 Aug 2015 13:41:50 +0200
+
+git-repair (1.20150106-1) unstable; urgency=medium
+
+ * Package 1.20150106
+ * Update dependencies (Closes: #789977)
+ * Take over maintenance of package
+ * Bump standards version to 3.9.6
+
+ -- Richard Hartmann <richih@debian.org> Thu, 20 Aug 2015 11:24:46 +0200
+
+git-repair (1.20150106) unstable; urgency=medium
+
+ * Debian package is now maintained by Richard Hartmann.
+ * Fix build with process 1.2.1.0.
+ * Merge from git-annex.
+
+ -- Joey Hess <id@joeyh.name> Tue, 06 Jan 2015 19:09:23 -0400
+
+git-repair (1.20141027) unstable; urgency=medium
+
+ * Adjust cabal file to support network-uri split.
+ * Merge Build/ from git-annex, including removing a use of deprecated
+ System.Cmd.
+
+ -- Joey Hess <joeyh@debian.org> Mon, 27 Oct 2014 11:09:56 -0400
+
+git-repair (1.20141026) unstable; urgency=medium
+
+ * Prevent auto gc from happening when fetching from a remote.
+ * Merge from git-annex.
+
+ -- Joey Hess <joeyh@debian.org> Sun, 26 Oct 2014 13:37:30 -0400
+
+git-repair (1.20140914) unstable; urgency=medium
+
+ * Update to build with optparse-applicative 0.10. Closes: #761552
+
+ -- Joey Hess <joeyh@debian.org> Sun, 14 Sep 2014 12:48:27 -0400
+
+git-repair (1.20140815) unstable; urgency=medium
+
+ * Removing bad objects could leave fsck finding no more unreachable objects,
+ but some branches no longer accessible. Fix this, including support for
+ fixing up repositories that were incompletely repaired before.
+ * Merge from git-annex.
+
+ -- Joey Hess <joeyh@debian.org> Fri, 15 Aug 2014 13:49:09 -0400
+
+git-repair (1.20140423) unstable; urgency=medium
+
+ * Improve memory usage when git fsck finds a great many broken objects.
+ * Merge from git-annex.
+
+ -- Joey Hess <joeyh@debian.org> Wed, 23 Apr 2014 14:01:30 -0400
+
+git-repair (1.20140227) unstable; urgency=medium
+
+ * Optimise unpacking of pack files, and avoid repeated error
+ messages about corrupt pack files.
+ * Add swapping 2 files test case.
+
+ -- Joey Hess <joeyh@debian.org> Thu, 27 Feb 2014 11:56:27 -0400
+
+git-repair (1.20140115) unstable; urgency=medium
+
+ * Support old git versions from before git fsck --no-dangling was
+ implemented.
+ * Fix bug in packed refs file exploding code that caused a .gitrefs
+ directory to be created instead of .git/refs
+ * Check git version at run time.
+
+ -- Joey Hess <joeyh@debian.org> Wed, 15 Jan 2014 16:53:30 -0400
+
+git-repair (1.20131213) unstable; urgency=low
+
+ * Improve repair of index files in some situations.
+
+ -- Joey Hess <joeyh@debian.org> Fri, 13 Dec 2013 14:51:51 -0400
+
+git-repair (1.20131203) unstable; urgency=low
+
+ * Fix build deps. Closes: #731179
+
+ -- Joey Hess <joeyh@debian.org> Tue, 03 Dec 2013 15:02:21 -0400
+
+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.
+
+ -- Joey Hess <joeyh@debian.org> Fri, 22 Nov 2013 11:16:03 -0400
+
+git-repair (1.20131118) unstable; urgency=low
+
+ * First release
+
+ -- Joey Hess <joeyh@debian.org> Mon, 18 Nov 2013 13:38:12 -0400
diff --git a/debian/control b/debian/control
index 23dab3d..c6f725a 100644
--- a/debian/control
+++ b/debian/control
@@ -16,11 +16,14 @@ Build-Depends:
libghc-quickcheck2-dev,
libghc-utf8-string-dev,
libghc-async-dev,
+ libghc-optparse-applicative-dev (>= 0.10.0),
libghc-network-uri-dev
-Maintainer: Richard Hartmann <richih@debian.org>
-Standards-Version: 3.9.6
-Vcs-Git: git://git-repair.branchable.com/
-Homepage: http://git-repair.branchable.com/
+Maintainer: Sean Whitton <spwhitton@spwhitton.name>
+Standards-Version: 4.4.1
+Vcs-Git: https://git.spwhitton.name/git-repair
+Vcs-Browser: https://git.spwhitton.name/git-repair
+Homepage: https://git-repair.branchable.com/
+Rules-Requires-Root: no
Package: git-repair
Architecture: any
diff --git a/debian/copyright b/debian/copyright
index dc5f40a..5c55cfd 120000..100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -1 +1,39 @@
-../COPYRIGHT \ No newline at end of file
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Source: git://git-repair.branchable.com/
+
+Files: *
+Copyright: © 2013-2015 Joey Hess <joey@kitenet.net>
+License: GPL-3+
+ This package is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+ .
+ On Debian systems, the complete text of the GNU General Public License
+ version 3 can be found in file "/usr/share/common-licenses/GPL-3".
+
+Files: Utility/*
+Copyright: 2012-2014 Joey Hess <joey@kitenet.net>
+License: BSD-2-clause
+
+License: BSD-2-clause
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+ 1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ .
+ THIS SOFTWARE IS PROVIDED BY AUTHORS AND CONTRIBUTORS ``AS IS'' AND
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ SUCH DAMAGE.
diff --git a/debian/patches/fix-build-with-quickcheck-2.8.2.patch b/debian/patches/fix-build-with-quickcheck-2.8.2.patch
new file mode 100644
index 0000000..3e3a0cd
--- /dev/null
+++ b/debian/patches/fix-build-with-quickcheck-2.8.2.patch
@@ -0,0 +1,34 @@
+From: Joey Hess <joeyh@joeyh.name>
+Date: Sun, 24 Jan 2016 14:15:00 -0400
+X-Dgit-Generated: 1.20151215-1.1 1ecd24cc076b15e085529d41e5a873e334f75167
+Subject: Fix build with QuickCheck 2.8.2
+
+It added some instances I had also implemented.
+
+---
+
+--- git-repair-1.20151215.orig/Utility/QuickCheck.hs
++++ git-repair-1.20151215/Utility/QuickCheck.hs
+@@ -6,7 +6,7 @@
+ -}
+
+ {-# OPTIONS_GHC -fno-warn-orphans #-}
+-{-# LANGUAGE TypeSynonymInstances #-}
++{-# LANGUAGE TypeSynonymInstances, CPP #-}
+
+ module Utility.QuickCheck
+ ( module X
+@@ -21,11 +21,13 @@ import qualified Data.Set as S
+ import Control.Applicative
+ import Prelude
+
++#if ! MIN_VERSION_QuickCheck(2,8,2)
+ instance (Arbitrary k, Arbitrary v, Eq k, Ord k) => Arbitrary (M.Map k v) where
+ arbitrary = M.fromList <$> arbitrary
+
+ instance (Arbitrary v, Eq v, Ord v) => Arbitrary (S.Set v) where
+ arbitrary = S.fromList <$> arbitrary
++#endif
+
+ {- Times before the epoch are excluded. -}
+ instance Arbitrary POSIXTime where
diff --git a/debian/patches/patch-common.hs-to-avoid-duplicate-impor.patch b/debian/patches/patch-common.hs-to-avoid-duplicate-impor.patch
new file mode 100644
index 0000000..bc8aa27
--- /dev/null
+++ b/debian/patches/patch-common.hs-to-avoid-duplicate-impor.patch
@@ -0,0 +1,27 @@
+From: Sean Whitton <spwhitton@spwhitton.name>
+Date: Tue, 25 Jul 2017 17:10:10 -0700
+X-Dgit-Generated: 1.20151215-1.1 9d82f181d58f8538247a7efb96d1be16d131c158
+Subject: patch Common.hs to avoid duplicate import errors
+
+
+---
+
+--- git-repair-1.20151215.orig/Common.hs
++++ git-repair-1.20151215/Common.hs
+@@ -13,7 +13,6 @@ import Data.String.Utils as X hiding (jo
+ import Data.Monoid as X
+
+ import System.FilePath as X
+-import System.Directory as X
+ import System.IO as X hiding (FilePath)
+ #ifndef mingw32_HOST_OS
+ import System.Posix.IO as X hiding (createPipe)
+@@ -25,7 +24,7 @@ import Utility.Exception as X
+ import Utility.SafeCommand as X
+ import Utility.Process as X
+ import Utility.Path as X
+-import Utility.Directory as X
++import Utility.Directory as X hiding (getFileSize)
+ import Utility.Monad as X
+ import Utility.Data as X
+ import Utility.Applicative as X
diff --git a/debian/patches/patch-duplicate-arbitrary-instance-out-o.patch b/debian/patches/patch-duplicate-arbitrary-instance-out-o.patch
new file mode 100644
index 0000000..1334809
--- /dev/null
+++ b/debian/patches/patch-duplicate-arbitrary-instance-out-o.patch
@@ -0,0 +1,20 @@
+From: Sean Whitton <spwhitton@spwhitton.name>
+Date: Sun, 22 Jul 2018 14:30:36 +0800
+X-Dgit-Generated: 1.20151215-1.2 5e47ead106bebfd076d950934fbe11d9f1ef552c
+Subject: patch duplicate Arbitrary instance out of Utility/QuickCheck.hs
+
+
+---
+
+--- git-repair-1.20151215.orig/Utility/QuickCheck.hs
++++ git-repair-1.20151215/Utility/QuickCheck.hs
+@@ -33,9 +33,6 @@ instance (Arbitrary v, Eq v, Ord v) => A
+ instance Arbitrary POSIXTime where
+ arbitrary = fromInteger <$> nonNegative arbitrarySizedIntegral
+
+-instance Arbitrary EpochTime where
+- arbitrary = fromInteger <$> nonNegative arbitrarySizedIntegral
+-
+ {- Pids are never negative, or 0. -}
+ instance Arbitrary ProcessID where
+ arbitrary = arbitrarySizedBoundedIntegral `suchThat` (> 0)
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..ae13db9
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,4 @@
+fix-build-with-quickcheck-2.8.2.patch
+split-out-module-to-work-around-badly-na.patch
+patch-common.hs-to-avoid-duplicate-impor.patch
+patch-duplicate-arbitrary-instance-out-o.patch
diff --git a/debian/patches/split-out-module-to-work-around-badly-na.patch b/debian/patches/split-out-module-to-work-around-badly-na.patch
new file mode 100644
index 0000000..a8c3cbb
--- /dev/null
+++ b/debian/patches/split-out-module-to-work-around-badly-na.patch
@@ -0,0 +1,70 @@
+From: Joey Hess <joeyh@joeyh.name>
+Date: Sun, 22 May 2016 15:51:31 -0400
+X-Dgit-Generated: 1.20151215-1.1 e306cd8521a88c1cc39c926177a184adf9524886
+Subject: split out module to work around badly named symbol in directory-1.2.6.2
+
+Sadly my bug report about this is not going to get fixed it seems, so
+I have to drag around a whole added module file just to deal with it.
+
+https://github.com/haskell/directory/issues/52
+
+---
+
+--- git-repair-1.20151215.orig/Utility/Directory.hs
++++ git-repair-1.20151215/Utility/Directory.hs
+@@ -8,10 +8,12 @@
+ {-# LANGUAGE CPP #-}
+ {-# OPTIONS_GHC -fno-warn-tabs #-}
+
+-module Utility.Directory where
++module Utility.Directory (
++ module Utility.Directory,
++ module Utility.SystemDirectory
++) where
+
+ import System.IO.Error
+-import System.Directory
+ import Control.Monad
+ import System.FilePath
+ import Control.Applicative
+@@ -28,6 +30,7 @@ import Utility.SafeCommand
+ import Control.Monad.IfElse
+ #endif
+
++import Utility.SystemDirectory
+ import Utility.PosixFiles
+ import Utility.Tmp
+ import Utility.Exception
+@@ -134,11 +137,13 @@ moveFile src dest = tryIO (rename src de
+ _ <- tryIO $ removeFile tmp
+ throwM e'
+
++#ifndef mingw32_HOST_OS
+ isdir f = do
+ r <- tryIO $ getFileStatus f
+ case r of
+ (Left _) -> return False
+ (Right s) -> return $ isDirectory s
++#endif
+
+ {- Removes a file, which may or may not exist, and does not have to
+ - be a regular file.
+--- /dev/null
++++ git-repair-1.20151215/Utility/SystemDirectory.hs
+@@ -0,0 +1,16 @@
++{- System.Directory without its conflicting isSymbolicLink
++ -
++ - Copyright 2016 Joey Hess <id@joeyh.name>
++ -
++ - License: BSD-2-clause
++ -}
++
++-- Disable warnings because only some versions of System.Directory export
++-- isSymbolicLink.
++{-# OPTIONS_GHC -fno-warn-tabs -w #-}
++
++module Utility.SystemDirectory (
++ module System.Directory
++) where
++
++import System.Directory hiding (isSymbolicLink)
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)