)]}'
{"functions":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"f87231559457fdc8f34d21d2bd429bbca8308499","unresolved":false,"context_lines":[{"line_number":1141,"context_line":""},{"line_number":1142,"context_line":"    echo \"cd $REQUIREMENTS_DIR; $SUDO_CMD python update.py $project_dir\""},{"line_number":1143,"context_line":""},{"line_number":1144,"context_line":"    if [[ \"$FORCE_REQUIREMENTS\" \u003d\u003d \"True\" ]]; then"},{"line_number":1145,"context_line":"        (cd $REQUIREMENTS_DIR; \\"},{"line_number":1146,"context_line":"            $SUDO_CMD python update.py $project_dir)"},{"line_number":1147,"context_line":"    fi"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"AAAAQn%2F%2FF7o%3D","line":1144,"updated":"2013-08-07 10:47:53.000000000","message":"so I actually think that we need Monty\u0027s solution here instead of a flag, because the resultant environment if this code is used, vs. not, is *very* different. So if we hide this behind a variable that\u0027s off by default people are going to be developing in an environment that can\u0027t get through the gate.","commit_id":"21e2ea9520002f38969f8c174ecd2a031d13eac8"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"365bb6f6bde87f66e50fd676215583f416ba49db","unresolved":false,"context_lines":[{"line_number":1141,"context_line":""},{"line_number":1142,"context_line":"    echo \"cd $REQUIREMENTS_DIR; $SUDO_CMD python update.py $project_dir\""},{"line_number":1143,"context_line":""},{"line_number":1144,"context_line":"    if [[ \"$FORCE_REQUIREMENTS\" \u003d\u003d \"True\" ]]; then"},{"line_number":1145,"context_line":"        (cd $REQUIREMENTS_DIR; \\"},{"line_number":1146,"context_line":"            $SUDO_CMD python update.py $project_dir)"},{"line_number":1147,"context_line":"    fi"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"AAAAQn%2F%2FDYw%3D","line":1144,"in_reply_to":"AAAAQn%2F%2FEmg%3D","updated":"2013-08-07 21:09:52.000000000","message":"if we\u0027ve still got a bad requirement upstream, we should fix that. One of the things this has caused a shake out on is the fact that our minimums aren\u0027t right on global-requirements. They run clean in the gate, but they don\u0027t actually work in the real world.","commit_id":"21e2ea9520002f38969f8c174ecd2a031d13eac8"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"1a92415c007b9438c71f95a133b12324f6cc615f","unresolved":false,"context_lines":[{"line_number":1141,"context_line":""},{"line_number":1142,"context_line":"    echo \"cd $REQUIREMENTS_DIR; $SUDO_CMD python update.py $project_dir\""},{"line_number":1143,"context_line":""},{"line_number":1144,"context_line":"    if [[ \"$FORCE_REQUIREMENTS\" \u003d\u003d \"True\" ]]; then"},{"line_number":1145,"context_line":"        (cd $REQUIREMENTS_DIR; \\"},{"line_number":1146,"context_line":"            $SUDO_CMD python update.py $project_dir)"},{"line_number":1147,"context_line":"    fi"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"AAAAQn%2F%2FEmg%3D","line":1144,"in_reply_to":"AAAAQn%2F%2FF7o%3D","updated":"2013-08-07 16:11:34.000000000","message":"With the current state of affairs this totally fubars the pip installed packages.  I get a badly-installed prettytools (of all things!) with the egg dir at mode 0700 that borks up all python after that.  On totally unmodified repos.\n\nThat may be due to the current state of the repos, but at present it doesn\u0027t work.","commit_id":"21e2ea9520002f38969f8c174ecd2a031d13eac8"}],"tools/install_pip.sh":[{"author":{"_account_id":6473,"name":"Sunil Thaha","email":"sthaha@redhat.com","username":"sthaha"},"change_message_id":"020c4097ee81c78bf56af43fca5346259da3e0e3","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#!/usr/bin/env bash"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# **install_pip.sh**"},{"line_number":4,"context_line":""}],"source_content_type":"text/x-sh","patch_set":1,"id":"AAAAQn%2F%2FUdk%3D","line":1,"updated":"2013-08-02 00:40:13.000000000","message":"do yo want to set -e and -u","commit_id":"86c79a3d5c2557a40fcd2cc2b5e25bc37cc6a722"},{"author":{"_account_id":6473,"name":"Sunil Thaha","email":"sthaha@redhat.com","username":"sthaha"},"change_message_id":"020c4097ee81c78bf56af43fca5346259da3e0e3","unresolved":false,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# **install_pip.sh**"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"# install_pip.sh [--force]"},{"line_number":6,"context_line":"#"},{"line_number":7,"context_line":"# Update pip and friends to a known common version"},{"line_number":8,"context_line":"# Removes any vendor-packaged pip/setuptools/distribute and re-installs"}],"source_content_type":"text/x-sh","patch_set":1,"id":"AAAAQn%2F%2FUaA%3D","line":5,"updated":"2013-08-02 00:40:13.000000000","message":"$FORCE is never checked to be \u0027--force\u0027","commit_id":"86c79a3d5c2557a40fcd2cc2b5e25bc37cc6a722"},{"author":{"_account_id":6473,"name":"Sunil Thaha","email":"sthaha@redhat.com","username":"sthaha"},"change_message_id":"020c4097ee81c78bf56af43fca5346259da3e0e3","unresolved":false,"context_lines":[{"line_number":8,"context_line":"# Removes any vendor-packaged pip/setuptools/distribute and re-installs"},{"line_number":9,"context_line":"# from source"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"FORCE\u003d$1"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"GOOD_PIP_VERSION\u003d\"1.4\""},{"line_number":14,"context_line":""}],"source_content_type":"text/x-sh","patch_set":1,"id":"AAAAQn%2F%2FUdI%3D","line":11,"updated":"2013-08-02 00:40:13.000000000","message":"with set -u , How about \n\nFORCE\u003d${1:-\u0027\u0027}","commit_id":"86c79a3d5c2557a40fcd2cc2b5e25bc37cc6a722"},{"author":{"_account_id":6473,"name":"Sunil Thaha","email":"sthaha@redhat.com","username":"sthaha"},"change_message_id":"020c4097ee81c78bf56af43fca5346259da3e0e3","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"# Keep track of the current directory"},{"line_number":16,"context_line":"TOOLS_DIR\u003d$(cd $(dirname \"$0\") \u0026\u0026 pwd)"},{"line_number":17,"context_line":"TOP_DIR\u003d`cd $TOOLS_DIR/..; pwd`"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"# Change dir to top of devstack"},{"line_number":20,"context_line":"cd $TOP_DIR"}],"source_content_type":"text/x-sh","patch_set":1,"id":"AAAAQn%2F%2FUc0%3D","line":17,"updated":"2013-08-02 00:40:13.000000000","message":"how about\nTOP_DIR\u003d`readlink -f $TOOLS_DIR/..`","commit_id":"86c79a3d5c2557a40fcd2cc2b5e25bc37cc6a722"},{"author":{"_account_id":6473,"name":"Sunil Thaha","email":"sthaha@redhat.com","username":"sthaha"},"change_message_id":"020c4097ee81c78bf56af43fca5346259da3e0e3","unresolved":false,"context_lines":[{"line_number":17,"context_line":"TOP_DIR\u003d`cd $TOOLS_DIR/..; pwd`"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"# Change dir to top of devstack"},{"line_number":20,"context_line":"cd $TOP_DIR"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"# Import common functions"},{"line_number":23,"context_line":"source $TOP_DIR/functions"}],"source_content_type":"text/x-sh","patch_set":1,"id":"AAAAQn%2F%2FUak%3D","line":20,"updated":"2013-08-02 00:40:13.000000000","message":"is this needed?","commit_id":"86c79a3d5c2557a40fcd2cc2b5e25bc37cc6a722"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"71a5f63298e585eed7e13c7ff94fcf25bb494432","unresolved":false,"context_lines":[{"line_number":48,"context_line":"if [[ -z $PIP || \"$PIP_VERSION\" !\u003d \"$GOOD_PIP_VERSION\" || -n $FORCE ]]; then"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    # Eradicate any and all system packages"},{"line_number":51,"context_line":"    uninstall_package python-setuptools python-pip"},{"line_number":52,"context_line":"    # go looking for more???"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    setuptools_from_source"}],"source_content_type":"text/x-sh","patch_set":1,"id":"AAAAQn%2F%2FTxE%3D","line":51,"updated":"2013-08-02 05:45:11.000000000","message":"My problem with this is two fold : firstly that it removes all dependencies, and secondly the package can re-appear if a later rpm gets installed, where it the overwrites any pip version.\n\nI\u0027ve posted [1] which uses this work to install upstream pip, but also installs a dummy dependency so we don\u0027t mess up other rpm packages and hopefully keep it from coming back\n\n[1] https://review.openstack.org/#/c/39862/","commit_id":"86c79a3d5c2557a40fcd2cc2b5e25bc37cc6a722"}]}
