mbox series

[v2,0/5] date.[ch] API: split from cache.h, add API docs, stop leaking memory

Message ID cover-v2-0.5-00000000000-20220204T235143Z-avarab@gmail.com (mailing list archive)
Headers show
Series date.[ch] API: split from cache.h, add API docs, stop leaking memory | expand

Message

Ævar Arnfjörð Bjarmason Feb. 4, 2022, 11:53 p.m. UTC
Fix memory leaks in the date.[ch] API, in preparation for larger
changes to make the revision walking API stop leaking memory.

This is a trivial re-roll to v1, to fix an issue that "make hdr-check"
spotted. For v1 see:
https://lore.kernel.org/git/cover-0.5-00000000000-20220202T195651Z-avarab@gmail.com/

Ævar Arnfjörð Bjarmason (5):
  cache.h: remove always unused show_date_human() declaration
  date API: create a date.h, split from cache.h
  date API: provide and use a DATE_MODE_INIT
  date API: add basic API docs
  date API: add and use a date_mode_release()

 archive-zip.c         |  1 +
 builtin/am.c          |  1 +
 builtin/commit.c      |  1 +
 builtin/fast-import.c |  1 +
 builtin/show-branch.c |  1 +
 builtin/tag.c         |  1 +
 cache.h               | 50 -----------------------------
 config.c              |  1 +
 date.c                |  9 ++++--
 date.h                | 73 +++++++++++++++++++++++++++++++++++++++++++
 http-backend.c        |  1 +
 ident.c               |  1 +
 object-name.c         |  1 +
 pretty.h              | 10 ++++++
 ref-filter.c          |  3 +-
 reflog-walk.h         |  1 +
 refs.c                |  1 +
 strbuf.c              |  1 +
 t/helper/test-date.c  |  5 ++-
 t/t0006-date.sh       |  2 ++
 20 files changed, 111 insertions(+), 54 deletions(-)
 create mode 100644 date.h

Range-diff against v1:
1:  fb21bd7b2c5 = 1:  fb21bd7b2c5 cache.h: remove always unused show_date_human() declaration
2:  7de62956db4 ! 2:  96c904d0b9a date API: create a date.h, split from cache.h
    @@ pretty.h: int format_set_trailers_options(struct process_trailer_options *opts,
     +
      #endif /* PRETTY_H */
     
    + ## reflog-walk.h ##
    +@@
    + 
    + struct commit;
    + struct reflog_walk_info;
    ++struct date_mode;
    + 
    + void init_reflog_walk(struct reflog_walk_info **info);
    + int add_reflog_for_walk(struct reflog_walk_info *info,
    +
      ## refs.c ##
     @@
      #include "strvec.h"
3:  2d5210f9421 = 3:  9ef003a83bd date API: provide and use a DATE_MODE_INIT
4:  aab2ae9cc72 = 4:  3f70b1aa4c5 date API: add basic API docs
5:  b67e23549ed = 5:  60dbadacb16 date API: add and use a date_mode_release()

Comments

Ævar Arnfjörð Bjarmason Feb. 14, 2022, 5:25 p.m. UTC | #1
On Sat, Feb 05 2022, Ævar Arnfjörð Bjarmason wrote:

> Fix memory leaks in the date.[ch] API, in preparation for larger
> changes to make the revision walking API stop leaking memory.
>
> This is a trivial re-roll to v1, to fix an issue that "make hdr-check"
> spotted. For v1 see:
> https://lore.kernel.org/git/cover-0.5-00000000000-20220202T195651Z-avarab@gmail.com/

Junio: I think this series may have fallen between the cracks. Any
chance you're willing to pick this up? I'm keen to submit the larger
revision.[ch] leak fixes in this cycle, and this is one of the few
remaining dependencies for that.

> Ævar Arnfjörð Bjarmason (5):
>   cache.h: remove always unused show_date_human() declaration
>   date API: create a date.h, split from cache.h
>   date API: provide and use a DATE_MODE_INIT
>   date API: add basic API docs
>   date API: add and use a date_mode_release()
>
>  archive-zip.c         |  1 +
>  builtin/am.c          |  1 +
>  builtin/commit.c      |  1 +
>  builtin/fast-import.c |  1 +
>  builtin/show-branch.c |  1 +
>  builtin/tag.c         |  1 +
>  cache.h               | 50 -----------------------------
>  config.c              |  1 +
>  date.c                |  9 ++++--
>  date.h                | 73 +++++++++++++++++++++++++++++++++++++++++++
>  http-backend.c        |  1 +
>  ident.c               |  1 +
>  object-name.c         |  1 +
>  pretty.h              | 10 ++++++
>  ref-filter.c          |  3 +-
>  reflog-walk.h         |  1 +
>  refs.c                |  1 +
>  strbuf.c              |  1 +
>  t/helper/test-date.c  |  5 ++-
>  t/t0006-date.sh       |  2 ++
>  20 files changed, 111 insertions(+), 54 deletions(-)
>  create mode 100644 date.h
>
> Range-diff against v1:
> 1:  fb21bd7b2c5 = 1:  fb21bd7b2c5 cache.h: remove always unused show_date_human() declaration
> 2:  7de62956db4 ! 2:  96c904d0b9a date API: create a date.h, split from cache.h
>     @@ pretty.h: int format_set_trailers_options(struct process_trailer_options *opts,
>      +
>       #endif /* PRETTY_H */
>      
>     + ## reflog-walk.h ##
>     +@@
>     + 
>     + struct commit;
>     + struct reflog_walk_info;
>     ++struct date_mode;
>     + 
>     + void init_reflog_walk(struct reflog_walk_info **info);
>     + int add_reflog_for_walk(struct reflog_walk_info *info,
>     +
>       ## refs.c ##
>      @@
>       #include "strvec.h"
> 3:  2d5210f9421 = 3:  9ef003a83bd date API: provide and use a DATE_MODE_INIT
> 4:  aab2ae9cc72 = 4:  3f70b1aa4c5 date API: add basic API docs
> 5:  b67e23549ed = 5:  60dbadacb16 date API: add and use a date_mode_release()
Junio C Hamano Feb. 14, 2022, 7:52 p.m. UTC | #2
Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes:

> On Sat, Feb 05 2022, Ævar Arnfjörð Bjarmason wrote:
>
>> Fix memory leaks in the date.[ch] API, in preparation for larger
>> changes to make the revision walking API stop leaking memory.
>>
>> This is a trivial re-roll to v1, to fix an issue that "make hdr-check"
>> spotted. For v1 see:
>> https://lore.kernel.org/git/cover-0.5-00000000000-20220202T195651Z-avarab@gmail.com/
>
> Junio: I think this series may have fallen between the cracks. Any
> chance you're willing to pick this up? I'm keen to submit the larger
> revision.[ch] leak fixes in this cycle, and this is one of the few
> remaining dependencies for that.

I haven't seen the topic reviewed, and I haven't even had a chance
to give a cursory look, so until then, it will remain on the list
archive.

Thanks for reminding.