{"action":"closed","issue":{"url":"https://api.github.com/repos/eslint/eslint/issues/2420","labels_url":"https://api.github.com/repos/eslint/eslint/issues/2420/labels{/name}","comments_url":"https://api.github.com/repos/eslint/eslint/issues/2420/comments","events_url":"https://api.github.com/repos/eslint/eslint/issues/2420/events","html_url":"https://github.com/eslint/eslint/issues/2420","id":72510931,"number":2420,"title":"Create an --update command for rules changes","user":{"login":"IanVS","id":4616705,"avatar_url":"https://avatars.githubusercontent.com/u/4616705?v=3","gravatar_id":"","url":"https://api.github.com/users/IanVS","html_url":"https://github.com/IanVS","followers_url":"https://api.github.com/users/IanVS/followers","following_url":"https://api.github.com/users/IanVS/following{/other_user}","gists_url":"https://api.github.com/users/IanVS/gists{/gist_id}","starred_url":"https://api.github.com/users/IanVS/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/IanVS/subscriptions","organizations_url":"https://api.github.com/users/IanVS/orgs","repos_url":"https://api.github.com/users/IanVS/repos","events_url":"https://api.github.com/users/IanVS/events{/privacy}","received_events_url":"https://api.github.com/users/IanVS/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/eslint/eslint/labels/question","name":"question","color":"cc317c"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-05-01T20:08:37Z","updated_at":"2015-06-29T16:33:40Z","closed_at":"2015-06-29T16:33:39Z","body":"Once https://github.com/eslint/eslint/pull/2382 lands, it will be easier to add ESLint to a project.  Could something similar be done for users updating from one version to another?  As mentioned in https://github.com/eslint/eslint/issues/2203#issuecomment-89794504, the process is not always the most straightforward, mostly because of rules and options being added/changed.  It would be great if this process could be smoothed out.\r\n\r\nI propose that an `eslint --update` command could be added which would use inquirer similarly to the `--init` command to upgrade ESLint to the latest version and let users know what rules have been added and then ask them whether they would like to enable them (in the .eslintrc in current directory, perhaps?).  Additionally, once https://github.com/eslint/eslint/pull/2179 lands, new options in existing rules could also be presented to the user. \r\n\r\nThe final result could look something like:\r\n\r\n```bash\r\n$ ESLint --update\r\n\r\n[?] Upgrade from ESLint 0.18.0 to 0.20.0: (Y/n) y\r\n\r\n# npm update eslint\r\n\r\n[?] 3 New rules available.  Examine: (Y/n) y\r\n\r\n[?] \"no-continue\" [0.19.0] disallow use of the continue statement (off by default). Turn on: (y/N) n\r\n[?] \"operator-linebreak\" [0.19.0] enforce operators to be placed before or after line breaks (off by default) Turn on: (y/N) n\r\n[?] \"object-shorthand\" [0.20.0] require method and property shorthand syntax for object literals (off by default) Turn on: (y/N) y\r\n[?] \"object-shorthand\" options:\r\n    1) \"always\" (default) #default answer\r\n    2) \"methods\"\r\n    3) \"properties\"\r\n    4) \"never\"\r\n    Answer: 2\r\n\r\n[?] 2 existing rules have had option changes.  Examine: (Y/n) y\r\n\r\n[?] \"quotes\" options:\r\n    1) \"double\" (current)  #default answer\r\n    2) \"single\"\r\n    3) \"backtick\" (new)\r\n    Answer: 3\r\n\r\n.\r\n.\r\n.\r\n\r\nESLint successfully upgraded from 0.18.0 to 0.20.0!\r\n```\r\n\r\nI've no idea if this is really possible or wise, but something like this sure would be nice to have (from a user's perspective)!"}}