]> git.ipfire.org Git - thirdparty/git.git/commit
t0021: implementation the rot13-filter.pl script in C
authorMatheus Tavares <matheus.bernardino@usp.br>
Mon, 15 Aug 2022 01:06:37 +0000 (22:06 -0300)
committerJunio C Hamano <gitster@pobox.com>
Mon, 15 Aug 2022 05:57:12 +0000 (22:57 -0700)
commit52917a998ef3aa38afab59032e49909d92141d27
tree09ec775925941fcc5dbc59a57b7fb53dcf440bed
parentbed8947751b8057bb6714c53eb15a098b62c65da
t0021: implementation the rot13-filter.pl script in C

This script is currently used by three test files: t0021-conversion.sh,
t2080-parallel-checkout-basics.sh, and
t2082-parallel-checkout-attributes.sh. To avoid the need for the PERL
dependency at these tests, let's convert the script to a C test-tool
command. The following commit will take care of actually modifying the
said tests to use the new C helper and removing the Perl script.

The Perl script flushes the log file handler after each write. As
commented in [1], this seems to be an early design decision that was
later reconsidered, but possibly ended up being left in the code by
accident:

>> +$debug->flush();
>
> Isn't $debug flushed automatically?

Maybe, but autoflush is not explicitly enabled. I will
enable it again (I disabled it because of Eric's comment
but I re-read the comment and he is only talking about
pipes).

Anyways, this behavior is not really needed for the tests and the
flush() calls make the code slightly larger, so let's avoid them
altogether in the new C version.

[1]: https://lore.kernel.org/git/7F1F1A0E-8FC3-4FBD-81AA-37786DE0EF50@gmail.com/

Helped-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Matheus Tavares <matheus.bernardino@usp.br>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Makefile
pkt-line.c
pkt-line.h
t/helper/test-rot13-filter.c [new file with mode: 0644]
t/helper/test-tool.c
t/helper/test-tool.h