)]}'
{"doc/source/development_saio.rst":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"71b278a9c1fb450c81aa12a721a4960f526c1997","unresolved":false,"context_lines":[{"line_number":250,"context_line":"---------------------"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"Do the following commands as root, but verify that Swift has access"},{"line_number":253,"context_line":"to resulting configuration files."},{"line_number":254,"context_line":""},{"line_number":255,"context_line":"Sample configuration files are provided with all defaults in line-by-line"},{"line_number":256,"context_line":"comments."}],"source_content_type":"text/x-rst","patch_set":1,"id":"AAAAS3%2F%2FFC0%3D","line":253,"updated":"2013-10-04 19:15:45.000000000","message":"as root?","commit_id":"4b49992dd292050ea6003fe75892ca5333f3e23a"},{"author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"change_message_id":"a8312d1fe4f7256124f511165c7a0312112898ae","unresolved":false,"context_lines":[{"line_number":250,"context_line":"---------------------"},{"line_number":251,"context_line":""},{"line_number":252,"context_line":"Do the following commands as root, but verify that Swift has access"},{"line_number":253,"context_line":"to resulting configuration files."},{"line_number":254,"context_line":""},{"line_number":255,"context_line":"Sample configuration files are provided with all defaults in line-by-line"},{"line_number":256,"context_line":"comments."}],"source_content_type":"text/x-rst","patch_set":1,"id":"AAAAS3%2F%2FE9M%3D","line":253,"in_reply_to":"AAAAS3%2F%2FFC0%3D","updated":"2013-10-04 19:23:10.000000000","message":"Ah, thanks, missed that. Will fix.","commit_id":"4b49992dd292050ea6003fe75892ca5333f3e23a"},{"author":{"_account_id":7479,"name":"paul luse","email":"paul.e.luse@intel.com","username":"peluse"},"change_message_id":"77ed45ad0e7926e3397ba76ce3394b893c8476a5","unresolved":false,"context_lines":[{"line_number":131,"context_line":"  #. Check out the python-swiftclient repo"},{"line_number":132,"context_line":"       `git clone https://github.com/openstack/python-swiftclient.git`"},{"line_number":133,"context_line":"  #. Build a development installation of python-swiftclient"},{"line_number":134,"context_line":"       `cd ~/python-swiftclient; sudo python setup.py develop; cd -`"},{"line_number":135,"context_line":"  #. Check out the swift repo"},{"line_number":136,"context_line":"       `git clone https://github.com/openstack/swift.git`"},{"line_number":137,"context_line":"  #. Build a development installation of swift"}],"source_content_type":"text/x-rst","patch_set":5,"id":"AAAATn%2F%2FEVA%3D","line":134,"updated":"2013-11-14 22:10:24.000000000","message":"I know you didn\u0027t change this and it could be user error but I got a complaint when running setup.py about pby and then manually did \u0027sudo pip install pbr\u0027 then reran and it worked OK","commit_id":"162b797b75ae8238d9bdb14224da78b06b18799f"},{"author":{"_account_id":7479,"name":"paul luse","email":"paul.e.luse@intel.com","username":"peluse"},"change_message_id":"77ed45ad0e7926e3397ba76ce3394b893c8476a5","unresolved":false,"context_lines":[{"line_number":188,"context_line":""},{"line_number":189,"context_line":"  #. Verify rsync is accepting connections for all servers::"},{"line_number":190,"context_line":""},{"line_number":191,"context_line":"        rsync rsync://pub@localhost/"},{"line_number":192,"context_line":""},{"line_number":193,"context_line":"------------------"},{"line_number":194,"context_line":"Starting memcached"}],"source_content_type":"text/x-rst","patch_set":5,"id":"AAAATn%2F%2FEVc%3D","line":191,"updated":"2013-11-14 22:10:24.000000000","message":"might be good to show expected output here:\naccount6012\naccount6022\naccount6032\naccount6042\ncontainer6011\ncontainer6021\ncontainer6031\ncontainer6041\nobject6010\nobject6020\nobject6030\nobject6040","commit_id":"162b797b75ae8238d9bdb14224da78b06b18799f"},{"author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"change_message_id":"ab81fc730ef9188843adcbb2d6b4d6d10a87a349","unresolved":false,"context_lines":[{"line_number":188,"context_line":""},{"line_number":189,"context_line":"  #. Verify rsync is accepting connections for all servers::"},{"line_number":190,"context_line":""},{"line_number":191,"context_line":"        rsync rsync://pub@localhost/"},{"line_number":192,"context_line":""},{"line_number":193,"context_line":"------------------"},{"line_number":194,"context_line":"Starting memcached"}],"source_content_type":"text/x-rst","patch_set":5,"id":"AAAATn%2F%2BEOE%3D","line":191,"in_reply_to":"AAAATn%2F%2FEVc%3D","updated":"2013-12-03 00:48:14.000000000","message":"Done","commit_id":"162b797b75ae8238d9bdb14224da78b06b18799f"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"bcbcb5406ab4099cb7ddb639c5a9ebe02243b311","unresolved":false,"context_lines":[{"line_number":248,"context_line":"Configuring each node"},{"line_number":249,"context_line":"---------------------"},{"line_number":250,"context_line":""},{"line_number":251,"context_line":"Do the following commands as root, but verify that Swift has access"},{"line_number":252,"context_line":"to resulting configuration files."},{"line_number":253,"context_line":""},{"line_number":254,"context_line":"Sample configuration files are provided with all defaults in line-by-line"}],"source_content_type":"text/x-rst","patch_set":5,"id":"AAAATn%2F%2B2M0%3D","line":251,"updated":"2013-11-19 12:24:14.000000000","message":"as root?","commit_id":"162b797b75ae8238d9bdb14224da78b06b18799f"},{"author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"change_message_id":"ab81fc730ef9188843adcbb2d6b4d6d10a87a349","unresolved":false,"context_lines":[{"line_number":248,"context_line":"Configuring each node"},{"line_number":249,"context_line":"---------------------"},{"line_number":250,"context_line":""},{"line_number":251,"context_line":"Do the following commands as root, but verify that Swift has access"},{"line_number":252,"context_line":"to resulting configuration files."},{"line_number":253,"context_line":""},{"line_number":254,"context_line":"Sample configuration files are provided with all defaults in line-by-line"}],"source_content_type":"text/x-rst","patch_set":5,"id":"AAAATn%2F%2BENo%3D","line":251,"in_reply_to":"AAAATn%2F%2B2M0%3D","updated":"2013-12-03 00:48:14.000000000","message":"Removed this and all other references to needing to be administrator, as the paragraph starting at line 26 covers the need for sudo.","commit_id":"162b797b75ae8238d9bdb14224da78b06b18799f"},{"author":{"_account_id":7479,"name":"paul luse","email":"paul.e.luse@intel.com","username":"peluse"},"change_message_id":"77ed45ad0e7926e3397ba76ce3394b893c8476a5","unresolved":false,"context_lines":[{"line_number":274,"context_line":""},{"line_number":275,"context_line":"  #. Edit the `~/bin/resetswift` script"},{"line_number":276,"context_line":""},{"line_number":277,"context_line":"     If you are using a loopback device substitute `/dev/sdb1` with"},{"line_number":278,"context_line":"     `/srv/swift-disk` in the `mkfs` step."},{"line_number":279,"context_line":""},{"line_number":280,"context_line":"     If you did not set up rsyslog for individual logging, remove the `find"}],"source_content_type":"text/x-rst","patch_set":5,"id":"AAAATn%2F%2FER8%3D","line":277,"updated":"2013-11-14 22:10:24.000000000","message":"since you\u0027re making things easier maybe document something like this instead: sed -i \"s/dev\\/sdb1/srv\\/swift-disk/\" resetswift","commit_id":"162b797b75ae8238d9bdb14224da78b06b18799f"},{"author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"change_message_id":"ab81fc730ef9188843adcbb2d6b4d6d10a87a349","unresolved":false,"context_lines":[{"line_number":274,"context_line":""},{"line_number":275,"context_line":"  #. Edit the `~/bin/resetswift` script"},{"line_number":276,"context_line":""},{"line_number":277,"context_line":"     If you are using a loopback device substitute `/dev/sdb1` with"},{"line_number":278,"context_line":"     `/srv/swift-disk` in the `mkfs` step."},{"line_number":279,"context_line":""},{"line_number":280,"context_line":"     If you did not set up rsyslog for individual logging, remove the `find"}],"source_content_type":"text/x-rst","patch_set":5,"id":"AAAATn%2F%2BEM8%3D","line":277,"in_reply_to":"AAAATn%2F%2FER8%3D","updated":"2013-12-03 00:48:14.000000000","message":"Done","commit_id":"162b797b75ae8238d9bdb14224da78b06b18799f"},{"author":{"_account_id":7479,"name":"paul luse","email":"paul.e.luse@intel.com","username":"peluse"},"change_message_id":"77ed45ad0e7926e3397ba76ce3394b893c8476a5","unresolved":false,"context_lines":[{"line_number":284,"context_line":"     \u003cname\u003e.service`."},{"line_number":285,"context_line":""},{"line_number":286,"context_line":"  #. `chmod +x ~/bin/*`"},{"line_number":287,"context_line":"  #. Edit `~/.bashrc` and add to the end::"},{"line_number":288,"context_line":""},{"line_number":289,"context_line":"        export SWIFT_TEST_CONFIG_FILE\u003d/etc/swift/test.conf"},{"line_number":290,"context_line":"        export PATH\u003d${PATH}:~/bin"}],"source_content_type":"text/x-rst","patch_set":5,"id":"AAAATn%2F%2FEQI%3D","line":287,"updated":"2013-11-14 22:10:24.000000000","message":"maybe make this easier to copy n paste instead of edit with:\necho \"export SWIFT_TEST_CONFIG_FILE\u003d/etc/swift/test.conf\" \u003e\u003e ~/.bashrc\necho \"export PATH\u003d${PATH}:~/bin\" \u003e\u003e ~/.bashrc","commit_id":"162b797b75ae8238d9bdb14224da78b06b18799f"},{"author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"change_message_id":"ab81fc730ef9188843adcbb2d6b4d6d10a87a349","unresolved":false,"context_lines":[{"line_number":284,"context_line":"     \u003cname\u003e.service`."},{"line_number":285,"context_line":""},{"line_number":286,"context_line":"  #. `chmod +x ~/bin/*`"},{"line_number":287,"context_line":"  #. Edit `~/.bashrc` and add to the end::"},{"line_number":288,"context_line":""},{"line_number":289,"context_line":"        export SWIFT_TEST_CONFIG_FILE\u003d/etc/swift/test.conf"},{"line_number":290,"context_line":"        export PATH\u003d${PATH}:~/bin"}],"source_content_type":"text/x-rst","patch_set":5,"id":"AAAATn%2F%2BELA%3D","line":287,"in_reply_to":"AAAATn%2F%2FEQI%3D","updated":"2013-12-03 00:48:14.000000000","message":"Done","commit_id":"162b797b75ae8238d9bdb14224da78b06b18799f"},{"author":{"_account_id":7479,"name":"paul luse","email":"paul.e.luse@intel.com","username":"peluse"},"change_message_id":"77ed45ad0e7926e3397ba76ce3394b893c8476a5","unresolved":false,"context_lines":[{"line_number":290,"context_line":"        export PATH\u003d${PATH}:~/bin"},{"line_number":291,"context_line":""},{"line_number":292,"context_line":"  #. `. ~/.bashrc`"},{"line_number":293,"context_line":"  #. `remakerings`"},{"line_number":294,"context_line":"  #. `cp ~/swift/test/sample.conf /etc/swift/test.conf`"},{"line_number":295,"context_line":"  #. `~/swift/.unittests`"},{"line_number":296,"context_line":"  #. `startmain`"}],"source_content_type":"text/x-rst","patch_set":5,"id":"AAAATn%2F%2FEQE%3D","line":293,"updated":"2013-11-14 22:10:24.000000000","message":"show expected output maybe?\nDevice d0r1z1-127.0.0.1:6010R127.0.0.1:6010/sdb1_\"\" with 1.0 weight got id 0\nDevice d1r1z2-127.0.0.1:6020R127.0.0.1:6020/sdb2_\"\" with 1.0 weight got id 1\nDevice d2r1z3-127.0.0.1:6030R127.0.0.1:6030/sdb3_\"\" with 1.0 weight got id 2\nDevice d3r1z4-127.0.0.1:6040R127.0.0.1:6040/sdb4_\"\" with 1.0 weight got id 3\nReassigned 1024 (100.00%) partitions. Balance is now 0.00.\nDevice d0r1z1-127.0.0.1:6011R127.0.0.1:6011/sdb1_\"\" with 1.0 weight got id 0\nDevice d1r1z2-127.0.0.1:6021R127.0.0.1:6021/sdb2_\"\" with 1.0 weight got id 1\nDevice d2r1z3-127.0.0.1:6031R127.0.0.1:6031/sdb3_\"\" with 1.0 weight got id 2\nDevice d3r1z4-127.0.0.1:6041R127.0.0.1:6041/sdb4_\"\" with 1.0 weight got id 3\nReassigned 1024 (100.00%) partitions. Balance is now 0.00.\nDevice d0r1z1-127.0.0.1:6012R127.0.0.1:6012/sdb1_\"\" with 1.0 weight got id 0\nDevice d1r1z2-127.0.0.1:6022R127.0.0.1:6022/sdb2_\"\" with 1.0 weight got id 1\nDevice d2r1z3-127.0.0.1:6032R127.0.0.1:6032/sdb3_\"\" with 1.0 weight got id 2\nDevice d3r1z4-127.0.0.1:6042R127.0.0.1:6042/sdb4_\"\" with 1.0 weight got id 3\nReassigned 1024 (100.00%) partitions. Balance is now 0.00.","commit_id":"162b797b75ae8238d9bdb14224da78b06b18799f"},{"author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"change_message_id":"ab81fc730ef9188843adcbb2d6b4d6d10a87a349","unresolved":false,"context_lines":[{"line_number":290,"context_line":"        export PATH\u003d${PATH}:~/bin"},{"line_number":291,"context_line":""},{"line_number":292,"context_line":"  #. `. ~/.bashrc`"},{"line_number":293,"context_line":"  #. `remakerings`"},{"line_number":294,"context_line":"  #. `cp ~/swift/test/sample.conf /etc/swift/test.conf`"},{"line_number":295,"context_line":"  #. `~/swift/.unittests`"},{"line_number":296,"context_line":"  #. `startmain`"}],"source_content_type":"text/x-rst","patch_set":5,"id":"AAAATn%2F%2BEKM%3D","line":293,"in_reply_to":"AAAATn%2F%2FEQE%3D","updated":"2013-12-03 00:48:14.000000000","message":"Done","commit_id":"162b797b75ae8238d9bdb14224da78b06b18799f"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"aee1d12f2533200b9290c10676341bb18aef1386","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"Swift processes also run under a separate user and group, set by configuration"},{"line_number":31,"context_line":"option, and refered as ``\u003cyour-user-name\u003e:\u003cyour-group-name\u003e``.  The default user"},{"line_number":32,"context_line":"is ``swift``, which may not exist on your system.  These instructions are"},{"line_number":33,"context_line":"intended to allow a developer to use his/her username for"},{"line_number":34,"context_line":"``\u003cyour-user-name\u003e:\u003cyour-group-name\u003e``."},{"line_number":35,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"AAAATn%2F9zYc%3D","line":32,"updated":"2013-12-05 18:45:20.000000000","message":"Okay guys, you win. I remember Leah wanted something like this and I could not fathom what kind of individual might have trouble with merely running one tiny useradd swift! Since you cleared up the scriplets to allow the admin to substitute for swift, I accept this.","commit_id":"78ada654f5f8353d6dae6cee7d3049512c549efe"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"aee1d12f2533200b9290c10676341bb18aef1386","unresolved":false,"context_lines":[{"line_number":411,"context_line":"        sed -i \"/find \\/var\\/log\\/swift/d\" $HOME/bin/resetswift"},{"line_number":412,"context_line":""},{"line_number":413,"context_line":"     On Fedora, replace ``service \u003cname\u003e restart`` with ``systemctl restart"},{"line_number":414,"context_line":"     \u003cname\u003e.service``::"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"        sed -i \"s/service \\(.*\\) restart/systemctl restart \\1.service/\" $HOME/bin/resetswift"},{"line_number":417,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"AAAATn%2F9zXw%3D","line":414,"updated":"2013-12-05 18:45:20.000000000","message":"You know that you can omit \".service\" since systemd-200 or so? Just type systemctl start memcached.","commit_id":"78ada654f5f8353d6dae6cee7d3049512c549efe"},{"author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"change_message_id":"2a187223d2c7edd6728535c4a5a47aa187a2ef7c","unresolved":false,"context_lines":[{"line_number":411,"context_line":"        sed -i \"/find \\/var\\/log\\/swift/d\" $HOME/bin/resetswift"},{"line_number":412,"context_line":""},{"line_number":413,"context_line":"     On Fedora, replace ``service \u003cname\u003e restart`` with ``systemctl restart"},{"line_number":414,"context_line":"     \u003cname\u003e.service``::"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"        sed -i \"s/service \\(.*\\) restart/systemctl restart \\1.service/\" $HOME/bin/resetswift"},{"line_number":417,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"AAAATn%2F9t%2FY%3D","line":414,"in_reply_to":"AAAATn%2F9zXw%3D","updated":"2013-12-06 19:19:36.000000000","message":"That is good to know. I am going to leave it as is so that folks who install on older systemd versions are good.","commit_id":"78ada654f5f8353d6dae6cee7d3049512c549efe"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"aee1d12f2533200b9290c10676341bb18aef1386","unresolved":false,"context_lines":[{"line_number":500,"context_line":"If all doesn\u0027t go as planned, and tests fail, or you can\u0027t auth, or something"},{"line_number":501,"context_line":"doesn\u0027t work, here are some good starting places to look for issues:"},{"line_number":502,"context_line":""},{"line_number":503,"context_line":"#. Everything is logged using system facilities -- usually in ``/var/log/syslog``,"},{"line_number":504,"context_line":"   but possibly in ``/var/log/messages`` on e.g. Fedora -- so that is a good first"},{"line_number":505,"context_line":"   place to look for errors (most likely python tracebacks)."},{"line_number":506,"context_line":"#. Make sure all of the server processes are running.  For the base"}],"source_content_type":"text/x-rst","patch_set":11,"id":"AAAATn%2F9zXU%3D","line":503,"updated":"2013-12-05 18:45:20.000000000","message":"There\u0027s a small problem here... This paragraph is true despite all the log establishment in /var/log/swift above, because if you do not edit rsyslog.conf and add local0.none, it logs everything two times: into /var/log/syslog or /var/log/messages _and_ into the logs you carefuly set up. So... What the heck did we go into trouble of logging configuration for?","commit_id":"78ada654f5f8353d6dae6cee7d3049512c549efe"},{"author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"change_message_id":"2a187223d2c7edd6728535c4a5a47aa187a2ef7c","unresolved":false,"context_lines":[{"line_number":500,"context_line":"If all doesn\u0027t go as planned, and tests fail, or you can\u0027t auth, or something"},{"line_number":501,"context_line":"doesn\u0027t work, here are some good starting places to look for issues:"},{"line_number":502,"context_line":""},{"line_number":503,"context_line":"#. Everything is logged using system facilities -- usually in ``/var/log/syslog``,"},{"line_number":504,"context_line":"   but possibly in ``/var/log/messages`` on e.g. Fedora -- so that is a good first"},{"line_number":505,"context_line":"   place to look for errors (most likely python tracebacks)."},{"line_number":506,"context_line":"#. Make sure all of the server processes are running.  For the base"}],"source_content_type":"text/x-rst","patch_set":11,"id":"AAAATn%2F9t94%3D","line":503,"in_reply_to":"AAAATn%2F9zXU%3D","updated":"2013-12-06 19:19:36.000000000","message":"I am not seeing that on my F19 VM.","commit_id":"78ada654f5f8353d6dae6cee7d3049512c549efe"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"aee1d12f2533200b9290c10676341bb18aef1386","unresolved":false,"context_lines":[{"line_number":505,"context_line":"   place to look for errors (most likely python tracebacks)."},{"line_number":506,"context_line":"#. Make sure all of the server processes are running.  For the base"},{"line_number":507,"context_line":"   functionality, the Proxy, Account, Container, and Object servers"},{"line_number":508,"context_line":"   should be running."},{"line_number":509,"context_line":"#. If one of the servers are not running, and no errors are logged to syslog,"},{"line_number":510,"context_line":"   it may be useful to try to start the server manually, for example:"},{"line_number":511,"context_line":"   ``swift-object-server /etc/swift/object-server/1.conf`` will start the"}],"source_content_type":"text/x-rst","patch_set":11,"id":"AAAATn%2F9zXM%3D","line":508,"updated":"2013-12-05 18:45:20.000000000","message":"Maybe keep mentioning memcahed here too. People keep forgetting about it.","commit_id":"78ada654f5f8353d6dae6cee7d3049512c549efe"},{"author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"change_message_id":"2a187223d2c7edd6728535c4a5a47aa187a2ef7c","unresolved":false,"context_lines":[{"line_number":505,"context_line":"   place to look for errors (most likely python tracebacks)."},{"line_number":506,"context_line":"#. Make sure all of the server processes are running.  For the base"},{"line_number":507,"context_line":"   functionality, the Proxy, Account, Container, and Object servers"},{"line_number":508,"context_line":"   should be running."},{"line_number":509,"context_line":"#. If one of the servers are not running, and no errors are logged to syslog,"},{"line_number":510,"context_line":"   it may be useful to try to start the server manually, for example:"},{"line_number":511,"context_line":"   ``swift-object-server /etc/swift/object-server/1.conf`` will start the"}],"source_content_type":"text/x-rst","patch_set":11,"id":"AAAATn%2F9t9Y%3D","line":508,"in_reply_to":"AAAATn%2F9zXM%3D","updated":"2013-12-06 19:19:36.000000000","message":"I am not so sure, since memcache is more of a performance issue, it should not be a correctness issue, should it?","commit_id":"78ada654f5f8353d6dae6cee7d3049512c549efe"},{"author":{"_account_id":330,"name":"John Dickinson","email":"me@not.mn","username":"notmyname"},"change_message_id":"05a10b6c5db59ab09e165e826dfa7ff5fbc37119","unresolved":false,"context_lines":[{"line_number":39,"context_line":""},{"line_number":40,"context_line":"* On ``apt`` based systems::"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"        sudo apt-get update`"},{"line_number":43,"context_line":"        sudo apt-get install curl gcc memcached rsync sqlite3 xfsprogs \\"},{"line_number":44,"context_line":"                             git-core libffi-dev python-setuptools"},{"line_number":45,"context_line":"        sudo apt-get install python-coverage python-dev python-nose \\"}],"source_content_type":"text/x-rst","patch_set":12,"id":"AAAATn%2F9lh0%3D","line":42,"updated":"2013-12-09 22:54:48.000000000","message":"close tick","commit_id":"c69ba44e0aabcdc5e93b6c9047ce117829641696"},{"author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"change_message_id":"426e595621123a9e486ed2d0790aecbda07731ef","unresolved":false,"context_lines":[{"line_number":39,"context_line":""},{"line_number":40,"context_line":"* On ``apt`` based systems::"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"        sudo apt-get update`"},{"line_number":43,"context_line":"        sudo apt-get install curl gcc memcached rsync sqlite3 xfsprogs \\"},{"line_number":44,"context_line":"                             git-core libffi-dev python-setuptools"},{"line_number":45,"context_line":"        sudo apt-get install python-coverage python-dev python-nose \\"}],"source_content_type":"text/x-rst","patch_set":12,"id":"AAAATn%2F9k8M%3D","line":42,"in_reply_to":"AAAATn%2F9lh0%3D","updated":"2013-12-10 01:56:42.000000000","message":"Done","commit_id":"c69ba44e0aabcdc5e93b6c9047ce117829641696"},{"author":{"_account_id":330,"name":"John Dickinson","email":"me@not.mn","username":"notmyname"},"change_message_id":"05a10b6c5db59ab09e165e826dfa7ff5fbc37119","unresolved":false,"context_lines":[{"line_number":43,"context_line":"        sudo apt-get install curl gcc memcached rsync sqlite3 xfsprogs \\"},{"line_number":44,"context_line":"                             git-core libffi-dev python-setuptools"},{"line_number":45,"context_line":"        sudo apt-get install python-coverage python-dev python-nose \\"},{"line_number":46,"context_line":"                             python-simplejso python-xattr python-eventlet \\"},{"line_number":47,"context_line":"                             python-greenlet python-pastedeploy \\"},{"line_number":48,"context_line":"                             python-netifaces python-pip python-dnspython \\"},{"line_number":49,"context_line":"                             python-mock"}],"source_content_type":"text/x-rst","patch_set":12,"id":"AAAATn%2F9lhk%3D","line":46,"updated":"2013-12-09 22:54:48.000000000","message":"python-simplejson","commit_id":"c69ba44e0aabcdc5e93b6c9047ce117829641696"},{"author":{"_account_id":6198,"name":"Peter Portante","email":"peter.a.portante@gmail.com","username":"peter-a-portante"},"change_message_id":"426e595621123a9e486ed2d0790aecbda07731ef","unresolved":false,"context_lines":[{"line_number":43,"context_line":"        sudo apt-get install curl gcc memcached rsync sqlite3 xfsprogs \\"},{"line_number":44,"context_line":"                             git-core libffi-dev python-setuptools"},{"line_number":45,"context_line":"        sudo apt-get install python-coverage python-dev python-nose \\"},{"line_number":46,"context_line":"                             python-simplejso python-xattr python-eventlet \\"},{"line_number":47,"context_line":"                             python-greenlet python-pastedeploy \\"},{"line_number":48,"context_line":"                             python-netifaces python-pip python-dnspython \\"},{"line_number":49,"context_line":"                             python-mock"}],"source_content_type":"text/x-rst","patch_set":12,"id":"AAAATn%2F9k8I%3D","line":46,"in_reply_to":"AAAATn%2F9lhk%3D","updated":"2013-12-10 01:56:42.000000000","message":"Done","commit_id":"c69ba44e0aabcdc5e93b6c9047ce117829641696"}]}
