{"action":"created","issue":{"url":"https://api.github.com/repos/ebkalderon/amethyst_tools/issues/4","labels_url":"https://api.github.com/repos/ebkalderon/amethyst_tools/issues/4/labels{/name}","comments_url":"https://api.github.com/repos/ebkalderon/amethyst_tools/issues/4/comments","events_url":"https://api.github.com/repos/ebkalderon/amethyst_tools/issues/4/events","html_url":"https://github.com/ebkalderon/amethyst_tools/issues/4","id":128995174,"number":4,"title":"Reorganize project infrastructure","user":{"login":"ebkalderon","id":322831,"avatar_url":"https://avatars.githubusercontent.com/u/322831?v=3","gravatar_id":"","url":"https://api.github.com/users/ebkalderon","html_url":"https://github.com/ebkalderon","followers_url":"https://api.github.com/users/ebkalderon/followers","following_url":"https://api.github.com/users/ebkalderon/following{/other_user}","gists_url":"https://api.github.com/users/ebkalderon/gists{/gist_id}","starred_url":"https://api.github.com/users/ebkalderon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ebkalderon/subscriptions","organizations_url":"https://api.github.com/users/ebkalderon/orgs","repos_url":"https://api.github.com/users/ebkalderon/repos","events_url":"https://api.github.com/users/ebkalderon/events{/privacy}","received_events_url":"https://api.github.com/users/ebkalderon/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ebkalderon/amethyst_tools/labels/diff:%20medium","name":"diff: medium","color":"fef2c0"},{"url":"https://api.github.com/repos/ebkalderon/amethyst_tools/labels/pri:%20blocker","name":"pri: blocker","color":"f7c6c7"},{"url":"https://api.github.com/repos/ebkalderon/amethyst_tools/labels/status:%20in-progress","name":"status: in-progress","color":"bfe5bf"},{"url":"https://api.github.com/repos/ebkalderon/amethyst_tools/labels/type:%20improvement","name":"type: improvement","color":"84b6eb"}],"state":"open","locked":false,"assignee":{"login":"ebkalderon","id":322831,"avatar_url":"https://avatars.githubusercontent.com/u/322831?v=3","gravatar_id":"","url":"https://api.github.com/users/ebkalderon","html_url":"https://github.com/ebkalderon","followers_url":"https://api.github.com/users/ebkalderon/followers","following_url":"https://api.github.com/users/ebkalderon/following{/other_user}","gists_url":"https://api.github.com/users/ebkalderon/gists{/gist_id}","starred_url":"https://api.github.com/users/ebkalderon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ebkalderon/subscriptions","organizations_url":"https://api.github.com/users/ebkalderon/orgs","repos_url":"https://api.github.com/users/ebkalderon/repos","events_url":"https://api.github.com/users/ebkalderon/events{/privacy}","received_events_url":"https://api.github.com/users/ebkalderon/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/ebkalderon/amethyst_tools/milestones/1","html_url":"https://github.com/ebkalderon/amethyst_tools/milestones/1.0","labels_url":"https://api.github.com/repos/ebkalderon/amethyst_tools/milestones/1/labels","id":1488825,"number":1,"title":"1.0","description":null,"creator":{"login":"ebkalderon","id":322831,"avatar_url":"https://avatars.githubusercontent.com/u/322831?v=3","gravatar_id":"","url":"https://api.github.com/users/ebkalderon","html_url":"https://github.com/ebkalderon","followers_url":"https://api.github.com/users/ebkalderon/followers","following_url":"https://api.github.com/users/ebkalderon/following{/other_user}","gists_url":"https://api.github.com/users/ebkalderon/gists{/gist_id}","starred_url":"https://api.github.com/users/ebkalderon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ebkalderon/subscriptions","organizations_url":"https://api.github.com/users/ebkalderon/orgs","repos_url":"https://api.github.com/users/ebkalderon/repos","events_url":"https://api.github.com/users/ebkalderon/events{/privacy}","received_events_url":"https://api.github.com/users/ebkalderon/received_events","type":"User","site_admin":false},"open_issues":2,"closed_issues":1,"state":"open","created_at":"2016-01-07T04:28:28Z","updated_at":"2016-01-27T01:16:07Z","due_on":null,"closed_at":null},"comments":2,"created_at":"2016-01-27T01:16:07Z","updated_at":"2016-01-27T06:42:08Z","closed_at":null,"body":"There are some major changes coming to our core infrastructure. Currently, the overall Amethyst project consists of three repositories: amethyst, amethyst_cli, and amethyst_opengl.\r\n\r\nAmethyst is set for future expansion, and the current approach to organizing our code is not maintainable. I propose the following:\r\n\r\n- [ ] Consolidate all of the tools into an \"amethyst_tools\" repository. All future tools will reside **only** in this repository.\r\n   - [ ] Move the \"amethyst_cli\" crate into this repository.\r\n\r\nThis might cause some breakage, but this must be minimized as much as possible. Let's use [Piston's approach for managing multiple crates under one repository](https://github.com/PistonDevelopers/piston) as prior art.\r\n\r\nProgress has begun on the [reorg](https://github.com/ebkalderon/amethyst_tools/tree/reorg) branch.\r\n\r\nThis is the tools-side counterpart of [Amethyst issue #13](https://github.com/ebkalderon/amethyst/issues/13)."},"comment":{"url":"https://api.github.com/repos/ebkalderon/amethyst_tools/issues/comments/175433368","html_url":"https://github.com/ebkalderon/amethyst_tools/issues/4#issuecomment-175433368","issue_url":"https://api.github.com/repos/ebkalderon/amethyst_tools/issues/4","id":175433368,"user":{"login":"ebkalderon","id":322831,"avatar_url":"https://avatars.githubusercontent.com/u/322831?v=3","gravatar_id":"","url":"https://api.github.com/users/ebkalderon","html_url":"https://github.com/ebkalderon","followers_url":"https://api.github.com/users/ebkalderon/followers","following_url":"https://api.github.com/users/ebkalderon/following{/other_user}","gists_url":"https://api.github.com/users/ebkalderon/gists{/gist_id}","starred_url":"https://api.github.com/users/ebkalderon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ebkalderon/subscriptions","organizations_url":"https://api.github.com/users/ebkalderon/orgs","repos_url":"https://api.github.com/users/ebkalderon/repos","events_url":"https://api.github.com/users/ebkalderon/events{/privacy}","received_events_url":"https://api.github.com/users/ebkalderon/received_events","type":"User","site_admin":false},"created_at":"2016-01-27T06:42:08Z","updated_at":"2016-01-27T06:42:08Z","body":"Here are some possible alternatives for better hosting multiple optional binaries in a single repository:\r\n\r\n1. Somehow allowing binary crate dependencies in a similar manner to library crates, which would be the ideal route, but is unlikely to ever happen in Cargo.\r\n2. Conditional compilation of binaries using Cargo `[features]`. This doesn't exist, but there is rust-lang/cargo#2080 which links to rust-lang/cargo#1570. A pull request implementing this exists, but appears to have gone stale.\r\n\r\nNeither idea is very appealing. Suggestions are welcome!"}}