{"action":"created","issue":{"url":"https://api.github.com/repos/eslint/eslint/issues/3109","labels_url":"https://api.github.com/repos/eslint/eslint/issues/3109/labels{/name}","comments_url":"https://api.github.com/repos/eslint/eslint/issues/3109/comments","events_url":"https://api.github.com/repos/eslint/eslint/issues/3109/events","html_url":"https://github.com/eslint/eslint/issues/3109","id":96379602,"number":3109,"title":"root: true not behaving correctly for config","user":{"login":"gyandeeps","id":5554486,"avatar_url":"https://avatars.githubusercontent.com/u/5554486?v=3","gravatar_id":"","url":"https://api.github.com/users/gyandeeps","html_url":"https://github.com/gyandeeps","followers_url":"https://api.github.com/users/gyandeeps/followers","following_url":"https://api.github.com/users/gyandeeps/following{/other_user}","gists_url":"https://api.github.com/users/gyandeeps/gists{/gist_id}","starred_url":"https://api.github.com/users/gyandeeps/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gyandeeps/subscriptions","organizations_url":"https://api.github.com/users/gyandeeps/orgs","repos_url":"https://api.github.com/users/gyandeeps/repos","events_url":"https://api.github.com/users/gyandeeps/events{/privacy}","received_events_url":"https://api.github.com/users/gyandeeps/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/eslint/eslint/labels/accepted","name":"accepted","color":"0052cc"},{"url":"https://api.github.com/repos/eslint/eslint/labels/bug","name":"bug","color":"fc2929"},{"url":"https://api.github.com/repos/eslint/eslint/labels/core","name":"core","color":"c7def8"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-07-21T18:08:05Z","updated_at":"2015-07-21T18:36:36Z","closed_at":null,"body":"Version: `master`\r\nParser: `Default`\r\n\r\nCommand to run: `npm test` on master\r\n\r\nScenario: I have `eslint` folder and also have an `.eslintrc` file alongside it. when I run the `npm test` command on `eslint` folder it also grabs the `.eslintrc` file from outside eslint folder. Important to note that our `.eslintrc` file has `root:true` so that means it should not grab the file from outside.\r\n\r\nOutput:\r\n\r\n```sh\r\n$ DEBUG=eslint:* npm test\r\n\r\n> eslint@1.0.0-rc-1 test c:\\Users\\gs025879\\Documents\\webstrom\\eslint\r\n> node Makefile.js test\r\n\r\nValidating Makefile.js\r\nTue, 21 Jul 2015 18:01:15 GMT eslint:cli Running on files\r\nTue, 21 Jul 2015 18:01:15 GMT eslint:cli-engine Processing ./Makefile.js\r\nTue, 21 Jul 2015 18:01:15 GMT eslint:cli-engine Linting ./Makefile.js\r\nTue, 21 Jul 2015 18:01:15 GMT eslint:config Constructing config for c:\\Users\\gs025879\\Documents\\webstrom\\eslint\\Makefile.js\r\nTue, 21 Jul 2015 18:01:15 GMT eslint:config Using .eslintrc and package.json files\r\nTue, 21 Jul 2015 18:01:15 GMT eslint:config Loading c:\\Users\\gs025879\\Documents\\webstrom\\eslint\\.eslintrc\r\nTue, 21 Jul 2015 18:01:15 GMT eslint:config Using c:\\Users\\gs025879\\Documents\\webstrom\\eslint\\.eslintrc\r\nTue, 21 Jul 2015 18:01:15 GMT eslint:config Loading c:\\Users\\gs025879\\Documents\\webstrom\\eslint\\package.json\r\nTue, 21 Jul 2015 18:01:15 GMT eslint:config Loading c:\\Users\\gs025879\\Documents\\webstrom\\.eslintrc\r\nc:\\Users\\gs025879\\Documents\\webstrom\\eslint\\lib\\config.js:134\r\n                    throw e;\r\n                          ^\r\nError: Cannot find module 'eslint-config-ideal'\r\nReferenced from: c:\\Users\\gs025879\\Documents\\webstrom\\.eslintrc\r\n    at Function.Module._resolveFilename (module.js:336:15)\r\n    at Function.Module._load (module.js:278:25)\r\n    at Module.require (module.js:365:17)\r\n    at require (module.js:384:17)\r\n    at loadConfig (c:\\Users\\gs025879\\Documents\\webstrom\\eslint\\lib\\config.js:97:48)\r\n    at c:\\Users\\gs025879\\Documents\\webstrom\\eslint\\lib\\config.js:128:46\r\n    at Array.reduceRight (native)\r\n    at loadConfig (c:\\Users\\gs025879\\Documents\\webstrom\\eslint\\lib\\config.js:112:36)\r\n    at getLocalConfig (c:\\Users\\gs025879\\Documents\\webstrom\\eslint\\lib\\config.js:231:23)\r\n    at Config.getConfig (c:\\Users\\gs025879\\Documents\\webstrom\\eslint\\lib\\config.js:364:22)\r\nValidating JSON Files\r\n```"},"comment":{"url":"https://api.github.com/repos/eslint/eslint/issues/comments/123431688","html_url":"https://github.com/eslint/eslint/issues/3109#issuecomment-123431688","issue_url":"https://api.github.com/repos/eslint/eslint/issues/3109","id":123431688,"user":{"login":"gyandeeps","id":5554486,"avatar_url":"https://avatars.githubusercontent.com/u/5554486?v=3","gravatar_id":"","url":"https://api.github.com/users/gyandeeps","html_url":"https://github.com/gyandeeps","followers_url":"https://api.github.com/users/gyandeeps/followers","following_url":"https://api.github.com/users/gyandeeps/following{/other_user}","gists_url":"https://api.github.com/users/gyandeeps/gists{/gist_id}","starred_url":"https://api.github.com/users/gyandeeps/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gyandeeps/subscriptions","organizations_url":"https://api.github.com/users/gyandeeps/orgs","repos_url":"https://api.github.com/users/gyandeeps/repos","events_url":"https://api.github.com/users/gyandeeps/events{/privacy}","received_events_url":"https://api.github.com/users/gyandeeps/received_events","type":"User","site_admin":false},"created_at":"2015-07-21T18:36:35Z","updated_at":"2015-07-21T18:36:35Z","body":"I think why its happening is before we can say that we are going to ignore a particular config file, we have to load the config. In my case during the load of that it blows up because I dont have `eslint-config-ideal` installed.\r\nI think the way to fix this is as soon as you find a config file with `root:true`, then we should exit the loop. As of now we keep reading and loading configs.\r\n\r\nWould this change makes sense @nzakas and @IanVS . If yes, then I will implement this change."}}