{"action":"created","issue":{"url":"https://api.github.com/repos/eslint/eslint/issues/7967","repository_url":"https://api.github.com/repos/eslint/eslint","labels_url":"https://api.github.com/repos/eslint/eslint/issues/7967/labels{/name}","comments_url":"https://api.github.com/repos/eslint/eslint/issues/7967/comments","events_url":"https://api.github.com/repos/eslint/eslint/issues/7967/events","html_url":"https://github.com/eslint/eslint/issues/7967","id":202659234,"number":7967,"title":"Empty \"globals\" property causing an error in v3.0.0","user":{"login":"paul-barry-kenzan","id":12274057,"avatar_url":"https://avatars.githubusercontent.com/u/12274057?v=3","gravatar_id":"","url":"https://api.github.com/users/paul-barry-kenzan","html_url":"https://github.com/paul-barry-kenzan","followers_url":"https://api.github.com/users/paul-barry-kenzan/followers","following_url":"https://api.github.com/users/paul-barry-kenzan/following{/other_user}","gists_url":"https://api.github.com/users/paul-barry-kenzan/gists{/gist_id}","starred_url":"https://api.github.com/users/paul-barry-kenzan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/paul-barry-kenzan/subscriptions","organizations_url":"https://api.github.com/users/paul-barry-kenzan/orgs","repos_url":"https://api.github.com/users/paul-barry-kenzan/repos","events_url":"https://api.github.com/users/paul-barry-kenzan/events{/privacy}","received_events_url":"https://api.github.com/users/paul-barry-kenzan/received_events","type":"User","site_admin":false},"labels":[{"id":45711350,"url":"https://api.github.com/repos/eslint/eslint/labels/bug","name":"bug","color":"fc2929","default":true},{"id":82922548,"url":"https://api.github.com/repos/eslint/eslint/labels/core","name":"core","color":"c7def8","default":false},{"id":255319420,"url":"https://api.github.com/repos/eslint/eslint/labels/evaluating","name":"evaluating","color":"fef2c0","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":6,"created_at":"2017-01-23T21:43:02Z","updated_at":"2017-01-25T17:21:27Z","closed_at":null,"body":"<!--\r\nThis template is for bug reports. If you are reporting a bug, please continue on. If you are here for another reason, please see below:\r\n\r\n1. To propose a new rule: http://eslint.org/docs/developer-guide/contributing/new-rules\r\n2. To request a change: http://eslint.org/docs/developer-guide/contributing/changes\r\n3. If you have any questions, please stop by our chatroom: https://gitter.im/eslint/eslint\r\n\r\nNote that leaving sections blank will make it difficult for us to troubleshoot and we may have to close the issue.\r\n-->\r\n\r\n**Tell us about your environment**\r\n\r\n* **ESLint Version:** 3.14.0\r\n* **Node Version:** 5.7.0\r\n* **npm Version:** 3.3.8\r\n\r\n**What parser (default, Babel-ESLint, etc.) are you using?** None.\r\n\r\n**Please show your full configuration:**\r\n\r\n<!-- Paste your configuration below: -->\r\n```\r\n{\r\n    \"env\": {\r\n        \"browser\": true,\r\n        \"node\": true\r\n    },\r\n\r\n    \"globals\": {},\r\n\r\n    \"plugins\": [],\r\n    \"rules\": {\r\n        \"comma-dangle\": [2,\"never\"],\r\n        \"no-cond-assign\": 2,\r\n        \"no-console\": 2,\r\n        \"no-constant-condition\": 2,\r\n        \"no-control-regex\": 0,\r\n        \"no-debugger\": 0,\r\n        \"no-dupe-args\": 0,\r\n        \"no-dupe-keys\": 0,\r\n        \"no-duplicate-case\": 2,\r\n        \"no-empty-character-class\": 0,\r\n        \"no-empty\": 2,\r\n        \"no-ex-assign\": 2,\r\n        \"no-extra-boolean-cast\": 2,\r\n        \"no-extra-parens\": [2, \"all\", {\r\n            \"conditionalAssign\": false,\r\n            \"returnAssign\": false,\r\n            \"nestedBinaryExpressions\": false\r\n        }],\r\n        \"no-extra-semi\": 2,\r\n        \"no-func-assign\": 2,\r\n        \"no-inner-declarations\": 2,\r\n        \"no-invalid-regexp\": 0,\r\n        \"no-irregular-whitespace\": 2,\r\n        \"no-negated-in-lhs\": 2,\r\n        \"no-obj-calls\": 0,\r\n        \"no-regex-spaces\": 0,\r\n        \"no-sparse-arrays\": 2,\r\n        \"no-unreachable\": 2,\r\n        \"use-isnan\": 2,\r\n        \"valid-jsdoc\": 0,\r\n        \"valid-typeof\": 0,\r\n        \"no-unexpected-multiline\": 0,\r\n        \"accessor-pairs\": 2,\r\n        \"block-scoped-var\": 2,\r\n        \"complexity\": 2,\r\n        \"consistent-return\": 0,\r\n        \"curly\": 2,\r\n        \"default-case\": 2,\r\n        \"dot-notation\": 2,\r\n        \"dot-location\": 0,\r\n        \"eqeqeq\": [2,\"allow-null\"],\r\n        \"guard-for-in\": 0,\r\n        \"no-alert\": 0,\r\n        \"no-caller\": 0,\r\n        \"no-div-regex\": 0,\r\n        \"no-else-return\": 0,\r\n        \"no-empty-label\": 0,\r\n        \"no-eq-null\": 0,\r\n        \"no-eval\": 2,\r\n        \"no-extend-native\": 0,\r\n        \"no-extra-bind\": 2,\r\n        \"no-fallthrough\": 2,\r\n        \"no-floating-decimal\": 2,\r\n        \"no-implicit-coercion\": [2,{\"number\":true,\"string\":true,\"boolean\":false}],\r\n        \"no-implied-eval\": 2,\r\n        \"no-invalid-this\": 0,\r\n        \"no-iterator\": 2,\r\n        \"no-labels\": 0,\r\n        \"no-lone-blocks\": 0,\r\n        \"no-loop-func\": 2,\r\n        \"no-multi-spaces\": 2,\r\n        \"no-multi-str\": 0,\r\n        \"no-native-reassign\": 0,\r\n        \"no-new-func\": 0,\r\n        \"no-new-wrappers\": 2,\r\n        \"no-new\": 2,\r\n        \"no-octal-escape\": 0,\r\n        \"no-octal\": 0,\r\n        \"no-param-reassign\": 0,\r\n        \"no-process-env\": 0,\r\n        \"no-proto\": 0,\r\n        \"no-redeclare\": 2,\r\n        \"no-return-assign\": 0,\r\n        \"no-script-url\": 0,\r\n        \"no-self-compare\": 0,\r\n        \"no-sequences\": 0,\r\n        \"no-throw-literal\": 2,\r\n        \"no-unused-expressions\": 0,\r\n        \"no-useless-call\": 0,\r\n        \"no-void\": 0,\r\n        \"no-warning-comments\": [2,{\"terms\":[\"todo\",\" fixme\",\" TODO\",\" FIXME\"],\"location\":\"anywhere\"}],\r\n        \"no-with\": 0,\r\n        \"radix\": 2,\r\n        \"vars-on-top\": 2,\r\n        \"wrap-iife\": [2,\"inside\"],\r\n        \"yoda\": 0,\r\n        \"strict\": [2,\"global\"],\r\n        \"init-declarations\": 0,\r\n        \"no-catch-shadow\": 2,\r\n        \"no-delete-var\": 2,\r\n        \"no-label-var\": 0,\r\n        \"no-shadow-restricted-names\": 0,\r\n        \"no-shadow\": 0,\r\n        \"no-undef-init\": 0,\r\n        \"no-undef\": 0,\r\n        \"no-undefined\": 0,\r\n        \"no-unused-vars\": 2,\r\n        \"no-use-before-define\": 0,\r\n        \"callback-return\": 0,\r\n        \"handle-callback-err\": 2,\r\n        \"no-mixed-requires\": 0,\r\n        \"no-new-require\": 0,\r\n        \"no-path-concat\": 2,\r\n        \"no-process-exit\": 2,\r\n        \"no-restricted-modules\": 0,\r\n        \"no-sync\": 0,\r\n        \"array-bracket-spacing\": 2,\r\n        \"brace-style\": [2,\"1tbs\",{\"allowSingleLine\":true}],\r\n        \"camelcase\": 2,\r\n        \"comma-spacing\": 2,\r\n        \"comma-style\": [2,\"last\"],\r\n        \"computed-property-spacing\": 0,\r\n        \"consistent-this\": [0, \"self\", \"that\"],\r\n        \"eol-last\": 0,\r\n        \"func-names\": 0,\r\n        \"func-style\": 0,\r\n        \"id-length\": 0,\r\n        \"indent\": [2, 2, {\r\n            \"VariableDeclarator\": 1,\r\n            \"SwitchCase\": 1\r\n        }],\r\n        \"key-spacing\": [2,{\"beforeColon\":false,\"afterColon\":true}],\r\n        \"lines-around-comment\": 0,\r\n        \"linebreak-style\": 0,\r\n        \"max-nested-callbacks\": [2, {\"maximum\":8}],\r\n        \"new-cap\": 2,\r\n        \"new-parens\": 2,\r\n        \"newline-after-var\": 2,\r\n        \"no-array-constructor\": 2,\r\n        \"no-continue\": 0,\r\n        \"no-inline-comments\": 0,\r\n        \"no-lonely-if\": 0,\r\n        \"no-mixed-spaces-and-tabs\": [2,\"smart-tabs\"],\r\n        \"no-multiple-empty-lines\": [2,{\"max\":1}],\r\n        \"no-nested-ternary\": 0,\r\n        \"no-new-object\": 2,\r\n        \"no-spaced-func\": 2,\r\n        \"no-ternary\": 0,\r\n        \"no-trailing-spaces\": 0,\r\n        \"no-underscore-dangle\": [2, { \"allowAfterThis\": true }],\r\n        \"no-unneeded-ternary\": 2,\r\n        \"object-curly-spacing\": [2,\"always\",{}],\r\n        \"one-var\": 0,\r\n        \"operator-assignment\": 0,\r\n        \"operator-linebreak\": 0,\r\n        \"padded-blocks\": [2, {\"switches\":\"always\"}],\r\n        \"quote-props\": [2, \"consistent\"],\r\n        \"quotes\": [2,\"single\",\"avoid-escape\"],\r\n        \"id-match\": 0,\r\n        \"semi-spacing\": [2,{\"after\":true}],\r\n        \"semi\": [2,\"always\"],\r\n        \"sort-vars\": 0,\r\n        \"keyword-spacing\": 2,\r\n        \"space-before-blocks\": 2,\r\n        \"space-before-function-paren\": 0,\r\n        \"space-in-parens\": 2,\r\n        \"space-infix-ops\": 2,\r\n        \"space-return-throw-case\": 0,\r\n        \"space-unary-ops\": 0,\r\n        \"spaced-comment\": [2, \"always\", {\r\n            \"line\": {\r\n                \"markers\": [\"/\"],\r\n                \"exceptions\": [\"-\", \"+\"]\r\n            },\r\n            \"block\": {\r\n                \"markers\": [\"!\"],\r\n                \"exceptions\": [\"*\"]\r\n            }\r\n        }],\r\n        \"wrap-regex\": 2,\r\n        \"arrow-parens\": 0,\r\n        \"arrow-spacing\": 0,\r\n        \"constructor-super\": 0,\r\n        \"generator-star-spacing\": 0,\r\n        \"no-class-assign\": 0,\r\n        \"no-const-assign\": 0,\r\n        \"no-this-before-super\": 0,\r\n        \"no-var\": 0,\r\n        \"object-shorthand\": 0,\r\n        \"prefer-const\": 0,\r\n        \"prefer-spread\": 0,\r\n        \"prefer-reflect\": 0,\r\n        \"require-yield\": 0,\r\n        \"max-depth\": [2,4],\r\n        \"max-len\": [2,200,1,{\"ignorePattern\":\"true\"}],\r\n        \"max-params\": 0,\r\n        \"max-statements\": 0,\r\n        \"no-bitwise\": [2, { \"allow\": [\"~\"] }],\r\n        \"no-plusplus\": 2\r\n    }\r\n}\r\n```\r\n\r\n**What did you do? Please include the actual source code causing the issue.**\r\nWe updated `gulp-eslint` from `2.0.0` to `3.0.1`, which internally updated `ESLint` from `^2.0.0` to `^3.0.0`. Our configuration remained the same, however, we're now receiving the error described below.\r\n\r\n**What did you expect to happen?**\r\nWith the exception of the breaking changes mentioned in the Migration to 3.0.0 guide, we expected to be able to update our dependencies with ease. \r\n\r\n**What actually happened? Please include the actual, raw output from ESLint.**\r\nWhen attempting to run the same, unchanged task as we have for weeks/months, we now receive the following error which pinpoints the `globals` property being an issue. By chance, I decided to remove the empty `globals` property and was able to successfully run the lint task. Is there any information why an empty `globals` property throws an error? Is it possible to have such information added to ESLint documentation somewhere?\r\n\r\nAdditional discussions around GitHub:\r\n - https://github.com/adametry/gulp-eslint/issues/177\r\n - https://github.com/eslint/eslint/pull/6922\r\n\r\nNeither of the aforementioned discussions mentions a solution. \r\n\r\n```\r\n/Users/path/to/project/directory/node_modules/eslint/lib/config.js:214\r\n        this.globals = (options.globals || []).reduce((globals, def) => {\r\n                                               ^\r\n\r\nTypeError: (options.globals || []).reduce is not a function\r\n    at new Config (/Users/paulbarry/Projects/kenzan/kenzanlabs/pipeline-validate-html/node_modules/eslint/lib/config.js:214:48)\r\n    at CLIEngine.executeOnText (/Users/paulbarry/Projects/kenzan/kenzanlabs/pipeline-validate-html/node_modules/eslint/lib/cli-engine.js:741:28)\r\n    at verify (/Users/paulbarry/Projects/kenzan/kenzanlabs/pipeline-validate-html/node_modules/gulp-eslint/index.js:20:25)\r\n    at Transform._transform (/Users/paulbarry/Projects/kenzan/kenzanlabs/pipeline-validate-html/node_modules/gulp-eslint/index.js:70:17)\r\n    at Transform._read (_stream_transform.js:167:10)\r\n    at Transform._write (_stream_transform.js:155:12)\r\n    at doWrite (_stream_writable.js:301:12)\r\n    at writeOrBuffer (_stream_writable.js:287:5)\r\n    at Transform.Writable.write (_stream_writable.js:215:11)\r\n    at Stream.method [as write] (/Users/paulbarry/Projects/kenzan/kenzanlabs/pipeline-validate-html/node_modules/duplexer/index.js:47:39)\r\n\r\n```\r\n"},"comment":{"url":"https://api.github.com/repos/eslint/eslint/issues/comments/275172286","html_url":"https://github.com/eslint/eslint/issues/7967#issuecomment-275172286","issue_url":"https://api.github.com/repos/eslint/eslint/issues/7967","id":275172286,"user":{"login":"nzakas","id":38546,"avatar_url":"https://avatars.githubusercontent.com/u/38546?v=3","gravatar_id":"","url":"https://api.github.com/users/nzakas","html_url":"https://github.com/nzakas","followers_url":"https://api.github.com/users/nzakas/followers","following_url":"https://api.github.com/users/nzakas/following{/other_user}","gists_url":"https://api.github.com/users/nzakas/gists{/gist_id}","starred_url":"https://api.github.com/users/nzakas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nzakas/subscriptions","organizations_url":"https://api.github.com/users/nzakas/orgs","repos_url":"https://api.github.com/users/nzakas/repos","events_url":"https://api.github.com/users/nzakas/events{/privacy}","received_events_url":"https://api.github.com/users/nzakas/received_events","type":"User","site_admin":false},"created_at":"2017-01-25T17:21:27Z","updated_at":"2017-01-25T17:21:27Z","body":"It's still unclear to me if this is a gulp-eslint issue or not. Can you please confirm if you see the same problem using ESLint directly?"}}
{"actor":{"display_login":"nzakas"}}