PATH=C:\cpanfly-5.24-32\var\megalib\bin;C:\Perl-5.24-32\site\bin;C:\Perl-5.24-32\bin;C:\MinGW-32\bin;C:\cygwin\bin;C:\instantclient_11_2-32;C:\cpanfly-5.24-32\var\megalib\bin;C:\Perl-5.24-32\site\bin;C:\Perl-5.24-32\bin;C:\MinGW-32\bin;C:\cygwin\bin;C:\instantclient_11_2-32;C:\p4;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Git\cmd;C:\Program Files (x86)\CMake\bin Start 2016-07-25T22:06:31 ActivePerl-2400 CPAN-2.10 PATH=C:/CPANFL~2.24-/var/libs/bin;C:\CPANFL~2.24-\var\megalib\bin;C:\PERL-5~2.24-\site\bin;C:\PERL-5~2.24-\bin;C:\MinGW-32\bin;C:\cygwin\bin;C:\INSTAN~3;C:\CPANFL~2.24-\var\megalib\bin;C:\PERL-5~2.24-\site\bin;C:\PERL-5~2.24-\bin;C:\MinGW-32\bin;C:\cygwin\bin;C:\INSTAN~3;C:\p4;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WINDOW~1\v1.0\;C:\PROGRA~1\Git\cmd;C:\PROGRA~2\CMake\bin Reading 'C:\cpanfly-5.24-32\var\cpan\Metadata' Database was generated on Mon, 25 Jul 2016 05:53:34 GMT Checksum for C:\cpanfly-5.24-32\var\cpan\sources\authors\id\S\SH\SHERZODR\CGI-Session-4.10.tar.gz ok CGI-Session-4.10/ CGI-Session-4.10/t/ CGI-Session-4.10/t/parse_dsn.t CGI-Session-4.10/t/g4_dbfile_yaml.t CGI-Session-4.10/t/g4_mysql_storable.t CGI-Session-4.10/t/g4_postgresql_freezethaw.t CGI-Session-4.10/t/api3_obj_store_db_file.t CGI-Session-4.10/t/api3_file_freezethaw_incr.t CGI-Session-4.10/t/flush.t CGI-Session-4.10/t/load.t CGI-Session-4.10/t/g4_sqlite_freezethaw.t CGI-Session-4.10/t/api3_file.t CGI-Session-4.10/t/api3_db_file.t CGI-Session-4.10/t/g4_postgresql.t CGI-Session-4.10/t/g4_mysql.t CGI-Session-4.10/t/g4.t CGI-Session-4.10/t/api3_obj_store.t CGI-Session-4.10/t/driver_dbi.t CGI-Session-4.10/t/symlink_db_file.t CGI-Session-4.10/t/g4_dbfile_json.t CGI-Session-4.10/t/api3_file_storable_incr.t CGI-Session-4.10/t/g4_sqlite_storable.t CGI-Session-4.10/t/api3_file_freezethaw.t CGI-Session-4.10/t/complex_ds.t CGI-Session-4.10/t/expire.t CGI-Session-4.10/t/api3_db_file_freezethaw.t CGI-Session-4.10/t/api3_db_file_storable_incr.t CGI-Session-4.10/t/is_new.t CGI-Session-4.10/t/g4_dbfile_storable.t CGI-Session-4.10/t/api3_file_storable.t CGI-Session-4.10/t/g4_postgresql_storable.t CGI-Session-4.10/t/api3_db_file_storable.t CGI-Session-4.10/t/str2seconds.t CGI-Session-4.10/t/g4_dbfile_freezethaw.t CGI-Session-4.10/t/g4_sqlite.t CGI-Session-4.10/t/header.t CGI-Session-4.10/t/g4_dbfile.t CGI-Session-4.10/t/ip_matches.t CGI-Session-4.10/t/remote_addr.t CGI-Session-4.10/t/g4_freezethaw.t CGI-Session-4.10/t/g4_mysql_freezethaw.t CGI-Session-4.10/t/symlink_file.t CGI-Session-4.10/t/api3_incr.t CGI-Session-4.10/t/cgi_simple.t CGI-Session-4.10/t/g4_storable.t CGI-Session-4.10/Changes CGI-Session-4.10/lib/ CGI-Session-4.10/lib/CGI/ CGI-Session-4.10/lib/CGI/Session/ CGI-Session-4.10/lib/CGI/Session/Serialize/ CGI-Session-4.10/lib/CGI/Session/Serialize/storable.pm CGI-Session-4.10/lib/CGI/Session/Serialize/freezethaw.pm CGI-Session-4.10/lib/CGI/Session/Serialize/yaml.pm CGI-Session-4.10/lib/CGI/Session/Serialize/default.pm CGI-Session-4.10/lib/CGI/Session/Serialize/json.pm CGI-Session-4.10/lib/CGI/Session/ID/ CGI-Session-4.10/lib/CGI/Session/ID/static.pm CGI-Session-4.10/lib/CGI/Session/ID/incr.pm CGI-Session-4.10/lib/CGI/Session/ID/md5.pm CGI-Session-4.10/lib/CGI/Session/Driver/ CGI-Session-4.10/lib/CGI/Session/Driver/db_file.pm CGI-Session-4.10/lib/CGI/Session/Driver/file.pm CGI-Session-4.10/lib/CGI/Session/Driver/sqlite.pm CGI-Session-4.10/lib/CGI/Session/Driver/DBI.pm CGI-Session-4.10/lib/CGI/Session/Driver/postgresql.pm CGI-Session-4.10/lib/CGI/Session/Driver/mysql.pm CGI-Session-4.10/lib/CGI/Session/ErrorHandler.pm CGI-Session-4.10/lib/CGI/Session/Driver.pm CGI-Session-4.10/lib/CGI/Session/Tutorial.pm CGI-Session-4.10/lib/CGI/Session/Test/ CGI-Session-4.10/lib/CGI/Session/Test/Default.pm CGI-Session-4.10/lib/CGI/Session.pm CGI-Session-4.10/MANIFEST CGI-Session-4.10/examples/ CGI-Session-4.10/examples/subscriptions.cgi CGI-Session-4.10/examples/purge.pl CGI-Session-4.10/README CGI-Session-4.10/MANIFEST.SKIP CGI-Session-4.10/INSTALL CGI-Session-4.10/Makefile.PL CGI-Session-4.10/META.yml Configuring S/SH/SHERZODR/CGI-Session-4.10.tar.gz with Makefile.PL >>> C:\Perl-5.24-32\bin\perl.exe Makefile.PL Undefined requirement for Test::More treated as '0' at C:/Perl-5.24-32/lib/ExtUtils/MakeMaker.pm line 466. Undefined requirement for Scalar::Util treated as '0' at C:/Perl-5.24-32/lib/ExtUtils/MakeMaker.pm line 466. Undefined requirement for Digest::MD5 treated as '0' at C:/Perl-5.24-32/lib/ExtUtils/MakeMaker.pm line 466. Undefined requirement for Data::Dumper treated as '0' at C:/Perl-5.24-32/lib/ExtUtils/MakeMaker.pm line 466. ---------------------------------------- #### WARNING #### If you are using custom CGI::Session drivers they may not be compatible with the current driver specifications. You will need to make some changes to your drivers' code before proceeding with this installation to make it compatible with CGI::Session 4.x. Fortunately, current driver specifications are a lot easier to adapt to. Should you have any assistance re-coding your current drivers, please let me know. Current driver specs are documented in CGI/Session/Driver.pm #### TESTING ##### You are encouraged to run tests for the backend you will be using. The database backends that need a customized connection string won't run by default. To run them, some environment variables must be set. The simplest method is to use the standard "DBI_DSN" environment variable to define a DBI connection string. Otherwise, you can set these variables as well: For PostgreSQL: CGISESS_PGSQL_DSN CGISESS_PGSQL_USER CGISESS_PGSQL_PASSWORD For MySQL: CGISESS_MYSQL_DSN CGISESS_MYSQL_USER CGISESS_MYSQL_PASSWORD CGISESS_MYSQL_SOCKET ---------------------------------------- Checking if your kit is complete... Looks good Have \cpanfl~2.24-\var\megalib Want \perl-5~2.24-\lib Your perl and your Config.pm seem to have different ideas about the architecture they are running on. Perl thinks: [megalib] Config says: [MSWin32-x86-multi-thread-64int] This may or may not cause problems. Please check your installation of perl if you have problems building this extension. Generating a dmake-style Makefile Writing Makefile for CGI::Session Writing MYMETA.yml and MYMETA.json SHERZODR/CGI-Session-4.10.tar.gz C:\Perl-5.24-32\bin\perl.exe Makefile.PL -- OK Running make for S/SH/SHERZODR/CGI-Session-4.10.tar.gz >>> dmake cp lib/CGI/Session/Serialize/storable.pm blib\lib\CGI\Session\Serialize\storable.pm cp lib/CGI/Session/ID/md5.pm blib\lib\CGI\Session\ID\md5.pm cp lib/CGI/Session/Driver/file.pm blib\lib\CGI\Session\Driver\file.pm cp lib/CGI/Session/Driver/sqlite.pm blib\lib\CGI\Session\Driver\sqlite.pm cp lib/CGI/Session/Serialize/yaml.pm blib\lib\CGI\Session\Serialize\yaml.pm cp lib/CGI/Session/Driver/postgresql.pm blib\lib\CGI\Session\Driver\postgresql.pm cp lib/CGI/Session/Driver/DBI.pm blib\lib\CGI\Session\Driver\DBI.pm cp lib/CGI/Session/Driver/mysql.pm blib\lib\CGI\Session\Driver\mysql.pm cp lib/CGI/Session/Serialize/freezethaw.pm blib\lib\CGI\Session\Serialize\freezethaw.pm cp lib/CGI/Session/ID/incr.pm blib\lib\CGI\Session\ID\incr.pm cp lib/CGI/Session.pm blib\lib\CGI\Session.pm cp lib/CGI/Session/ID/static.pm blib\lib\CGI\Session\ID\static.pm cp lib/CGI/Session/ErrorHandler.pm blib\lib\CGI\Session\ErrorHandler.pm cp lib/CGI/Session/Serialize/default.pm blib\lib\CGI\Session\Serialize\default.pm cp lib/CGI/Session/Serialize/json.pm blib\lib\CGI\Session\Serialize\json.pm cp lib/CGI/Session/Driver/db_file.pm blib\lib\CGI\Session\Driver\db_file.pm cp lib/CGI/Session/Driver.pm blib\lib\CGI\Session\Driver.pm cp lib/CGI/Session/Test/Default.pm blib\lib\CGI\Session\Test\Default.pm cp lib/CGI/Session/Tutorial.pm blib\lib\CGI\Session\Tutorial.pm SHERZODR/CGI-Session-4.10.tar.gz dmake -- OK Running make test >>> dmake test TEST_VERBOSE=1 "C:\Perl-5.24-32\bin\perl.exe" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib\lib', 'blib\arch')" t/*.t t/api3_db_file.t ................ skipped: DB_File not available t/api3_db_file_freezethaw.t ..... skipped: DB_File not available t/api3_db_file_storable.t ....... skipped: DB_File not available t/api3_db_file_storable_incr.t .. skipped: DB_File not available t/api3_file.t ................... 1..17 ok 1 - use CGI::Session; ok 2 ok 3 ok 4 ok 5 ok 6 ok 7 ok 8 ok 9 ok 10 ok 11 ok 12 - found email param in session ok 13 - found author param in session ok 14 ok 15 - $s->clear("name") survives eval ok 16 - email param is cleared from session ok 17 - author param is still in session ok t/api3_file_freezethaw.t ........ 1..14 ok 1 - use CGI::Session; ok 2 ok 3 ok 4 ok 5 ok 6 ok 7 ok 8 ok 9 ok 10 ok 11 ok 12 ok 13 ok 14 ok t/api3_file_freezethaw_incr.t ... 1..15 ok 1 - use File::Spec; ok 2 - use CGI::Session; ok 3 ok 4 ok 5 ok 6 ok 7 ok 8 ok 9 ok 10 ok 11 ok 12 ok 13 ok 14 ok 15 ok t/api3_file_storable.t .......... 1..14 ok 1 - use CGI::Session; ok 2 ok 3 ok 4 ok 5 ok 6 ok 7 ok 8 ok 9 ok 10 ok 11 ok 12 ok 13 ok 14 ok t/api3_file_storable_incr.t ..... 1..15 ok 1 - use File::Spec; ok 2 - use CGI::Session; ok 3 ok 4 ok 5 ok 6 ok 7 ok 8 ok 9 ok 10 ok 11 ok 12 ok 13 ok 14 ok 15 ok t/api3_incr.t ................... 1..14 ok 1 ok 2 ok 3 ok 4 ok 5 ok 6 ok 7 ok 8 ok 9 ok 10 ok 11 ok 12 ok 13 ok 14 ok t/api3_obj_store.t .............. 1..8 ok ok ok ok ok ok ok ok ok t/api3_obj_store_db_file.t ...... skipped: DB_File is not available t/cgi_simple.t .................. ok 1 - survives eval ok 2 - CGI::Simple object is accepted when passed to new() ok 3 - cookie() method works with CGI::Simple ok 4 - http_header() method works with CGI::Simple 1..4 ok t/complex_ds.t .................. 1..10 ok 1 ok 2 ok 3 ok 4 - Test 1 ok 5 - Test 2 ok 6 - Bir ok 7 ok 8 - Test 1 ok 9 - Test 2 ok 10 - Bir ok t/driver_dbi.t .................. ok 1 - use CGI::Session::Driver::DBI; ok 2 - retrieve returns expected failure message when no session id is given ok 3 - traverse returns expected failure message when no session id is given 1..3 ok t/expire.t ...................... ok 1 - undef is returned if nothing has been set yet. ok 2 - basic set/get check ok 3 - negative set/get check ok 4 - zero cancels expiration ok 5 - setting expiration for a single param works ok 6 - zero expires parameters 1..6 ok t/flush.t ....................... ok 1 - found session id ok 2 - found session data file 1..2 ok t/g4.t .......................... 1..101 ok 1 - use CGI::Session; ok 2 - === 1 === ok 3 - empty session should be created ok 4 ok 5 ok 6 ok 7 - Session created successfully! ok 8 - ok 9 - ctime & atime are set ok 10 - ctime == atime ok 11 - etime not set yet ok 12 - session id is 165d00150ed5866dd3a23386a5c76d29 ok 13 - session holds 3 params3 ok 14 - My name's correct! ok 15 - 'emails' holds list of values ok 16 - 'emails' holds list of two values ok 17 - first value of 'emails' is correct! ok 18 - second value of 'emails' is correct! ok 19 - 'blogs' holds a hash ok 20 - first blog is correct ok 21 - second blog is correct ok 22 - === 2 === ok 23 - survived eval without error. ok 24 - Session was retrieved successfully ok 25 - session isn't expired yet ok 26 - session IDs are consistent: 165d00150ed5866dd3a23386a5c76d29 ok 27 - ctime should be older than atime ok 28 - etime shouldn't be set yet ok 29 - session should hold params ok 30 - my name's correct ok 31 - 'emails' should hold list of values ok 32 - 'emails' should hold list of two values ok 33 - first value is correct! ok 34 - second value is correct! ok 35 - 'blogs' holds a hash ok 36 - first blog is correct! ok 37 - second blog is correct! ok 38 - etime set to 1 second ok 39 - etime set to one minute ok 40 - etime set to two hours ok 41 - etime set to 5 days ok 42 - etime set to 10 seconds in the past ok 43 - etime set back to one second ok 44 - calling close method survives eval ok 45 - === 3 === ok 46 - Session instance loaded ok 47 - session doesn't have ID ok 48 - session is empty, which is the same as above ok 49 - session was expired ok 50 - session data cleared ok 51 - new session created ok 52 - session has id :1b13eb40227ce600e1d0537c51698255 ok 53 - session isn't expired ok 54 - session isn't empty ok 55 - access and creation times are same ok 56 - it's a completely different session than above ok 57 - === 4 === ok 58 - Session '1b13eb40227ce600e1d0537c51698255' removed from datastore successfully ok 59 - session object created successfully ok 60 - claimed ID (1b13eb40227ce600e1d0537c51698255) couldn't be recovered. New ID is: df2b95e69bbe0ccd787a0e69531e19b9 ok 61 - === 5 === ok 62 - Session object created successfully ok 63 - claimed id (df2b95e69bbe0ccd787a0e69531e19b9) was recovered successfully! ok 64 - === 6 === ok 65 - Session object created successfully ok 66 - New object created, because previous object was deleted ok 67 - SimpleObjectClass created successfully ok 68 ok 69 ok 70 ok 71 - OverloadedObjectClass created successfully ok 72 - OverloadedObjectClass is properly overloaded ok 73 - OverloadedObjectClass is an object ok 74 ok 75 - SimpleObjectClass created successfully ok 76 - First element of anonymous array undef ok 77 ok 78 ok 79 ok 80 ok 81 - Overloaded objects have matching addresses ok 82 - === 7 === ok 83 - Session object created successfully ok 84 - Previously stored object loaded successfully ok 85 - SimpleObjectClass loaded successfully ok 86 - ok 87 - ok 88 - ok 89 - ok 90 ok 91 - Object is still overloaded ok 92 - Object is really overloaded ok 93 - First element of anonymous array undef ok 94 - SimpleObjectClass loaded successfully ok 95 - ok 96 - ok 97 - ok 98 - ok 99 ok 100 - Object is really overloaded ok 101 - Overloaded objects have matching addresses ok t/g4_dbfile.t ................... skipped: DB_File is NOT available t/g4_dbfile_freezethaw.t ........ skipped: DB_File is NOT available # JSON::Syck Uncaught exception from user code: new(): failed: couldn't load CGI::Session::Driver::db_file: Can't locate DB_File.pm in @INC (you may need to install the DB_File module) (@INC contains: C:\cpanfly-5.24-32\var\tmp\cpan_build\CGI-Session-4.10-TbhcA8\blib\lib C:\cpanfly-5.24-32\var\tmp\cpan_build\CGI-Session-4.10-TbhcA8\blib\arch C:/cpanfly-5.24-32/var/megalib C:/cpanfly-5.24-32/var/megalib C:/Perl-5.24-32/site/lib C:/Perl-5.24-32/lib .) at C:\cpanfly-5.24-32\var\tmp\cpan_build\CGI-Session-4.10-TbhcA8\blib\lib/CGI/Session/Driver/db_file.pm line 8. BEGIN failed--compilation aborted at C:\cpanfly-5.24-32\var\tmp\cpan_build\CGI-Session-4.10-TbhcA8\blib\lib/CGI/Session/Driver/db_file.pm line 8. Compilation failed in require at (eval 14) line 2. CGI::Session::Test::Default::run(CGI::Session::Test::Default=HASH(0x58584c)) called at t/g4_dbfile_json.t line 44 # Looks like your test exited with 2 just after 6. t/g4_dbfile_json.t .............. 1..101 ok 1 - use CGI::Session; ok 2 - === 1 === ok 3 - empty session should be created ok 4 ok 5 ok 6 Dubious, test returned 2 (wstat 512, 0x200) Failed 95/101 subtests t/g4_dbfile_storable.t .......... skipped: DB_File is NOT available # YAML Uncaught exception from user code: new(): failed: couldn't load CGI::Session::Driver::db_file: Can't locate DB_File.pm in @INC (you may need to install the DB_File module) (@INC contains: C:\cpanfly-5.24-32\var\tmp\cpan_build\CGI-Session-4.10-TbhcA8\blib\lib C:\cpanfly-5.24-32\var\tmp\cpan_build\CGI-Session-4.10-TbhcA8\blib\arch C:/cpanfly-5.24-32/var/megalib C:/cpanfly-5.24-32/var/megalib C:/Perl-5.24-32/site/lib C:/Perl-5.24-32/lib .) at C:\cpanfly-5.24-32\var\tmp\cpan_build\CGI-Session-4.10-TbhcA8\blib\lib/CGI/Session/Driver/db_file.pm line 8. BEGIN failed--compilation aborted at C:\cpanfly-5.24-32\var\tmp\cpan_build\CGI-Session-4.10-TbhcA8\blib\lib/CGI/Session/Driver/db_file.pm line 8. Compilation failed in require at (eval 17) line 2. CGI::Session::Test::Default::run(CGI::Session::Test::Default=HASH(0x625654)) called at t/g4_dbfile_yaml.t line 45 # Looks like your test exited with 2 just after 6. t/g4_dbfile_yaml.t .............. 1..202 ok 1 - use CGI::Session; ok 2 - === 1 === ok 3 - empty session should be created ok 4 ok 5 ok 6 Dubious, test returned 2 (wstat 512, 0x200) Failed 196/202 subtests t/g4_freezethaw.t ............... 1..101 ok 1 - use CGI::Session; ok 2 - === 1 === ok 3 - empty session should be created ok 4 ok 5 ok 6 ok 7 - Session created successfully! ok 8 - ok 9 - ctime & atime are set ok 10 - ctime == atime ok 11 - etime not set yet ok 12 - session id is 4edad868c7e14da275202a3dc13235af ok 13 - session holds 3 params3 ok 14 - My name's correct! ok 15 - 'emails' holds list of values ok 16 - 'emails' holds list of two values ok 17 - first value of 'emails' is correct! ok 18 - second value of 'emails' is correct! ok 19 - 'blogs' holds a hash ok 20 - first blog is correct ok 21 - second blog is correct ok 22 - === 2 === ok 23 - survived eval without error. ok 24 - Session was retrieved successfully ok 25 - session isn't expired yet ok 26 - session IDs are consistent: 4edad868c7e14da275202a3dc13235af ok 27 - ctime should be older than atime ok 28 - etime shouldn't be set yet ok 29 - session should hold params ok 30 - my name's correct ok 31 - 'emails' should hold list of values ok 32 - 'emails' should hold list of two values ok 33 - first value is correct! ok 34 - second value is correct! ok 35 - 'blogs' holds a hash ok 36 - first blog is correct! ok 37 - second blog is correct! ok 38 - etime set to 1 second ok 39 - etime set to one minute ok 40 - etime set to two hours ok 41 - etime set to 5 days ok 42 - etime set to 10 seconds in the past ok 43 - etime set back to one second ok 44 - calling close method survives eval ok 45 - === 3 === ok 46 - Session instance loaded ok 47 - session doesn't have ID ok 48 - session is empty, which is the same as above ok 49 - session was expired ok 50 - session data cleared ok 51 - new session created ok 52 - session has id :e95d5769c1c2762d3333502bdd6eb4dc ok 53 - session isn't expired ok 54 - session isn't empty ok 55 - access and creation times are same ok 56 - it's a completely different session than above ok 57 - === 4 === ok 58 - Session 'e95d5769c1c2762d3333502bdd6eb4dc' removed from datastore successfully ok 59 - session object created successfully ok 60 - claimed ID (e95d5769c1c2762d3333502bdd6eb4dc) couldn't be recovered. New ID is: cb33013c04a8bfcda6bea93daec32eb1 ok 61 - === 5 === ok 62 - Session object created successfully ok 63 - claimed id (cb33013c04a8bfcda6bea93daec32eb1) was recovered successfully! ok 64 - === 6 === ok 65 - Session object created successfully ok 66 - New object created, because previous object was deleted ok 67 - SimpleObjectClass created successfully ok 68 ok 69 ok 70 ok 71 - OverloadedObjectClass created successfully ok 72 - OverloadedObjectClass is properly overloaded ok 73 - OverloadedObjectClass is an object ok 74 ok 75 - SimpleObjectClass created successfully ok 76 - First element of anonymous array undef ok 77 ok 78 ok 79 ok 80 ok 81 - Overloaded objects have matching addresses ok 82 - === 7 === ok 83 - Session object created successfully ok 84 - Previously stored object loaded successfully ok 85 - SimpleObjectClass loaded successfully ok 86 - ok 87 - ok 88 - ok 89 - ok 90 ok 91 - Object is still overloaded ok 92 - Object is really overloaded ok 93 - First element of anonymous array undef ok 94 - SimpleObjectClass loaded successfully ok 95 - ok 96 - ok 97 - ok 98 - ok 99 ok 100 - Object is really overloaded ok 101 - Overloaded objects have matching addresses ok t/g4_mysql.t .................... skipped: Couldn't establish connection with the MySQL server: Can't connect to data source '' because I can't work out what driver to use (it doesn't seem to contain a 'dbi:driver:' prefix and the DBI_DRIVER env var is not set) at t/g4_mysql.t line 43. t/g4_mysql_freezethaw.t ......... skipped: Couldn't establish connection with the MySQL server: Can't connect to data source '' because I can't work out what driver to use (it doesn't seem to contain a 'dbi:driver:' prefix and the DBI_DRIVER env var is not set) at t/g4_mysql_freezethaw.t line 43. t/g4_mysql_storable.t ........... skipped: Couldn't establish connection with the MySQL server: Can't connect to data source '' because I can't work out what driver to use (it doesn't seem to contain a 'dbi:driver:' prefix and the DBI_DRIVER env var is not set) at t/g4_mysql_storable.t line 43. t/g4_postgresql.t ............... skipped: DataSource is not known t/g4_postgresql_freezethaw.t .... skipped: DataSource is not known t/g4_postgresql_storable.t ...... skipped: DataSource is not known DBI::db=HASH(0x2d8ddd4)->disconnect invalidates 1 active statement handle (either destroy statement handles or call finish on them before disconnecting) at C:\cpanfly-5.24-32\var\tmp\cpan_build\CGI-Session-4.10-TbhcA8\blib\lib/CGI/Session/Driver/DBI.pm line 131. t/g4_sqlite.t ................... 1..101 ok 1 - use CGI::Session; ok 2 - === 1 === ok 3 - empty session should be created ok 4 ok 5 ok 6 ok 7 - Session created successfully! ok 8 - ok 9 - ctime & atime are set ok 10 - ctime == atime ok 11 - etime not set yet ok 12 - session id is b9d25d32b278f8fb256d7dafb02d8323 ok 13 - session holds 3 params3 ok 14 - My name's correct! ok 15 - 'emails' holds list of values ok 16 - 'emails' holds list of two values ok 17 - first value of 'emails' is correct! ok 18 - second value of 'emails' is correct! ok 19 - 'blogs' holds a hash ok 20 - first blog is correct ok 21 - second blog is correct ok 22 - === 2 === ok 23 - survived eval without error. ok 24 - Session was retrieved successfully ok 25 - session isn't expired yet ok 26 - session IDs are consistent: b9d25d32b278f8fb256d7dafb02d8323 ok 27 - ctime should be older than atime ok 28 - etime shouldn't be set yet ok 29 - session should hold params ok 30 - my name's correct ok 31 - 'emails' should hold list of values ok 32 - 'emails' should hold list of two values ok 33 - first value is correct! ok 34 - second value is correct! ok 35 - 'blogs' holds a hash ok 36 - first blog is correct! ok 37 - second blog is correct! ok 38 - etime set to 1 second ok 39 - etime set to one minute ok 40 - etime set to two hours ok 41 - etime set to 5 days ok 42 - etime set to 10 seconds in the past ok 43 - etime set back to one second ok 44 - calling close method survives eval ok 45 - === 3 === ok 46 - Session instance loaded ok 47 - session doesn't have ID ok 48 - session is empty, which is the same as above ok 49 - session was expired ok 50 - session data cleared ok 51 - new session created ok 52 - session has id :4f1421a59e09255ac668b46bf7540615 ok 53 - session isn't expired ok 54 - session isn't empty ok 55 - access and creation times are same ok 56 - it's a completely different session than above ok 57 - === 4 === ok 58 - Session '4f1421a59e09255ac668b46bf7540615' removed from datastore successfully ok 59 - session object created successfully ok 60 - claimed ID (4f1421a59e09255ac668b46bf7540615) couldn't be recovered. New ID is: 049569d829ce19ad012b86195eba8501 ok 61 - === 5 === ok 62 - Session object created successfully ok 63 - claimed id (049569d829ce19ad012b86195eba8501) was recovered successfully! ok 64 - === 6 === ok 65 - Session object created successfully ok 66 - New object created, because previous object was deleted ok 67 - SimpleObjectClass created successfully ok 68 ok 69 ok 70 ok 71 - OverloadedObjectClass created successfully ok 72 - OverloadedObjectClass is properly overloaded ok 73 - OverloadedObjectClass is an object ok 74 ok 75 - SimpleObjectClass created successfully ok 76 - First element of anonymous array undef ok 77 ok 78 ok 79 ok 80 ok 81 - Overloaded objects have matching addresses ok 82 - === 7 === ok 83 - Session object created successfully ok 84 - Previously stored object loaded successfully ok 85 - SimpleObjectClass loaded successfully ok 86 - ok 87 - ok 88 - ok 89 - ok 90 ok 91 - Object is still overloaded ok 92 - Object is really overloaded ok 93 - First element of anonymous array undef ok 94 - SimpleObjectClass loaded successfully ok 95 - ok 96 - ok 97 - ok 98 - ok 99 ok 100 - Object is really overloaded ok 101 - Overloaded objects have matching addresses ok DBI::db=HASH(0x2cff52c)->disconnect invalidates 1 active statement handle (either destroy statement handles or call finish on them before disconnecting) at C:\cpanfly-5.24-32\var\tmp\cpan_build\CGI-Session-4.10-TbhcA8\blib\lib/CGI/Session/Driver/DBI.pm line 131. t/g4_sqlite_freezethaw.t ........ 1..101 ok 1 - use CGI::Session; ok 2 - === 1 === ok 3 - empty session should be created ok 4 ok 5 ok 6 ok 7 - Session created successfully! ok 8 - ok 9 - ctime & atime are set ok 10 - ctime == atime ok 11 - etime not set yet ok 12 - session id is f62f8b829a39c65a2dca6abde5abdf17 ok 13 - session holds 3 params3 ok 14 - My name's correct! ok 15 - 'emails' holds list of values ok 16 - 'emails' holds list of two values ok 17 - first value of 'emails' is correct! ok 18 - second value of 'emails' is correct! ok 19 - 'blogs' holds a hash ok 20 - first blog is correct ok 21 - second blog is correct ok 22 - === 2 === ok 23 - survived eval without error. ok 24 - Session was retrieved successfully ok 25 - session isn't expired yet ok 26 - session IDs are consistent: f62f8b829a39c65a2dca6abde5abdf17 ok 27 - ctime should be older than atime ok 28 - etime shouldn't be set yet ok 29 - session should hold params ok 30 - my name's correct ok 31 - 'emails' should hold list of values ok 32 - 'emails' should hold list of two values ok 33 - first value is correct! ok 34 - second value is correct! ok 35 - 'blogs' holds a hash ok 36 - first blog is correct! ok 37 - second blog is correct! ok 38 - etime set to 1 second ok 39 - etime set to one minute ok 40 - etime set to two hours ok 41 - etime set to 5 days ok 42 - etime set to 10 seconds in the past ok 43 - etime set back to one second ok 44 - calling close method survives eval ok 45 - === 3 === ok 46 - Session instance loaded ok 47 - session doesn't have ID ok 48 - session is empty, which is the same as above ok 49 - session was expired ok 50 - session data cleared ok 51 - new session created ok 52 - session has id :f3cbc40e3144d80d8305016cab30090b ok 53 - session isn't expired ok 54 - session isn't empty ok 55 - access and creation times are same ok 56 - it's a completely different session than above ok 57 - === 4 === ok 58 - Session 'f3cbc40e3144d80d8305016cab30090b' removed from datastore successfully ok 59 - session object created successfully ok 60 - claimed ID (f3cbc40e3144d80d8305016cab30090b) couldn't be recovered. New ID is: f4d8cc74ac99deb34d4e878959aa8e08 ok 61 - === 5 === ok 62 - Session object created successfully ok 63 - claimed id (f4d8cc74ac99deb34d4e878959aa8e08) was recovered successfully! ok 64 - === 6 === ok 65 - Session object created successfully ok 66 - New object created, because previous object was deleted ok 67 - SimpleObjectClass created successfully ok 68 ok 69 ok 70 ok 71 - OverloadedObjectClass created successfully ok 72 - OverloadedObjectClass is properly overloaded ok 73 - OverloadedObjectClass is an object ok 74 ok 75 - SimpleObjectClass created successfully ok 76 - First element of anonymous array undef ok 77 ok 78 ok 79 ok 80 ok 81 - Overloaded objects have matching addresses ok 82 - === 7 === ok 83 - Session object created successfully ok 84 - Previously stored object loaded successfully ok 85 - SimpleObjectClass loaded successfully ok 86 - ok 87 - ok 88 - ok 89 - ok 90 ok 91 - Object is still overloaded ok 92 - Object is really overloaded ok 93 - First element of anonymous array undef ok 94 - SimpleObjectClass loaded successfully ok 95 - ok 96 - ok 97 - ok 98 - ok 99 ok 100 - Object is really overloaded ok 101 - Overloaded objects have matching addresses ok DBI::db=HASH(0x2e27d8c)->disconnect invalidates 1 active statement handle (either destroy statement handles or call finish on them before disconnecting) at C:\cpanfly-5.24-32\var\tmp\cpan_build\CGI-Session-4.10-TbhcA8\blib\lib/CGI/Session/Driver/DBI.pm line 131. t/g4_sqlite_storable.t .......... 1..101 ok 1 - use CGI::Session; ok 2 - === 1 === ok 3 - empty session should be created ok 4 ok 5 ok 6 ok 7 - Session created successfully! ok 8 - ok 9 - ctime & atime are set ok 10 - ctime == atime ok 11 - etime not set yet ok 12 - session id is 06f8849297acb646513a26eab6b0cae0 ok 13 - session holds 3 params3 ok 14 - My name's correct! ok 15 - 'emails' holds list of values ok 16 - 'emails' holds list of two values ok 17 - first value of 'emails' is correct! ok 18 - second value of 'emails' is correct! ok 19 - 'blogs' holds a hash ok 20 - first blog is correct ok 21 - second blog is correct ok 22 - === 2 === ok 23 - survived eval without error. ok 24 - Session was retrieved successfully ok 25 - session isn't expired yet ok 26 - session IDs are consistent: 06f8849297acb646513a26eab6b0cae0 ok 27 - ctime should be older than atime ok 28 - etime shouldn't be set yet ok 29 - session should hold params ok 30 - my name's correct ok 31 - 'emails' should hold list of values ok 32 - 'emails' should hold list of two values ok 33 - first value is correct! ok 34 - second value is correct! ok 35 - 'blogs' holds a hash ok 36 - first blog is correct! ok 37 - second blog is correct! ok 38 - etime set to 1 second ok 39 - etime set to one minute ok 40 - etime set to two hours ok 41 - etime set to 5 days ok 42 - etime set to 10 seconds in the past ok 43 - etime set back to one second ok 44 - calling close method survives eval ok 45 - === 3 === ok 46 - Session instance loaded ok 47 - session doesn't have ID ok 48 - session is empty, which is the same as above ok 49 - session was expired ok 50 - session data cleared ok 51 - new session created ok 52 - session has id :e8351ad8543596f70f4ca4a7931b2fa4 ok 53 - session isn't expired ok 54 - session isn't empty ok 55 - access and creation times are same ok 56 - it's a completely different session than above ok 57 - === 4 === ok 58 - Session 'e8351ad8543596f70f4ca4a7931b2fa4' removed from datastore successfully ok 59 - session object created successfully ok 60 - claimed ID (e8351ad8543596f70f4ca4a7931b2fa4) couldn't be recovered. New ID is: bf6e4eabfa46714e3d75942cd8c24fda ok 61 - === 5 === ok 62 - Session object created successfully ok 63 - claimed id (bf6e4eabfa46714e3d75942cd8c24fda) was recovered successfully! ok 64 - === 6 === ok 65 - Session object created successfully ok 66 - New object created, because previous object was deleted ok 67 - SimpleObjectClass created successfully ok 68 ok 69 ok 70 ok 71 - OverloadedObjectClass created successfully ok 72 - OverloadedObjectClass is properly overloaded ok 73 - OverloadedObjectClass is an object ok 74 ok 75 - SimpleObjectClass created successfully ok 76 - First element of anonymous array undef ok 77 ok 78 ok 79 ok 80 ok 81 - Overloaded objects have matching addresses ok 82 - === 7 === ok 83 - Session object created successfully ok 84 - Previously stored object loaded successfully ok 85 - SimpleObjectClass loaded successfully ok 86 - ok 87 - ok 88 - ok 89 - ok 90 ok 91 - Object is still overloaded ok 92 - Object is really overloaded ok 93 - First element of anonymous array undef ok 94 - SimpleObjectClass loaded successfully ok 95 - ok 96 - ok 97 - ok 98 - ok 99 ok 100 - Object is really overloaded ok 101 - Overloaded objects have matching addresses ok t/g4_storable.t ................. 1..101 ok 1 - use CGI::Session; ok 2 - === 1 === ok 3 - empty session should be created ok 4 ok 5 ok 6 ok 7 - Session created successfully! ok 8 - ok 9 - ctime & atime are set ok 10 - ctime == atime ok 11 - etime not set yet ok 12 - session id is 343d26eee99ae154b64ceef852e584fe ok 13 - session holds 3 params3 ok 14 - My name's correct! ok 15 - 'emails' holds list of values ok 16 - 'emails' holds list of two values ok 17 - first value of 'emails' is correct! ok 18 - second value of 'emails' is correct! ok 19 - 'blogs' holds a hash ok 20 - first blog is correct ok 21 - second blog is correct ok 22 - === 2 === ok 23 - survived eval without error. ok 24 - Session was retrieved successfully ok 25 - session isn't expired yet ok 26 - session IDs are consistent: 343d26eee99ae154b64ceef852e584fe ok 27 - ctime should be older than atime ok 28 - etime shouldn't be set yet ok 29 - session should hold params ok 30 - my name's correct ok 31 - 'emails' should hold list of values ok 32 - 'emails' should hold list of two values ok 33 - first value is correct! ok 34 - second value is correct! ok 35 - 'blogs' holds a hash ok 36 - first blog is correct! ok 37 - second blog is correct! ok 38 - etime set to 1 second ok 39 - etime set to one minute ok 40 - etime set to two hours ok 41 - etime set to 5 days ok 42 - etime set to 10 seconds in the past ok 43 - etime set back to one second ok 44 - calling close method survives eval ok 45 - === 3 === ok 46 - Session instance loaded ok 47 - session doesn't have ID ok 48 - session is empty, which is the same as above ok 49 - session was expired ok 50 - session data cleared ok 51 - new session created ok 52 - session has id :18075b0bf5b367a58417aff1b5a326fe ok 53 - session isn't expired ok 54 - session isn't empty ok 55 - access and creation times are same ok 56 - it's a completely different session than above ok 57 - === 4 === ok 58 - Session '18075b0bf5b367a58417aff1b5a326fe' removed from datastore successfully ok 59 - session object created successfully ok 60 - claimed ID (18075b0bf5b367a58417aff1b5a326fe) couldn't be recovered. New ID is: 372d9aad5ea5ce6da6d4b4d38d425144 ok 61 - === 5 === ok 62 - Session object created successfully ok 63 - claimed id (372d9aad5ea5ce6da6d4b4d38d425144) was recovered successfully! ok 64 - === 6 === ok 65 - Session object created successfully ok 66 - New object created, because previous object was deleted ok 67 - SimpleObjectClass created successfully ok 68 ok 69 ok 70 ok 71 - OverloadedObjectClass created successfully ok 72 - OverloadedObjectClass is properly overloaded ok 73 - OverloadedObjectClass is an object ok 74 ok 75 - SimpleObjectClass created successfully ok 76 - First element of anonymous array undef ok 77 ok 78 ok 79 ok 80 ok 81 - Overloaded objects have matching addresses ok 82 - === 7 === ok 83 - Session object created successfully ok 84 - Previously stored object loaded successfully ok 85 - SimpleObjectClass loaded successfully ok 86 - ok 87 - ok 88 - ok 89 - ok 90 ok 91 - Object is still overloaded ok 92 - Object is really overloaded ok 93 - First element of anonymous array undef ok 94 - SimpleObjectClass loaded successfully ok 95 - ok 96 - ok 97 - ok 98 - ok 99 ok 100 - Object is really overloaded ok 101 - Overloaded objects have matching addresses ok t/header.t ...................... ok 1 - has header() method ok 2 - has http_header() method 1..2 ok syntax error at t/ip_matches.t line 33, near "->import qw/-ip_match/" Execution of t/ip_matches.t aborted due to compilation errors (#1) (F) Probably means you had a syntax error. Common reasons include: A keyword is misspelled. A semicolon is missing. A comma is missing. An opening or closing parenthesis is missing. An opening or closing brace is missing. A closing quote is missing. Often there will be another error message associated with the syntax error giving more information. (Sometimes it helps to turn on -w.) The error message itself often tells you where it was in the line when it decided to give up. Sometimes the actual error is several tokens before this, because Perl is good at understanding random input. Occasionally the line number may be misleading, and once in a blue moon the only way to figure out what's triggering the error is to call perl -c repeatedly, chopping away half the program each time to see if the error went away. Sort of the cybernetic version of 20 questions. Uncaught exception from user code: syntax error at t/ip_matches.t line 33, near "->import qw/-ip_match/" Execution of t/ip_matches.t aborted due to compilation errors. t/ip_matches.t .................. Dubious, test returned 255 (wstat 65280, 0xff00) No subtests run t/is_new.t ...................... ok 1 - use CGI::Session; ok 2 - session has is_new() method ok 3 - a brand new session is_new ok 4 - a session that has been closed and re-opened is not new 1..4 ok t/load.t ........................ ok 1 - undefined session is created with wrong number of args to load ok 2 - expected error is returned for wrong number of args ok 3 - don't mention new() in error when load() fails directly. ok 4 - expected error when load() called as instance method. 1..4 ok t/parse_dsn.t ................... 1..1 ok 1 - parse_dsn: abbreviation and lower-casing ok t/remote_addr.t ................. 1..5 ok 1 - use CGI::Session; ok 2 ok 3 - remote_addr() exists ok 4 - remote_addr() passes eval ok 5 - remote_addr() is 127.0.0.1 ok t/str2seconds.t ................. ok 1 - got expected result when converting -1m to seconds ok 2 - got expected result when converting 1d to seconds ok 3 - got expected result when converting 1w to seconds ok 4 - got expected result when converting 1M to seconds ok 5 - got expected result when converting 1h to seconds ok 6 - got expected result when converting 1s to seconds ok 7 - got expected result when converting 1y to seconds ok 8 - got expected result when converting +1m to seconds ok 9 - got expected result when converting 1m to seconds 1..9 ok t/symlink_db_file.t ............. skipped: DB_File not available t/symlink_file.t ................ skipped: Your OS doesn't support symlinks Test Summary Report ------------------- t/g4_dbfile_json.t (Wstat: 512 Tests: 6 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 101 tests but ran 6. t/g4_dbfile_yaml.t (Wstat: 512 Tests: 6 Failed: 0) Non-zero exit status: 2 Parse errors: Bad plan. You planned 202 tests but ran 6. t/ip_matches.t (Wstat: 65280 Tests: 0 Failed: 0) Non-zero exit status: 255 Parse errors: No plan found in TAP output Files=43, Tests=765, 40 wallclock secs ( 0.23 usr + 0.09 sys = 0.33 CPU) Result: FAIL Failed 3/43 test programs. 0/765 subtests failed. dmake: Error code 255, while making 'test_dynamic' SHERZODR/CGI-Session-4.10.tar.gz dmake test TEST_VERBOSE=1 -- NOT OK //hint// to see the cpan-testers results for installing this module, try: reports SHERZODR/CGI-Session-4.10.tar.gz Finished 2016-07-25T22:07:25