chiark / gitweb /
Merge tag dgit/2.14 into `defence in dgit-repos-server' branch
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Thu, 5 Jan 2017 14:01:38 +0000 (14:01 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Thu, 5 Jan 2017 14:03:23 +0000 (14:03 +0000)
Fix up semantic conflict: the new git-fsck test (in 2.14) fails on the
new broken commits (in the `defence in dgit-repos-server' branch).

We need to disable this.  Ideally we would make a tighter test, but
that's too much to do in a merge.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
1  2 
debian/changelog
tests/lib
tests/tests/drs-push-rejects

diff --combined debian/changelog
index 6d0b61372c250bdea0f648c634162b1671c8452d,832253f2a4b71ba2fd7c6772644c15b6220d56f7..bfbffd5f26c6167be8b216e16f998730ee21ae68
@@@ -1,9 -1,14 +1,20 @@@
- dgit (2.14) unstable; urgency=low
++dgit (2.15~) unstable; urgency=low
 +
 +  * 
 +
 + --
 +
+ dgit (2.14) unstable; urgency=critical
+   CRITICAL BUGFIX:
+   * Do not generate bogus commits with --overwrite or import-dsc.
+     Closes:#849041.
+   Test suite:
+   * Run a lot of git-fsck.
+  -- Ian Jackson <ijackson@chiark.greenend.org.uk>  Wed, 04 Jan 2017 22:52:55 +0000
  dgit (2.13) unstable; urgency=high
  
    Changed behaviour:
diff --combined tests/lib
index d075bc763f0d05249b233294d64dd91bc6b7c0f7,579ddda34665dc279cd268ae70a011515095db1e..5fcb6f656b82497e2726638c7ae2523bc5245064
+++ b/tests/lib
@@@ -349,6 -349,25 +349,25 @@@ t-git-dir-check () 
        esac
  }
  
 -      git fsck --no-dangling --strict
+ t-git-fsck () {
++      git fsck --no-dangling --strict || ${expect_fsck_fail-false}
+ }
+ t-fscks () {
+       (
+       shopt -s nullglob
+       for d in $tmp/*/.git $tmp/git/*.git; do
+               cd "$d"
+               t-git-fsck
+       done
+       )
+ }
+ t-ok () {
+       t-fscks
+       echo ok.
+ }
  t-rm-dput-dropping () {
        rm -f $tmp/${p}_${v}_*.upload
  }
index 7b7c5f32a2a3c8e093e5f0b0669055c01e6777e1,f829dc91bbef4372f0b240f2c00be5c063d632ba..dee14b86fe68f14cea98137ef22a03991471b046
@@@ -139,18 -139,6 +139,18 @@@ mkta
  mustfail 'tag name in tag is wrong' \
        refs/tags/$tagpfx/wombat:refs/tags/$tagpfx/$version $push_spec1
  
 +echo ====
 +badcommit=$(
 +      git cat-file commit HEAD | \
 +      perl -pe 's/^committer.*\n//' | \
 +      git hash-object -w -t commit --stdin
 +)
 +git checkout -b broken $badcommit
 +prep unstable sid
 +mktag
 +mustfail "corrupted object $badcommit" $push_spec
 +
 +git checkout dgit/sid
  prep unstable sid
  mktag
  mustsucceed $push_spec # succeeds
@@@ -203,4 -191,4 +203,7 @@@ mustfail "not in permissions list altho
  prep_dm_mangle ''
  mustsucceed $push_spec # succeeds
  
- echo ok.
++# we generate some junk, so we must tolerate git-fsck complaining
++expect_fsck_fail=true
++
+ t-ok