)]}'
{"inc/python":[{"author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"change_message_id":"44750c1cb5959e3a7e71dd44ea450110a6f1a7b0","unresolved":false,"context_lines":[{"line_number":195,"context_line":"function is_in_projects_txt {"},{"line_number":196,"context_line":"    local project_dir\u003d$1"},{"line_number":197,"context_line":"    local project_name\u003d$(basename $project_dir)"},{"line_number":198,"context_line":"    grep \"/$project_name\\$\" $REQUIREMENTS_DIR/projects.txt \u003e/dev/null"},{"line_number":199,"context_line":"    return $?"},{"line_number":200,"context_line":"}"},{"line_number":201,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"ba3cc151_57b34be9","line":198,"updated":"2015-07-01 13:32:03.000000000","message":"We should just use grep -q here instead of redirecting stdout to /dev/null, but it\u0027s not the fault of this change.","commit_id":"912ce16196324a4fb98616876f25237d1129dfbf"},{"author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"change_message_id":"44750c1cb5959e3a7e71dd44ea450110a6f1a7b0","unresolved":false,"context_lines":[{"line_number":196,"context_line":"    local project_dir\u003d$1"},{"line_number":197,"context_line":"    local project_name\u003d$(basename $project_dir)"},{"line_number":198,"context_line":"    grep \"/$project_name\\$\" $REQUIREMENTS_DIR/projects.txt \u003e/dev/null"},{"line_number":199,"context_line":"    return $?"},{"line_number":200,"context_line":"}"},{"line_number":201,"context_line":""},{"line_number":202,"context_line":"# ``pip install -e`` the package, which processes the dependencies"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"ba3cc151_b775f7fa","line":199,"updated":"2015-07-01 13:32:03.000000000","message":"This is sort of a roundabout way to fix the bug. Under normal circumstances, the exit code from a function will be the exit code of the last statement run within the scope of that function. Try it for yourself.","commit_id":"912ce16196324a4fb98616876f25237d1129dfbf"},{"author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"change_message_id":"44750c1cb5959e3a7e71dd44ea450110a6f1a7b0","unresolved":false,"context_lines":[{"line_number":218,"context_line":""},{"line_number":219,"context_line":"    if [[ $update_requirements !\u003d \"changed\" ]]; then"},{"line_number":220,"context_line":"        is_in_projects_txt $project_dir"},{"line_number":221,"context_line":"        if [ $? -eq 0 ]; then"},{"line_number":222,"context_line":"            (cd $REQUIREMENTS_DIR; \\"},{"line_number":223,"context_line":"                ./.venv/bin/python update.py $project_dir)"},{"line_number":224,"context_line":"        else"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"ba3cc151_5747cb76","line":221,"updated":"2015-07-01 13:32:03.000000000","message":"This is unnecessary complexity. If the exit code of is_in_project_txt is 0 then \"if\" will evaluate that as a true boolean value, and will evaluate any nonzero exit code as a false boolean value. There\u0027s no need to explicitly match it against 0 here.","commit_id":"912ce16196324a4fb98616876f25237d1129dfbf"}]}
