threads / patch / 61459

patchfetch-pack: Remove unused struct 'loose_object_iter'

Subject: [PATCH] fetch-pack: Remove unused struct 'loose_object_iter'

## tl;dr

5 messages between May 12, 2024 and May 15, 2024. Diffs are folded; open one to read it.

replies: 4people: 4as markdown or json

Dr. David Alan Gilbert· May 12, 2024, 00:59 UTC · lore

'loose_object_iter' in fetch-pack.c is unused since commit 97b2fa08b6b9ee3e ("fetch-pack: drop custom loose object cache") Remove it.

Signed-off-by: Dr. David Alan Gilbert <dave@treblig.org>
---
 fetch-pack.c | 5 -----
 1 file changed, 5 deletions(-)
Show changes to fetch-pack.c +0 −5
diff --git a/fetch-pack.c b/fetch-pack.c
index 091f9a80a9..28a62e502e 100644
--- a/fetch-pack.c
+++ b/fetch-pack.c
@@ -732,11 +732,6 @@ static void mark_alternate_complete(struct fetch_negotiator *negotiator UNUSED,
 	mark_complete(&obj->oid);
 }
 
-struct loose_object_iter {
-	struct oidset *loose_object_set;
-	struct ref *refs;
-};
-
 /*
  * Mark recent commits available locally and reachable from a local ref as
  * COMPLETE.
-- 
2.45.0
Patrick Steinhardt· May 13, 2024, 10:02 UTC · re: Dr. David Alan Gilbert · lore

Re: [PATCH] fetch-pack: Remove unused struct 'loose_object_iter'

On Sun, May 12, 2024 at 01:59:13AM +0100, Dr. David Alan Gilbert wrote:

Tiny nit: we don't capitalize the first letter after the colon in the subject. I don't think this warrants a reroll of this patch though.

> 'loose_object_iter' in fetch-pack.c is unused since
> commit 97b2fa08b6b9ee3e ("fetch-pack: drop custom loose object cache")
> Remove it.

Good catch, and thanks for providing historical context. The patch looks obviously good to me.

Patrick
Junio C Hamano· May 13, 2024, 23:56 UTC · re: Patrick Steinhardt · lore

Re: [PATCH] fetch-pack: Remove unused struct 'loose_object_iter'

Patrick Steinhardt <ps@pks.im> writes:
Show 11 quoted lines
> On Sun, May 12, 2024 at 01:59:13AM +0100, Dr. David Alan Gilbert wrote:
>
> Tiny nit: we don't capitalize the first letter after the colon in the
> subject. I don't think this warrants a reroll of this patch though.
>
>> 'loose_object_iter' in fetch-pack.c is unused since
>> commit 97b2fa08b6b9ee3e ("fetch-pack: drop custom loose object cache")
>> Remove it.
>
> Good catch, and thanks for providing historical context. The patch looks
> obviously good to me.

Thanks, both. Will queue with a slight copy-editing of the proposed log message.

Jeff King· May 15, 2024, 06:46 UTC · re: Dr. David Alan Gilbert · lore

Re: [PATCH] fetch-pack: Remove unused struct 'loose_object_iter'

On Sun, May 12, 2024 at 01:59:13AM +0100, Dr. David Alan Gilbert wrote:
> 'loose_object_iter' in fetch-pack.c is unused since
> commit 97b2fa08b6b9ee3e ("fetch-pack: drop custom loose object cache")
> Remove it.

Thanks, this was my fault for leaving it in. The patch looks obviously good.

I wish there was a good way to get the compiler to report on unused types, but I don't think there is (it's a complicated problem in general, but file-local ones like this feel like they should be easy to spot).

Here's a really hacky (and quadratic) attempt to find defined structs that aren't mentioned elsewhere:

  for i in $(git grep -ho '^struct [a-z_]* {' | cut -d' ' -f2)
  do
	used=$(git grep -Phc "\b$i\b" |
	       perl -ne '$x += $_; END { print $x }')
	echo "$used $i"
  done |
  sort -n
which finds exactly one unused struct, the one in this patch.
-Peff
Dr. David Alan Gilbert· May 15, 2024, 10:41 UTC · re: Jeff King · lore

Re: [PATCH] fetch-pack: Remove unused struct 'loose_object_iter'

* Jeff King (peff@peff.net) wrote:
Show 8 quoted lines
> On Sun, May 12, 2024 at 01:59:13AM +0100, Dr. David Alan Gilbert wrote:
> 
> > 'loose_object_iter' in fetch-pack.c is unused since
> > commit 97b2fa08b6b9ee3e ("fetch-pack: drop custom loose object cache")
> > Remove it.
> 
> Thanks, this was my fault for leaving it in. The patch looks obviously
> good.

Thanks. Most projects I've looked at seem to have one or more.

> I wish there was a good way to get the compiler to report on unused
> types, but I don't think there is (it's a complicated problem in
> general, but file-local ones like this feel like they should be easy to
> spot).
Alas not.
Show 12 quoted lines
> Here's a really hacky (and quadratic) attempt to find defined structs
> that aren't mentioned elsewhere:
> 
>   for i in $(git grep -ho '^struct [a-z_]* {' | cut -d' ' -f2)
>   do
> 	used=$(git grep -Phc "\b$i\b" |
> 	       perl -ne '$x += $_; END { print $x }')
> 	echo "$used $i"
>   done |
>   sort -n
> 
> which finds exactly one unused struct, the one in this patch.
My similarly hacky script was:
  
  grep -r '^struct [^(=]* {'| tr ':' ' ' |
  while read FNAME STRUCT NAME TAIL
  do
    echo "$FNAME" | grep -q '[.]c$' || continue
  echo ">>>" $FNAME ' : ' $NAME
  echo -n "Count: "
  grep $NAME $FNAME | wc -l 
  #grep $VARNAME $FNAME
  done
(A count of 1 being the unused ones).
Dave
> 
> -Peff
-- 
 -----Open up your eyes, open up your mind, open up your code -------   
/ Dr. David Alan Gilbert    |       Running GNU/Linux       | Happy  \ 
\        dave @ treblig.org |                               | In Hex /
 \ _________________________|_____ http://www.treblig.org   |_______/

← back to recent threads