)]}'
{"doc/source/setuptools.rst":[{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"f37f7459e3ca382c0215f43c5c47fda93177d3e0","unresolved":false,"context_lines":[{"line_number":31,"context_line":"       ..."},{"line_number":32,"context_line":"       command_options\u003d{"},{"line_number":33,"context_line":"           \u0027build_reno\u0027: {"},{"line_number":34,"context_line":"               \u0027output_file\u0027: (\u0027setup.py\u0027, \u0027RELEASENOTES\u0027),"},{"line_number":35,"context_line":"       },"},{"line_number":36,"context_line":"   )"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"7f231b9d_ff7ba5f1","line":34,"updated":"2017-06-16 18:06:29.000000000","message":"Why is the value a tuple here?","commit_id":"29740487975565583d10c35fe218328d5e703093"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"fe3aeed2a311a659249ebacc7c6460e07abb78f0","unresolved":false,"context_lines":[{"line_number":31,"context_line":"       ..."},{"line_number":32,"context_line":"       command_options\u003d{"},{"line_number":33,"context_line":"           \u0027build_reno\u0027: {"},{"line_number":34,"context_line":"               \u0027output_file\u0027: (\u0027setup.py\u0027, \u0027RELEASENOTES\u0027),"},{"line_number":35,"context_line":"       },"},{"line_number":36,"context_line":"   )"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"7f231b9d_9a301ba1","line":34,"in_reply_to":"7f231b9d_ff7ba5f1","updated":"2017-06-19 15:18:43.000000000","message":"setuptools doesn\u0027t have docs for this (or a lot else, for that matter :/) but I spotted this on a random post while trying to figure it out. The first element corresponds to the source of the configuration option while the second is the actual value. I should go fix the setuptools documentation really but this is correct, IMO","commit_id":"29740487975565583d10c35fe218328d5e703093"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"f37f7459e3ca382c0215f43c5c47fda93177d3e0","unresolved":false,"context_lines":[{"line_number":43,"context_line":"   [build_reno]"},{"line_number":44,"context_line":"   output-file \u003d RELEASENOTES.txt"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"Options for setuptools integration"},{"line_number":47,"context_line":"----------------------------------"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"`repo-root`"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7f231b9d_7f58b586","line":46,"updated":"2017-06-16 18:06:29.000000000","message":"What is the order of precedence for these options compared to the normal config file?","commit_id":"29740487975565583d10c35fe218328d5e703093"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"fe3aeed2a311a659249ebacc7c6460e07abb78f0","unresolved":false,"context_lines":[{"line_number":43,"context_line":"   [build_reno]"},{"line_number":44,"context_line":"   output-file \u003d RELEASENOTES.txt"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"Options for setuptools integration"},{"line_number":47,"context_line":"----------------------------------"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"`repo-root`"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7f231b9d_9a8c9b36","line":46,"in_reply_to":"7f231b9d_7f58b586","updated":"2017-06-19 15:18:43.000000000","message":"I\u0027ve removed the one of these that conflicts with reno\u0027s own config file (notes-dir). The rest are either pass to the reno executable itself usually or only correspond to this option.","commit_id":"29740487975565583d10c35fe218328d5e703093"}],"reno/defaults.py":[{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"da2dba88b32e5bb40f512e5aff750b77beceb61d","unresolved":false,"context_lines":[{"line_number":86,"context_line":"\"\"\""},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"# default filename of a release notes file generated by the setuptool extension"},{"line_number":89,"context_line":"RELEASE_NOTES_FILENAME \u003d \u0027RELEASE-NOTES.rst\u0027"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"# default path to the root of the repo, used by the setuptools extension"},{"line_number":92,"context_line":"REPO_ROOT \u003d \u0027.\u0027"}],"source_content_type":"text/x-python","patch_set":10,"id":"bf659307_6b12b45a","line":89,"updated":"2018-04-10 17:40:44.000000000","message":"This default doesn\u0027t match the documentation. I\u0027m not sure what \"standard\" is considered, but I would expect the name to not include a dash. I don\u0027t feel strongly enough to -1 over that, though.","commit_id":"5d2c035bbd2edbd633bbca6debfabe7a0c52965a"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"bbb069d9d26ef03c55bece70b13c21ffe9e494da","unresolved":false,"context_lines":[{"line_number":86,"context_line":"\"\"\""},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"# default filename of a release notes file generated by the setuptool extension"},{"line_number":89,"context_line":"RELEASE_NOTES_FILENAME \u003d \u0027RELEASE-NOTES.rst\u0027"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"# default path to the root of the repo, used by the setuptools extension"},{"line_number":92,"context_line":"REPO_ROOT \u003d \u0027.\u0027"}],"source_content_type":"text/x-python","patch_set":10,"id":"bf659307_03c8ad1f","line":89,"in_reply_to":"bf659307_6b12b45a","updated":"2018-04-11 08:26:58.000000000","message":"Done","commit_id":"5d2c035bbd2edbd633bbca6debfabe7a0c52965a"}],"reno/setup_command.py":[{"author":{"_account_id":14758,"name":"Rajath Agasthya","email":"rajagast@cisco.com","username":"rajathagasthya"},"change_message_id":"72336598bd8eeea12d1b16b0f1a7fe6ba8396423","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        if val is None:"},{"line_number":78,"context_line":"            setattr(self, option, default)"},{"line_number":79,"context_line":"            return default"},{"line_number":80,"context_line":"        elif not isinstance(val, string_types):"},{"line_number":81,"context_line":"            raise error.DistutilsOptionError(\"\u0027%s\u0027 must be a %s (got `%s`)\""},{"line_number":82,"context_line":"                                             % (option, what, val))"},{"line_number":83,"context_line":"        return val"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_3f76bd3f","line":80,"range":{"start_line":80,"start_character":33,"end_line":80,"end_character":45},"updated":"2017-06-16 17:50:10.000000000","message":"Missing import `from six import string_types`.","commit_id":"29740487975565583d10c35fe218328d5e703093"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"fe3aeed2a311a659249ebacc7c6460e07abb78f0","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        if val is None:"},{"line_number":78,"context_line":"            setattr(self, option, default)"},{"line_number":79,"context_line":"            return default"},{"line_number":80,"context_line":"        elif not isinstance(val, string_types):"},{"line_number":81,"context_line":"            raise error.DistutilsOptionError(\"\u0027%s\u0027 must be a %s (got `%s`)\""},{"line_number":82,"context_line":"                                             % (option, what, val))"},{"line_number":83,"context_line":"        return val"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_7a8f7f29","line":80,"range":{"start_line":80,"start_character":33,"end_line":80,"end_character":45},"in_reply_to":"7f231b9d_3f76bd3f","updated":"2017-06-19 15:18:43.000000000","message":"Done","commit_id":"29740487975565583d10c35fe218328d5e703093"},{"author":{"_account_id":14758,"name":"Rajath Agasthya","email":"rajagast@cisco.com","username":"rajathagasthya"},"change_message_id":"72336598bd8eeea12d1b16b0f1a7fe6ba8396423","unresolved":false,"context_lines":[{"line_number":78,"context_line":"            setattr(self, option, default)"},{"line_number":79,"context_line":"            return default"},{"line_number":80,"context_line":"        elif not isinstance(val, string_types):"},{"line_number":81,"context_line":"            raise error.DistutilsOptionError(\"\u0027%s\u0027 must be a %s (got `%s`)\""},{"line_number":82,"context_line":"                                             % (option, what, val))"},{"line_number":83,"context_line":"        return val"},{"line_number":84,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_3fefdde9","line":81,"range":{"start_line":81,"start_character":18,"end_line":81,"end_character":23},"updated":"2017-06-16 17:50:10.000000000","message":"Should be `errors` according to the import.","commit_id":"29740487975565583d10c35fe218328d5e703093"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"fe3aeed2a311a659249ebacc7c6460e07abb78f0","unresolved":false,"context_lines":[{"line_number":78,"context_line":"            setattr(self, option, default)"},{"line_number":79,"context_line":"            return default"},{"line_number":80,"context_line":"        elif not isinstance(val, string_types):"},{"line_number":81,"context_line":"            raise error.DistutilsOptionError(\"\u0027%s\u0027 must be a %s (got `%s`)\""},{"line_number":82,"context_line":"                                             % (option, what, val))"},{"line_number":83,"context_line":"        return val"},{"line_number":84,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_3a858707","line":81,"range":{"start_line":81,"start_character":18,"end_line":81,"end_character":23},"in_reply_to":"7f231b9d_3fefdde9","updated":"2017-06-19 15:18:43.000000000","message":"Done","commit_id":"29740487975565583d10c35fe218328d5e703093"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"f37f7459e3ca382c0215f43c5c47fda93177d3e0","unresolved":false,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    def run(self):"},{"line_number":86,"context_line":"        conf \u003d config.Config(self.repo_root, self.rel_notes_dir)"},{"line_number":87,"context_line":"        conf.notesdir \u003d self.notes_dir"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"        # Generate the cache using the configuration options found"},{"line_number":90,"context_line":"        # in the release notes directory and the default output"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_bfb64d89","line":87,"updated":"2017-06-16 18:06:29.000000000","message":"It would be better to use the override() method here in case we make changes to the Config class internals later.","commit_id":"29740487975565583d10c35fe218328d5e703093"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"fe3aeed2a311a659249ebacc7c6460e07abb78f0","unresolved":false,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    def run(self):"},{"line_number":86,"context_line":"        conf \u003d config.Config(self.repo_root, self.rel_notes_dir)"},{"line_number":87,"context_line":"        conf.notesdir \u003d self.notes_dir"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"        # Generate the cache using the configuration options found"},{"line_number":90,"context_line":"        # in the release notes directory and the default output"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_7ae2dfd6","line":87,"in_reply_to":"7f231b9d_bfb64d89","updated":"2017-06-19 15:18:43.000000000","message":"I actually got rid of this, seeing as we could read from the reno configuration file instead","commit_id":"29740487975565583d10c35fe218328d5e703093"},{"author":{"_account_id":14758,"name":"Rajath Agasthya","email":"rajagast@cisco.com","username":"rajathagasthya"},"change_message_id":"a93aa9a20ff6a902f58e20fa2e3c0c635c108dcb","unresolved":false,"context_lines":[{"line_number":31,"context_line":"from reno import formatter"},{"line_number":32,"context_line":"from reno import loader"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"if sys.version_info[0] \u003d\u003d 2:"},{"line_number":35,"context_line":"    string_types \u003d str,"},{"line_number":36,"context_line":"else:"},{"line_number":37,"context_line":"    string_types \u003d basestring,"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"COMMAND_NAME \u003d \u0027build_reno\u0027  # duplicates what\u0027s found in setup.cfg"}],"source_content_type":"text/x-python","patch_set":2,"id":"7f231b9d_19e08ffa","line":37,"range":{"start_line":34,"start_character":0,"end_line":37,"end_character":30},"updated":"2017-06-19 19:00:35.000000000","message":"Nitpick: You can just use the six package to import string_types. It essentially does the same checks.","commit_id":"e0c448863b78ed3e515a2405a7867acc4a7f41a8"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"01e02738a9e5524f77d6312716cb29e4e84f121d","unresolved":false,"context_lines":[{"line_number":31,"context_line":"from reno import formatter"},{"line_number":32,"context_line":"from reno import loader"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"if sys.version_info[0] \u003d\u003d 2:"},{"line_number":35,"context_line":"    string_types \u003d str,"},{"line_number":36,"context_line":"else:"},{"line_number":37,"context_line":"    string_types \u003d basestring,"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"COMMAND_NAME \u003d \u0027build_reno\u0027  # duplicates what\u0027s found in setup.cfg"}],"source_content_type":"text/x-python","patch_set":2,"id":"7f231b9d_393a15cd","line":37,"range":{"start_line":34,"start_character":0,"end_line":37,"end_character":30},"in_reply_to":"7f231b9d_19e08ffa","updated":"2017-06-20 09:42:52.000000000","message":"I was avoiding this because it was causing an import error. However, it appears we\u0027re getting other errors now. See the pep8 job","commit_id":"e0c448863b78ed3e515a2405a7867acc4a7f41a8"}]}
