threads / discuss / 58702

[OUTREACHY V2] Unify ref-filter formats with other --pretty formats[proposal]

Subject: [OUTREACHY V2] Unify ref-filter formats with other --pretty formats[proposal]

## tl;dr

7 messages between Oct 27, 2022 and Oct 31, 2022.

replies: 6people: 4as markdown or json

NSENGIYUMVA WILBERFORCE· Oct 27, 2022, 11:58 UTC · lore

Hi team, I am super excited and eagerly waiting for your comments on my second version of the proposal. I have addressed all the comments that I was given in the first version.

Google docs link: https://docs.google.com/document/d/1Kdx8DVWF3c5pwV5-A8Z4n-SoRHlMDncI1gNeGCiLNsE/edit#

Name:Nsengiyumva Wilberforce
Major:Software engineering
Mobile no.:+256 785065399
Email:nsengiyumvawilberforce@gmail.com
IRC:wilber4c
Github:nsengiyumva-wilberforce
Linkedin:https://www.linkedin.com/in/nsengiyumva-wilberforce-623664192/
Time Zone:EAT (UTC + 03:00)
##About me

I am doing a Bachelor of Science in software engineering at Makerere university in my 4th year(final). I spend most of my time writing PHP applications. I am also interested in Java and embedded systems development and I have participated in embedded systems development projects like <https://www.ademnea.net/>.

##Microproject

When I was browsing the outreachy projects on outreachy website, I was super excited about Git because I use it in most of my college work. At first, it was intimidating for me to introduce myself to the community. But I am glad I took a step. I am glad that I completed my microproject and the whole process gave me confidence on how to submit patches, communicate with the community members and interestingly, it was a big learning process for me. The following are the details about my microproject with public-inbox links to different versions.

Mailing List for the microproject: <https://public-inbox.org/git/pull.1362.v4.git.git.1665772130030.gitgitgadget@gmail.com/>

Github:  <https://github.com/git/git/pull/1362>
Status: next
##Proposed Project
Abstract

Git has an old problem of duplicated implementations of some logic. For example, Git had at least 4 different implementations to format command output for different commands. The foremost aim of this project is to simplify codebase by getting rid of duplication of a similar logic and, as a result, simplify adding new functionality. The current task is to reuse ref-filter formatting logic to minimize code duplication and to have one unified interface to extract all needed data from the object and to print it properly.

##Previous Work

JayDeep Das(GSoC) tried to “add a new atom ‘signature’”. However, I have not been able to find his complete work in the public box, it seems his work was not complete. According to <https://github.com/JDeepD/git-1/commit/85ddfa4b33f2b6f05524e648e7165c722188093e> which was suggested at the outreachy website, it looks like he did not complete writing the tests for the signature atom he was unifying. Maybe with the help of the mentors, I could plan to start from where he stopped from.

Hariom Verma contributed(https://harry-hov.github.io/blogs/posts/the-final-report) tremendously towards “Unifying Git’s format languages” during his 2020 GSoC internship. Hariom finished most of the formatting options and this will help me build on his work. His work looks smart and understandable thus adding on his work will be easy. And also his blog is very fabulous, it’s a shooting point for me to start understanding the codebase very well. Hariom mentions in his report that 30 % of the log related tests are failing, he also mentions that the cause of tests failure is because of the missing mailmap logic and mbox/email commit format. Hariom also says it does not handle unknown formatting options. I plan to start with his advice about the cause of the failure of these tests and then intuitively refactor them into something cool.

##Summary of remaining tasks by Hariom
-Around 30% log related tests are failing
-Teach pretty-lib.{c,h} to handle incorrect formatting option
-Email/MBoxed commit format needs work
##Some useful mailing lists links from Hariom
- https://public-inbox.org/git/pull.684.v4.git.1598046110.gitgitgadget@gmail.com/
- https://public-inbox.org/git/pull.707.git.1597841551.gitgitgadget@gmail.com/
- https://public-inbox.org/git/pull.707.git.1597841551.gitgitgadget@gmail.com/

Olga<olyatelezhnaya@gmail.com> has done great work in “Unifying Git’s format languages” during Outreachy Round 15 and continued even after that [from 28-09-2017 to 04-04-2019]. Her work is mostly related to `cat-file` and `ref-filter`.

She already did a pretty nice job in preparing ref-filter for more general usage of its formatting logic. It will give me the possibility to make the migration of pretty.c easier.

##The Plan

My task is to look at how pretty formats are different from ref-filter formats. When some format is supported by the pretty formats but not by the ref-filter formats, and should prepare some patches to support the ref-filter format. I will basically build on Hariom’s previous work

Step 1:List down all the formats supported by the pretty format but are not supported by the ref-filter format e.g

User formats like %ah, %ch, %d, %D, %(describe[:options]), %S,
%GG,%G?, %GS, %GK, %GF, %GP, %GT, %gD, %gd, %gn, %gN, %ge, %gE, %gs.
PS: I am not pretty sure if this list is exhaustive.

Step 2:Maybe s/related/related to/ formats submitted by different contributors to get a solid and a thorough understanding of the pretty and ref-filter formats.

Step 3:s/Understanding/Understand/, and then look at how it was implemented in ref-filter format. This is going to give me direction to refactor the remaining pretty formats

Step 4(possible approach): Pick one format option at a time and convert it to use ref-filter option format

#Estimated Timeline

period: December 5,2022 - January 2, 2023 Community bonding tasks -understanding all the logic of pretty.* and ref-filter.*

(what functions are used and how all formatting process is going)
-Working with mentors and identifying the best candidates to be converted first.

-Converting a couple of formatting options to reuse ref-filter formatting logic and update the documentation

period: December 25, 2022
Christmas celebrations: Join my parents for celebrations

period: January 1, 2023: New year’s day holiday:Join my parents for celebrations

period: January 3 - February 3, 2023 Coding Phase 1 tasks

-Add on Hariom’s work:Converting more formatting options to reuse ref-filter formatting logic.

-Finish his incomplete work
-Update Documentation.
-Possibly look at Olga’s work

period: January 18, 2023: Cake cutting with my friends My Birthday:cake cutting

period:From January 6 - January 18, 2023: Semester Exams: I will be working for a few hours per day and always be available to reply to any communication

period:February 3 - March 3, 2023 Coding Phase 2 tasks -Final touch-ups and bug fixes(if any)

-Update Documentation

-Wrapping up. Blogging about Git

I do love writing a lot however much I have not taken time to put out my personal opinions and thinking. Being an avid reader, I think it’s now my time to start letting other people read what I write, to let people know what I think, what I am doing with my life. And guess what, I am super excited to start with Git.

Availability

I can easily devote 30-40 hours per week since my college just requires 15 hours per week. I plan even to work more extra hours for my internship tasks when time allows.

Post Outreachy

Apart from being an Outreachy intern, I plan to remain a member of git community even after my internship, because I believe there is more to do even after the Outreachy internship

Here are some other things I’d like to do beyond Outreachy
Mentor other students
Doing code reviews for other contributors
May be complete the work that I will have left pending after my internship
Keep learning from all of you...
Experience with Open Source

I have little experience with open source, so I hope to learn a lot through my internship with Git from you all.

Motivation

Git being a world’s best developer version control system, I feel overjoyed that even my little first patch was accepted. The community is very welcoming, the people there answer questions very first and this turns everything overwhelming to a simple process

Closing remarks (Optional)

I am a consistent and passionate learner. Even if solving a problem may look tricky to me, I just give it all my 100% time and think of 1000s of ways to approach it. I know I do not have the required expertise to begin working with a skilled team like Git but I believe in learning slowly by slowly until I will make it to the peak.

I hope you consider and give me a chance to work with git. It’s a great hope I have that this opportunity is bringing me closer to my dreams. Thanks for your consideration.

Best Regards
Nsengiyumva wilberforce
Hariom verma· Oct 28, 2022, 08:05 UTC · re: NSENGIYUMVA WILBERFORCE · lore

Re: [OUTREACHY V2] Unify ref-filter formats with other --pretty formats[proposal]

Hi,

On Thu, Oct 27, 2022 at 5:28 PM NSENGIYUMVA WILBERFORCE <nsengiyumvawilberforce@gmail.com> wrote:

Show 24 quoted lines
>
> ##Proposed Project
>
> Abstract
>
> Git has an old problem of duplicated implementations of some logic.
> For example, Git had at least 4 different implementations to format
> command output for different commands. The foremost aim of this
> project is to simplify codebase by getting rid of duplication of a
> similar logic and, as a result, simplify adding new functionality.
> The current task is to reuse ref-filter formatting logic to minimize
> code duplication and to have one unified interface to extract all
> needed data from the object and to print it properly.
>
> ##Previous Work
>
> JayDeep Das(GSoC) tried to “add a new atom ‘signature’”. However, I
> have not been able to find his complete work in the public box, it
> seems his work was not complete. According to
> <https://github.com/JDeepD/git-1/commit/85ddfa4b33f2b6f05524e648e7165c722188093e>
> which was suggested at the outreachy website, it looks like he did not
> complete writing the tests for the signature atom he was unifying.
> Maybe with the help of the mentors, I could plan to start from where
> he stopped from.
maybe s/stopped from/stopped/
You can elaborate a bit more on Jaydeep's work.
Like,
- What tests are missing?
- Any dificulties he faced during writing tests?

Also, in my final report, I mentioned refactoring the signature logic according to Junio's comment (https://public-inbox.org/git/xmqqzh7jcqv7.fsf@gitster.c.googlers.com/). Does Jaydeep's patch respect Junio's comment? I think you can include a bit about this too,

> Hariom Verma contributed(https://harry-hov.github.io/blogs/posts/the-final-report)
> tremendously towards “Unifying Git’s format languages” during his 2020
> GSoC internship.

s/Unifying Git’s format languages/Unifying ref-filter formats with other --pretty formats/ s/during his 2020 GSoC internship/during GSoC'20/

Show 5 quoted lines
> Hariom finished most of the formatting options and
> this will help me build on his work.  His work looks smart and
> understandable thus adding on his work will be easy. And also his blog
> is very fabulous, it’s a shooting point for me to start understanding
> the codebase very well.

It looks more like praise to me. I'm glad you like my work and blogs. But I would like to see some details here. Like work is almost 2+ years old. What changed in pretty.* and ref-filter.* since then? Is my work still compatible with the latest changes?

> Hariom mentions in his report that 30 % of the
> log related tests are failing, he also mentions that the cause of
> tests failure is because of the missing mailmap logic and mbox/email
> commit format.

Okay. But see if you can gather more details about failing tests and remaining work.

> Hariom also says it does not handle unknown formatting
> options.
what do you mean by "it" here?
> I plan to start with his advice about the cause of the
> failure of these tests and then intuitively refactor them into
> something cool.
I didn’t get the line "intuitively refactor them into something cool".
Show 16 quoted lines
> ##Summary of remaining tasks by Hariom
>
> -Around 30% log related tests are failing
>
> -Teach pretty-lib.{c,h} to handle incorrect formatting option
>
> -Email/MBoxed commit format needs work
>
> ##Some useful mailing lists links from Hariom
>
> - https://public-inbox.org/git/pull.684.v4.git.1598046110.gitgitgadget@gmail.com/
>
> - https://public-inbox.org/git/pull.707.git.1597841551.gitgitgadget@gmail.com/
>
> - https://public-inbox.org/git/pull.707.git.1597841551.gitgitgadget@gmail.com/
>
Okay
Show 8 quoted lines
> Olga<olyatelezhnaya@gmail.com> has done great work in “Unifying Git’s
> format languages” during Outreachy Round 15 and continued even after
> that [from 28-09-2017 to 04-04-2019]. Her work is mostly related to
> `cat-file` and `ref-filter`.
>
> She already did a pretty nice job in preparing ref-filter for more
> general usage of its formatting logic. It will give me the possibility
> to make the migration of pretty.c easier.

ZheNing Hu continued the Olga's work during GSoC'21. You can tell a bit more about that too.

-- 
I would review the rest later.

It seems like you used my proposal as a template. Just want to let you
know, you are not restricted to using any particular template. Feel
free to add or remove any section you find relevant.

Thanks,
Hariom
NSENGIYUMVA WILBERFORCE· Oct 30, 2022, 10:13 UTC · re: Hariom verma · lore

Re: [OUTREACHY V2] Unify ref-filter formats with other --pretty formats[proposal]

Thanks Hariom for your comments.
> I would review the rest later.
Ok, thank you
>  It seems like you used my proposal as a template

I used your template. Yeah in case there are things to add or remove, I will do so.

Thank you so much for your comments, I am working on all of them. i hope by the end of today I will finish

On Fri, Oct 28, 2022 at 11:05 AM Hariom verma <hariom18599@gmail.com> wrote:
Show 123 quoted lines
>
> Hi,
>
> On Thu, Oct 27, 2022 at 5:28 PM NSENGIYUMVA WILBERFORCE
> <nsengiyumvawilberforce@gmail.com> wrote:
> >
> > ##Proposed Project
> >
> > Abstract
> >
> > Git has an old problem of duplicated implementations of some logic.
> > For example, Git had at least 4 different implementations to format
> > command output for different commands. The foremost aim of this
> > project is to simplify codebase by getting rid of duplication of a
> > similar logic and, as a result, simplify adding new functionality.
> > The current task is to reuse ref-filter formatting logic to minimize
> > code duplication and to have one unified interface to extract all
> > needed data from the object and to print it properly.
> >
> > ##Previous Work
> >
> > JayDeep Das(GSoC) tried to “add a new atom ‘signature’”. However, I
> > have not been able to find his complete work in the public box, it
> > seems his work was not complete. According to
> > <https://github.com/JDeepD/git-1/commit/85ddfa4b33f2b6f05524e648e7165c722188093e>
> > which was suggested at the outreachy website, it looks like he did not
> > complete writing the tests for the signature atom he was unifying.
> > Maybe with the help of the mentors, I could plan to start from where
> > he stopped from.
>
> maybe s/stopped from/stopped/
>
> You can elaborate a bit more on Jaydeep's work.
> Like,
> - What tests are missing?
> - Any dificulties he faced during writing tests?
>
> Also, in my final report, I mentioned refactoring the signature logic
> according to Junio's comment
> (https://public-inbox.org/git/xmqqzh7jcqv7.fsf@gitster.c.googlers.com/).
> Does Jaydeep's patch respect Junio's comment? I think you can include
> a bit about this too,
>
> > Hariom Verma contributed(https://harry-hov.github.io/blogs/posts/the-final-report)
> > tremendously towards “Unifying Git’s format languages” during his 2020
> > GSoC internship.
>
> s/Unifying Git’s format languages/Unifying ref-filter formats with
> other --pretty formats/
> s/during his 2020 GSoC internship/during GSoC'20/
>
> > Hariom finished most of the formatting options and
> > this will help me build on his work.  His work looks smart and
> > understandable thus adding on his work will be easy. And also his blog
> > is very fabulous, it’s a shooting point for me to start understanding
> > the codebase very well.
>
> It looks more like praise to me. I'm glad you like my work and blogs.
> But I would like to see some details here.
> Like work is almost 2+ years old. What changed in pretty.* and
> ref-filter.* since then?
> Is my work still compatible with the latest changes?
>
> > Hariom mentions in his report that 30 % of the
> > log related tests are failing, he also mentions that the cause of
> > tests failure is because of the missing mailmap logic and mbox/email
> > commit format.
>
> Okay. But see if you can gather more details about failing tests and
> remaining work.
>
> > Hariom also says it does not handle unknown formatting
> > options.
>
> what do you mean by "it" here?
>
> > I plan to start with his advice about the cause of the
> > failure of these tests and then intuitively refactor them into
> > something cool.
>
> I didn’t get the line "intuitively refactor them into something cool".
>
> > ##Summary of remaining tasks by Hariom
> >
> > -Around 30% log related tests are failing
> >
> > -Teach pretty-lib.{c,h} to handle incorrect formatting option
> >
> > -Email/MBoxed commit format needs work
> >
> > ##Some useful mailing lists links from Hariom
> >
> > - https://public-inbox.org/git/pull.684.v4.git.1598046110.gitgitgadget@gmail.com/
> >
> > - https://public-inbox.org/git/pull.707.git.1597841551.gitgitgadget@gmail.com/
> >
> > - https://public-inbox.org/git/pull.707.git.1597841551.gitgitgadget@gmail.com/
> >
>
> Okay
>
> > Olga<olyatelezhnaya@gmail.com> has done great work in “Unifying Git’s
> > format languages” during Outreachy Round 15 and continued even after
> > that [from 28-09-2017 to 04-04-2019]. Her work is mostly related to
> > `cat-file` and `ref-filter`.
> >
> > She already did a pretty nice job in preparing ref-filter for more
> > general usage of its formatting logic. It will give me the possibility
> > to make the migration of pretty.c easier.
>
> ZheNing Hu continued the Olga's work during GSoC'21. You can tell a
> bit more about that too.
>
> --
>
> I would review the rest later.
>
> It seems like you used my proposal as a template. Just want to let you
> know, you are not restricted to using any particular template. Feel
> free to add or remove any section you find relevant.
>
> Thanks,
> Hariom
NSENGIYUMVA WILBERFORCE· Oct 31, 2022, 13:37 UTC · re: NSENGIYUMVA WILBERFORCE · lore

Re: [OUTREACHY V2] Unify ref-filter formats with other --pretty formats[proposal]

> maybe s/stopped from/stopped/

Can I know about how this format of writing works? I have similar comments in the previous proposal, but I do not understand how this works.

Thanks, Wilberforce

On Sun, Oct 30, 2022 at 1:13 PM NSENGIYUMVA WILBERFORCE <nsengiyumvawilberforce@gmail.com> wrote:

Show 140 quoted lines
>
> Thanks Hariom for your comments.
>
> > I would review the rest later.
>
> Ok, thank you
>
> >  It seems like you used my proposal as a template
>
> I used your template.  Yeah in case there are things to add or remove,
> I will do so.
>
> Thank you so much for your comments, I am working on all of them. i
> hope by the end of today I will finish
>
>
> On Fri, Oct 28, 2022 at 11:05 AM Hariom verma <hariom18599@gmail.com> wrote:
> >
> > Hi,
> >
> > On Thu, Oct 27, 2022 at 5:28 PM NSENGIYUMVA WILBERFORCE
> > <nsengiyumvawilberforce@gmail.com> wrote:
> > >
> > > ##Proposed Project
> > >
> > > Abstract
> > >
> > > Git has an old problem of duplicated implementations of some logic.
> > > For example, Git had at least 4 different implementations to format
> > > command output for different commands. The foremost aim of this
> > > project is to simplify codebase by getting rid of duplication of a
> > > similar logic and, as a result, simplify adding new functionality.
> > > The current task is to reuse ref-filter formatting logic to minimize
> > > code duplication and to have one unified interface to extract all
> > > needed data from the object and to print it properly.
> > >
> > > ##Previous Work
> > >
> > > JayDeep Das(GSoC) tried to “add a new atom ‘signature’”. However, I
> > > have not been able to find his complete work in the public box, it
> > > seems his work was not complete. According to
> > > <https://github.com/JDeepD/git-1/commit/85ddfa4b33f2b6f05524e648e7165c722188093e>
> > > which was suggested at the outreachy website, it looks like he did not
> > > complete writing the tests for the signature atom he was unifying.
> > > Maybe with the help of the mentors, I could plan to start from where
> > > he stopped from.
> >
> > maybe s/stopped from/stopped/
> >
> > You can elaborate a bit more on Jaydeep's work.
> > Like,
> > - What tests are missing?
> > - Any dificulties he faced during writing tests?
> >
> > Also, in my final report, I mentioned refactoring the signature logic
> > according to Junio's comment
> > (https://public-inbox.org/git/xmqqzh7jcqv7.fsf@gitster.c.googlers.com/).
> > Does Jaydeep's patch respect Junio's comment? I think you can include
> > a bit about this too,
> >
> > > Hariom Verma contributed(https://harry-hov.github.io/blogs/posts/the-final-report)
> > > tremendously towards “Unifying Git’s format languages” during his 2020
> > > GSoC internship.
> >
> > s/Unifying Git’s format languages/Unifying ref-filter formats with
> > other --pretty formats/
> > s/during his 2020 GSoC internship/during GSoC'20/
> >
> > > Hariom finished most of the formatting options and
> > > this will help me build on his work.  His work looks smart and
> > > understandable thus adding on his work will be easy. And also his blog
> > > is very fabulous, it’s a shooting point for me to start understanding
> > > the codebase very well.
> >
> > It looks more like praise to me. I'm glad you like my work and blogs.
> > But I would like to see some details here.
> > Like work is almost 2+ years old. What changed in pretty.* and
> > ref-filter.* since then?
> > Is my work still compatible with the latest changes?
> >
> > > Hariom mentions in his report that 30 % of the
> > > log related tests are failing, he also mentions that the cause of
> > > tests failure is because of the missing mailmap logic and mbox/email
> > > commit format.
> >
> > Okay. But see if you can gather more details about failing tests and
> > remaining work.
> >
> > > Hariom also says it does not handle unknown formatting
> > > options.
> >
> > what do you mean by "it" here?
> >
> > > I plan to start with his advice about the cause of the
> > > failure of these tests and then intuitively refactor them into
> > > something cool.
> >
> > I didn’t get the line "intuitively refactor them into something cool".
> >
> > > ##Summary of remaining tasks by Hariom
> > >
> > > -Around 30% log related tests are failing
> > >
> > > -Teach pretty-lib.{c,h} to handle incorrect formatting option
> > >
> > > -Email/MBoxed commit format needs work
> > >
> > > ##Some useful mailing lists links from Hariom
> > >
> > > - https://public-inbox.org/git/pull.684.v4.git.1598046110.gitgitgadget@gmail.com/
> > >
> > > - https://public-inbox.org/git/pull.707.git.1597841551.gitgitgadget@gmail.com/
> > >
> > > - https://public-inbox.org/git/pull.707.git.1597841551.gitgitgadget@gmail.com/
> > >
> >
> > Okay
> >
> > > Olga<olyatelezhnaya@gmail.com> has done great work in “Unifying Git’s
> > > format languages” during Outreachy Round 15 and continued even after
> > > that [from 28-09-2017 to 04-04-2019]. Her work is mostly related to
> > > `cat-file` and `ref-filter`.
> > >
> > > She already did a pretty nice job in preparing ref-filter for more
> > > general usage of its formatting logic. It will give me the possibility
> > > to make the migration of pretty.c easier.
> >
> > ZheNing Hu continued the Olga's work during GSoC'21. You can tell a
> > bit more about that too.
> >
> > --
> >
> > I would review the rest later.
> >
> > It seems like you used my proposal as a template. Just want to let you
> > know, you are not restricted to using any particular template. Feel
> > free to add or remove any section you find relevant.
> >
> > Thanks,
> > Hariom
Hariom verma· Oct 31, 2022, 13:59 UTC · re: NSENGIYUMVA WILBERFORCE · lore

Re: [OUTREACHY V2] Unify ref-filter formats with other --pretty formats[proposal]

Hi,
On 10/31/22, NSENGIYUMVA WILBERFORCE <nsengiyumvawilberforce@gmail.com> wrote:
Show 5 quoted lines
>> maybe s/stopped from/stopped/
>
> Can I know about how this format of writing works? I have similar
> comments in the previous proposal, but I do not understand how this
> works.

In simple word, s/xyz/abc/ means: Replace ‘xyz’ with ‘abc’ in the sentence.

You can read more about ‘sed’ command on the Internet.

Thanks, Hariom Verma

ZheNing Hu· Oct 31, 2022, 14:26 UTC · re: Hariom verma · lore

Re: [OUTREACHY V2] Unify ref-filter formats with other --pretty formats[proposal]

Hi, Hariom and NSENGIYUMVA,
Hariom verma <hariom18599@gmail.com> 于2022年10月28日周五 16:08写道:
Show 15 quoted lines
>
> Hi,
>
> > Olga<olyatelezhnaya@gmail.com> has done great work in “Unifying Git’s
> > format languages” during Outreachy Round 15 and continued even after
> > that [from 28-09-2017 to 04-04-2019]. Her work is mostly related to
> > `cat-file` and `ref-filter`.
> >
> > She already did a pretty nice job in preparing ref-filter for more
> > general usage of its formatting logic. It will give me the possibility
> > to make the migration of pretty.c easier.
>
> ZheNing Hu continued the Olga's work during GSoC'21. You can tell a
> bit more about that too.
>

I'm afraid I'm skeptical about the progress of this project. Yes, this project has been going on for too long, probably 3 years, and it is long overdue to be merged into master. Maybe we all need to rethink the nature of this project instead of rushing to start writing code.

As far as I know, these unified format refactor are easy to implement, but as we use more complex parsing logic, there will be a lot of performance degradation.

I recommend new contributors to perform performance analysis and performance optimization directly based on the original developer's patches.

Show 10 quoted lines
> --
>
> I would review the rest later.
>
> It seems like you used my proposal as a template. Just want to let you
> know, you are not restricted to using any particular template. Feel
> free to add or remove any section you find relevant.
>
> Thanks,
> Hariom
I will pay close attention to this issue.

Thanks, -- ZheNing Hu

Christian Couder· Oct 31, 2022, 14:41 UTC · re: ZheNing Hu · lore

Re: [OUTREACHY V2] Unify ref-filter formats with other --pretty formats[proposal]

Hi ZheNing and Wilberforce,
On Mon, Oct 31, 2022 at 3:26 PM ZheNing Hu <adlternative@gmail.com> wrote:
> Hariom verma <hariom18599@gmail.com> 于2022年10月28日周五 16:08写道:
Show 24 quoted lines
> > > Olga<olyatelezhnaya@gmail.com> has done great work in “Unifying Git’s
> > > format languages” during Outreachy Round 15 and continued even after
> > > that [from 28-09-2017 to 04-04-2019]. Her work is mostly related to
> > > `cat-file` and `ref-filter`.
> > >
> > > She already did a pretty nice job in preparing ref-filter for more
> > > general usage of its formatting logic. It will give me the possibility
> > > to make the migration of pretty.c easier.
> >
> > ZheNing Hu continued the Olga's work during GSoC'21. You can tell a
> > bit more about that too.
>
> I'm afraid I'm skeptical about the progress of this project. Yes, this
> project has
> been going on for too long, probably 3 years, and it is long overdue
> to be merged
> into master. Maybe we all need to rethink the nature of this project instead of
> rushing to start writing code.
>
> As far as I know, these unified format refactor are easy to implement, but as we
> use more complex parsing logic, there will be a lot of performance degradation.
>
> I recommend new contributors to perform performance analysis and performance
> optimization directly based on the original developer's patches.

Yeah, I agree that the project to use ref-filter formats in cat-file is very hard due to performance issues, and I think we shouldn't suggest it anymore as a project to GSoC or Outreachy applicants.

The project we are proposing for Outreachy, and that Wilberforce is writing a proposal for, is about unifying "ref-filter formats" with "pretty formats" though. So there is no need to touch cat-file code as "pretty formats" are not used there. Actually it might not even be needed to mention using ref-filter formats in cat-file (and the related work made by Olga and ZheNing on this). It could perhaps help with understanding the big picture, but that's it.

Thanks, Christian.

← back to recent threads