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

[PATCH v2 0/3] bitmap-format.txt: fix some formatting issues and include checksum info

From
Abhradeep Chakraborty via GitGitGadget <gitgitgadget@gmail.com>
Date
Jun 7, 2022, 17:43 UTC
Message-ID
<pull.1246.v2.git.1654623814.gitgitgadget@gmail.com>
In-Reply-To
<pull.1246.git.1654177966.gitgitgadget@gmail.com>

There are some issues in the bitmap-format html page. For example, some nested lists are shown as top-level lists (e.g. [1]- Here BITMAP_OPT_FULL_DAG (0x1) and BITMAP_OPT_HASH_CACHE (0x4) are shown as top-level list). There is also a need of adding info about trailing checksum in the docs.

Changes since v1:
 * a new commit addressing bitmap-format.txt html page generation is added
 * Remove extra indentation from the previous change
 * elaborate more about the trailing checksum (as suggested by Kaartic)
initial version:
 * first commit fixes some formatting issues
 * information about trailing checksum in the bitmap file is added in the
   bitmap-format doc.
[1] https://git-scm.com/docs/bitmap-format#_on_disk_format
Abhradeep Chakraborty (3):
  bitmap-format.txt: feed the file to asciidoc to generate html
  bitmap-format.txt: fix some formatting issues
  bitmap-format.txt: add information for trailing checksum
 Documentation/Makefile                    |  1 +
 Documentation/technical/bitmap-format.txt | 24 +++++++++++------------
 2 files changed, 12 insertions(+), 13 deletions(-)
base-commit: 2668e3608e47494f2f10ef2b6e69f08a84816bcb
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1246%2FAbhra303%2Ffix-doc-formatting-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1246/Abhra303/fix-doc-formatting-v2
Pull-Request: https://github.com/gitgitgadget/git/pull/1246
Range-diff vs v1:
 -:  ----------- > 1:  a1b9bd9af90 bitmap-format.txt: feed the file to asciidoc to generate html
 1:  976361e624a ! 2:  cb919513c14 bitmap-format.txt: fix some formatting issues
     @@ Documentation/technical/bitmap-format.txt: MIDXs, both the bit-cache and rev-cac
      -
       			The following flags are supported:
      -
     --			- BITMAP_OPT_FULL_DAG (0x1) REQUIRED
     --			This flag must always be present. It implies that the
     --			bitmap index has been generated for a packfile or
     --			multi-pack index (MIDX) with full closure (i.e. where
     --			every single object in the packfile/MIDX can find its
     --			parent links inside the same packfile/MIDX). This is a
     --			requirement for the bitmap index format, also present in
     --			JGit, that greatly reduces the complexity of the
     --			implementation.
     + 			- BITMAP_OPT_FULL_DAG (0x1) REQUIRED
     + 			This flag must always be present. It implies that the
     + 			bitmap index has been generated for a packfile or
     +@@ Documentation/technical/bitmap-format.txt: MIDXs, both the bit-cache and rev-cache extensions are required.
     + 			requirement for the bitmap index format, also present in
     + 			JGit, that greatly reduces the complexity of the
     + 			implementation.
      -
     --			- BITMAP_OPT_HASH_CACHE (0x4)
     --			If present, the end of the bitmap file contains
     --			`N` 32-bit name-hash values, one per object in the
     --			pack/MIDX. The format and meaning of the name-hash is
     --			described below.
     -+				- BITMAP_OPT_FULL_DAG (0x1) REQUIRED
     -+				This flag must always be present. It implies that the
     -+				bitmap index has been generated for a packfile or
     -+				multi-pack index (MIDX) with full closure (i.e. where
     -+				every single object in the packfile/MIDX can find its
     -+				parent links inside the same packfile/MIDX). This is a
     -+				requirement for the bitmap index format, also present in
     -+				JGit, that greatly reduces the complexity of the
     -+				implementation.
     -+				- BITMAP_OPT_HASH_CACHE (0x4)
     -+				If present, the end of the bitmap file contains
     -+				`N` 32-bit name-hash values, one per object in the
     -+				pack/MIDX. The format and meaning of the name-hash is
     -+				described below.
     + 			- BITMAP_OPT_HASH_CACHE (0x4)
     + 			If present, the end of the bitmap file contains
     + 			`N` 32-bit name-hash values, one per object in the
     +@@ Documentation/technical/bitmap-format.txt: MIDXs, both the bit-cache and rev-cache extensions are required.
     + 			described below.
       
       		4-byte entry count (network byte order)
      -
     @@ Documentation/technical/bitmap-format.txt: MIDXs, both the bit-cache and rev-cac
       		Each entry contains the following:
       
      -		- 4-byte object position (network byte order)
     --			The position **in the index for the packfile or
     --			multi-pack index** where the bitmap for this commit is
     --			found.
     --
     ++		** 4-byte object position (network byte order)
     + 			The position **in the index for the packfile or
     + 			multi-pack index** where the bitmap for this commit is
     + 			found.
     + 
      -		- 1-byte XOR-offset
     --			The xor offset used to compress this bitmap. For an entry
     --			in position `x`, a XOR offset of `y` means that the actual
     --			bitmap representing this commit is composed by XORing the
     --			bitmap for this entry with the bitmap in entry `x-y` (i.e.
     --			the bitmap `y` entries before this one).
     --
     --			Note that this compression can be recursive. In order to
     --			XOR this entry with a previous one, the previous entry needs
     --			to be decompressed first, and so on.
     --
     --			The hard-limit for this offset is 160 (an entry can only be
     --			xor'ed against one of the 160 entries preceding it). This
     --			number is always positive, and hence entries are always xor'ed
     --			with **previous** bitmaps, not bitmaps that will come afterwards
     --			in the index.
     --
     ++		** 1-byte XOR-offset
     + 			The xor offset used to compress this bitmap. For an entry
     + 			in position `x`, a XOR offset of `y` means that the actual
     + 			bitmap representing this commit is composed by XORing the
     +@@ Documentation/technical/bitmap-format.txt: MIDXs, both the bit-cache and rev-cache extensions are required.
     + 			with **previous** bitmaps, not bitmaps that will come afterwards
     + 			in the index.
     + 
      -		- 1-byte flags for this bitmap
     --			At the moment the only available flag is `0x1`, which hints
     --			that this bitmap can be re-used when rebuilding bitmap indexes
     --			for the repository.
     --
     ++		** 1-byte flags for this bitmap
     + 			At the moment the only available flag is `0x1`, which hints
     + 			that this bitmap can be re-used when rebuilding bitmap indexes
     + 			for the repository.
     + 
      -		- The compressed bitmap itself, see Appendix A.
     -+			** 4-byte object position (network byte order)
     -+				The position **in the index for the packfile or
     -+				multi-pack index** where the bitmap for this commit is
     -+				found.
     -+
     -+			** 1-byte XOR-offset
     -+				The xor offset used to compress this bitmap. For an entry
     -+				in position `x`, a XOR offset of `y` means that the actual
     -+				bitmap representing this commit is composed by XORing the
     -+				bitmap for this entry with the bitmap in entry `x-y` (i.e.
     -+				the bitmap `y` entries before this one).
     -+
     -+				Note that this compression can be recursive. In order to
     -+				XOR this entry with a previous one, the previous entry needs
     -+				to be decompressed first, and so on.
     -+
     -+				The hard-limit for this offset is 160 (an entry can only be
     -+				xor'ed against one of the 160 entries preceding it). This
     -+				number is always positive, and hence entries are always xor'ed
     -+				with **previous** bitmaps, not bitmaps that will come afterwards
     -+				in the index.
     -+
     -+			** 1-byte flags for this bitmap
     -+				At the moment the only available flag is `0x1`, which hints
     -+				that this bitmap can be re-used when rebuilding bitmap indexes
     -+				for the repository.
     -+
     -+			** The compressed bitmap itself, see Appendix A.
     ++		** The compressed bitmap itself, see Appendix A.
       
       == Appendix A: Serialization format for an EWAH bitmap
       
 2:  ba534b5d486 ! 3:  2171d31fb2b bitmap-format.txt: add information for trailing checksum
     @@ Commit message
       ## Documentation/technical/bitmap-format.txt ##
      @@ Documentation/technical/bitmap-format.txt: MIDXs, both the bit-cache and rev-cache extensions are required.
       
     - 			** The compressed bitmap itself, see Appendix A.
     + 		** The compressed bitmap itself, see Appendix A.
       
      +	* TRAILER:
      +
     -+		Index checksum of the above contents.
     ++		Index checksum of the above contents. It is a 20-byte SHA1 checksum.
      +
       == Appendix A: Serialization format for an EWAH bitmap
       
-- 
gitgitgadget
Previous: Abhradeep ChakrabortyNext: Abhradeep Chakraborty via GitGitGadget
Message 6 of 37 in “bitmap-format.txt: fix some formatting issues and include checksum info”
  1. 0/2 bitmap-format.txt: fix some formatting issues and include checksum infoAbhradeep Chakraborty via GitGitGadget, Jun 2, 2022
  2. 2/2 bitmap-format.txt: add information for trailing checksumAbhradeep Chakraborty via GitGitGadget, Jun 2, 2022
  3. 1/2 bitmap-format.txt: fix some formatting issuesAbhradeep Chakraborty via GitGitGadget, Jun 2, 2022
  4. Junio C HamanoJun 6, 2022
  5. Abhradeep ChakrabortyJun 7, 2022
  6. 0/3 bitmap-format.txt: fix some formatting issues and include checksum infoAbhradeep Chakraborty via GitGitGadget, Jun 7, 2022
  7. 3/3 bitmap-format.txt: add information for trailing checksumAbhradeep Chakraborty via GitGitGadget, Jun 7, 2022
  8. Taylor BlauJun 7, 2022
  9. Abhradeep ChakrabortyJun 8, 2022
  10. 2/3 bitmap-format.txt: fix some formatting issuesAbhradeep Chakraborty via GitGitGadget, Jun 7, 2022
  11. Taylor BlauJun 7, 2022
  12. Junio C HamanoJun 7, 2022
  13. Abhradeep ChakrabortyJun 8, 2022
  14. Abhradeep ChakrabortyJun 8, 2022
  15. 1/3 bitmap-format.txt: feed the file to asciidoc to generate htmlAbhradeep Chakraborty via GitGitGadget, Jun 7, 2022
  16. Junio C HamanoJun 7, 2022
  17. Abhradeep ChakrabortyJun 8, 2022
  18. Taylor BlauJun 7, 2022
  19. Junio C HamanoJun 7, 2022
  20. Taylor BlauJun 7, 2022
  21. Junio C HamanoJun 7, 2022
  22. Abhradeep ChakrabortyJun 8, 2022
  23. 0/3 bitmap-format.txt: fix some formatting issues and include checksum infoAbhradeep Chakraborty via GitGitGadget, Jun 10, 2022
  24. 1/3 bitmap-format.txt: feed the file to asciidoc to generate htmlAbhradeep Chakraborty via GitGitGadget, Jun 10, 2022
  25. 2/3 bitmap-format.txt: fix some formatting issuesAbhradeep Chakraborty via GitGitGadget, Jun 10, 2022
  26. Taylor BlauJun 15, 2022
  27. Abhradeep ChakrabortyJun 15, 2022
  28. 3/3 bitmap-format.txt: add information for trailing checksumAbhradeep Chakraborty via GitGitGadget, Jun 10, 2022
  29. Junio C HamanoJun 10, 2022
  30. Taylor BlauJun 15, 2022
  31. Junio C HamanoJun 15, 2022
  32. 0/3 bitmap-format.txt: fix some formatting issues and include checksum infoAbhradeep Chakraborty via GitGitGadget, Jun 16, 2022
  33. 1/3 bitmap-format.txt: feed the file to asciidoc to generate htmlAbhradeep Chakraborty via GitGitGadget, Jun 16, 2022
  34. 2/3 bitmap-format.txt: fix some formatting issuesAbhradeep Chakraborty via GitGitGadget, Jun 16, 2022
  35. 3/3 bitmap-format.txt: add information for trailing checksumAbhradeep Chakraborty via GitGitGadget, Jun 16, 2022
  36. Junio C HamanoJun 16, 2022
  37. Taylor BlauJun 16, 2022

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.