bazelbuild / bazelbuild/rules_closure

JsChecker may not honor function level suppressions

Open
#73 6 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
159
Forks
111
PR merge metrics
No merged PRs in 30d

Description

When [updating](https://github.com/bazelbuild/rules_closure/pull/71) to library/compiler version v20160517 JsChecker reports the following warnings:

```
INFO: From Checking 812 JS files in //closure/library:library:
external/closure_library/closure/goog/datasource/expr.js:276: WARNING lintChecks JSC_MISSING_REQUIRE_CALL_WARNING - missing require: 'goog.ds.DataManager'
goog.ds.DataManager.getInstance();
^

external/closure_library/closure/goog/graphics/vmlelement.js:116: WARNING lintChecks JSC_MISSING_REQUIRE_CALL_WARNING - missing require: 'goog.graphics.VmlGraphics'
goog.graphics.VmlGraphics.toSizeCoord(height);
^

external/closure_library/closure/goog/graphics/vmlelement.js:276: WARNING lintChecks JSC_MISSING_REQUIRE_CALL_WARNING - missing require: 'goog.graphics.VmlGraphics'
style.height = goog.graphics.VmlGraphics.toSizePx(height);
^

external/closure_library/closure/goog/graphics/vmlelement.js:421: WARNING lintChecks JSC_MISSING_REQUIRE_CALL_WARNING - missing require: 'goog.graphics.VmlGraphics'
style.height = goog.graphics.VmlGraphics.toPosPx(height);
^

external/closure_library/closure/goog/net/browsertestchannel.js:376: WARNING lintChecks JSC_MISSING_REQUIRE_CALL_WARNING - missing require: 'goog.net.BrowserChannel'
goog.net.BrowserChannel.createChannelRequest(this, this.channelDebug_);
^

external/closure_library/closure/goog/net/channelrequest.js:1129: WARNING lintChecks JSC_MISSING_REQUIRE_CALL_WARNING - missing require: 'goog.net.BrowserChannel'
this.watchDogTimerId_ = goog.net.BrowserChannel.setTimeout(
^

0 error(s), 6 warning(s)
```

However, each of these functions already contains a function level suppression:

[closure/goog/datasource/expr.js](https://github.com/google/closure-library/blob/master/closure/goog/datasource/expr.js#L267)
[closure/goog/graphics/vmlelement.js](https://github.com/google/closure-library/blob/master/closure/goog/graphics/vmlelement.js#L106)
[closure/goog/net/browsertestchannel.js](https://github.com/google/closure-library/blob/master/closure/goog/net/browsertestchannel.js#L349)
[closure/goog/net/channelrequest.js](https://github.com/google/closure-library/blob/master/closure/goog/net/channelrequest.js#L1122)

More research should be done to understand what is going on here. It could be possible that JSChecker is not honoring suppressions on function bodies.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.