{"action":"created","issue":{"url":"https://api.github.com/repos/flarum/core/issues/1450","repository_url":"https://api.github.com/repos/flarum/core","labels_url":"https://api.github.com/repos/flarum/core/issues/1450/labels{/name}","comments_url":"https://api.github.com/repos/flarum/core/issues/1450/comments","events_url":"https://api.github.com/repos/flarum/core/issues/1450/events","html_url":"https://github.com/flarum/core/pull/1450","id":329459106,"node_id":"MDExOlB1bGxSZXF1ZXN0MTkyNzA5MTY4","number":1450,"title":"[WIP] Frontend/Assets refactor","user":{"login":"tobscure","id":128862,"node_id":"MDQ6VXNlcjEyODg2Mg==","avatar_url":"https://avatars0.githubusercontent.com/u/128862?v=4","gravatar_id":"","url":"https://api.github.com/users/tobscure","html_url":"https://github.com/tobscure","followers_url":"https://api.github.com/users/tobscure/followers","following_url":"https://api.github.com/users/tobscure/following{/other_user}","gists_url":"https://api.github.com/users/tobscure/gists{/gist_id}","starred_url":"https://api.github.com/users/tobscure/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tobscure/subscriptions","organizations_url":"https://api.github.com/users/tobscure/orgs","repos_url":"https://api.github.com/users/tobscure/repos","events_url":"https://api.github.com/users/tobscure/events{/privacy}","received_events_url":"https://api.github.com/users/tobscure/received_events","type":"User","site_admin":false},"labels":[{"id":261018927,"node_id":"MDU6TGFiZWwyNjEwMTg5Mjc=","url":"https://api.github.com/repos/flarum/core/labels/Backend","name":"Backend","color":"eeeeee","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/flarum/core/milestones/6","html_url":"https://github.com/flarum/core/milestone/6","labels_url":"https://api.github.com/repos/flarum/core/milestones/6/labels","id":2655577,"node_id":"MDk6TWlsZXN0b25lMjY1NTU3Nw==","number":6,"title":"0.1.0-beta.8","description":"A last big batch of code restructurings, most of them in the backend. This is mostly interesting to extension developers, as most (or probably all) existing extensions will be affected. On the bright side, they will benefit from new stability guarantees with the newly introduced APIs.\r\n","creator":{"login":"tobscure","id":128862,"node_id":"MDQ6VXNlcjEyODg2Mg==","avatar_url":"https://avatars0.githubusercontent.com/u/128862?v=4","gravatar_id":"","url":"https://api.github.com/users/tobscure","html_url":"https://github.com/tobscure","followers_url":"https://api.github.com/users/tobscure/followers","following_url":"https://api.github.com/users/tobscure/following{/other_user}","gists_url":"https://api.github.com/users/tobscure/gists{/gist_id}","starred_url":"https://api.github.com/users/tobscure/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tobscure/subscriptions","organizations_url":"https://api.github.com/users/tobscure/orgs","repos_url":"https://api.github.com/users/tobscure/repos","events_url":"https://api.github.com/users/tobscure/events{/privacy}","received_events_url":"https://api.github.com/users/tobscure/received_events","type":"User","site_admin":false},"open_issues":20,"closed_issues":49,"state":"open","created_at":"2017-07-22T03:30:33Z","updated_at":"2018-06-27T19:10:41Z","due_on":null,"closed_at":null},"comments":17,"created_at":"2018-06-05T13:34:29Z","updated_at":"2018-06-28T11:22:34Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/flarum/core/pulls/1450","html_url":"https://github.com/flarum/core/pull/1450","diff_url":"https://github.com/flarum/core/pull/1450.diff","patch_url":"https://github.com/flarum/core/pull/1450.patch"},"body":"Fixes #881 \r\nFixes #1024 \r\nFixes #837 \r\nFixes #865 \r\nFixes #951\r\n\r\nThe main changes are:\r\n\r\n- Use Laravel's Filesystem component for asset IO, meaning theoretically\r\n  assets should be storable on S3 etc.\r\n\r\n- More reliable checking for asset recompilation when debug mode is on,\r\n  so you don't have to constantly delete the compiled assets to force\r\n  a recompile. Should also fix issues with locale JS files being\r\n  recompiled with the same name and cached.\r\n\r\n- Remove JavaScript minification, because it will be done by Webpack\r\n  (exception is for the TextFormatter JS).\r\n\r\n- Add support for sourcemaps (both JS and LESS)!\r\n\r\n- Refactor FrontendView class:\r\n  - Remove all getters/setters - just use public properties instead.\r\n  - Refine the public API.\r\n  - Pass the Request as a dependency on construction so that \"default\r\n    content\" can be added to the instance. Then extensions can alter it\r\n    as they see fit.\r\n\r\nThe bits I would like feedback on are:\r\n\r\n* The FrontendView class. Is there any way we can simplify it / reduce its number of dependencies? I've been scratching my head over this all day and I can't think of anything. Maybe it is ok as it is 🤔 \r\n\r\n* The other Frontend classes: FrontendAssets, AbstractFrontend + Forum/AdminFrontend, AbstractFrontendController + Forum/AdminFrontendController. Does the way I've structured this make sense, is it intuitive enough? Any ideas to improve?"},"comment":{"url":"https://api.github.com/repos/flarum/core/issues/comments/401002210","html_url":"https://github.com/flarum/core/pull/1450#issuecomment-401002210","issue_url":"https://api.github.com/repos/flarum/core/issues/1450","id":401002210,"node_id":"MDEyOklzc3VlQ29tbWVudDQwMTAwMjIxMA==","user":{"login":"tobscure","id":128862,"node_id":"MDQ6VXNlcjEyODg2Mg==","avatar_url":"https://avatars0.githubusercontent.com/u/128862?v=4","gravatar_id":"","url":"https://api.github.com/users/tobscure","html_url":"https://github.com/tobscure","followers_url":"https://api.github.com/users/tobscure/followers","following_url":"https://api.github.com/users/tobscure/following{/other_user}","gists_url":"https://api.github.com/users/tobscure/gists{/gist_id}","starred_url":"https://api.github.com/users/tobscure/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tobscure/subscriptions","organizations_url":"https://api.github.com/users/tobscure/orgs","repos_url":"https://api.github.com/users/tobscure/repos","events_url":"https://api.github.com/users/tobscure/events{/privacy}","received_events_url":"https://api.github.com/users/tobscure/received_events","type":"User","site_admin":false},"created_at":"2018-06-28T11:22:34Z","updated_at":"2018-06-28T11:22:34Z","author_association":"MEMBER","body":"> Do I understand its purpose correctly when I say that the AssetInterface represents a bunch of assets that belong together (e.g. because they are from the same source, such as an extension)?\r\n\r\nThat's correct.\r\n\r\n> Maybe we could schedule a pair programming session to talk through AssetInterface and play around with some alternatives.\r\n\r\nSounds good! Will discuss times with you on Discord."}}
{"actor":{"display_login":"tobscure"}}