{"action":"created","issue":{"url":"https://api.github.com/repos/MithrilJS/mithril.js/issues/2278","repository_url":"https://api.github.com/repos/MithrilJS/mithril.js","labels_url":"https://api.github.com/repos/MithrilJS/mithril.js/issues/2278/labels{/name}","comments_url":"https://api.github.com/repos/MithrilJS/mithril.js/issues/2278/comments","events_url":"https://api.github.com/repos/MithrilJS/mithril.js/issues/2278/events","html_url":"https://github.com/MithrilJS/mithril.js/issues/2278","id":377173848,"node_id":"MDU6SXNzdWUzNzcxNzM4NDg=","number":2278,"title":"Making Mithril more component-driven and less component-oriented","user":{"login":"isiahmeadows","id":4483844,"node_id":"MDQ6VXNlcjQ0ODM4NDQ=","avatar_url":"https://avatars1.githubusercontent.com/u/4483844?v=4","gravatar_id":"","url":"https://api.github.com/users/isiahmeadows","html_url":"https://github.com/isiahmeadows","followers_url":"https://api.github.com/users/isiahmeadows/followers","following_url":"https://api.github.com/users/isiahmeadows/following{/other_user}","gists_url":"https://api.github.com/users/isiahmeadows/gists{/gist_id}","starred_url":"https://api.github.com/users/isiahmeadows/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/isiahmeadows/subscriptions","organizations_url":"https://api.github.com/users/isiahmeadows/orgs","repos_url":"https://api.github.com/users/isiahmeadows/repos","events_url":"https://api.github.com/users/isiahmeadows/events{/privacy}","received_events_url":"https://api.github.com/users/isiahmeadows/received_events","type":"User","site_admin":false},"labels":[{"id":205363681,"node_id":"MDU6TGFiZWwyMDUzNjM2ODE=","url":"https://api.github.com/repos/MithrilJS/mithril.js/labels/breaking%20change%20proposal","name":"breaking change proposal","color":"006b75","default":false},{"id":534693727,"node_id":"MDU6TGFiZWw1MzQ2OTM3Mjc=","url":"https://api.github.com/repos/MithrilJS/mithril.js/labels/enhancement","name":"enhancement","color":"fbca04","default":true},{"id":1107898746,"node_id":"MDU6TGFiZWwxMTA3ODk4NzQ2","url":"https://api.github.com/repos/MithrilJS/mithril.js/labels/meta/feedback","name":"meta/feedback","color":"0e8a16","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/MithrilJS/mithril.js/milestones/8","html_url":"https://github.com/MithrilJS/mithril.js/milestone/8","labels_url":"https://api.github.com/repos/MithrilJS/mithril.js/milestones/8/labels","id":3294103,"node_id":"MDk6TWlsZXN0b25lMzI5NDEwMw==","number":8,"title":"post-v2","description":"Tasks to be tackled after v2","creator":{"login":"tivac","id":49545,"node_id":"MDQ6VXNlcjQ5NTQ1","avatar_url":"https://avatars0.githubusercontent.com/u/49545?v=4","gravatar_id":"","url":"https://api.github.com/users/tivac","html_url":"https://github.com/tivac","followers_url":"https://api.github.com/users/tivac/followers","following_url":"https://api.github.com/users/tivac/following{/other_user}","gists_url":"https://api.github.com/users/tivac/gists{/gist_id}","starred_url":"https://api.github.com/users/tivac/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tivac/subscriptions","organizations_url":"https://api.github.com/users/tivac/orgs","repos_url":"https://api.github.com/users/tivac/repos","events_url":"https://api.github.com/users/tivac/events{/privacy}","received_events_url":"https://api.github.com/users/tivac/received_events","type":"User","site_admin":false},"open_issues":18,"closed_issues":0,"state":"open","created_at":"2018-04-24T19:21:42Z","updated_at":"2018-11-04T17:17:59Z","due_on":null,"closed_at":null},"comments":0,"created_at":"2018-11-04T17:16:07Z","updated_at":"2018-11-04T17:19:49Z","closed_at":null,"author_association":"COLLABORATOR","body":"*This evolved out of a long discussion between @pygy, @barneycarroll, and I on Gitter.*\r\n\r\nSo I've got this concept of how Mithril could evolve, at a high level, and I feel it could *really* leverage components and `m` better and be less of a kingdom of nouns. This would all aim for better usability and consistency first, but incidental perf wins could also arise out of this. This is a general synthesis of what all this is and how it'd fit together.\r\n\r\nThere are two general types of changes I'm suggesting here:\r\n\r\n- Changes to how vnodes are structured: #2279\r\n- Changes to builtins to improve flexibility and better encourage component *use* rather than component *definition*\r\n\t- Changing `m.mount` to use a view function rather than a component: #2280\r\n\t- Changing `m.route` to be a set of dynamic components that invoke view functions: #2281\r\n\t- Adding `m.async` for much easier, more flexible async view loading: #2282\r\n\r\nI plan to first kick this off in my own fork in a dedicated branch, so I can work on nailing exacts down. It'll also let me independently experiment on how it should be modularized.\r\n\r\nIf this gets accepted, it'd be a semver-major breaking change with non-trivial migration. It won't be as bad as v0.2 to v1, but it certainly won't be as simple as v1 to v2."},"comment":{"url":"https://api.github.com/repos/MithrilJS/mithril.js/issues/comments/435688155","html_url":"https://github.com/MithrilJS/mithril.js/issues/2278#issuecomment-435688155","issue_url":"https://api.github.com/repos/MithrilJS/mithril.js/issues/2278","id":435688155,"node_id":"MDEyOklzc3VlQ29tbWVudDQzNTY4ODE1NQ==","user":{"login":"isiahmeadows","id":4483844,"node_id":"MDQ6VXNlcjQ0ODM4NDQ=","avatar_url":"https://avatars1.githubusercontent.com/u/4483844?v=4","gravatar_id":"","url":"https://api.github.com/users/isiahmeadows","html_url":"https://github.com/isiahmeadows","followers_url":"https://api.github.com/users/isiahmeadows/followers","following_url":"https://api.github.com/users/isiahmeadows/following{/other_user}","gists_url":"https://api.github.com/users/isiahmeadows/gists{/gist_id}","starred_url":"https://api.github.com/users/isiahmeadows/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/isiahmeadows/subscriptions","organizations_url":"https://api.github.com/users/isiahmeadows/orgs","repos_url":"https://api.github.com/users/isiahmeadows/repos","events_url":"https://api.github.com/users/isiahmeadows/events{/privacy}","received_events_url":"https://api.github.com/users/isiahmeadows/received_events","type":"User","site_admin":false},"created_at":"2018-11-04T17:19:49Z","updated_at":"2018-11-04T17:19:49Z","author_association":"COLLABORATOR","body":"@MithrilJS/collaborators Could I get some feedback on this?\r\n\r\nI won't likely be able to respond to any of it today, but I'll be able to tomorrow."}}
{"actor":{"display_login":"isiahmeadows"}}