Goal ~~~~ Packet related functions in Perl can be useful to write new filters or to debug or test existing filters. They might also in the future be used by other software using the same packet line protocol. So instead of having them in t0021/rot13-filter.pl, let's extract them into a new Git/Packet.pm module. Changes since the previous version ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Patch 1/8 is new. It fixes a list comparison bug that existed since the beginning of t0021/rot13-filter.pl. - Patch 2/8 is much improved. It now checks for unexpected EOF in all the code paths and introduces a new packet_required_key_val_read() function. - Patchs 3/8, 4/8 and 5/8 have not changed since v1. - Patch 6/8 is new. It adds a small helper function. - Patch 7/8 is much improved. It now describe better all the changes and better check that the capabilities we advertise are supported by the remote. - Patch 8/8 has been improved. It contains the Makefile change suggested by Dscho. Links ~~~~~ This patch series is on the following branch: https://github.com/chriscool/git/commits/gl-prep-external-odb Version 1 of this patch series is on the mailing list here: https://public-inbox.org/git/20171019123030.17338-1-chriscool@xxxxxxxxxxxxx/ It is also available in the following branch: https://github.com/chriscool/git/commits/gl-prep-external-odb1 This patch series was extracted from previous "Add initial experimental external ODB support" patch series. Version 1, 2, 3, 4, 5 and 6 of this previous series are on the mailing list here: https://public-inbox.org/git/20160613085546.11784-1-chriscool@xxxxxxxxxxxxx/ https://public-inbox.org/git/20160628181933.24620-1-chriscool@xxxxxxxxxxxxx/ https://public-inbox.org/git/20161130210420.15982-1-chriscool@xxxxxxxxxxxxx/ https://public-inbox.org/git/20170620075523.26961-1-chriscool@xxxxxxxxxxxxx/ https://public-inbox.org/git/20170803091926.1755-1-chriscool@xxxxxxxxxxxxx/ https://public-inbox.org/git/20170916080731.13925-1-chriscool@xxxxxxxxxxxxx/ They are also available in the following branches: https://github.com/chriscool/git/commits/gl-external-odb12 https://github.com/chriscool/git/commits/gl-external-odb22 https://github.com/chriscool/git/commits/gl-external-odb61 https://github.com/chriscool/git/commits/gl-external-odb239 https://github.com/chriscool/git/commits/gl-external-odb373 https://github.com/chriscool/git/commits/gl-external-odb411 Christian Couder (8): t0021/rot13-filter: fix list comparison t0021/rot13-filter: refactor packet reading functions t0021/rot13-filter: improve 'if .. elsif .. else' style t0021/rot13-filter: improve error message t0021/rot13-filter: add packet_initialize() t0021/rot13-filter: refactor checking final lf t0021/rot13-filter: add capability functions Add Git/Packet.pm from parts of t0021/rot13-filter.pl perl/Git/Packet.pm | 168 ++++++++++++++++++++++++++++++++++++++++++++++++ perl/Makefile | 1 + t/t0021/rot13-filter.pl | 127 ++++++++++-------------------------- 3 files changed, 202 insertions(+), 94 deletions(-) create mode 100644 perl/Git/Packet.pm -- 2.15.0.7.ga9ff306ed9.dirty