Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[perl #41912] [CAGE] survey tools/ dir for unused, old, or broken code, and remove or fix as necessary

8 views
Skip to first unread message

Jerry Gay

unread,
Mar 19, 2007, 6:43:27 PM3/19/07
to bugs-bi...@rt.perl.org
# New Ticket Created by Jerry Gay
# Please include the string: [perl #41912]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=41912 >


there's a number of scripts and utilities in the tools/ subtree which
i suspect have gone unused for some time now. this ticket is a
placeholder to track efforts on surveying and fixing the files under
tools/.

~jerry

James Keenan via RT

unread,
Apr 9, 2007, 8:04:50 PM4/9/07
to perl6-i...@perl.org
On Mon Mar 19 15:43:27 2007, particle wrote:
> there's a number of scripts and utilities in the tools/ subtree which
> i suspect have gone unused for some time now. this ticket is a
> placeholder to track efforts on surveying and fixing the files under
> tools/.
>
> ~jerry

Here is some *non-definitive, non-exhaustive* data concerning the tools/build/*.pl scripts
that may be useful in this effort.

1. Invocations by 'make':

94 tools/build/c2str.pl
4 tools/build/dynpmc.pl
1 tools/build/fingerprint_c.pl
2 tools/build/jit2c.pl
1 tools/build/nativecall.pl
12 tools/build/ops2c.pl
1 tools/build/ops2pm.pl
2 tools/build/parrot_config_c.pl
179 tools/build/pmc2c.pl
1 tools/build/revision_c.pl
1 tools/build/vtable_extend.pl

tools/build/vtable_h.pl has not been invoked by make since Nov 11 2006. However, it may
be invoked elsewhere. See config/gen/parrot_include.pm (54); lib/Parrot/Docs/Section/
Tools.pm (51); lib/Parrot/Vtable.pm (16, 419).

2. Quite a few of the tools/build/*.pl scripts are called by Parrot::Docs::Sections::Tools.
Personally, I don't think providing a Perl script as an argument to a Perl method call is a "best
practice." So I view these instances as ripe for refactoring.

lib/Parrot/Docs/Section/Tools.pm:49: $self->new_item( '', 'tools/build/nativecall.pl' ),
lib/Parrot/Docs/Section/Tools.pm:50: $self->new_item( '', 'tools/build/jit2c.pl' ),
lib/Parrot/Docs/Section/Tools.pm:51: $self->new_item( '', 'tools/build/vtable_h.pl' ),
lib/Parrot/Docs/Section/Tools.pm:52: $self->new_item( '', 'tools/build/
vtable_extend.pl' ),
lib/Parrot/Docs/Section/Tools.pm:56: $self->new_item( '', 'tools/build/pbc2c.pl' ),
lib/Parrot/Docs/Section/Tools.pm:82: $self->new_item( '', 'tools/build/
fingerprint_c.pl' ),
lib/Parrot/Docs/Section/Tools.pm:85: $self->new_item( '', 'tools/build/
parrot_config_c.pl' ),
lib/Parrot/Docs/Section/Tools.pm:87: $self->new_item( '', 'tools/build/
revision_c.pl' ),
lib/Parrot/Docs/Section/Tools.pm:104: $self->new_item( '', 'tools/build/
list_unjitted.pl' ),

I haven't yet looked at scripts in other directories such as tools/dev/.

kid51

James Keenan via RT

unread,
Apr 27, 2007, 10:39:02 PM4/27/07
to perl6-i...@perl.org
On Mon Apr 09 17:04:49 2007, jk...@verizon.net wrote:
>
> I haven't yet looked at scripts in other directories such as
> tools/dev/.
>

Here's a bit of information about tools/dev/*.pl: last revision for each script

[parrot] 520 $ svn status -v tools/dev/*.pl | tr -s ' ' | sort -t ' ' +7 -12 | cut -d ' ' -f 3,5
16172 tools/dev/check_source_standards.pl
16172 tools/dev/lib_deps.pl
16243 tools/dev/gen_manifest_skip.pl
16243 tools/dev/install_files.pl
16243 tools/dev/mk_inno.pl
16243 tools/dev/mk_manifests.pl
16243 tools/dev/nm.pl
16243 tools/dev/parrot_api.pl
16243 tools/dev/rebuild_miniparrot.pl
16243 tools/dev/symlink.pl
16663 tools/dev/pbc_header.pl
16687 tools/dev/extract_file_descriptions.pl
16741 tools/dev/manicheck.pl
16741 tools/dev/parrot_coverage.pl
16741 tools/dev/parrotbench.pl
16741 tools/dev/run_indent.pl
17087 tools/dev/gen_class.pl
17580 tools/dev/cc_flags.pl
17580 tools/dev/gen_charset_tables.pl
18146 tools/dev/mk_manifest_and_skip.pl
18146 tools/dev/ops_not_tested.pl
18308 tools/dev/as2c.pl

James Keenan via RT

unread,
Jun 8, 2008, 9:22:49 PM6/8/08
to perl6-i...@perl.org
On Fri Apr 27 19:39:01 2007, jk...@verizon.net wrote:

>
> Here's a bit of information about tools/dev/*.pl: last revision for
> each script
>

Here are the results of the same search run today:

svn status -v tools/dev/*.pl | tr -s ' ' | sort -t ' ' -k 7 -k 12 | cut
-d ' ' -f 3,5
18810 tools/dev/lib_deps.pl
18810 tools/dev/rebuild_miniparrot.pl
19262 tools/dev/parrot_api.pl
19264 tools/dev/mk_rpm_manifests.pl
21225 tools/dev/gen_charset_tables.pl
21451 tools/dev/as2c.pl
21451 tools/dev/nm.pl
21451 tools/dev/ops_not_tested.pl
21451 tools/dev/reconfigure.pl
22480 tools/dev/manicheck.pl
22485 tools/dev/parrotbench.pl
22887 tools/dev/parrot_coverage.pl
24274 tools/dev/cc_flags.pl
24755 tools/dev/nopaste.pl
25885 tools/dev/svnclobber.pl
26387 tools/dev/pbc_header.pl
26553 tools/dev/gen_class.pl
26553 tools/dev/vtablize.pl
26724 tools/dev/pbc_to_exe_gen.pl
26748 tools/dev/symlink.pl
26792 tools/dev/list_unjitted.pl
27206 tools/dev/mk_inno.pl
27427 tools/dev/install_files.pl
28020 tools/dev/search-ops.pl
28055 tools/dev/mk_manifest_and_skip.pl
28137 tools/dev/mk_language_shell.pl
28155 tools/dev/pmctree.pl

So, at the very least, all these programs have received some attention
since April 2007 -- even if that attention is application of coding
standards, etc.

Can anyone identify any of these programs which is definitely no longer
needed?

James Keenan via RT

unread,
Jul 31, 2008, 10:12:16 PM7/31/08
to perl6-i...@perl.org
Here's a list as of today -- and one that is not limited to perl scripts:

$ svn status -v tools/dev/* | tr -s ' ' | sort -t ' ' -k 7 -k 12 | cut
-d ' ' -f3,5
11501 tools/dev/mk_native_pbc
11501 tools/dev/testyamd
17087 tools/dev/parrot_8.supp
17087 tools/dev/src-t.sh
17087 tools/dev/vms-patch


18810 tools/dev/lib_deps.pl
18810 tools/dev/rebuild_miniparrot.pl
19262 tools/dev/parrot_api.pl
19264 tools/dev/mk_rpm_manifests.pl
21225 tools/dev/gen_charset_tables.pl
21451 tools/dev/as2c.pl
21451 tools/dev/nm.pl
21451 tools/dev/ops_not_tested.pl

22480 tools/dev/manicheck.pl
22485 tools/dev/parrotbench.pl
22887 tools/dev/parrot_coverage.pl
24274 tools/dev/cc_flags.pl

24489 tools/dev/debian_docs.sh
24755 tools/dev/nopaste.pl
25185 tools/dev/parrot.supp
25819 tools/dev/bench_op.pir


25885 tools/dev/svnclobber.pl
26387 tools/dev/pbc_header.pl
26553 tools/dev/gen_class.pl
26553 tools/dev/vtablize.pl

26748 tools/dev/symlink.pl
26792 tools/dev/list_unjitted.pl
27153 tools/dev/ops_renum.mak


27427 tools/dev/install_files.pl
28020 tools/dev/search-ops.pl
28055 tools/dev/mk_manifest_and_skip.pl

28155 tools/dev/pmctree.pl
28657 tools/dev/mk_language_shell.pl
28999 tools/dev/mk_inno.pl
29436 tools/dev/reconfigure.pl
29701 tools/dev/pbc_to_exe_gen.pl

Bob Rogers

unread,
Dec 27, 2008, 11:55:58 PM12/27/08
to parrotbug...@parrotcode.org
From: "James Keenan via RT" <parrotbug...@parrotcode.org>
Date: Sat, 27 Dec 2008 19:03:36 -0800

. . .

I tried that, with these results:

$ sh tools/dev/src-t.sh t/src/extend_15
Error reading source file parrot-config.
Error reading source file parrot-config.
Error reading source file parrot-config.
Error reading source file parrot-config.
Error reading source file parrot-config.
-I./include -c t/src/extend_15 t/src/extend_15.c
tools/dev/src-t.sh: line 33: -I./include: No such file or directory
Error reading source file parrot-config.
Error reading source file parrot-config.
Error reading source file parrot-config.
Error reading source file parrot-config.
Error reading source file parrot-config.
Error reading source file parrot-config.
Error reading source file parrot-config.
Error reading source file parrot-config.
t/src/extend_15 src/parrot_config t/src/extend_15 -L -lparrot
tools/dev/src-t.sh: line 53: t/src/extend_15: No such file or directory

Can anyone diagnose this?

When updating an old working copy, I just happened to notice that
"parrot-config" was deleted since June. So was able to find this:

r28977 | chromatic | 2008-07-02 21:42:27 -0400 (Wed, 02 Jul 2008) | 2 lines

[parrot-config] Turned parrot-config into a fakecutable; this allows programs
to query Parrot's configuration. See RT #32365.

HTH.

-- Bob Rogers
http://www.rgrjr.com/

James Keenan via RT

unread,
Dec 29, 2008, 9:41:56 PM12/29/08
to parro...@lists.parrot.org, parrotbug...@parrotcode.org
On Sat Dec 27 20:56:38 2008, rgrjr wrote:
>
> When updating an old working copy, I just happened to notice that
> "parrot-config" was deleted since June. So was able to find this:
>
> r28977 | chromatic | 2008-07-02 21:42:27 -0400 (Wed, 02 Jul 2008)
> | 2 lines
>
> [parrot-config] Turned parrot-config into a fakecutable; this
> allows programs
> to query Parrot's configuration. See RT #32365.
>

Well, I have to admit I don't know what a fakecutable would be. In any
event, my main concern right now is to see if someone deems this program
valuable enough to take it over and get it working. Otherwise, per
Jerry's original post in this ticket, it should be deleted.

Thank you very much.
kid51

Chromatic

unread,
Dec 29, 2008, 10:07:21 PM12/29/08
to parrot-...@perl.org, parrotbug...@parrotcode.org, parro...@lists.parrot.org
On Monday 29 December 2008 18:41:56 James Keenan via RT wrote:

> Well, I have to admit I don't know what a fakecutable would be. In any
> event, my main concern right now is to see if someone deems this program
> valuable enough to take it over and get it working. Otherwise, per
> Jerry's original post in this ticket, it should be deleted.

A fakecutable is perl6 or pbc_to_exe. It's a C program which contains PBC
inside, then launches it when you run it.

parrot-config used to be a PIR program, but now it's a compiled C program.

We can delete tools/dev/src-t.sh, though; I don't know if anyone's used it in
years.

-- c

James Keenan via RT

unread,
May 17, 2009, 1:11:25 PM5/17/09
to parro...@lists.parrot.org, perl6-i...@perl.org
On Sun Mar 22 06:09:15 2009, jk...@verizon.net wrote:
> On Mon Mar 19 15:43:27 2007, particle wrote:
> > there's a number of scripts and utilities in the tools/ subtree which
> > i suspect have gone unused for some time now. this ticket is a
> > placeholder to track efforts on surveying and fixing the files under
> > tools/.
> >

1. I've been looking at this ticket on and off for two years. We've
cleared out some programs that clearly were no longer needed. I've
looked at the remaining programs and am somewhat satisfied that, with
exceptions noted below, the remaining programs are still either
essential or are useful to some Parrot developers somewhere. So I'm
going to close this ticket, having transferred some remaining questions
to Trac tickets.

>
> Jerry:
>
> Do we have a rule as to which programs ought to be under 'tools/build/',
> which under 'tools/dev', and which under, say, 'tools/util/'?
>
>

2. I didn't get any response to this question, so I've transferred it
to https://trac.parrot.org/parrot/ticket/677 in the hope that it will
have greater visibility in Trac.

3. The question I posed about the Valgrind suppression file
'parrot_8.supp' has been transferred to
https://trac.parrot.org/parrot/ticket/678.

0 new messages