)]}'
{"inc/python":[{"author":{"_account_id":27329,"name":"Federico Ressi","email":"fressi@redhat.com","username":"fressi_redhat"},"change_message_id":"520545de9a4a818858d525c38c805b6f112d9d3e","unresolved":false,"context_lines":[{"line_number":481,"context_line":"        else"},{"line_number":482,"context_line":"            # Install anyway Python 2 for legacy scripts that still requires"},{"line_number":483,"context_line":"            # python instead of python3 command"},{"line_number":484,"context_line":"            install_package python"},{"line_number":485,"context_line":"        fi"},{"line_number":486,"context_line":"    else"},{"line_number":487,"context_line":"        echo \"WARNING - Python 2 support has been deprecated in favor of Python 3\""}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"bf51134e_0d6bc584","side":"PARENT","line":484,"range":{"start_line":484,"start_character":12,"end_line":484,"end_character":34},"updated":"2020-06-23 12:12:19.000000000","message":"Are we really ready for dropping the existence of \u0027python\u0027 command from the system?","commit_id":"c2c2b6b415a4289ab740e7506f68e820ecbc5818"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"d7524b5ae742fccacfb561d7e379afda82c0956f","unresolved":false,"context_lines":[{"line_number":481,"context_line":"        else"},{"line_number":482,"context_line":"            # Install anyway Python 2 for legacy scripts that still requires"},{"line_number":483,"context_line":"            # python instead of python3 command"},{"line_number":484,"context_line":"            install_package python"},{"line_number":485,"context_line":"        fi"},{"line_number":486,"context_line":"    else"},{"line_number":487,"context_line":"        echo \"WARNING - Python 2 support has been deprecated in favor of Python 3\""}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"bf51134e_552a572b","side":"PARENT","line":484,"range":{"start_line":484,"start_character":12,"end_line":484,"end_character":34},"in_reply_to":"bf51134e_0d6bc584","updated":"2020-06-23 20:43:34.000000000","message":"We have merged a lot of patches in the last months to get rid of it, if you find a place where it is still needed, please create a bug or even better provide a patch to fix it.","commit_id":"c2c2b6b415a4289ab740e7506f68e820ecbc5818"},{"author":{"_account_id":27329,"name":"Federico Ressi","email":"fressi@redhat.com","username":"fressi_redhat"},"change_message_id":"520545de9a4a818858d525c38c805b6f112d9d3e","unresolved":false,"context_lines":[{"line_number":454,"context_line":"# Provide requested python version and sets PYTHON variable"},{"line_number":455,"context_line":"function install_python {"},{"line_number":456,"context_line":"    install_python3"},{"line_number":457,"context_line":"    export PYTHON\u003d$(which python${PYTHON3_VERSION} 2\u003e/dev/null)"},{"line_number":458,"context_line":"}"},{"line_number":459,"context_line":""},{"line_number":460,"context_line":"# Install python3 packages"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"bf51134e_ad71f978","line":457,"range":{"start_line":457,"start_character":18,"end_line":457,"end_character":63},"updated":"2020-06-23 12:12:19.000000000","message":"Some time value returned here could break because PATH value is not reliable. Because of that here I introduced a PYTHON_PREFIX\u003d/usr variable to enforce where to look first before other places.\n\nhttps://review.opendev.org/#/c/737498/","commit_id":"a818fe2b512390382b8e11e3ba2cb8a0c3f504e5"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"d7524b5ae742fccacfb561d7e379afda82c0956f","unresolved":false,"context_lines":[{"line_number":454,"context_line":"# Provide requested python version and sets PYTHON variable"},{"line_number":455,"context_line":"function install_python {"},{"line_number":456,"context_line":"    install_python3"},{"line_number":457,"context_line":"    export PYTHON\u003d$(which python${PYTHON3_VERSION} 2\u003e/dev/null)"},{"line_number":458,"context_line":"}"},{"line_number":459,"context_line":""},{"line_number":460,"context_line":"# Install python3 packages"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"bf51134e_35d40320","line":457,"range":{"start_line":457,"start_character":18,"end_line":457,"end_character":63},"in_reply_to":"bf51134e_ad71f978","updated":"2020-06-23 20:43:34.000000000","message":"We can discuss that in your patch, if it gets merged, I\u0027Ll rebase this accordingly.","commit_id":"a818fe2b512390382b8e11e3ba2cb8a0c3f504e5"},{"author":{"_account_id":27329,"name":"Federico Ressi","email":"fressi@redhat.com","username":"fressi_redhat"},"change_message_id":"5c0be36745ec1e0fab77da537b41c71c29b7307f","unresolved":false,"context_lines":[{"line_number":169,"context_line":"        local cmd_pip\u003d$PIP_VIRTUAL_ENV/bin/pip"},{"line_number":170,"context_line":"        local sudo_pip\u003d\"env\""},{"line_number":171,"context_line":"    else"},{"line_number":172,"context_line":"        local cmd_pip\u003d\"python$PYTHON3_VERSION -m pip\""},{"line_number":173,"context_line":"        local sudo_pip\u003d\"sudo -H LC_ALL\u003den_US.UTF-8\""},{"line_number":174,"context_line":"        echo \"Using python $PYTHON3_VERSION to install $package_dir\""},{"line_number":175,"context_line":"    fi"}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"bf51134e_37106fa8","line":172,"range":{"start_line":172,"start_character":23,"end_line":172,"end_character":45},"updated":"2020-06-25 06:45:59.000000000","message":"Isn\u0027t this equivalent to ${PYTHON}?\n\nAs we now have only one Python and one Pip I think it would be very nice to have a global variable defined for \"${PIP}\", \"${SUDO_PYTHON}\" and for \"${PYTHON}\" instead of re-executing the same stuff every single time we do execute pip_install. But we could leave it for later if you prefer.","commit_id":"fbc0c30c77e09499b85856b8761d204bef4e6ecb"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"5ef01789b161e369d4f78ce3e264ba381fee4933","unresolved":false,"context_lines":[{"line_number":169,"context_line":"        local cmd_pip\u003d$PIP_VIRTUAL_ENV/bin/pip"},{"line_number":170,"context_line":"        local sudo_pip\u003d\"env\""},{"line_number":171,"context_line":"    else"},{"line_number":172,"context_line":"        local cmd_pip\u003d\"python$PYTHON3_VERSION -m pip\""},{"line_number":173,"context_line":"        local sudo_pip\u003d\"sudo -H LC_ALL\u003den_US.UTF-8\""},{"line_number":174,"context_line":"        echo \"Using python $PYTHON3_VERSION to install $package_dir\""},{"line_number":175,"context_line":"    fi"}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"bf51134e_dcef92e6","line":172,"range":{"start_line":172,"start_character":23,"end_line":172,"end_character":45},"in_reply_to":"bf51134e_37106fa8","updated":"2020-06-25 13:27:04.000000000","message":"Yeah, that\u0027s more py3 cleanup than py2 removal, so that should go into a follow-up.","commit_id":"fbc0c30c77e09499b85856b8761d204bef4e6ecb"},{"author":{"_account_id":27329,"name":"Federico Ressi","email":"fressi@redhat.com","username":"fressi_redhat"},"change_message_id":"5c0be36745ec1e0fab77da537b41c71c29b7307f","unresolved":false,"context_lines":[{"line_number":206,"context_line":"        local cmd_pip\u003d$PIP_VIRTUAL_ENV/bin/pip"},{"line_number":207,"context_line":"        local sudo_pip\u003d\"env\""},{"line_number":208,"context_line":"    else"},{"line_number":209,"context_line":"        local cmd_pip\u003d\"python$PYTHON3_VERSION -m pip\""},{"line_number":210,"context_line":"        local sudo_pip\u003d\"sudo -H LC_ALL\u003den_US.UTF-8\""},{"line_number":211,"context_line":"    fi"},{"line_number":212,"context_line":"    # don\u0027t error if we can\u0027t uninstall, it might not be there"},{"line_number":213,"context_line":"    $sudo_pip $cmd_pip uninstall -y $name || /bin/true"}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"bf51134e_17656b46","line":210,"range":{"start_line":209,"start_character":0,"end_line":210,"end_character":51},"updated":"2020-06-25 06:45:59.000000000","message":"Same thing as for pip_install. I found here code duplication and repeated operation execution which result could be cached to a shared global variable.","commit_id":"fbc0c30c77e09499b85856b8761d204bef4e6ecb"},{"author":{"_account_id":27329,"name":"Federico Ressi","email":"fressi@redhat.com","username":"fressi_redhat"},"change_message_id":"5c0be36745ec1e0fab77da537b41c71c29b7307f","unresolved":false,"context_lines":[{"line_number":452,"context_line":"# Provide requested python version and sets PYTHON variable"},{"line_number":453,"context_line":"function install_python {"},{"line_number":454,"context_line":"    install_python3"},{"line_number":455,"context_line":"    export PYTHON\u003d$(which python${PYTHON3_VERSION} 2\u003e/dev/null)"},{"line_number":456,"context_line":"}"},{"line_number":457,"context_line":""},{"line_number":458,"context_line":"# Install python3 packages"}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"bf51134e_d74e53bf","line":455,"range":{"start_line":455,"start_character":0,"end_line":455,"end_character":63},"updated":"2020-06-25 06:45:59.000000000","message":"TODO: Move this line to the end of install_python function. Please also define there the PIP variables to be used from pip_install. In such way this function could go away.","commit_id":"fbc0c30c77e09499b85856b8761d204bef4e6ecb"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"60e646372233ce08dc136ec9c7dc74a8a1777fae","unresolved":false,"context_lines":[{"line_number":446,"context_line":"# Report whether python 3 should be used"},{"line_number":447,"context_line":"# TODO(frickler): drop this once all legacy uses are removed"},{"line_number":448,"context_line":"function python3_enabled {"},{"line_number":449,"context_line":"    return 1"},{"line_number":450,"context_line":"}"},{"line_number":451,"context_line":""},{"line_number":452,"context_line":"# Provide requested python version and sets PYTHON variable"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"bf51134e_b8feee35","line":449,"updated":"2020-06-30 15:39:45.000000000","message":"1 means false in bash..","commit_id":"d7a82f41e469fc51fb021184c1fa6c98da428411"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"2c74a7ff2d20a5dc2529dc2c55fce28acb361b8a","unresolved":false,"context_lines":[{"line_number":446,"context_line":"# Report whether python 3 should be used"},{"line_number":447,"context_line":"# TODO(frickler): drop this once all legacy uses are removed"},{"line_number":448,"context_line":"function python3_enabled {"},{"line_number":449,"context_line":"    return 1"},{"line_number":450,"context_line":"}"},{"line_number":451,"context_line":""},{"line_number":452,"context_line":"# Provide requested python version and sets PYTHON variable"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"bf51134e_78173653","line":449,"in_reply_to":"bf51134e_b8feee35","updated":"2020-06-30 15:50:41.000000000","message":"Good catch, indeed the logic got inversed here.","commit_id":"d7a82f41e469fc51fb021184c1fa6c98da428411"}],"lib/glance":[{"author":{"_account_id":27329,"name":"Federico Ressi","email":"fressi@redhat.com","username":"fressi_redhat"},"change_message_id":"520545de9a4a818858d525c38c805b6f112d9d3e","unresolved":false,"context_lines":[{"line_number":190,"context_line":"        iniset $GLANCE_API_CONF glance_store swift_store_config_file $GLANCE_SWIFT_STORE_CONF"},{"line_number":191,"context_line":"        iniset $GLANCE_API_CONF glance_store default_swift_reference ref1"},{"line_number":192,"context_line":"        iniset $GLANCE_API_CONF glance_store stores \"file, http, swift\""},{"line_number":193,"context_line":"        if is_service_enabled tls-proxy; then"},{"line_number":194,"context_line":"            iniset $GLANCE_API_CONF glance_store swift_store_cacert $SSL_BUNDLE_FILE"},{"line_number":195,"context_line":"        fi"},{"line_number":196,"context_line":"        iniset $GLANCE_API_CONF DEFAULT graceful_shutdown_timeout \"$SERVICE_GRACEFUL_SHUTDOWN_TIMEOUT\""}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"bf51134e_6d2a412c","line":193,"range":{"start_line":193,"start_character":30,"end_line":193,"end_character":39},"updated":"2020-06-23 12:12:19.000000000","message":"Please add a comment to explain how tls-proxy is related with glance store.","commit_id":"a818fe2b512390382b8e11e3ba2cb8a0c3f504e5"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"d7524b5ae742fccacfb561d7e379afda82c0956f","unresolved":false,"context_lines":[{"line_number":190,"context_line":"        iniset $GLANCE_API_CONF glance_store swift_store_config_file $GLANCE_SWIFT_STORE_CONF"},{"line_number":191,"context_line":"        iniset $GLANCE_API_CONF glance_store default_swift_reference ref1"},{"line_number":192,"context_line":"        iniset $GLANCE_API_CONF glance_store stores \"file, http, swift\""},{"line_number":193,"context_line":"        if is_service_enabled tls-proxy; then"},{"line_number":194,"context_line":"            iniset $GLANCE_API_CONF glance_store swift_store_cacert $SSL_BUNDLE_FILE"},{"line_number":195,"context_line":"        fi"},{"line_number":196,"context_line":"        iniset $GLANCE_API_CONF DEFAULT graceful_shutdown_timeout \"$SERVICE_GRACEFUL_SHUTDOWN_TIMEOUT\""}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"bf51134e_f56a8b7e","line":193,"range":{"start_line":193,"start_character":30,"end_line":193,"end_character":39},"in_reply_to":"bf51134e_6d2a412c","updated":"2020-06-23 20:43:34.000000000","message":"This was taken from Ia1e8f596c95dd7b6e63cb21a94c8316dc71bf945 , with that patch merged, it is no longer needed.","commit_id":"a818fe2b512390382b8e11e3ba2cb8a0c3f504e5"}],"stackrc":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"ae4942b9aa134fbe113554ec3171579d291710a7","unresolved":false,"context_lines":[{"line_number":134,"context_line":"fi"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"# Control whether Python 3 should be used at all."},{"line_number":137,"context_line":"# TODO(frickler): Drop this when all consumers are fixed"},{"line_number":138,"context_line":"export USE_PYTHON3\u003dTrue"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"# Adding the specific version of Python 3 to this variable will install"},{"line_number":141,"context_line":"# the app using that version of the interpreter instead of just 3."}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"bf51134e_790d8ae6","line":138,"range":{"start_line":137,"start_character":0,"end_line":138,"end_character":23},"updated":"2020-06-29 17:10:05.000000000","message":"+1, let\u0027s keep it till project like swift or storlet drop py2. they cap requirement based on this var\n- https://opendev.org/openstack/storlets/src/branch/master/.functests#L19","commit_id":"d7a82f41e469fc51fb021184c1fa6c98da428411"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"ae4942b9aa134fbe113554ec3171579d291710a7","unresolved":false,"context_lines":[{"line_number":144,"context_line":""},{"line_number":145,"context_line":"# Create a virtualenv with this"},{"line_number":146,"context_line":"# Use the built-in venv to avoid more dependencies"},{"line_number":147,"context_line":"export VIRTUALENV_CMD\u003d\"python3 -m venv\""},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"# Default for log coloring is based on interactive-or-not."},{"line_number":150,"context_line":"# Baseline assumption is that non-interactive invocations are for CI,"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"bf51134e_797c6a71","line":147,"range":{"start_line":147,"start_character":0,"end_line":147,"end_character":39},"updated":"2020-06-29 17:10:05.000000000","message":"this will make life easy.","commit_id":"d7a82f41e469fc51fb021184c1fa6c98da428411"}],"tools/install_pip.sh":[{"author":{"_account_id":27329,"name":"Federico Ressi","email":"fressi@redhat.com","username":"fressi_redhat"},"change_message_id":"520545de9a4a818858d525c38c805b6f112d9d3e","unresolved":false,"context_lines":[{"line_number":89,"context_line":"            die $LINENO \"Download of get-pip.py failed\""},{"line_number":90,"context_line":"        touch $LOCAL_PIP.downloaded"},{"line_number":91,"context_line":"    fi"},{"line_number":92,"context_line":"    sudo -H -E python${PYTHON3_VERSION} $LOCAL_PIP"},{"line_number":93,"context_line":"}"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":""}],"source_content_type":"text/x-sh","patch_set":2,"id":"bf51134e_2dc2095a","line":92,"range":{"start_line":92,"start_character":15,"end_line":92,"end_character":39},"updated":"2020-06-23 12:12:19.000000000","message":"Isn\u0027t PYTHON variable already defined here? Please consider replacing it here.","commit_id":"a818fe2b512390382b8e11e3ba2cb8a0c3f504e5"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"d7524b5ae742fccacfb561d7e379afda82c0956f","unresolved":false,"context_lines":[{"line_number":89,"context_line":"            die $LINENO \"Download of get-pip.py failed\""},{"line_number":90,"context_line":"        touch $LOCAL_PIP.downloaded"},{"line_number":91,"context_line":"    fi"},{"line_number":92,"context_line":"    sudo -H -E python${PYTHON3_VERSION} $LOCAL_PIP"},{"line_number":93,"context_line":"}"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":""}],"source_content_type":"text/x-sh","patch_set":2,"id":"bf51134e_750cbbeb","line":92,"range":{"start_line":92,"start_character":15,"end_line":92,"end_character":39},"in_reply_to":"bf51134e_2dc2095a","updated":"2020-06-23 20:43:34.000000000","message":"That would be a different patch IMHO.","commit_id":"a818fe2b512390382b8e11e3ba2cb8a0c3f504e5"}]}
