{"action":"created","issue":{"url":"https://api.github.com/repos/openlayers/ol3/issues/4793","repository_url":"https://api.github.com/repos/openlayers/ol3","labels_url":"https://api.github.com/repos/openlayers/ol3/issues/4793/labels{/name}","comments_url":"https://api.github.com/repos/openlayers/ol3/issues/4793/comments","events_url":"https://api.github.com/repos/openlayers/ol3/issues/4793/events","html_url":"https://github.com/openlayers/ol3/pull/4793","id":131417147,"number":4793,"title":"[WIP] New type inference","user":{"login":"gberaudo","id":7294662,"avatar_url":"https://avatars.githubusercontent.com/u/7294662?v=3","gravatar_id":"","url":"https://api.github.com/users/gberaudo","html_url":"https://github.com/gberaudo","followers_url":"https://api.github.com/users/gberaudo/followers","following_url":"https://api.github.com/users/gberaudo/following{/other_user}","gists_url":"https://api.github.com/users/gberaudo/gists{/gist_id}","starred_url":"https://api.github.com/users/gberaudo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gberaudo/subscriptions","organizations_url":"https://api.github.com/users/gberaudo/orgs","repos_url":"https://api.github.com/users/gberaudo/repos","events_url":"https://api.github.com/users/gberaudo/events{/privacy}","received_events_url":"https://api.github.com/users/gberaudo/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2016-02-04T17:24:05Z","updated_at":"2016-04-29T13:03:59Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/openlayers/ol3/pulls/4793","html_url":"https://github.com/openlayers/ol3/pull/4793","diff_url":"https://github.com/openlayers/ol3/pull/4793.diff","patch_url":"https://github.com/openlayers/ol3/pull/4793.patch"},"body":"Switch to the new type inference version of the compiler.\r\nSee https://github.com/google/closure-compiler/wiki/Using-NTI-%28new-type-inference%29\r\n\r\nThere are only 2 errors left:\r\n```\r\nERR! compile /home/gberaudo/dev/ol3/src/ol/observable.js:22: ERROR - ol.Observable cannot extend this type; structs can only extend structs\r\nERR! compile ol.Observable = function() {\r\nERR! compile                 ^\r\nERR! compile \r\nERR! compile \r\nERR! compile /home/gberaudo/dev/ol3/src/ol/renderer/maprenderer.js:38: ERROR - ol.renderer.Map cannot extend this type; structs can only extend structs\r\nERR! compile ol.renderer.Map = function(container, map) {\r\nERR! compile                   ^\r\nERR! compile \r\nERR! compile \r\nERR! compile 2 error(s), 0\r\nERR! compile  warning(s)\r\nERR! compile \r\nERR! Process exited with non-zero status, see log for more detail: 2 \r\n```\r\n\r\nTODO:\r\n- [x] fix `structs can only extend structs` error;\r\n- [ ] fix publish.js\r\n"},"comment":{"url":"https://api.github.com/repos/openlayers/ol3/issues/comments/215705518","html_url":"https://github.com/openlayers/ol3/pull/4793#issuecomment-215705518","issue_url":"https://api.github.com/repos/openlayers/ol3/issues/4793","id":215705518,"user":{"login":"probins","id":283514,"avatar_url":"https://avatars.githubusercontent.com/u/283514?v=3","gravatar_id":"","url":"https://api.github.com/users/probins","html_url":"https://github.com/probins","followers_url":"https://api.github.com/users/probins/followers","following_url":"https://api.github.com/users/probins/following{/other_user}","gists_url":"https://api.github.com/users/probins/gists{/gist_id}","starred_url":"https://api.github.com/users/probins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/probins/subscriptions","organizations_url":"https://api.github.com/users/probins/orgs","repos_url":"https://api.github.com/users/probins/repos","events_url":"https://api.github.com/users/probins/events{/privacy}","received_events_url":"https://api.github.com/users/probins/received_events","type":"User","site_admin":false},"created_at":"2016-04-29T13:03:59Z","updated_at":"2016-04-29T13:03:59Z","body":"@gberaudo I notice a couple of typedef-related changes in here. First, LRUCache looks like it should be changed to an interface, so I won't include this in my typedef PR. Second, in `raster/operation.js` you're adding `goog.require('ol.raster.Pixel')` even though that is only used in comments/typedefs. Were you getting some sort of error here that prompted you to add the `goog.require()`?"}}