)]}'
{"specs/kilo/adopt-debtcollector.rst":[{"author":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"change_message_id":"4ed67ccfa81d88470dba2fe0e68ecaf0731443d5","unresolved":false,"context_lines":[{"line_number":4,"context_line":" Graduating debtcollector"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Include the URL of your launchpad blueprint:"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"https://blueprints.launchpad.net/taskflow/+spec/adopt-debtcollector"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"3a961159_0d4ab825","line":7,"updated":"2014-12-12 10:27:06.000000000","message":"Would remove the boilerplate lines :)","commit_id":"187e2d94452ae045b2e1aaaca8322aaa12b0be58"},{"author":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"change_message_id":"4ed67ccfa81d88470dba2fe0e68ecaf0731443d5","unresolved":false,"context_lines":[{"line_number":11,"context_line":"The idea for this library is to provide a common set of reusable and"},{"line_number":12,"context_line":"understandable, well documented patterns that can be used to remove debt in"},{"line_number":13,"context_line":"a project (without forcing that project to completly break backward"},{"line_number":14,"context_line":"compatability in a single release)."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"For example the following patterns could be considered common:"},{"line_number":17,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"3a961159_0df8f8c1","line":14,"updated":"2014-12-12 10:27:06.000000000","message":"typos: completely ... compatibility","commit_id":"187e2d94452ae045b2e1aaaca8322aaa12b0be58"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"6f0cd7051a4444799479e75bca318010ef848395","unresolved":false,"context_lines":[{"line_number":28,"context_line":"  thought of to be a good location, but after usage a alternative location"},{"line_number":29,"context_line":"  would make more sense)."},{"line_number":30,"context_line":"* ..."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"Library Name"},{"line_number":33,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"3a961159_28091b2c","line":31,"updated":"2014-12-12 14:30:55.000000000","message":"I think it\u0027s important to understand what deprecation looks like:\n\n* User facing deprecation (when a user is using a feature that is going to go away)\n* Developer facing deprecation\n\nFor the user facing case we should always emit a warning, including when the feature is expected to be removed. We should have the option to make these deprecations fatal to ensure that configurations in the gate don\u0027t include deprecated user configs.\n\nFor the developer facing case we should not emit by default. We should have a way for developers to turn on WARNings in test runs, and a part of the standard tox targets that collects up all deprecated interfaces and displays them at the end of a tox run so developers know they have things to fix.\n\nIn all cases, a deprecation warning must only be emitted once per process run, regardless of the number of workers started from it.","commit_id":"187e2d94452ae045b2e1aaaca8322aaa12b0be58"},{"author":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"change_message_id":"4ed67ccfa81d88470dba2fe0e68ecaf0731443d5","unresolved":false,"context_lines":[{"line_number":32,"context_line":"Library Name"},{"line_number":33,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"What is the name of the new library?: *debtcollector*"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"Contents"},{"line_number":38,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3a961159_8d65c8b6","line":35,"updated":"2014-12-12 10:27:06.000000000","message":"same, remove boilerplate","commit_id":"187e2d94452ae045b2e1aaaca8322aaa12b0be58"},{"author":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"change_message_id":"4ed67ccfa81d88470dba2fe0e68ecaf0731443d5","unresolved":false,"context_lines":[{"line_number":173,"context_line":""},{"line_number":174,"context_line":"* Change owner of Launchpad project"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"  * https://launchpad.net/debtcollector"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"* Give openstackci Owner permissions on PyPI"},{"line_number":179,"context_line":"* Create Initial Repository"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3a961159_8dc14856","line":176,"updated":"2014-12-12 10:27:06.000000000","message":"Looks done now. Maybe add \"make it part of the Oslo projectgroup\" instead.","commit_id":"187e2d94452ae045b2e1aaaca8322aaa12b0be58"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"43ef9af26017fa26d374d0ceb36533ebbadd9ac1","unresolved":false,"context_lines":[{"line_number":1,"context_line":".."},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":" Graduating debtcollector"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"https://blueprints.launchpad.net/taskflow/+spec/adopt-debtcollector"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3a961159_002a6b7e","line":4,"updated":"2014-12-12 19:10:39.000000000","message":"\"Creating\" instead of \"Graduating\"?","commit_id":"c8405cae418d462cdfcb3dabeae5098f5639404e"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"725170480f0b8b3c1af352247671493af12c7314","unresolved":false,"context_lines":[{"line_number":1,"context_line":".."},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":" Graduating debtcollector"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"https://blueprints.launchpad.net/taskflow/+spec/adopt-debtcollector"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3a961159_807adbba","line":4,"in_reply_to":"3a961159_002a6b7e","updated":"2014-12-12 19:20:21.000000000","message":"Done","commit_id":"c8405cae418d462cdfcb3dabeae5098f5639404e"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"43ef9af26017fa26d374d0ceb36533ebbadd9ac1","unresolved":false,"context_lines":[{"line_number":62,"context_line":"less/not visible in a released library)."},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"To aid in this process it might be useful to hook into the following (but"},{"line_number":65,"context_line":"this can be for later discussion): https://docs.python.org/2/library/logging.html#logging.captureWarnings"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"::"},{"line_number":68,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3a961159_c0b8632c","line":65,"updated":"2014-12-12 19:10:39.000000000","message":"We can leave it up to applications to decide if they want to run captureWarnings(), or we could put a call in the oslo.log setup code if we decide we want it used everywhere. We could also turn on warnings through the oslotest base class so they show up in test output. Either way, I don\u0027t think this library needs to worry about it. The warnings API is the appropriate mechanism for these messages.","commit_id":"c8405cae418d462cdfcb3dabeae5098f5639404e"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"725170480f0b8b3c1af352247671493af12c7314","unresolved":false,"context_lines":[{"line_number":62,"context_line":"less/not visible in a released library)."},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"To aid in this process it might be useful to hook into the following (but"},{"line_number":65,"context_line":"this can be for later discussion): https://docs.python.org/2/library/logging.html#logging.captureWarnings"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"::"},{"line_number":68,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3a961159_c080638d","line":65,"in_reply_to":"3a961159_c0b8632c","updated":"2014-12-12 19:20:21.000000000","message":"Sure, let me state that instead of this.","commit_id":"c8405cae418d462cdfcb3dabeae5098f5639404e"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"43ef9af26017fa26d374d0ceb36533ebbadd9ac1","unresolved":false,"context_lines":[{"line_number":209,"context_line":"Milestones"},{"line_number":210,"context_line":"----------"},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"Target Milestone for completion: kilo-X (?)"},{"line_number":213,"context_line":""},{"line_number":214,"context_line":"Work Items"},{"line_number":215,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3a961159_40cab3a1","line":212,"updated":"2014-12-12 19:10:39.000000000","message":"You have a lot of the code written, and there isn\u0027t so much that I think we\u0027ll have trouble reviewing it, so it might be reasonable to say kilo-2 here. I\u0027ll leave that up to you, of course.","commit_id":"c8405cae418d462cdfcb3dabeae5098f5639404e"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"725170480f0b8b3c1af352247671493af12c7314","unresolved":false,"context_lines":[{"line_number":209,"context_line":"Milestones"},{"line_number":210,"context_line":"----------"},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"Target Milestone for completion: kilo-X (?)"},{"line_number":213,"context_line":""},{"line_number":214,"context_line":"Work Items"},{"line_number":215,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3a961159_e07b9fbb","line":212,"in_reply_to":"3a961159_40cab3a1","updated":"2014-12-12 19:20:21.000000000","message":"Sure, I wasn\u0027t sure, will put k-2.","commit_id":"c8405cae418d462cdfcb3dabeae5098f5639404e"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"43ef9af26017fa26d374d0ceb36533ebbadd9ac1","unresolved":false,"context_lines":[{"line_number":243,"context_line":"Requirements"},{"line_number":244,"context_line":"------------"},{"line_number":245,"context_line":""},{"line_number":246,"context_line":"* python 2.6 (or 2.7?) and --\u003e 3.4"},{"line_number":247,"context_line":"* wrapt (http://wrapt.readthedocs.org)"},{"line_number":248,"context_line":"* six (https://bitbucket.org/gutworth/six)"},{"line_number":249,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3a961159_60e08ffa","line":246,"updated":"2014-12-12 19:10:39.000000000","message":"Unfortunately, because this is for handling deprecations, and that means it is likely to be used in libraries that support 2.6, I think we\u0027ll need to ensure it is supported under 2.6 is as well.","commit_id":"c8405cae418d462cdfcb3dabeae5098f5639404e"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"725170480f0b8b3c1af352247671493af12c7314","unresolved":false,"context_lines":[{"line_number":243,"context_line":"Requirements"},{"line_number":244,"context_line":"------------"},{"line_number":245,"context_line":""},{"line_number":246,"context_line":"* python 2.6 (or 2.7?) and --\u003e 3.4"},{"line_number":247,"context_line":"* wrapt (http://wrapt.readthedocs.org)"},{"line_number":248,"context_line":"* six (https://bitbucket.org/gutworth/six)"},{"line_number":249,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3a961159_40447373","line":246,"in_reply_to":"3a961159_60e08ffa","updated":"2014-12-12 19:20:21.000000000","message":"Ok dokie. Shouldn\u0027t be a problem.","commit_id":"c8405cae418d462cdfcb3dabeae5098f5639404e"},{"author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"change_message_id":"a9ca933378da0fd9c386a6472517321dcee464ca","unresolved":false,"context_lines":[{"line_number":83,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* ``debtcollector/__init__.py``"},{"line_number":86,"context_line":"* ``debtcollector/utils.py``  (internal utils, not for public usage)"},{"line_number":87,"context_line":"* ``debtcollector/moves.py`` (for patterns common to"},{"line_number":88,"context_line":"  moving code/classes/properties...)"},{"line_number":89,"context_line":"* ``debtcollector/renames.py`` (for patterns common to"}],"source_content_type":"text/x-rst","patch_set":7,"id":"3a961159_da1a1d7c","line":86,"updated":"2014-12-22 15:47:57.000000000","message":"Should probably be _utils.py then.","commit_id":"7b5a155e8de7d8aace47b61e47e19dba9d6cac37"}]}
