[prev in list] [next in list] [prev in thread] [next in thread] 

List:       git
Subject:    Re: [GSoC][Proposal] Unify ref-filter formats with other --pretty formats
From:       Christian Couder <christian.couder () gmail ! com>
Date:       2023-03-31 20:38:31
Message-ID: CAP8UFD2Rq3Mh=X_g3_etHOje=G5hYgsFMO=6MuzgXUsysC+79A () mail ! gmail ! com
[Download RAW message or body]

Hi,

On Thu, Mar 30, 2023 at 7:21 PM Kousik Sanagavarapu
<five231003@gmail.com> wrote:
>
> This proposal can also be read at
> https://docs.google.com/document/d/1JBznA5n0WdWsbEskCeXxOnQuaa0urD89VtprxstLPzo/edit?usp=sharing

Thanks for your proposal!

[...]

> Pre GSoC
> ========
> I first got into Git's source code around October, 2022 and have been
> going through code of topics that I found interesting whenever I had
> some time away from my college work. The following are the patches that
> I submitted, from earliest to the latest:

Thanks for these patches!

[...]

> Previous Work
> =============
> There has been much work done in the past in this area. It majorly comes
> from previous Outreachy interns and GSoC students.
>
> Olga Telezhnaia <olyatelezhnaya@gmail.com> did work in this area in the
> fields of `cat-file` and `ref-filter` as a part of her Outreachy Internship
> titled "Unifying Git's format languages". This work and also the work done
> after that helped take ref-filter to a more general setting. She blogged
> about her work here
>
> https://medium.com/@olyatelezhnaya
>
>
> Hariom Verma <hariom18599@gmail.com> did work in this area as his GSoC
> project titled "Unify ref-filter formats with other --pretty formats".
> This is the major work done in this area and the final report can be
> read at
>
> https://harry-hov.github.io/blogs/posts/the-final-report
>
> This work is very useful as this serves as a kind of documentation
> and starting point to work towards the goal.
>
> ZheNing Hu <adlternative@gmail.com> has done major work under his GSoC
> project titled "Use ref-filter formats in git cat-file" in the area of
> git cat-file, but more relevant to this project are the changes done to
> ref-filter. This work was a continuation of Olga's work and made some
> changes to ref-filter logic. His final report can be read here
>
> https://github.com/adlternative/adlternative.github.io/blob/gh-pages/blogs/gsoc/GSOC-Git-Final-Blog.md
>
> Nsengiyumva Wilberforce <nsengiyumvawilberforce@gmail.com> did work in
> this area as a part of his Outreachy Internship titled "Unify ref-filter
> formats with other --pretty formats".

Actually he has been working on this outside of Outreachy (and any
other program) as he didn't fulfill the requirements for being
accepted by Outreachy.

> He got rid of the duplicate
> implementation of the `signature` atom logic.

Even if the end goal is to get rid of duplicate implementations, for
now the ref-filter formats need to have equivalent atoms as what the
pretty formats have. Otherwise it will not be possible to fully
replace pretty formats using ref-filter formats. So for now the goal
of Wilberforce's patch is to add `signature` atoms to the ref-filter
formats.

> This work can be read here
>
> https://lore.kernel.org/git/20230311210607.64927-1-nsengiyumvawilberforce@gmail.com/
>
> Difficulties
> ============
> A major difficulty is backward compatibility, so any changes made to
> remove the duplicated logic would need to be done so very carefully.
> Any new tests added must also be very precise so as to efficiently
> test the changes that are made.
>
> There are also minor difficulties, such as the older tests failing
> because of the changes made, so the work will have to be in such a way
> that those tests are successful and the duplicated logic is refactored.
>
> The Plan
> ========
> I think Hariom's final report of his GSoC project is a good starting
> point for working on the project. The report lists the work which is
> left in the "WHATS LEFT?" section, so I think the first issue to work
> on would be to look into why "Around 30% of the log tests are failing"
> and to work in the area of mbox/email formatting for commits. Work can
> also be done to make pretty handle unknown formatting options.

More details about these would be nice.

> From here, I can work on the remaining portion of the formats

Here too.

> and can
> remove the duplicated logic wherever possible, also writing tests to
> ensure that everything works.
>
> I can take the approach similar to what Hariom did before this.

Could you give more details about what Hariom did that you would also
like to do?

> Estimated Timeline
> ==================
>
> Misc
> April 5 to May 3
> - Continue to work on git and get more familiar with the code.
>
> - Find and fix stuff.
>
> - Work on stuff that interests me.
>
> Community Bonding
> May 4 to May 28
> - Get myself familiar with the code of ref-filter.{c, h} and
>   pretty.{c, h}.
>
> - Communicate with my mentors about the approaches that can
>   be taken to get to the goal.
>
> - Working on Hariom's branches (mentioned in his final report)
>   and making changes on top of them.

Can you give links to these branches and tell a bit about the changes
you would like to make on top of each one?

Best,
Christian.
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic