)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"b3fee1f9ee25686c45e27b51eae0cfabd8957f2a","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Update development environment set up doc"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Since install_venv.py and with_venv.sh under tools directory"},{"line_number":10,"context_line":"were deleted, updated development environment set up doc."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Ie4c72ebc4dec2ae339a6028d1914142ee7ef3a4c"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"ba15a1d1_36ee3b8c","line":10,"updated":"2015-09-14 13:04:50.000000000","message":"It would be nice to mention the commit where those tools were removed for reference here.","commit_id":"956546d153e5c7bdf0348b0ad0d513990283850c"}],"doc/source/developing.rst":[{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"b3fee1f9ee25686c45e27b51eae0cfabd8957f2a","unresolved":false,"context_lines":[{"line_number":423,"context_line":"``keystone/tests/unit/config_files/backend_pool_liveldap.conf`` to reflect your"},{"line_number":424,"context_line":"password."},{"line_number":425,"context_line":""},{"line_number":426,"context_line":".. NOTE::"},{"line_number":427,"context_line":"    To run the live tests you need to set the environment variable "},{"line_number":428,"context_line":"    ``ENABLE_LDAP_LIVE_TEST`` to a non-negative value."},{"line_number":429,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_96ef07b0","line":426,"updated":"2015-09-14 13:04:50.000000000","message":"Trailing whitespace","commit_id":"956546d153e5c7bdf0348b0ad0d513990283850c"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"35d15d343137b51da30bad0109b2300d2015d277","unresolved":false,"context_lines":[{"line_number":423,"context_line":"``keystone/tests/unit/config_files/backend_pool_liveldap.conf`` to reflect your"},{"line_number":424,"context_line":"password."},{"line_number":425,"context_line":""},{"line_number":426,"context_line":".. NOTE::"},{"line_number":427,"context_line":"    To run the live tests you need to set the environment variable "},{"line_number":428,"context_line":"    ``ENABLE_LDAP_LIVE_TEST`` to a non-negative value."},{"line_number":429,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_86257dac","line":426,"in_reply_to":"ba15a1d1_96ef07b0","updated":"2015-09-15 00:31:07.000000000","message":"Done","commit_id":"956546d153e5c7bdf0348b0ad0d513990283850c"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"fca9ec97af171bc32f84afe29624a490c8819adb","unresolved":false,"context_lines":[{"line_number":424,"context_line":"password."},{"line_number":425,"context_line":""},{"line_number":426,"context_line":".. NOTE::"},{"line_number":427,"context_line":""},{"line_number":428,"context_line":"    To run the live tests you need to set the environment variable "},{"line_number":429,"context_line":"    ``ENABLE_LDAP_LIVE_TEST`` to a non-negative value."},{"line_number":430,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_2ae1c8fe","line":427,"updated":"2015-09-15 09:31:37.000000000","message":"revert it back, this is irrelevant changs, if you think this is really needed then L689 and L736 and more place in the file also need to be updated.","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"18edd44ef7cc5c349ee4d2b645a0a3d01c293008","unresolved":false,"context_lines":[{"line_number":424,"context_line":"password."},{"line_number":425,"context_line":""},{"line_number":426,"context_line":".. NOTE::"},{"line_number":427,"context_line":""},{"line_number":428,"context_line":"    To run the live tests you need to set the environment variable "},{"line_number":429,"context_line":"    ``ENABLE_LDAP_LIVE_TEST`` to a non-negative value."},{"line_number":430,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_eda2b1ad","line":427,"in_reply_to":"ba15a1d1_2ae1c8fe","updated":"2015-09-17 00:40:48.000000000","message":"Done","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"ebe23ab34371df95e97097936d5fb60080091382","unresolved":false,"context_lines":[{"line_number":424,"context_line":"password."},{"line_number":425,"context_line":""},{"line_number":426,"context_line":".. NOTE::"},{"line_number":427,"context_line":""},{"line_number":428,"context_line":"    To run the live tests you need to set the environment variable "},{"line_number":429,"context_line":"    ``ENABLE_LDAP_LIVE_TEST`` to a non-negative value."},{"line_number":430,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_f542a13d","line":427,"in_reply_to":"ba15a1d1_2ae1c8fe","updated":"2015-09-16 06:20:54.000000000","message":"OK,I will revert.","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"9bbf6252350f97a0eba5d9cd1e968cfd028964cf","unresolved":false,"context_lines":[{"line_number":22,"context_line":"-----"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Get your development environment set up according to :doc:`setup`. The"},{"line_number":25,"context_line":"instructions from here will assume that you have installed Keystone."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Configuring Keystone"},{"line_number":28,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a1a9d01_ff5bae52","line":25,"updated":"2015-09-25 12:41:16.000000000","message":"Developers should not need to have Keystone installed","commit_id":"f673efd217ebabce633fad9f48e75b80f7728978"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"4c4042563bbebcf6d247f00e66e90f31c5a930cc","unresolved":false,"context_lines":[{"line_number":22,"context_line":"-----"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Get your development environment set up according to :doc:`setup`. The"},{"line_number":25,"context_line":"instructions from here will assume that you have installed Keystone."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Configuring Keystone"},{"line_number":28,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a1a9d01_78287d33","line":25,"in_reply_to":"9a1a9d01_ff5bae52","updated":"2015-09-30 07:39:44.000000000","message":"Done","commit_id":"f673efd217ebabce633fad9f48e75b80f7728978"}],"doc/source/devref/development.environment.rst":[{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"3a421e152196bc74ee31656d6b6f762f76433c59","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    $ sudo zypper install libxslt-devel openldap2-devel libopenssl-devel python-devel \\"},{"line_number":54,"context_line":"        python-greenlet-devel python-ldap python-lxml python-pysqlite sqlite3-devel"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Setting the latest code"},{"line_number":57,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"Make a clone of the code from our `Git repository`:"}],"source_content_type":"text/x-rst","patch_set":9,"id":"9a1a9d01_ebf20b6f","line":56,"updated":"2015-10-02 12:14:20.000000000","message":"s/Setting/Getting","commit_id":"b01c5ded7f9086bca9651e2d8f568f1273cadfea"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"80a47d8aea0f5c60717457706df48bc928e7ac90","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    $ sudo zypper install libxslt-devel openldap2-devel libopenssl-devel python-devel \\"},{"line_number":54,"context_line":"        python-greenlet-devel python-ldap python-lxml python-pysqlite sqlite3-devel"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Setting the latest code"},{"line_number":57,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"Make a clone of the code from our `Git repository`:"}],"source_content_type":"text/x-rst","patch_set":9,"id":"9a1a9d01_57fe1aaf","line":56,"in_reply_to":"9a1a9d01_ebf20b6f","updated":"2015-10-03 05:33:12.000000000","message":"Done","commit_id":"b01c5ded7f9086bca9651e2d8f568f1273cadfea"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"3a421e152196bc74ee31656d6b6f762f76433c59","unresolved":false,"context_lines":[{"line_number":76,"context_line":".. _PyPi: http://pypi.python.org/"},{"line_number":77,"context_line":".. _pip: http://pypi.python.org/pypi/pip"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"Once pip has been installed, we install ``tox``"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":".. code-block:: bash"},{"line_number":82,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"9a1a9d01_2bf9e34d","line":79,"updated":"2015-10-02 12:14:20.000000000","message":"``pip``\n\nAlso, I\u0027d remove \u0027we\u0027","commit_id":"b01c5ded7f9086bca9651e2d8f568f1273cadfea"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"80a47d8aea0f5c60717457706df48bc928e7ac90","unresolved":false,"context_lines":[{"line_number":76,"context_line":".. _PyPi: http://pypi.python.org/"},{"line_number":77,"context_line":".. _pip: http://pypi.python.org/pypi/pip"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"Once pip has been installed, we install ``tox``"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":".. code-block:: bash"},{"line_number":82,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"9a1a9d01_370366ba","line":79,"in_reply_to":"9a1a9d01_2bf9e34d","updated":"2015-10-03 05:33:12.000000000","message":"Done","commit_id":"b01c5ded7f9086bca9651e2d8f568f1273cadfea"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"3a421e152196bc74ee31656d6b6f762f76433c59","unresolved":false,"context_lines":[{"line_number":97,"context_line":"Verifying Keystone is set up"},{"line_number":98,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Once set up within a virtualenv, you should be able to invoke python and"},{"line_number":101,"context_line":"import the libraries. don\u0027t forget to activate it:"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":".. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":9,"id":"9a1a9d01_4ed1c5fa","line":100,"updated":"2015-10-02 12:14:20.000000000","message":"s/python/Python","commit_id":"b01c5ded7f9086bca9651e2d8f568f1273cadfea"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"80a47d8aea0f5c60717457706df48bc928e7ac90","unresolved":false,"context_lines":[{"line_number":97,"context_line":"Verifying Keystone is set up"},{"line_number":98,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Once set up within a virtualenv, you should be able to invoke python and"},{"line_number":101,"context_line":"import the libraries. don\u0027t forget to activate it:"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":".. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":9,"id":"9a1a9d01_f72bae31","line":100,"in_reply_to":"9a1a9d01_4ed1c5fa","updated":"2015-10-03 05:33:12.000000000","message":"Done","commit_id":"b01c5ded7f9086bca9651e2d8f568f1273cadfea"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"3a421e152196bc74ee31656d6b6f762f76433c59","unresolved":false,"context_lines":[{"line_number":98,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Once set up within a virtualenv, you should be able to invoke python and"},{"line_number":101,"context_line":"import the libraries. don\u0027t forget to activate it:"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":".. code-block:: bash"},{"line_number":104,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"9a1a9d01_ee08d993","line":101,"updated":"2015-10-02 12:14:20.000000000","message":"s/don\u0027t/Don\u0027t","commit_id":"b01c5ded7f9086bca9651e2d8f568f1273cadfea"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"80a47d8aea0f5c60717457706df48bc928e7ac90","unresolved":false,"context_lines":[{"line_number":98,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Once set up within a virtualenv, you should be able to invoke python and"},{"line_number":101,"context_line":"import the libraries. don\u0027t forget to activate it:"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":".. code-block:: bash"},{"line_number":104,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"9a1a9d01_172f423f","line":101,"in_reply_to":"9a1a9d01_ee08d993","updated":"2015-10-03 05:33:12.000000000","message":"Done","commit_id":"b01c5ded7f9086bca9651e2d8f568f1273cadfea"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"d80070211006a249a46aaff16c9f309da412672c","unresolved":false,"context_lines":[{"line_number":126,"context_line":""},{"line_number":127,"context_line":".. code-block:: bash"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"    $ deactivate"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"You can also use ``tools\\with_venv.sh`` to prefix commands so that they run"},{"line_number":132,"context_line":"within the virtual environment. For more information on virtual environments,"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7a2fa921_44f2fa70","side":"PARENT","line":129,"updated":"2015-10-06 19:18:07.000000000","message":"Shouldn\u0027t we leave the information about deactivate?","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"fc770da9ad15400e471bb74cfdbed8e64d06aff8","unresolved":false,"context_lines":[{"line_number":126,"context_line":""},{"line_number":127,"context_line":".. code-block:: bash"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"    $ deactivate"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"You can also use ``tools\\with_venv.sh`` to prefix commands so that they run"},{"line_number":132,"context_line":"within the virtual environment. For more information on virtual environments,"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7a2fa921_35232aa9","side":"PARENT","line":129,"in_reply_to":"7a2fa921_0baf1182","updated":"2015-10-08 02:34:45.000000000","message":"Sorry for spending your time..\nI noticed deactivate is vailid command even if using tox.","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"e336a6096f06a209ba1356662553c354636a838d","unresolved":false,"context_lines":[{"line_number":126,"context_line":""},{"line_number":127,"context_line":".. code-block:: bash"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"    $ deactivate"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"You can also use ``tools\\with_venv.sh`` to prefix commands so that they run"},{"line_number":132,"context_line":"within the virtual environment. For more information on virtual environments,"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7a2fa921_66036843","side":"PARENT","line":129,"in_reply_to":"7a2fa921_44f2fa70","updated":"2015-10-07 08:00:00.000000000","message":"I do not know how to deactivate using tox. \nCould you please teach me if you can deactivate using tox?","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"9c5be5e977646efec14a4c14f27eb011aa849ce4","unresolved":false,"context_lines":[{"line_number":126,"context_line":""},{"line_number":127,"context_line":".. code-block:: bash"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"    $ deactivate"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"You can also use ``tools\\with_venv.sh`` to prefix commands so that they run"},{"line_number":132,"context_line":"within the virtual environment. For more information on virtual environments,"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7a2fa921_0baf1182","side":"PARENT","line":129,"in_reply_to":"7a2fa921_66036843","updated":"2015-10-07 13:43:08.000000000","message":"\"Tox is a generic virtualenv management and test command line tool you can use for:\n    1) checking your package installs correctly with different Python versions and interpreters\n    2) running your tests in each of the environments, configuring your test tool of choice\n    3) acting as a frontend to Continuous Integration servers, greatly reducing boilerplate and merging CI and shell-based testing.\" - tox doc\n\n\n\"``virtualenv`` is a tool to create isolated Python environments.\n\nThe basic problem being addressed is one of dependencies and versions,\nand indirectly permissions. Imagine you have an application that\nneeds version 1 of LibFoo, but another application requires version\n2. How can you use both these applications? If you install\neverything into ``/usr/lib/python2.7/site-packages`` (or whatever your\nplatform\u0027s standard location is), it\u0027s easy to end up in a situation\nwhere you unintentionally upgrade an application that shouldn\u0027t be\nupgraded.\n\nOr more generally, what if you want to install an application *and\nleave it be*? If an application works, any change in its libraries or\nthe versions of those libraries can break the application.\n\nAlso, what if you can\u0027t install packages into the global\n``site-packages`` directory? For instance, on a shared host.\n\nIn all these cases, ``virtualenv`` can help you. It creates an\nenvironment that has its own installation directories, that doesn\u0027t\nshare libraries with other virtualenv environments (and optionally\ndoesn\u0027t access the globally installed libraries either).\"  -- PyPI\n\n\n\nAbout 1/5 the way down this link there is some good information to read about tox and how to use it: http://docs.openstack.org/developer/ironic/dev/dev-quickstart.html\n\nHere is the section you are changing: http://docs.openstack.org/developer/keystone/devref/development.environment.html#pypi-packages-and-virtualenv\n\nHere is a good video about tox: https://www.youtube.com/watch?v\u003dOldkj519o4A\n    - in this video they talk about the tox.ini file, here is a link to keystone\u0027s,  https://github.com/openstack/keystone/blob/master/tox.ini\n    - you don\u0027t need to watch the part about detox but its actually pretty interesting and it does work in keystone.\n\n\nAlso a good rule to go by is if you don\u0027t know what it does I wouldn\u0027t touch it or do research to find out what it is :p","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"d80070211006a249a46aaff16c9f309da412672c","unresolved":false,"context_lines":[{"line_number":18,"context_line":"Setting up a Keystone development environment"},{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"This document describes getting the source from keystone\u0027s `Git repository`_"},{"line_number":22,"context_line":"for development purposes."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"To install Keystone from packaging, refer instead to Keystone\u0027s `User"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7a2fa921_c40fea2c","line":21,"updated":"2015-10-06 19:18:07.000000000","message":"I know this was in the original doc, nit s/keystone/Keystone/","commit_id":"65ab0b575d6305355637a67d2e210db490ae7d36"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"33f104fb4effe57a502c26ecea480295a6248c1e","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"This document assumes you are using Ubuntu, Fedora or openSUSE (SLE)"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"And that you have the following tools available on your system:"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"- Python_ 2.7 and 3.4"},{"line_number":38,"context_line":"- git_"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a2fa921_78ef2fe9","side":"PARENT","line":35,"updated":"2015-10-08 19:13:02.000000000","message":"Why is this section removed?","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"33f104fb4effe57a502c26ecea480295a6248c1e","unresolved":false,"context_lines":[{"line_number":66,"context_line":"Installing dependencies"},{"line_number":67,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"Keystone maintains two lists of dependencies::"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    requirements.txt"},{"line_number":72,"context_line":"    test-requirements.txt"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a2fa921_b8a5c7a2","side":"PARENT","line":69,"updated":"2015-10-08 19:13:02.000000000","message":"This is still valid right?","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"33f104fb4effe57a502c26ecea480295a6248c1e","unresolved":false,"context_lines":[{"line_number":109,"context_line":"We recommend establishing a virtualenv to run Keystone within. virtualenv"},{"line_number":110,"context_line":"limits the Python environment to just what you\u0027re installing as dependencies,"},{"line_number":111,"context_line":"useful to keep a clean environment for working on Keystone. The tools directory"},{"line_number":112,"context_line":"in Keystone has a script already created to make this very simple:"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":".. code-block:: bash"},{"line_number":115,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a2fa921_b614f94c","side":"PARENT","line":112,"updated":"2015-10-08 19:13:02.000000000","message":"I think this whole section should be put back except this sentence should be deleted:\n\n\"The tools directory in Keystone has a script already created to make this very simple\"\n\n\nLet me know if I am going down the wrong track, Isn\u0027t it still recommended to run keystone inside a virtualenv?","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"33f104fb4effe57a502c26ecea480295a6248c1e","unresolved":false,"context_lines":[{"line_number":113,"context_line":""},{"line_number":114,"context_line":".. code-block:: bash"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"    $ python tools/install_venv.py"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"This will create a local virtual environment in the directory ``.venv``."},{"line_number":119,"context_line":"Once created, you can activate this virtualenv for your current shell using:"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a2fa921_582d9393","side":"PARENT","line":116,"updated":"2015-10-08 19:13:02.000000000","message":"also this line should be:\n\n$ virtualenv venv\n\nHere is the doc on virtualenv that i referenced:\nhttp://docs.python-guide.org/en/latest/dev/virtualenvs/#basic-usage","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"33f104fb4effe57a502c26ecea480295a6248c1e","unresolved":false,"context_lines":[{"line_number":134,"context_line":""},{"line_number":135,"context_line":".. _virtualenv: http://www.virtualenv.org/"},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"If you want to run Keystone outside of a virtualenv, you can install the"},{"line_number":138,"context_line":"dependencies directly into your system from the requirements files:"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":".. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a2fa921_7b240cc4","side":"PARENT","line":137,"updated":"2015-10-08 19:13:02.000000000","message":"Is this suppose to be removed?  I don\u0027t think it has anything to do with ``tools\\with_venv.sh`` or ``tools/install_venv.py``","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":15640,"name":"Roxana Gherle","email":"roxana.gherle@hpe.com","username":"roxana-gherle"},"change_message_id":"dafcd7de5e00625ac9407e99f3c02b3ff39a6577","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":"And that you have the following tools available on your system:"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"- Python_ 2.7 and 3.4"},{"line_number":38,"context_line":"- git_"},{"line_number":39,"context_line":"- setuptools_"},{"line_number":40,"context_line":"- pip_"}],"source_content_type":"text/x-rst","patch_set":12,"id":"fa80f949_1b2a1c2d","side":"PARENT","line":37,"updated":"2015-11-04 21:51:29.000000000","message":"It seems like you removed this prerequisites section. In your version, we are missing information about the Python versions supported, which is important to be specified.","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"e70bd87893aa0f118afdf723df5cdf2275d8fba1","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":"And that you have the following tools available on your system:"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"- Python_ 2.7 and 3.4"},{"line_number":38,"context_line":"- git_"},{"line_number":39,"context_line":"- setuptools_"},{"line_number":40,"context_line":"- pip_"}],"source_content_type":"text/x-rst","patch_set":12,"id":"fa80f949_013b869d","side":"PARENT","line":37,"in_reply_to":"fa80f949_1b2a1c2d","updated":"2015-11-05 00:51:18.000000000","message":"Done","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":15640,"name":"Roxana Gherle","email":"roxana.gherle@hpe.com","username":"roxana-gherle"},"change_message_id":"dafcd7de5e00625ac9407e99f3c02b3ff39a6577","unresolved":false,"context_lines":[{"line_number":67,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"Keystone maintains two lists of dependencies::"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    requirements.txt"},{"line_number":72,"context_line":"    test-requirements.txt"},{"line_number":73,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"fa80f949_1bb8dce4","side":"PARENT","line":70,"updated":"2015-11-04 21:51:29.000000000","message":"why remove the info about the requirements files?","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"e70bd87893aa0f118afdf723df5cdf2275d8fba1","unresolved":false,"context_lines":[{"line_number":67,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"Keystone maintains two lists of dependencies::"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    requirements.txt"},{"line_number":72,"context_line":"    test-requirements.txt"},{"line_number":73,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"fa80f949_9e9fd702","side":"PARENT","line":70,"in_reply_to":"fa80f949_1bb8dce4","updated":"2015-11-05 00:51:18.000000000","message":"the info is used in PyPi Packages and VirtualEnv section(see below). i removed the info because new version is simplified by using tox.","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"e6ac701c8dcb9e37133c3c749efecbe756b9f16c","unresolved":false,"context_lines":[{"line_number":18,"context_line":"Setting up a Keystone development environment"},{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"This document describes getting the source from Keystone\u0027s `Git repository`_"},{"line_number":22,"context_line":"for development purposes."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"To install Keystone from packaging, refer instead to Keystone\u0027s `User"}],"source_content_type":"text/x-rst","patch_set":13,"id":"fa80f949_327dbab1","line":21,"updated":"2015-11-05 05:47:04.000000000","message":"pls change back to \u0027keystone\u0027 to follow the naming convention, there was a wiki that state this clearly but I just cannot found the link. Anyway, this is irrelevant change, this can be revert back safely.","commit_id":"c1e817eaa328afb9616e54faf3cbca1f8abc1f33"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"b8597bb6fc4389ab1d85fa31fdf36a65a87a14c5","unresolved":false,"context_lines":[{"line_number":18,"context_line":"Setting up a Keystone development environment"},{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"This document describes getting the source from Keystone\u0027s `Git repository`_"},{"line_number":22,"context_line":"for development purposes."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"To install Keystone from packaging, refer instead to Keystone\u0027s `User"}],"source_content_type":"text/x-rst","patch_set":13,"id":"fa80f949_e2867dda","line":21,"in_reply_to":"fa80f949_327dbab1","updated":"2015-11-05 06:11:16.000000000","message":"Done","commit_id":"c1e817eaa328afb9616e54faf3cbca1f8abc1f33"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"e6ac701c8dcb9e37133c3c749efecbe756b9f16c","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    $ sudo apt-get install python-dev python3-dev libxml2-dev libxslt1-dev \\"},{"line_number":42,"context_line":"        libsasl2-dev libsqlite3-dev libssl-dev libldap2-dev libffi-dev"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"Fedora 19+:"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-rst","patch_set":13,"id":"fa80f949_4d69bfbd","line":43,"updated":"2015-11-05 05:47:04.000000000","message":"you *might* just want to leave one blank line here to consistent with L51.","commit_id":"c1e817eaa328afb9616e54faf3cbca1f8abc1f33"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"b8597bb6fc4389ab1d85fa31fdf36a65a87a14c5","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    $ sudo apt-get install python-dev python3-dev libxml2-dev libxslt1-dev \\"},{"line_number":42,"context_line":"        libsasl2-dev libsqlite3-dev libssl-dev libldap2-dev libffi-dev"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"Fedora 19+:"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-rst","patch_set":13,"id":"fa80f949_027aa1f1","line":43,"in_reply_to":"fa80f949_4d69bfbd","updated":"2015-11-05 06:11:16.000000000","message":"Done","commit_id":"c1e817eaa328afb9616e54faf3cbca1f8abc1f33"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"6db7d2b89032bf1b5bb4b61c76a6308205e84630","unresolved":false,"context_lines":[{"line_number":39,"context_line":"- setuptools_"},{"line_number":40,"context_line":"- pip_"},{"line_number":41,"context_line":"- msgfmt (part of the gettext package)"},{"line_number":42,"context_line":"- virtualenv_"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"**Reminder**: If you\u0027re successfully using a different platform, or a"},{"line_number":45,"context_line":"different version of the above, please document your configuration here!"}],"source_content_type":"text/x-rst","patch_set":14,"id":"fa80f949_e6519fd9","side":"PARENT","line":42,"updated":"2015-11-05 14:33:52.000000000","message":"Should these have been removed?","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":15640,"name":"Roxana Gherle","email":"roxana.gherle@hpe.com","username":"roxana-gherle"},"change_message_id":"527a80c860598417761c633a555e6468a6314607","unresolved":false,"context_lines":[{"line_number":39,"context_line":"- setuptools_"},{"line_number":40,"context_line":"- pip_"},{"line_number":41,"context_line":"- msgfmt (part of the gettext package)"},{"line_number":42,"context_line":"- virtualenv_"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"**Reminder**: If you\u0027re successfully using a different platform, or a"},{"line_number":45,"context_line":"different version of the above, please document your configuration here!"}],"source_content_type":"text/x-rst","patch_set":14,"id":"fa80f949_69001702","side":"PARENT","line":42,"in_reply_to":"fa80f949_e6519fd9","updated":"2015-11-05 18:00:52.000000000","message":"++ I think you should add back the rest of the dependencies as they are still valid. You could add tox as well. Adding minimum version for the packages (as per Ajaya\u0027s review) - while a big help for new developers - it would need constant maintenance so not sure if it\u0027s worth it.","commit_id":"4860d0aa38f9c179153bc403f4cd85a182e564cf"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"6db7d2b89032bf1b5bb4b61c76a6308205e84630","unresolved":false,"context_lines":[{"line_number":30,"context_line":"Installing system dependencies"},{"line_number":31,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":32,"context_line":"This document assumes you are using Ubuntu, Fedora or openSUSE (SLE)."},{"line_number":33,"context_line":"And that you have `Python`_ 2.7 and 3.4 available on your system."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":".. _Python: http://www.python.org/"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"fa80f949_0304d547","line":33,"updated":"2015-11-05 14:33:52.000000000","message":"the only nit I have is you are starting the sentence with \u0027and\u0027 I would remove the period and lower \u0027And\u0027","commit_id":"69999c3c673c14c82f6769163a876c53b10ac262"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"e5f46e72d64bcb19b3c0748cbc1a660705f454d3","unresolved":false,"context_lines":[{"line_number":30,"context_line":"Installing system dependencies"},{"line_number":31,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":32,"context_line":"This document assumes you are using Ubuntu, Fedora or openSUSE (SLE)."},{"line_number":33,"context_line":"And that you have `Python`_ 2.7 and 3.4 available on your system."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":".. _Python: http://www.python.org/"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"da85f559_1e4e433b","line":33,"in_reply_to":"fa80f949_0304d547","updated":"2015-11-11 05:17:59.000000000","message":"Done","commit_id":"69999c3c673c14c82f6769163a876c53b10ac262"}],"doc/source/setup.rst":[{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"b3fee1f9ee25686c45e27b51eae0cfabd8957f2a","unresolved":false,"context_lines":[{"line_number":140,"context_line":".. code-block:: bash"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"    # Install the dependencies for running keystone"},{"line_number":143,"context_line":"    $ pip install -r requirements.txt"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"    # Install the dependencies for developing, testing, and running keystone"},{"line_number":146,"context_line":"    $ pip install -r test-requirements.txt"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_b43484de","side":"PARENT","line":143,"updated":"2015-09-14 13:04:50.000000000","message":"Why remove this?","commit_id":"41f9e16eb770a025b999f00577e0304d9aa02a13"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"35d15d343137b51da30bad0109b2300d2015d277","unresolved":false,"context_lines":[{"line_number":140,"context_line":".. code-block:: bash"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"    # Install the dependencies for running keystone"},{"line_number":143,"context_line":"    $ pip install -r requirements.txt"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"    # Install the dependencies for developing, testing, and running keystone"},{"line_number":146,"context_line":"    $ pip install -r test-requirements.txt"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_e64b1958","side":"PARENT","line":143,"in_reply_to":"ba15a1d1_b43484de","updated":"2015-09-15 00:31:07.000000000","message":"This moved to Installing Keystone and it\u0027s dependencies section at Patch Set 2.","commit_id":"41f9e16eb770a025b999f00577e0304d9aa02a13"},{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"b3fee1f9ee25686c45e27b51eae0cfabd8957f2a","unresolved":false,"context_lines":[{"line_number":143,"context_line":"    $ pip install -r requirements.txt"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"    # Install the dependencies for developing, testing, and running keystone"},{"line_number":146,"context_line":"    $ pip install -r test-requirements.txt"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"    # Use \u0027python setup.py\u0027 to link Keystone into Python\u0027s site-packages"},{"line_number":149,"context_line":"    $ python setup.py develop"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_f4419c3a","side":"PARENT","line":146,"updated":"2015-09-14 13:04:50.000000000","message":"And this?","commit_id":"41f9e16eb770a025b999f00577e0304d9aa02a13"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"35d15d343137b51da30bad0109b2300d2015d277","unresolved":false,"context_lines":[{"line_number":143,"context_line":"    $ pip install -r requirements.txt"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"    # Install the dependencies for developing, testing, and running keystone"},{"line_number":146,"context_line":"    $ pip install -r test-requirements.txt"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"    # Use \u0027python setup.py\u0027 to link Keystone into Python\u0027s site-packages"},{"line_number":149,"context_line":"    $ python setup.py develop"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_06496d5f","side":"PARENT","line":146,"in_reply_to":"ba15a1d1_f4419c3a","updated":"2015-09-15 00:31:07.000000000","message":"This moved to Installing Keystone and it\u0027s dependencies section at Patch Set 2.","commit_id":"41f9e16eb770a025b999f00577e0304d9aa02a13"},{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"b3fee1f9ee25686c45e27b51eae0cfabd8957f2a","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    $ cd keystone"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"Installing Keystone and it\u0027s dependencies"},{"line_number":66,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"Keystone maintains two lists of dependencies::"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_969067ee","line":65,"updated":"2015-09-14 13:04:50.000000000","message":"s/it\u0027s/its","commit_id":"956546d153e5c7bdf0348b0ad0d513990283850c"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"35d15d343137b51da30bad0109b2300d2015d277","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    $ cd keystone"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"Installing Keystone and it\u0027s dependencies"},{"line_number":66,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"Keystone maintains two lists of dependencies::"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_0632cdf1","line":65,"in_reply_to":"ba15a1d1_969067ee","updated":"2015-09-15 00:31:07.000000000","message":"Done","commit_id":"956546d153e5c7bdf0348b0ad0d513990283850c"},{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"b3fee1f9ee25686c45e27b51eae0cfabd8957f2a","unresolved":false,"context_lines":[{"line_number":102,"context_line":""},{"line_number":103,"context_line":"    $ sudo zypper install libxslt-devel openldap2-devel libopenssl-devel python-devel python-greenlet-devel python-ldap python-lxml python-pysqlite sqlite3-devel"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"After installing dependencies, use \u0027python setup.py\u0027 to link Keystone"},{"line_number":106,"context_line":"into Python\u0027s site-packages."},{"line_number":107,"context_line":""},{"line_number":108,"context_line":".. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_967e27ad","line":105,"updated":"2015-09-14 13:04:50.000000000","message":"After installing the dependencies.\n\nSomething has to be specified after \u0027python setup.py\u0027, otherwise you\u0027ll get an error message.  Usually \u0027install\u0027 or \u0027develop\u0027 are given.","commit_id":"956546d153e5c7bdf0348b0ad0d513990283850c"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"35d15d343137b51da30bad0109b2300d2015d277","unresolved":false,"context_lines":[{"line_number":102,"context_line":""},{"line_number":103,"context_line":"    $ sudo zypper install libxslt-devel openldap2-devel libopenssl-devel python-devel python-greenlet-devel python-ldap python-lxml python-pysqlite sqlite3-devel"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"After installing dependencies, use \u0027python setup.py\u0027 to link Keystone"},{"line_number":106,"context_line":"into Python\u0027s site-packages."},{"line_number":107,"context_line":""},{"line_number":108,"context_line":".. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_666e29cb","line":105,"in_reply_to":"ba15a1d1_967e27ad","updated":"2015-09-15 00:31:07.000000000","message":"This sentence was deleted. See Patch Set 2.","commit_id":"956546d153e5c7bdf0348b0ad0d513990283850c"},{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"b3fee1f9ee25686c45e27b51eae0cfabd8957f2a","unresolved":false,"context_lines":[{"line_number":113,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"Once set up, you should be able to invoke Python and import the libraries."},{"line_number":116,"context_line":"you should then be able to `import keystone` using Python without issue:"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":".. code-block:: bash"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_b677abd3","line":116,"updated":"2015-09-14 13:04:50.000000000","message":"s/you/You","commit_id":"956546d153e5c7bdf0348b0ad0d513990283850c"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"35d15d343137b51da30bad0109b2300d2015d277","unresolved":false,"context_lines":[{"line_number":113,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"Once set up, you should be able to invoke Python and import the libraries."},{"line_number":116,"context_line":"you should then be able to `import keystone` using Python without issue:"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":".. code-block:: bash"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba15a1d1_66570903","line":116,"in_reply_to":"ba15a1d1_b677abd3","updated":"2015-09-15 00:31:07.000000000","message":"Done","commit_id":"956546d153e5c7bdf0348b0ad0d513990283850c"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"fca9ec97af171bc32f84afe29624a490c8819adb","unresolved":false,"context_lines":[{"line_number":104,"context_line":"    $ sudo zypper install libxslt-devel openldap2-devel libopenssl-devel python-devel python-greenlet-devel python-ldap python-lxml python-pysqlite sqlite3-devel"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"PyPi Packages and VirtualEnv"},{"line_number":107,"context_line":"----------------------------"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"We recommend establishing a virtualenv to run Keystone within. virtualenv"},{"line_number":110,"context_line":"limits the Python environment to just what you\u0027re installing as dependencies,"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_8a4fb4bc","side":"PARENT","line":107,"updated":"2015-09-15 09:31:37.000000000","message":"these section may also useful but link it to oslo-incubator?","commit_id":"41f9e16eb770a025b999f00577e0304d9aa02a13"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"3c6e177a576bb38cca79da7884411d58cd7e271e","unresolved":false,"context_lines":[{"line_number":104,"context_line":"    $ sudo zypper install libxslt-devel openldap2-devel libopenssl-devel python-devel python-greenlet-devel python-ldap python-lxml python-pysqlite sqlite3-devel"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"PyPi Packages and VirtualEnv"},{"line_number":107,"context_line":"----------------------------"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"We recommend establishing a virtualenv to run Keystone within. virtualenv"},{"line_number":110,"context_line":"limits the Python environment to just what you\u0027re installing as dependencies,"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_571a667e","side":"PARENT","line":107,"in_reply_to":"ba15a1d1_555cadec","updated":"2015-09-16 12:13:45.000000000","message":"link is here: https://github.com/openstack/oslo-incubator/tree/master/tools","commit_id":"41f9e16eb770a025b999f00577e0304d9aa02a13"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"18edd44ef7cc5c349ee4d2b645a0a3d01c293008","unresolved":false,"context_lines":[{"line_number":104,"context_line":"    $ sudo zypper install libxslt-devel openldap2-devel libopenssl-devel python-devel python-greenlet-devel python-ldap python-lxml python-pysqlite sqlite3-devel"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"PyPi Packages and VirtualEnv"},{"line_number":107,"context_line":"----------------------------"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"We recommend establishing a virtualenv to run Keystone within. virtualenv"},{"line_number":110,"context_line":"limits the Python environment to just what you\u0027re installing as dependencies,"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_8d7bf527","side":"PARENT","line":107,"in_reply_to":"ba15a1d1_571a667e","updated":"2015-09-17 00:40:48.000000000","message":"Thank you,I updated at Patch set 3.","commit_id":"41f9e16eb770a025b999f00577e0304d9aa02a13"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"ebe23ab34371df95e97097936d5fb60080091382","unresolved":false,"context_lines":[{"line_number":104,"context_line":"    $ sudo zypper install libxslt-devel openldap2-devel libopenssl-devel python-devel python-greenlet-devel python-ldap python-lxml python-pysqlite sqlite3-devel"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"PyPi Packages and VirtualEnv"},{"line_number":107,"context_line":"----------------------------"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"We recommend establishing a virtualenv to run Keystone within. virtualenv"},{"line_number":110,"context_line":"limits the Python environment to just what you\u0027re installing as dependencies,"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_555cadec","side":"PARENT","line":107,"in_reply_to":"ba15a1d1_8a4fb4bc","updated":"2015-09-16 06:20:54.000000000","message":"do you mean oslo-incubator develop venv?\ncould you teach me the link, please?","commit_id":"41f9e16eb770a025b999f00577e0304d9aa02a13"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"156ed0e229bf4bfff259a64784d97976e1564fdf","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    $ cd keystone"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"Installing Keystone and its dependencies"},{"line_number":66,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"Keystone maintains two lists of dependencies::"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_82c19e56","line":65,"updated":"2015-09-16 12:28:43.000000000","message":"I don\u0027t think we are documenting how to install Keystone in this section. It\u0027s only its dependencies though.\n\nI believe the old section name is accurate, i.e just \"Installing dependencies\".","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"18edd44ef7cc5c349ee4d2b645a0a3d01c293008","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    $ cd keystone"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"Installing Keystone and its dependencies"},{"line_number":66,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"Keystone maintains two lists of dependencies::"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_ada8398d","line":65,"in_reply_to":"ba15a1d1_82c19e56","updated":"2015-09-17 00:40:48.000000000","message":"Done","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"156ed0e229bf4bfff259a64784d97976e1564fdf","unresolved":false,"context_lines":[{"line_number":82,"context_line":""},{"line_number":83,"context_line":".. code-block:: bash"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    # Install the dependencies for running keystone"},{"line_number":86,"context_line":"    $ pip install -r requirements.txt"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    # Install the dependencies for developing, testing, and running keystone"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_22c8d2a7","line":85,"updated":"2015-09-16 12:28:43.000000000","message":"I know it is like this in the original documentaiton, but could you please update \u0027keystone\u0027 to \u0027Keystone\u0027 ?","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"18edd44ef7cc5c349ee4d2b645a0a3d01c293008","unresolved":false,"context_lines":[{"line_number":82,"context_line":""},{"line_number":83,"context_line":".. code-block:: bash"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    # Install the dependencies for running keystone"},{"line_number":86,"context_line":"    $ pip install -r requirements.txt"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    # Install the dependencies for developing, testing, and running keystone"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_cdad6d9c","line":85,"in_reply_to":"ba15a1d1_22c8d2a7","updated":"2015-09-17 00:40:48.000000000","message":"Done","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"79a9a36ab2e209967c53ffceca3559416db79730","unresolved":false,"context_lines":[{"line_number":82,"context_line":""},{"line_number":83,"context_line":".. code-block:: bash"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    # Install the dependencies for running keystone"},{"line_number":86,"context_line":"    $ pip install -r requirements.txt"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    # Install the dependencies for developing, testing, and running keystone"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_de119105","line":85,"in_reply_to":"ba15a1d1_22c8d2a7","updated":"2015-09-17 02:53:38.000000000","message":"why need to chang from \u0027keystone\u0027  to \u0027Keystone\u0027?","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"156ed0e229bf4bfff259a64784d97976e1564fdf","unresolved":false,"context_lines":[{"line_number":85,"context_line":"    # Install the dependencies for running keystone"},{"line_number":86,"context_line":"    $ pip install -r requirements.txt"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    # Install the dependencies for developing, testing, and running keystone"},{"line_number":89,"context_line":"    $ pip install -r test-requirements.txt"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    # Use \u0027python setup.py\u0027 to link Keystone into Python\u0027s site-packages"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_02c4ae8e","line":88,"updated":"2015-09-16 12:28:43.000000000","message":"Same here.","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"18edd44ef7cc5c349ee4d2b645a0a3d01c293008","unresolved":false,"context_lines":[{"line_number":85,"context_line":"    # Install the dependencies for running keystone"},{"line_number":86,"context_line":"    $ pip install -r requirements.txt"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    # Install the dependencies for developing, testing, and running keystone"},{"line_number":89,"context_line":"    $ pip install -r test-requirements.txt"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    # Use \u0027python setup.py\u0027 to link Keystone into Python\u0027s site-packages"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_8d945543","line":88,"in_reply_to":"ba15a1d1_02c4ae8e","updated":"2015-09-17 00:40:48.000000000","message":"Done","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"fca9ec97af171bc32f84afe29624a490c8819adb","unresolved":false,"context_lines":[{"line_number":88,"context_line":"    # Install the dependencies for developing, testing, and running keystone"},{"line_number":89,"context_line":"    $ pip install -r test-requirements.txt"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    # Use \u0027python setup.py\u0027 to link Keystone into Python\u0027s site-packages"},{"line_number":92,"context_line":"    $ python setup.py develop"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"However, your system *may* need additional dependencies that `pip` (and by"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_cad28c00","line":91,"updated":"2015-09-15 09:31:37.000000000","message":"site-packages or dist-packages? in my env it\u0027s dist-packages.","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"18edd44ef7cc5c349ee4d2b645a0a3d01c293008","unresolved":false,"context_lines":[{"line_number":88,"context_line":"    # Install the dependencies for developing, testing, and running keystone"},{"line_number":89,"context_line":"    $ pip install -r test-requirements.txt"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    # Use \u0027python setup.py\u0027 to link Keystone into Python\u0027s site-packages"},{"line_number":92,"context_line":"    $ python setup.py develop"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"However, your system *may* need additional dependencies that `pip` (and by"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_4d9abd6f","line":91,"in_reply_to":"ba15a1d1_cad28c00","updated":"2015-09-17 00:40:48.000000000","message":"Done","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"ebe23ab34371df95e97097936d5fb60080091382","unresolved":false,"context_lines":[{"line_number":88,"context_line":"    # Install the dependencies for developing, testing, and running keystone"},{"line_number":89,"context_line":"    $ pip install -r test-requirements.txt"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    # Use \u0027python setup.py\u0027 to link Keystone into Python\u0027s site-packages"},{"line_number":92,"context_line":"    $ python setup.py develop"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"However, your system *may* need additional dependencies that `pip` (and by"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_75753196","line":91,"in_reply_to":"ba15a1d1_cad28c00","updated":"2015-09-16 06:20:54.000000000","message":"Oh, my env too. thank you.I will update.","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":8119,"name":"Eric Brown","email":"eric_wade_brown@yahoo.com","username":"ericwb"},"change_message_id":"9aaa8536be28176014ae1e128b4251bc972facfa","unresolved":false,"context_lines":[{"line_number":119,"context_line":"Verifying Keystone is set up"},{"line_number":120,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"Once set up, you should be able to invoke Python and import the libraries."},{"line_number":123,"context_line":"You should then be able to `import keystone` using Python without issue:"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":".. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_f7a7414d","line":122,"updated":"2015-09-15 03:47:15.000000000","message":"I recommend removing this sentence, since you have stated almost the same thing below.","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"18edd44ef7cc5c349ee4d2b645a0a3d01c293008","unresolved":false,"context_lines":[{"line_number":119,"context_line":"Verifying Keystone is set up"},{"line_number":120,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"Once set up, you should be able to invoke Python and import the libraries."},{"line_number":123,"context_line":"You should then be able to `import keystone` using Python without issue:"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":".. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_cd9b2d65","line":122,"in_reply_to":"ba15a1d1_8233deaa","updated":"2015-09-17 00:40:48.000000000","message":"Done","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"156ed0e229bf4bfff259a64784d97976e1564fdf","unresolved":false,"context_lines":[{"line_number":119,"context_line":"Verifying Keystone is set up"},{"line_number":120,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"Once set up, you should be able to invoke Python and import the libraries."},{"line_number":123,"context_line":"You should then be able to `import keystone` using Python without issue:"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":".. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_8233deaa","line":122,"in_reply_to":"ba15a1d1_d568bd89","updated":"2015-09-16 12:28:43.000000000","message":"In this case, I think it would be better to remove the \u0027then\u0027 in the sentence below.","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"18edd44ef7cc5c349ee4d2b645a0a3d01c293008","unresolved":false,"context_lines":[{"line_number":119,"context_line":"Verifying Keystone is set up"},{"line_number":120,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"Once set up, you should be able to invoke Python and import the libraries."},{"line_number":123,"context_line":"You should then be able to `import keystone` using Python without issue:"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":".. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_0d96053f","line":122,"in_reply_to":"ba15a1d1_f7a7414d","updated":"2015-09-17 00:40:48.000000000","message":"Done","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"ebe23ab34371df95e97097936d5fb60080091382","unresolved":false,"context_lines":[{"line_number":119,"context_line":"Verifying Keystone is set up"},{"line_number":120,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"Once set up, you should be able to invoke Python and import the libraries."},{"line_number":123,"context_line":"You should then be able to `import keystone` using Python without issue:"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":".. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba15a1d1_d568bd89","line":122,"in_reply_to":"ba15a1d1_f7a7414d","updated":"2015-09-16 06:20:54.000000000","message":"Ok, I will remove.","commit_id":"c45962ddeb01d6e4effca8dc6c82917b1e4b2931"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"c0c090ef4528ab1bd224143082dd9f18af387f80","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    $ cd keystone"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"Installing dependencies"},{"line_number":66,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"Keystone maintains two lists of dependencies::"},{"line_number":69,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba15a1d1_5ea82177","line":66,"updated":"2015-09-17 02:53:23.000000000","message":"revert back, irrelevant change.","commit_id":"150d48a61fbcc9366c4143d683d5670b32e8d95b"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"8cbabf5947742e9d69a70f870334e405f96d31a7","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    $ cd keystone"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"Installing dependencies"},{"line_number":66,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"Keystone maintains two lists of dependencies::"},{"line_number":69,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba15a1d1_195403fd","line":66,"in_reply_to":"ba15a1d1_5ea82177","updated":"2015-09-17 03:18:11.000000000","message":"Done","commit_id":"150d48a61fbcc9366c4143d683d5670b32e8d95b"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"c0c090ef4528ab1bd224143082dd9f18af387f80","unresolved":false,"context_lines":[{"line_number":85,"context_line":"    # Install the dependencies for running Keystone"},{"line_number":86,"context_line":"    $ pip install -r requirements.txt"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    # Install the dependencies for developing, testing, and running Keystone"},{"line_number":89,"context_line":"    $ pip install -r test-requirements.txt"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    # Use \u0027python setup.py\u0027 to link Keystone into Python\u0027s dist-packages"}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba15a1d1_3ec68d68","line":88,"updated":"2015-09-17 02:53:23.000000000","message":"revert \"Keytone\" back to \"keystone\"\n\npls see: https://wiki.openstack.org/wiki/Documentation/Conventions","commit_id":"150d48a61fbcc9366c4143d683d5670b32e8d95b"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"8cbabf5947742e9d69a70f870334e405f96d31a7","unresolved":false,"context_lines":[{"line_number":85,"context_line":"    # Install the dependencies for running Keystone"},{"line_number":86,"context_line":"    $ pip install -r requirements.txt"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    # Install the dependencies for developing, testing, and running Keystone"},{"line_number":89,"context_line":"    $ pip install -r test-requirements.txt"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    # Use \u0027python setup.py\u0027 to link Keystone into Python\u0027s dist-packages"}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba15a1d1_b954f7fd","line":88,"in_reply_to":"ba15a1d1_3ec68d68","updated":"2015-09-17 03:18:11.000000000","message":"Done","commit_id":"150d48a61fbcc9366c4143d683d5670b32e8d95b"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"c0c090ef4528ab1bd224143082dd9f18af387f80","unresolved":false,"context_lines":[{"line_number":117,"context_line":"    $ sudo zypper install libxslt-devel openldap2-devel libopenssl-devel python-devel python-greenlet-devel python-ldap python-lxml python-pysqlite sqlite3-devel"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":""},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"PyPi Packages and VirtualEnv"},{"line_number":122,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":123,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba15a1d1_fe901545","line":120,"updated":"2015-09-17 02:53:23.000000000","message":"revert these two lines back.","commit_id":"150d48a61fbcc9366c4143d683d5670b32e8d95b"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"8cbabf5947742e9d69a70f870334e405f96d31a7","unresolved":false,"context_lines":[{"line_number":117,"context_line":"    $ sudo zypper install libxslt-devel openldap2-devel libopenssl-devel python-devel python-greenlet-devel python-ldap python-lxml python-pysqlite sqlite3-devel"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":""},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"PyPi Packages and VirtualEnv"},{"line_number":122,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":123,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba15a1d1_d959ab36","line":120,"in_reply_to":"ba15a1d1_fe901545","updated":"2015-09-17 03:18:11.000000000","message":"Done","commit_id":"150d48a61fbcc9366c4143d683d5670b32e8d95b"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"c0c090ef4528ab1bd224143082dd9f18af387f80","unresolved":false,"context_lines":[{"line_number":124,"context_line":"We recommend establishing a virtualenv to run Keystone within. virtualenv"},{"line_number":125,"context_line":"limits the Python environment to just what you\u0027re installing as dependencies,"},{"line_number":126,"context_line":"useful to keep a clean environment for working on Keystone. The tools directory"},{"line_number":127,"context_line":"in `oslo-incubator`_ has a script already created to make this very simple:"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":".. _`oslo-incubator`: https://github.com/openstack/oslo-incubator/tree/master/tools"},{"line_number":130,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba15a1d1_1e0b898f","line":127,"updated":"2015-09-17 02:53:23.000000000","message":"which scripts we can use here?","commit_id":"150d48a61fbcc9366c4143d683d5670b32e8d95b"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"8cbabf5947742e9d69a70f870334e405f96d31a7","unresolved":false,"context_lines":[{"line_number":124,"context_line":"We recommend establishing a virtualenv to run Keystone within. virtualenv"},{"line_number":125,"context_line":"limits the Python environment to just what you\u0027re installing as dependencies,"},{"line_number":126,"context_line":"useful to keep a clean environment for working on Keystone. The tools directory"},{"line_number":127,"context_line":"in `oslo-incubator`_ has a script already created to make this very simple:"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":".. _`oslo-incubator`: https://github.com/openstack/oslo-incubator/tree/master/tools"},{"line_number":130,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba15a1d1_197ba38d","line":127,"in_reply_to":"ba15a1d1_1e0b898f","updated":"2015-09-17 03:18:11.000000000","message":"install_venv.py explained below.","commit_id":"150d48a61fbcc9366c4143d683d5670b32e8d95b"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"c0c090ef4528ab1bd224143082dd9f18af387f80","unresolved":false,"context_lines":[{"line_number":126,"context_line":"useful to keep a clean environment for working on Keystone. The tools directory"},{"line_number":127,"context_line":"in `oslo-incubator`_ has a script already created to make this very simple:"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":".. _`oslo-incubator`: https://github.com/openstack/oslo-incubator/tree/master/tools"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":".. code-block:: bash"},{"line_number":132,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba15a1d1_5e44a1b5","line":129,"updated":"2015-09-17 02:53:23.000000000","message":"consider to use the this link (http://git.openstack.org/cgit/openstack/oslo-incubator/tree/tools)","commit_id":"150d48a61fbcc9366c4143d683d5670b32e8d95b"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"8cbabf5947742e9d69a70f870334e405f96d31a7","unresolved":false,"context_lines":[{"line_number":126,"context_line":"useful to keep a clean environment for working on Keystone. The tools directory"},{"line_number":127,"context_line":"in `oslo-incubator`_ has a script already created to make this very simple:"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":".. _`oslo-incubator`: https://github.com/openstack/oslo-incubator/tree/master/tools"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":".. code-block:: bash"},{"line_number":132,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba15a1d1_7943bf42","line":129,"in_reply_to":"ba15a1d1_5e44a1b5","updated":"2015-09-17 03:18:11.000000000","message":"Done","commit_id":"150d48a61fbcc9366c4143d683d5670b32e8d95b"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"6200d0e4b452fda8ca95ada897492652f4271538","unresolved":false,"context_lines":[{"line_number":39,"context_line":"- setuptools_"},{"line_number":40,"context_line":"- pip_"},{"line_number":41,"context_line":"- msgfmt (part of the gettext package)"},{"line_number":42,"context_line":"- virtualenv_"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"**Reminder**: If you\u0027re successfully using a different platform, or a"},{"line_number":45,"context_line":"different version of the above, please document your configuration here!"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba15a1d1_0e9118f1","side":"PARENT","line":42,"updated":"2015-09-17 05:32:53.000000000","message":"revert this back since virtual env is still covered in this doc.","commit_id":"41f9e16eb770a025b999f00577e0304d9aa02a13"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"23f3b4c78ebbf84070912e5a22a45429634d6825","unresolved":false,"context_lines":[{"line_number":39,"context_line":"- setuptools_"},{"line_number":40,"context_line":"- pip_"},{"line_number":41,"context_line":"- msgfmt (part of the gettext package)"},{"line_number":42,"context_line":"- virtualenv_"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"**Reminder**: If you\u0027re successfully using a different platform, or a"},{"line_number":45,"context_line":"different version of the above, please document your configuration here!"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba15a1d1_41436142","side":"PARENT","line":42,"in_reply_to":"ba15a1d1_0e9118f1","updated":"2015-09-17 05:39:49.000000000","message":"Done","commit_id":"41f9e16eb770a025b999f00577e0304d9aa02a13"},{"author":{"_account_id":13063,"name":"WEI CHEN","email":"dave.jungler@gmail.com","username":"wei.d.chen"},"change_message_id":"6200d0e4b452fda8ca95ada897492652f4271538","unresolved":false,"context_lines":[{"line_number":117,"context_line":"    $ sudo zypper install libxslt-devel openldap2-devel libopenssl-devel python-devel python-greenlet-devel python-ldap python-lxml python-pysqlite sqlite3-devel"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"PyPi Packages and VirtualEnv"},{"line_number":120,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"We recommend establishing a virtualenv to run Keystone within. virtualenv"},{"line_number":123,"context_line":"limits the Python environment to just what you\u0027re installing as dependencies,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba15a1d1_d95c4b7f","line":120,"updated":"2015-09-17 05:32:53.000000000","message":"any reason to chang from \u0027----\u0027 to \u0027\u003d\u003d\u003d\u003d\"? if this is valid change, could you pls include this in the commit message?","commit_id":"d44e928d989d2041ab7fd92792f220296644b368"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"23f3b4c78ebbf84070912e5a22a45429634d6825","unresolved":false,"context_lines":[{"line_number":117,"context_line":"    $ sudo zypper install libxslt-devel openldap2-devel libopenssl-devel python-devel python-greenlet-devel python-ldap python-lxml python-pysqlite sqlite3-devel"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"PyPi Packages and VirtualEnv"},{"line_number":120,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"We recommend establishing a virtualenv to run Keystone within. virtualenv"},{"line_number":123,"context_line":"limits the Python environment to just what you\u0027re installing as dependencies,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba15a1d1_a1591d37","line":120,"in_reply_to":"ba15a1d1_d95c4b7f","updated":"2015-09-17 05:39:49.000000000","message":"reverted.","commit_id":"d44e928d989d2041ab7fd92792f220296644b368"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"4bbe2b610bd98e3cbf2663fa6f476f6ba43e19ac","unresolved":false,"context_lines":[{"line_number":79,"context_line":".. _pip: http://pypi.python.org/pypi/pip"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"You can install the dependencies directly into your system from the"},{"line_number":82,"context_line":"requirements files:"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":".. code-block:: bash"},{"line_number":85,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba15a1d1_e993f74d","line":82,"updated":"2015-09-21 15:39:28.000000000","message":"I know this patch is just a refactor, but developers should not do this. Otherwise, how are developers expected to work on multiple projects with conflicting requirements?\n\nPerhaps this works in OpenStack-land when devstack is the only \"project,\" but it\u0027s a poor model for general Python development, where virtual environments are highly recommended.\n\nA note or something referencing \"follow these instructions within the confines of a venv\" would be very beneficial.\n\nOr, just build with tox, source .tox/py27/bin/activate (or whichever venv), and let tox do all the hard work for you, making half this document redundant.","commit_id":"06e777848fb71a246e41a0c0eba09ec5b16a3f89"},{"author":{"_account_id":13055,"name":"Alexander Makarov","email":"ajiekcahdp.makapob@gmail.com","username":"amakarov"},"change_message_id":"91c2db8525312fba6231399b90f626a0787b596b","unresolved":false,"context_lines":[{"line_number":79,"context_line":".. _pip: http://pypi.python.org/pypi/pip"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"You can install the dependencies directly into your system from the"},{"line_number":82,"context_line":"requirements files:"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":".. code-block:: bash"},{"line_number":85,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba15a1d1_72123164","line":82,"in_reply_to":"ba15a1d1_e993f74d","updated":"2015-09-22 16:44:41.000000000","message":"I\u0027d think twice before installing opensource project suggesting any system-wide changes.","commit_id":"06e777848fb71a246e41a0c0eba09ec5b16a3f89"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"255d8f834f32a4f9c58ede61bb9b97d2a211a49d","unresolved":false,"context_lines":[{"line_number":79,"context_line":".. _pip: http://pypi.python.org/pypi/pip"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"You can install the dependencies directly into your system from the"},{"line_number":82,"context_line":"requirements files:"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":".. code-block:: bash"},{"line_number":85,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba15a1d1_3318f1d2","line":82,"in_reply_to":"ba15a1d1_e993f74d","updated":"2015-09-24 06:16:48.000000000","message":"There is PyPi Packages and VirtualEnv section under this section.","commit_id":"06e777848fb71a246e41a0c0eba09ec5b16a3f89"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"9bbf6252350f97a0eba5d9cd1e968cfd028964cf","unresolved":false,"context_lines":[{"line_number":27,"context_line":".. _`Git Repository`: http://git.openstack.org/cgit/openstack/keystone"},{"line_number":28,"context_line":".. _`User Documentation`: http://docs.openstack.org/"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"We recommend establishing a virtualenv to run Keystone within. virtualenv"},{"line_number":31,"context_line":"limits the Python environment to just what you\u0027re installing as dependencies, "},{"line_number":32,"context_line":"useful to keep a clean environment for working on Keystone. "},{"line_number":33,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a1a9d01_b573174d","line":30,"updated":"2015-09-25 12:41:16.000000000","message":"i would leave this out. it sounds out of place","commit_id":"f673efd217ebabce633fad9f48e75b80f7728978"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"4c4042563bbebcf6d247f00e66e90f31c5a930cc","unresolved":false,"context_lines":[{"line_number":27,"context_line":".. _`Git Repository`: http://git.openstack.org/cgit/openstack/keystone"},{"line_number":28,"context_line":".. _`User Documentation`: http://docs.openstack.org/"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"We recommend establishing a virtualenv to run Keystone within. virtualenv"},{"line_number":31,"context_line":"limits the Python environment to just what you\u0027re installing as dependencies, "},{"line_number":32,"context_line":"useful to keep a clean environment for working on Keystone. "},{"line_number":33,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a1a9d01_381f6509","line":30,"in_reply_to":"9a1a9d01_b573174d","updated":"2015-09-30 07:39:44.000000000","message":"Done","commit_id":"f673efd217ebabce633fad9f48e75b80f7728978"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"9bbf6252350f97a0eba5d9cd1e968cfd028964cf","unresolved":false,"context_lines":[{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    $ tox -e py27 --notest"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"To enable virtual environment, run:"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":".. code-block:: bash"},{"line_number":98,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a1a9d01_d596cb93","line":95,"updated":"2015-09-25 12:41:16.000000000","message":"activate seems like a better work then enable","commit_id":"f673efd217ebabce633fad9f48e75b80f7728978"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"4c4042563bbebcf6d247f00e66e90f31c5a930cc","unresolved":false,"context_lines":[{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    $ tox -e py27 --notest"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"To enable virtual environment, run:"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":".. code-block:: bash"},{"line_number":98,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a1a9d01_f8148de9","line":95,"in_reply_to":"9a1a9d01_d596cb93","updated":"2015-09-30 07:39:44.000000000","message":"Done","commit_id":"f673efd217ebabce633fad9f48e75b80f7728978"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"9bbf6252350f97a0eba5d9cd1e968cfd028964cf","unresolved":false,"context_lines":[{"line_number":101,"context_line":"Verifying Keystone is set up"},{"line_number":102,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"You should be able to `import keystone` using Python without issue:"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":".. code-block:: bash"},{"line_number":107,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a1a9d01_15f3e30b","line":104,"updated":"2015-09-25 12:41:16.000000000","message":"This only works in an activated shell.","commit_id":"f673efd217ebabce633fad9f48e75b80f7728978"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"4c4042563bbebcf6d247f00e66e90f31c5a930cc","unresolved":false,"context_lines":[{"line_number":101,"context_line":"Verifying Keystone is set up"},{"line_number":102,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"You should be able to `import keystone` using Python without issue:"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":".. code-block:: bash"},{"line_number":107,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a1a9d01_98d6b126","line":104,"in_reply_to":"9a1a9d01_15f3e30b","updated":"2015-09-30 07:39:44.000000000","message":"Done","commit_id":"f673efd217ebabce633fad9f48e75b80f7728978"},{"author":{"_account_id":13055,"name":"Alexander Makarov","email":"ajiekcahdp.makapob@gmail.com","username":"amakarov"},"change_message_id":"f65e7135905940f88f0f471d204a949a86f76282","unresolved":false,"context_lines":[{"line_number":76,"context_line":".. _PyPi: http://pypi.python.org/"},{"line_number":77,"context_line":".. _pip: http://pypi.python.org/pypi/pip"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"Once pip has installed, we install ``tox``"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":".. code-block:: bash"},{"line_number":82,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"9a1a9d01_a1e498ab","line":79,"updated":"2015-09-30 13:25:04.000000000","message":"s/has/is/\n\nor \"has been installed\"","commit_id":"ef5a2a164687d8a2842d09c0ae023f4da569fe50"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"a4af6f4aa176f0736fc423f6261f00716dcd7ae9","unresolved":false,"context_lines":[{"line_number":76,"context_line":".. _PyPi: http://pypi.python.org/"},{"line_number":77,"context_line":".. _pip: http://pypi.python.org/pypi/pip"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"Once pip has installed, we install ``tox``"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":".. code-block:: bash"},{"line_number":82,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"9a1a9d01_7d44c148","line":79,"in_reply_to":"9a1a9d01_a1e498ab","updated":"2015-10-01 01:23:07.000000000","message":"Done","commit_id":"ef5a2a164687d8a2842d09c0ae023f4da569fe50"},{"author":{"_account_id":13055,"name":"Alexander Makarov","email":"ajiekcahdp.makapob@gmail.com","username":"amakarov"},"change_message_id":"f65e7135905940f88f0f471d204a949a86f76282","unresolved":false,"context_lines":[{"line_number":97,"context_line":"Verifying Keystone is set up"},{"line_number":98,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Once set up, within a virtualenv, you should be able to invoke Python and "},{"line_number":101,"context_line":"import the libraries. don\u0027t forget to activate it:"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":".. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9a1a9d01_6198c01c","line":100,"updated":"2015-09-30 13:25:04.000000000","message":"trailing whitespace, redundant comma:\n\n\"Once set up within a virtualenv, you should be able to invoke python and\"\n\npython is not a language here - it\u0027s a binary, so don\u0027t capitalize it","commit_id":"ef5a2a164687d8a2842d09c0ae023f4da569fe50"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"a4af6f4aa176f0736fc423f6261f00716dcd7ae9","unresolved":false,"context_lines":[{"line_number":97,"context_line":"Verifying Keystone is set up"},{"line_number":98,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Once set up, within a virtualenv, you should be able to invoke Python and "},{"line_number":101,"context_line":"import the libraries. don\u0027t forget to activate it:"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":".. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9a1a9d01_5d453d40","line":100,"in_reply_to":"9a1a9d01_6198c01c","updated":"2015-10-01 01:23:07.000000000","message":"Done","commit_id":"ef5a2a164687d8a2842d09c0ae023f4da569fe50"}]}
