From: Jonathan Tan <jonathantanmy@google.com>
To: git@vger.kernel.org
Cc: Jonathan Tan <jonathantanmy@google.com>,
gitster@pobox.com, sbeller@google.com
Subject: [PATCH v2 00/25] Move exported packfile funcs to its own file
Date: Tue, 8 Aug 2017 18:22:32 -0700 [thread overview]
Message-ID: <cover.1502241234.git.jonathantanmy@google.com> (raw)
In-Reply-To: <cover.1502220307.git.jonathantanmy@google.com>
Here is the complete patch set. I have only moved the exported functions
that operate with packfiles and their static helpers - for example,
static functions like freshen_packed_object() that are used only by
non-pack-specific functions are not moved.
In the end, 3 functions needed to be made global. They are
find_pack_entry(), mark_bad_packed_object(), and has_packed_and_bad().
Of the 3, find_pack_entry() is probably legitimately promoted. But I
think that the latter two functions needing to be accessed from
sha1_file.c points to a design that could be improved - they are only
used when packed_object_info() detects corruption, and used for marking
as bad and printing messages to the user respectively, which
packed_object_info() should probably do itself. But I have not made this
change in this patch set.
(Other than the 3 functions above, there are some variables and
functions that are temporarily made global, but reduced back to static
when the wide scope is no longer needed.)
Jonathan Tan (25):
pack: move pack name-related functions
pack: move static state variables
pack: move pack_report()
pack: move open_pack_index(), parse_pack_index()
pack: move release_pack_memory()
pack: move pack-closing functions
pack: move use_pack()
pack: move unuse_pack()
pack: move add_packed_git()
pack: move install_packed_git()
pack: move {,re}prepare_packed_git and approximate_object_count
pack: move unpack_object_header()
pack: move get_size_from_delta()
pack: move unpack_object_header()
sha1_file: set whence in storage-specific info fn
sha1_file: remove read_packed_sha1()
pack: move packed_object_info(), unpack_entry()
pack: move nth_packed_object_{sha1,oid}
pack: move check_pack_index_ptr(), nth_packed_object_offset()
pack: move find_pack_entry_one(), is_pack_valid()
pack: move find_sha1_pack()
pack: move find_pack_entry() and make it global
pack: move has_sha1_pack()
pack: move has_pack_index()
pack: move for_each_packed_object()
Makefile | 1 +
builtin/am.c | 1 +
builtin/cat-file.c | 1 +
builtin/clone.c | 1 +
builtin/count-objects.c | 1 +
builtin/fetch.c | 1 +
builtin/gc.c | 1 +
builtin/merge.c | 1 +
builtin/pack-redundant.c | 1 +
builtin/prune-packed.c | 1 +
cache.h | 122 +--
connected.c | 1 +
diff.c | 1 +
git-compat-util.h | 2 -
http-backend.c | 1 +
http-push.c | 1 +
http-walker.c | 1 +
pack.h | 137 +++
packfile.c | 1905 +++++++++++++++++++++++++++++++++++
path.c | 1 +
reachable.c | 1 +
revision.c | 1 +
server-info.c | 1 +
sha1_file.c | 2484 ++++++----------------------------------------
sha1_name.c | 1 +
streaming.c | 1 +
26 files changed, 2350 insertions(+), 2321 deletions(-)
create mode 100644 packfile.c
--
2.14.0.434.g98096fd7a8-goog
next prev parent reply other threads:[~2017-08-09 1:23 UTC|newest]
Thread overview: 88+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-08 19:32 [RFC PATCH 00/10] An attempt to move packfile funcs to its own file Jonathan Tan
2017-08-08 19:32 ` [RFC PATCH 01/10] pack: move pack name-related functions Jonathan Tan
2017-08-08 20:36 ` Stefan Beller
2017-08-08 20:50 ` Jonathan Tan
2017-08-09 12:00 ` Christian Couder
2017-08-09 17:16 ` Jonathan Tan
2017-08-11 19:38 ` Ben Peart
2017-08-11 21:34 ` Junio C Hamano
2017-08-16 22:53 ` Jonathan Tan
2017-08-08 19:32 ` [RFC PATCH 02/10] pack: move static state variables Jonathan Tan
2017-08-08 19:32 ` [RFC PATCH 03/10] pack: move pack_report() Jonathan Tan
2017-08-08 19:32 ` [RFC PATCH 04/10] pack: move open_pack_index(), parse_pack_index() Jonathan Tan
2017-08-08 20:19 ` Junio C Hamano
2017-08-08 20:45 ` Jonathan Tan
2017-08-08 19:32 ` [RFC PATCH 05/10] pack: move release_pack_memory() Jonathan Tan
2017-08-08 19:32 ` [RFC PATCH 06/10] pack: move pack-closing functions Jonathan Tan
2017-08-08 19:32 ` [RFC PATCH 07/10] pack: move use_pack() Jonathan Tan
2017-08-08 19:32 ` [RFC PATCH 08/10] pack: move unuse_pack() Jonathan Tan
2017-08-08 19:32 ` [RFC PATCH 09/10] pack: move add_packed_git() Jonathan Tan
2017-08-08 19:32 ` [RFC PATCH 10/10] pack: move install_packed_git() Jonathan Tan
2017-08-08 20:05 ` [RFC PATCH 00/10] An attempt to move packfile funcs to its own file Junio C Hamano
2017-08-08 20:43 ` Jonathan Tan
2017-08-08 21:04 ` Junio C Hamano
2017-08-09 1:22 ` Jonathan Tan [this message]
2017-08-10 17:21 ` [PATCH v2 00/25] Move exported " Stefan Beller
2017-08-10 21:19 ` Junio C Hamano
2017-08-10 21:59 ` Jonathan Tan
2017-08-10 22:40 ` Junio C Hamano
2017-08-11 20:36 ` [PATCH 0/2] non-move patches in preparation for packfile.c Jonathan Tan
2017-08-11 20:36 ` [PATCH 1/2] sha1_file: set whence in storage-specific info fn Jonathan Tan
2017-08-11 21:52 ` Junio C Hamano
2017-08-11 20:36 ` [PATCH 2/2] sha1_file: remove read_packed_sha1() Jonathan Tan
2017-08-11 22:06 ` Junio C Hamano
2017-08-11 19:41 ` [PATCH v2 00/25] Move exported packfile funcs to its own file Ben Peart
2017-08-18 23:36 ` Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 01/25] pack: move pack name-related functions Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 02/25] pack: move static state variables Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 03/25] pack: move pack_report() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 04/25] pack: move open_pack_index(), parse_pack_index() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 05/25] pack: move release_pack_memory() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 06/25] pack: move pack-closing functions Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 07/25] pack: move use_pack() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 08/25] pack: move unuse_pack() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 09/25] pack: move add_packed_git() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 10/25] pack: move install_packed_git() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 11/25] pack: move {,re}prepare_packed_git and approximate_object_count Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 12/25] pack: move unpack_object_header() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 13/25] pack: move get_size_from_delta() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 14/25] pack: move unpack_object_header() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 15/25] sha1_file: set whence in storage-specific info fn Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 16/25] sha1_file: remove read_packed_sha1() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 17/25] pack: move packed_object_info(), unpack_entry() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 18/25] pack: move nth_packed_object_{sha1,oid} Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 19/25] pack: move check_pack_index_ptr(), nth_packed_object_offset() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 20/25] pack: move find_pack_entry_one(), is_pack_valid() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 21/25] pack: move find_sha1_pack() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 22/25] pack: move find_pack_entry() and make it global Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 23/25] pack: move has_sha1_pack() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 24/25] pack: move has_pack_index() Jonathan Tan
2017-08-09 1:22 ` [PATCH v2 25/25] pack: move for_each_packed_object() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 00/23] Move exported packfile funcs to its own file Jonathan Tan
2017-08-19 7:33 ` Junio C Hamano
2017-08-20 6:40 ` Junio C Hamano
2017-08-21 18:40 ` Jonathan Tan
2017-08-21 22:55 ` Junio C Hamano
2017-08-18 22:20 ` [PATCH v3 01/23] pack: move pack name-related functions Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 02/23] pack: move static state variables Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 03/23] pack: move pack_report() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 04/23] pack: move open_pack_index(), parse_pack_index() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 05/23] pack: move release_pack_memory() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 06/23] pack: move pack-closing functions Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 07/23] pack: move use_pack() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 08/23] pack: move unuse_pack() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 09/23] pack: move add_packed_git() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 10/23] pack: move install_packed_git() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 11/23] pack: move {,re}prepare_packed_git and approximate_object_count Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 12/23] pack: move unpack_object_header_buffer() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 13/23] pack: move get_size_from_delta() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 14/23] pack: move unpack_object_header() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 15/23] pack: move clear_delta_base_cache(), packed_object_info(), unpack_entry() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 16/23] pack: move nth_packed_object_{sha1,oid} Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 17/23] pack: move check_pack_index_ptr(), nth_packed_object_offset() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 18/23] pack: move find_pack_entry_one(), is_pack_valid() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 19/23] pack: move find_sha1_pack() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 20/23] pack: move find_pack_entry() and make it global Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 21/23] pack: move has_sha1_pack() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 22/23] pack: move has_pack_index() Jonathan Tan
2017-08-18 22:20 ` [PATCH v3 23/23] pack: move for_each_packed_object() Jonathan Tan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1502241234.git.jonathantanmy@google.com \
--to=jonathantanmy@google.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=sbeller@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).