)]}'
{"specs/liberty/approved/glance-seam.rst":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7eab9dbe73870088a4e483361d4582c38f99fad6","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    performance and reliability improvements without major updates of the"},{"line_number":28,"context_line":"    client,"},{"line_number":29,"context_line":"    As a consumer of the glance API"},{"line_number":30,"context_line":"    I want a glance client library with a consistent API that abstracts away"},{"line_number":31,"context_line":"    glance API differences, maintains client side logic for enhancing"},{"line_number":32,"context_line":"    reliability and performance, and is designed in such a way that it can"},{"line_number":33,"context_line":"    later be moved out of tree"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a50d1a3_006198a8","line":30,"updated":"2015-07-23 15:22:36.000000000","message":"Why would this client translation shim live in nova?  Shouldn\u0027t it be in glanceclient or glance_store or glance-other so other clients can benefit from a glance v1/v2/(v3?) abstraction?","commit_id":"f4f9892ebe838bd9be091f9ce970e2a76508fb2e"},{"author":{"_account_id":11642,"name":"Jesse J. Cook","email":"jesse.cook@rackspace.com","username":"crashenx"},"change_message_id":"6f8f19d5551d66a3a5e2fcde4c1268bf8be31f14","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    performance and reliability improvements without major updates of the"},{"line_number":28,"context_line":"    client,"},{"line_number":29,"context_line":"    As a consumer of the glance API"},{"line_number":30,"context_line":"    I want a glance client library with a consistent API that abstracts away"},{"line_number":31,"context_line":"    glance API differences, maintains client side logic for enhancing"},{"line_number":32,"context_line":"    reliability and performance, and is designed in such a way that it can"},{"line_number":33,"context_line":"    later be moved out of tree"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a50d1a3_89c2b383","line":30,"in_reply_to":"3a50d1a3_006198a8","updated":"2015-07-23 16:06:22.000000000","message":"Yes.\n\nStep 1: Create the Seam\nStep 2: Pull it out of tree in a library\n\nInstead of running off and writing a library and saying, hey use this thing we worked on for 6 months or w/e. Create a seam in nova, abstract it into a library, pull it out of tree, and share it.","commit_id":"f4f9892ebe838bd9be091f9ce970e2a76508fb2e"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"33f9932c69b7c0b0ddbf046abbd0f1bd5ed193af","unresolved":false,"context_lines":[{"line_number":60,"context_line":"            | c |    n | size | time |"},{"line_number":61,"context_line":"            | 2 |    1 |  10G |  30s |"},{"line_number":62,"context_line":"            | 2 |   10 |  10G |  30s |"},{"line_number":63,"context_line":"            | 2 |  100 |  10G |  30s |"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"Project Priority"},{"line_number":66,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a50d1a3_9ee85c18","line":63,"updated":"2015-07-25 20:21:20.000000000","message":"I don\u0027t understand how any of the above use cases have to do with creating a software seam for Glance?","commit_id":"f4f9892ebe838bd9be091f9ce970e2a76508fb2e"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"454d21b459fc8b781716be1dc477d0a71fbcd503","unresolved":false,"context_lines":[{"line_number":81,"context_line":""},{"line_number":82,"context_line":"See [0]:"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"- Doesn\u0027t solve v2 to v3"},{"line_number":85,"context_line":"- Doesn\u0027t solve client side DRY or performance upgrades being minimal impact to"},{"line_number":86,"context_line":"  consumer"},{"line_number":87,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a50d1a3_b7134164","line":84,"updated":"2015-07-23 17:56:21.000000000","message":"Is there anything in v3 of interest to Nova?  As I understood it v3 is not about images which is all that Nova is concerned with from Glance at the moment.","commit_id":"f4f9892ebe838bd9be091f9ce970e2a76508fb2e"},{"author":{"_account_id":11642,"name":"Jesse J. Cook","email":"jesse.cook@rackspace.com","username":"crashenx"},"change_message_id":"82978e9119fee35797169244eafe727120261118","unresolved":false,"context_lines":[{"line_number":81,"context_line":""},{"line_number":82,"context_line":"See [0]:"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"- Doesn\u0027t solve v2 to v3"},{"line_number":85,"context_line":"- Doesn\u0027t solve client side DRY or performance upgrades being minimal impact to"},{"line_number":86,"context_line":"  consumer"},{"line_number":87,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a50d1a3_038e6d27","line":84,"in_reply_to":"3a50d1a3_b7134164","updated":"2015-07-23 23:32:46.000000000","message":"v3 is a ways away and it\u0027s focus is not images. That being said, Nova is still using v1, and it would be ideal if we could avoid years of sitting on v2 once v3 is out if possible.\n\nNova would benefit from taking a broader view and understand the impact of decisions like these on smaller less mature projects like Glance with limited developer resources. Nova is a huge user of Glance, and slow adoption of changes within Glance forces resources to focus on maintaining old code instead of improvements.","commit_id":"f4f9892ebe838bd9be091f9ce970e2a76508fb2e"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"454d21b459fc8b781716be1dc477d0a71fbcd503","unresolved":false,"context_lines":[{"line_number":87,"context_line":""},{"line_number":88,"context_line":"Make changes to python-glanceclient:"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"- Possible technical implementation could be updates and changes to"},{"line_number":91,"context_line":"  python-glanceclient and how it is leveraged in nova. This needs to be"},{"line_number":92,"context_line":"  discussed as there are tradeoffs."},{"line_number":93,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a50d1a3_fa79b093","line":90,"updated":"2015-07-23 17:56:21.000000000","message":"I think this is what we should be discussing.  Either python-glanceclient, or something new like glance_store, would be the appropriate place for the work you\u0027re proposing and then the spec here could be about integrating that library or updating how we interface with python-glanceclient.","commit_id":"f4f9892ebe838bd9be091f9ce970e2a76508fb2e"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"33f9932c69b7c0b0ddbf046abbd0f1bd5ed193af","unresolved":false,"context_lines":[{"line_number":87,"context_line":""},{"line_number":88,"context_line":"Make changes to python-glanceclient:"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"- Possible technical implementation could be updates and changes to"},{"line_number":91,"context_line":"  python-glanceclient and how it is leveraged in nova. This needs to be"},{"line_number":92,"context_line":"  discussed as there are tradeoffs."},{"line_number":93,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a50d1a3_911b63ca","line":90,"in_reply_to":"3a50d1a3_4348f5cc","updated":"2015-07-25 20:21:20.000000000","message":"What does performance and reliability logic have to do with creating a software seam that can talk with Glance v1 and v2 API services simultaneously?","commit_id":"f4f9892ebe838bd9be091f9ce970e2a76508fb2e"},{"author":{"_account_id":11642,"name":"Jesse J. Cook","email":"jesse.cook@rackspace.com","username":"crashenx"},"change_message_id":"82978e9119fee35797169244eafe727120261118","unresolved":false,"context_lines":[{"line_number":87,"context_line":""},{"line_number":88,"context_line":"Make changes to python-glanceclient:"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"- Possible technical implementation could be updates and changes to"},{"line_number":91,"context_line":"  python-glanceclient and how it is leveraged in nova. This needs to be"},{"line_number":92,"context_line":"  discussed as there are tradeoffs."},{"line_number":93,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a50d1a3_4348f5cc","line":90,"in_reply_to":"3a50d1a3_fa79b093","updated":"2015-07-23 23:32:46.000000000","message":"That approach feels like the death knell of this problem being fixed. External libraries / new APIs can be written all day, but if they are never incorporated into Nova, you end up with abandoned code.\n\nWe NEED to create a seam and abstract away the Glance/Swift communication details. This abstraction should include performance and reliability logic.","commit_id":"f4f9892ebe838bd9be091f9ce970e2a76508fb2e"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"454d21b459fc8b781716be1dc477d0a71fbcd503","unresolved":false,"context_lines":[{"line_number":166,"context_line":"              to maximize hit rate and minimize duplicate caches across nodes"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"    c) Download a subset in parallel"},{"line_number":169,"context_line":"3. Split library out of tree (Not required for this spec)"},{"line_number":170,"context_line":""},{"line_number":171,"context_line":"Dependencies"},{"line_number":172,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a50d1a3_7775b9c8","line":169,"updated":"2015-07-23 17:56:21.000000000","message":"Everything here except \"create seam\" is something that I would expect to see happen outside of Nova.  And then a small wrapper api to interact with whatever library might be appropriate in Nova.","commit_id":"f4f9892ebe838bd9be091f9ce970e2a76508fb2e"},{"author":{"_account_id":11642,"name":"Jesse J. Cook","email":"jesse.cook@rackspace.com","username":"crashenx"},"change_message_id":"82978e9119fee35797169244eafe727120261118","unresolved":false,"context_lines":[{"line_number":166,"context_line":"              to maximize hit rate and minimize duplicate caches across nodes"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"    c) Download a subset in parallel"},{"line_number":169,"context_line":"3. Split library out of tree (Not required for this spec)"},{"line_number":170,"context_line":""},{"line_number":171,"context_line":"Dependencies"},{"line_number":172,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a50d1a3_835d9d4a","line":169,"in_reply_to":"3a50d1a3_7775b9c8","updated":"2015-07-23 23:32:46.000000000","message":"Create seam, small wrapper api, library...agreed. However, there is real value of writing it in tree. It ensures that it actually meets the requirements of Nova and isn\u0027t written in a vacuum. It allows for course corrections and early feedback. We\u0027re talking about fixing real problems for Nova in Nova:\n\n1. Make Nova code cleaner, easier to maintain, and move more quickly\n2. Make snapshots more reliable\n3. Make instance builds more performant.\n\nAll the work could be done on a branch, reviewed, and then the library split out into a new project when it was ready for merge. However, we should really consider letting this work spend a little time in tree. It\u0027ll be healthy for Nova and the library.","commit_id":"f4f9892ebe838bd9be091f9ce970e2a76508fb2e"},{"author":{"_account_id":13997,"name":"SHIGEMATSU Mitsuhiro","email":"shigematsu.mitsuhiro@lab.ntt.co.jp","username":"pshige"},"change_message_id":"00cb3103379cce41da19aad4e85ba49ed811324e","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"https://blueprints.launchpad.net/nova/+spec/glance-seam"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Create a library, oslo-incubaror style, that allows future upgrades to Glance"},{"line_number":16,"context_line":"API, as well as, performance and reliability improvements for Glance requests"},{"line_number":17,"context_line":"(i.e. reliable uploads and performant concurrent downloads) without major"},{"line_number":18,"context_line":"changes to Nova."}],"source_content_type":"text/x-rst","patch_set":4,"id":"da20952f_3423f6be","line":15,"updated":"2015-09-05 14:51:11.000000000","message":"s/oslo-incubaror/oslo-incubator/","commit_id":"696749b8f2db4c7ad8f669ce617bc9ab97bae3b4"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"cf546872df8913593e2711194a9c4eb9a860d706","unresolved":false,"context_lines":[{"line_number":21,"context_line":"Problem description"},{"line_number":22,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Feature: Glance Seam"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    In order to abstract away glance API changes and allow for client side"},{"line_number":27,"context_line":"    performance and reliability improvements without major updates of the"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a4dcd0f_e73964d8","line":24,"updated":"2015-08-06 10:44:28.000000000","message":"Nit, this is non-standard formatting for this bit.","commit_id":"696749b8f2db4c7ad8f669ce617bc9ab97bae3b4"},{"author":{"_account_id":6159,"name":"Flavio Percoco Premoli","display_name":"flaper87","email":"flavio.percoco@flyrlabs.com","username":"flaper87"},"change_message_id":"e5b5bb5646c1917e7941eb9d6040e901e63fc53c","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    performance and reliability improvements without major updates of the"},{"line_number":28,"context_line":"    client,"},{"line_number":29,"context_line":"    As a consumer of the glance API"},{"line_number":30,"context_line":"    I want a glance client library with a consistent API that abstracts away"},{"line_number":31,"context_line":"    glance API differences, maintains client side logic for enhancing"},{"line_number":32,"context_line":"    reliability and performance, and is designed in such a way that it can"},{"line_number":33,"context_line":"    later be moved out of tree"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3a50d1a3_7628d785","line":30,"updated":"2015-08-02 02:46:58.000000000","message":"This is exactly what the glanceclient library is supposed to do.","commit_id":"696749b8f2db4c7ad8f669ce617bc9ab97bae3b4"},{"author":{"_account_id":11642,"name":"Jesse J. Cook","email":"jesse.cook@rackspace.com","username":"crashenx"},"change_message_id":"8c171b5d70278e771dd692b822dc3789eef8cdae","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    performance and reliability improvements without major updates of the"},{"line_number":28,"context_line":"    client,"},{"line_number":29,"context_line":"    As a consumer of the glance API"},{"line_number":30,"context_line":"    I want a glance client library with a consistent API that abstracts away"},{"line_number":31,"context_line":"    glance API differences, maintains client side logic for enhancing"},{"line_number":32,"context_line":"    reliability and performance, and is designed in such a way that it can"},{"line_number":33,"context_line":"    later be moved out of tree"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a4dcd0f_62441d49","line":30,"in_reply_to":"3a50d1a3_7628d785","updated":"2015-08-07 15:10:42.000000000","message":"Yeah.","commit_id":"696749b8f2db4c7ad8f669ce617bc9ab97bae3b4"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"cf546872df8913593e2711194a9c4eb9a860d706","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    glance API differences, maintains client side logic for enhancing"},{"line_number":32,"context_line":"    reliability and performance, and is designed in such a way that it can"},{"line_number":33,"context_line":"    later be moved out of tree"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"Use Cases"},{"line_number":36,"context_line":"----------"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a4dcd0f_27a8acda","line":34,"updated":"2015-08-06 10:44:28.000000000","message":"I think it would be good to discuss the openstack SDK replacing python-glanceclient for API end users, and how it explicitly does not want to be users by server side projects (dependency issues are a big part of that).\n\nNow its possible this eventually just means python-glanceclient gets bigger as is focused on server side use.","commit_id":"696749b8f2db4c7ad8f669ce617bc9ab97bae3b4"},{"author":{"_account_id":11642,"name":"Jesse J. Cook","email":"jesse.cook@rackspace.com","username":"crashenx"},"change_message_id":"8c171b5d70278e771dd692b822dc3789eef8cdae","unresolved":false,"context_lines":[{"line_number":31,"context_line":"    glance API differences, maintains client side logic for enhancing"},{"line_number":32,"context_line":"    reliability and performance, and is designed in such a way that it can"},{"line_number":33,"context_line":"    later be moved out of tree"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"Use Cases"},{"line_number":36,"context_line":"----------"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a4dcd0f_82492933","line":34,"in_reply_to":"1a4dcd0f_27a8acda","updated":"2015-08-07 15:10:42.000000000","message":"Yeah. I kind of covered that in alternatives, but I could elaborate here.","commit_id":"696749b8f2db4c7ad8f669ce617bc9ab97bae3b4"},{"author":{"_account_id":6159,"name":"Flavio Percoco Premoli","display_name":"flaper87","email":"flavio.percoco@flyrlabs.com","username":"flaper87"},"change_message_id":"e5b5bb5646c1917e7941eb9d6040e901e63fc53c","unresolved":false,"context_lines":[{"line_number":74,"context_line":"- Doesn\u0027t solve reusability"},{"line_number":75,"context_line":"- Can be done first but is wasted effort"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"2. Make changes to python-glanceclient:"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"- python-glanceclient is meant to be consumed by users and is likely to be"},{"line_number":80,"context_line":"  replaced by unified SDK work [2] and deprecated. It will confuse consumers to"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3a50d1a3_56259bab","line":77,"updated":"2015-08-02 02:46:58.000000000","message":"To be honest, I believe this code should go to the glanceclient. I don\u0027t think we need this seam. If the glanceclient library is developed properly, there shouldn\u0027t be backwards incompatible changes, moving from one API to the other shouldn\u0027t be a problem.\n\nHaving a seam library will also be confusing for users. What should they use? Saying that we\u0027ll point them to glanceclient/SDK won\u0027t solve the problem. They\u0027re will be users consuming the seam library directly.\n\nI really think this code should go into glanceclient but I\u0027d even argue whether we need it at all.","commit_id":"696749b8f2db4c7ad8f669ce617bc9ab97bae3b4"},{"author":{"_account_id":11642,"name":"Jesse J. Cook","email":"jesse.cook@rackspace.com","username":"crashenx"},"change_message_id":"8c171b5d70278e771dd692b822dc3789eef8cdae","unresolved":false,"context_lines":[{"line_number":74,"context_line":"- Doesn\u0027t solve reusability"},{"line_number":75,"context_line":"- Can be done first but is wasted effort"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"2. Make changes to python-glanceclient:"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"- python-glanceclient is meant to be consumed by users and is likely to be"},{"line_number":80,"context_line":"  replaced by unified SDK work [2] and deprecated. It will confuse consumers to"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a4dcd0f_a5f1cf02","line":77,"in_reply_to":"3a50d1a3_56259bab","updated":"2015-08-07 15:10:42.000000000","message":"You\u0027re right, \"if the glanceclient library is developed properly\". That\u0027s what this seam aims to do. The seam is basically a simpler library with a cleaner interface that would likely reuse much code in python-glanceclient. I believe there is value in putting python-glanceclient on a deprecation path (see just below) and doing this in tree (i.e. oslo-incubator style or otherwise) to make sure we get it right and reduce the redundant leaky abstractions in the services (e.g. Nova and Cinder). We don\u0027t have to do that. We can update python-glanceclient in a vacuum and come back with a spec later to clean up Nova to use it. That path seems much slower and harder, and I predict abandoned work along that path. This needs to be a collaboration effort to help mend the problems between these communities and these projects.","commit_id":"696749b8f2db4c7ad8f669ce617bc9ab97bae3b4"},{"author":{"_account_id":6159,"name":"Flavio Percoco Premoli","display_name":"flaper87","email":"flavio.percoco@flyrlabs.com","username":"flaper87"},"change_message_id":"e5b5bb5646c1917e7941eb9d6040e901e63fc53c","unresolved":false,"context_lines":[{"line_number":80,"context_line":"  replaced by unified SDK work [2] and deprecated. It will confuse consumers to"},{"line_number":81,"context_line":"  continue work on python-glanceclient with a more narrow purpose."},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"3. Use Glance Store:"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"- Glance Store is not designed to be used by external projects"},{"line_number":86,"context_line":"- Glance Store does not guarantee data consistency"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3a50d1a3_961c836b","line":83,"updated":"2015-08-02 02:46:58.000000000","message":"The real reason we can\u0027t use this is that glance_store doesn\u0027t talk to Glance API. It\u0027s a library for stores, not the API.","commit_id":"696749b8f2db4c7ad8f669ce617bc9ab97bae3b4"},{"author":{"_account_id":11642,"name":"Jesse J. Cook","email":"jesse.cook@rackspace.com","username":"crashenx"},"change_message_id":"8c171b5d70278e771dd692b822dc3789eef8cdae","unresolved":false,"context_lines":[{"line_number":80,"context_line":"  replaced by unified SDK work [2] and deprecated. It will confuse consumers to"},{"line_number":81,"context_line":"  continue work on python-glanceclient with a more narrow purpose."},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"3. Use Glance Store:"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"- Glance Store is not designed to be used by external projects"},{"line_number":86,"context_line":"- Glance Store does not guarantee data consistency"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a4dcd0f_05d6834e","line":83,"in_reply_to":"3a50d1a3_961c836b","updated":"2015-08-07 15:10:42.000000000","message":"Agreed. I can add this.","commit_id":"696749b8f2db4c7ad8f669ce617bc9ab97bae3b4"},{"author":{"_account_id":6159,"name":"Flavio Percoco Premoli","display_name":"flaper87","email":"flavio.percoco@flyrlabs.com","username":"flaper87"},"change_message_id":"e5b5bb5646c1917e7941eb9d6040e901e63fc53c","unresolved":false,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"- Glance Store is not designed to be used by external projects"},{"line_number":86,"context_line":"- Glance Store does not guarantee data consistency"},{"line_number":87,"context_line":"- Glance will continue to use Glance Store but might reintegrate Glance Store"},{"line_number":88,"context_line":"  into tree to avoid unnecessary dependency and initialization pain"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"4. Create client library in tree and pull out later"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3a50d1a3_d6120b58","line":87,"updated":"2015-08-02 02:46:58.000000000","message":"I don\u0027t think we should mention this point here because it\u0027s confusing. We haven\u0027t discussed this yet and it comes from something Stuart mentioned.","commit_id":"696749b8f2db4c7ad8f669ce617bc9ab97bae3b4"},{"author":{"_account_id":11642,"name":"Jesse J. Cook","email":"jesse.cook@rackspace.com","username":"crashenx"},"change_message_id":"8c171b5d70278e771dd692b822dc3789eef8cdae","unresolved":false,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"- Glance Store is not designed to be used by external projects"},{"line_number":86,"context_line":"- Glance Store does not guarantee data consistency"},{"line_number":87,"context_line":"- Glance will continue to use Glance Store but might reintegrate Glance Store"},{"line_number":88,"context_line":"  into tree to avoid unnecessary dependency and initialization pain"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"4. Create client library in tree and pull out later"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a4dcd0f_053d238e","line":87,"in_reply_to":"3a50d1a3_d6120b58","updated":"2015-08-07 15:10:42.000000000","message":"Fair enough. Let\u0027s let that discussion unfold.","commit_id":"696749b8f2db4c7ad8f669ce617bc9ab97bae3b4"},{"author":{"_account_id":15524,"name":"dane-fichter","email":"dane.fichter@jhuapl.edu","username":"dane-fichter"},"change_message_id":"dd0a16a2b86b46013b943e28c956071fd33caea1","unresolved":false,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"- Glance Store is not designed to be used by external projects"},{"line_number":86,"context_line":"- Glance Store does not guarantee data consistency"},{"line_number":87,"context_line":"- Glance will continue to use Glance Store but might reintegrate Glance Store"},{"line_number":88,"context_line":"  into tree to avoid unnecessary dependency and initialization pain"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"4. Create client library in tree and pull out later"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3a50d1a3_eaa61e53","line":87,"in_reply_to":"3a50d1a3_d6120b58","updated":"2015-08-03 13:58:35.000000000","message":"I agree that this alternative is bit misleading, should probably be removed.","commit_id":"696749b8f2db4c7ad8f669ce617bc9ab97bae3b4"},{"author":{"_account_id":11642,"name":"Jesse J. Cook","email":"jesse.cook@rackspace.com","username":"crashenx"},"change_message_id":"8c171b5d70278e771dd692b822dc3789eef8cdae","unresolved":false,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"- Glance Store is not designed to be used by external projects"},{"line_number":86,"context_line":"- Glance Store does not guarantee data consistency"},{"line_number":87,"context_line":"- Glance will continue to use Glance Store but might reintegrate Glance Store"},{"line_number":88,"context_line":"  into tree to avoid unnecessary dependency and initialization pain"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"4. Create client library in tree and pull out later"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a4dcd0f_056443b6","line":87,"in_reply_to":"3a50d1a3_eaa61e53","updated":"2015-08-07 15:10:42.000000000","message":"The entire alternative or just this bullet point?","commit_id":"696749b8f2db4c7ad8f669ce617bc9ab97bae3b4"}]}
