Subject: [PATCH 00/10] Remove the_index, the final part

From: Nguyễn Thái Ngọc Duy <[email-masked]>
Date: Sat, 5 Jan 2019 12:51:43 +0700

This completely removes the_index outside builtin/. The macro
NO_THE_INDEX_COMPATIBILITY_MACROS is replaced with
USE_THE_INDEX_COMPATIBILITY_MACROS, which means by default you don't
have access to the_index any more. And USE_THE_... should only be
defined in builtin/

There's one easy conflict in builtin/rebase.c when merging this to 'pu'.
builtin/stash.c also needs to define USE_THE_... to build, but I think
that could be part of the builtin stash topic when it's rerolled.

Nguyễn Thái Ngọc Duy (10):
  notes-utils.c: remove the_repository references
  repository.c: replace hold_locked_index() with repo_hold_locked_index()
  checkout: avoid the_index when possible
  read-cache.c: kill read_index()
  read-cache.c: replace update_index_if_able with repo_&
  sha1-name.c: remove implicit dependency on the_index
  merge-recursive.c: remove implicit dependency on the_index
  merge-recursive.c: remove implicit dependency on the_repository
  read-cache.c: remove the_* from index_has_changes()
  cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch

 apply.c                              |   5 +-
 attr.c                               |   1 -
 blame.c                              |   4 +-
 builtin/add.c                        |   1 +
 builtin/am.c                         |  13 +-
 builtin/blame.c                      |   3 +-
 builtin/cat-file.c                   |   7 +-
 builtin/check-attr.c                 |   1 +
 builtin/check-ignore.c               |   1 +
 builtin/checkout-index.c             |   1 +
 builtin/checkout.c                   |   5 +-
 builtin/clean.c                      |   1 +
 builtin/clone.c                      |   1 +
 builtin/commit.c                     |   7 +-
 builtin/describe.c                   |   3 +-
 builtin/diff-files.c                 |   1 +
 builtin/diff-index.c                 |   1 +
 builtin/diff-tree.c                  |   3 +-
 builtin/diff.c                       |   3 +-
 builtin/difftool.c                   |   1 +
 builtin/fsck.c                       |   1 +
 builtin/grep.c                       |   4 +-
 builtin/hash-object.c                |   3 +-
 builtin/log.c                        |   4 +-
 builtin/ls-files.c                   |   1 -
 builtin/merge-index.c                |   1 +
 builtin/merge-ours.c                 |   1 +
 builtin/merge-recursive.c            |   2 +-
 builtin/merge-tree.c                 |   4 +-
 builtin/merge.c                      |   3 +-
 builtin/mv.c                         |   1 +
 builtin/notes.c                      |  21 +--
 builtin/pack-objects.c               |   2 +-
 builtin/pull.c                       |   1 +
 builtin/read-tree.c                  |   1 +
 builtin/rebase--interactive.c        |   1 +
 builtin/rebase.c                     |  14 +-
 builtin/replace.c                    |   2 +-
 builtin/reset.c                      |   1 +
 builtin/rev-parse.c                  |   4 +-
 builtin/rm.c                         |   1 +
 builtin/submodule--helper.c          |   1 +
 builtin/update-index.c               |   1 +
 builtin/write-tree.c                 |   1 +
 cache-tree.h                         |   2 +-
 cache.h                              |  35 ++---
 convert.c                            |   1 -
 dir.c                                |   1 -
 git.c                                |   4 +-
 list-objects-filter-options.c        |   2 +-
 merge-recursive.c                    | 191 +++++++++++++++------------
 merge-recursive.h                    |   6 +-
 merge.c                              |   4 +-
 name-hash.c                          |   1 -
 notes-merge.c                        |   4 +-
 notes-utils.c                        |  17 ++-
 notes-utils.h                        |  11 +-
 pathspec.c                           |   1 -
 preload-index.c                      |  11 +-
 read-cache.c                         |  44 +++---
 repository.c                         |   9 ++
 repository.h                         |  16 +++
 rerere.c                             |   8 +-
 revision.c                           |  12 +-
 sequencer.c                          |  41 +++---
 sequencer.h                          |   3 +-
 sha1-name.c                          |  56 ++++----
 submodule.c                          |   1 -
 t/helper/test-dump-fsmonitor.c       |   4 +-
 t/helper/test-dump-untracked-cache.c |   1 +
 t/helper/test-tool.h                 |   1 +
 tree.c                               |   1 -
 unpack-trees.c                       |   1 -
 wt-status.c                          |   4 +-
 74 files changed, 359 insertions(+), 273 deletions(-)

-- 
2.20.0.482.g66447595a7