Hello community, here is the log from the commit of package perl-DBD-CSV for openSUSE:Factory checked in at 2013-11-26 19:25:07 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-DBD-CSV (Old) and /work/SRC/openSUSE:Factory/.perl-DBD-CSV.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-DBD-CSV" Changes: -------- --- /work/SRC/openSUSE:Factory/perl-DBD-CSV/perl-DBD-CSV.changes 2013-08-13 09:50:26.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.perl-DBD-CSV.new/perl-DBD-CSV.changes 2013-11-26 19:25:09.000000000 +0100 @@ -1,0 +2,10 @@ +Fri Oct 4 09:11:13 UTC 2013 - [email protected] + +- updated to 0.41 + * Use File::Spec->tmpdir () for universal existing folder + Note that huge $TMP folders may cause the test to run slow + * Use File::Spec::rel2abs () instead of abs_path and hoops + * Guard against parallel testing, which is unsupported + * Guard against streaming tests (they PASS on the DBI-devel) + +------------------------------------------------------------------- Old: ---- DBD-CSV-0.40.tgz New: ---- DBD-CSV-0.41.tgz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-DBD-CSV.spec ++++++ --- /var/tmp/diff_new_pack.ACEVcY/_old 2013-11-26 19:25:10.000000000 +0100 +++ /var/tmp/diff_new_pack.ACEVcY/_new 2013-11-26 19:25:10.000000000 +0100 @@ -17,7 +17,7 @@ Name: perl-DBD-CSV -Version: 0.40 +Version: 0.41 Release: 0 %define cpan_name DBD-CSV Summary: DBI driver for CSV files ++++++ DBD-CSV-0.40.tgz -> DBD-CSV-0.41.tgz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/ChangeLog new/DBD-CSV-0.41/ChangeLog --- old/DBD-CSV-0.40/ChangeLog 2013-07-23 08:47:38.000000000 +0200 +++ new/DBD-CSV-0.41/ChangeLog 2013-07-29 09:34:07.000000000 +0200 @@ -1,3 +1,10 @@ +0.41 - 2013-07-29, H.Merijn Brand + * Use File::Spec->tmpdir () for universal existing folder + Note that huge $TMP folders may cause the test to run slow + * Use File::Spec::rel2abs () instead of abs_path and hoops + * Guard against parallel testing, which is unsupported + * Guard against streaming tests (they PASS on the DBI-devel) + 0.40 - 2013-07-23, H.Merijn Brand * Fix version references in doc * Fix tests for Windows diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/META.json new/DBD-CSV-0.41/META.json --- old/DBD-CSV-0.40/META.json 2013-07-23 08:49:33.000000000 +0200 +++ new/DBD-CSV-0.41/META.json 2013-07-29 15:15:28.000000000 +0200 @@ -1,72 +1,72 @@ { - "generated_by" : "Author", - "release_status" : "stable", + "author" : [ + "Jochen Wiedmann", + "Jeff Zucker", + "H.Merijn Brand <[email protected]>", + "Jens Rehsack <[email protected]>" + ], "dynamic_config" : 1, - "x_installdirs" : "site", - "meta-spec" : { - "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", - "version" : "2" + "provides" : { + "DBD::CSV" : { + "version" : "0.41", + "file" : "lib/DBD/CSV.pm" + } }, + "x_installdirs" : "site", "prereqs" : { - "test" : { - "requires" : { - "Cwd" : "0", - "charnames" : "0", - "Encode" : "0", - "Test::Harness" : "0", - "Test::More" : "0.90" - } - }, - "build" : { - "requires" : { - "Config" : "0" - } - }, "runtime" : { "recommends" : { - "perl" : "5.016003", - "Test::More" : "0.98" + "Test::More" : "0.98", + "perl" : "5.016003" }, "requires" : { - "SQL::Statement" : "1.405", - "DBD::File" : "0.42", + "Text::CSV_XS" : "1.01", "perl" : "5.008001", - "DBI" : "1.628", - "Text::CSV_XS" : "1.01" + "DBD::File" : "0.42", + "SQL::Statement" : "1.405", + "DBI" : "1.628" } }, "configure" : { "requires" : { "ExtUtils::MakeMaker" : "0" } + }, + "build" : { + "requires" : { + "Config" : "0" + } + }, + "test" : { + "requires" : { + "Encode" : "0", + "Test::Harness" : "0", + "charnames" : "0", + "Test::More" : "0.90", + "Cwd" : "0" + } } }, - "abstract" : "DBI driver for CSV files", - "author" : [ - "Jochen Wiedmann", - "Jeff Zucker", - "H.Merijn Brand <[email protected]>", - "Jens Rehsack <[email protected]>" - ], + "generated_by" : "Author", "license" : [ "perl_5" ], "resources" : { - "repository" : { - "type" : "git", - "web" : "https://github.com/perl5-dbi/DBD-CSV.git", - "url" : "https://github.com/perl5-dbi/DBD-CSV.git" - }, "license" : [ "http://dev.perl.org/licenses/" - ] + ], + "repository" : { + "url" : "https://github.com/perl5-dbi/DBD-CSV.git", + "web" : "https://github.com/perl5-dbi/DBD-CSV.git", + "type" : "git" + } + }, + "version" : "0.41", + "abstract" : "DBI driver for CSV files", + "meta-spec" : { + "version" : "2", + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec" }, - "version" : "0.40", "name" : "DBD-CSV", - "provides" : { - "DBD::CSV" : { - "file" : "lib/DBD/CSV.pm", - "version" : "0.40" - } - } + "release_status" : "stable" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/META.yml new/DBD-CSV-0.41/META.yml --- old/DBD-CSV-0.40/META.yml 2013-07-23 08:49:33.000000000 +0200 +++ new/DBD-CSV-0.41/META.yml 2013-07-29 15:15:28.000000000 +0200 @@ -19,7 +19,7 @@ provides: DBD::CSV: file: lib/DBD/CSV.pm - version: '0.40' + version: '0.41' recommends: Test::More: '0.98' perl: '5.016003' @@ -37,5 +37,5 @@ resources: license: http://dev.perl.org/licenses/ repository: https://github.com/perl5-dbi/DBD-CSV.git -version: '0.40' +version: '0.41' x_installdirs: site diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/lib/Bundle/DBD/CSV.pm new/DBD-CSV-0.41/lib/Bundle/DBD/CSV.pm --- old/DBD-CSV-0.40/lib/Bundle/DBD/CSV.pm 2013-07-22 17:49:31.000000000 +0200 +++ new/DBD-CSV-0.41/lib/Bundle/DBD/CSV.pm 2013-07-23 09:05:35.000000000 +0200 @@ -5,7 +5,7 @@ use strict; use warnings; -our $VERSION = "1.08"; +our $VERSION = "1.09"; 1; @@ -29,7 +29,7 @@ DBD::File 0.42 -DBD::CSV 0.40 +DBD::CSV 0.41 =head1 DESCRIPTION diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/lib/DBD/CSV.pm new/DBD-CSV-0.41/lib/DBD/CSV.pm --- old/DBD-CSV-0.40/lib/DBD/CSV.pm 2013-07-23 07:43:04.000000000 +0200 +++ new/DBD-CSV-0.41/lib/DBD/CSV.pm 2013-07-23 09:05:40.000000000 +0200 @@ -23,7 +23,7 @@ @ISA = qw( DBD::File ); -$VERSION = "0.40"; +$VERSION = "0.41"; $ATTRIBUTION = "DBD::CSV $DBD::CSV::VERSION by H.Merijn Brand"; $err = 0; # holds error code for DBI::err diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/t/20_createdrop.t new/DBD-CSV-0.41/t/20_createdrop.t --- old/DBD-CSV-0.40/t/20_createdrop.t 2010-08-06 13:42:02.000000000 +0200 +++ new/DBD-CSV-0.41/t/20_createdrop.t 2013-07-25 18:22:18.000000000 +0200 @@ -14,8 +14,6 @@ [ "name", "CHAR", 64, 0 ], ); -unlink glob "output/*"; - ok (my $dbh = Connect (), "connect"); ok (my $tbl = FindNewTable ($dbh), "find new test table"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/t/48_utf8.t new/DBD-CSV-0.41/t/48_utf8.t --- old/DBD-CSV-0.40/t/48_utf8.t 2013-06-11 14:46:49.000000000 +0200 +++ new/DBD-CSV-0.41/t/48_utf8.t 2013-07-25 18:27:03.000000000 +0200 @@ -29,7 +29,8 @@ ok ("Creating table with UTF-8 content"); foreach my $tbl ($tbl1, $tbl2) { ok (my $csv = Text::CSV_XS->new ({ binary => 1, eol => "\n" }), "New csv"); - ok (open (my $fh, ">:utf8", "output/$tbl.csv"), "Open CSV"); + ok (open (my $fh, ">:utf8", + File::Spec->catfile (DbDir (), "$tbl.csv")), "Open CSV"); ok ($csv->print ($fh, [ "id", "str" ]), "CSV print header"); ok ($csv->print ($fh, [ $_, $data[$_ - 1] ]), "CSV row $_") for 1 .. scalar @data; ok (close ($fh), "close"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/t/55_dir_search.t new/DBD-CSV-0.41/t/55_dir_search.t --- old/DBD-CSV-0.40/t/55_dir_search.t 2013-07-23 08:26:47.000000000 +0200 +++ new/DBD-CSV-0.41/t/55_dir_search.t 2013-07-26 13:46:15.000000000 +0200 @@ -3,19 +3,17 @@ use strict; use warnings; -use Cwd; use Test::More; -my $pwd = getcwd; - BEGIN { use_ok ("DBI") } require "t/lib.pl"; -my $root_temp = $^O eq "MSWin32" ? "C:/Temp" : "/tmp"; +my $tmpdir = File::Spec->tmpdir (); +my $tstdir = DbDir (); my $dbh = DBI->connect ("dbi:CSV:", undef, undef, { f_schema => undef, f_dir => DbDir (), - f_dir_search => [ "t", $root_temp ], + f_dir_search => [ "t", $tmpdir ], f_ext => ".csv/r", f_lock => 2, f_encoding => "utf8", @@ -29,9 +27,8 @@ my %dir = map { m{^dbi:CSV:.*\bf_dir=([^;]+)}i; my $folder = $1; - # Unixify Windows paths - $folder =~ s{^([A-Z])\\?:}{$1:}; - $folder =~ s{\\+}{/}g; + # data_sources returns the string just one level to many + $folder =~ m{\\[;\\]} and $folder =~ s{\\(.)}{$1}g; ($folder => 1); } @dsn; @@ -39,8 +36,7 @@ $dbh->do ("create table foo (c_foo integer, foo char (1))"); $dbh->do ("insert into foo values ($_, $_)") for 1, 2, 3; -my @test_dirs = ($pwd."/output", "t"); -$^O eq "VMS" or push @test_dirs, $root_temp; +my @test_dirs = ($tstdir, "t", $tmpdir); is ($dir{$_}, 1, "DSN for $_") for @test_dirs; my %tbl = map { $_ => 1 } $dbh->tables (undef, undef, undef, undef); @@ -53,7 +49,7 @@ 2 => "monkey", 3 => "gorilla", }, - foo => { # output/foo.csv + foo => { # output123/foo.csv 1 => 1, 2 => 2, 3 => 3, @@ -66,5 +62,6 @@ is ($row->[1], $data{$tbl}{$row->[0]}, "$tbl ($row->[0], ...)"); } } +ok ($dbh->do ("drop table foo"), "Drop foo"); done_testing; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/t/61_meta.t new/DBD-CSV-0.41/t/61_meta.t --- old/DBD-CSV-0.40/t/61_meta.t 2013-07-23 08:45:45.000000000 +0200 +++ new/DBD-CSV-0.41/t/61_meta.t 2013-07-26 17:11:29.000000000 +0200 @@ -6,10 +6,8 @@ use Test::More; use DBI qw(:sql_types); -use Cwd qw(getcwd abs_path); do "t/lib.pl"; -my $pwd = getcwd; my $cnt = join "" => <DATA>; my $tbl; @@ -19,13 +17,14 @@ [ 3, "Beowulf", "CCEE00" ], ]; -SKIP: { - open my $data, "<", \$cnt; - my $dbh = Connect (); +{ my $dbh = Connect (); ok ($tbl = FindNewTable ($dbh), "find new test table"); + } - skip "memory i/o currently unsupported by DBD::File", 1; - +if ($DBD::File::VERSION gt "0.42") { + note ("ScalarIO - no col_names"); + my $dbh = Connect (); + open my $data, "<", \$cnt; $dbh->{csv_tables}->{data} = { f_file => $data, skip_rows => 4, @@ -36,11 +35,10 @@ is_deeply ($rows, $expect, "all rows found - mem-io w/o col_names"); } -SKIP: { - open my $data, "<", \$cnt; +if ($DBD::File::VERSION gt "0.42") { + note ("ScalarIO - with col_names"); my $dbh = Connect (); - - skip "memory i/o currently unsupported by DBD::File", 1; + open my $data, "<", \$cnt; $dbh->{csv_tables}->{data} = { f_file => $data, @@ -53,17 +51,12 @@ is_deeply ($rows, $expect, "all rows found - mem-io w col_names"); } -# abs_path () fails under MSWin32 for non-existing files! -my $fn = DbFile ($tbl); - $fn = $^O eq "MSWin32" - ? File::Spec->catdir ($pwd, $fn) - : abs_path ($fn); +my $fn = File::Spec->rel2abs (DbFile ($tbl)); open my $fh, ">", $fn or die "Can't open $fn for writing: $!"; print $fh $cnt; close $fh; -END { defined $fn and unlink $fn; } - +note ("File handle - no col_names"); { open my $data, "<", $fn; my $dbh = Connect (); $dbh->{csv_tables}->{data} = { @@ -78,6 +71,7 @@ "column names - file-handle w/o col_names"); } +note ("File handle - with col_names"); { open my $data, "<", $fn; my $dbh = Connect (); $dbh->{csv_tables}->{data} = { @@ -92,6 +86,7 @@ is_deeply ($sth->{NAME_lc}, [qw(foo bar baz)], "column names - file-handle w col_names"); } +note ("File name - no col_names"); { my $dbh = Connect (); $dbh->{csv_tables}->{data} = { f_file => $fn, @@ -105,6 +100,7 @@ "column names - file-name w/o col_names"); } +note ("File name - with col_names"); { my $dbh = Connect ({ RaiseError => 1 }); $dbh->{csv_tables}->{data} = { f_file => $fn, @@ -117,9 +113,15 @@ is_deeply ($rows, $expect, "all rows found - file-name w col_names" ); is_deeply ($sth->{NAME_lc}, [qw(foo bar baz)], "column names - file-name w col_names" ); + + # TODO: Next test will hang in open_tables () + # 'Cannot obtain exclusive lock on .../output12660/testaa: Interrupted system call' + #ok ($dbh->do ("drop table data"), "Drop the table"); } -done_testing(); +unlink $fn; + +done_testing (); __END__ id,name,color diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/t/70_csv.t new/DBD-CSV-0.41/t/70_csv.t --- old/DBD-CSV-0.40/t/70_csv.t 2010-08-06 13:42:31.000000000 +0200 +++ new/DBD-CSV-0.41/t/70_csv.t 2013-07-25 18:49:58.000000000 +0200 @@ -3,7 +3,6 @@ use strict; use warnings; use Test::More; -use Cwd; BEGIN { use_ok ("DBI"); } do "t/lib.pl"; @@ -16,12 +15,13 @@ sub DbFile; -my $dir = DbDir () || "output"; -my $fqd = Cwd::abs_path $dir; +my $dir = "output$$"; +my $fqd = File::Spec->rel2abs ($dir); +my $abs = Cwd::abs_path ($dir); ok (my $dbh = Connect (), "connect"); -ok ($dbh->{f_dir} eq $dir || +ok ($dbh->{f_dir} eq $dir || $dbh->{f_dir} eq $abs || $dbh->{f_dir} eq $fqd, "default dir"); ok ($dbh->{f_dir} = $dir, "set f_dir"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/t/71_csv-ext.t new/DBD-CSV-0.41/t/71_csv-ext.t --- old/DBD-CSV-0.40/t/71_csv-ext.t 2011-08-30 08:47:34.000000000 +0200 +++ new/DBD-CSV-0.41/t/71_csv-ext.t 2013-07-25 18:22:34.000000000 +0200 @@ -27,7 +27,7 @@ sort @tbl; } # Tables -my $dir = DbDir () || "output"; +my $dir = DbDir (); ok ($dbh = Connect (), "connect"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/t/72_csv-schema.t new/DBD-CSV-0.41/t/72_csv-schema.t --- old/DBD-CSV-0.40/t/72_csv-schema.t 2010-08-06 13:42:35.000000000 +0200 +++ new/DBD-CSV-0.41/t/72_csv-schema.t 2013-07-25 18:21:55.000000000 +0200 @@ -12,7 +12,7 @@ [ "name", "CHAR", 64, 0 ], ); -my $dir = DbDir () || "output"; +my $dir = DbDir (); ok (my $dbh = DBI->connect ("dbi:CSV:", "", "", { f_dir => $dir, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/t/73_csv-case.t new/DBD-CSV-0.41/t/73_csv-case.t --- old/DBD-CSV-0.40/t/73_csv-case.t 2010-08-06 13:42:37.000000000 +0200 +++ new/DBD-CSV-0.41/t/73_csv-case.t 2013-07-25 18:21:42.000000000 +0200 @@ -9,7 +9,7 @@ sub DbFile; -my $dir = DbDir () || "output"; +my $dir = DbDir (); my @tbl_def = ( [ "id", "INTEGER", 4, 0 ], diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/t/80_rt.t new/DBD-CSV-0.41/t/80_rt.t --- old/DBD-CSV-0.40/t/80_rt.t 2013-06-19 07:46:27.000000000 +0200 +++ new/DBD-CSV-0.41/t/80_rt.t 2013-07-25 18:25:21.000000000 +0200 @@ -20,11 +20,16 @@ push @{$input{$rt}}, $_; } +sub rt_file +{ + return File::Spec->catfile (DbDir (), "rt$_[0]"); + } # rt_file + { $rt = 18477; ok ($rt, "RT-$rt - $desc{$rt}"); my @lines = @{$input{$rt}}; - open my $fh, ">", "output/rt$rt"; + open my $fh, ">", rt_file ($rt); print $fh @lines; close $fh; @@ -61,7 +66,7 @@ ok ($rt, "RT-$rt - $desc{$rt}"); my @lines = @{$input{$rt}}; - open my $fh, ">", "output/rt$rt"; + open my $fh, ">", rt_file ($rt); print $fh @lines; close $fh; @@ -127,7 +132,7 @@ ok ($rt, "RT-$rt - $desc{$rt}"); my @lines = @{$input{$rt}}; - open my $fh, ">", "output/rt$rt"; + open my $fh, ">", rt_file ($rt); print $fh @lines; close $fh; @@ -216,7 +221,7 @@ my @dbitp = ( SQL_INTEGER, SQL_LONGVARCHAR, SQL_NUMERIC ); my @csvtp = ( 1, 0, 2 ); - open my $fh, ">", "output/rt$rt"; + open my $fh, ">", rt_file ($rt); print $fh @lines; close $fh; @@ -236,7 +241,7 @@ ok ($rt, "RT-$rt - $desc{$rt}"); my @lines = @{$input{$rt}}; - open my $fh, ">", "output/rt$rt"; + open my $fh, ">", rt_file ($rt); print $fh @lines; close $fh; @@ -267,7 +272,7 @@ my @lines = @{$input{$rt}}; my $tbl = "rt$rt"; - open my $fh, ">", "output/$tbl"; + open my $fh, ">", rt_file ($rt); print $fh @lines; close $fh; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/t/85_error.t new/DBD-CSV-0.41/t/85_error.t --- old/DBD-CSV-0.40/t/85_error.t 2012-08-24 20:43:15.000000000 +0200 +++ new/DBD-CSV-0.41/t/85_error.t 2013-07-25 18:23:17.000000000 +0200 @@ -12,8 +12,6 @@ [ "name", "CHAR", 64, 0 ], ); -unlink glob "output/*"; - ok (my $dbh = Connect (), "connect"); ok (my $tbl = FindNewTable ($dbh), "find new test table"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-CSV-0.40/t/lib.pl new/DBD-CSV-0.41/t/lib.pl --- old/DBD-CSV-0.40/t/lib.pl 2012-04-29 11:07:13.000000000 +0200 +++ new/DBD-CSV-0.41/t/lib.pl 2013-07-25 18:57:00.000000000 +0200 @@ -9,14 +9,13 @@ use File::Spec; -my $test_dir = File::Spec->catdir (File::Spec->curdir (), "output"); -my $test_dsn = $ENV{DBI_DSN} || "DBI:CSV:f_dir=$test_dir"; +my $testname = "output$$"; +my $base_dir = File::Spec->rel2abs (File::Spec->curdir ()); +my $test_dir = File::Spec->rel2abs ($testname); +my $test_dsn = $ENV{DBI_DSN} || "DBI:CSV:f_dir=$testname"; my $test_user = $ENV{DBI_USER} || ""; my $test_pass = $ENV{DBI_PASS} || ""; -# Start each test clean -unlink glob "$test_dir/*"; - sub COL_NULLABLE () { 1 } sub COL_KEY () { 2 } @@ -92,7 +91,18 @@ @tables; } # ListTables --d "output"or mkdir "output", 0755; +sub DbCleanup +{ + chdir $base_dir; + -d $testname or return; + chdir $testname or BAIL_OUT ("Cleanup failed"); + unlink glob "*"; + chdir $base_dir; + rmdir $testname; + } # DbCleanup + +mkdir $testname, 0755; +END { DbCleanup (); } # This functions generates a list of possible DSN's aka # databases and returns a possible table name for a new @@ -162,7 +172,7 @@ sub DbDir { - @_ and $test_dir = File::Spec->catdir (File::Spec->curdir (), shift); + @_ and $test_dir = File::Spec->catdir ($base_dir, shift); $test_dir; } # DbDir -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
