Stratego debug primitive reports messages as errors
Eclipse: org.eclipse.epp.package.standard.feature.feature.group 4.4.2.20150219-0708
Spoofax: org.metaborg.spoofax.eclipse 1.5.0.20150331-091842-new-spoofax-plugin
System: Windows 7 amd64 6.1SDF3 compilation seems to work fine (completion, pp, signatures and sdf files are generated). However, the error log shows an error each time an SDF3 file gets compiled, for example when saving an SDF3 file (one error), or after cleaning when the project gets rebuild (one error for each SDF3 file). The error message is
Submitted by Oskar van Rest on 31 March 2015 at 14:02generating for XXX.sdf3 in stderr (Worker-X)
, but the error log doesn’t give any more information:An exception stack trace is not available.
.
Issue Log
This is not actually an error, debug messages in SDF3 are sent to stderr, which end up looking as errors. Not sure why it gets sent to stderr, but you can ignore it for now.
Is it not because you assigned the wrong ‘severity’? Other debug messages have severity DEBUG or INFO so they don’t show up (see below). It’s not really an issue though, but users may get confused.
14:06:37.821 | Worker-6 | DEBUG | o.m.s.e.build.CompilerRunnable - No compilation required for Language [name=SDF, version=1.0.0-0, location=file:///C:/Users/oskar/eclipse/plugins/org.strategoxt.imp.editors.sdf_1.5.0.20150331-091842-new-spoofax-plugin] 14:06:37.821 | Worker-6 | DEBUG | o.m.s.e.build.CompilerRunnable - No compilation required for Language [name=EditorService, version=1.0.0-0, location=file:///C:/Users/oskar/eclipse/plugins/org.strategoxt.imp.editors.editorservice_1.5.0.20150331-091842-new-spoofax-plugin] 14:06:37.821 | Worker-6 | DEBUG | o.m.s.e.build.CompilerRunnable - No compilation required for Language [name=Stratego-Sugar, version=1.0.0-0, location=file:///C:/Users/oskar/eclipse/plugins/org.strategoxt.imp.editors.stratego_1.5.0.20150331-091842-new-spoofax-plugin] 14:06:37.821 | Worker-6 | DEBUG | o.m.s.c.t.s.StrategoCompileTransformer - Compiling analysis result of eclipse:///my.project/trans/names.nab 14:06:52.377 | Worker-1 | DEBUG | o.m.s.e.editor.EditorUpdateJob - Running editor update job for eclipse:///my.project/syntax/Common.sdf3 14:06:52.396 | Worker-1 | DEBUG | o.m.s.c.a.s.StrategoAnalysisService - Analyzing 1 inputs of Language [name=TemplateLang, version=1.0.0-0, location=file:///C:/Users/oskar/eclipse/plugins/org.strategoxt.imp.editors.template_1.5.0.20150331-091842-new-spoofax-plugin] 14:06:54.211 | Worker-4 | DEBUG | o.m.s.e.editor.EditorUpdateJob - Running editor update job for eclipse:///my.project/syntax/Common.sdf3 14:06:54.844 | Worker-4 | DEBUG | o.m.s.c.a.s.StrategoAnalysisService - Analyzing 1 inputs of Language [name=TemplateLang, version=1.0.0-0, location=file:///C:/Users/oskar/eclipse/plugins/org.strategoxt.imp.editors.template_1.5.0.20150331-091842-new-spoofax-plugin] 14:06:56.675 | Worker-5 | DEBUG | o.m.s.e.b.SpoofaxProjectBuilder - Incrementally building P/my.project 14:06:56.694 | Worker-5 | DEBUG | o.m.s.c.a.s.StrategoAnalysisService - Analyzing 1 inputs of Language [name=TemplateLang, version=1.0.0-0, location=file:///C:/Users/oskar/eclipse/plugins/org.strategoxt.imp.editors.template_1.5.0.20150331-091842-new-spoofax-plugin] 14:06:57.039 | Worker-5 | DEBUG | o.m.s.c.t.s.StrategoCompileTransformer - Compiling analysis result of eclipse:///my.project/syntax/Common.sdf3 14:06:57.041 | Worker-5 | INFO | stdout - !ENTRY 14:06:57.041 | Worker-5 | INFO | stdout - org.metaborg.spoofax.eclipse 4 4 2015-03-31 14:06:57.041 14:06:57.041 | Worker-5 | INFO | stdout - !MESSAGE generating for Common.sdf3in stderr (Worker-5) 14:06:57.040 | Worker-5 | ERROR | stderr - generating for Common.sdf3
No the severity is ok, it’s just that the Stratego
debug
primitive strategy writes to stderr, which gets redirected to the error logger, which produces a message like14:06:57.040 | Worker-5 | ERROR | stderr - generating for Common.sdf3
. Instead of writing to stdout or stderr,debug
should write to the logger directly so we can set the severity to DEBUG, or just write to stdout.
Debug is defined to print to stderr in Stratego, so I can’t really change this in Spoofax core.
Solved, stderr is logged as info now.
Log in to post comments