{"action":"created","issue":{"url":"https://api.github.com/repos/boostorg/build/issues/135","repository_url":"https://api.github.com/repos/boostorg/build","labels_url":"https://api.github.com/repos/boostorg/build/issues/135/labels{/name}","comments_url":"https://api.github.com/repos/boostorg/build/issues/135/comments","events_url":"https://api.github.com/repos/boostorg/build/issues/135/events","html_url":"https://github.com/boostorg/build/pull/135","id":169724598,"number":135,"title":"Add a vcs module, with Git and Subversion support.","user":{"login":"tee3","id":231540,"avatar_url":"https://avatars3.githubusercontent.com/u/231540?v=3","gravatar_id":"","url":"https://api.github.com/users/tee3","html_url":"https://github.com/tee3","followers_url":"https://api.github.com/users/tee3/followers","following_url":"https://api.github.com/users/tee3/following{/other_user}","gists_url":"https://api.github.com/users/tee3/gists{/gist_id}","starred_url":"https://api.github.com/users/tee3/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tee3/subscriptions","organizations_url":"https://api.github.com/users/tee3/orgs","repos_url":"https://api.github.com/users/tee3/repos","events_url":"https://api.github.com/users/tee3/events{/privacy}","received_events_url":"https://api.github.com/users/tee3/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2016-08-06T02:16:26Z","updated_at":"2017-05-31T14:59:21Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/boostorg/build/pulls/135","html_url":"https://github.com/boostorg/build/pull/135","diff_url":"https://github.com/boostorg/build/pull/135.diff","patch_url":"https://github.com/boostorg/build/pull/135.patch"},"body":"This implements a `vcs` module within Boost.Build with back ends for Git and Subversion.  One of the future goals of this is to support a source package management system in Boost.Build with support for getting source code from repositories.\n\nThere are some minor outstanding issues as well:\n- [x] The `vcs` module BoostBook documentation has not been built.\n  \n  Will this be done via continuous integration?  I'm sure there's going to be an escaping issue with one of the `programlisting` sections.\n- [x] The `vcs` module has not been added to the test suite.\n  \n  The examples have been used to test it and I have tests outside of the Boost.Build test system.  Does anyone have an idea of how this can be added in?\n- [ ] The `type` rule fails on Windows since `path.exists` fails the first time it is run.\n  \n  This causes the exhaustive example to fail the first time it is run, but successive runs will eventually get through the entire example.\n- [ ] This has not been implemented in Python.\n  \n  It should be straightforward to implement, but seemed redundant and I couldn't get myself to do it :)\n\nFrom the commit message:\n\n```\nThis provides a mechanism to interact with VCS-controlled projects.  It\ncurrently supports Git and Subversion.  The main interesting feature\nhere is a rule to generate a version string.  There are other rules for\nquerying a directory for its properties that may also prove generally\nuseful.\n\nThere are also rules to 'fetch' from a repository into a directory and\n'checkout' a symbolic reference from a directory.  These could be used\nto forcibly get a specific revision of a package from a repository.  It\ncould also be used to create a proper source package management system\nwithin Boost.Build.\n\nThere are two examples to show how this module might be used.\n\nThe documentation build has not been tested.  However, a\nreStructuredText document that should be identical to the BoostBook file\nis included in the doc directory for reference.\n\nThere are no tests, but there are two examples that do quite a bit of\nwork to test the module, but do not verify the results.\n\nThis has been tested on Linux, OS X, and Windows.  The 'type' rule fails\non Windows due to `path.exists' rule failing.  This needs to be\ninvestigated.\n\nThis does not implement these functions in Python.  It should be\nstraightforward to do so.\n```\n"},"comment":{"url":"https://api.github.com/repos/boostorg/build/issues/comments/305213912","html_url":"https://github.com/boostorg/build/pull/135#issuecomment-305213912","issue_url":"https://api.github.com/repos/boostorg/build/issues/135","id":305213912,"user":{"login":"tee3","id":231540,"avatar_url":"https://avatars3.githubusercontent.com/u/231540?v=3","gravatar_id":"","url":"https://api.github.com/users/tee3","html_url":"https://github.com/tee3","followers_url":"https://api.github.com/users/tee3/followers","following_url":"https://api.github.com/users/tee3/following{/other_user}","gists_url":"https://api.github.com/users/tee3/gists{/gist_id}","starred_url":"https://api.github.com/users/tee3/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tee3/subscriptions","organizations_url":"https://api.github.com/users/tee3/orgs","repos_url":"https://api.github.com/users/tee3/repos","events_url":"https://api.github.com/users/tee3/events{/privacy}","received_events_url":"https://api.github.com/users/tee3/received_events","type":"User","site_admin":false},"created_at":"2017-05-31T14:59:21Z","updated_at":"2017-05-31T14:59:21Z","body":"Looks like this is failing on Windows.  I will take a look at it soon."}}
{"actor":{"display_login":"tee3"}}