{"action":"created","issue":{"url":"https://api.github.com/repos/eslint/eslint/issues/820","labels_url":"https://api.github.com/repos/eslint/eslint/issues/820/labels{/name}","comments_url":"https://api.github.com/repos/eslint/eslint/issues/820/comments","events_url":"https://api.github.com/repos/eslint/eslint/issues/820/events","html_url":"https://github.com/eslint/eslint/issues/820","id":31900723,"number":820,"title":"Merge configs with their ancestors","user":{"login":"spadgos","id":426222,"avatar_url":"https://avatars.githubusercontent.com/u/426222?v=3","gravatar_id":"","url":"https://api.github.com/users/spadgos","html_url":"https://github.com/spadgos","followers_url":"https://api.github.com/users/spadgos/followers","following_url":"https://api.github.com/users/spadgos/following{/other_user}","gists_url":"https://api.github.com/users/spadgos/gists{/gist_id}","starred_url":"https://api.github.com/users/spadgos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spadgos/subscriptions","organizations_url":"https://api.github.com/users/spadgos/orgs","repos_url":"https://api.github.com/users/spadgos/repos","events_url":"https://api.github.com/users/spadgos/events{/privacy}","received_events_url":"https://api.github.com/users/spadgos/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/eslint/eslint/labels/bug","name":"bug","color":"fc2929"},{"url":"https://api.github.com/repos/eslint/eslint/labels/cli","name":"cli","color":"eb6420"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":15,"created_at":"2014-04-21T15:10:43Z","updated_at":"2015-06-12T17:10:12Z","closed_at":"2014-05-21T16:18:30Z","body":"Currently, if you have multiple eslintrc files in a directory hierarchy, whichever one is \"closest\" wins. This is good for simplicity, but does create problems if you want files in a certain directory to have only one or two different rules.\r\n\r\nAn example might be that you have a project-wide .eslintrc file in the root of your project which defines all the linting rules, globals, etc. In a \"tests\" directory however, you might want to have some extra globals (eg: ones defined by the test framework), but you have to *duplicate* the base .eslintrc file and then make sure you keep the two in sync if the rules ever change. Same could apply if you have some front-end JS as well as NodeJS files in the same project, which might have slightly different conventions.\r\n\r\nMy suggestion is to step up through the directories, merging together all .eslintrc files.\r\n\r\nYour thoughts?\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/eslint/eslint/issues/comments/111560133","html_url":"https://github.com/eslint/eslint/issues/820#issuecomment-111560133","issue_url":"https://api.github.com/repos/eslint/eslint/issues/820","id":111560133,"user":{"login":"ljharb","id":45469,"avatar_url":"https://avatars.githubusercontent.com/u/45469?v=3","gravatar_id":"","url":"https://api.github.com/users/ljharb","html_url":"https://github.com/ljharb","followers_url":"https://api.github.com/users/ljharb/followers","following_url":"https://api.github.com/users/ljharb/following{/other_user}","gists_url":"https://api.github.com/users/ljharb/gists{/gist_id}","starred_url":"https://api.github.com/users/ljharb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ljharb/subscriptions","organizations_url":"https://api.github.com/users/ljharb/orgs","repos_url":"https://api.github.com/users/ljharb/repos","events_url":"https://api.github.com/users/ljharb/events{/privacy}","received_events_url":"https://api.github.com/users/ljharb/received_events","type":"User","site_admin":false},"created_at":"2015-06-12T17:10:12Z","updated_at":"2015-06-12T17:10:12Z","body":"aha, thanks!"}}