payload: {"action":"created","issue":{"url":"https://api.github.com/repos/ModCoderPack/MCPBot-Issues/issues/816","repository_url":"https://api.github.com/repos/ModCoderPack/MCPBot-Issues","labels_url":"https://api.github.com/repos/ModCoderPack/MCPBot-Issues/issues/816/labels{/name}","comments_url":"https://api.github.com/repos/ModCoderPack/MCPBot-Issues/issues/816/comments","events_url":"https://api.github.com/repos/ModCoderPack/MCPBot-Issues/issues/816/events","html_url":"https://github.com/ModCoderPack/MCPBot-Issues/issues/816","id":437418821,"node_id":"MDU6SXNzdWU0Mzc0MTg4MjE=","number":816,"title":"Drop \"I\" prefix for interfaces","user":{"login":"kashike","id":5474071,"node_id":"MDQ6VXNlcjU0NzQwNzE=","avatar_url":"https://avatars0.githubusercontent.com/u/5474071?v=4","gravatar_id":"","url":"https://api.github.com/users/kashike","html_url":"https://github.com/kashike","followers_url":"https://api.github.com/users/kashike/followers","following_url":"https://api.github.com/users/kashike/following{/other_user}","gists_url":"https://api.github.com/users/kashike/gists{/gist_id}","starred_url":"https://api.github.com/users/kashike/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kashike/subscriptions","organizations_url":"https://api.github.com/users/kashike/orgs","repos_url":"https://api.github.com/users/kashike/repos","events_url":"https://api.github.com/users/kashike/events{/privacy}","received_events_url":"https://api.github.com/users/kashike/received_events","type":"User","site_admin":false},"labels":[{"id":233417461,"node_id":"MDU6TGFiZWwyMzM0MTc0NjE=","url":"https://api.github.com/repos/ModCoderPack/MCPBot-Issues/labels/class%20name","name":"class name","color":"fad8c7","default":false},{"id":330920410,"node_id":"MDU6TGFiZWwzMzA5MjA0MTA=","url":"https://api.github.com/repos/ModCoderPack/MCPBot-Issues/labels/modder%20comments%20wanted","name":"modder comments wanted","color":"5319e7","default":false}],"state":"open","locked":false,"assignee":{"login":"kashike","id":5474071,"node_id":"MDQ6VXNlcjU0NzQwNzE=","avatar_url":"https://avatars0.githubusercontent.com/u/5474071?v=4","gravatar_id":"","url":"https://api.github.com/users/kashike","html_url":"https://github.com/kashike","followers_url":"https://api.github.com/users/kashike/followers","following_url":"https://api.github.com/users/kashike/following{/other_user}","gists_url":"https://api.github.com/users/kashike/gists{/gist_id}","starred_url":"https://api.github.com/users/kashike/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kashike/subscriptions","organizations_url":"https://api.github.com/users/kashike/orgs","repos_url":"https://api.github.com/users/kashike/repos","events_url":"https://api.github.com/users/kashike/events{/privacy}","received_events_url":"https://api.github.com/users/kashike/received_events","type":"User","site_admin":false},"assignees":[{"login":"kashike","id":5474071,"node_id":"MDQ6VXNlcjU0NzQwNzE=","avatar_url":"https://avatars0.githubusercontent.com/u/5474071?v=4","gravatar_id":"","url":"https://api.github.com/users/kashike","html_url":"https://github.com/kashike","followers_url":"https://api.github.com/users/kashike/followers","following_url":"https://api.github.com/users/kashike/following{/other_user}","gists_url":"https://api.github.com/users/kashike/gists{/gist_id}","starred_url":"https://api.github.com/users/kashike/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kashike/subscriptions","organizations_url":"https://api.github.com/users/kashike/orgs","repos_url":"https://api.github.com/users/kashike/repos","events_url":"https://api.github.com/users/kashike/events{/privacy}","received_events_url":"https://api.github.com/users/kashike/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/ModCoderPack/MCPBot-Issues/milestones/12","html_url":"https://github.com/ModCoderPack/MCPBot-Issues/milestone/12","labels_url":"https://api.github.com/repos/ModCoderPack/MCPBot-Issues/milestones/12/labels","id":3576852,"node_id":"MDk6TWlsZXN0b25lMzU3Njg1Mg==","number":12,"title":"1.14.0","description":"","creator":{"login":"kashike","id":5474071,"node_id":"MDQ6VXNlcjU0NzQwNzE=","avatar_url":"https://avatars0.githubusercontent.com/u/5474071?v=4","gravatar_id":"","url":"https://api.github.com/users/kashike","html_url":"https://github.com/kashike","followers_url":"https://api.github.com/users/kashike/followers","following_url":"https://api.github.com/users/kashike/following{/other_user}","gists_url":"https://api.github.com/users/kashike/gists{/gist_id}","starred_url":"https://api.github.com/users/kashike/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kashike/subscriptions","organizations_url":"https://api.github.com/users/kashike/orgs","repos_url":"https://api.github.com/users/kashike/repos","events_url":"https://api.github.com/users/kashike/events{/privacy}","received_events_url":"https://api.github.com/users/kashike/received_events","type":"User","site_admin":false},"open_issues":33,"closed_issues":1,"state":"open","created_at":"2018-08-16T17:59:18Z","updated_at":"2019-04-26T18:35:51Z","due_on":null,"closed_at":null},"comments":65,"created_at":"2019-04-25T22:10:01Z","updated_at":"2019-04-27T20:08:34Z","closed_at":null,"author_association":"COLLABORATOR","body":"We're planning to do the following changes to make things consistent, and 1.14 is a good time to do it with the large changes.\r\n\r\nDo note that these are only what *vanilla* names will use - you're free to name your own classes in your mods however you like.\r\n\r\n___\r\n\r\n### Propsed change\r\n- Drop the `I` prefix for interfaces\r\n  - Lex is to blame for this being a thing at all: https://github.com/ModCoderPack/MCPBot-Issues/issues/814#issuecomment-486855745\r\n  - Do note that if we keep the prefix, we might experience a single class going through several names across versions, since Mojang might change it back and forth from an interface to a class. With each version, we'd have to drop and reintroduce the `I` prefix. An example of this is `IBlockState`, which in 1.14 became an abstract class and hence would be renamed to `BlockState` no matter what we decide in this issue.\r\n\r\n___\r\n\r\nPlease react with :+1: if you are in favour, and :-1: if you are not in favour.\r\n\r\nIt it **HIGHLY** encouraged that you read all responses to this, you can change your vote at any time up until the deadline. Please take this seriously as all results are final after the deadline.\r\n\r\nDeadline for feedback and voting is Noon PDT Monday (29/04/2019).\r\n\r\nref #814"},"comment":{"url":"https://api.github.com/repos/ModCoderPack/MCPBot-Issues/issues/comments/487315939","html_url":"https://github.com/ModCoderPack/MCPBot-Issues/issues/816#issuecomment-487315939","issue_url":"https://api.github.com/repos/ModCoderPack/MCPBot-Issues/issues/816","id":487315939,"node_id":"MDEyOklzc3VlQ29tbWVudDQ4NzMxNTkzOQ==","user":{"login":"ConnorJC3","id":6501170,"node_id":"MDQ6VXNlcjY1MDExNzA=","avatar_url":"https://avatars2.githubusercontent.com/u/6501170?v=4","gravatar_id":"","url":"https://api.github.com/users/ConnorJC3","html_url":"https://github.com/ConnorJC3","followers_url":"https://api.github.com/users/ConnorJC3/followers","following_url":"https://api.github.com/users/ConnorJC3/following{/other_user}","gists_url":"https://api.github.com/users/ConnorJC3/gists{/gist_id}","starred_url":"https://api.github.com/users/ConnorJC3/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ConnorJC3/subscriptions","organizations_url":"https://api.github.com/users/ConnorJC3/orgs","repos_url":"https://api.github.com/users/ConnorJC3/repos","events_url":"https://api.github.com/users/ConnorJC3/events{/privacy}","received_events_url":"https://api.github.com/users/ConnorJC3/received_events","type":"User","site_admin":false},"created_at":"2019-04-27T20:08:34Z","updated_at":"2019-04-27T20:08:34Z","author_association":"NONE","body":"> For those that think a few of us are gatekeeping when talking about larger projects we are not.\r\n\r\nok, thanks\r\n\r\n> How a lot of us older developers have learned to leverage it...\r\n\r\nCould you please stop gatekeeping then?\r\n\r\nIt's really unfortunate this issue seems like it won't pass, because it actually achieves what many no voters want (reducing class/interface name churn).\r\n\r\n---\r\n\r\n> That is really what I've been arguing against this entire time. Most people have been arguing for or against based on personal coding methods or what some other company uses as a standard.\r\n\r\nThe information in this thread is spread out, so here's a list of reasons MCP should adopt this change that have nothing to do with personal preference (somewhat listed from most to least important):\r\n\r\n- The prefix creates name churn as vanilla often changes between use of an interface and abstract class\r\n- Mojang themselves and most (all?) of vanilla's dependent libraries do not use the prefix\r\n- Although `I` as a prefix may have been the dominant convention at some time in the past, not using `I` is the most common practice in both the JRE and most popular public java projects\r\n- The current naming scheme of `IFoo` and `Foo` is misleading and visual noise - switching these names to actually describe what they do is a positive\r\n- Subjectively the removal of `I` makes the code prettier"}}
other: {"actor":{"display_login":"ConnorJC3"}}