James Keenan (via RT) a écrit :
# New Ticket Created by James Keenan
# Please include the string: [perl #53126]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=53126 >
I noticed that a new step, auto::digest, has been added to the list
of Parrot configuration steps. Two issues:
1. The commit message suggests that this is a refactoring of code
previously found elsewhere in the configuration system:
r27060 | fperrad | 2008-04-20 15:26:38 -0400 (Sun, 20 Apr 2008) | 2
lines
[digest]- refactor digest PMC generation (now a config/gen step)
However, when I grep config/*/*.pm for 'digest', the only mention I
get (other than in config/gen/digest.pm itself) is here:
config/auto/crypto.pm:68: $conf->data->set( has_crypto =>
$has_crypto ); # for dynpmc.in & digest.t
So I don't see where the code was refactored from, and I don't
understand the rationale for the addition of this step.
Previously, the generation was done by src/dynpmc/Makefile (generated
from config/gen/makefiles/dynpmc.in) and use some perl -pe "s///" from a
template src/dynpmc/mdx.pmc.
So it was not the standard way, and it was not enought smart :
two files SHA256 & SHA512 need different behaviors for OpenSSL 0.9.7 and
0.9.8.
2. When I now configure with 'perl Configure.pl --test', I get this
warning, both at the start of configuration and in t/configure/025-
options_test.t andn t/configure/049-options_test.t:
No tests exist for configure step gen::digest at Configure.pl line 14
... which means we've added a configuration step class with no
corresponding tests. (Until yesterday, configuration would have
simply died at this point, but I acknowledged a request to have it
just generate a warning instead.) The test file could be as simple
as a two-test file, with one test saying use_ok the new step and
another saying 'pass'.
I prefer the die behavior, because with it, I don't forget to add tests
with auto::crypto.
Now, I think the name gen::digest is not good.
I prefer gen::crypto because :
1) same as auto::crypto
2) libcrypto contains cypher algo (not only digest), so we could add
some PMC wrapper (for example : DES, ...)
François.
Thank you very much.
kid51