)]}'
{"specs/mitaka/approved/api-swagger-generate.rst":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"7cc1b8df6634de959bcff1acc891f2231973b6d5","unresolved":false,"context_lines":[{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""},{"line_number":7,"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\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"Example Spec - The title of your blueprint"},{"line_number":9,"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\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Include the URL of your launchpad blueprint:"}],"source_content_type":"text/x-rst","patch_set":1,"id":"da85f559_22ba010b","line":8,"updated":"2015-11-11 10:04:45.000000000","message":"need to write the title ;-)","commit_id":"99bc53bf6dfed3b5d5a61a0141bcbeb6a8914c7a"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"7cc1b8df6634de959bcff1acc891f2231973b6d5","unresolved":false,"context_lines":[{"line_number":8,"context_line":"Example Spec - The title of your blueprint"},{"line_number":9,"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\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Include the URL of your launchpad blueprint:"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"https://blueprints.launchpad.net/nova/+spec/api-swagger-generate"},{"line_number":14,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"da85f559_a244b11a","line":11,"updated":"2015-11-11 10:04:45.000000000","message":"need to remove line 11.","commit_id":"99bc53bf6dfed3b5d5a61a0141bcbeb6a8914c7a"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"7cc1b8df6634de959bcff1acc891f2231973b6d5","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"This spec aims to implement the swagger spec auto-generation from nova"},{"line_number":16,"context_line":"api code base. Then API reference will generate from swagger spec. This is"},{"line_number":17,"context_line":"better methods for maintaining and keeping update of API reference."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Problem description"},{"line_number":20,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"da85f559_42986578","line":17,"updated":"2015-11-11 10:04:45.000000000","message":"As we discussed at Tokyo Summit, how about wrting swagger spec and applying it to the code instead of auto-generating?\n\nThat means\n\n - Write swagger spec by hands for  each API\n - Apply it with @swagger decorator for each API\n\nBy doing that,\n\n - We can avoid dual maintenance for swagger spec and code\n - We can remove similar decorators(@validation.schema, @wsgi.response, @wsgi.action, etc) from each API","commit_id":"99bc53bf6dfed3b5d5a61a0141bcbeb6a8914c7a"},{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"3844db29e873294b67b774137bf99ef583815d46","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"This spec aims to implement the swagger spec auto-generation from nova"},{"line_number":16,"context_line":"api code base. Then API reference will generate from swagger spec. This is"},{"line_number":17,"context_line":"better methods for maintaining and keeping update of API reference."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Problem description"},{"line_number":20,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"da85f559_e599fed1","line":17,"in_reply_to":"da85f559_42986578","updated":"2015-11-12 20:46:24.000000000","message":"How different would the swagger spec be than the current validation schemas? (not that familiar with the internals of swagger)","commit_id":"99bc53bf6dfed3b5d5a61a0141bcbeb6a8914c7a"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"5bc6f1cbd9e37971be0006cc65e441969958518f","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"This spec aims to implement the swagger spec auto-generation from nova"},{"line_number":16,"context_line":"api code base. Then API reference will generate from swagger spec. This is"},{"line_number":17,"context_line":"better methods for maintaining and keeping update of API reference."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Problem description"},{"line_number":20,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"da85f559_88a22b4a","line":17,"in_reply_to":"da85f559_e599fed1","updated":"2015-11-16 06:38:41.000000000","message":"@Ed\n\nCurrent this spec is based on PoC patch(https://review.openstack.org/#/c/233446/).\n\nOn the PoC, we are generating swagger spec from the code like(@validation.schema, @wsgi.doc, @wsgi.response).\nAs you see on the PoC, we need to put many decorators on a single API method and generate swagger spec file(swagger.json).\nThe decorators seems redundant and we discussed how about putting a single new decorator(@swagger, or something) for clean code for passing swagger definition to API methods.","commit_id":"99bc53bf6dfed3b5d5a61a0141bcbeb6a8914c7a"}]}
