{"action":"created","issue":{"url":"https://api.github.com/repos/eslint/eslint/issues/5949","repository_url":"https://api.github.com/repos/eslint/eslint","labels_url":"https://api.github.com/repos/eslint/eslint/issues/5949/labels{/name}","comments_url":"https://api.github.com/repos/eslint/eslint/issues/5949/comments","events_url":"https://api.github.com/repos/eslint/eslint/issues/5949/events","html_url":"https://github.com/eslint/eslint/issues/5949","id":150656490,"number":5949,"title":"Proposed Rule: Enforce lines between class methods","user":{"login":"LinusU","id":189580,"avatar_url":"https://avatars.githubusercontent.com/u/189580?v=3","gravatar_id":"","url":"https://api.github.com/users/LinusU","html_url":"https://github.com/LinusU","followers_url":"https://api.github.com/users/LinusU/followers","following_url":"https://api.github.com/users/LinusU/following{/other_user}","gists_url":"https://api.github.com/users/LinusU/gists{/gist_id}","starred_url":"https://api.github.com/users/LinusU/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LinusU/subscriptions","organizations_url":"https://api.github.com/users/LinusU/orgs","repos_url":"https://api.github.com/users/LinusU/repos","events_url":"https://api.github.com/users/LinusU/events{/privacy}","received_events_url":"https://api.github.com/users/LinusU/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/eslint/eslint/labels/evaluating","name":"evaluating","color":"fef2c0"},{"url":"https://api.github.com/repos/eslint/eslint/labels/feature","name":"feature","color":"bfd4f2"},{"url":"https://api.github.com/repos/eslint/eslint/labels/rule","name":"rule","color":"fbca04"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":9,"created_at":"2016-04-24T12:18:35Z","updated_at":"2016-04-25T02:58:59Z","closed_at":null,"body":"I would like to propose a rule that enforces empty lines between class functions. When enabled and set to \"always\" it should make sure that there is at least one empty line between every method in a class declaration. If set to \"never\" the opposite would be true, that is, there should not be any empty lines at all between class methods.\r\n\r\nA line with a comment on should not count as an empty line.\r\n\r\nThis rule should not concern itself with the class padding (empty lines before the first method and after the last method) since that is already taken care of by `padded-blocks`.\r\n\r\nIt also shouldn't concern itself with how many empty lines that are present, since that is a job for `no-multiple-empty-lines`.\r\n\r\nThis is a stylistic rule.\r\n\r\nThe following patterns would be considered problems:\r\n\r\n```javascript\r\nclass Test1 {\r\n  constructor () {\r\n    // ...\r\n  }\r\n  otherFunc () {\r\n    // ...\r\n  }\r\n}\r\n\r\nclass Test2 {\r\n  constructor () {\r\n    // ...\r\n  }\r\n  // comment\r\n  otherFunc () {\r\n    // ...\r\n  }\r\n}\r\n```\r\n\r\nThe following pattern would be considered valid:\r\n\r\n```javascript\r\nclass Test3 {\r\n  constructor () {\r\n    // ...\r\n  }\r\n\r\n  otherFunc () {\r\n    // ...\r\n  }\r\n}\r\n\r\nclass Test4 {\r\n  constructor () {\r\n    // ...\r\n  }\r\n\r\n\r\n\r\n  otherFunc () {\r\n    // ...\r\n  }\r\n}\r\n\r\nclass Test5 {\r\n  constructor () {\r\n    // ...\r\n  }\r\n\r\n  // comment\r\n  otherFunc () {\r\n    // ...\r\n  }\r\n}\r\n\r\nclass Test6 {\r\n  constructor () {\r\n    // ...\r\n  }\r\n\r\n  // Comment\r\n\r\n  otherFunc () {\r\n    // ...\r\n  }\r\n}\r\n```"},"comment":{"url":"https://api.github.com/repos/eslint/eslint/issues/comments/214101091","html_url":"https://github.com/eslint/eslint/issues/5949#issuecomment-214101091","issue_url":"https://api.github.com/repos/eslint/eslint/issues/5949","id":214101091,"user":{"login":"mikesherov","id":364532,"avatar_url":"https://avatars.githubusercontent.com/u/364532?v=3","gravatar_id":"","url":"https://api.github.com/users/mikesherov","html_url":"https://github.com/mikesherov","followers_url":"https://api.github.com/users/mikesherov/followers","following_url":"https://api.github.com/users/mikesherov/following{/other_user}","gists_url":"https://api.github.com/users/mikesherov/gists{/gist_id}","starred_url":"https://api.github.com/users/mikesherov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mikesherov/subscriptions","organizations_url":"https://api.github.com/users/mikesherov/orgs","repos_url":"https://api.github.com/users/mikesherov/repos","events_url":"https://api.github.com/users/mikesherov/events{/privacy}","received_events_url":"https://api.github.com/users/mikesherov/received_events","type":"User","site_admin":false},"created_at":"2016-04-25T02:58:58Z","updated_at":"2016-04-25T02:58:58Z","body":"I'd say this belongs as a configuration option of #3092 "}}