Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: Re: [Wireshark-dev] Tool Ownership and Licensing - log history of renamed files

From: Jeff Morriss <jeff.morriss.ws@xxxxxxxxx>
Date: Thu, 19 Sep 2013 16:28:27 -0400
On 09/19/13 16:09, Evan Huus wrote:
On 2013-09-19, at 3:41 PM, Jeff Morriss <jeff.morriss.ws@xxxxxxxxx> wrote:

On 09/18/13 17:38, Guy Harris wrote:

On Sep 17, 2013, at 10:12 PM, Gilbert Ramirez <gram@xxxxxxxxxxxxxxx> wrote:

I admit to authoring pkt-from-core.py, but I doubt it actually still works. Nevertheless, I have updated the license in the file.

I don't remember the others, though.
[...]
doc/dfilter2pod.pl

Gilbert Ramirez

    ------------------------------------------------------------------------
    r2171 | gram | 2000-07-28 09:30:28 -0700 (Fri, 28 Jul 2000) | 4 lines

    Don't create dfilter2pod from dfilter2pod.in just for @PERL_PATH@; it's
    a waste of time. Instead, set $(PERL) to @PERL_PATH@ in the Makefile and
    call dfilter2pod.pl via $(PERL) $(src_dir)/dfilter2pod.pl

In this revision doc/dfilter2pod.pl was created from doc/dfilter2pod.in (which was actually deleted in the subsequent r2172).

Looking at *that* file's revision history shows that it was created in r372:

Revision 372 - (view) (download) - [select for diffs]
Added Tue Jul 20 08:02:24 1999 UTC (14 years, 2 months ago) by guy
File length: 2591 byte(s)

Don't depend on Perl being in "/usr/bin/perl"; find it, and generate a
"dfilter2pod" with the path of Perl in its "#!" line.

In this revision doc/dfilter2.pod.in was created from doc/dfilter2pod .

Looking at *that* file's revision history shows that it was created in r364:

Revision 364 - (view) (download) - [select for diffs]
Added Thu Jul 15 15:33:52 1999 UTC (14 years, 2 months ago) by gram
File length: 2591 byte(s)

Modified the proto_register_field_array usage again. Thanks to Guy's
suggestion, this new method using a static array should use less memory
and be faster. It also has a nice side-effect of making the source-code
more readble, IMHO.

Changed the print routines to look for protocol proto_data instead of
looking at the text label as they did before, hoping that the data hex
dump field item starts with "Data (".

Added the -G keyword to ethereal to make it dump a glossary of display
filter keywords to stdout and exit. This data is then formatted with
the doc/dfilter2pod perl program to pod format, which is combined
with doc/ethereal.pod.template to create doc/ethereal.pod, from which
the ethereal manpage is created. This way we can keep the manpage up-to-date
with a list of fields that can be filtered on.

So, despite the convoluted history, the script still appears to have been created by Gilbert.


Tangentially, you may be able to use git log --follow to generate this complete history for you if I understand the way it works correctly (without doing it in chunks and manually following renames).

If I read the SVN help correctly, SVN's log automatically is supposed to follow copies. And, in fact, it does:

------------------------------------------------------------------------
r52138 | morriss | 2013-09-18 10:23:14 -0400 (Wed, 18 Sep 2013) | 1 line

Rename PCAP files to .pcap; set mime-type appropriately.  Should these files be in the test/captures directory?
------------------------------------------------------------------------
r52136 | gram | 2013-09-18 01:07:46 -0400 (Wed, 18 Sep 2013) | 8 lines

Update dfilter-test.py to use a much more modern test harness,
the "unittest" module that comes with Python. Specifically, this
takes advantage of a couple of features in the "unittest" in
Python 2.7. The tests are all the same as before, but much
better managed.

This is in preparation for some work on the display filter code.

------------------------------------------------------------------------

But dfilter2pod was renamed in CVS and I guess the CVS->SVN conversion didn't/couldn't convert the add+delete to copy+delete.