google / blockly-games

Games for tomorrow's programmers.
https://blockly.games/
Apache License 2.0
1.28k stars 603 forks source link

"STRICT" is not a valid value for "--dependency_mode" #176

Closed vincentsunhao closed 4 years ago

vincentsunhao commented 4 years ago

make index-en or make en mkdir -p appengine/generated/en/ java -jar third-party-downloads/SoyToJsSrcCompiler.jar --shouldProvideRequireSoyNamespaces --isUsingIjData --outputPathFormat appengine/index/generated/en/soy.js --srcs appengine/index/template.soy python build-app.py index en Scanning for Blockly messages in index... "STRICT" is not a valid value for "--dependency_mode" Sample usage: --compilation_level (-O) VAL --externs VAL --js VAL --js_output_file VAL --warning_level (-W) [QUIET | DEFAULT | VERBOSE] Run with --help for all options and details Compressed to 0 KB. Found 0 Blockly messages. Compiling Index - en third-party-downloads/build/closurebuilder.py: Scanning paths... "STRICT" is not a valid value for "--dependency_mode" Sample usage: --compilation_level (-O) VAL --externs VAL --js VAL --js_output_file VAL --warning_level (-W) [QUIET | DEFAULT | VERBOSE] Run with --help for all options and details Compressed to 0 KB. third-party-downloads/build/closurebuilder.py: 742 sources scanned. third-party-downloads/build/closurebuilder.py: Building dependency tree.. Traceback (most recent call last): File "third-party-downloads/build/closurebuilder.py", line 293, in main() File "third-party-downloads/build/closurebuilder.py", line 253, in main out.writelines([js_source.GetPath() + '\n' for js_source in deps]) TypeError: a bytes-like object is required, not 'str' Found 0 dependencies.

NeilFraser commented 4 years ago

Wonderful, the API for Closure Compiler has changed. Yet its documentation has not:

https://github.com/google/closure-compiler/wiki/Managing-Dependencies#using---dependency_mode-to-drop-unreferenced-files

As a temporary work-around, you can comment out line 217 of build-app.py.

NeilFraser commented 4 years ago

I've changed STRICT to PRUNE since that seems to work. But there is no documentation about what PRUNE does, so I'm going to leave this bug open until Closure Compiler addresses their documentation issue.

vincentsunhao commented 4 years ago

thanks. fixed.

NeilFraser commented 4 years ago

I want to keep this issue open until we actually know what PRUNE means. It's probably right, but without any documentation from Closure it's just a wild guess. The correct option might be PRUNE_LEGACY, whatever that is. We just don't know.

NeilFraser commented 4 years ago

Closure Compiler confirms that PRUNE is correct and have updated their docs.