Re: [PATCH v4 00/12] Stop depending on `the_repository` in object-related subsystems

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Mar 10, 2025 at 12:13 AM Patrick Steinhardt <ps@xxxxxx> wrote:
>
> Hi,
>
> this patch series is another step to remove our dependency on the global
> `the_repository` variable. The series focusses on subsystems related to
> objects.
>
[...]
> Changes in v4:
>   - Fix indentation in one of the commit messages.
>   - Link to v3: https://lore.kernel.org/r/20250307-b4-pks-objects-without-the-repository-v3-0-7bccf408731e@xxxxxx

Thanks, v4 looks good to me.

>
> Thanks!
>
> Patrick
>
> ---
> Patrick Steinhardt (12):
>       csum-file: stop depending on `the_repository`
>       object: stop depending on `the_repository`
>       pack-write: stop depending on `the_repository` and `the_hash_algo`
>       environment: move access to "core.bigFileThreshold" into repo settings
>       pack-check: stop depending on `the_repository`
>       pack-revindex: stop depending on `the_repository`
>       pack-bitmap-write: stop depending on `the_repository`
>       object-file-convert: stop depending on `the_repository`
>       delta-islands: stop depending on `the_repository`
>       object-file: split out logic regarding hash algorithms
>       hash: fix "-Wsign-compare" warnings
>       hash: stop depending on `the_repository` in `null_oid()`
>
>  Makefile                                     |   1 +
>  archive.c                                    |   4 +-
>  blame.c                                      |   2 +-
>  branch.c                                     |   2 +-
>  builtin/checkout.c                           |   6 +-
>  builtin/clone.c                              |   2 +-
>  builtin/describe.c                           |   2 +-
>  builtin/diff.c                               |   5 +-
>  builtin/fast-export.c                        |  10 +-
>  builtin/fast-import.c                        |   8 +-
>  builtin/fsck.c                               |   6 +-
>  builtin/grep.c                               |   4 +-
>  builtin/index-pack.c                         |  16 +-
>  builtin/log.c                                |   2 +-
>  builtin/ls-files.c                           |   3 +-
>  builtin/name-rev.c                           |   4 +-
>  builtin/pack-objects.c                       |  17 +-
>  builtin/prune.c                              |   2 +-
>  builtin/rebase.c                             |   2 +-
>  builtin/receive-pack.c                       |   2 +-
>  builtin/submodule--helper.c                  |  36 ++--
>  builtin/tag.c                                |   2 +-
>  builtin/unpack-objects.c                     |   5 +-
>  builtin/update-ref.c                         |   2 +-
>  builtin/worktree.c                           |   2 +-
>  bulk-checkin.c                               |   4 +-
>  combine-diff.c                               |   2 +-
>  commit-graph.c                               |   9 +-
>  commit.c                                     |   2 +-
>  config.c                                     |   5 -
>  csum-file.c                                  |  28 +--
>  csum-file.h                                  |  12 +-
>  delta-islands.c                              |  14 +-
>  delta-islands.h                              |   2 +-
>  diff-lib.c                                   |  10 +-
>  diff-no-index.c                              |  28 +--
>  diff.c                                       |  14 +-
>  diff.h                                       |   2 +-
>  dir.c                                        |   2 +-
>  environment.c                                |   1 -
>  environment.h                                |   1 -
>  grep.c                                       |   2 +-
>  hash.c                                       | 277 +++++++++++++++++++++++++
>  hash.h                                       |   4 +-
>  log-tree.c                                   |   2 +-
>  merge-ort.c                                  |  26 +--
>  merge-recursive.c                            |  12 +-
>  meson.build                                  |   1 +
>  midx-write.c                                 |  12 +-
>  midx.c                                       |   3 +-
>  notes-merge.c                                |   2 +-
>  notes.c                                      |   2 +-
>  object-file-convert.c                        |  29 +--
>  object-file-convert.h                        |   3 +-
>  object-file.c                                | 292 +--------------------------
>  object.c                                     |  21 +-
>  object.h                                     |  10 +-
>  pack-bitmap-write.c                          |  36 ++--
>  pack-bitmap.c                                |  15 +-
>  pack-bitmap.h                                |   1 +
>  pack-check.c                                 |  12 +-
>  pack-revindex.c                              |  35 ++--
>  pack-write.c                                 |  55 +++--
>  pack.h                                       |  11 +-
>  parse-options-cb.c                           |   2 +-
>  range-diff.c                                 |   2 +-
>  reachable.c                                  |   6 +-
>  read-cache.c                                 |   4 +-
>  refs.c                                       |  12 +-
>  refs/debug.c                                 |   2 +-
>  refs/files-backend.c                         |   2 +-
>  repo-settings.c                              |  20 ++
>  repo-settings.h                              |   5 +
>  reset.c                                      |   2 +-
>  revision.c                                   |   3 +-
>  sequencer.c                                  |  10 +-
>  shallow.c                                    |  10 +-
>  streaming.c                                  |   3 +-
>  submodule-config.c                           |   2 +-
>  submodule.c                                  |  28 +--
>  t/helper/test-ref-store.c                    |   2 +-
>  t/helper/test-submodule-nested-repo-config.c |   2 +-
>  t/t1050-large.sh                             |   3 +-
>  tree-diff.c                                  |   4 +-
>  upload-pack.c                                |  14 +-
>  wt-status.c                                  |   4 +-
>  xdiff-interface.c                            |   2 +-
>  87 files changed, 677 insertions(+), 613 deletions(-)
>
> Range-diff versus v3:
>
>  1:  01b5b16c3a4 =  1:  9d65ce9a2f2 csum-file: stop depending on `the_repository`
>  2:  14e0349be2f =  2:  038c6e54308 object: stop depending on `the_repository`
>  3:  9c7b8a031cc =  3:  9abd1306d6a pack-write: stop depending on `the_repository` and `the_hash_algo`
>  4:  e0168b431e7 =  4:  605fb2a7176 environment: move access to "core.bigFileThreshold" into repo settings
>  5:  529f296a935 =  5:  dc88e5ca6b2 pack-check: stop depending on `the_repository`
>  6:  d4a2e9a7861 =  6:  fee92049913 pack-revindex: stop depending on `the_repository`
>  7:  15e4d4de519 =  7:  f8ff74c83cf pack-bitmap-write: stop depending on `the_repository`
>  8:  576d846495f =  8:  47547d3f566 object-file-convert: stop depending on `the_repository`
>  9:  faf0f90a005 =  9:  39da917072f delta-islands: stop depending on `the_repository`
> 10:  b37879d101c = 10:  a509d63ee74 object-file: split out logic regarding hash algorithms
> 11:  4a1a5c67792 = 11:  421f1e96595 hash: fix "-Wsign-compare" warnings
> 12:  f45a7866d03 ! 12:  1b0b8f71125 hash: stop depending on `the_repository` in `null_oid()`
>     @@ Commit message
>              object in the superproject, and consequently we need to use its hash
>              algorithm.
>
>     -    This means that we could in theory just not bother about this edge case
>     -    at all and just use `the_repository` in "diff-no-index.c". But doing so
>     -    would feel misdesigned.
>     +        This means that we could in theory just not bother about this edge
>     +        case at all and just use `the_repository` in "diff-no-index.c". But
>     +        doing so would feel misdesigned.
>
>          Remove the `USE_THE_REPOSITORY_VARIABLE` preprocessor define in
>          "hash.c".
>
> ---
> base-commit: e2cb568e11f4ceb427ba4205e6b8a4426d26be12
> change-id: 20250210-b4-pks-objects-without-the-repository-6ba8398f7cc0
>





[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux