Start 2009-02-09T12:56:22 LIB=C:\PlatSDK\Lib\AMD64;C:\PlatSDK\Lib\AMD64\atlmfc INCLUDE=C:\PlatSDK\Include;C:\PlatSDK\Include\crt;C:\PlatSDK\Include\crt\sys;C:\PlatSDK\Include\mfc;C:\PlatSDK\Include\atl PATH=C:\PlatSDK\Bin\Win64\x86\AMD64;C:\PlatSDK\Bin;C:\PlatSDK\Bin\WinNT;C:\Perl64\site\bin;C:\Perl64\bin;C:\cygwin\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\PROGRA~2\Perforce\ Going to read C:\cpanfly\var\cpan\Metadata Database was generated on Mon, 09 Feb 2009 11:26:53 GMT Running make for V/VP/VPIT/Variable-Magic-0.29.tar.gz Fetching with LWP: http://cpan.nas.activestate.com/authors/id/V/VP/VPIT/Variable-Magic-0.29.tar.gz Checksum for C:\cpanfly\var\cpan\sources\authors\id\V\VP\VPIT\Variable-Magic-0.29.tar.gz ok Variable-Magic-0.29/ Variable-Magic-0.29/lib/ Variable-Magic-0.29/lib/Variable/ Variable-Magic-0.29/lib/Variable/Magic.pm Variable-Magic-0.29/t/ Variable-Magic-0.29/t/31-array.t Variable-Magic-0.29/t/41-clone.t Variable-Magic-0.29/t/27-local.t Variable-Magic-0.29/t/90-boilerplate.t Variable-Magic-0.29/t/40-threads.t Variable-Magic-0.29/t/lib/ Variable-Magic-0.29/t/lib/Variable/ Variable-Magic-0.29/t/lib/Variable/Magic/ Variable-Magic-0.29/t/lib/Variable/Magic/TestWatcher.pm Variable-Magic-0.29/t/99-kwalitee.t Variable-Magic-0.29/t/23-clear.t Variable-Magic-0.29/t/24-free.t Variable-Magic-0.29/t/28-uvar.t Variable-Magic-0.29/t/00-load.t Variable-Magic-0.29/t/22-len.t Variable-Magic-0.29/t/30-scalar.t Variable-Magic-0.29/t/21-set.t Variable-Magic-0.29/t/12-sig.t Variable-Magic-0.29/t/34-glob.t Variable-Magic-0.29/t/13-data.t Variable-Magic-0.29/t/95-portability-files.t Variable-Magic-0.29/t/16-huf.t Variable-Magic-0.29/t/17-ctl.t Variable-Magic-0.29/t/92-pod-coverage.t Variable-Magic-0.29/t/33-code.t Variable-Magic-0.29/t/10-simple.t Variable-Magic-0.29/t/25-copy.t Variable-Magic-0.29/t/01-import.t Variable-Magic-0.29/t/15-self.t Variable-Magic-0.29/t/14-callbacks.t Variable-Magic-0.29/t/20-get.t Variable-Magic-0.29/t/32-hash.t Variable-Magic-0.29/t/11-multiple.t Variable-Magic-0.29/t/91-pod.t Variable-Magic-0.29/Magic.xs Variable-Magic-0.29/README Variable-Magic-0.29/Changes Variable-Magic-0.29/MANIFEST Variable-Magic-0.29/META.yml Variable-Magic-0.29/Makefile.PL Variable-Magic-0.29/samples/ Variable-Magic-0.29/samples/vm_vs_tie.pl Variable-Magic-0.29/samples/magic.pl Variable-Magic-0.29/samples/copy.pl Variable-Magic-0.29/samples/uvar.pl CPAN.pm: Going to build V/VP/VPIT/Variable-Magic-0.29.tar.gz >>> C:\Perl64\bin\perl.exe Makefile.PL Checking perl patchlevel... none Checking if this is Windows ActiveState 5.8.[78]... no Checking if your kit is complete... Looks good Writing Makefile for Variable::Magic >>> nmake Microsoft (R) Program Maintenance Utility Version 7.00.8882 Copyright (C) Microsoft Corp 1988-2000. All rights reserved. cp lib/Variable/Magic.pm blib\lib\Variable\Magic.pm C:\Perl64\bin\perl.exe C:\cpanfly\var\megalib\ExtUtils\xsubpp -typemap C:\Perl64\lib\ExtUtils\typemap Magic.xs > Magic.xsc && C:\Perl64\bin\perl.exe -MExtUtils::Command -e mv Magic.xsc Magic.c cl -c -nologo -GF -W3 -MD -Zi -DNDEBUG -Ox -GL -Wp64 -fp:precise -DWIN32 -D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRYPT -DWIN64 -DCONSERVATIVE -DUSE_SITECUSTOMIZE -DPRIVLIB_LAST_IN_INC -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_READFIX -MD -Zi -DNDEBUG -Ox -GL -Wp64 -fp:precise -DVERSION=\"0.29\" -DXS_VERSION=\"0.29\" "-IC:\Perl64\lib\CORE" Magic.c Magic.c Magic.xs(222) : warning C4244: '=' : conversion from 'double' to 'U16', possible loss of data Magic.xs(525) : warning C4244: '=' : conversion from 'IV' to 'int', possible loss of data Magic.xs(565) : warning C4267: '=' : conversion from 'size_t' to 'U32', possible loss of data Magic.xs(567) : warning C4267: '=' : conversion from 'size_t' to 'U32', possible loss of data Magic.xs(582) : warning C4244: '=' : conversion from 'UV' to 'U32', possible loss of data Magic.xs(826) : warning C4244: '=' : conversion from 'UV' to 'U16', possible loss of data Magic.xs(828) : warning C4244: '=' : conversion from 'NV' to 'U16', possible loss of data Magic.xs(830) : warning C4244: '=' : conversion from 'UV' to 'U16', possible loss of data Magic.xs(1003) : warning C4267: 'function' : conversion from 'size_t' to 'I32', possible loss of data Magic.c(1228) : warning C4101: 'RETVAL' : unreferenced local variable Running Mkbootstrap for Variable::Magic () C:\Perl64\bin\perl.exe -MExtUtils::Command -e chmod 644 Magic.bs C:\Perl64\bin\perl.exe -MExtUtils::Mksymlists -e "Mksymlists('NAME'=>\"Variable::Magic\", 'DLBASE' => 'Magic', 'DL_FUNCS' => { }, 'FUNCLIST' => [], 'IMPORTS' => { }, 'DL_VARS' => []);" link -out:blib\arch\auto\Variable\Magic\Magic.dll -dll -nologo -nodefaultlib -debug -opt:ref,icf -ltcg -libpath:"C:\Perl64\lib\CORE" -machine:AMD64 Magic.obj C:\Perl64\lib\CORE\perl510.lib oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib bufferoverflowU.lib msvcrt.lib -def:Magic.def Creating library blib\arch\auto\Variable\Magic\Magic.lib and object blib\arch\auto\Variable\Magic\Magic.exp Generating code Finished generating code C:\Perl64\bin\perl.exe -MExtUtils::Command -e chmod 755 blib\arch\auto\Variable\Magic\Magic.dll C:\Perl64\bin\perl.exe -MExtUtils::Command -e cp Magic.bs blib\arch\auto\Variable\Magic\Magic.bs C:\Perl64\bin\perl.exe -MExtUtils::Command -e chmod 644 blib\arch\auto\Variable\Magic\Magic.bs VPIT/Variable-Magic-0.29.tar.gz nmake -- OK Running make test >>> nmake test TEST_VERBOSE=1 Microsoft (R) Program Maintenance Utility Version 7.00.8882 Copyright (C) Microsoft Corp 1988-2000. All rights reserved. C:\Perl64\bin\perl.exe "-MExtUtils::Command::MM" "-e" "test_harness(1, 'blib\lib', 'blib\arch')" t/*.t t/00-load................. 1..1 ok 1 - use Variable::Magic; # Testing Variable::Magic 0.29, Perl 5.010000 (no patchlevel), C:\Perl64\bin\perl.exe # This is ActiveState Perl 5.010000 build 1003 ok t/01-import............... 1..19 ok 1 - import wizard ok 2 - import gensig ok 3 - import getsig ok 4 - import cast ok 5 - import getdata ok 6 - import dispell ok 7 - import SIG_MIN ok 8 - import SIG_MAX ok 9 - import SIG_NBR ok 10 - import MGf_COPY ok 11 - import MGf_DUP ok 12 - import MGf_LOCAL ok 13 - import VMG_UVAR ok 14 - import VMG_COMPAT_ARRAY_PUSH_NOLEN ok 15 - import VMG_COMPAT_ARRAY_UNSHIFT_NOLEN_VOID ok 16 - import VMG_COMPAT_ARRAY_UNDEF_CLEAR ok 17 - import VMG_COMPAT_SCALAR_LENGTH_NOLEN ok 18 - import VMG_PERL_PATCHLEVEL ok 19 - import VMG_THREADSAFE ok t/10-simple............... 1..46 ok 1 - _wizard called directly with a wrong number of arguments croaks ok 2 - _wizard called directly with a wrong number of arguments croaks ok 3 - _wizard called directly with a wrong number of arguments croaks ok 4 - _wizard called directly with a wrong number of arguments croaks ok 5 - _wizard called directly with a wrong number of arguments croaks ok 6 - _wizard called directly with a wrong number of arguments croaks ok 7 - _wizard called directly with a wrong number of arguments croaks ok 8 - _wizard called directly with a wrong number of arguments croaks ok 9 - _wizard called directly with a wrong number of arguments croaks ok 10 - _wizard called directly with a wrong number of arguments croaks ok 11 - _wizard called directly with a wrong number of arguments croaks ok 12 - _wizard called directly with a wrong number of arguments croaks ok 13 - _wizard called directly with a wrong number of arguments croaks ok 14 - _wizard called directly with a wrong number of arguments croaks ok 15 - _wizard called directly with a wrong number of arguments croaks ok 16 - _wizard called directly with a wrong number of arguments croaks ok 17 - _wizard called directly with a wrong number of arguments croaks ok 18 - _wizard called directly with a wrong number of arguments croaks ok 19 - _wizard called directly with a wrong number of arguments croaks ok 20 - _wizard called directly with a wrong number of arguments croaks ok 21 - wizard called with an odd number of arguments croaks ok 22 - wizard called with an odd number of arguments croaks ok 23 - wizard called with an odd number of arguments croaks ok 24 - wizard called with an odd number of arguments croaks ok 25 - wizard doesn't croak ok 26 - wizard is defined ok 27 - wizard is a scalar ref ok 28 - wizard signature is correct ok 29 - cast doesn't croak ok 30 - cast is valid ok 31 - dispell from wizard doesn't croak ok 32 - dispell from wizard is valid ok 33 - re-cast doesn't croak ok 34 - re-cast is valid ok 35 - re-dispell from wrong sig doesn't croak ok 36 - re-dispell from wrong sig doesn't return anything ok 37 - re-dispell from undef croaks ok 38 - re-dispell from undef doesn't return anything ok 39 - re-dispell from good sig doesn't croak ok 40 - re-dispell from good sig is valid ok 41 - dispell non-magic object doesn't croak ok 42 - dispell non-magic object returns 0 ok 43 - cast from obsolete signature doesn't croak ok 44 - cast from obsolete signature returns undef ok 45 - cast from undef croaks ok 46 - cast from undef doesn't return anything ok t/11-multiple............. 1..74 ok 1 - wizard 0 creation doesn't croak ok 2 - wizard 1 creation doesn't croak ok 3 - wizard 2 creation doesn't croak ok 4 - wizard 0 is defined ok 5 - wizard 0 is a scalar ref ok 6 - wizard 1 is defined ok 7 - wizard 1 is a scalar ref ok 8 - wizard 2 is defined ok 9 - wizard 2 is a scalar ref ok 10 - cast magic 0 doesn't croak ok 11 - cast magic 0 is valid ok 12 - cast magic 1 doesn't croak ok 13 - cast magic 1 is valid ok 14 - cast magic 2 doesn't croak ok 15 - cast magic 2 is valid ok 16 - get magic 0 ok 17 - get magic 1 ok 18 - get magic 2 ok 19 - set magic 0 ok 20 - set magic 1 ok 21 - set magic 2 ok 22 - dispell magic 1 doesn't croak ok 23 - dispell magic 1 is valid ok 24 - get magic 0 after dispelled 1 ok 25 - get magic 2 after dispelled 1 ok 26 - set magic 0 after dispelled 1 ok 27 - set magic 2 after dispelled 1 ok 28 - dispell magic 0 doesn't croak ok 29 - dispell magic 0 is valid ok 30 - get magic 2 after dispelled 1 & 0 ok 31 - set magic 2 after dispelled 1 & 0 ok 32 - dispell magic 2 doesn't croak ok 33 - dispell magic 2 is valid ok 34 - wizard with uvar 0 doesn't croak ok 35 - wizard with uvar 1 doesn't croak ok 36 - wizard with uvar 2 doesn't croak ok 37 - wizard with uvar 0 is defined ok 38 - wizard with uvar 0 is a scalar ref ok 39 - wizard with uvar 1 is defined ok 40 - wizard with uvar 1 is a scalar ref ok 41 - wizard with uvar 2 is defined ok 42 - wizard with uvar 2 is a scalar ref ok 43 - cast uvar magic 0 doesn't croak ok 44 - cast uvar magic 0 is valid ok 45 - cast uvar magic 1 doesn't croak ok 46 - cast uvar magic 1 is valid ok 47 - cast uvar magic 2 doesn't croak ok 48 - cast uvar magic 2 is valid ok 49 - fetch magic doesn't clobber ok 50 - fetch magic 0 ok 51 - fetch magic 1 ok 52 - fetch magic 2 ok 53 - store magic 0 ok 54 - store magic 1 ok 55 - store magic 2 ok 56 - store magic doesn't clobber ok 57 - dispell uvar magic 1 doesn't croak ok 58 - dispell uvar magic 1 is valid ok 59 - fetch magic after dispelled 1 doesn't clobber ok 60 - fetch magic 0 after dispelled 1 ok 61 - fetch magic 2 after dispelled 1 ok 62 - store magic 0 after dispelled 1 ok 63 - store magic 2 after dispelled 1 ok 64 - store magic after dispelled 1 doesn't clobber ok 65 - dispell uvar magic 2 doesn't croak ok 66 - dispell uvar magic 2 is valid ok 67 - fetch magic after dispelled 1,2 doesn't clobber ok 68 - fetch magic 0 after dispelled 1,2 ok 69 - store magic 0 after dispelled 1,2 ok 70 - store magic after dispelled 1,2 doesn't clobber ok 71 - dispell uvar magic 0 doesn't croak ok 72 - dispell uvar magic 0 is valid ok 73 - fetch magic after dispelled 1,2,0 doesn't clobber ok 74 - store magic after dispelled 1,2,0 doesn't clobber ok t/12-sig.................. 1..26 ok 1 - wizard creation doesn't croak ok 2 - wizard is defined ok 3 - wizard is a scalar ref ok 4 - wizard signature is correct ok 5 - wizard retreive doesn't croak ok 6 - retrieved wizard is defined ok 7 - retrieved wizard is a scalar ref ok 8 - retrieved wizard signature is correct ok 9 - non numeric signature croaks ok 10 - non numeric signature doesn't return anything ok 11 - cast from wizard doesn't croak ok 12 - cast from wizard invalid ok 13 - dispell from retrieved wizard doesn't croak ok 14 - dispell from retrieved wizard invalid ok 15 - cast from integer doesn't croak ok 16 - cast from integer invalid ok 17 - cast from float doesn't croak ok 18 - cast from float invalid ok 19 - cast from string doesn't croak ok 20 - cast from string invalid ok 21 - dispell from integer doesn't croak ok 22 - dispell from integer invalid ok 23 - dispell from float doesn't croak ok 24 - dispell from float invalid ok 25 - dispell from string doesn't croak ok 26 - dispell from string invalid ok t/13-data................. 1..38 ok 1 - wizard doesn't croak ok 2 - wizard is defined ok 3 - wizard is a scalar ref ok 4 - cast doesn't croak ok 5 - cast returns true ok 6 - getdata from wizard doesn't croak ok 7 - getdata from wizard returns true ok 8 - getdata from wizard return value is ok ok 9 - getdata from non-magical scalar doesn't croak ok 10 - getdata from non-magical scalar returns undef ok 11 - getdata from sig doesn't croak ok 12 - getdata from sig returns true ok 13 - getdata from sig return value is ok ok 14 - get magic : pass data ok 15 - get magic : data updated ok 16 - set magic : pass data ok 17 - set magic : pass data ok 18 - getdata from invalid sig doesn't croak ok 19 - getdata from invalid sig returns undef ok 20 - getdata from undef croaks ok 21 - getdata from undef doesn't return anything ok 22 - dispell doesn't croak ok 23 - dispell returns true ok 24 - cast with arguments doesn't croak ok 25 - cast with arguments returns true ok 26 - getdata from wizard with arguments doesn't croak ok 27 - getdata from wizard with arguments returns true ok 28 - getdata from wizard with arguments return value is ok ok 29 - cast non-data wizard doesn't croak ok 30 - cast non-data wizard returns true ok 31 - getdata from non-data wizard doesn't croak ok 32 - getdata from non-data wizard invalid returns undef ok 33 - data from d is what we expected ok 34 - cast arguments from d were passed by alias ok 35 - data from e is what we expected ok 36 - cast arguments from e were passed by alias ok 37 - data from d wasn't changed ok 38 - data from e wasn't changed ok t/14-callbacks............ 1..12 ok 1 - wizard creation doesn't croak ok 2 - wizard is defined ok 3 - wizard is a scalar ref ok 4 - cast doesn't croak ok 5 - cast is valid ok 6 - callback returning undef doesn't warn/croak ok 7 - callback returning undef fails ok 8 - caller into callback returns the right thing ok 9 - caller into callback returns the right thing (second time) ok 10 - caller into callback into block returns the right thing ok 11 - caller into callback doesn't croak ok 12 - caller into callback into eval returns the right thing ok t/15-self................. 1..16 ok 1 - wizard creation error doesn't croak ok 2 - wizard is defined ok 3 - wizard is a scalar ref ok 4 - cast on self doesn't croak ok 5 - cast on self is valid ok 6 - magic works correctly on self ok 7 - dispell on self doesn't croak ok 8 - dispell on self is valid ok 9 - magic is no longer invoked on self when dispelled ok 10 - re-cast on self doesn't croak ok 11 - re-cast on self is valid ok 12 - getdata on magical self doesn't trigger callbacks ok 13 - re-dispell on self doesn't croak ok 14 - re-dispell on self is valid ok 15 - re-re-cast on self doesn't croak ok 16 - re-re-cast on self is valid # Test global destruction ok t/16-huf.................. 1..18 # Using Hash::Util::FieldHash 1.03 ok 1 - huf: wizard() doesn't croak ok 2 - huf: wizard() doesn't trigger magic ok 3 - huf: wizard with uvar is defined ok 4 - huf: wizard with uvar is a scalar ref ok 5 - huf: cast uvar magic on fieldhash doesn't croak ok 6 - huf: cast uvar magic on fieldhash triggers magic correctly ok 7 - huf: cast uvar magic on fieldhash succeeded ok 8 - huf: fetch on magical fieldhash doesn't croak ok 9 - huf: fetch on magical fieldhash triggers magic correctly ok 10 - huf: fetch on magical fieldhash succeeded ok 11 - huf: store on magical fieldhash doesn't croak ok 12 - huf: store on magical fieldhash triggers magic correctly ok 13 - huf: store on magical fieldhash succeeded ok 14 - huf: dispell uvar magic on fieldhash doesn't croak ok 15 - huf: dispell uvar magic on fieldhash triggers magic correctly ok 16 - huf: dispell uvar magic on fieldhash succeeded ok 17 - huf: store/fetch on fieldhash after dispell still ok ok 18 - huf: magic triggered at END time ok t/17-ctl.................. 1..7 ok 1 - die in data callback ok 2 - die in set callback ok 3 - die in len callback ok 4 - die in free callback ok 5 - die in data callback in BEGIN ok 6 - die in free callback in BEGIN ok 7 - die in len callback in BEGIN ok t/20-get.................. 1..11 ok 1 - get: wizard() doesn't croak ok 2 - get: wizard() doesn't trigger magic ok 3 - get: cast doesn't croak ok 4 - get: cast triggers magic correctly ok 5 - get: assign to doesn't croak ok 6 - get: assign to triggers magic correctly ok 7 - get: assign to correctly ok 8 - get: interpolate doesn't croak ok 9 - get: interpolate triggers magic correctly ok 10 - get: interpolate correctly ok 11 - get: magic triggered at END time ok t/21-set.................. 1..14 ok 1 - set: wizard() doesn't croak ok 2 - set: wizard() doesn't trigger magic ok 3 - set: cast doesn't croak ok 4 - set: cast triggers magic correctly ok 5 - set: assign doesn't croak ok 6 - set: assign triggers magic correctly ok 7 - set: assign correctly ok 8 - set: increment doesn't croak ok 9 - set: increment triggers magic correctly ok 10 - set: increment correctly ok 11 - set: decrement doesn't croak ok 12 - set: decrement triggers magic correctly ok 13 - set: decrement correctly ok 14 - set: magic triggered at END time ok t/22-len.................. 1..33 ok 1 - len: wizard() doesn't trigger magic ok 2 - len: cast on array doesn't trigger magic ok 3 - len: get array length triggers magic correctly ok 4 - len: get array length have correct default length ok 5 - len: get array length correctly ok 6 - len: get last array index triggers magic correctly ok 7 - len: get last array index have correct default length ok 8 - len: get last array index correctly ok 9 - len: get array length 0 triggers magic correctly ok 10 - len: get array length 0 have correct default length ok 11 - len: get array length 0 correctly ok 12 - len: get empty array length triggers magic correctly ok 13 - len: get empty array length have correct default length ok 14 - len: get empty array length correctly ok 15 - len: get last empty array index triggers magic correctly ok 16 - len: get last empty array index have correct default length ok 17 - len: get last empty array index correctly ok 18 - len: cast on scalar doesn't trigger magic ok 19 - len: get scalar length triggers magic correctly ok 20 - len: get scalar length have correct default length ok 21 - len: get scalar length correctly ok 22 - len: get scalar length 0 triggers magic correctly ok 23 - len: get scalar length 0 have correct default length ok 24 - len: get scalar length 0 correctly ok 25 - len: get empty scalar length triggers magic correctly ok 26 - len: get empty scalar length have correct default length ok 27 - len: get empty scalar length correctly ok 28 - len: get utf8 scalar length in bytes triggers magic correctly ok 29 - len: get utf8 scalar length in bytes have correct default length ok 30 - len: get utf8 scalar length in bytes correctly ok 31 - len: get utf8 scalar length triggers magic correctly ok 32 - len: get utf8 scalar length have correct default length ok 33 - len: get utf8 scalar length correctly ok t/23-clear................ 1..13 ok 1 - clear: wizard() doesn't croak ok 2 - clear: wizard() doesn't trigger magic ok 3 - clear: cast array doesn't croak ok 4 - clear: cast array triggers magic correctly ok 5 - clear: clear array doesn't croak ok 6 - clear: clear array triggers magic correctly ok 7 - clear: clear array correctly ok 8 - clear: cast hash doesn't croak ok 9 - clear: cast hash triggers magic correctly ok 10 - clear: clear hash doesn't croak ok 11 - clear: clear hash triggers magic correctly ok 12 - clear: clear hash correctly ok 13 - clear: magic triggered at END time ok t/24-free................. 1..11 ok 1 - free: wizard() doesn't croak ok 2 - free: wizard() doesn't trigger magic ok 3 - free: cast doesn't croak ok 4 - free: cast triggers magic correctly ok 5 - free: deletion at the end of the scope doesn't croak ok 6 - free: deletion at the end of the scope triggers magic correctly ok 7 - free: cast 2 doesn't croak ok 8 - free: cast 2 triggers magic correctly ok 9 - free: explicit deletion with undef() doesn't croak ok 10 - free: explicit deletion with undef() triggers magic correctly ok 11 - free: magic triggered at END time ok t/25-copy................. 1..40 ok 1 - copy: wizard() doesn't croak ok 2 - copy: wizard() doesn't trigger magic # Using Tie::Array 1.03 ok 3 - copy: cast on tied array doesn't croak ok 4 - copy: cast on tied array triggers magic correctly ok 5 - copy: cast on tied array succeeded ok 6 - copy: tied array store doesn't croak ok 7 - copy: tied array store triggers magic correctly ok 8 - copy: tied array fetch doesn't croak ok 9 - copy: tied array fetch triggers magic correctly ok 10 - copy: tied array fetch correctly ok 11 - copy: tied array exists doesn't croak ok 12 - copy: tied array exists triggers magic correctly ok 13 - copy: tied array exists correctly ok 14 - copy: tied array undef doesn't croak ok 15 - copy: tied array undef triggers magic correctly # Using Tie::Hash 1.02 ok 16 - copy: cast on tied hash doesn't croak ok 17 - copy: cast on tied hash triggers magic correctly ok 18 - copy: cast on tied hash succeeded ok 19 - copy: tied hash store doesn't croak ok 20 - copy: tied hash store triggers magic correctly ok 21 - copy: tied hash fetch doesn't croak ok 22 - copy: tied hash fetch triggers magic correctly ok 23 - copy: tied hash fetch correctly ok 24 - copy: tied hash exists doesn't croak ok 25 - copy: tied hash exists triggers magic correctly ok 26 - copy: tied hash exists correctly ok 27 - copy: tied hash delete doesn't croak ok 28 - copy: tied hash delete triggers magic correctly ok 29 - copy: tied hash delete correctly ok 30 - copy: tied hash each doesn't croak ok 31 - copy: tied hash each triggers magic correctly ok 32 - copy: tied hash keys doesn't croak ok 33 - copy: tied hash keys triggers magic correctly ok 34 - copy: tied hash keys correctly ok 35 - copy: tied hash values doesn't croak ok 36 - copy: tied hash values triggers magic correctly ok 37 - copy: tied hash values correctly ok 38 - copy: tied hash undef doesn't croak ok 39 - copy: tied hash undef triggers magic correctly ok 40 - copy: magic triggered at END time ok t/27-local................ 1..8 ok 1 - local: wizard() doesn't croak ok 2 - local: wizard() doesn't trigger magic ok 3 - local: cast doesn't croak ok 4 - local: cast triggers magic correctly ok 5 - local: cast succeeded ok 6 - local: localized doesn't croak ok 7 - local: localized triggers magic correctly ok 8 - local: magic triggered at END time ok t/28-uvar................. 1..57 ok 1 - uvar: wizard() doesn't croak ok 2 - uvar: wizard() doesn't trigger magic ok 3 - uvar: cast doesn't croak ok 4 - uvar: cast triggers magic correctly ok 5 - uvar: cast succeeded ok 6 - uvar: fetch directly doesn't croak ok 7 - uvar: fetch directly triggers magic correctly ok 8 - uvar: fetch directly correctly ok 9 - uvar: fetch by interpolation doesn't croak ok 10 - uvar: fetch by interpolation triggers magic correctly ok 11 - uvar: fetch by interpolation correctly ok 12 - uvar: store directly doesn't croak ok 13 - uvar: store directly triggers magic correctly ok 14 - uvar: fetch and store doesn't croak ok 15 - uvar: fetch and store triggers magic correctly ok 16 - uvar: fetch and store correctly ok 17 - uvar: exists doesn't croak ok 18 - uvar: exists triggers magic correctly ok 19 - uvar: exists correctly ok 20 - uvar: delete existing key doesn't croak ok 21 - uvar: delete existing key triggers magic correctly ok 22 - uvar: delete existing key correctly ok 23 - uvar: delete non-existing key doesn't croak ok 24 - uvar: delete non-existing key triggers magic correctly ok 25 - uvar: delete non-existing key correctly ok 26 - uvar: fetch directly with also non uvar magic doesn't croak ok 27 - uvar: fetch directly with also non uvar magic triggers magic correctly ok 28 - uvar: fetch directly with also non uvar magic correctly # Using Tie::Hash 1.02 ok 29 - uvar: cast on tied hash doesn't croak ok 30 - uvar: cast on tied hash triggers magic correctly ok 31 - uvar: cast on tied hash succeeded ok 32 - uvar: fetch on tied hash doesn't croak ok 33 - uvar: fetch on tied hash triggers magic correctly ok 34 - uvar: fetch on tied hash succeeded ok 35 - uvar: store on tied hash doesn't croak ok 36 - uvar: store on tied hash triggers magic correctly ok 37 - uvar: exists on tied hash doesn't croak ok 38 - uvar: exists on tied hash triggers magic correctly ok 39 - uvar: exists on tied hash succeeded ok 40 - uvar: delete on tied hash doesn't croak ok 41 - uvar: delete on tied hash triggers magic correctly ok 42 - uvar: delete on tied hash succeeded ok 43 - uvar: fetch with incomplete magic doesn't croak ok 44 - uvar: fetch with incomplete magic correctly ok 45 - uvar: store with incomplete magic doesn't croak ok 46 - uvar: store with incomplete magic correctly ok 47 - uvar: change key in store doesn't croak (1) ok 48 - uvar: change key didn't clobber $key (1) ok 49 - uvar: change key in store correcty (1) ok 50 - uvar: change key in store doesn't croak (2) ok 51 - uvar: change key didn't clobber $key (2) ok 52 - uvar: change key in store correcty (2) ok 53 - uvar: change readonly key in store doesn't croak (1) ok 54 - uvar: change readonly key in store correcty (1) ok 55 - uvar: change readonly key in store doesn't croak (2) ok 56 - uvar: change readonly key in store correcty (2) ok 57 - uvar: magic triggered at END time ok t/30-scalar............... 1..31 ok 1 - scalar: wizard() doesn't croak ok 2 - scalar: wizard() doesn't trigger magic ok 3 - scalar: cast doesn't croak ok 4 - scalar: cast triggers magic correctly ok 5 - scalar: assign to doesn't croak ok 6 - scalar: assign to triggers magic correctly ok 7 - scalar: assign to correctly ok 8 - scalar: interpolate doesn't croak ok 9 - scalar: interpolate triggers magic correctly ok 10 - scalar: interpolate correctly ok 11 - scalar: reference doesn't croak ok 12 - scalar: reference triggers magic correctly ok 13 - scalar: assign to doesn't croak ok 14 - scalar: assign to triggers magic correctly ok 15 - scalar: increment doesn't croak ok 16 - scalar: increment triggers magic correctly ok 17 - scalar: decrement doesn't croak ok 18 - scalar: decrement triggers magic correctly ok 19 - scalar: multiply in place doesn't croak ok 20 - scalar: multiply in place triggers magic correctly ok 21 - scalar: divide in place doesn't croak ok 22 - scalar: divide in place triggers magic correctly ok 23 - scalar: cast 2 doesn't croak ok 24 - scalar: cast 2 triggers magic correctly ok 25 - scalar: scope end doesn't croak ok 26 - scalar: scope end triggers magic correctly ok 27 - scalar: undef doesn't croak ok 28 - scalar: undef triggers magic correctly ok 29 - scalar: dispell doesn't croak ok 30 - scalar: dispell triggers magic correctly ok 31 - scalar: magic triggered at END time ok t/31-array................ 1..68 ok 1 - array: wizard() doesn't croak ok 2 - array: wizard() doesn't trigger magic ok 3 - array: cast doesn't croak ok 4 - array: cast triggers magic correctly ok 5 - array: assign element to doesn't croak ok 6 - array: assign element to triggers magic correctly ok 7 - array: assign element to correctly ok 8 - array: assign to doesn't croak ok 9 - array: assign to triggers magic correctly ok 10 - array: assign to correctly ok 11 - array: interpolate doesn't croak ok 12 - array: interpolate triggers magic correctly ok 13 - array: interpolate correctly ok 14 - array: reference doesn't croak ok 15 - array: reference triggers magic correctly ok 16 - array: slice doesn't croak ok 17 - array: slice triggers magic correctly ok 18 - array: slice correctly ok 19 - array: assign doesn't croak ok 20 - array: assign triggers magic correctly ok 21 - array: assign old element doesn't croak ok 22 - array: assign old element triggers magic correctly ok 23 - array: assign new element doesn't croak ok 24 - array: assign new element triggers magic correctly ok 25 - array: exists doesn't croak ok 26 - array: exists triggers magic correctly ok 27 - array: exists correctly ok 28 - array: delete doesn't croak ok 29 - array: delete triggers magic correctly ok 30 - array: delete correctly ok 31 - array: length @ doesn't croak ok 32 - array: length @ triggers magic correctly ok 33 - array: length @ correctly ok 34 - array: length $\# doesn't croak ok 35 - array: length $\# triggers magic correctly ok 36 - array: length $\# correctly ok 37 - array: push (void) doesn't croak ok 38 - array: push (void) triggers magic correctly ok 39 - array: push (scalar) doesn't croak ok 40 - array: push (scalar) triggers magic correctly ok 41 - array: push (scalar) correctly ok 42 - array: pop doesn't croak ok 43 - array: pop triggers magic correctly ok 44 - array: pop correctly ok 45 - array: unshift (void) doesn't croak ok 46 - array: unshift (void) triggers magic correctly ok 47 - array: unshift (scalar) doesn't croak ok 48 - array: unshift (scalar) triggers magic correctly ok 49 - unshift (scalar) correctly ok 50 - array: shift doesn't croak ok 51 - array: shift triggers magic correctly ok 52 - array: shift correctly ok 53 - array: map doesn't croak ok 54 - array: map triggers magic correctly ok 55 - array: grep doesn't croak ok 56 - array: grep triggers magic correctly ok 57 - array: grep correctly ok 58 - array: for doesn't croak ok 59 - array: for triggers magic correctly ok 60 - array: cast 2 doesn't croak ok 61 - array: cast 2 triggers magic correctly ok 62 - array: scope end doesn't croak ok 63 - array: scope end triggers magic correctly ok 64 - array: undef doesn't croak ok 65 - array: undef triggers magic correctly ok 66 - array: dispell doesn't croak ok 67 - array: dispell triggers magic correctly ok 68 - array: magic triggered at END time ok t/32-hash................. 1..50 ok 1 - hash: wizard() doesn't croak ok 2 - hash: wizard() doesn't trigger magic ok 3 - hash: cast doesn't croak ok 4 - hash: cast triggers magic correctly ok 5 - hash: assign element to doesn't croak ok 6 - hash: assign element to triggers magic correctly ok 7 - hash: assign element to correctly ok 8 - hash: exists (1) doesn't croak ok 9 - hash: exists (1) triggers magic correctly ok 10 - hash: exists correctly (1) ok 11 - hash: exists (2) doesn't croak ok 12 - hash: exists (2) triggers magic correctly ok 13 - hash: exists correctly (2) ok 14 - hash: assign to doesn't croak ok 15 - hash: assign to triggers magic correctly ok 16 - hash: assign to correctly ok 17 - hash: reference doesn't croak ok 18 - hash: reference triggers magic correctly ok 19 - hash: slice doesn't croak ok 20 - hash: slice triggers magic correctly ok 21 - hash: slice correctly ok 22 - hash: empty in list context doesn't croak ok 23 - hash: empty in list context triggers magic correctly ok 24 - hash: assign from list in void context doesn't croak ok 25 - hash: assign from list in void context triggers magic correctly ok 26 - hash: assign from map in list context doesn't croak ok 27 - hash: assign from map in list context triggers magic correctly ok 28 - hash: assign old element doesn't croak ok 29 - hash: assign old element triggers magic correctly ok 30 - hash: assign new element doesn't croak ok 31 - hash: assign new element triggers magic correctly ok 32 - hash: buckets doesn't croak ok 33 - hash: buckets triggers magic correctly ok 34 - hash: keys doesn't croak ok 35 - hash: keys triggers magic correctly ok 36 - hash: keys correctly ok 37 - hash: values doesn't croak ok 38 - hash: values triggers magic correctly ok 39 - hash: values correctly ok 40 - hash: each doesn't croak ok 41 - hash: each triggers magic correctly ok 42 - hash: cast 2 doesn't croak ok 43 - hash: cast 2 triggers magic correctly ok 44 - hash: scope end doesn't croak ok 45 - hash: scope end triggers magic correctly ok 46 - hash: undef doesn't croak ok 47 - hash: undef triggers magic correctly ok 48 - hash: dispell doesn't croak ok 49 - hash: dispell triggers magic correctly ok 50 - hash: magic triggered at END time ok t/33-code................. 1..30 ok 1 - code: wizard() doesn't croak ok 2 - code: wizard() doesn't trigger magic ok 3 - code: cast doesn't croak ok 4 - code: cast triggers magic correctly ok 5 - code: cast didn't called code ok 6 - code: call without arguments doesn't croak ok 7 - code: call without arguments triggers magic correctly ok 8 - code: call without arguments succeeded ok 9 - code: call with arguments doesn't croak ok 10 - code: call with arguments triggers magic correctly ok 11 - code: call with arguments succeeded ok 12 - code: undef symbol table entry doesn't croak ok 13 - code: undef symbol table entry triggers magic correctly ok 14 - code: undef symbol table entry didn't call code ok 15 - code: redefining sub doesn't croak ok 16 - code: redefining sub triggers magic correctly ok 17 - code: re-cast doesn't croak ok 18 - code: re-cast triggers magic correctly ok 19 - code: re-cast didn't called code ok 20 - code: reference doesn't croak ok 21 - code: reference triggers magic correctly ok 22 - code: reference didn't called code ok 23 - code: call reference doesn't croak ok 24 - code: call reference triggers magic correctly ok 25 - code: call reference succeeded ok 26 - code: call reference didn't called the previous code ok 27 - code: dispell doesn't croak ok 28 - code: dispell triggers magic correctly ok 29 - code: dispell didn't called code ok 30 - code: magic triggered at END time ok t/34-glob................. 1..17 # Using Symbol 1.06 ok 1 - glob: wizard() doesn't croak ok 2 - glob: wizard() doesn't trigger magic ok 3 - glob: cast doesn't croak ok 4 - glob: cast triggers magic correctly ok 5 - glob: assign to doesn't croak ok 6 - glob: assign to triggers magic correctly ok 7 - glob: assign doesn't croak ok 8 - glob: assign triggers magic correctly ok 9 - glob: cast 2 doesn't croak ok 10 - glob: cast 2 triggers magic correctly ok 11 - glob: scope end doesn't croak ok 12 - glob: scope end triggers magic correctly ok 13 - glob: undef doesn't croak ok 14 - glob: undef triggers magic correctly ok 15 - glob: dispell doesn't croak ok 16 - glob: dispell triggers magic correctly ok 17 - glob: magic triggered at END time ok t/40-threads.............. 1..112 # Using threads 1.71 # Using threads::shared 1.26 ok 1 - wizard in thread 1 doesn't croak ok 2 - wizard in thread 1 is defined ok 3 - wizard in thread 1 doesn't trigger magic ok 4 - cast in thread 1 doesn't croak ok 5 - cast in thread 1 doesn't trigger magic ok 6 - get in thread 1 doesn't croak ok 7 - get in thread 1 returns the right thing ok 8 - get in thread 1 triggers magic ok 9 - getdata in thread 1 doesn't croak ok 10 - getdata in thread 1 returns the right thing ok 11 - getdata in thread 1 doesn't trigger magic ok 12 - dispell in thread 1 doesn't croak ok 13 - dispell in thread 1 doesn't trigger magic ok 14 - get in thread 1 after dispell doesn't croak ok 15 - get in thread 1 after dispell returns the right thing ok 16 - get in thread 1 after dispell doesn't trigger magic ok 17 - wizard in thread 2 doesn't croak ok 18 - wizard in thread 2 is defined ok 19 - wizard in thread 2 doesn't trigger magic ok 20 - cast in thread 2 doesn't croak ok 21 - cast in thread 2 doesn't trigger magic ok 22 - get in thread 2 doesn't croak ok 23 - get in thread 2 returns the right thing ok 24 - get in thread 2 triggers magic ok 25 - getdata in thread 2 doesn't croak ok 26 - getdata in thread 2 returns the right thing ok 27 - getdata in thread 2 doesn't trigger magic ok 28 - dispell in thread 2 doesn't croak ok 29 - dispell in thread 2 doesn't trigger magic ok 30 - get in thread 2 after dispell doesn't croak ok 31 - get in thread 2 after dispell returns the right thing ok 32 - get in thread 2 after dispell doesn't trigger magic ok 33 - destructors ok 34 - wizard in thread 3 doesn't croak ok 35 - wizard in thread 3 is defined ok 36 - wizard in thread 3 doesn't trigger magic ok 37 - cast in thread 3 doesn't croak ok 38 - cast in thread 3 doesn't trigger magic ok 39 - get in thread 3 doesn't croak ok 40 - get in thread 3 returns the right thing ok 41 - get in thread 3 triggers magic ok 42 - getdata in thread 3 doesn't croak ok 43 - getdata in thread 3 returns the right thing ok 44 - getdata in thread 3 doesn't trigger magic ok 45 - dispell in thread 3 doesn't croak ok 46 - dispell in thread 3 doesn't trigger magic ok 47 - get in thread 3 after dispell doesn't croak ok 48 - get in thread 3 after dispell returns the right thing ok 49 - get in thread 3 after dispell doesn't trigger magic ok 50 - wizard in thread 4 doesn't croak ok 51 - wizard in thread 4 is defined ok 52 - wizard in thread 4 doesn't trigger magic ok 53 - cast in thread 4 doesn't croak ok 54 - cast in thread 4 doesn't trigger magic ok 55 - get in thread 4 doesn't croak ok 56 - get in thread 4 returns the right thing ok 57 - get in thread 4 triggers magic ok 58 - getdata in thread 4 doesn't croak ok 59 - getdata in thread 4 returns the right thing ok 60 - getdata in thread 4 doesn't trigger magic ok 61 - dispell in thread 4 doesn't croak ok 62 - dispell in thread 4 doesn't trigger magic ok 63 - get in thread 4 after dispell doesn't croak ok 64 - get in thread 4 after dispell returns the right thing ok 65 - get in thread 4 after dispell doesn't trigger magic ok 66 - destructors ok 67 - wizard in thread 5 doesn't croak ok 68 - wizard in thread 5 is defined ok 69 - wizard in thread 5 doesn't trigger magic ok 70 - cast in thread 5 doesn't croak ok 71 - cast in thread 5 doesn't trigger magic ok 72 - get in thread 5 doesn't croak ok 73 - get in thread 5 returns the right thing ok 74 - get in thread 5 triggers magic ok 75 - getdata in thread 5 doesn't croak ok 76 - getdata in thread 5 returns the right thing ok 77 - getdata in thread 5 doesn't trigger magic ok 78 - wizard in thread 6 doesn't croak ok 79 - wizard in thread 6 is defined ok 80 - wizard in thread 6 doesn't trigger magic ok 81 - cast in thread 6 doesn't croak ok 82 - cast in thread 6 doesn't trigger magic ok 83 - get in thread 6 doesn't croak ok 84 - get in thread 6 returns the right thing ok 85 - get in thread 6 triggers magic ok 86 - getdata in thread 6 doesn't croak ok 87 - getdata in thread 6 returns the right thing ok 88 - getdata in thread 6 doesn't trigger magic ok 89 - destructors ok 90 - wizard in thread 7 doesn't croak ok 91 - wizard in thread 7 is defined ok 92 - wizard in thread 7 doesn't trigger magic ok 93 - cast in thread 7 doesn't croak ok 94 - cast in thread 7 doesn't trigger magic ok 95 - get in thread 7 doesn't croak ok 96 - get in thread 7 returns the right thing ok 97 - get in thread 7 triggers magic ok 98 - getdata in thread 7 doesn't croak ok 99 - getdata in thread 7 returns the right thing ok 100 - getdata in thread 7 doesn't trigger magic ok 101 - wizard in thread 8 doesn't croak ok 102 - wizard in thread 8 is defined ok 103 - wizard in thread 8 doesn't trigger magic ok 104 - cast in thread 8 doesn't croak ok 105 - cast in thread 8 doesn't trigger magic ok 106 - get in thread 8 doesn't croak ok 107 - get in thread 8 returns the right thing ok 108 - get in thread 8 triggers magic ok 109 - getdata in thread 8 doesn't croak ok 110 - getdata in thread 8 returns the right thing ok 111 - getdata in thread 8 doesn't trigger magic ok 112 - destructors ok t/41-clone................ 1..63 # Using threads 1.71 # Using threads::shared 1.26 ok 1 - wizard in main thread doesn't croak ok 2 - wizard in main thread is defined ok 3 - wizard in main thread doesn't trigger magic ok 4 - cast in thread 1 doesn't croak ok 5 - get in thread 1 doesn't croak ok 6 - get in thread 1 returns the right thing ok 7 - getdata in thread 1 doesn't croak ok 8 - getdata in thread 1 returns the right thing ok 9 - dispell in thread 1 doesn't croak ok 10 - get in thread 1 after dispell doesn't croak ok 11 - get in thread 1 after dispell returns the right thing ok 12 - cast in thread 2 doesn't croak ok 13 - get in thread 2 doesn't croak ok 14 - get in thread 2 returns the right thing ok 15 - getdata in thread 2 doesn't croak ok 16 - getdata in thread 2 returns the right thing ok 17 - dispell in thread 2 doesn't croak ok 18 - get in thread 2 after dispell doesn't croak ok 19 - get in thread 2 after dispell returns the right thing ok 20 - get triggered twice ok 21 - destructors ok 22 - cast in thread 3 doesn't croak ok 23 - get in thread 3 doesn't croak ok 24 - get in thread 3 returns the right thing ok 25 - getdata in thread 3 doesn't croak ok 26 - getdata in thread 3 returns the right thing ok 27 - dispell in thread 3 doesn't croak ok 28 - get in thread 3 after dispell doesn't croak ok 29 - get in thread 3 after dispell returns the right thing ok 30 - cast in thread 4 doesn't croak ok 31 - get in thread 4 doesn't croak ok 32 - get in thread 4 returns the right thing ok 33 - getdata in thread 4 doesn't croak ok 34 - getdata in thread 4 returns the right thing ok 35 - dispell in thread 4 doesn't croak ok 36 - get in thread 4 after dispell doesn't croak ok 37 - get in thread 4 after dispell returns the right thing ok 38 - get triggered twice ok 39 - destructors ok 40 - cast in thread 5 doesn't croak ok 41 - get in thread 5 doesn't croak ok 42 - get in thread 5 returns the right thing ok 43 - getdata in thread 5 doesn't croak ok 44 - getdata in thread 5 returns the right thing ok 45 - cast in thread 6 doesn't croak ok 46 - get in thread 6 doesn't croak ok 47 - get in thread 6 returns the right thing ok 48 - getdata in thread 6 doesn't croak ok 49 - getdata in thread 6 returns the right thing ok 50 - get triggered twice ok 51 - destructors ok 52 - cast in thread 7 doesn't croak ok 53 - get in thread 7 doesn't croak ok 54 - get in thread 7 returns the right thing ok 55 - getdata in thread 7 doesn't croak ok 56 - getdata in thread 7 returns the right thing ok 57 - cast in thread 8 doesn't croak ok 58 - get in thread 8 doesn't croak ok 59 - get in thread 8 returns the right thing ok 60 - getdata in thread 8 doesn't croak ok 61 - getdata in thread 8 returns the right thing ok 62 - get triggered twice ok 63 - destructors ok t/90-boilerplate.......... 1..3 ok 1 - README contains no boilerplate text ok 2 - Changes contains no boilerplate text ok 3 - lib/Variable/Magic.pm contains no boilerplate text ok t/91-pod.................. 1..1 ok 1 - blib\lib\Variable\Magic.pm ok t/92-pod-coverage......... 1..1 ok 1 - Pod coverage on Variable::Magic ok t/95-portability-files.... 1..1 ok 1 - File names portability ok t/99-kwalitee............. 1..0 # Skip Test::Kwalitee not installed; skipping skipped: Test::Kwalitee not installed; skipping All tests successful. Files=30, Tests=821, 11 wallclock secs ( 0.27 usr + 1.30 sys = 1.56 CPU) Result: PASS VPIT/Variable-Magic-0.29.tar.gz nmake test TEST_VERBOSE=1 -- OK Vincent Pit <perl@profvince.com> Associate user-defined magic to variables from Perl. >>> (cd C:\cpanfly\var\cpan\build\Variable-Magic-0.29-gMWTpB && tar cvf - Variable-Magic-0.29.ppd blib) | gzip -c >C:/cpanfly/var/REPO/V/VP/VPIT/Variable-Magic-0.29.tar.gz Variable-Magic-0.29.ppd blib/ blib/arch/ blib/arch/auto/ blib/arch/auto/Variable/ blib/arch/auto/Variable/Magic/ blib/arch/auto/Variable/Magic/Magic.bs blib/arch/auto/Variable/Magic/Magic.dll blib/arch/auto/Variable/Magic/Magic.exp blib/arch/auto/Variable/Magic/Magic.lib blib/lib/ blib/lib/Variable/ blib/lib/Variable/Magic.pm >>> mv C:\cpanfly\var\cpan\build\Variable-Magic-0.29-gMWTpB/Variable-Magic-0.29.ppd C:/cpanfly/var/REPO/V/VP/VPIT Finished 2009-02-09T12:56:52