git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* [PATCH 00/20] SHA-256 test fixes, part 7
@ 2019-12-21 19:49 brian m. carlson
  2019-12-21 19:49 ` [PATCH 01/20] t4054: make hash-size independent brian m. carlson
                   ` (20 more replies)
  0 siblings, 21 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

This is the seventh in a series of test fixes to make our testsuite work
with SHA-256.  Included in this series are fixes to a variety of tests
from t4054 to t5604.

I don't expect any of these to be terribly controversial (or, honestly,
that exciting), but of course any feedback is welcome.

There will likely be two or three more series of test fix patches coming
down the line.  I'll try to be a bit better about getting them sent out
in a timely manner.

I fully realize that we're entering a time of the year when many people
will be off and with family and friends (and this is true for me as
well), so it's fine if folks don't get to this series right away.  As is
usual with these series, there will likely be a couple versions, so
there will be plenty of time to incorporate any feedback.  Please feel
free to respond when it's convenient for you.

brian m. carlson (20):
  t4054: make hash-size independent
  t4066: compute index line in diffs
  t4134: compute appropriate length constant
  t4200: make hash size independent
  t4202: abstract away SHA-1-specific constants
  t4204: make hash size independent
  t4300: abstract away SHA-1-specific constants
  t5318: update for SHA-256
  t5319: change invalid offset for SHA-256 compatibility
  t5319: make test work with SHA-256
  t5324: make hash size independent
  t5504: make hash algorithm independent
  t5510: make hash size independent
  t5512: abstract away SHA-1-specific constants
  t5530: compute results based on object length
  t5537: make hash size independent
  t5540: make hash size independent
  t5562: use $ZERO_OID
  t5601: switch into repository to hash object
  t5604: make hash independent

 t/t4054-diff-bogus-tree.sh             |   3 +-
 t/t4066-diff-emit-delay.sh             |  10 +-
 t/t4134-apply-submodule.sh             |   5 +-
 t/t4200-rerere.sh                      |   3 +-
 t/t4202-log.sh                         | 127 +++++++++--------
 t/t4204-patch-id.sh                    |   2 +-
 t/t4300-merge-tree.sh                  | 188 ++++++++++++-------------
 t/t5318-commit-graph.sh                |   2 +-
 t/t5319-multi-pack-index.sh            |  26 +++-
 t/t5324-split-commit-graph.sh          |  13 +-
 t/t5504-fetch-receive-strict.sh        |  17 +--
 t/t5510-fetch.sh                       |   9 +-
 t/t5512-ls-remote.sh                   |  17 +--
 t/t5530-upload-pack-error.sh           |  26 ++--
 t/t5537-fetch-shallow.sh               |   8 +-
 t/t5540-http-push-webdav.sh            |   6 +-
 t/t5562-http-backend-content-length.sh |   2 +-
 t/t5601-clone.sh                       |   4 +-
 t/t5604-clone-reference.sh             |   5 +-
 19 files changed, 254 insertions(+), 219 deletions(-)


^ permalink raw reply	[flat|nested] 28+ messages in thread

* [PATCH 01/20] t4054: make hash-size independent
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 02/20] t4066: compute index line in diffs brian m. carlson
                   ` (19 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

Instead of hard-coding the length of an object ID when creating a tree,
generate it based on $ZERO_OID.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t4054-diff-bogus-tree.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/t/t4054-diff-bogus-tree.sh b/t/t4054-diff-bogus-tree.sh
index fcae82fffa..8c95f152b2 100755
--- a/t/t4054-diff-bogus-tree.sh
+++ b/t/t4054-diff-bogus-tree.sh
@@ -4,8 +4,9 @@ test_description='test diff with a bogus tree containing the null sha1'
 . ./test-lib.sh
 
 test_expect_success 'create bogus tree' '
+	name=$(echo $ZERO_OID | sed -e "s/00/Q/g") &&
 	bogus_tree=$(
-		printf "100644 fooQQQQQQQQQQQQQQQQQQQQQ" |
+		printf "100644 fooQ$name" |
 		q_to_nul |
 		git hash-object -w --stdin -t tree
 	)

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 02/20] t4066: compute index line in diffs
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
  2019-12-21 19:49 ` [PATCH 01/20] t4054: make hash-size independent brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 03/20] t4134: compute appropriate length constant brian m. carlson
                   ` (18 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

Since the object ID used in the index line will differ between different
algorithms, compute these values instead of hard-coding them.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t4066-diff-emit-delay.sh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/t/t4066-diff-emit-delay.sh b/t/t4066-diff-emit-delay.sh
index 5df6b5e64e..6331f63b12 100755
--- a/t/t4066-diff-emit-delay.sh
+++ b/t/t4066-diff-emit-delay.sh
@@ -18,7 +18,7 @@ test_expect_success 'set up history with a merge' '
 '
 
 test_expect_success 'log --cc -p --stat --color-moved' '
-	cat >expect <<-\EOF &&
+	cat >expect <<-EOF &&
 	commit D
 	---
 	 D.t | 1 +
@@ -26,7 +26,7 @@ test_expect_success 'log --cc -p --stat --color-moved' '
 
 	diff --git a/D.t b/D.t
 	new file mode 100644
-	index 0000000..1784810
+	index 0000000..$(git rev-parse --short D:D.t)
 	--- /dev/null
 	+++ b/D.t
 	@@ -0,0 +1 @@
@@ -42,7 +42,7 @@ test_expect_success 'log --cc -p --stat --color-moved' '
 
 	diff --git a/C.t b/C.t
 	new file mode 100644
-	index 0000000..3cc58df
+	index 0000000..$(git rev-parse --short C:C.t)
 	--- /dev/null
 	+++ b/C.t
 	@@ -0,0 +1 @@
@@ -54,7 +54,7 @@ test_expect_success 'log --cc -p --stat --color-moved' '
 
 	diff --git a/B.t b/B.t
 	new file mode 100644
-	index 0000000..223b783
+	index 0000000..$(git rev-parse --short B:B.t)
 	--- /dev/null
 	+++ b/B.t
 	@@ -0,0 +1 @@
@@ -66,7 +66,7 @@ test_expect_success 'log --cc -p --stat --color-moved' '
 
 	diff --git a/A.t b/A.t
 	new file mode 100644
-	index 0000000..f70f10e
+	index 0000000..$(git rev-parse --short A:A.t)
 	--- /dev/null
 	+++ b/A.t
 	@@ -0,0 +1 @@

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 03/20] t4134: compute appropriate length constant
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
  2019-12-21 19:49 ` [PATCH 01/20] t4054: make hash-size independent brian m. carlson
  2019-12-21 19:49 ` [PATCH 02/20] t4066: compute index line in diffs brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 04/20] t4200: make hash size independent brian m. carlson
                   ` (17 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

Instead of using a specific invalid hard-coded object ID, generate one
of the appropriate length by looking one up in the translation tables.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t4134-apply-submodule.sh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/t/t4134-apply-submodule.sh b/t/t4134-apply-submodule.sh
index 0043930ca6..99ed4cc546 100755
--- a/t/t4134-apply-submodule.sh
+++ b/t/t4134-apply-submodule.sh
@@ -8,6 +8,7 @@ test_description='git apply submodule tests'
 . ./test-lib.sh
 
 test_expect_success setup '
+	test_oid_init &&
 	cat > create-sm.patch <<EOF &&
 diff --git a/dir/sm b/dir/sm
 new file mode 160000
@@ -15,7 +16,7 @@ index 0000000..0123456
 --- /dev/null
 +++ b/dir/sm
 @@ -0,0 +1 @@
-+Subproject commit 0123456789abcdef0123456789abcdef01234567
++Subproject commit $(test_oid numeric)
 EOF
 	cat > remove-sm.patch <<EOF
 diff --git a/dir/sm b/dir/sm
@@ -24,7 +25,7 @@ index 0123456..0000000
 --- a/dir/sm
 +++ /dev/null
 @@ -1 +0,0 @@
--Subproject commit 0123456789abcdef0123456789abcdef01234567
+-Subproject commit $(test_oid numeric)
 EOF
 '
 

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 04/20] t4200: make hash size independent
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (2 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 03/20] t4134: compute appropriate length constant brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 05/20] t4202: abstract away SHA-1-specific constants brian m. carlson
                   ` (16 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

Instead of hard-coding a fixed length example object ID in the test,
look one up using the translation tables.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t4200-rerere.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/t/t4200-rerere.sh b/t/t4200-rerere.sh
index 55b7750ade..831d424c47 100755
--- a/t/t4200-rerere.sh
+++ b/t/t4200-rerere.sh
@@ -25,6 +25,7 @@ test_description='git rerere
 . ./test-lib.sh
 
 test_expect_success 'setup' '
+	test_oid_init &&
 	cat >a1 <<-\EOF &&
 	Some title
 	==========
@@ -210,7 +211,7 @@ test_expect_success 'set up for garbage collection tests' '
 	echo Hello >$rr/preimage &&
 	echo World >$rr/postimage &&
 
-	sha2=4000000000000000000000000000000000000000 &&
+	sha2=$(test_oid deadbeef) &&
 	rr2=.git/rr-cache/$sha2 &&
 	mkdir $rr2 &&
 	echo Hello >$rr2/preimage &&

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 05/20] t4202: abstract away SHA-1-specific constants
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (3 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 04/20] t4200: make hash size independent brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 06/20] t4204: make hash size independent brian m. carlson
                   ` (15 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

Adjust the test so that it computes values for object IDs instead of
using hard-coded hashes.  Additionally, update the sanitize_output
function to sanitize the index lines in diff output, since it's clear
from the assertions in question that we are not interested in the
specific object IDs.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t4202-log.sh | 127 +++++++++++++++++++++++++------------------------
 1 file changed, 65 insertions(+), 62 deletions(-)

diff --git a/t/t4202-log.sh b/t/t4202-log.sh
index 2c9489484a..192347a3e1 100755
--- a/t/t4202-log.sh
+++ b/t/t4202-log.sh
@@ -87,12 +87,12 @@ test_expect_success 'format %w(,1,2)' '
 '
 
 cat > expect << EOF
-804a787 sixth
-394ef78 fifth
-5d31159 fourth
-2fbe8c0 third
-f7dab8e second
-3a2fdcb initial
+$(git rev-parse --short :/sixth  ) sixth
+$(git rev-parse --short :/fifth  ) fifth
+$(git rev-parse --short :/fourth ) fourth
+$(git rev-parse --short :/third  ) third
+$(git rev-parse --short :/second ) second
+$(git rev-parse --short :/initial) initial
 EOF
 test_expect_success 'oneline' '
 
@@ -173,43 +173,45 @@ test_expect_success 'git config log.follow is overridden by --no-follow' '
 	verbose test "$actual" = "$expect"
 '
 
+# Note that these commits are intentionally listed out of order.
+last_three="$(git rev-parse :/fourth :/sixth :/fifth)"
 cat > expect << EOF
-804a787 sixth
-394ef78 fifth
-5d31159 fourth
+$(git rev-parse --short :/sixth ) sixth
+$(git rev-parse --short :/fifth ) fifth
+$(git rev-parse --short :/fourth) fourth
 EOF
 test_expect_success 'git log --no-walk <commits> sorts by commit time' '
-	git log --no-walk --oneline 5d31159 804a787 394ef78 > actual &&
+	git log --no-walk --oneline $last_three > actual &&
 	test_cmp expect actual
 '
 
 test_expect_success 'git log --no-walk=sorted <commits> sorts by commit time' '
-	git log --no-walk=sorted --oneline 5d31159 804a787 394ef78 > actual &&
+	git log --no-walk=sorted --oneline $last_three > actual &&
 	test_cmp expect actual
 '
 
 cat > expect << EOF
-=== 804a787 sixth
-=== 394ef78 fifth
-=== 5d31159 fourth
+=== $(git rev-parse --short :/sixth ) sixth
+=== $(git rev-parse --short :/fifth ) fifth
+=== $(git rev-parse --short :/fourth) fourth
 EOF
 test_expect_success 'git log --line-prefix="=== " --no-walk <commits> sorts by commit time' '
-	git log --line-prefix="=== " --no-walk --oneline 5d31159 804a787 394ef78 > actual &&
+	git log --line-prefix="=== " --no-walk --oneline $last_three > actual &&
 	test_cmp expect actual
 '
 
 cat > expect << EOF
-5d31159 fourth
-804a787 sixth
-394ef78 fifth
+$(git rev-parse --short :/fourth) fourth
+$(git rev-parse --short :/sixth ) sixth
+$(git rev-parse --short :/fifth ) fifth
 EOF
 test_expect_success 'git log --no-walk=unsorted <commits> leaves list of commits as given' '
-	git log --no-walk=unsorted --oneline 5d31159 804a787 394ef78 > actual &&
+	git log --no-walk=unsorted --oneline $last_three > actual &&
 	test_cmp expect actual
 '
 
 test_expect_success 'git show <commits> leaves list of commits as given' '
-	git show --oneline -s 5d31159 804a787 394ef78 > actual &&
+	git show --oneline -s $last_three > actual &&
 	test_cmp expect actual
 '
 
@@ -957,7 +959,7 @@ cat >expect <<\EOF
 | |
 | | diff --git a/reach.t b/reach.t
 | | new file mode 100644
-| | index 0000000..10c9591
+| | index BEFORE..AFTER
 | | --- /dev/null
 | | +++ b/reach.t
 | | @@ -0,0 +1 @@
@@ -980,7 +982,7 @@ cat >expect <<\EOF
 | | |
 | | |   diff --git a/octopus-b.t b/octopus-b.t
 | | |   new file mode 100644
-| | |   index 0000000..d5fcad0
+| | |   index BEFORE..AFTER
 | | |   --- /dev/null
 | | |   +++ b/octopus-b.t
 | | |   @@ -0,0 +1 @@
@@ -996,7 +998,7 @@ cat >expect <<\EOF
 | |
 | |   diff --git a/octopus-a.t b/octopus-a.t
 | |   new file mode 100644
-| |   index 0000000..11ee015
+| |   index BEFORE..AFTER
 | |   --- /dev/null
 | |   +++ b/octopus-a.t
 | |   @@ -0,0 +1 @@
@@ -1012,7 +1014,7 @@ cat >expect <<\EOF
 |
 |   diff --git a/seventh.t b/seventh.t
 |   new file mode 100644
-|   index 0000000..9744ffc
+|   index BEFORE..AFTER
 |   --- /dev/null
 |   +++ b/seventh.t
 |   @@ -0,0 +1 @@
@@ -1046,7 +1048,7 @@ cat >expect <<\EOF
 | | | |
 | | | | diff --git a/tangle-a b/tangle-a
 | | | | new file mode 100644
-| | | | index 0000000..7898192
+| | | | index BEFORE..AFTER
 | | | | --- /dev/null
 | | | | +++ b/tangle-a
 | | | | @@ -0,0 +1 @@
@@ -1068,7 +1070,7 @@ cat >expect <<\EOF
 | | | |
 | | | |   diff --git a/2 b/2
 | | | |   new file mode 100644
-| | | |   index 0000000..0cfbf08
+| | | |   index BEFORE..AFTER
 | | | |   --- /dev/null
 | | | |   +++ b/2
 | | | |   @@ -0,0 +1 @@
@@ -1084,7 +1086,7 @@ cat >expect <<\EOF
 | | | |
 | | | | diff --git a/1 b/1
 | | | | new file mode 100644
-| | | | index 0000000..d00491f
+| | | | index BEFORE..AFTER
 | | | | --- /dev/null
 | | | | +++ b/1
 | | | | @@ -0,0 +1 @@
@@ -1100,7 +1102,7 @@ cat >expect <<\EOF
 | | | |
 | | | | diff --git a/one b/one
 | | | | new file mode 100644
-| | | | index 0000000..9a33383
+| | | | index BEFORE..AFTER
 | | | | --- /dev/null
 | | | | +++ b/one
 | | | | @@ -0,0 +1 @@
@@ -1116,7 +1118,7 @@ cat >expect <<\EOF
 | | |
 | | |   diff --git a/a/two b/a/two
 | | |   deleted file mode 100644
-| | |   index 9245af5..0000000
+| | |   index BEFORE..AFTER
 | | |   --- a/a/two
 | | |   +++ /dev/null
 | | |   @@ -1 +0,0 @@
@@ -1132,7 +1134,7 @@ cat >expect <<\EOF
 | | |
 | | | diff --git a/a/two b/a/two
 | | | new file mode 100644
-| | | index 0000000..9245af5
+| | | index BEFORE..AFTER
 | | | --- /dev/null
 | | | +++ b/a/two
 | | | @@ -0,0 +1 @@
@@ -1148,7 +1150,7 @@ cat >expect <<\EOF
 | |
 | |   diff --git a/ein b/ein
 | |   new file mode 100644
-| |   index 0000000..9d7e69f
+| |   index BEFORE..AFTER
 | |   --- /dev/null
 | |   +++ b/ein
 | |   @@ -0,0 +1 @@
@@ -1165,14 +1167,14 @@ cat >expect <<\EOF
 |
 |   diff --git a/ichi b/ichi
 |   new file mode 100644
-|   index 0000000..9d7e69f
+|   index BEFORE..AFTER
 |   --- /dev/null
 |   +++ b/ichi
 |   @@ -0,0 +1 @@
 |   +ichi
 |   diff --git a/one b/one
 |   deleted file mode 100644
-|   index 9d7e69f..0000000
+|   index BEFORE..AFTER
 |   --- a/one
 |   +++ /dev/null
 |   @@ -1 +0,0 @@
@@ -1187,7 +1189,7 @@ cat >expect <<\EOF
 |  1 file changed, 1 insertion(+), 1 deletion(-)
 |
 | diff --git a/one b/one
-| index 5626abf..9d7e69f 100644
+| index BEFORE..AFTER 100644
 | --- a/one
 | +++ b/one
 | @@ -1 +1 @@
@@ -1204,7 +1206,7 @@ cat >expect <<\EOF
 
   diff --git a/one b/one
   new file mode 100644
-  index 0000000..5626abf
+  index BEFORE..AFTER
   --- /dev/null
   +++ b/one
   @@ -0,0 +1 @@
@@ -1221,7 +1223,8 @@ sanitize_output () {
 	    -e 's/, 0 insertions(+)//' \
 	    -e 's/ 1 files changed, / 1 file changed, /' \
 	    -e 's/, 1 deletions(-)/, 1 deletion(-)/' \
-	    -e 's/, 1 insertions(+)/, 1 insertion(+)/'
+	    -e 's/, 1 insertions(+)/, 1 insertion(+)/' \
+	    -e 's/index [0-9a-f]*\.\.[0-9a-f]*/index BEFORE..AFTER/'
 }
 
 test_expect_success 'log --graph with diff and stats' '
@@ -1247,7 +1250,7 @@ cat >expect <<\EOF
 *** | |
 *** | | diff --git a/reach.t b/reach.t
 *** | | new file mode 100644
-*** | | index 0000000..10c9591
+*** | | index BEFORE..AFTER
 *** | | --- /dev/null
 *** | | +++ b/reach.t
 *** | | @@ -0,0 +1 @@
@@ -1270,7 +1273,7 @@ cat >expect <<\EOF
 *** | | |
 *** | | |   diff --git a/octopus-b.t b/octopus-b.t
 *** | | |   new file mode 100644
-*** | | |   index 0000000..d5fcad0
+*** | | |   index BEFORE..AFTER
 *** | | |   --- /dev/null
 *** | | |   +++ b/octopus-b.t
 *** | | |   @@ -0,0 +1 @@
@@ -1286,7 +1289,7 @@ cat >expect <<\EOF
 *** | |
 *** | |   diff --git a/octopus-a.t b/octopus-a.t
 *** | |   new file mode 100644
-*** | |   index 0000000..11ee015
+*** | |   index BEFORE..AFTER
 *** | |   --- /dev/null
 *** | |   +++ b/octopus-a.t
 *** | |   @@ -0,0 +1 @@
@@ -1302,7 +1305,7 @@ cat >expect <<\EOF
 *** |
 *** |   diff --git a/seventh.t b/seventh.t
 *** |   new file mode 100644
-*** |   index 0000000..9744ffc
+*** |   index BEFORE..AFTER
 *** |   --- /dev/null
 *** |   +++ b/seventh.t
 *** |   @@ -0,0 +1 @@
@@ -1336,7 +1339,7 @@ cat >expect <<\EOF
 *** | | | |
 *** | | | | diff --git a/tangle-a b/tangle-a
 *** | | | | new file mode 100644
-*** | | | | index 0000000..7898192
+*** | | | | index BEFORE..AFTER
 *** | | | | --- /dev/null
 *** | | | | +++ b/tangle-a
 *** | | | | @@ -0,0 +1 @@
@@ -1358,7 +1361,7 @@ cat >expect <<\EOF
 *** | | | |
 *** | | | |   diff --git a/2 b/2
 *** | | | |   new file mode 100644
-*** | | | |   index 0000000..0cfbf08
+*** | | | |   index BEFORE..AFTER
 *** | | | |   --- /dev/null
 *** | | | |   +++ b/2
 *** | | | |   @@ -0,0 +1 @@
@@ -1374,7 +1377,7 @@ cat >expect <<\EOF
 *** | | | |
 *** | | | | diff --git a/1 b/1
 *** | | | | new file mode 100644
-*** | | | | index 0000000..d00491f
+*** | | | | index BEFORE..AFTER
 *** | | | | --- /dev/null
 *** | | | | +++ b/1
 *** | | | | @@ -0,0 +1 @@
@@ -1390,7 +1393,7 @@ cat >expect <<\EOF
 *** | | | |
 *** | | | | diff --git a/one b/one
 *** | | | | new file mode 100644
-*** | | | | index 0000000..9a33383
+*** | | | | index BEFORE..AFTER
 *** | | | | --- /dev/null
 *** | | | | +++ b/one
 *** | | | | @@ -0,0 +1 @@
@@ -1406,7 +1409,7 @@ cat >expect <<\EOF
 *** | | |
 *** | | |   diff --git a/a/two b/a/two
 *** | | |   deleted file mode 100644
-*** | | |   index 9245af5..0000000
+*** | | |   index BEFORE..AFTER
 *** | | |   --- a/a/two
 *** | | |   +++ /dev/null
 *** | | |   @@ -1 +0,0 @@
@@ -1422,7 +1425,7 @@ cat >expect <<\EOF
 *** | | |
 *** | | | diff --git a/a/two b/a/two
 *** | | | new file mode 100644
-*** | | | index 0000000..9245af5
+*** | | | index BEFORE..AFTER
 *** | | | --- /dev/null
 *** | | | +++ b/a/two
 *** | | | @@ -0,0 +1 @@
@@ -1438,7 +1441,7 @@ cat >expect <<\EOF
 *** | |
 *** | |   diff --git a/ein b/ein
 *** | |   new file mode 100644
-*** | |   index 0000000..9d7e69f
+*** | |   index BEFORE..AFTER
 *** | |   --- /dev/null
 *** | |   +++ b/ein
 *** | |   @@ -0,0 +1 @@
@@ -1455,14 +1458,14 @@ cat >expect <<\EOF
 *** |
 *** |   diff --git a/ichi b/ichi
 *** |   new file mode 100644
-*** |   index 0000000..9d7e69f
+*** |   index BEFORE..AFTER
 *** |   --- /dev/null
 *** |   +++ b/ichi
 *** |   @@ -0,0 +1 @@
 *** |   +ichi
 *** |   diff --git a/one b/one
 *** |   deleted file mode 100644
-*** |   index 9d7e69f..0000000
+*** |   index BEFORE..AFTER
 *** |   --- a/one
 *** |   +++ /dev/null
 *** |   @@ -1 +0,0 @@
@@ -1477,7 +1480,7 @@ cat >expect <<\EOF
 *** |  1 file changed, 1 insertion(+), 1 deletion(-)
 *** |
 *** | diff --git a/one b/one
-*** | index 5626abf..9d7e69f 100644
+*** | index BEFORE..AFTER 100644
 *** | --- a/one
 *** | +++ b/one
 *** | @@ -1 +1 @@
@@ -1494,7 +1497,7 @@ cat >expect <<\EOF
 ***
 ***   diff --git a/one b/one
 ***   new file mode 100644
-***   index 0000000..5626abf
+***   index BEFORE..AFTER
 ***   --- /dev/null
 ***   +++ b/one
 ***   @@ -0,0 +1 @@
@@ -1709,10 +1712,10 @@ test_expect_success 'set up --source tests' '
 '
 
 test_expect_success 'log --source paints branch names' '
-	cat >expect <<-\EOF &&
-	09e12a9	source-b three
-	8e393e1	source-a two
-	1ac6c77	source-b one
+	cat >expect <<-EOF &&
+	$(git rev-parse --short :/three)	source-b three
+	$(git rev-parse --short :/two  )	source-a two
+	$(git rev-parse --short :/one  )	source-b one
 	EOF
 	git log --oneline --source source-a source-b >actual &&
 	test_cmp expect actual
@@ -1720,19 +1723,19 @@ test_expect_success 'log --source paints branch names' '
 
 test_expect_success 'log --source paints tag names' '
 	git tag -m tagged source-tag &&
-	cat >expect <<-\EOF &&
-	09e12a9	source-tag three
-	8e393e1	source-a two
-	1ac6c77	source-tag one
+	cat >expect <<-EOF &&
+	$(git rev-parse --short :/three)	source-tag three
+	$(git rev-parse --short :/two  )	source-a two
+	$(git rev-parse --short :/one  )	source-tag one
 	EOF
 	git log --oneline --source source-tag source-a >actual &&
 	test_cmp expect actual
 '
 
 test_expect_success 'log --source paints symmetric ranges' '
-	cat >expect <<-\EOF &&
-	09e12a9	source-b three
-	8e393e1	source-a two
+	cat >expect <<-EOF &&
+	$(git rev-parse --short :/three)	source-b three
+	$(git rev-parse --short :/two  )	source-a two
 	EOF
 	git log --oneline --source source-a...source-b >actual &&
 	test_cmp expect actual

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 06/20] t4204: make hash size independent
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (4 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 05/20] t4202: abstract away SHA-1-specific constants brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 07/20] t4300: abstract away SHA-1-specific constants brian m. carlson
                   ` (14 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

Use $OID_REGEX instead of a hard-coded regular expression.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t4204-patch-id.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/t/t4204-patch-id.sh b/t/t4204-patch-id.sh
index 0288c17ec6..8ff8bd84c7 100755
--- a/t/t4204-patch-id.sh
+++ b/t/t4204-patch-id.sh
@@ -25,7 +25,7 @@ test_expect_success 'setup' '
 
 test_expect_success 'patch-id output is well-formed' '
 	git log -p -1 | git patch-id >output &&
-	grep "^[a-f0-9]\{40\} $(git rev-parse HEAD)$" output
+	grep "^$OID_REGEX $(git rev-parse HEAD)$" output
 '
 
 #calculate patch id. Make sure output is not empty.

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 07/20] t4300: abstract away SHA-1-specific constants
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (5 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 06/20] t4204: make hash size independent brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 08/20] t5318: update for SHA-256 brian m. carlson
                   ` (13 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

Adjust the test so that it computes values for object IDs instead of
using hard-coded hashes.  Move the heredocs later in the tests so we can
take advantage of computed values.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t4300-merge-tree.sh | 188 +++++++++++++++++++++---------------------
 1 file changed, 94 insertions(+), 94 deletions(-)

diff --git a/t/t4300-merge-tree.sh b/t/t4300-merge-tree.sh
index d87cc7d9ef..e59601e5fe 100755
--- a/t/t4300-merge-tree.sh
+++ b/t/t4300-merge-tree.sh
@@ -11,16 +11,16 @@ test_expect_success setup '
 '
 
 test_expect_success 'file add A, !B' '
-	cat >expected <<\EXPECTED &&
+	git reset --hard initial &&
+	test_commit "add-a-not-b" "ONE" "AAA" &&
+	git merge-tree initial initial add-a-not-b >actual &&
+	cat >expected <<EXPECTED &&
 added in remote
-  their  100644 43d5a8ed6ef6c00ff775008633f95787d088285d ONE
+  their  100644 $(git rev-parse HEAD:ONE) ONE
 @@ -0,0 +1 @@
 +AAA
 EXPECTED
 
-	git reset --hard initial &&
-	test_commit "add-a-not-b" "ONE" "AAA" &&
-	git merge-tree initial initial add-a-not-b >actual &&
 	test_cmp expected actual
 '
 
@@ -41,10 +41,15 @@ test_expect_success 'file add A, B (same)' '
 '
 
 test_expect_success 'file add A, B (different)' '
-	cat >expected <<\EXPECTED &&
+	git reset --hard initial &&
+	test_commit "add-a-b-diff-A" "ONE" "AAA" &&
+	git reset --hard initial &&
+	test_commit "add-a-b-diff-B" "ONE" "BBB" &&
+	git merge-tree initial add-a-b-diff-A add-a-b-diff-B >actual &&
+	cat >expected <<EXPECTED &&
 added in both
-  our    100644 43d5a8ed6ef6c00ff775008633f95787d088285d ONE
-  their  100644 ba629238ca89489f2b350e196ca445e09d8bb834 ONE
+  our    100644 $(git rev-parse add-a-b-diff-A:ONE) ONE
+  their  100644 $(git rev-parse add-a-b-diff-B:ONE) ONE
 @@ -1 +1,5 @@
 +<<<<<<< .our
  AAA
@@ -53,11 +58,6 @@ added in both
 +>>>>>>> .their
 EXPECTED
 
-	git reset --hard initial &&
-	test_commit "add-a-b-diff-A" "ONE" "AAA" &&
-	git reset --hard initial &&
-	test_commit "add-a-b-diff-B" "ONE" "BBB" &&
-	git merge-tree initial add-a-b-diff-A add-a-b-diff-B >actual &&
 	test_cmp expected actual
 '
 
@@ -69,18 +69,18 @@ test_expect_success 'file change A, !B' '
 '
 
 test_expect_success 'file change !A, B' '
-	cat >expected <<\EXPECTED &&
+	git reset --hard initial &&
+	test_commit "change-not-a-b" "initial-file" "BBB" &&
+	git merge-tree initial initial change-not-a-b >actual &&
+	cat >expected <<EXPECTED &&
 merged
-  result 100644 ba629238ca89489f2b350e196ca445e09d8bb834 initial-file
-  our    100644 e79c5e8f964493290a409888d5413a737e8e5dd5 initial-file
+  result 100644 $(git rev-parse change-a-not-b:initial-file) initial-file
+  our    100644 $(git rev-parse initial:initial-file       ) initial-file
 @@ -1 +1 @@
 -initial
 +BBB
 EXPECTED
 
-	git reset --hard initial &&
-	test_commit "change-not-a-b" "initial-file" "BBB" &&
-	git merge-tree initial initial change-not-a-b >actual &&
 	test_cmp expected actual
 '
 
@@ -94,11 +94,16 @@ test_expect_success 'file change A, B (same)' '
 '
 
 test_expect_success 'file change A, B (different)' '
-	cat >expected <<\EXPECTED &&
+	git reset --hard initial &&
+	test_commit "change-a-b-diff-A" "initial-file" "AAA" &&
+	git reset --hard initial &&
+	test_commit "change-a-b-diff-B" "initial-file" "BBB" &&
+	git merge-tree initial change-a-b-diff-A change-a-b-diff-B >actual &&
+	cat >expected <<EXPECTED &&
 changed in both
-  base   100644 e79c5e8f964493290a409888d5413a737e8e5dd5 initial-file
-  our    100644 43d5a8ed6ef6c00ff775008633f95787d088285d initial-file
-  their  100644 ba629238ca89489f2b350e196ca445e09d8bb834 initial-file
+  base   100644 $(git rev-parse initial:initial-file          ) initial-file
+  our    100644 $(git rev-parse change-a-b-diff-A:initial-file) initial-file
+  their  100644 $(git rev-parse change-a-b-diff-B:initial-file) initial-file
 @@ -1 +1,5 @@
 +<<<<<<< .our
  AAA
@@ -107,34 +112,10 @@ changed in both
 +>>>>>>> .their
 EXPECTED
 
-	git reset --hard initial &&
-	test_commit "change-a-b-diff-A" "initial-file" "AAA" &&
-	git reset --hard initial &&
-	test_commit "change-a-b-diff-B" "initial-file" "BBB" &&
-	git merge-tree initial change-a-b-diff-A change-a-b-diff-B >actual &&
 	test_cmp expected actual
 '
 
 test_expect_success 'file change A, B (mixed)' '
-	cat >expected <<\EXPECTED &&
-changed in both
-  base   100644 f4f1f998c7776568c4ff38f516d77fef9399b5a7 ONE
-  our    100644 af14c2c3475337c73759d561ef70b59e5c731176 ONE
-  their  100644 372d761493f524d44d59bd24700c3bdf914c973c ONE
-@@ -7,7 +7,11 @@
- AAA
- AAA
- AAA
-+<<<<<<< .our
- BBB
-+=======
-+CCC
-+>>>>>>> .their
- AAA
- AAA
- AAA
-EXPECTED
-
 	git reset --hard initial &&
 	test_commit "change-a-b-mix-base" "ONE" "
 AAA
@@ -159,6 +140,26 @@ AAA" &&
 		"$(sed -e "1{s/AAA/BBB/;}" -e "10{s/AAA/CCC/;}" <ONE)" &&
 	git merge-tree change-a-b-mix-base change-a-b-mix-A change-a-b-mix-B \
 		>actual &&
+
+	cat >expected <<EXPECTED &&
+changed in both
+  base   100644 $(git rev-parse change-a-b-mix-base:ONE) ONE
+  our    100644 $(git rev-parse change-a-b-mix-A:ONE   ) ONE
+  their  100644 $(git rev-parse change-a-b-mix-B:ONE   ) ONE
+@@ -7,7 +7,11 @@
+ AAA
+ AAA
+ AAA
++<<<<<<< .our
+ BBB
++=======
++CCC
++>>>>>>> .their
+ AAA
+ AAA
+ AAA
+EXPECTED
+
 	test_cmp expected actual
 '
 
@@ -173,20 +174,20 @@ test_expect_success 'file remove A, !B' '
 '
 
 test_expect_success 'file remove !A, B' '
-	cat >expected <<\EXPECTED &&
-removed in remote
-  base   100644 43d5a8ed6ef6c00ff775008633f95787d088285d ONE
-  our    100644 43d5a8ed6ef6c00ff775008633f95787d088285d ONE
-@@ -1 +0,0 @@
--AAA
-EXPECTED
-
 	git reset --hard initial &&
 	test_commit "rm-not-a-b-base" "ONE" "AAA" &&
 	git rm ONE &&
 	git commit -m "rm-not-a-b" &&
 	git tag "rm-not-a-b" &&
 	git merge-tree rm-a-not-b-base rm-a-not-b-base rm-a-not-b >actual &&
+	cat >expected <<EXPECTED &&
+removed in remote
+  base   100644 $(git rev-parse rm-a-not-b-base:ONE) ONE
+  our    100644 $(git rev-parse rm-a-not-b-base:ONE) ONE
+@@ -1 +0,0 @@
+-AAA
+EXPECTED
+
 	test_cmp expected actual
 '
 
@@ -201,14 +202,6 @@ test_expect_success 'file remove A, B (same)' '
 '
 
 test_expect_success 'file change A, remove B' '
-	cat >expected <<\EXPECTED &&
-removed in remote
-  base   100644 43d5a8ed6ef6c00ff775008633f95787d088285d ONE
-  our    100644 ba629238ca89489f2b350e196ca445e09d8bb834 ONE
-@@ -1 +0,0 @@
--BBB
-EXPECTED
-
 	git reset --hard initial &&
 	test_commit "change-a-rm-b-base" "ONE" "AAA" &&
 	test_commit "change-a-rm-b-A" "ONE" "BBB" &&
@@ -218,16 +211,18 @@ EXPECTED
 	git tag "change-a-rm-b-B" &&
 	git merge-tree change-a-rm-b-base change-a-rm-b-A change-a-rm-b-B \
 		>actual &&
+	cat >expected <<EXPECTED &&
+removed in remote
+  base   100644 $(git rev-parse change-a-rm-b-base:ONE) ONE
+  our    100644 $(git rev-parse change-a-rm-b-A:ONE   ) ONE
+@@ -1 +0,0 @@
+-BBB
+EXPECTED
+
 	test_cmp expected actual
 '
 
 test_expect_success 'file remove A, change B' '
-	cat >expected <<\EXPECTED &&
-removed in local
-  base   100644 43d5a8ed6ef6c00ff775008633f95787d088285d ONE
-  their  100644 ba629238ca89489f2b350e196ca445e09d8bb834 ONE
-EXPECTED
-
 	git reset --hard initial &&
 	test_commit "rm-a-change-b-base" "ONE" "AAA" &&
 
@@ -238,6 +233,11 @@ EXPECTED
 	test_commit "rm-a-change-b-B" "ONE" "BBB" &&
 	git merge-tree rm-a-change-b-base rm-a-change-b-A rm-a-change-b-B \
 		>actual &&
+	cat >expected <<EXPECTED &&
+removed in local
+  base   100644 $(git rev-parse rm-a-change-b-base:ONE) ONE
+  their  100644 $(git rev-parse rm-a-change-b-B:ONE   ) ONE
+EXPECTED
 	test_cmp expected actual
 '
 
@@ -250,10 +250,17 @@ test_expect_success 'tree add A, B (same)' '
 '
 
 test_expect_success 'tree add A, B (different)' '
-	cat >expect <<-\EOF &&
+	git reset --hard initial &&
+	mkdir sub &&
+	test_commit "add sub/file" "sub/file" "AAA" add-tree-a-b-A &&
+	git reset --hard initial &&
+	mkdir sub &&
+	test_commit "add sub/file" "sub/file" "BBB" add-tree-a-b-B &&
+	git merge-tree initial add-tree-a-b-A add-tree-a-b-B >actual &&
+	cat >expect <<-EOF &&
 	added in both
-	  our    100644 43d5a8ed6ef6c00ff775008633f95787d088285d sub/file
-	  their  100644 ba629238ca89489f2b350e196ca445e09d8bb834 sub/file
+	  our    100644 $(git rev-parse add-tree-a-b-A:sub/file) sub/file
+	  their  100644 $(git rev-parse add-tree-a-b-B:sub/file) sub/file
 	@@ -1 +1,5 @@
 	+<<<<<<< .our
 	 AAA
@@ -261,24 +268,10 @@ test_expect_success 'tree add A, B (different)' '
 	+BBB
 	+>>>>>>> .their
 	EOF
-	git reset --hard initial &&
-	mkdir sub &&
-	test_commit "add sub/file" "sub/file" "AAA" add-tree-a-b-A &&
-	git reset --hard initial &&
-	mkdir sub &&
-	test_commit "add sub/file" "sub/file" "BBB" add-tree-a-b-B &&
-	git merge-tree initial add-tree-a-b-A add-tree-a-b-B >actual &&
 	test_cmp expect actual
 '
 
 test_expect_success 'tree unchanged A, removed B' '
-	cat >expect <<-\EOF &&
-	removed in remote
-	  base   100644 43d5a8ed6ef6c00ff775008633f95787d088285d sub/file
-	  our    100644 43d5a8ed6ef6c00ff775008633f95787d088285d sub/file
-	@@ -1 +0,0 @@
-	-AAA
-	EOF
 	git reset --hard initial &&
 	mkdir sub &&
 	test_commit "add sub/file" "sub/file" "AAA" tree-remove-b-initial &&
@@ -287,6 +280,13 @@ test_expect_success 'tree unchanged A, removed B' '
 	git commit -m "remove sub/file" &&
 	git tag tree-remove-b-B &&
 	git merge-tree tree-remove-b-initial tree-remove-b-initial tree-remove-b-B >actual &&
+	cat >expect <<-EOF &&
+	removed in remote
+	  base   100644 $(git rev-parse tree-remove-b-initial:sub/file) sub/file
+	  our    100644 $(git rev-parse tree-remove-b-initial:sub/file) sub/file
+	@@ -1 +0,0 @@
+	-AAA
+	EOF
 	test_cmp expect actual
 '
 
@@ -296,14 +296,14 @@ test_expect_success 'turn file to tree' '
 	mkdir initial-file &&
 	test_commit "turn-file-to-tree" "initial-file/ONE" "CCC" &&
 	git merge-tree initial initial turn-file-to-tree >actual &&
-	cat >expect <<-\EOF &&
+	cat >expect <<-EOF &&
 	added in remote
-	  their  100644 43aa4fdec31eb92e1fdc2f0ce6ea9ddb7c32bcf7 initial-file/ONE
+	  their  100644 $(git rev-parse turn-file-to-tree:initial-file/ONE) initial-file/ONE
 	@@ -0,0 +1 @@
 	+CCC
 	removed in remote
-	  base   100644 e79c5e8f964493290a409888d5413a737e8e5dd5 initial-file
-	  our    100644 e79c5e8f964493290a409888d5413a737e8e5dd5 initial-file
+	  base   100644 $(git rev-parse initial:initial-file) initial-file
+	  our    100644 $(git rev-parse initial:initial-file) initial-file
 	@@ -1 +0,0 @@
 	-initial
 	EOF
@@ -318,14 +318,14 @@ test_expect_success 'turn tree to file' '
 	rm -fr dir &&
 	test_commit "make-file" "dir" "CCC" &&
 	git merge-tree add-tree add-another-tree make-file >actual &&
-	cat >expect <<-\EOF &&
+	cat >expect <<-EOF &&
 	removed in remote
-	  base   100644 43d5a8ed6ef6c00ff775008633f95787d088285d dir/path
-	  our    100644 43d5a8ed6ef6c00ff775008633f95787d088285d dir/path
+	  base   100644 $(git rev-parse add-tree:dir/path) dir/path
+	  our    100644 $(git rev-parse add-tree:dir/path) dir/path
 	@@ -1 +0,0 @@
 	-AAA
 	added in remote
-	  their  100644 43aa4fdec31eb92e1fdc2f0ce6ea9ddb7c32bcf7 dir
+	  their  100644 $(git rev-parse make-file:dir) dir
 	@@ -0,0 +1 @@
 	+CCC
 	EOF

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 08/20] t5318: update for SHA-256
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (6 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 07/20] t4300: abstract away SHA-1-specific constants brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 09/20] t5319: change invalid offset for SHA-256 compatibility brian m. carlson
                   ` (12 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

When running with SHA-256 as the hash algorithm, the hash version octet
is 2 instead of 1.  Pick the right value depending on the hash algorithm
and use it where we look for the existing value.  To ensure the test
checking for invalid data passes, use 3 as the test value for an invalid
hash version.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t5318-commit-graph.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/t/t5318-commit-graph.sh b/t/t5318-commit-graph.sh
index 3f03de6018..81cf118cb6 100755
--- a/t/t5318-commit-graph.sh
+++ b/t/t5318-commit-graph.sh
@@ -481,7 +481,7 @@ test_expect_success 'detect bad version' '
 '
 
 test_expect_success 'detect bad hash version' '
-	corrupt_graph_and_verify $GRAPH_BYTE_HASH "\02" \
+	corrupt_graph_and_verify $GRAPH_BYTE_HASH "\03" \
 		"hash version"
 '
 

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 09/20] t5319: change invalid offset for SHA-256 compatibility
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (7 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 08/20] t5318: update for SHA-256 brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-26 14:36   ` Derrick Stolee
  2019-12-21 19:49 ` [PATCH 10/20] t5319: make test work with SHA-256 brian m. carlson
                   ` (11 subsequent siblings)
  20 siblings, 1 reply; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

When using SHA-1, the existing value of the byte we use is 0x13, so
writing the byte 0x07 serves to corrupt the test and verify that we
detect corruption.  However, when we use SHA-256, the value at that
offset is already 0x07, so our "corruption" doesn't work and the test
fails to detect it.

To provide a value that is truly out of range, let's use 0xff, which is
not likely to be a valid value as the high byte of a two-byte offset in
a multi-pack index this small.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t5319-multi-pack-index.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/t/t5319-multi-pack-index.sh b/t/t5319-multi-pack-index.sh
index cd2f87be6a..464bb68e89 100755
--- a/t/t5319-multi-pack-index.sh
+++ b/t/t5319-multi-pack-index.sh
@@ -304,12 +304,12 @@ test_expect_success 'verify incorrect pack-int-id' '
 '
 
 test_expect_success 'verify incorrect offset' '
-	corrupt_midx_and_verify $MIDX_BYTE_OFFSET "\07" $objdir \
+	corrupt_midx_and_verify $MIDX_BYTE_OFFSET "\377" $objdir \
 		"incorrect object offset"
 '
 
 test_expect_success 'git-fsck incorrect offset' '
-	corrupt_midx_and_verify $MIDX_BYTE_OFFSET "\07" $objdir \
+	corrupt_midx_and_verify $MIDX_BYTE_OFFSET "\377" $objdir \
 		"incorrect object offset" \
 		"git -c core.multipackindex=true fsck"
 '

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 10/20] t5319: make test work with SHA-256
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (8 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 09/20] t5319: change invalid offset for SHA-256 compatibility brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-22  0:06   ` Eric Sunshine
  2019-12-26 14:50   ` Derrick Stolee
  2019-12-21 19:49 ` [PATCH 11/20] t5324: make hash size independent brian m. carlson
                   ` (10 subsequent siblings)
  20 siblings, 2 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

This test corrupts various locations in a multi-pack index to test
various error responses.  However, these offsets differ between SHA-1
indexes and SHA-256 indexes due to differences in object length.  Use
test_oid to look up the correct offsets based on the algorithm.
---
 t/t5319-multi-pack-index.sh | 22 ++++++++++++++++++----
 1 file changed, 18 insertions(+), 4 deletions(-)

diff --git a/t/t5319-multi-pack-index.sh b/t/t5319-multi-pack-index.sh
index 464bb68e89..43a7a66c9d 100755
--- a/t/t5319-multi-pack-index.sh
+++ b/t/t5319-multi-pack-index.sh
@@ -28,6 +28,20 @@ midx_read_expect () {
 	test_cmp expect actual
 }
 
+test_expect_success 'setup' '
+	test_oid_init &&
+	test_oid_cache <<-EOF
+	idxoff sha1:2999
+	idxoff sha256:3739
+
+	packnameoff sha1:652
+	packnameoff sha256:940
+
+	fanoutoff sha1:1
+	fanoutoff sha256:3
+	EOF
+'
+
 test_expect_success 'write midx with no packs' '
 	test_when_finished rm -f pack/multi-pack-index &&
 	git multi-pack-index --object-dir=. write &&
@@ -225,7 +239,7 @@ test_expect_success 'verify bad signature' '
 		"multi-pack-index signature"
 '
 
-HASH_LEN=20
+HASH_LEN=$(test_oid rawsz)
 NUM_OBJECTS=74
 MIDX_BYTE_VERSION=4
 MIDX_BYTE_OID_VERSION=5
@@ -238,9 +252,9 @@ MIDX_CHUNK_LOOKUP_WIDTH=12
 MIDX_OFFSET_PACKNAMES=$(($MIDX_HEADER_SIZE + \
 			 $MIDX_NUM_CHUNKS * $MIDX_CHUNK_LOOKUP_WIDTH))
 MIDX_BYTE_PACKNAME_ORDER=$(($MIDX_OFFSET_PACKNAMES + 2))
-MIDX_OFFSET_OID_FANOUT=$(($MIDX_OFFSET_PACKNAMES + 652))
+MIDX_OFFSET_OID_FANOUT=$(($MIDX_OFFSET_PACKNAMES + $(test_oid packnameoff)))
 MIDX_OID_FANOUT_WIDTH=4
-MIDX_BYTE_OID_FANOUT_ORDER=$((MIDX_OFFSET_OID_FANOUT + 250 * $MIDX_OID_FANOUT_WIDTH + 1))
+MIDX_BYTE_OID_FANOUT_ORDER=$((MIDX_OFFSET_OID_FANOUT + 250 * $MIDX_OID_FANOUT_WIDTH + $(test_oid fanoutoff)))
 MIDX_OFFSET_OID_LOOKUP=$(($MIDX_OFFSET_OID_FANOUT + 256 * $MIDX_OID_FANOUT_WIDTH))
 MIDX_BYTE_OID_LOOKUP=$(($MIDX_OFFSET_OID_LOOKUP + 16 * $HASH_LEN))
 MIDX_OFFSET_OBJECT_OFFSETS=$(($MIDX_OFFSET_OID_LOOKUP + $NUM_OBJECTS * $HASH_LEN))
@@ -387,7 +401,7 @@ test_expect_success 'force some 64-bit offsets with pack-objects' '
 	pack64=$(git pack-objects --index-version=2,0x40 objects64/pack/test-64 <obj-list) &&
 	idx64=objects64/pack/test-64-$pack64.idx &&
 	chmod u+w $idx64 &&
-	corrupt_data $idx64 2999 "\02" &&
+	corrupt_data $idx64 $(test_oid idxoff) "\02" &&
 	midx64=$(git multi-pack-index --object-dir=objects64 write) &&
 	midx_read_expect 1 63 5 objects64 " large-offsets"
 '

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 11/20] t5324: make hash size independent
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (9 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 10/20] t5319: make test work with SHA-256 brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 12/20] t5504: make hash algorithm independent brian m. carlson
                   ` (9 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

There are some offsets in the commit graph files used to corrupt data.
Compute these offsets for both SHA-1 and SHA-256 so that the test works
with either.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t5324-split-commit-graph.sh | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/t/t5324-split-commit-graph.sh b/t/t5324-split-commit-graph.sh
index c24823431f..53b2e6b455 100755
--- a/t/t5324-split-commit-graph.sh
+++ b/t/t5324-split-commit-graph.sh
@@ -11,7 +11,14 @@ test_expect_success 'setup repo' '
 	git config gc.writeCommitGraph false &&
 	infodir=".git/objects/info" &&
 	graphdir="$infodir/commit-graphs" &&
-	test_oid_init
+	test_oid_init &&
+	test_oid_cache <<-EOM
+	shallow sha1:1760
+	shallow sha256:2064
+
+	base sha1:1376
+	base sha256:1496
+	EOM
 '
 
 graph_read_expect() {
@@ -248,7 +255,7 @@ test_expect_success 'verify hashes along chain, even in shallow' '
 		cd verify &&
 		git commit-graph verify &&
 		base_file=$graphdir/graph-$(head -n 1 $graphdir/commit-graph-chain).graph &&
-		corrupt_file "$base_file" 1760 "\01" &&
+		corrupt_file "$base_file" $(test_oid shallow) "\01" &&
 		test_must_fail git commit-graph verify --shallow 2>test_err &&
 		grep -v "^+" test_err >err &&
 		test_i18ngrep "incorrect checksum" err
@@ -275,7 +282,7 @@ test_expect_success 'warn on base graph chunk incorrect' '
 		cd base-chunk &&
 		git commit-graph verify &&
 		base_file=$graphdir/graph-$(tail -n 1 $graphdir/commit-graph-chain).graph &&
-		corrupt_file "$base_file" 1376 "\01" &&
+		corrupt_file "$base_file" $(test_oid base) "\01" &&
 		git commit-graph verify --shallow 2>test_err &&
 		grep -v "^+" test_err >err &&
 		test_i18ngrep "commit-graph chain does not match" err

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 12/20] t5504: make hash algorithm independent
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (10 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 11/20] t5324: make hash size independent brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 13/20] t5510: make hash size independent brian m. carlson
                   ` (8 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

Instead of hard-coding invalid object IDs in this test, use test_oid to
look up ones of the appropriate length.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t5504-fetch-receive-strict.sh | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/t/t5504-fetch-receive-strict.sh b/t/t5504-fetch-receive-strict.sh
index fdfe179b11..645b4c78d3 100755
--- a/t/t5504-fetch-receive-strict.sh
+++ b/t/t5504-fetch-receive-strict.sh
@@ -4,6 +4,7 @@ test_description='fetch/receive strict mode'
 . ./test-lib.sh
 
 test_expect_success 'setup and inject "corrupt or missing" object' '
+	test_oid_init &&
 	echo hello >greetings &&
 	git add greetings &&
 	git commit -m greetings &&
@@ -144,11 +145,11 @@ test_expect_success 'fsck with no skipList input' '
 
 test_expect_success 'setup sorted and unsorted skipLists' '
 	cat >SKIP.unsorted <<-EOF &&
-	0000000000000000000000000000000000000004
-	0000000000000000000000000000000000000002
+	$(test_oid 004)
+	$(test_oid 002)
 	$commit
-	0000000000000000000000000000000000000001
-	0000000000000000000000000000000000000003
+	$(test_oid 001)
+	$(test_oid 003)
 	EOF
 	sort SKIP.unsorted >SKIP.sorted
 '
@@ -172,14 +173,14 @@ test_expect_success 'fsck with invalid or bogus skipList input' '
 test_expect_success 'fsck with other accepted skipList input (comments & empty lines)' '
 	cat >SKIP.with-comment <<-EOF &&
 	# Some bad commit
-	0000000000000000000000000000000000000001
+	$(test_oid 001)
 	EOF
 	test_must_fail git -c fsck.skipList=SKIP.with-comment fsck 2>err-with-comment &&
 	test_i18ngrep "missingEmail" err-with-comment &&
 	cat >SKIP.with-empty-line <<-EOF &&
-	0000000000000000000000000000000000000001
+	$(test_oid 001)
 
-	0000000000000000000000000000000000000002
+	$(test_oid 002)
 	EOF
 	test_must_fail git -c fsck.skipList=SKIP.with-empty-line fsck 2>err-with-empty-line &&
 	test_i18ngrep "missingEmail" err-with-empty-line
@@ -204,7 +205,7 @@ test_expect_success 'fsck with exhaustive accepted skipList input (various types
 	echo " # Comment after whitespace" >>SKIP.exhaustive &&
 	echo "$commit # Our bad commit (with leading whitespace and trailing comment)" >>SKIP.exhaustive &&
 	echo "# Some bad commit (leading whitespace)" >>SKIP.exhaustive &&
-	echo "  0000000000000000000000000000000000000001" >>SKIP.exhaustive &&
+	echo "  $(test_oid 001)" >>SKIP.exhaustive &&
 	git -c fsck.skipList=SKIP.exhaustive fsck 2>err &&
 	test_must_be_empty err
 '

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 13/20] t5510: make hash size independent
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (11 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 12/20] t5504: make hash algorithm independent brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 14/20] t5512: abstract away SHA-1-specific constants brian m. carlson
                   ` (7 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

Use $OID_REGEX instead of hard-coding 40-based regular expressions.
Change invocations of cut with a hard-coded constant to split using a
delimiter instead.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t5510-fetch.sh | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/t/t5510-fetch.sh b/t/t5510-fetch.sh
index 4b60282689..2ceae14164 100755
--- a/t/t5510-fetch.sh
+++ b/t/t5510-fetch.sh
@@ -11,7 +11,7 @@ D=$(pwd)
 
 test_bundle_object_count () {
 	git verify-pack -v "$1" >verify.out &&
-	test "$2" = $(grep '^[0-9a-f]\{40\} ' verify.out | wc -l)
+	test "$2" = $(grep "^$OID_REGEX " verify.out | wc -l)
 }
 
 convert_bundle_to_pack () {
@@ -261,9 +261,10 @@ test_expect_success 'create bundle 1' '
 '
 
 test_expect_success 'header of bundle looks right' '
+	head -n 4 "$D"/bundle1 &&
 	head -n 1 "$D"/bundle1 | grep "^#" &&
-	head -n 2 "$D"/bundle1 | grep "^-[0-9a-f]\{40\} " &&
-	head -n 3 "$D"/bundle1 | grep "^[0-9a-f]\{40\} " &&
+	head -n 2 "$D"/bundle1 | grep "^-$OID_REGEX " &&
+	head -n 3 "$D"/bundle1 | grep "^$OID_REGEX " &&
 	head -n 4 "$D"/bundle1 | grep "^$"
 '
 
@@ -289,7 +290,7 @@ test_expect_success 'bundle 1 has only 3 files ' '
 test_expect_success 'unbundle 2' '
 	cd "$D/bundle" &&
 	git fetch ../bundle2 master:master &&
-	test "tip" = "$(git log -1 --pretty=oneline master | cut -b42-)"
+	test "tip" = "$(git log -1 --pretty=oneline master | cut -d" " -f2)"
 '
 
 test_expect_success 'bundle does not prerequisite objects' '

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 14/20] t5512: abstract away SHA-1-specific constants
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (12 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 13/20] t5510: make hash size independent brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 15/20] t5530: compute results based on object length brian m. carlson
                   ` (6 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

Adjust the test so that it computes variables for object IDs instead of
using hard-coded hashes.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t5512-ls-remote.sh | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/t/t5512-ls-remote.sh b/t/t5512-ls-remote.sh
index d7b9f9078f..62152bad1d 100755
--- a/t/t5512-ls-remote.sh
+++ b/t/t5512-ls-remote.sh
@@ -230,9 +230,10 @@ test_expect_success 'ls-remote --symref' '
 '
 
 test_expect_success 'ls-remote with filtered symref (refname)' '
-	cat >expect <<-\EOF &&
+	rev=$(git rev-parse HEAD) &&
+	cat >expect <<-EOF &&
 	ref: refs/heads/master	HEAD
-	1bd44cb9d13204b0fe1958db0082f5028a16eb3a	HEAD
+	$rev	HEAD
 	EOF
 	# Protocol v2 supports sending symrefs for refs other than HEAD, so use
 	# protocol v0 here.
@@ -242,10 +243,10 @@ test_expect_success 'ls-remote with filtered symref (refname)' '
 
 test_expect_failure 'ls-remote with filtered symref (--heads)' '
 	git symbolic-ref refs/heads/foo refs/tags/mark &&
-	cat >expect <<-\EOF &&
+	cat >expect <<-EOF &&
 	ref: refs/tags/mark	refs/heads/foo
-	1bd44cb9d13204b0fe1958db0082f5028a16eb3a	refs/heads/foo
-	1bd44cb9d13204b0fe1958db0082f5028a16eb3a	refs/heads/master
+	$rev	refs/heads/foo
+	$rev	refs/heads/master
 	EOF
 	# Protocol v2 supports sending symrefs for refs other than HEAD, so use
 	# protocol v0 here.
@@ -254,9 +255,9 @@ test_expect_failure 'ls-remote with filtered symref (--heads)' '
 '
 
 test_expect_success 'ls-remote --symref omits filtered-out matches' '
-	cat >expect <<-\EOF &&
-	1bd44cb9d13204b0fe1958db0082f5028a16eb3a	refs/heads/foo
-	1bd44cb9d13204b0fe1958db0082f5028a16eb3a	refs/heads/master
+	cat >expect <<-EOF &&
+	$rev	refs/heads/foo
+	$rev	refs/heads/master
 	EOF
 	# Protocol v2 supports sending symrefs for refs other than HEAD, so use
 	# protocol v0 here.

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 15/20] t5530: compute results based on object length
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (13 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 14/20] t5512: abstract away SHA-1-specific constants brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 16/20] t5537: make hash size independent brian m. carlson
                   ` (5 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

Compute the various pkt-line values based on the length of the object
IDs in use.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t5530-upload-pack-error.sh | 26 ++++++++++++++------------
 1 file changed, 14 insertions(+), 12 deletions(-)

diff --git a/t/t5530-upload-pack-error.sh b/t/t5530-upload-pack-error.sh
index a1d3031d40..4ce9a9f704 100755
--- a/t/t5530-upload-pack-error.sh
+++ b/t/t5530-upload-pack-error.sh
@@ -14,7 +14,7 @@ corrupt_repo () {
 }
 
 test_expect_success 'setup and corrupt repository' '
-
+	test_oid_init &&
 	echo file >file &&
 	git add file &&
 	git rev-parse :file &&
@@ -31,9 +31,10 @@ test_expect_success 'fsck fails' '
 '
 
 test_expect_success 'upload-pack fails due to error in pack-objects packing' '
-
-	printf "0032want %s\n00000009done\n0000" \
-		$(git rev-parse HEAD) >input &&
+	head=$(git rev-parse HEAD) &&
+	hexsz=$(test_oid hexsz) &&
+	printf "%04xwant %s\n00000009done\n0000" \
+		$(($hexsz + 10)) $head >input &&
 	test_must_fail git upload-pack . <input >/dev/null 2>output.err &&
 	test_i18ngrep "unable to read" output.err &&
 	test_i18ngrep "pack-objects died" output.err
@@ -51,16 +52,17 @@ test_expect_success 'fsck fails' '
 '
 test_expect_success 'upload-pack fails due to error in rev-list' '
 
-	printf "0032want %s\n0034shallow %s00000009done\n0000" \
-		$(git rev-parse HEAD) $(git rev-parse HEAD^) >input &&
+	printf "%04xwant %s\n%04xshallow %s00000009done\n0000" \
+		$(($hexsz + 10)) $(git rev-parse HEAD) \
+		$(($hexsz + 12)) $(git rev-parse HEAD^) >input &&
 	test_must_fail git upload-pack . <input >/dev/null 2>output.err &&
 	grep "bad tree object" output.err
 '
 
 test_expect_success 'upload-pack fails due to bad want (no object)' '
 
-	printf "0045want %s multi_ack_detailed\n00000009done\n0000" \
-		"deadbeefdeadbeefdeadbeefdeadbeefdeadbeef" >input &&
+	printf "%04xwant %s multi_ack_detailed\n00000009done\n0000" \
+		$(($hexsz + 29)) $(test_oid deadbeef) >input &&
 	test_must_fail git upload-pack . <input >output 2>output.err &&
 	grep "not our ref" output.err &&
 	grep "ERR" output &&
@@ -70,8 +72,8 @@ test_expect_success 'upload-pack fails due to bad want (no object)' '
 test_expect_success 'upload-pack fails due to bad want (not tip)' '
 
 	oid=$(echo an object we have | git hash-object -w --stdin) &&
-	printf "0045want %s multi_ack_detailed\n00000009done\n0000" \
-		"$oid" >input &&
+	printf "%04xwant %s multi_ack_detailed\n00000009done\n0000" \
+		$(($hexsz + 29)) "$oid" >input &&
 	test_must_fail git upload-pack . <input >output 2>output.err &&
 	grep "not our ref" output.err &&
 	grep "ERR" output &&
@@ -80,8 +82,8 @@ test_expect_success 'upload-pack fails due to bad want (not tip)' '
 
 test_expect_success 'upload-pack fails due to error in pack-objects enumeration' '
 
-	printf "0032want %s\n00000009done\n0000" \
-		$(git rev-parse HEAD) >input &&
+	printf "%04xwant %s\n00000009done\n0000" \
+		$((hexsz + 10)) $(git rev-parse HEAD) >input &&
 	test_must_fail git upload-pack . <input >/dev/null 2>output.err &&
 	grep "bad tree object" output.err &&
 	grep "pack-objects died" output.err

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 16/20] t5537: make hash size independent
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (14 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 15/20] t5530: compute results based on object length brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 17/20] t5540: " brian m. carlson
                   ` (4 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

This test modifies a pkt-line stream with sed to change a line with
"shallow" to "unshallow".  However, this modification is dependent on
the size of the hash in use; with SHA-256, the pkt-line length is
different, leading to the sed command having no effect.

Use test_oid_cache to specify the correct values for each hash so that
the test continues to work.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t5537-fetch-shallow.sh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/t/t5537-fetch-shallow.sh b/t/t5537-fetch-shallow.sh
index 97a67728ca..9e16512fe3 100755
--- a/t/t5537-fetch-shallow.sh
+++ b/t/t5537-fetch-shallow.sh
@@ -15,7 +15,11 @@ test_expect_success 'setup' '
 	commit 2 &&
 	commit 3 &&
 	commit 4 &&
-	git config --global transfer.fsckObjects true
+	git config --global transfer.fsckObjects true &&
+	test_oid_cache <<-EOF
+	sed sha1:s/0034shallow %s/0036unshallow %s/
+	sed sha256:s/004cshallow %s/004eunshallow %s/
+	EOF
 '
 
 test_expect_success 'setup shallow clone' '
@@ -239,7 +243,7 @@ test_expect_success 'shallow fetches check connectivity before writing shallow f
 	# with an empty packfile. This is done by refetching with a shorter
 	# depth (to ensure that the packfile is empty), and overwriting the
 	# shallow line in the response with the unshallow line we want.
-	printf "s/0034shallow %s/0036unshallow %s/" \
+	printf "$(test_oid sed)" \
 	       "$(git -C "$REPO" rev-parse HEAD)" \
 	       "$(git -C "$REPO" rev-parse HEAD^)" \
 	       >"$HTTPD_ROOT_PATH/one-time-sed" &&

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 17/20] t5540: make hash size independent
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (15 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 16/20] t5537: make hash size independent brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 18/20] t5562: use $ZERO_OID brian m. carlson
                   ` (3 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

Use regex values based on $OID_REGEX instead of hard-coding them based
on expected object ID lengths.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t5540-http-push-webdav.sh | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/t/t5540-http-push-webdav.sh b/t/t5540-http-push-webdav.sh
index a094fd5e71..d476c33509 100755
--- a/t/t5540-http-push-webdav.sh
+++ b/t/t5540-http-push-webdav.sh
@@ -134,15 +134,13 @@ test_expect_success 'MKCOL sends directory names with trailing slashes' '
 
 x1="[0-9a-f]"
 x2="$x1$x1"
-x5="$x1$x1$x1$x1$x1"
-x38="$x5$x5$x5$x5$x5$x5$x5$x1$x1$x1"
-x40="$x38$x2"
+xtrunc=$(echo $OID_REGEX | sed -e "s/\[0-9a-f\]\[0-9a-f\]//")
 
 test_expect_success 'PUT and MOVE sends object to URLs with SHA-1 hash suffix' '
 	sed \
 		-e "s/PUT /OP /" \
 		-e "s/MOVE /OP /" \
-	    -e "s|/objects/$x2/${x38}_$x40|WANTED_PATH_REQUEST|" \
+	    -e "s|/objects/$x2/${xtrunc}_$OID_REGEX|WANTED_PATH_REQUEST|" \
 		"$HTTPD_ROOT_PATH"/access.log |
 	grep -e "\"OP .*WANTED_PATH_REQUEST HTTP/[.0-9]*\" 20[0-9] "
 

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 18/20] t5562: use $ZERO_OID
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (16 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 17/20] t5540: " brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 19/20] t5601: switch into repository to hash object brian m. carlson
                   ` (2 subsequent siblings)
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

This test uses $_z40 to express an all-zeros object ID, which doesn't
work for SHA-256.  Use $ZERO_OID instead, which is the right size for
all hash values.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t5562-http-backend-content-length.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/t/t5562-http-backend-content-length.sh b/t/t5562-http-backend-content-length.sh
index f0f425b2cf..4a110b307e 100755
--- a/t/t5562-http-backend-content-length.sh
+++ b/t/t5562-http-backend-content-length.sh
@@ -59,7 +59,7 @@ test_expect_success 'setup' '
 	printf done | packetize >>fetch_body &&
 	test_copy_bytes 10 <fetch_body >fetch_body.trunc &&
 	hash_next=$(git commit-tree -p HEAD -m next HEAD^{tree}) &&
-	printf "%s %s refs/heads/newbranch\\0report-status\\n" "$_z40" "$hash_next" | packetize >push_body &&
+	printf "%s %s refs/heads/newbranch\\0report-status\\n" "$ZERO_OID" "$hash_next" | packetize >push_body &&
 	printf 0000 >>push_body &&
 	echo "$hash_next" | git pack-objects --stdout >>push_body &&
 	test_copy_bytes 10 <push_body >push_body.trunc &&

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 19/20] t5601: switch into repository to hash object
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (17 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 18/20] t5562: use $ZERO_OID brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-21 19:49 ` [PATCH 20/20] t5604: make hash independent brian m. carlson
  2019-12-26 14:51 ` [PATCH 00/20] SHA-256 test fixes, part 7 Derrick Stolee
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

This test performs a clone from outside any repository. Consequently,
the hash algorithm used defaults to SHA-1. When the test is running with
SHA-256, this results in an object ID that is not usable by the rest of
the test. In order to ensure that we provide a usable value, switch into
the source repository before hashing.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t5601-clone.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/t/t5601-clone.sh b/t/t5601-clone.sh
index ad8c41176e..84ea2a3eb7 100755
--- a/t/t5601-clone.sh
+++ b/t/t5601-clone.sh
@@ -635,10 +635,10 @@ partial_clone_server () {
 	rm -rf "$SERVER" client &&
 	test_create_repo "$SERVER" &&
 	test_commit -C "$SERVER" one &&
-	HASH1=$(git hash-object "$SERVER/one.t") &&
+	HASH1=$(git -C "$SERVER" hash-object one.t) &&
 	git -C "$SERVER" revert HEAD &&
 	test_commit -C "$SERVER" two &&
-	HASH2=$(git hash-object "$SERVER/two.t") &&
+	HASH2=$(git -C "$SERVER" hash-object two.t) &&
 	test_config -C "$SERVER" uploadpack.allowfilter 1 &&
 	test_config -C "$SERVER" uploadpack.allowanysha1inwant 1
 }

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 20/20] t5604: make hash independent
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (18 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 19/20] t5601: switch into repository to hash object brian m. carlson
@ 2019-12-21 19:49 ` brian m. carlson
  2019-12-26 14:51 ` [PATCH 00/20] SHA-256 test fixes, part 7 Derrick Stolee
  20 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-21 19:49 UTC (permalink / raw)
  To: git; +Cc: Derrick Stolee, Junio C Hamano

To make our values hash independent, we turn the directory of the object
into "Y" and the file name into "Z" after having sorted items by their
name. However, when using SHA-256, one of our file names begins with an
"a" character, which means it sorts into the wrong place in the list,
causing the test to fail.

Since we don't care about the order of these items, just sort them after
stripping actual hash contents, which means they'll work with any hash
algorithm.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 t/t5604-clone-reference.sh | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/t/t5604-clone-reference.sh b/t/t5604-clone-reference.sh
index 4894237ab8..0c74b4e21a 100755
--- a/t/t5604-clone-reference.sh
+++ b/t/t5604-clone-reference.sh
@@ -326,15 +326,16 @@ test_expect_success SYMLINKS 'clone repo with symlinked or unknown files at obje
 	for raw in $(ls T*.raw)
 	do
 		sed -e "s!/../!/Y/!; s![0-9a-f]\{38,\}!Z!" -e "/commit-graph/d" \
-		    -e "/multi-pack-index/d" <$raw >$raw.de-sha || return 1
+		    -e "/multi-pack-index/d" <$raw >$raw.de-sha-1 &&
+		sort $raw.de-sha-1 >$raw.de-sha || return 1
 	done &&
 
 	cat >expected-files <<-EOF &&
 	./Y/Z
 	./Y/Z
+	./Y/Z
 	./a-loose-dir/Z
 	./an-object
-	./Y/Z
 	./info/packs
 	./pack/pack-Z.idx
 	./pack/pack-Z.pack

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* Re: [PATCH 10/20] t5319: make test work with SHA-256
  2019-12-21 19:49 ` [PATCH 10/20] t5319: make test work with SHA-256 brian m. carlson
@ 2019-12-22  0:06   ` Eric Sunshine
  2019-12-22 17:47     ` brian m. carlson
  2019-12-26 14:50   ` Derrick Stolee
  1 sibling, 1 reply; 28+ messages in thread
From: Eric Sunshine @ 2019-12-22  0:06 UTC (permalink / raw)
  To: brian m. carlson; +Cc: Git List, Derrick Stolee, Junio C Hamano

On Sat, Dec 21, 2019 at 2:52 PM brian m. carlson
<sandals@crustytoothpaste.net> wrote:
> This test corrupts various locations in a multi-pack index to test
> various error responses.  However, these offsets differ between SHA-1
> indexes and SHA-256 indexes due to differences in object length.  Use
> test_oid to look up the correct offsets based on the algorithm.
> ---

Missing sign-off.

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 10/20] t5319: make test work with SHA-256
  2019-12-22  0:06   ` Eric Sunshine
@ 2019-12-22 17:47     ` brian m. carlson
  2019-12-23  1:25       ` Michael Clark
  0 siblings, 1 reply; 28+ messages in thread
From: brian m. carlson @ 2019-12-22 17:47 UTC (permalink / raw)
  To: Eric Sunshine; +Cc: Git List, Derrick Stolee, Junio C Hamano

[-- Attachment #1: Type: text/plain, Size: 694 bytes --]

On 2019-12-22 at 00:06:47, Eric Sunshine wrote:
> On Sat, Dec 21, 2019 at 2:52 PM brian m. carlson
> <sandals@crustytoothpaste.net> wrote:
> > This test corrupts various locations in a multi-pack index to test
> > various error responses.  However, these offsets differ between SHA-1
> > indexes and SHA-256 indexes due to differences in object length.  Use
> > test_oid to look up the correct offsets based on the algorithm.
> > ---
> 
> Missing sign-off.

Will fix.  In the odd case that no reroll is necessary, I'll include it
here:

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
-- 
brian m. carlson: Houston, Texas, US
OpenPGP: https://keybase.io/bk2204

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 868 bytes --]

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 10/20] t5319: make test work with SHA-256
  2019-12-22 17:47     ` brian m. carlson
@ 2019-12-23  1:25       ` Michael Clark
  0 siblings, 0 replies; 28+ messages in thread
From: Michael Clark @ 2019-12-23  1:25 UTC (permalink / raw)
  To: brian m. carlson; +Cc: Eric Sunshine, Git List, Derrick Stolee, Junio C Hamano



> On 23/12/2019, at 6:48 AM, brian m. carlson <sandals@crustytoothpaste.net> wrote:
> 
> On 2019-12-22 at 00:06:47, Eric Sunshine wrote:
>>> On Sat, Dec 21, 2019 at 2:52 PM brian m. carlson
>>> <sandals@crustytoothpaste.net> wrote:
>>> This test corrupts various locations in a multi-pack index to test
>>> various error responses.  However, these offsets differ between SHA-1
>>> indexes and SHA-256 indexes due to differences in object length.  Use
>>> test_oid to look up the correct offsets based on the algorithm.
>>> ---
>> 
>> Missing sign-off.
> 
> Will fix.  In the odd case that no reroll is necessary, I'll include it
> here:
> 
> Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>

You have a fan for your work! This is the hard work. I missed adding sign-off in my patch series also. Fixed in the branch mentioned in the email I sent to the list, about alternative SHA algorithms.

I can review this patch series if you like. I’ve applied them in my local tree and run tests. Nothing blew up...

Happy holidays.

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 09/20] t5319: change invalid offset for SHA-256 compatibility
  2019-12-21 19:49 ` [PATCH 09/20] t5319: change invalid offset for SHA-256 compatibility brian m. carlson
@ 2019-12-26 14:36   ` Derrick Stolee
  0 siblings, 0 replies; 28+ messages in thread
From: Derrick Stolee @ 2019-12-26 14:36 UTC (permalink / raw)
  To: brian m. carlson, git; +Cc: Derrick Stolee, Junio C Hamano

On 12/21/2019 2:49 PM, brian m. carlson wrote:
> When using SHA-1, the existing value of the byte we use is 0x13, so
> writing the byte 0x07 serves to corrupt the test and verify that we
> detect corruption.  However, when we use SHA-256, the value at that
> offset is already 0x07, so our "corruption" doesn't work and the test
> fails to detect it.

Huh. What a coincidence.

> To provide a value that is truly out of range, let's use 0xff, which is
> not likely to be a valid value as the high byte of a two-byte offset in
> a multi-pack index this small.

Good future-proofing. Thanks!

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 10/20] t5319: make test work with SHA-256
  2019-12-21 19:49 ` [PATCH 10/20] t5319: make test work with SHA-256 brian m. carlson
  2019-12-22  0:06   ` Eric Sunshine
@ 2019-12-26 14:50   ` Derrick Stolee
  2019-12-27 21:35     ` brian m. carlson
  1 sibling, 1 reply; 28+ messages in thread
From: Derrick Stolee @ 2019-12-26 14:50 UTC (permalink / raw)
  To: brian m. carlson, git; +Cc: Derrick Stolee, Junio C Hamano

On 12/21/2019 2:49 PM, brian m. carlson wrote:
> This test corrupts various locations in a multi-pack index to test
> various error responses.  However, these offsets differ between SHA-1
> indexes and SHA-256 indexes due to differences in object length.  Use
> test_oid to look up the correct offsets based on the algorithm.
> ---
>  t/t5319-multi-pack-index.sh | 22 ++++++++++++++++++----
>  1 file changed, 18 insertions(+), 4 deletions(-)
> 
> diff --git a/t/t5319-multi-pack-index.sh b/t/t5319-multi-pack-index.sh
> index 464bb68e89..43a7a66c9d 100755
> --- a/t/t5319-multi-pack-index.sh
> +++ b/t/t5319-multi-pack-index.sh
> @@ -28,6 +28,20 @@ midx_read_expect () {
>  	test_cmp expect actual
>  }
>  
> +test_expect_success 'setup' '
> +	test_oid_init &&
> +	test_oid_cache <<-EOF
> +	idxoff sha1:2999
> +	idxoff sha256:3739
> +
> +	packnameoff sha1:652
> +	packnameoff sha256:940
> +
> +	fanoutoff sha1:1
> +	fanoutoff sha256:3
> +	EOF
> +'
> +
>  test_expect_success 'write midx with no packs' '
>  	test_when_finished rm -f pack/multi-pack-index &&
>  	git multi-pack-index --object-dir=. write &&
> @@ -225,7 +239,7 @@ test_expect_success 'verify bad signature' '
>  		"multi-pack-index signature"
>  '
>  
> -HASH_LEN=20
> +HASH_LEN=$(test_oid rawsz)

I'm glad this was an easy update.

> +MIDX_OFFSET_OID_FANOUT=$(($MIDX_OFFSET_PACKNAMES + $(test_oid packnameoff)))
> +MIDX_BYTE_OID_FANOUT_ORDER=$((MIDX_OFFSET_OID_FANOUT + 250 * $MIDX_OID_FANOUT_WIDTH + $(test_oid fanoutoff)))

I see why these are necessary: we need to find an exact position that
causes an order check to fail. In that sense, the offsets need to match
the early bytes of a packfile name or an OID fanout value.

> @@ -387,7 +401,7 @@ test_expect_success 'force some 64-bit offsets with pack-objects' '
>  	pack64=$(git pack-objects --index-version=2,0x40 objects64/pack/test-64 <obj-list) &&
>  	idx64=objects64/pack/test-64-$pack64.idx &&
>  	chmod u+w $idx64 &&
> -	corrupt_data $idx64 2999 "\02" &&
> +	corrupt_data $idx64 $(test_oid idxoff) "\02" &&

Sorry that this was not a better-calculated value, but
your approach works well here.

Thanks,
-Stolee
 


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 00/20] SHA-256 test fixes, part 7
  2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
                   ` (19 preceding siblings ...)
  2019-12-21 19:49 ` [PATCH 20/20] t5604: make hash independent brian m. carlson
@ 2019-12-26 14:51 ` Derrick Stolee
  20 siblings, 0 replies; 28+ messages in thread
From: Derrick Stolee @ 2019-12-26 14:51 UTC (permalink / raw)
  To: brian m. carlson, git; +Cc: Derrick Stolee, Junio C Hamano

On 12/21/2019 2:49 PM, brian m. carlson wrote:
> This is the seventh in a series of test fixes to make our testsuite work
> with SHA-256.  Included in this series are fixes to a variety of tests
> from t4054 to t5604.

Thanks for doing the hard work needed for this important transition.

This series looks good to me. I commented only on the parts that I
knew a lot about just to say "I'm sorry this was complicated."

Thanks,
-Stolee

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 10/20] t5319: make test work with SHA-256
  2019-12-26 14:50   ` Derrick Stolee
@ 2019-12-27 21:35     ` brian m. carlson
  0 siblings, 0 replies; 28+ messages in thread
From: brian m. carlson @ 2019-12-27 21:35 UTC (permalink / raw)
  To: Derrick Stolee; +Cc: git, Derrick Stolee, Junio C Hamano

[-- Attachment #1: Type: text/plain, Size: 787 bytes --]

On 2019-12-26 at 14:50:09, Derrick Stolee wrote:
> On 12/21/2019 2:49 PM, brian m. carlson wrote:
> > @@ -387,7 +401,7 @@ test_expect_success 'force some 64-bit offsets with pack-objects' '
> >  	pack64=$(git pack-objects --index-version=2,0x40 objects64/pack/test-64 <obj-list) &&
> >  	idx64=objects64/pack/test-64-$pack64.idx &&
> >  	chmod u+w $idx64 &&
> > -	corrupt_data $idx64 2999 "\02" &&
> > +	corrupt_data $idx64 $(test_oid idxoff) "\02" &&
> 
> Sorry that this was not a better-calculated value, but
> your approach works well here.

That's okay.  I appreciate that you attempted to make things robust, and
the documentary value of the variables was helpful in fixing these
tests.
-- 
brian m. carlson: Houston, Texas, US
OpenPGP: https://keybase.io/bk2204

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 868 bytes --]

^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2019-12-27 21:35 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-21 19:49 [PATCH 00/20] SHA-256 test fixes, part 7 brian m. carlson
2019-12-21 19:49 ` [PATCH 01/20] t4054: make hash-size independent brian m. carlson
2019-12-21 19:49 ` [PATCH 02/20] t4066: compute index line in diffs brian m. carlson
2019-12-21 19:49 ` [PATCH 03/20] t4134: compute appropriate length constant brian m. carlson
2019-12-21 19:49 ` [PATCH 04/20] t4200: make hash size independent brian m. carlson
2019-12-21 19:49 ` [PATCH 05/20] t4202: abstract away SHA-1-specific constants brian m. carlson
2019-12-21 19:49 ` [PATCH 06/20] t4204: make hash size independent brian m. carlson
2019-12-21 19:49 ` [PATCH 07/20] t4300: abstract away SHA-1-specific constants brian m. carlson
2019-12-21 19:49 ` [PATCH 08/20] t5318: update for SHA-256 brian m. carlson
2019-12-21 19:49 ` [PATCH 09/20] t5319: change invalid offset for SHA-256 compatibility brian m. carlson
2019-12-26 14:36   ` Derrick Stolee
2019-12-21 19:49 ` [PATCH 10/20] t5319: make test work with SHA-256 brian m. carlson
2019-12-22  0:06   ` Eric Sunshine
2019-12-22 17:47     ` brian m. carlson
2019-12-23  1:25       ` Michael Clark
2019-12-26 14:50   ` Derrick Stolee
2019-12-27 21:35     ` brian m. carlson
2019-12-21 19:49 ` [PATCH 11/20] t5324: make hash size independent brian m. carlson
2019-12-21 19:49 ` [PATCH 12/20] t5504: make hash algorithm independent brian m. carlson
2019-12-21 19:49 ` [PATCH 13/20] t5510: make hash size independent brian m. carlson
2019-12-21 19:49 ` [PATCH 14/20] t5512: abstract away SHA-1-specific constants brian m. carlson
2019-12-21 19:49 ` [PATCH 15/20] t5530: compute results based on object length brian m. carlson
2019-12-21 19:49 ` [PATCH 16/20] t5537: make hash size independent brian m. carlson
2019-12-21 19:49 ` [PATCH 17/20] t5540: " brian m. carlson
2019-12-21 19:49 ` [PATCH 18/20] t5562: use $ZERO_OID brian m. carlson
2019-12-21 19:49 ` [PATCH 19/20] t5601: switch into repository to hash object brian m. carlson
2019-12-21 19:49 ` [PATCH 20/20] t5604: make hash independent brian m. carlson
2019-12-26 14:51 ` [PATCH 00/20] SHA-256 test fixes, part 7 Derrick Stolee

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).