PATH=/usr/bin:/bin:/Users/fly1800/var/megalib/bin Start 2013-07-19T15:03:02 ActivePerl-1800 CPAN-2.00 Reading '/Users/fly1800/var/cpan/Metadata' Database was generated on Fri, 19 Jul 2013 18:07:19 GMT Running make for S/SH/SHERZODR/CGI-Session-4.10.tar.gz Checksum for /net/nas/data/cpan/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 CPAN.pm: Building S/SH/SHERZODR/CGI-Session-4.10.tar.gz >>> /Users/fly1800/ap1800-297214/bin/perl-dynamic Makefile.PL Unparsable version '' for prerequisite Data::Dumper at Makefile.PL line 44. Unparsable version '' for prerequisite Scalar::Util at Makefile.PL line 44. Unparsable version '' for prerequisite Test::More at Makefile.PL line 44. Unparsable version '' for prerequisite Digest::MD5 at Makefile.PL line 44. ---------------------------------------- #### 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 Writing Makefile for CGI::Session Writing MYMETA.yml and MYMETA.json >>> make cp lib/CGI/Session/Driver/db_file.pm blib/lib/CGI/Session/Driver/db_file.pm cp lib/CGI/Session/ID/static.pm blib/lib/CGI/Session/ID/static.pm cp lib/CGI/Session/Serialize/storable.pm blib/lib/CGI/Session/Serialize/storable.pm cp lib/CGI/Session/Tutorial.pm blib/lib/CGI/Session/Tutorial.pm cp lib/CGI/Session/ID/md5.pm blib/lib/CGI/Session/ID/md5.pm cp lib/CGI/Session/Driver.pm blib/lib/CGI/Session/Driver.pm cp lib/CGI/Session/Driver/sqlite.pm blib/lib/CGI/Session/Driver/sqlite.pm cp lib/CGI/Session/ErrorHandler.pm blib/lib/CGI/Session/ErrorHandler.pm cp lib/CGI/Session.pm blib/lib/CGI/Session.pm cp lib/CGI/Session/Serialize/json.pm blib/lib/CGI/Session/Serialize/json.pm cp lib/CGI/Session/Serialize/yaml.pm blib/lib/CGI/Session/Serialize/yaml.pm cp lib/CGI/Session/Driver/DBI.pm blib/lib/CGI/Session/Driver/DBI.pm cp lib/CGI/Session/Serialize/default.pm blib/lib/CGI/Session/Serialize/default.pm cp lib/CGI/Session/Driver/file.pm blib/lib/CGI/Session/Driver/file.pm cp lib/CGI/Session/ID/incr.pm blib/lib/CGI/Session/ID/incr.pm cp lib/CGI/Session/Driver/postgresql.pm blib/lib/CGI/Session/Driver/postgresql.pm cp lib/CGI/Session/Test/Default.pm blib/lib/CGI/Session/Test/Default.pm cp lib/CGI/Session/Serialize/freezethaw.pm blib/lib/CGI/Session/Serialize/freezethaw.pm cp lib/CGI/Session/Driver/mysql.pm blib/lib/CGI/Session/Driver/mysql.pm Manifying blib/man3/CGI::Session::Serialize::storable.3 Manifying blib/man3/CGI::Session::ID::incr.3 Manifying blib/man3/CGI::Session::Driver::db_file.3 Manifying blib/man3/CGI::Session::Serialize::freezethaw.3 Manifying blib/man3/CGI::Session::Serialize::json.3 Manifying blib/man3/CGI::Session::Tutorial.3 Manifying blib/man3/CGI::Session::Driver::file.3 Manifying blib/man3/CGI::Session::Driver::postgresql.3 Manifying blib/man3/CGI::Session.3 Manifying blib/man3/CGI::Session::Driver.3 Manifying blib/man3/CGI::Session::Driver::mysql.3 Manifying blib/man3/CGI::Session::Driver::DBI.3 Manifying blib/man3/CGI::Session::ID::md5.3 Manifying blib/man3/CGI::Session::Driver::sqlite.3 Manifying blib/man3/CGI::Session::ID::static.3 Manifying blib/man3/CGI::Session::ErrorHandler.3 Manifying blib/man3/CGI::Session::Serialize::yaml.3 Manifying blib/man3/CGI::Session::Serialize::default.3 Manifying blib/man3/CGI::Session::Test::Default.3 SHERZODR/CGI-Session-4.10.tar.gz make -- OK Running make test >>> make test TEST_VERBOSE=1 PERL_DL_NONLAZY=1 /Users/fly1800/ap1800-297214/bin/perl-dynamic "-MExtUtils::Command::MM" "-e" "test_harness(1, 'blib/lib', 'blib/arch')" t/*.t # Failed test at t/api3_db_file.t line 46. Can't call method "id" on an undefined value at t/api3_db_file.t line 48 (#1) (F) You used the syntax of a method call, but the slot filled by the object reference or package name contains an undefined value. Something like this will reproduce the error: $BADREF = undef; process $BADREF 1,2,3; $BADREF->process(1,2,3); Uncaught exception from user code: Can't call method "id" on an undefined value at t/api3_db_file.t line 48. # Looks like you planned 14 tests but ran 10. # Looks like you failed 1 test of 10 run. # Looks like your test exited with 22 just after 10. t/api3_db_file.t ................ 1..14 ok 1 - use CGI::Session; ok 2 ok 3 ok 4 ok 5 ok 6 ok 7 ok 8 ok 9 not ok 10 Dubious, test returned 22 (wstat 5632, 0x1600) Failed 5/14 subtests # Failed test at t/api3_db_file_freezethaw.t line 50. Can't call method "id" on an undefined value at t/api3_db_file_freezethaw.t line 52 (#1) (F) You used the syntax of a method call, but the slot filled by the object reference or package name contains an undefined value. Something like this will reproduce the error: $BADREF = undef; process $BADREF 1,2,3; $BADREF->process(1,2,3); Uncaught exception from user code: Can't call method "id" on an undefined value at t/api3_db_file_freezethaw.t line 52. # Looks like you planned 14 tests but ran 10. # Looks like you failed 1 test of 10 run. # Looks like your test exited with 22 just after 10. t/api3_db_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 not ok 10 Dubious, test returned 22 (wstat 5632, 0x1600) Failed 5/14 subtests # Failed test at t/api3_db_file_storable.t line 47. Can't call method "id" on an undefined value at t/api3_db_file_storable.t line 48 (#1) (F) You used the syntax of a method call, but the slot filled by the object reference or package name contains an undefined value. Something like this will reproduce the error: $BADREF = undef; process $BADREF 1,2,3; $BADREF->process(1,2,3); Uncaught exception from user code: Can't call method "id" on an undefined value at t/api3_db_file_storable.t line 48. # Looks like you planned 14 tests but ran 10. # Looks like you failed 1 test of 10 run. # Looks like your test exited with 22 just after 10. t/api3_db_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 not ok 10 Dubious, test returned 22 (wstat 5632, 0x1600) Failed 5/14 subtests # Failed test at t/api3_db_file_storable_incr.t line 51. Can't call method "id" on an undefined value at t/api3_db_file_storable_incr.t line 52 (#1) (F) You used the syntax of a method call, but the slot filled by the object reference or package name contains an undefined value. Something like this will reproduce the error: $BADREF = undef; process $BADREF 1,2,3; $BADREF->process(1,2,3); Uncaught exception from user code: Can't call method "id" on an undefined value at t/api3_db_file_storable_incr.t line 52. # Looks like you planned 15 tests but ran 11. # Looks like you failed 1 test of 11 run. # Looks like your test exited with 22 just after 11. t/api3_db_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 not ok 11 Dubious, test returned 22 (wstat 5632, 0x1600) Failed 5/15 subtests 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 Can't call method "id" on an undefined value at t/api3_obj_store_db_file.t line 55 (#1) (F) You used the syntax of a method call, but the slot filled by the object reference or package name contains an undefined value. Something like this will reproduce the error: $BADREF = undef; process $BADREF 1,2,3; $BADREF->process(1,2,3); Uncaught exception from user code: Can't call method "id" on an undefined value at t/api3_obj_store_db_file.t line 55. t/api3_obj_store_db_file.t ...... 1..8 ok ok ok ok not ok Dubious, test returned 22 (wstat 5632, 0x1600) Failed 4/8 subtests 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 3d4eb66dbf1afe5043fa6a8494642e41 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: 3d4eb66dbf1afe5043fa6a8494642e41 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 :7043b87bf4f80583495568fdd508c2dd 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 '7043b87bf4f80583495568fdd508c2dd' removed from datastore successfully ok 59 - session object created successfully ok 60 - claimed ID (7043b87bf4f80583495568fdd508c2dd) couldn't be recovered. New ID is: ef1baa260d5086fe67b7d5bb60da79ba ok 61 - === 5 === ok 62 - Session object created successfully ok 63 - claimed id (ef1baa260d5086fe67b7d5bb60da79ba) 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 Uncaught exception from user code: load(): couldn't retrieve data: _tie_db_file(): couldn't tie 't/sessiondata/cgisess.db': Invalid argument at /Users/fly1800/var/cpan/build/CGI-Session-4.10-5fz6ms/blib/lib/CGI/Session/Test/Default.pm line 198. CGI::Session::Test::Default::run('CGI::Session::Test::Default=HASH(0x100802ee8)') called at t/g4_dbfile.t line 21 # Looks like you planned 101 tests but ran 79. # Looks like your test exited with 22 just after 79. t/g4_dbfile.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 a5ea12b24b051747518e8827f2e1e1e7 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 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 24 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 25 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 26 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 27 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 28 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 29 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 30 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 31 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 32 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 33 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 34 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 35 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 36 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 37 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 38 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 39 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 40 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 41 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 42 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 43 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 44 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 45 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 46 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 47 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 48 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 49 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 50 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 51 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 52 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 53 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 54 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 55 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 56 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 57 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 58 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 59 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 60 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 61 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 62 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 63 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 64 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 65 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 66 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 67 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 68 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 69 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 70 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 71 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 72 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 73 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 74 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 75 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 76 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 77 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 78 # skip couldn't load session, bailing out: SQLite/Storable support is TODO ok 79 - === 3 === Dubious, test returned 22 (wstat 5632, 0x1600) Failed 22/101 subtests (less 56 skipped subtests: 23 okay) Uncaught exception from user code: new(): failed: load(): couldn't retrieve data: _tie_db_file(): couldn't tie 't/sessiondata/cgisess.db': Invalid argument at /Users/fly1800/var/cpan/build/CGI-Session-4.10-5fz6ms/blib/lib/CGI/Session/Test/Default.pm line 96. CGI::Session::Test::Default::run('CGI::Session::Test::Default=HASH(0x100812f38)') called at t/g4_dbfile_freezethaw.t line 23 # Looks like you planned 101 tests but ran 6. # Looks like your test exited with 22 just after 6. t/g4_dbfile_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 Dubious, test returned 22 (wstat 5632, 0x1600) Failed 95/101 subtests # JSON::Syck Uncaught exception from user code: new(): failed: load(): couldn't retrieve data: _tie_db_file(): couldn't tie 't/sessiondata/cgisess.db': Invalid argument at /Users/fly1800/var/cpan/build/CGI-Session-4.10-5fz6ms/blib/lib/CGI/Session/Test/Default.pm line 96. CGI::Session::Test::Default::run('CGI::Session::Test::Default=HASH(0x100b17d78)') called at t/g4_dbfile_json.t line 44 # Looks like you planned 101 tests but ran 6. # Looks like your test exited with 22 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 22 (wstat 5632, 0x1600) Failed 95/101 subtests Uncaught exception from user code: new(): failed: load(): couldn't retrieve data: _tie_db_file(): couldn't tie 't/sessiondata/cgisess.db': Invalid argument at /Users/fly1800/var/cpan/build/CGI-Session-4.10-5fz6ms/blib/lib/CGI/Session/Test/Default.pm line 96. CGI::Session::Test::Default::run('CGI::Session::Test::Default=HASH(0x100812f38)') called at t/g4_dbfile_storable.t line 23 # Looks like you planned 101 tests but ran 6. # Looks like your test exited with 22 just after 6. t/g4_dbfile_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 Dubious, test returned 22 (wstat 5632, 0x1600) Failed 95/101 subtests # YAML Uncaught exception from user code: new(): failed: load(): couldn't retrieve data: _tie_db_file(): couldn't tie 't/sessiondata/cgisess.db': Invalid argument at /Users/fly1800/var/cpan/build/CGI-Session-4.10-5fz6ms/blib/lib/CGI/Session/Test/Default.pm line 96. CGI::Session::Test::Default::run('CGI::Session::Test::Default=HASH(0x100820278)') called at t/g4_dbfile_yaml.t line 45 # Looks like you planned 202 tests but ran 6. # Looks like your test exited with 22 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 22 (wstat 5632, 0x1600) 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 56ff13b10cf39954ade6f8cd8944dbde 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: 56ff13b10cf39954ade6f8cd8944dbde 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 :4c2ac7599698789301a46ddf82b477b5 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 '4c2ac7599698789301a46ddf82b477b5' removed from datastore successfully ok 59 - session object created successfully ok 60 - claimed ID (4c2ac7599698789301a46ddf82b477b5) couldn't be recovered. New ID is: f3cb4d8cac8d9b5f3582d154d4700530 ok 61 - === 5 === ok 62 - Session object created successfully ok 63 - claimed id (f3cb4d8cac8d9b5f3582d154d4700530) 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(0x100ddccb0)->disconnect invalidates 1 active statement handle (either destroy statement handles or call finish on them before disconnecting) at /Users/fly1800/var/cpan/build/CGI-Session-4.10-5fz6ms/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 9e6caf9734de28c81861292f6ffd339f 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: 9e6caf9734de28c81861292f6ffd339f 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 :8edb0c29e71628f740cb96f7d46f1497 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 '8edb0c29e71628f740cb96f7d46f1497' removed from datastore successfully ok 59 - session object created successfully ok 60 - claimed ID (8edb0c29e71628f740cb96f7d46f1497) couldn't be recovered. New ID is: 6ae30b44bd79323867bfc5e10c93423e ok 61 - === 5 === ok 62 - Session object created successfully ok 63 - claimed id (6ae30b44bd79323867bfc5e10c93423e) 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(0x100e13d60)->disconnect invalidates 1 active statement handle (either destroy statement handles or call finish on them before disconnecting) at /Users/fly1800/var/cpan/build/CGI-Session-4.10-5fz6ms/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 6d8821ad848a6f75e9fade05ca71d9ac 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: 6d8821ad848a6f75e9fade05ca71d9ac 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 :407e210327184834f9494c92b6a5c7f9 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 '407e210327184834f9494c92b6a5c7f9' removed from datastore successfully ok 59 - session object created successfully ok 60 - claimed ID (407e210327184834f9494c92b6a5c7f9) couldn't be recovered. New ID is: 3092f3492fbc2d0ab71bd8e89cd8e21f ok 61 - === 5 === ok 62 - Session object created successfully ok 63 - claimed id (3092f3492fbc2d0ab71bd8e89cd8e21f) 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(0x100ddccd0)->disconnect invalidates 1 active statement handle (either destroy statement handles or call finish on them before disconnecting) at /Users/fly1800/var/cpan/build/CGI-Session-4.10-5fz6ms/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 2f4f77228de349759a3aee81c525fc55 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: 2f4f77228de349759a3aee81c525fc55 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 :4271d1a4a68b0ac2b3c387436f6ce02b 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 '4271d1a4a68b0ac2b3c387436f6ce02b' removed from datastore successfully ok 59 - session object created successfully ok 60 - claimed ID (4271d1a4a68b0ac2b3c387436f6ce02b) couldn't be recovered. New ID is: 4660f8d7e9f77d925c9d699444af4d31 ok 61 - === 5 === ok 62 - Session object created successfully ok 63 - claimed id (4660f8d7e9f77d925c9d699444af4d31) 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 05eb8e44e51a2ad89f9cb9511509afc6 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: 05eb8e44e51a2ad89f9cb9511509afc6 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 :a697d147f126f46142092f48fb807128 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 'a697d147f126f46142092f48fb807128' removed from datastore successfully ok 59 - session object created successfully ok 60 - claimed ID (a697d147f126f46142092f48fb807128) couldn't be recovered. New ID is: 5bf856eea2c3b2ab0ec9068f02417aaa ok 61 - === 5 === ok 62 - Session object created successfully ok 63 - claimed id (5bf856eea2c3b2ab0ec9068f02417aaa) 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. # Looks like your test exited with 255 before it could output anything. 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 1h to seconds ok 2 - got expected result when converting 1m to seconds ok 3 - got expected result when converting -1m to seconds ok 4 - got expected result when converting 1M to seconds ok 5 - got expected result when converting +1m to seconds ok 6 - got expected result when converting 1y to seconds ok 7 - got expected result when converting 1d to seconds ok 8 - got expected result when converting 1w to seconds ok 9 - got expected result when converting 1s to seconds 1..9 ok (in cleanup) _tie_db_file(): couldn't tie 't/cgisess_symlink_link.db': Invalid argument at t/symlink_db_file.t line 15 (#1) (W misc) This prefix usually indicates that a DESTROY() method raised the indicated exception. Since destructors are usually called by the system at arbitrary points during execution, and often a vast number of times, the warning is issued only once for any number of failures that would otherwise result in the same message being repeated. Failure of user callbacks dispatched using the G_KEEPERR flag could also result in this warning. See "G_KEEPERR" in perlcall. t/symlink_db_file.t ............. 1..11 ok 1 - Create new session named symlink ok 2 - We have an id ok 3 - Created symlink ok 4 - Check to make certain symlink was created ok 5 - Get our symlinked session ok 6 - we should have wiped out the symlink ok 7 - this session should be unique ok 8 - moving session file ok 9 - creating symlink ok 10 - flush should wipe out the symlink ok 11 - original session file has been restored ok t/symlink_file.t ................ 1..11 ok 1 - Create new session named symlink ok 2 - We have an id ok 3 - Created symlink ok 4 - Check to make certain symlink was created ok 5 - Get our symlinked session ok 6 - we should have wiped out the symlink ok 7 - this session should be unique ok 8 - moving session file ok 9 - creating symlink ok 10 - flush should wipe out the symlink ok 11 - original session file has been restored ok Test Summary Report ------------------- t/api3_db_file.t (Wstat: 5632 Tests: 10 Failed: 1) Failed test: 10 Non-zero exit status: 22 Parse errors: Bad plan. You planned 14 tests but ran 10. t/api3_db_file_freezethaw.t (Wstat: 5632 Tests: 10 Failed: 1) Failed test: 10 Non-zero exit status: 22 Parse errors: Bad plan. You planned 14 tests but ran 10. t/api3_db_file_storable.t (Wstat: 5632 Tests: 10 Failed: 1) Failed test: 10 Non-zero exit status: 22 Parse errors: Bad plan. You planned 14 tests but ran 10. t/api3_db_file_storable_incr.t (Wstat: 5632 Tests: 11 Failed: 1) Failed test: 11 Non-zero exit status: 22 Parse errors: Bad plan. You planned 15 tests but ran 11. t/api3_obj_store_db_file.t (Wstat: 5632 Tests: 5 Failed: 1) Failed test: 5 Non-zero exit status: 22 Parse errors: Bad plan. You planned 8 tests but ran 5. t/g4_dbfile.t (Wstat: 5632 Tests: 79 Failed: 0) Non-zero exit status: 22 Parse errors: Bad plan. You planned 101 tests but ran 79. t/g4_dbfile_freezethaw.t (Wstat: 5632 Tests: 6 Failed: 0) Non-zero exit status: 22 Parse errors: Bad plan. You planned 101 tests but ran 6. t/g4_dbfile_json.t (Wstat: 5632 Tests: 6 Failed: 0) Non-zero exit status: 22 Parse errors: Bad plan. You planned 101 tests but ran 6. t/g4_dbfile_storable.t (Wstat: 5632 Tests: 6 Failed: 0) Non-zero exit status: 22 Parse errors: Bad plan. You planned 101 tests but ran 6. t/g4_dbfile_yaml.t (Wstat: 5632 Tests: 6 Failed: 0) Non-zero exit status: 22 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=924, 54 wallclock secs ( 0.26 usr 0.12 sys + 9.34 cusr 0.73 csys = 10.45 CPU) Result: FAIL Failed 11/43 test programs. 5/924 subtests failed. make: *** [test_dynamic] Error 255 SHERZODR/CGI-Session-4.10.tar.gz make 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 2013-07-19T15:04:08