Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot


by jahero (Pilgrim)
on Nov 08, 2016 at 07:53 UTC ( #1175515=user: print w/replies, xml ) Need Help??

Posts by jahero
[SOLVED] Test:: fail when output file was changed in Seekers of Perl Wisdom
1 direct reply — Read more / Contribute
by jahero
on Jan 18, 2019 at 04:05

    Dear fellow monks.

    I think that some time ago I have seen somewhere information about a package on CPAN (in a blog post I think), which could be used in testing, and which:

    • by default failed, when named output file was changed
    • could run in such a mode, that it would "remember" current state of the file (if the change was intentional), which would prevent further fails (until next change)

    Imagine you are programmatically creating complex structured text, and want to be able to "keep it fixed" in you tests - unless you know that the change is "for the better"

    Is my memory playing tricks on me? Are you aware of such library? I hope that what I vaguely described above makes sense.

    Unfortunately, mu Google-fu is not advanced enough to yield the answer.

    Regards, Jan


    Update: change the title, answer is in comments below.

NCurses based editor of configuration files? in Seekers of Perl Wisdom
4 direct replies — Read more / Contribute
by jahero
on Jan 11, 2017 at 03:07

    Dear monks,

    I am looking for a PERL module, which would help me to quickly build a front end allowing manipulation of configuration file(s).

    Has any of you seen something like this done?

    Preferrably using modules which are available for ActiveState PERL (Windows).

    Thank you very much for your time and any pointers.

    Regards, Jan

Namespaces & colliding names in Seekers of Perl Wisdom
3 direct replies — Read more / Contribute
by jahero
on Nov 08, 2016 at 03:10

    Hello wise monks!

    I would like to ask a (probably) newbie question in regards to namespaces and names collisions.

    Lets say that I have something like this in my code (shortened, incomplete).

    package Something::BufferedRead; use strict; use warnings FATAL => 'all'; use File::Basename; our $VERSION = 1.00; my $BUFFER_SIZE = 1048576; sub new { my $class = shift; my @data = @_; my $self = {}; bless $self, $class; return $self; } sub basename { my $self = shift; return basename($self->{cfg}->{filename}); }

    Now this fails to compile since 'basename' collides with name of sub imported from module File::Basename. Obvious solution would be to change name of my sub, for example to 'base_name', however I want to understand what exactly is going on, and how to prevent this from being pain in the future.

    Which leads me to the real question.

    • Is there aby way how to prevent File:::Basename->basename from becoming a member of Something::BufferedRead namespace?
    • How exactly does one influence what is imported from the module used? I am sure this has something to do with Exporter module and/or import methods, but details slip from grasp.
    • What mechanism could I use to be able to declare 'basename' sub in my sub, and still have File::Basename->basename at my disposal?

    Thank you for your time!

Log In?

What's my password?
Create A New User
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (3)
As of 2019-10-16 21:54 GMT
Find Nodes?
    Voting Booth?