)]}'
{"doc/source/code-review.rst":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"2b85fdf82905c028b6f0fb565571b35ca8085746","unresolved":false,"context_lines":[{"line_number":91,"context_line":"Location"},{"line_number":92,"context_line":"--------"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"With blueprint ``centralize-config-options`` we came to a conclusion that"},{"line_number":95,"context_line":"it makes sense to have all config options at one central place. This central"},{"line_number":96,"context_line":"place is the ``/nova/conf/`` package. Each section will live in its own"},{"line_number":97,"context_line":"module. For example, the config options of the section ``[libvirt]`` will"},{"line_number":98,"context_line":"live in the module ``/nova/conf/libvirt.py``."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba8a016a_8bc5975c","line":95,"range":{"start_line":94,"start_character":0,"end_line":95,"end_character":64},"updated":"2015-11-16 15:11:16.000000000","message":"IMHO, you should just explain that all config options should now be located in the below path without providing the blueprint and the discussion here, but rather in the commit message.","commit_id":"0c73289dc475ddd44e53077f1c8db773d4b7b83b"},{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"540ddbeb62f63e9bf43812519391d2c05816cb81","unresolved":false,"context_lines":[{"line_number":91,"context_line":"Location"},{"line_number":92,"context_line":"--------"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"With blueprint ``centralize-config-options`` we came to a conclusion that"},{"line_number":95,"context_line":"it makes sense to have all config options at one central place. This central"},{"line_number":96,"context_line":"place is the ``/nova/conf/`` package. Each section will live in its own"},{"line_number":97,"context_line":"module. For example, the config options of the section ``[libvirt]`` will"},{"line_number":98,"context_line":"live in the module ``/nova/conf/libvirt.py``."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba8a016a_dc40430a","line":95,"range":{"start_line":94,"start_character":0,"end_line":95,"end_character":64},"in_reply_to":"ba8a016a_8bc5975c","updated":"2015-11-16 15:55:49.000000000","message":"Done in patch set 3","commit_id":"0c73289dc475ddd44e53077f1c8db773d4b7b83b"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"3beb916bfb9529b7a8fb985827bb93e2e752f26b","unresolved":false,"context_lines":[{"line_number":121,"context_line":"    * If this is an option with numeric values (int, float), describe the"},{"line_number":122,"context_line":"      edge cases (like the min value, max value, 0, -1)."},{"line_number":123,"context_line":"    * If this is a DictOpt, describe the allowed keys."},{"line_number":124,"context_line":"    * If this is a StrOpt, look out for regex validations."},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"* Interdependencies to other options. If other config options have to be"},{"line_number":127,"context_line":"  considered when this config option gets changed, is this described?"}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba8a016a_3c94ef35","line":124,"range":{"start_line":124,"start_character":30,"end_line":124,"end_character":34},"updated":"2015-11-16 15:58:57.000000000","message":"that sounds a nit for something not necessarly changed there , but I\u0027m fine","commit_id":"6ce24565c664c9f2dc93eed3c3cc7990663bd23e"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"535f40038d3b0258c75431d35d3c26c250dd23b2","unresolved":false,"context_lines":[{"line_number":94,"context_line":"The central place where all config options should reside is the ``/nova/conf/``"},{"line_number":95,"context_line":"package. Each section will live in its own module. For example, the config"},{"line_number":96,"context_line":"options of the section ``[libvirt]`` will live in the module"},{"line_number":97,"context_line":"``/nova/conf/libvirt.py``."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* New config options should be created in such a module right from the start."},{"line_number":100,"context_line":"* Changed config options should be encouraged to be moved to the new structure."}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba8a016a_eedc6648","line":97,"updated":"2015-11-16 18:46:09.000000000","message":"I still think it\u0027d be good for the example file to actually exist, but perhaps this is close enough.","commit_id":"e369368241601c1c0b24b0cb88bdbdadd3a8cdd5"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"9021e97fc754739f40e292ad727a888bb652f258","unresolved":false,"context_lines":[{"line_number":94,"context_line":"The central place where all config options should reside is the ``/nova/conf/``"},{"line_number":95,"context_line":"package. Each section will live in its own module. For example, the config"},{"line_number":96,"context_line":"options of the section ``[libvirt]`` will live in the module"},{"line_number":97,"context_line":"``/nova/conf/libvirt.py``."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* New config options should be created in such a module right from the start."},{"line_number":100,"context_line":"* Changed config options should be encouraged to be moved to the new structure."}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba8a016a_95f36273","line":97,"in_reply_to":"ba8a016a_eedc6648","updated":"2015-11-16 20:20:22.000000000","message":"That sounds okay for me, but I leave others discuss on that","commit_id":"e369368241601c1c0b24b0cb88bdbdadd3a8cdd5"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"c4073f62337ec7ec85f0c804cbb1e30b5fb0608b","unresolved":false,"context_lines":[{"line_number":97,"context_line":"``/nova/conf/serial_console.py``."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* New config options should be created in such a module right from the start."},{"line_number":100,"context_line":"* Changed config options should be encouraged to be moved to the new structure."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Implementation"},{"line_number":103,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba8a016a_e4776638","line":100,"updated":"2015-11-17 19:10:47.000000000","message":"my understanding is we won\u0027t move them now , instead if you need to change some configuration, you need to move them?","commit_id":"1f9c8e9a49a2c86e453a79f29c95648fbae99f3a"},{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"905274e53566f1fb6067d6f35e72f6cb8b2a380b","unresolved":false,"context_lines":[{"line_number":97,"context_line":"``/nova/conf/serial_console.py``."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* New config options should be created in such a module right from the start."},{"line_number":100,"context_line":"* Changed config options should be encouraged to be moved to the new structure."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Implementation"},{"line_number":103,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba8a016a_0d125f57","line":100,"in_reply_to":"ba8a016a_64ef99e9","updated":"2015-11-19 15:06:11.000000000","message":"@jichenjc: OK, got it. It\u0027s a combined effort. I (and others) will move them but we cannot do all at once. Which means, if you (as a code contributor) are currently changing a config option, it is a good idea to take this as a trigger to move it to its new place \"/nova/conf/...\". Maybe I should make it more clear here, that this only applies as long as we are in this interim state?","commit_id":"1f9c8e9a49a2c86e453a79f29c95648fbae99f3a"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"f324018094805cef775109f3f7551ab2849bab24","unresolved":false,"context_lines":[{"line_number":97,"context_line":"``/nova/conf/serial_console.py``."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* New config options should be created in such a module right from the start."},{"line_number":100,"context_line":"* Changed config options should be encouraged to be moved to the new structure."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Implementation"},{"line_number":103,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba8a016a_64ef99e9","line":100,"in_reply_to":"ba8a016a_b5fa9173","updated":"2015-11-19 10:11:17.000000000","message":"\u0027you\u0027 means some developer want to change some configurations\nthe one who did the change need to move them? \n\njust like https://review.openstack.org/#/c/246476/ ?\nI invited you to review the patch as well.. thanks","commit_id":"1f9c8e9a49a2c86e453a79f29c95648fbae99f3a"},{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"29d2210c9711dd5b611593ac756e7d7c42c4672b","unresolved":false,"context_lines":[{"line_number":97,"context_line":"``/nova/conf/serial_console.py``."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* New config options should be created in such a module right from the start."},{"line_number":100,"context_line":"* Changed config options should be encouraged to be moved to the new structure."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Implementation"},{"line_number":103,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba8a016a_b5fa9173","line":100,"in_reply_to":"ba8a016a_e4776638","updated":"2015-11-19 08:37:26.000000000","message":"@jichenjc: I don\u0027t get the question. Which person/group/role is meant with \"you\" in your question?","commit_id":"1f9c8e9a49a2c86e453a79f29c95648fbae99f3a"},{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"c28613575d6f7075797189966bb0724c8db88882","unresolved":false,"context_lines":[{"line_number":94,"context_line":"The central place where all config options should reside is the ``/nova/conf/``"},{"line_number":95,"context_line":"package. Each section will live in its own module. For example, the config"},{"line_number":96,"context_line":"options of the section ``[serial_console]`` will live in the module"},{"line_number":97,"context_line":"``/nova/conf/serial_console.py``."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* New config options should be created in such a module right from the start."},{"line_number":100,"context_line":"* Changed config options should be encouraged to be moved to the new structure."}],"source_content_type":"text/x-rst","patch_set":6,"id":"ba8a016a_30fbbd49","line":97,"updated":"2015-11-20 13:57:49.000000000","message":"I understand the motivation for this structure, but as we\u0027ve discussed, I don\u0027t think it is the one we want. Otherwise we\u0027d have one giant DEFAULT.py containing most config options.","commit_id":"6a2e20f333567d28ae721ebc8e4d9c21f114c0d8"},{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"067fd4fedaf2a02bb23b7595cd84ca5809f321c5","unresolved":false,"context_lines":[{"line_number":94,"context_line":"The central place where all config options should reside is the ``/nova/conf/``"},{"line_number":95,"context_line":"package. Each section will live in its own module. For example, the config"},{"line_number":96,"context_line":"options of the section ``[serial_console]`` will live in the module"},{"line_number":97,"context_line":"``/nova/conf/serial_console.py``."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* New config options should be created in such a module right from the start."},{"line_number":100,"context_line":"* Changed config options should be encouraged to be moved to the new structure."}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a8ffd7b_7655b41b","line":97,"in_reply_to":"ba8a016a_1aec4828","updated":"2015-11-24 17:00:21.000000000","message":"OK, the next patch set will rephrase that.","commit_id":"6a2e20f333567d28ae721ebc8e4d9c21f114c0d8"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"90b0127341ebf5fa18bd02a894499ee7326efcdd","unresolved":false,"context_lines":[{"line_number":94,"context_line":"The central place where all config options should reside is the ``/nova/conf/``"},{"line_number":95,"context_line":"package. Each section will live in its own module. For example, the config"},{"line_number":96,"context_line":"options of the section ``[serial_console]`` will live in the module"},{"line_number":97,"context_line":"``/nova/conf/serial_console.py``."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* New config options should be created in such a module right from the start."},{"line_number":100,"context_line":"* Changed config options should be encouraged to be moved to the new structure."}],"source_content_type":"text/x-rst","patch_set":6,"id":"ba8a016a_1aec4828","line":97,"in_reply_to":"ba8a016a_25e85a16","updated":"2015-11-23 15:28:02.000000000","message":"yeah, something like \"natural groupings\" works for me.","commit_id":"6a2e20f333567d28ae721ebc8e4d9c21f114c0d8"},{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"c513b206009695b699c206a73bb061a6144bcdd4","unresolved":false,"context_lines":[{"line_number":94,"context_line":"The central place where all config options should reside is the ``/nova/conf/``"},{"line_number":95,"context_line":"package. Each section will live in its own module. For example, the config"},{"line_number":96,"context_line":"options of the section ``[serial_console]`` will live in the module"},{"line_number":97,"context_line":"``/nova/conf/serial_console.py``."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"* New config options should be created in such a module right from the start."},{"line_number":100,"context_line":"* Changed config options should be encouraged to be moved to the new structure."}],"source_content_type":"text/x-rst","patch_set":6,"id":"ba8a016a_25e85a16","line":97,"in_reply_to":"ba8a016a_30fbbd49","updated":"2015-11-20 15:19:44.000000000","message":"@Ed: How about a wording which says \"use the natural grouping of the config options, which should be in most cases the section (e.g. \"[group-name]\"), but it\u0027s totally fair to split a large group into smaller more cohesive chunks.\" What do you think?","commit_id":"6a2e20f333567d28ae721ebc8e4d9c21f114c0d8"},{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"c28613575d6f7075797189966bb0724c8db88882","unresolved":false,"context_lines":[{"line_number":121,"context_line":"    * If this is an option with numeric values (int, float), describe the"},{"line_number":122,"context_line":"      edge cases (like the min value, max value, 0, -1)."},{"line_number":123,"context_line":"    * If this is a DictOpt, describe the allowed keys."},{"line_number":124,"context_line":"    * If this is a StrOpt, look out for regex validations."},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"* Interdependencies to other options. If other config options have to be"},{"line_number":127,"context_line":"  considered when this config option gets changed, is this described?"}],"source_content_type":"text/x-rst","patch_set":6,"id":"ba8a016a_b039edf4","line":124,"updated":"2015-11-20 13:57:49.000000000","message":"\"look out\" sounds more like a warning. :) Perhaps something like this:\n\n  * If this is a StrOpt, list any possible regex validations, or provide a list of acceptable and/or prohibited values.","commit_id":"6a2e20f333567d28ae721ebc8e4d9c21f114c0d8"},{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"c513b206009695b699c206a73bb061a6144bcdd4","unresolved":false,"context_lines":[{"line_number":121,"context_line":"    * If this is an option with numeric values (int, float), describe the"},{"line_number":122,"context_line":"      edge cases (like the min value, max value, 0, -1)."},{"line_number":123,"context_line":"    * If this is a DictOpt, describe the allowed keys."},{"line_number":124,"context_line":"    * If this is a StrOpt, look out for regex validations."},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"* Interdependencies to other options. If other config options have to be"},{"line_number":127,"context_line":"  considered when this config option gets changed, is this described?"}],"source_content_type":"text/x-rst","patch_set":6,"id":"ba8a016a_a5c3ea89","line":124,"in_reply_to":"ba8a016a_b039edf4","updated":"2015-11-20 15:19:44.000000000","message":"@Ed: Yeah, that\u0027s better. I was terse when I wrote the first version of this.","commit_id":"6a2e20f333567d28ae721ebc8e4d9c21f114c0d8"},{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"067fd4fedaf2a02bb23b7595cd84ca5809f321c5","unresolved":false,"context_lines":[{"line_number":121,"context_line":"    * If this is an option with numeric values (int, float), describe the"},{"line_number":122,"context_line":"      edge cases (like the min value, max value, 0, -1)."},{"line_number":123,"context_line":"    * If this is a DictOpt, describe the allowed keys."},{"line_number":124,"context_line":"    * If this is a StrOpt, look out for regex validations."},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"* Interdependencies to other options. If other config options have to be"},{"line_number":127,"context_line":"  considered when this config option gets changed, is this described?"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9a8ffd7b_f6168454","line":124,"in_reply_to":"ba8a016a_b039edf4","updated":"2015-11-24 17:00:21.000000000","message":"I see, thanks! I did a direct translation from my language and wasn\u0027t aware of the different meaning. The next patch set will use your good example.","commit_id":"6a2e20f333567d28ae721ebc8e4d9c21f114c0d8"},{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"71e948e02c8e152f00236e045429719c22e486a8","unresolved":false,"context_lines":[{"line_number":97,"context_line":"(like ``[serial_console]`` for example). On the other hand, the ``[DEFAULT]``"},{"line_number":98,"context_line":"section contains a lot of non-cohesive options and it\u0027s totally fair to move"},{"line_number":99,"context_line":"those definitions to subsets with a bigger cohesion. The scheduler options"},{"line_number":100,"context_line":"are a good example for that."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Implementation"},{"line_number":103,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9a8ffd7b_c04b752a","line":100,"updated":"2015-11-24 17:33:05.000000000","message":"Much better! How about this wording:\n\nOptions that are in named sections of nova.conf, such as ``[serial_console]``, should be in their own module. Options that are in the ``[DEFAULT]`` section should be placed in modules that represent a natural grouping. For example, all of the options that affect the scheduler would be in the ``scheduler.py`` file, and all the networking options would be moved to ``network.py``.","commit_id":"a025ec7ffc66acdd8f81d6c747cbedc0932f5949"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"7adc05aaecc16a9c11715a13854f0523210f6ef5","unresolved":false,"context_lines":[{"line_number":97,"context_line":"(like ``[serial_console]`` for example). On the other hand, the ``[DEFAULT]``"},{"line_number":98,"context_line":"section contains a lot of non-cohesive options and it\u0027s totally fair to move"},{"line_number":99,"context_line":"those definitions to subsets with a bigger cohesion. The scheduler options"},{"line_number":100,"context_line":"are a good example for that."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Implementation"},{"line_number":103,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"3a7e1126_a2b7ea38","line":100,"in_reply_to":"9a8ffd7b_00d17dcd","updated":"2015-12-18 13:05:39.000000000","message":"Ed\u0027s suggestion sounds good.","commit_id":"a025ec7ffc66acdd8f81d6c747cbedc0932f5949"},{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"8eb36456d6534ab753457095cc2dba42794bd937","unresolved":false,"context_lines":[{"line_number":97,"context_line":"(like ``[serial_console]`` for example). On the other hand, the ``[DEFAULT]``"},{"line_number":98,"context_line":"section contains a lot of non-cohesive options and it\u0027s totally fair to move"},{"line_number":99,"context_line":"those definitions to subsets with a bigger cohesion. The scheduler options"},{"line_number":100,"context_line":"are a good example for that."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Implementation"},{"line_number":103,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9a8ffd7b_00d17dcd","line":100,"in_reply_to":"9a8ffd7b_c04b752a","updated":"2015-11-24 17:41:19.000000000","message":"Yeah, sounds more natural and consumable! \n\n@John Garbutt: Any additional feedback to this suggestion from Ed? Otherwise I would use that.","commit_id":"a025ec7ffc66acdd8f81d6c747cbedc0932f5949"}]}
