{"action":"created","issue":{"url":"https://api.github.com/repos/PistonDevelopers/image/issues/328","labels_url":"https://api.github.com/repos/PistonDevelopers/image/issues/328/labels{/name}","comments_url":"https://api.github.com/repos/PistonDevelopers/image/issues/328/comments","events_url":"https://api.github.com/repos/PistonDevelopers/image/issues/328/events","html_url":"https://github.com/PistonDevelopers/image/issues/328","id":60821573,"number":328,"title":"General restructurisation of repository","user":{"login":"hauleth","id":291639,"avatar_url":"https://avatars.githubusercontent.com/u/291639?v=3","gravatar_id":"","url":"https://api.github.com/users/hauleth","html_url":"https://github.com/hauleth","followers_url":"https://api.github.com/users/hauleth/followers","following_url":"https://api.github.com/users/hauleth/following{/other_user}","gists_url":"https://api.github.com/users/hauleth/gists{/gist_id}","starred_url":"https://api.github.com/users/hauleth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hauleth/subscriptions","organizations_url":"https://api.github.com/users/hauleth/orgs","repos_url":"https://api.github.com/users/hauleth/repos","events_url":"https://api.github.com/users/hauleth/events{/privacy}","received_events_url":"https://api.github.com/users/hauleth/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/PistonDevelopers/image/labels/discussion","name":"discussion","color":"bfe5bf"},{"url":"https://api.github.com/repos/PistonDevelopers/image/labels/draft","name":"draft","color":"e11d21"}],"state":"open","locked":false,"assignee":{"login":"hauleth","id":291639,"avatar_url":"https://avatars.githubusercontent.com/u/291639?v=3","gravatar_id":"","url":"https://api.github.com/users/hauleth","html_url":"https://github.com/hauleth","followers_url":"https://api.github.com/users/hauleth/followers","following_url":"https://api.github.com/users/hauleth/following{/other_user}","gists_url":"https://api.github.com/users/hauleth/gists{/gist_id}","starred_url":"https://api.github.com/users/hauleth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hauleth/subscriptions","organizations_url":"https://api.github.com/users/hauleth/orgs","repos_url":"https://api.github.com/users/hauleth/repos","events_url":"https://api.github.com/users/hauleth/events{/privacy}","received_events_url":"https://api.github.com/users/hauleth/received_events","type":"User","site_admin":false},"milestone":null,"comments":13,"created_at":"2015-03-12T13:52:45Z","updated_at":"2015-03-12T18:57:14Z","closed_at":null,"body":"It would be great if we split all formats into separate libraries (without additional repo). Original repo should work only as a glue between all packages. \r\n\r\n```\r\n.\r\n├── Cargo.toml\r\n├── color // color related structs\r\n├── formats\r\n│   ├── format // generic format (all common traits should be here)\r\n│   ├── gif\r\n│   ├── jpeg\r\n│   ├── png\r\n│   ├── ppm\r\n│   ├── tga\r\n│   ├── tiff\r\n│   └── webp\r\n├── lzw // I'm not sure if it shouldn't be extracted to separate repo as it isn't strictly bounded to image processing\r\n├── src\r\n└── tests\r\n```\r\n\r\nAlso I'm working on extracting `math::nq` to separate repo.\r\n\r\n## Todo\r\n\r\n- [ ] extract image formats to `formats/*`\r\n- [ ] extract generic traits to `.`\r\n- [ ] remove unneded `Zero`/`One`/`Primitive` traits and replace them with `num` equivalents\r\n- [ ] extract non-image processing related components into separate projects\r\n- [ ] rewrite `image` as a metapackage with some glue between newly created components"},"comment":{"url":"https://api.github.com/repos/PistonDevelopers/image/issues/comments/78568883","html_url":"https://github.com/PistonDevelopers/image/issues/328#issuecomment-78568883","issue_url":"https://api.github.com/repos/PistonDevelopers/image/issues/328","id":78568883,"user":{"login":"tomaka","id":1412254,"avatar_url":"https://avatars.githubusercontent.com/u/1412254?v=3","gravatar_id":"","url":"https://api.github.com/users/tomaka","html_url":"https://github.com/tomaka","followers_url":"https://api.github.com/users/tomaka/followers","following_url":"https://api.github.com/users/tomaka/following{/other_user}","gists_url":"https://api.github.com/users/tomaka/gists{/gist_id}","starred_url":"https://api.github.com/users/tomaka/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tomaka/subscriptions","organizations_url":"https://api.github.com/users/tomaka/orgs","repos_url":"https://api.github.com/users/tomaka/repos","events_url":"https://api.github.com/users/tomaka/events{/privacy}","received_events_url":"https://api.github.com/users/tomaka/received_events","type":"User","site_admin":false},"created_at":"2015-03-12T18:57:14Z","updated_at":"2015-03-12T18:57:14Z","body":"@hauleth We're alking about http://doc.crates.io/manifest.html#the-[features]-section\r\n\r\nI don't see why they wouldn't be good for long term maintenance."}}