From 2c7f5b300c8ef41c1f620bc1a5987b7e6d0499c6 Mon Sep 17 00:00:00 2001 From: pmichaud Date: Tue, 7 Apr 2009 09:18:26 -0500 Subject: [PATCH 1/5] spectest-progress.csv update: 349 files, 8436 passing, 0 failing --- docs/spectest-progress.csv | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/spectest-progress.csv b/docs/spectest-progress.csv index 747beb9eaef..844151e5314 100644 --- a/docs/spectest-progress.csv +++ b/docs/spectest-progress.csv @@ -319,3 +319,4 @@ "2009-04-04 00:00",68ea385,8406,0,342,1964,10712,15534,347 "2009-04-05 00:00",7dc65fd,8436,0,340,1960,10736,15579,349 "2009-04-06 00:00",078012a,8436,0,340,1960,10736,15579,349 +"2009-04-07 00:00",8f4dc52,8436,0,340,1960,10736,15579,349 From ea9417560bd818e31419b6fcbdf3d265a93f186a Mon Sep 17 00:00:00 2001 From: Moritz Lenz Date: Tue, 7 Apr 2009 16:59:43 +0200 Subject: [PATCH 2/5] re-enable parallel testing in t/harness again Based on a patch by pmichaud++ Requires a sufficiently recent Test::Harness. For example the harness works fine with 3.12, but for parallelism you need something newer, 3.16 seems to work. --- t/harness | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/t/harness b/t/harness index 53eee59beec..dc68e9aa886 100644 --- a/t/harness +++ b/t/harness @@ -23,6 +23,7 @@ GetOptions( 'jobs:3' => \my $jobs, 'icu:1' => \my $do_icu, ); + my @pass_through_options = grep m/^--?[^-]/, @ARGV; my @files = grep m/^[^-]/, @ARGV; @@ -54,7 +55,17 @@ if ($do_fudge) { @tfiles = fudge(@tfiles); } -runtests(@tfiles); +if (eval { require TAP::Harness; 1 }) { + my %harness_options = ( + exec => ['./perl6'], + verbosity => 0+$Test::Harness::verbose, + jobs => $jobs || 1, + ); + TAP::Harness->new( \%harness_options )->runtests(@tfiles); +} +else { + runtests(@tfiles); +} # adapted to return only files ending in '.t' sub all_in { From 27f0c01189593b4cfebf9e5c51da2b0fbfcea01a Mon Sep 17 00:00:00 2001 From: Moritz Lenz Date: Tue, 7 Apr 2009 17:04:22 +0200 Subject: [PATCH 3/5] document requirements for parallel testing --- README | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README b/README index a7133791360..46b977ffb3c 100644 --- a/README +++ b/README @@ -82,6 +82,10 @@ You can also use "make" to run an individual test from the command line: Files=1, Tests=4, 1 wallclock secs ( 0.02 usr 0.00 sys + 0.57 cusr 0.06 csys = 0.65 CPU) Result: PASS +If you want to run the tests in parallel, you need to install a +fairly recent version of the Perl 5 module L (3.16 +works for sure). + =head2 Where to get help or answers to questions There are several mailing lists, IRC channels, and wikis available From 4453712948d0ca39296a32034ea163cf8f38ba77 Mon Sep 17 00:00:00 2001 From: pmichaud Date: Tue, 7 Apr 2009 10:24:47 -0500 Subject: [PATCH 4/5] Refactor checks for Makefile updates so that 'make realclean' continues to work. --- build/Makefile.in | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/build/Makefile.in b/build/Makefile.in index 5d3f91e71a6..a4fce93fc3b 100644 --- a/build/Makefile.in +++ b/build/Makefile.in @@ -179,7 +179,7 @@ perl6.pbc: perl6_s1.pbc src/gen_setting.pm $(PARROT) $(PARROT_ARGS) -o perl6.pbc perl6.pir # the Perl 6 stage-1 compiler -perl6_s1.pbc: $(PARROT) $(SOURCES) $(BUILTINS_PIR) +perl6_s1.pbc: makefilecheck $(PARROT) $(SOURCES) $(BUILTINS_PIR) $(PERL) -e "" > src/gen_setting.pir $(PARROT) $(PARROT_ARGS) -o perl6_s1.pbc perl6.pir @@ -192,7 +192,7 @@ src/gen_actions.pir: $(PARROT) $(NQP) $(PCT) src/parser/actions.pm $(PARROT) $(PARROT_ARGS) $(NQP) --output=src/gen_actions.pir \ --encoding=fixed_8 --target=pir src/parser/actions.pm -src/gen_builtins.pir: build/gen_builtins_pir.pl Makefile +src/gen_builtins.pir: makefilecheck build/gen_builtins_pir.pl $(PERL) build/gen_builtins_pir.pl $(BUILTINS_PIR) > src/gen_builtins.pir src/gen_metaop.pir: build/gen_metaop_pir.pl @@ -201,10 +201,10 @@ src/gen_metaop.pir: build/gen_metaop_pir.pl src/gen_junction.pir: build/gen_junction_pir.pl $(PERL) build/gen_junction_pir.pl src/gen_junction.pir -src/gen_setting.pm: build/gen_setting_pm.pl $(SETTING) +src/gen_setting.pm: makefilecheck build/gen_setting_pm.pl $(SETTING) $(PERL) build/gen_setting_pm.pl $(SETTING) > src/gen_setting.pm -$(PERL6_GROUP): $(PARROT) $(PMC_SOURCES) +$(PERL6_GROUP): makefilecheck $(PARROT) $(PMC_SOURCES) cd $(PMC_DIR) && $(BUILD_DYNPMC) generate $(PMCS) cd $(PMC_DIR) && $(BUILD_DYNPMC) compile $(PMCS) cd $(PMC_DIR) && $(BUILD_DYNPMC) linklibs $(PMCS) @@ -323,9 +323,8 @@ help: @echo " help: Print this help message." @echo "" -Makefile: build/Makefile.in - @echo "Makefile is out of date... try re-running Configure.pl" - @$(PERL) -e 'exit 1' +makefilecheck: Makefile + @$(PERL) -e 'die "Makefile is out of date... try re-running Configure.pl\n" if (-M "build/Makefile.in" < -M "Makefile");' CRITIC_FILES=Configure.pl t/harness build/ tools/ From f8222940fc6f27b0dfa9a2c50473446a4ee1442b Mon Sep 17 00:00:00 2001 From: Moritz Lenz Date: Wed, 8 Apr 2009 00:27:07 +0200 Subject: [PATCH 5/5] [docs] more ChangeLog --- docs/ChangeLog | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/ChangeLog b/docs/ChangeLog index e2dcce439ab..b877b6e331c 100644 --- a/docs/ChangeLog +++ b/docs/ChangeLog @@ -1,4 +1,8 @@ New in 2009-04 release +* enforce return types of subroutines (partial implementation) +* parallel testing +* Configure.pl now supports passing options to parrot's Configure +* support for lexical subroutines and multis * implemented \c[character name] in double quoted strings and regexes * implemented Perl 5 regexes * rx/.../ regex quoting