Skip to content

Instantly share code, notes, and snippets.

Created April 7, 2013 18:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/5331694 to your computer and use it in GitHub Desktop.
Save anonymous/5331694 to your computer and use it in GitHub Desktop.
perl6 successfull install of File::Tools that subsequently cannot be found , nor can the Pod's inside it of course.
root# panda install File::Tools
==> Fetching File::Tools
==> Building File::Tools
Compiling lib/File/Find.pm
Compiling lib/Shell/Command.pm
==> Testing File::Tools
t/01-file-find.t ...... ok
t/02-shell-command.t .. ok
All tests successful.
Files=2, Tests=20, 2 wallclock secs ( 0.03 usr 0.01 sys + 1.50 cusr 0.21 csys = 1.75 CPU)
Result: PASS
==> Installing File::Tools
==> Successfully installed File::Tools
it-20-m:~ root# p6doc File::Tools
Cannot locate File::Tools in any of the following paths:
/opt/local/bin/../doc/perl6/lib/
/opt/local/bin/../lib/
/opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/
/opt/local/lib/parrot/4.10.0/languages/perl6/vendor/lib/
/opt/local/lib/parrot/4.10.0/languages/perl6/lib/
/var/root/.perl6/2013.02.1/lib/
@TheBigBear
Copy link

tadzik: So I trid installing File::Tools and got File::Find and Shell::Command instead ;-) BUT ...

root# pwd
/opt/local/lib/parrot/4.10.0/languages/perl6/site/lib

root# ls -ltr File/
total 848
drwxr-xr-x 16 root wheel 544 Apr 1 17:09 Spec
-rw-r--r-- 1 root wheel 5581 Apr 1 17:36 Compare.pm6
-rw-r--r-- 1 root wheel 98456 Apr 1 17:36 Compare.pir
drwxr-xr-x 4 root wheel 136 Apr 1 17:37 Find
-rw-r--r-- 1 root wheel 217 Apr 1 17:37 HomeDir.pm
-rw-r--r-- 1 root wheel 21676 Apr 1 17:37 HomeDir.pir
-rw-r--r-- 1 root wheel 5035 Apr 1 17:38 Spec.pm
-rw-r--r-- 1 root wheel 129583 Apr 1 17:38 Spec.pir
-rw-r--r-- 1 root wheel 1115 Apr 1 19:41 Temp.pm
-rw-r--r-- 1 root wheel 42892 Apr 1 19:41 Temp.pir
-rw-r--r-- 1 root wheel 3528 Apr 7 19:00 Find.pm <------------ it's here
-rw-r--r-- 1 root wheel 99063 Apr 7 19:00 Find.pir

root# grep -i pod /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/File/Find.pm
=begin pod
=end pod

p6doc File::Tools
Cannot locate File::Tools in any of the following paths:
/opt/local/bin/../doc/perl6/lib/
/opt/local/bin/../lib/
/opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/
/opt/local/lib/parrot/4.10.0/languages/perl6/vendor/lib/
/opt/local/lib/parrot/4.10.0/languages/perl6/lib/
/var/root/.perl6/2013.02.1/lib/

p6doc /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/File/Find.pm
Cannot locate /opt/local/lib/parrot/4 in any of the following paths:
/opt/local/bin/../doc/perl6/lib/
/opt/local/bin/../lib/
/opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/
/opt/local/lib/parrot/4.10.0/languages/perl6/vendor/lib/
/opt/local/lib/parrot/4.10.0/languages/perl6/lib/
/var/root/.perl6/2013.02.1/lib/

p6doc '/opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/File/Find.pm'
Cannot locate /opt/local/lib/parrot/4 in any of the following paths:
/opt/local/bin/../doc/perl6/lib/
/opt/local/bin/../lib/
/opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/
/opt/local/lib/parrot/4.10.0/languages/perl6/vendor/lib/
/opt/local/lib/parrot/4.10.0/languages/perl6/lib/
/var/root/.perl6/2013.02.1/lib/

Why does this stop parsing at '4'?

BUT of course p6doc File::Find works! (but p6doc Shell:;Command doesn't. ;-(

@TheBigBear
Copy link

C:\rakudo\bin>perl6 panda list
MODULE_DEBUG: loading c:/rakudo/lib/parrot/4.10.0/languages/nqp/lib/Perl6/BOOTST
RAP.pbc
MODULE_DEBUG: done loading c:/rakudo/lib/parrot/4.10.0/languages/nqp/lib/Perl6/B
OOTSTRAP.pbc
MODULE_DEBUG: loading c:/rakudo/lib/parrot/4.10.0/languages/perl6/site/lib/Shell
/Command.pir
MODULE_DEBUG: loading c:/rakudo/lib/parrot/4.10.0/languages/perl6/site/lib/File/
Find.pir
MODULE_DEBUG: done loading c:/rakudo/lib/parrot/4.10.0/languages/perl6/site/lib/
File/Find.pir
MODULE_DEBUG: done loading c:/rakudo/lib/parrot/4.10.0/languages/perl6/site/lib/
Shell/Command.pir
MODULE_DEBUG: loading c:/rakudo/lib/parrot/4.10.0/languages/perl6/lib/Panda.pir
MODULE_DEBUG: loading c:/rakudo/lib/parrot/4.10.0/languages/perl6/lib/Pies.pir
MODULE_DEBUG: done loading c:/rakudo/lib/parrot/4.10.0/languages/perl6/lib/Pies.
pir
MODULE_DEBUG: loading c:/rakudo/lib/parrot/4.10.0/languages/perl6/lib/JSON/Tiny.
pir
MODULE_DEBUG: loading c:/rakudo/lib/parrot/4.10.0/languages/perl6/lib/JSON/Tiny/
Actions.pir
MODULE_DEBUG: done loading c:/rakudo/lib/parrot/4.10.0/languages/perl6/lib/JSON/
Tiny/Actions.pir
MODULE_DEBUG: loading c:/rakudo/lib/parrot/4.10.0/languages/perl6/lib/JSON/Tiny/
Grammar.pir
MODULE_DEBUG: done loading c:/rakudo/lib/parrot/4.10.0/languages/perl6/lib/JSON/
Tiny/Grammar.pir
MODULE_DEBUG: done loading c:/rakudo/lib/parrot/4.10.0/languages/perl6/lib/JSON/
Tiny.pir
MODULE_DEBUG: loading c:/rakudo/lib/parrot/4.10.0/languages/perl6/lib/Panda/Ecos
ystem.pir
===SORRY!===
Missing or wrong version of dependency 'c:/rakudo/lib/parrot/4.10.0/languages/pe
rl6/lib/Shell/Command.pm'

@TheBigBear
Copy link

I have 4 Command.pm files but only 2 that rakudo might look at , one under site and one the R* pre-built one. But they sure differ in file size.

                4 tagged files using           5,387 bytes

  Path: C:\rakudo\lib\parrot\4.10.0\languages\perl6\lib\Shell
                1 tagged files using             998 bytes

1-30-13 2:04:04 998 .a.. Command .pm

  Path: C:\rakudo\lib\parrot\4.10.0\languages\perl6\site\lib\Shell
                1 tagged files using           1,463 bytes

4-07-13 19:57:23 1,463 .a.. Command .pm

  Path: C:\rakudo\lib\parrot\4.10.0\languages\perl6\site\panda\src\File__Tools\blib\lib\Shell
                1 tagged files using           1,463 bytes

4-07-13 19:57:18 1,463 .a.. Command .pm

  Path: C:\rakudo\lib\parrot\4.10.0\languages\perl6\site\panda\src\File__Tools\lib\Shell
                1 tagged files using           1,463 bytes

4-07-13 19:43:24 1,463 .a.. Command .pm

@TheBigBear
Copy link

done a diff between the two from lib and site and they are not only of different size but they are definitly different.

--- lib_Command.pm Wed Jan 30 02:04:04 2013
+++ site_Command.pm Sun Apr 07 19:57:23 2013
@@ -24,10 +24,15 @@

sub rm_rf(*@files) is export {
for @files -> $path {

  •    for find(dir => $path).map({ .Str }).reverse -> $f {
    
  •        $f.IO.d ?? rmdir($f) !! unlink($f);
    
  •    if $path.IO.d {
    
  •        for find(dir => $path).map({ .Str }).reverse -> $f {
    
  •            $f.IO.d ?? rmdir($f) !! unlink($f);
    
  •        }
    
  •        rmdir $path;
    
  •    }
    
  •    else {
    
  •        unlink($path);
     }
    
  •    rmdir $path;
    
    }
    }

@@ -39,8 +44,16 @@
???
}

-sub cp(*@Args) is export {

  • ???
    +sub cp($from as Str, $to as Str, :$r) is export {
  • if ($from.IO ~~ :d and $r) {
  •    mkdir("$to") if $to.IO !~~ :d;
    
  •    for dir($from) -> $item {
    
  •        mkdir("$to/$item") if "$from/$item".IO ~~ :d;
    
  •        cp("$from/$item", "$to/$item", :r);
    
  •    }
    
  • } else {
  •    $from.IO.copy($to);
    
  • }
    }

sub mkpath(*@paths) is export {

@TheBigBear
Copy link

but interestingly under mac os x perl6 panda something still works the two Command.pm between lib and site differ in size as well
find ./ -name Command.pm -exec ls -l {} ;
-rw-r--r-- 1 root wheel 998 Apr 1 16:04 .//lib/parrot/4.10.0/languages/perl6/lib/Shell/Command.pm
-rw-r--r-- 1 root wheel 1384 Apr 7 19:00 .//lib/parrot/4.10.0/languages/perl6/site/lib/Shell/Command.pm

@TheBigBear
Copy link

tadzik: the strange thing is that adding File::Tools under mac os x does not cause the pre-installed R* File::Tools to break ?
under win 7 pro panda was broekn as soon as I re-installed it , even though it was actually already there, silly me.

But doing the same panda File::Tools install under mac os x did not break panda , it still works afterwards.

Here is the file listings undr mac os x :
it-20-m:perl6 ursr$ pwd
/opt/local/lib/parrot/4.10.0/languages/perl6
it-20-m:perl6 ursr$ find ./ -name Command.pir -exec ls -l {} ; | grep -v src
-rw-r--r-- 1 root wheel 52793 1 Apr 16:04 .//lib/Shell/Command.pir
-rw-r--r-- 1 root wheel 62859 7 Apr 19:00 .//site/lib/Shell/Command.pir
it-20-m:perl6 ursr$ find ./ -name Command.pir -exec ls -l {} ; | grep -v src
-rw-r--r-- 1 root wheel 52793 1 Apr 16:04 .//lib/Shell/Command.pir
-rw-r--r-- 1 root wheel 62859 7 Apr 19:00 .//site/lib/Shell/Command.pir
it-20-m:perl6 ursr$ find ./ -name Command.p* -exec ls -l {} ; | grep -v src
-rw-r--r-- 1 root wheel 52793 1 Apr 16:04 .//lib/Shell/Command.pir
-rw-r--r-- 1 root wheel 998 1 Apr 16:04 .//lib/Shell/Command.pm
-rw-r--r-- 1 root wheel 62859 7 Apr 19:00 .//site/lib/Shell/Command.pir
-rw-r--r-- 1 root wheel 1384 7 Apr 19:00 .//site/lib/Shell/Command.pm
it-20-m:perl6 ursr$ find ./ -name Find.p* -exec ls -l {} ; | grep -v src
-rw-r--r-- 1 root wheel 97912 1 Apr 16:04 .//lib/File/Find.pir
-rw-r--r-- 1 root wheel 3040 1 Apr 16:04 .//lib/File/Find.pm
-rw-r--r-- 1 root wheel 99063 7 Apr 19:00 .//site/lib/File/Find.pir
-rw-r--r-- 1 root wheel 3528 7 Apr 19:00 .//site/lib/File/Find.pm

and if I switch debug on panda still works ???? why ????

it-20-m:bin ursr$ RAKUDO_MODULE_DEBUG=1 perl6 panda list
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/nqp/lib/Perl6/BOOTSTRAP.pbc
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/nqp/lib/Perl6/BOOTSTRAP.pbc
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Shell/Command.pir
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/File/Find.pir
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/File/Find.pir
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Shell/Command.pir
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda.pir
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Pies.pir
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Pies.pir
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/JSON/Tiny.pir
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/JSON/Tiny/Actions.pir
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/JSON/Tiny/Actions.pir
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/JSON/Tiny/Grammar.pir
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/JSON/Tiny/Grammar.pir
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/JSON/Tiny.pir
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda/Ecosystem.pir
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda/Ecosystem.pir
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda/Fetcher.pir
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda/Common.pir
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda/Common.pir
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda/Resources.pir
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda/Resources.pir
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda/Fetcher.pir
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda/Builder.pir
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda/Builder.pir
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda/Tester.pir
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda/Tester.pir
MODULE_DEBUG: loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda/Installer.pir
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda/Installer.pir
MODULE_DEBUG: done loading /opt/local/lib/parrot/4.10.0/languages/perl6/site/lib/Panda.pir
ABC
ADT
Acme::Addslashes
Acme::Meow
Adventure::Engine
Algorithm::Diff
Algorithm::Soundex
Algorithm::Viterbi
BSON
Bailador
Benchmark
Benchmark::Plot
CGI::Application
CSS::Grammar
Cache::Memcached
Class::Utils
Config::INI
Coroutines
DB::Model::Easy
DBIish
Date::WorkdayCalendar
DateTime::Format::W3CDTF
DateTime::Utils
Digest
Digest::MD5
Digest::SHA256
Druid
Email::Simple
Enc::MIME::Base64
Facter
Farabi6
FastCGI
File::Compare
File::Find::Duplicates
File::HomeDir
File::Spec
File::Temp
File::Tools
Flower
Form
GD
GGE
Game::Crypt
Games::BubbleBreaker
GeoIP::City
Grammar::Debugger
Grammar::Profiler::Simple
HTML::Strip
HTML::Template
HTTP::Client
HTTP::Easy
HTTP::Server::Simple
HTTP::Status
Hinges
IO::Capture::Simple
IO::Path::More
IO::Prompter
IO::Select
IRC::Utils
IUP
Imlib2
Inline
IoC
JSON::Path
JSON::RPC
JSON::Tiny
LWP::Simple
Lingua::EN::Numbers::Ordinal
Lingua::EN::Sentence
Lingua::EN::Syllable
Lingua::Number
List::Utils
Locale::US
MIME::Base64
MIME::Types
MPD
Masquerade
Math::ContinuedFractions
Math::Model
Math::Polynomial
Math::RungeKutta
Math::Vector
Method::Modifiers
MiniDBI
Modular
MongoDB
MuEvent
NCurses
NativeCall
Net::Curl
Net::IRC::Bot
Net::ZMQ
Netstring
Nonongram
PDF::Grammar
PSpec
Perl6-Math-Quaternion
Perl6::Literate
Plosurin
Pod::Parser
Pod::To::HTML
Rakudo::Debugger
Redis
SDL
SSL
SVG
SVG::Plot
Semantic::Versioning
Sitemap::XML::Parser
Sort::Naturally
Squerl
String::CRC32
Sum
Tardis
Task::Star
Template6
Template::Mojo
Term::ANSIColor
Term::ProgressBar
Test-ClientServer
Test-Corpus
Test::Builder
Test::Harness
Test::Junkie
Test::Mock
TestML
Testing
Text-Levenshtein
Text-Tabs-Wrap
Text::Abbrev
Text::CSV
Text::Diff
Text::Emotion
Text::Markdown
Text::T9
Text::Table::List
Threads
Time::Duration
Tree::Simple
Typed::Subroutines
URI
Web
Web::App::Ballet
Web::App::MVC
Web::Template
XML
XML::Parser::Tiny
XML::Query
XML::Writer
XMMS2
XXX
YAML
Yapsi
Yarn
bioperl6
ignore
io-prompt
lolsql
mandelbrot
messagepack-pm6
november
p6doc
panda
pandabrew
ufo
v5

but the "same" thing under win 7 pro fails (see comment above from 3 days ago)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment