Craig A. Berry wrote:
> The home-grown glob() implementation does not know what a tilde is,
> and it returns VMS-format filespecs as absolute, not relative specs.
> Both of these are contrary to the assumptions of various parts of
> Module::Build and account for a number of test failures.  The easiest
> thing should be to override glob() and do a little pre-processing to
> expand tildes and post-processing to convert paths from absolute to
> relative.  However, it has so far proven beyond my Perl foo to
> override CORE::GLOBAL::glob in terms of itself without either getting
> infinite recursion or having whatever I do in
> Module::Build::Platform::VMS ignored from within Module::Build::Base.

FWIW, you avoid the infinite recursion by calling CORE::glob() instead of just
glob().

sub _fixed_glob {
    ...
    CORE::glob(...);
    ...
}

BEGIN {
    local *CORE::GLOBAL::glob = \&fixed_glob;
}


> A number of the tests call is_deeply() to compare an array of
> case-preserved filenames with another array of (by default)
> non-case-preserved filenames. Obviously they don't match and the
> tests fail.  What's needed is a like_deeply() or similar where you
> can pass a regex qualifier such as "?i:" to wrap around each of the
> comparisons.  So maybe I'll add that to MBTest one of these days.

Would Test::Deep be useful here?


Reply via email to