git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 00/24] SHA-256 test fixes, part 8

From
brian m. carlson <sandals@crustytoothpaste.net>
Date
Jan 13, 2020, 12:38 UTC
Message-ID
<20200113123857.3684632-1-sandals@crustytoothpaste.net>

This is the second-to-last series of test fixes for SHA-256. Most of them are rather boring, but there are a few notable exceptions.

t3305 appears to fail with SHA-256 due to the fanout not compressing as expected. I believe this is a legitimate bug that our transition to SHA-256 exposes, but it's unclear to me why it happens and I'm not familiar enough with the code to figure out what's going on[0]. I've CC'd Dscho, since he seems to be the person most familiar with the notes code who's still involved in the project.

I suspect that t3404 also has a bug, since the object IDs that are supposed to collide do not, according to my instrumentation of the test. I'm unsure what the intended collision was and consequently haven't fixed it. However, it does work with SHA-256 as it stands and is no more or less functional than with SHA-1, so I've removed the prerequisite.

I believe the fix in t5616 is correct and still supports the intent of the test, but I'd appreciate any feedback there. Why it works with SHA-1 is unclear to me, but my conjecture is that it's due to ordering of the object IDs. I've CC'd Jonathan Tan about this issue since he seems to be most familiar with that test.

t/lib-pack.sh is updated in this commit, but I expect a small number of additional fixes to come in with part 9 to support t5308.

I fully expect that this series won't be picked up until after the release, and that's fine. It is based on master and intentionally does not require the other in-flight test series. I expect a reroll due to the aforementioned suspected bugs.

Of course, feedback on any aspect of this series is welcome.

[0] While working on the transition to SHA-256, I've found myself quite confused by the notes code in general, mostly due to the way it uses partial object IDs. Reading about the feature (which I'd previously never used) was indeed helpful, though, so thanks to the folks who wrote the documentation.

brian m. carlson (24):
  t/lib-pack: support SHA-256
  t3206: make hash size independent
  t3305: annotate with SHA1 prerequisite
  t3308: make test work with SHA-256
  t3309: make test work with SHA-256
  t3310: make test work with SHA-256
  t3311: make test work with SHA-256
  t3404: remove SHA1 prerequisite
  t4013: make test hash independent
  t4060: make test work with SHA-256
  t4211: make test hash independent
  t5302: make hash size independent
  t5309: make test hash independent
  t5313: make test hash independent
  t5321: make test hash independent
  t5515: make test hash independent
  t5318: update for SHA-256
  t5616: use correct filter syntax
  t5607: make hash size independent
  t5703: make test work with SHA-256
  t5703: switch tests to use test_oid
  t6000: abstract away SHA-1-specific constants
  t6006: make hash size independent
  t6024: update for SHA-256
 t/lib-pack.sh                                |  35 ++-
 t/t3206-range-diff.sh                        |  14 +-
 t/t3305-notes-fanout.sh                      |   2 +-
 t/t3308-notes-merge.sh                       |  83 ++++---
 t/t3309-notes-merge-auto-resolve.sh          | 228 ++++++++++++-------
 t/t3310-notes-merge-manual-resolve.sh        |  84 ++++---
 t/t3311-notes-merge-fanout.sh                |  60 +++--
 t/t3404-rebase-interactive.sh                |   4 +-
 t/t4013-diff-various.sh                      |  44 +++-
 t/t4060-diff-submodule-option-diff-format.sh | 126 +++++-----
 t/t4211-line-log.sh                          |  14 +-
 t/t5302-pack-index.sh                        |  18 +-
 t/t5309-pack-delta-cycles.sh                 |  10 +-
 t/t5313-pack-bounds-checks.sh                |  19 +-
 t/t5318-commit-graph.sh                      |   4 +-
 t/t5321-pack-large-objects.sh                |   4 +-
 t/t5515-fetch-merge-logic.sh                 |  51 ++++-
 t/t5607-clone-bundle.sh                      |   2 +-
 t/t5616-partial-clone.sh                     |   2 +-
 t/t5703-upload-pack-ref-in-want.sh           |   7 +-
 t/t6000-rev-list-misc.sh                     |  13 +-
 t/t6006-rev-list-format.sh                   |   4 +-
 t/t6024-recursive-merge.sh                   |  15 +-
 23 files changed, 562 insertions(+), 281 deletions(-)
Next: brian m. carlson
Message 1 of 36 in “SHA-256 test fixes, part 8”
  1. 00/24 SHA-256 test fixes, part 8brian m. carlson, Jan 13, 2020
  2. 01/24 t/lib-pack: support SHA-256brian m. carlson, Jan 13, 2020
  3. 02/24 t3206: make hash size independentbrian m. carlson, Jan 13, 2020
  4. 08/24 t3404: remove SHA1 prerequisitebrian m. carlson, Jan 13, 2020
  5. 07/24 t3311: make test work with SHA-256brian m. carlson, Jan 13, 2020
  6. 11/24 t4211: make test hash independentbrian m. carlson, Jan 13, 2020
  7. 05/24 t3309: make test work with SHA-256brian m. carlson, Jan 13, 2020
  8. 12/24 t5302: make hash size independentbrian m. carlson, Jan 13, 2020
  9. 09/24 t4013: make test hash independentbrian m. carlson, Jan 13, 2020
  10. 03/24 t3305: annotate with SHA1 prerequisitebrian m. carlson, Jan 13, 2020
  11. 10/24 t4060: make test work with SHA-256brian m. carlson, Jan 13, 2020
  12. 06/24 t3310: make test work with SHA-256brian m. carlson, Jan 13, 2020
  13. 14/24 t5313: make test hash independentbrian m. carlson, Jan 13, 2020
  14. 21/24 t5703: switch tests to use test_oidbrian m. carlson, Jan 13, 2020
  15. 20/24 t5703: make test work with SHA-256brian m. carlson, Jan 13, 2020
  16. Eric SunshineJan 13, 2020
  17. brian m. carlsonJan 13, 2020
  18. 24/24 t6024: update for SHA-256brian m. carlson, Jan 13, 2020
  19. 23/24 t6006: make hash size independentbrian m. carlson, Jan 13, 2020
  20. 22/24 t6000: abstract away SHA-1-specific constantsbrian m. carlson, Jan 13, 2020
  21. 18/24 t5616: use correct filter syntaxbrian m. carlson, Jan 13, 2020
  22. t5616: make robust to delta base changeJonathan Tan, Jan 13, 2020
  23. brian m. carlsonJan 13, 2020
  24. brian m. carlsonJan 25, 2020
  25. 19/24 t5607: make hash size independentbrian m. carlson, Jan 13, 2020
  26. 16/24 t5515: make test hash independentbrian m. carlson, Jan 13, 2020
  27. 17/24 t5318: update for SHA-256brian m. carlson, Jan 13, 2020
  28. Eric SunshineJan 13, 2020
  29. brian m. carlsonJan 13, 2020
  30. 04/24 t3308: make test work with SHA-256brian m. carlson, Jan 13, 2020
  31. 15/24 t5321: make test hash independentbrian m. carlson, Jan 13, 2020
  32. 13/24 t5309: make test hash independentbrian m. carlson, Jan 13, 2020
  33. Eric SunshineJan 13, 2020
  34. brian m. carlsonJan 13, 2020
  35. Eric SunshineJan 13, 2020
  36. Johannes SchindelinJan 16, 2020

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.