)]}'
{"doc/source/index.rst":[{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"31fb24dcad7176b013cd67b41ff888d5d9952012","unresolved":false,"context_lines":[{"line_number":86,"context_line":"      ``my/path/to/doc``. In most cases, this does not need to be set as the"},{"line_number":87,"context_line":"      theme will assume one of the following:"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"      - ``doc/{docType}/source`` (e.g. ``doc/contrib-guide/source``)"},{"line_number":90,"context_line":"      - ``{docType}/source``  (e.g. ``doc/source``, ``api-guide/source``)"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"#. Enable the \"last-updated\" information by setting the format for the"}],"source_content_type":"text/x-rst","patch_set":2,"id":"9f91af0f_d28a5c68","line":89,"range":{"start_line":89,"start_character":32,"end_line":89,"end_character":68},"updated":"2018-01-09 14:06:56.000000000","message":"spell out \"e.g.\", like \"like\" or \"example\", also below\n\nsee https://docs.openstack.org/doc-contrib-guide/writing-style/word-choice.html","commit_id":"ddf6ef5d4b05516af1d06c0aa9f2b87455501fdc"}],"openstackdocstheme/__init__.py":[{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"6e1e82be13e4e25e1ecfaea381cb457a482bd261","unresolved":false,"context_lines":[{"line_number":65,"context_line":""},{"line_number":66,"context_line":"def _get_doc_path(app):"},{"line_number":67,"context_line":"    doc_parts \u003d os.path.abspath(app.srcdir).split(os.sep)[-2:]"},{"line_number":68,"context_line":"    if doc_parts[1] !\u003d \u0027source\u0027:"},{"line_number":69,"context_line":"        app.warn(\u0027Cannot identify project\\\u0027s root directory.\u0027)"},{"line_number":70,"context_line":"        return"},{"line_number":71,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f91af0f_11b3e64e","line":68,"updated":"2018-01-09 12:02:15.000000000","message":"Will this work with openstack-manuals/doc/arch-design/source/ etc?","commit_id":"b9ec3348fe8456e944c93238f825f4c59520b9b2"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"a827d8d3a653349d6b0827a89a8f0b243176e3e2","unresolved":false,"context_lines":[{"line_number":65,"context_line":""},{"line_number":66,"context_line":"def _get_doc_path(app):"},{"line_number":67,"context_line":"    doc_parts \u003d os.path.abspath(app.srcdir).split(os.sep)[-2:]"},{"line_number":68,"context_line":"    if doc_parts[1] !\u003d \u0027source\u0027:"},{"line_number":69,"context_line":"        app.warn(\u0027Cannot identify project\\\u0027s root directory.\u0027)"},{"line_number":70,"context_line":"        return"},{"line_number":71,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f91af0f_51496e2e","line":68,"in_reply_to":"9f91af0f_11b3e64e","updated":"2018-01-09 12:08:01.000000000","message":"It won\u0027t - so can we support that? Otherwise openstack-manuals fails...\n\nSo, support doc/X/source in addition to X/source and we should be good...","commit_id":"b9ec3348fe8456e944c93238f825f4c59520b9b2"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"08f5358f60406d782132878436d52b2491aefd4e","unresolved":false,"context_lines":[{"line_number":125,"context_line":"        doc_path \u003d _get_doc_path(app)"},{"line_number":126,"context_line":"        repo_name \u003d app.config.repository_name"},{"line_number":127,"context_line":"        if repo_name and doc_path:"},{"line_number":128,"context_line":"            _html_context_data[\u0027giturl\u0027] \u003d _giturl.format(repo_name, doc_path)"},{"line_number":129,"context_line":"        bug_project \u003d app.config.bug_project"},{"line_number":130,"context_line":"        if bug_project:"},{"line_number":131,"context_line":"            _html_context_data[\u0027bug_project\u0027] \u003d bug_project"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f91af0f_49b0e28a","line":128,"updated":"2018-01-09 15:27:26.000000000","message":"If _get_doc_path() finds app.config.giturl set then we shouldn\u0027t combine that value with the _giturl and repo_name because it\u0027s supposed to be a full URL, right?","commit_id":"ffdd572e8c5b8175cd0f6f9b5d2ce49bc3045e2b"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"fc357a7d80039322fa9b7a7870aca074b8ffc612","unresolved":false,"context_lines":[{"line_number":125,"context_line":"        doc_path \u003d _get_doc_path(app)"},{"line_number":126,"context_line":"        repo_name \u003d app.config.repository_name"},{"line_number":127,"context_line":"        if repo_name and doc_path:"},{"line_number":128,"context_line":"            _html_context_data[\u0027giturl\u0027] \u003d _giturl.format(repo_name, doc_path)"},{"line_number":129,"context_line":"        bug_project \u003d app.config.bug_project"},{"line_number":130,"context_line":"        if bug_project:"},{"line_number":131,"context_line":"            _html_context_data[\u0027bug_project\u0027] \u003d bug_project"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f91af0f_bc0bead3","line":128,"in_reply_to":"9f91af0f_49b0e28a","updated":"2018-01-09 15:39:45.000000000","message":"giturl was initially intented this way but this change changes it to just the \"releasenotes/source/\" part.\n\nI suggest to rename giturl to sourcepath or something like that.","commit_id":"ffdd572e8c5b8175cd0f6f9b5d2ce49bc3045e2b"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"6c2856a29fd90ed2ddf7c3dcfea36db803804f5b","unresolved":false,"context_lines":[{"line_number":76,"context_line":"    if doc_parts[1] \u003d\u003d \u0027source\u0027:"},{"line_number":77,"context_line":"        return \u0027/\u0027.join(doc_parts)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    logger.warn(\u0027Cannot identify project\\\u0027s root directory.\u0027)"},{"line_number":80,"context_line":"    return"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9f91af0f_d0732f15","line":79,"updated":"2018-01-09 17:53:29.000000000","message":"I\u0027m concerned about this warning breaking a build without any way for the consuming project to fix it without moving all of their content around. It looks like the caller will just not set giturl if the path is empty, so maybe we should log at info level instead and then check and see how often the message comes up in elastic search.","commit_id":"15b3f413df805f3135d5b9afb407b2caa8f28bb2"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"9de73588a1341e77f54a1b11a30f712bab11554a","unresolved":false,"context_lines":[{"line_number":76,"context_line":"    if doc_parts[1] \u003d\u003d \u0027source\u0027:"},{"line_number":77,"context_line":"        return \u0027/\u0027.join(doc_parts)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    logger.warn(\u0027Cannot identify project\\\u0027s root directory.\u0027)"},{"line_number":80,"context_line":"    return"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9f91af0f_9a4e1436","line":79,"in_reply_to":"9f91af0f_d0732f15","updated":"2018-01-10 09:38:27.000000000","message":"Good call. Done.","commit_id":"15b3f413df805f3135d5b9afb407b2caa8f28bb2"}]}
