zealot.help-lint: Add a help-lint for travisci that ignores a lot of flaky resource leaks.
Some work needs to be done with ensuring that resources are cleaned up before reporting resource leaks and exiting. In the meantime, we want TravisCI to be useful enough to catch help-lint errors, so ignore a bunch of errors that it might find. These leaks are still tested for in the more thorough mason CI.clean-macosx-x86-64
parent
abf36e89ae
commit
78c3a99a31
|
@ -72,5 +72,5 @@ script:
|
||||||
- "./factor -e='USING: memory vocabs.hierarchy ; \"zealot\" load save'"
|
- "./factor -e='USING: memory vocabs.hierarchy ; \"zealot\" load save'"
|
||||||
- './factor -run=zealot.cli-changed-vocabs'
|
- './factor -run=zealot.cli-changed-vocabs'
|
||||||
- './factor -run=tools.test `./factor -run=zealot.cli-changed-vocabs | paste -s -d " " -`'
|
- './factor -run=tools.test `./factor -run=zealot.cli-changed-vocabs | paste -s -d " " -`'
|
||||||
- './factor -run=help.lint `./factor -run=zealot.cli-changed-vocabs | paste -s -d " " -`'
|
- './factor -run=zealot.help-lint `./factor -run=zealot.cli-changed-vocabs | paste -s -d " " -`'
|
||||||
- "./factor -e='USING: modern.paths tools.test sequences system kernel math random ; core-vocabs os macosx? [ dup length 3 /i sample ] when [ test ] each'"
|
- "./factor -e='USING: modern.paths tools.test sequences system kernel math random ; core-vocabs os macosx? [ dup length 3 /i sample ] when [ test ] each'"
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Doug Coleman
|
|
@ -0,0 +1,30 @@
|
||||||
|
! Copyright (C) 2019 Doug Coleman.
|
||||||
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
|
USING: assocs cache command-line help.lint io io.monitors kernel
|
||||||
|
namespaces prettyprint sequences system vocabs.hierarchy ;
|
||||||
|
IN: zealot.help-lint
|
||||||
|
|
||||||
|
! FIXME: help-lint sometimes lists monitors and event-streams as leaked.
|
||||||
|
! event-stream is macosx-only so hack it into a string
|
||||||
|
CONSTANT: ignored-resources {
|
||||||
|
"linux-monitor" "macosx-monitor" "malloc-ptr"
|
||||||
|
"epoll-mx" "server-port" "openssl-context"
|
||||||
|
"cache-assoc" "input-port" "fd" "output-port" "stdin"
|
||||||
|
"event-stream"
|
||||||
|
}
|
||||||
|
|
||||||
|
: filter-flaky-resources ( seq -- seq' )
|
||||||
|
[ drop unparse ignored-resources member? ] assoc-reject ;
|
||||||
|
|
||||||
|
! Allow testing without calling exit
|
||||||
|
: zealot-help-lint ( exit? -- )
|
||||||
|
command-line get [ load ] each
|
||||||
|
help-lint-all
|
||||||
|
lint-failures get filter-flaky-resources
|
||||||
|
[ nip assoc-empty? [ "==== FAILING LINT" print :lint-failures flush ] unless ]
|
||||||
|
[ swap [ 0 1 ? (exit) ] [ drop ] if ] 2bi ;
|
||||||
|
|
||||||
|
: zealot-help-lint-main ( -- )
|
||||||
|
t zealot-help-lint ;
|
||||||
|
|
||||||
|
MAIN: zealot-help-lint-main
|
Loading…
Reference in New Issue