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

[PATCH 00/11] Some fixes and bunch of object_id conversions

From
Patryk Obara <patryk.obara@gmail.com>
Date
Jan 18, 2018, 14:50 UTC
Message-ID
<cover.1516282880.git.patryk.obara@gmail.com>

This patch series puts some mundane groundwork for experimentation with a new hashing algorithm in git-hash-object.

Some time has passed since my last patches, and I see, that work on new hashing algorithm progressed nicely since then:

* brian m. carlson implemented vtable for hash algorithm selection and pushed
the repository format front - thanks to him it's now quite easy to
experimentally replace hashing functions and, e.g. do some performance testing.
* _a lot of people_ contributed to the transition plan, and now it's available
in text format in Documentation dir - Thank you all! It's much more readable
this way.

Patch 1 is not directly related to object_id conversions but helped with debugging t5540, which kept failing on master for me (spoiler: it was Fedora fault). It helps with debugging of failing git-push over HTTP in case of internal server error, so I think it might be worthwhile.

Patch 2 is a small adjustment to .clang-format, which prevents unnecessary line breaks after function return type.

Patch 6 is a tiny fix in oidclr function.

All other patches are progressive conversions to struct object_id with some formatting fixes sprinkled in. These should be somewhat uncontroversial, I hope.

Patryk Obara (11):
  http-push: improve error log
  clang-format: adjust penalty for return type line break
  sha1_file: convert pretend_sha1_file to object_id
  dir: convert struct sha1_stat to use object_id
  sha1_file: convert hash_sha1_file to object_id
  cache: clear whole hash buffer with oidclr
  match-trees: convert splice_tree to object_id
  commit: convert commit_tree* to object_id
  notes: convert combine_notes_* to object_id
  notes: convert write_notes_tree to object_id
  sha1_file: convert write_sha1_file to object_id
 .clang-format                        |  2 +-
 apply.c                              | 12 +++----
 blame.c                              |  2 +-
 builtin/am.c                         |  4 +--
 builtin/checkout.c                   |  3 +-
 builtin/commit-tree.c                |  4 +--
 builtin/commit.c                     |  5 +--
 builtin/index-pack.c                 |  3 +-
 builtin/merge.c                      |  8 ++---
 builtin/mktag.c                      |  6 ++--
 builtin/mktree.c                     | 10 +++---
 builtin/notes.c                      |  8 ++---
 builtin/receive-pack.c               | 11 ++++---
 builtin/replace.c                    |  4 +--
 builtin/tag.c                        |  2 +-
 builtin/unpack-objects.c             | 11 ++++---
 cache-tree.c                         | 13 ++++----
 cache.h                              | 13 ++++----
 commit.c                             | 13 ++++----
 commit.h                             | 11 ++++---
 convert.c                            |  6 ++--
 diffcore-rename.c                    |  2 +-
 dir.c                                | 31 +++++++++---------
 dir.h                                |  2 +-
 http-push.c                          |  4 +++
 log-tree.c                           |  2 +-
 match-trees.c                        | 40 +++++++++++------------
 merge-recursive.c                    |  5 +--
 notes-cache.c                        |  8 ++---
 notes-merge.c                        |  9 +++---
 notes-utils.c                        |  9 +++---
 notes-utils.h                        |  3 +-
 notes.c                              | 63 ++++++++++++++++++------------------
 notes.h                              | 29 ++++++++++-------
 read-cache.c                         |  6 ++--
 sha1_file.c                          | 51 +++++++++++++++--------------
 t/helper/test-dump-untracked-cache.c |  4 +--
 37 files changed, 217 insertions(+), 202 deletions(-)
-- 
2.14.3
Next: Patryk Obara
Message 1 of 75 in “Some fixes and bunch of object_id conversions”
  1. 00/11 Some fixes and bunch of object_id conversionsPatryk Obara, Jan 18, 2018
  2. 01/11 http-push: improve error logPatryk Obara, Jan 18, 2018
  3. 02/11 clang-format: adjust penalty for return type line breakPatryk Obara, Jan 18, 2018
  4. 04/11 dir: convert struct sha1_stat to use object_idPatryk Obara, Jan 18, 2018
  5. 06/11 cache: clear whole hash buffer with oidclrPatryk Obara, Jan 18, 2018
  6. 07/11 match-trees: convert splice_tree to object_idPatryk Obara, Jan 18, 2018
  7. 09/11 notes: convert combine_notes_* to object_idPatryk Obara, Jan 18, 2018
  8. 08/11 commit: convert commit_tree* to object_idPatryk Obara, Jan 18, 2018
  9. 11/11 sha1_file: convert write_sha1_file to object_idPatryk Obara, Jan 18, 2018
  10. brian m. carlsonJan 20, 2018
  11. Patryk ObaraJan 21, 2018
  12. 10/11 notes: convert write_notes_tree to object_idPatryk Obara, Jan 18, 2018
  13. 05/11 sha1_file: convert hash_sha1_file to object_idPatryk Obara, Jan 18, 2018
  14. 03/11 sha1_file: convert pretend_sha1_file to object_idPatryk Obara, Jan 18, 2018
  15. Jonathan TanJan 18, 2018
  16. brian m. carlsonJan 20, 2018
  17. Patryk ObaraJan 21, 2018
  18. 00/14 Some fixes and bunch of object_id conversionsPatryk Obara, Jan 22, 2018
  19. 02/14 clang-format: adjust penalty for return type line breakPatryk Obara, Jan 22, 2018
  20. 03/14 sha1_file: convert pretend_sha1_file to object_idPatryk Obara, Jan 22, 2018
  21. 07/14 match-trees: convert splice_tree to object_idPatryk Obara, Jan 22, 2018
  22. Duy NguyenJan 22, 2018
  23. Patryk ObaraJan 22, 2018
  24. Duy NguyenJan 23, 2018
  25. 09/14 notes: convert combine_notes_* to object_idPatryk Obara, Jan 22, 2018
  26. 10/14 notes: convert write_notes_tree to object_idPatryk Obara, Jan 22, 2018
  27. Duy NguyenJan 22, 2018
  28. 11/14 sha1_file: convert write_sha1_file to object_idPatryk Obara, Jan 22, 2018
  29. 14/14 sha1_file: rename hash_sha1_file_literallyPatryk Obara, Jan 22, 2018
  30. 12/14 sha1_file: convert force_object_loose to object_idPatryk Obara, Jan 22, 2018
  31. 13/14 sha1_file: convert write_loose_object to object_idPatryk Obara, Jan 22, 2018
  32. 04/14 dir: convert struct sha1_stat to use object_idPatryk Obara, Jan 22, 2018
  33. 05/14 sha1_file: convert hash_sha1_file to object_idPatryk Obara, Jan 22, 2018
  34. Duy NguyenJan 22, 2018
  35. Patryk ObaraJan 22, 2018
  36. Duy NguyenJan 22, 2018
  37. 08/14 commit: convert commit_tree* to object_idPatryk Obara, Jan 22, 2018
  38. 06/14 cache: clear whole hash buffer with oidclrPatryk Obara, Jan 22, 2018
  39. 01/14 http-push: improve error logPatryk Obara, Jan 22, 2018
  40. Duy NguyenJan 22, 2018
  41. Patryk ObaraJan 22, 2018
  42. 00/14 Some fixes and bunch of object_id conversionsPatryk Obara, Jan 24, 2018
  43. 02/14 clang-format: adjust penalty for return type line breakPatryk Obara, Jan 24, 2018
  44. 07/14 match-trees: convert splice_tree to object_idPatryk Obara, Jan 24, 2018
  45. 11/14 sha1_file: convert write_sha1_file to object_idPatryk Obara, Jan 24, 2018
  46. 10/14 notes: convert write_notes_tree to object_idPatryk Obara, Jan 24, 2018
  47. 08/14 commit: convert commit_tree* to object_idPatryk Obara, Jan 24, 2018
  48. 09/14 notes: convert combine_notes_* to object_idPatryk Obara, Jan 24, 2018
  49. 13/14 sha1_file: convert write_loose_object to object_idPatryk Obara, Jan 24, 2018
  50. brian m. carlsonJan 26, 2018
  51. 12/14 sha1_file: convert force_object_loose to object_idPatryk Obara, Jan 24, 2018
  52. 14/14 sha1_file: rename hash_sha1_file_literallyPatryk Obara, Jan 24, 2018
  53. 01/14 http-push: improve error logPatryk Obara, Jan 24, 2018
  54. 05/14 sha1_file: convert hash_sha1_file to object_idPatryk Obara, Jan 24, 2018
  55. 03/14 sha1_file: convert pretend_sha1_file to object_idPatryk Obara, Jan 24, 2018
  56. 04/14 dir: convert struct sha1_stat to use object_idPatryk Obara, Jan 24, 2018
  57. Junio C HamanoJan 24, 2018
  58. 06/14 cache: clear whole hash buffer with oidclrPatryk Obara, Jan 24, 2018
  59. Junio C HamanoJan 24, 2018
  60. Junio C HamanoJan 24, 2018
  61. Duy NguyenJan 25, 2018
  62. brian m. carlsonJan 27, 2018
  63. 00/12 A bunch of object_id conversionsPatryk Obara, Jan 28, 2018
  64. 01/12 sha1_file: convert pretend_sha1_file to object_idPatryk Obara, Jan 28, 2018
  65. 03/12 sha1_file: convert hash_sha1_file to object_idPatryk Obara, Jan 28, 2018
  66. 05/12 match-trees: convert splice_tree to object_idPatryk Obara, Jan 28, 2018
  67. 08/12 notes: convert write_notes_tree to object_idPatryk Obara, Jan 28, 2018
  68. 04/12 cache: clear whole hash buffer with oidclrPatryk Obara, Jan 28, 2018
  69. 09/12 sha1_file: convert write_sha1_file to object_idPatryk Obara, Jan 28, 2018
  70. 07/12 notes: convert combine_notes_* to object_idPatryk Obara, Jan 28, 2018
  71. 10/12 sha1_file: convert force_object_loose to object_idPatryk Obara, Jan 28, 2018
  72. 11/12 sha1_file: convert write_loose_object to object_idPatryk Obara, Jan 28, 2018
  73. 12/12 sha1_file: rename hash_sha1_file_literallyPatryk Obara, Jan 28, 2018
  74. 06/12 commit: convert commit_tree* to object_idPatryk Obara, Jan 28, 2018
  75. 02/12 dir: convert struct sha1_stat to use object_idPatryk Obara, Jan 28, 2018

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.