{"action":"created","issue":{"url":"https://api.github.com/repos/facebook/react/issues/7430","repository_url":"https://api.github.com/repos/facebook/react","labels_url":"https://api.github.com/repos/facebook/react/issues/7430/labels{/name}","comments_url":"https://api.github.com/repos/facebook/react/issues/7430/comments","events_url":"https://api.github.com/repos/facebook/react/issues/7430/events","html_url":"https://github.com/facebook/react/issues/7430","id":169515116,"number":7430,"title":"`HTMLDOMPropertyConfig` contains non-standard `icon` property","user":{"login":"smockle","id":3104489,"avatar_url":"https://avatars.githubusercontent.com/u/3104489?v=3","gravatar_id":"","url":"https://api.github.com/users/smockle","html_url":"https://github.com/smockle","followers_url":"https://api.github.com/users/smockle/followers","following_url":"https://api.github.com/users/smockle/following{/other_user}","gists_url":"https://api.github.com/users/smockle/gists{/gist_id}","starred_url":"https://api.github.com/users/smockle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smockle/subscriptions","organizations_url":"https://api.github.com/users/smockle/orgs","repos_url":"https://api.github.com/users/smockle/repos","events_url":"https://api.github.com/users/smockle/events{/privacy}","received_events_url":"https://api.github.com/users/smockle/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/facebook/react/labels/Component:%20DOM","name":"Component: DOM","color":"fef2c0"},{"url":"https://api.github.com/repos/facebook/react/labels/good%20first%20bug","name":"good first bug","color":"009800"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2016-08-05T02:17:19Z","updated_at":"2016-08-15T20:27:51Z","closed_at":null,"body":"**Do you want to request a *feature* or report a *bug*?**\r\nReport a bug.\r\n\r\n**What is the current behavior?**\r\nThe `HTMLDOMPropertyConfig` object [includes an `icon` property](https://github.com/facebook/react/blob/cccef3c68310df3bd611df2a7b98a530645c67c0/src/renderers/dom/shared/HTMLDOMPropertyConfig.js#L85) in a section title `Standard Properties`, but `icon` isn’t an attribute supported by any standard HTML element.\r\n\r\n`icon` is not included in the HTML4 or HTML5 specs:\r\n[List of HTML4 attributes](https://www.w3.org/TR/html4/index/attributes.html)\r\n[List of HTML5 attributes](https://www.w3.org/TR/html5/index.html#attributes-1)\r\n\r\nMozilla Developer Network includes `icon` in its [list of attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes), but specifies the only element to use `icon` is the [obsolete `<command>` element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/command). `<command>` isn’t supported in [any desktop or mobile browser](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/command#Browser_compatibility).\r\n\r\n**What is the expected behavior?**\r\nThe `icon` property might be better placed in the section titled [`Non-standard Properties`](https://github.com/facebook/react/blob/cccef3c68310df3bd611df2a7b98a530645c67c0/src/renderers/dom/shared/HTMLDOMPropertyConfig.js#L174-L202), or removed altogether. The [documentation](https://facebook.github.io/react/docs/tags-and-attributes.html#html-attributes) for HTML attributes could omit `icon` too.\r\n\r\nI encountered this issue when working with TypeScript, and I opened an issue about the React type definition at https://github.com/DefinitelyTyped/DefinitelyTyped/issues/10467. Because React itself includes `icon`, custom interfaces which extend [DefinitelyTyped’s `React.HTMLAttributes`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/613673de3672114c562fdf9f142bfeefc29173c9/react/react.d.ts#L1968) cannot include a non-string `icon` property.\r\n\r\n**Which versions of React, and which browser / OS are affected by this issue? Did this work in previous versions of React?**\r\n`icon` was added in a React 0.4.0 alpha in 2013: https://github.com/facebook/react/commit/203dba271b6128f03c99b1ce2f573a316adb4e4e. The commit message mentions `mostly this was to better support some HTML5 stuff`—it’s possible `icon` was part of a draft of the HTML5 standard at the time, but was omitted in the final spec.\r\n"},"comment":{"url":"https://api.github.com/repos/facebook/react/issues/comments/239918689","html_url":"https://github.com/facebook/react/issues/7430#issuecomment-239918689","issue_url":"https://api.github.com/repos/facebook/react/issues/7430","id":239918689,"user":{"login":"smockle","id":3104489,"avatar_url":"https://avatars.githubusercontent.com/u/3104489?v=3","gravatar_id":"","url":"https://api.github.com/users/smockle","html_url":"https://github.com/smockle","followers_url":"https://api.github.com/users/smockle/followers","following_url":"https://api.github.com/users/smockle/following{/other_user}","gists_url":"https://api.github.com/users/smockle/gists{/gist_id}","starred_url":"https://api.github.com/users/smockle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smockle/subscriptions","organizations_url":"https://api.github.com/users/smockle/orgs","repos_url":"https://api.github.com/users/smockle/repos","events_url":"https://api.github.com/users/smockle/events{/privacy}","received_events_url":"https://api.github.com/users/smockle/received_events","type":"User","site_admin":false},"created_at":"2016-08-15T20:27:51Z","updated_at":"2016-08-15T20:27:51Z","body":"Thanks for taking a look at this! I’d be happy to open a PR.\r\n\r\nFrom the [contribute](https://github.com/facebook/react#contribute) section of the README, it looks like I’d just need to remove the line, ensure tests pass & linter output is clean, then submit the PR? (I want to make sure I’m not missing a version or changelog step.)"}}
{"actor":{"display_login":"smockle"}}