Put compiler errors in build report

db4
Slava Pestov 2008-11-16 13:46:45 -06:00
parent 105831fabe
commit 437d594982
4 changed files with 36 additions and 13 deletions

View File

@ -61,6 +61,7 @@ IN: mason.child
[ load-everything-vocabs-file eval-file empty? ]
[ test-all-vocabs-file eval-file empty? ]
[ help-lint-vocabs-file eval-file empty? ]
[ compiler-errors-file eval-file empty? ]
} 0&& ;
: build-child ( -- )

View File

@ -75,6 +75,7 @@ SYMBOL: stamp
: boot-time-file "boot-time" ;
: load-time-file "load-time" ;
: compiler-errors-file "compiler-errors" ;
: test-time-file "test-time" ;
: help-lint-time-file "help-lint-time" ;
: benchmark-time-file "benchmark-time" ;

View File

@ -2,7 +2,7 @@
! See http://factorcode.org/license.txt for BSD license.
USING: kernel namespaces debugger fry io io.files io.sockets
io.encodings.utf8 prettyprint benchmark mason.common
mason.platform mason.config ;
mason.platform mason.config sequences ;
IN: mason.report
: time. ( file -- )
@ -50,18 +50,25 @@ IN: mason.report
nl
"Did not pass load-everything:" print
load-everything-vocabs-file cat
load-everything-errors-file cat
load-everything-vocabs-file eval-file [
"== Did not pass load-everything:" print .
load-everything-errors-file cat
] unless-empty
"Did not pass test-all:" print
test-all-vocabs-file cat
test-all-errors-file cat
compiler-errors-file eval-file [
"== Vocabularies with compiler errors:" print .
] unless-empty
"Did not pass help-lint:" print
help-lint-vocabs-file cat
help-lint-errors-file cat
test-all-vocabs-file eval-file [
"== Did not pass test-all:" print .
test-all-errors-file cat
] unless-empty
"Benchmarks:" print
help-lint-vocabs-file eval-file [
"== Did not pass help-lint:" print .
help-lint-errors-file cat
] unless-empty
"== Benchmarks:" print
benchmarks-file eval-file benchmarks.
] with-report ;

View File

@ -2,7 +2,8 @@
! See http://factorcode.org/license.txt for BSD license.
USING: kernel namespaces assocs io.files io.encodings.utf8
prettyprint help.lint benchmark tools.time bootstrap.stage2
tools.test tools.vocabs help.html mason.common ;
tools.test tools.vocabs help.html mason.common words generic
accessors compiler.errors sequences sets sorting ;
IN: mason.test
: do-load ( -- )
@ -11,6 +12,19 @@ IN: mason.test
[ load-everything-errors-file utf8 [ load-failures. ] with-file-writer ]
bi ;
GENERIC: word-vocabulary ( word -- vocabulary )
M: word word-vocabulary vocabulary>> ;
M: method-body word-vocabulary "method-generic" word-prop ;
: do-compile-errors ( -- )
compiler-errors-file utf8 [
+error+ errors-of-type keys
[ word-vocabulary ] map
prune natural-sort .
] with-file-writer ;
: do-tests ( -- )
run-all-tests
[ keys test-all-vocabs-file to-file ]
@ -29,7 +43,7 @@ IN: mason.test
: do-all ( -- )
".." [
bootstrap-time get boot-time-file to-file
[ do-load ] benchmark load-time-file to-file
[ do-load do-compile-errors ] benchmark load-time-file to-file
[ generate-help ] benchmark html-help-time-file to-file
[ do-tests ] benchmark test-time-file to-file
[ do-help-lint ] benchmark help-lint-time-file to-file