[GSOC Update] Week 5
- From
Pranit Bauva <pranit.bauva@gmail.com>
- Date
- Jun 6, 2016, 06:53 UTC
- Message-ID
- <20160606065301.5228-1-pranit.bauva@gmail.com>
- In-Reply-To
- <20160530053758.28134-1-pranit.bauva@gmail.com>
================================= SUMMARY ================================== My public git.git is available here[1]. I regularly keep pushing my work so anyone interested can track me there. Feel free to participate in the discussions going on PRs with my mentors. Your comments are valuable.
=============================== INTRODUCTION ============================== The purpose of this project is to convert the git-bisect utility which partly exists in the form of shell scripts to C code so as to make it more portable. I plan to do this by converting each function to C and then calling it from git-bisect.sh so as to use the existing test suite to test the function which is converted.
Mentors: Christian Couder <chriscool@tuxfamily.org> Lars Schneider <larsxschneider@gmail.com>
================================== Updates ================================= Things which were done in this week:
* bisect_clean_state() function is converted and I have fixed the segmentation fault. I am now polishing the patch with the help of my mentors and will soon send it to the mailing list. The seg fault occurred because I was deleting the refs in the for_each_ref_in() iteration. On sending the RFC[2], Michael Haggerty pointed out the fact that deleting refs causes some malfunction with the ref cache and thus triggering the seg fault.
* I also converted bisect_write() function and currently I am polishing it with the help of my mentors and will send it to the mailing list. You can find the whole branch here[3].
* As a preparatory patch for bisect_write() I also introduced a function file_size() which will get the file size without actually opening the file.
* I also converted is_expected_rev() and check_expected_revs() and also fixed the segmentation fault. I am now polishing the patch with the help of my mentors and will soon send it to the mailing list. You can find the branch here[4].
* My v2[5] on a cleanup patch to use the function macro GIT_PATH_FUNC is yet to receive comments.
* I have also converted bisect_head()[6] but that would be sent to the mailing list along with bisect_state().
================================= NEXT STEPS ================================ Things which would be done in the coming week:
* Convert the function bisect_write(). I plan to convert this function and add it as a subcommand.
* Convert get_terms() and add the variables TERM_GOOD and TERM_BAD in a struct in the global state.
* Convert bisect_voc()
* Convert bisect_next_check()
[1]: https://github.com/pranitbauva1997/git [2]: http://thread.gmane.org/gmane.comp.version-control.git/295917 [3]: https://github.com/pranitbauva1997/git/pull/13 [4]: https://github.com/pranitbauva1997/git/pull/10 [5]: http://thread.gmane.org/gmane.comp.version-control.git/295524 [6]: https://github.com/pranitbauva1997/git/pull/11
Regards, Pranit Bauva