[PATCH v4 0/2] refs: remove the last use of "errno" from the public API
From: Ævar Arnfjörð Bjarmason <hidden>
Date: 2022-01-26 14:37:11
On Wed, Jan 12 2022, Junio C Hamano wrote:
Ævar Arnfjörð Bjarmason [off-list ref] writes:quoted
This is a follow-up to the recently landed ab/refs-errno-cleanup topic, I missed a spot and left some meaningless use of "errno" in the refs (file) backend.Is it a fix "oops the ones we merged to 'master' were buggy and needs these on top to be correct"? If it is merely a follow-up "I am doing more of the same thing as we aimed to do in that topic", I'd rather leave it to the next cycle.
As discussed before the last release you merged 1/3 of v3 of this down
as 31e39123695 (Merge branch 'ab/refs-errno-cleanup', 2022-01-14).
Now that we're post-release here's the remaining 2 patches, which as
the range-diff shows have no changes since v3, except an updated
commit message for 2/2 mentioning that previously merged 31e39123695.
This has no conflicts currently with "seen", but with the ongoing
reftable integration that probably won't be true for long, so I think
it would be good to queue this up sooner than later. I'm hoping that
between myself & Han-Wen's main push that we can get "real" reftable
integration started during this cycle.
Ævar Arnfjörð Bjarmason (2):
sequencer: don't use die_errno() on refs_resolve_ref_unsafe() failure
refs API: remove "failure_errno" from refs_resolve_ref_unsafe()
refs.c | 51 +++++++++++++--------------------------
refs.h | 7 +-----
refs/files-backend.c | 31 +++++++-----------------
remote.c | 3 +--
sequencer.c | 10 +++-----
t/helper/test-ref-store.c | 3 +--
worktree.c | 11 +++------
7 files changed, 35 insertions(+), 81 deletions(-)
Range-diff against v3:
1: a45268ac24b < -: ----------- refs API: use "failure_errno", not "errno"
2: 8d8691a5e93 = 1: 7f31277fd57 sequencer: don't use die_errno() on refs_resolve_ref_unsafe() failure
3: 8f937d8f64a ! 2: 5e6f63afb40 refs API: remove "failure_errno" from refs_resolve_ref_unsafe()
@@ Commit message
boilerplate "ignore_errno", since they only cared about whether the
return value was NULL or not, i.e. if the ref could be resolved.
- There was one caller left in sequencer.c that used the
+ There was one small issue with that series fixed with a follow-up in
+ 31e39123695 (Merge branch 'ab/refs-errno-cleanup', 2022-01-14) a small
+ bug in that series was fixed.
+
+ After those two there was one caller left in sequencer.c that used the
"failure_errno', but as of the preceding commit it uses a boilerplate
"ignore_errno" instead.
+ This leaves the public refs API without any use of "failure_errno" at
+ all. We could still do with a bit of cleanup and generalization
+ between refs.c and refs/files-backend.c before the "reftable"
+ integration lands, but that's all internal to the reference code
+ itself.
+
So let's remove this output parameter. Not only isn't it used now, but
it's unlikely that we'll want it again in the future. We'd like to
slowly move the refs API to a more file-backend independent way of
--
2.35.0.890.g96f29f9df61