{"action":"created","issue":{"url":"https://api.github.com/repos/zoonproject/zoon/issues/163","labels_url":"https://api.github.com/repos/zoonproject/zoon/issues/163/labels{/name}","comments_url":"https://api.github.com/repos/zoonproject/zoon/issues/163/comments","events_url":"https://api.github.com/repos/zoonproject/zoon/issues/163/events","html_url":"https://github.com/zoonproject/zoon/issues/163","id":106643112,"number":163,"title":"modules should list required packages in metadata (and therefore docs)","user":{"login":"goldingn","id":4450731,"avatar_url":"https://avatars.githubusercontent.com/u/4450731?v=3","gravatar_id":"","url":"https://api.github.com/users/goldingn","html_url":"https://github.com/goldingn","followers_url":"https://api.github.com/users/goldingn/followers","following_url":"https://api.github.com/users/goldingn/following{/other_user}","gists_url":"https://api.github.com/users/goldingn/gists{/gist_id}","starred_url":"https://api.github.com/users/goldingn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/goldingn/subscriptions","organizations_url":"https://api.github.com/users/goldingn/orgs","repos_url":"https://api.github.com/users/goldingn/repos","events_url":"https://api.github.com/users/goldingn/events{/privacy}","received_events_url":"https://api.github.com/users/goldingn/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/zoonproject/zoon/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-09-15T20:48:12Z","updated_at":"2015-09-15T21:09:40Z","closed_at":null,"body":"This will have several advantages:\r\n\r\n* users will know what they're getting themselves into before running a module\r\n* module developers won't have to make `GetPackage` calls, which will tidy up modules (workflow can handle this bit)\r\n* it will enable us to install packages into child processes, which is my planned approach for #84\r\n* it will allow us to list the required packages for a workflow\r\n - we can then scrape the package versions and make workflows much more reproducible\r\n\r\nShould be easy enough to implement via `@import` tags.\r\nThere's an argument for doing `@importFrom` instead, but I think `@import` is more straightforward, and less of a hurdle to module developers"},"comment":{"url":"https://api.github.com/repos/zoonproject/zoon/issues/comments/140542659","html_url":"https://github.com/zoonproject/zoon/issues/163#issuecomment-140542659","issue_url":"https://api.github.com/repos/zoonproject/zoon/issues/163","id":140542659,"user":{"login":"goldingn","id":4450731,"avatar_url":"https://avatars.githubusercontent.com/u/4450731?v=3","gravatar_id":"","url":"https://api.github.com/users/goldingn","html_url":"https://github.com/goldingn","followers_url":"https://api.github.com/users/goldingn/followers","following_url":"https://api.github.com/users/goldingn/following{/other_user}","gists_url":"https://api.github.com/users/goldingn/gists{/gist_id}","starred_url":"https://api.github.com/users/goldingn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/goldingn/subscriptions","organizations_url":"https://api.github.com/users/goldingn/orgs","repos_url":"https://api.github.com/users/goldingn/repos","events_url":"https://api.github.com/users/goldingn/events{/privacy}","received_events_url":"https://api.github.com/users/goldingn/received_events","type":"User","site_admin":false},"created_at":"2015-09-15T21:09:40Z","updated_at":"2015-09-15T21:09:40Z","body":"`@import*` won't do, as that only modifies the `NAMESPACE` of the modules package - not the module doc.\r\n\r\n`@section` defines an arbitrary section, in which we can provide a comma-separated  list of packages. e.g:\r\n\r\n```r\r\n#'\r\n#'@section required packages: gbm, scales\r\n#'\r\n```\r\n\r\nproduces:\r\n\r\n```\r\n\\section{required packages}{\r\n gbm, scales\r\n}\r\n```\r\n\r\nwhich we can scrape"}}