)]}'
{"openstackclient/image/v2/image.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"4cd3757d607fa8b667b138c1fde8ab7831ae9107","unresolved":false,"context_lines":[{"line_number":30,"context_line":"from openstackclient.identity import common"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"CONTAINER_CHOICES \u003d [\"ami\", \"ari\", \"aki\", \"bare\", \"docker\", \"ova\", \"ovf\"]"},{"line_number":34,"context_line":"DEFAULT_CONTAINER_FORMAT \u003d \u0027bare\u0027"},{"line_number":35,"context_line":"DEFAULT_DISK_FORMAT \u003d \u0027raw\u0027"},{"line_number":36,"context_line":"DISK_CHOICES \u003d [\"ami\", \"ari\", \"aki\", \"vhd\", \"vmdk\", \"raw\", \"qcow2\", \"vhdx\","}],"source_content_type":"text/x-python","patch_set":1,"id":"1f013ff3_afa82177","line":33,"range":{"start_line":33,"start_character":0,"end_line":33,"end_character":17},"updated":"2017-05-12 17:54:08.000000000","message":"we use choices up here too","commit_id":"e199710a3deb6985b00b5f4d820455770e530560"},{"author":{"_account_id":20401,"name":"M V P Nitesh","email":"parimalanitesh@gmail.com","username":"mvpnitesh"},"change_message_id":"0d37d84e80a82ae40a730ffed8b2be5d5001006c","unresolved":false,"context_lines":[{"line_number":30,"context_line":"from openstackclient.identity import common"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"CONTAINER_CHOICES \u003d [\"ami\", \"ari\", \"aki\", \"bare\", \"docker\", \"ova\", \"ovf\"]"},{"line_number":34,"context_line":"DEFAULT_CONTAINER_FORMAT \u003d \u0027bare\u0027"},{"line_number":35,"context_line":"DEFAULT_DISK_FORMAT \u003d \u0027raw\u0027"},{"line_number":36,"context_line":"DISK_CHOICES \u003d [\"ami\", \"ari\", \"aki\", \"vhd\", \"vmdk\", \"raw\", \"qcow2\", \"vhdx\","}],"source_content_type":"text/x-python","patch_set":1,"id":"1f013ff3_620d7e36","line":33,"range":{"start_line":33,"start_character":0,"end_line":33,"end_character":17},"in_reply_to":"1f013ff3_afa82177","updated":"2017-05-15 07:52:59.000000000","message":"Done","commit_id":"e199710a3deb6985b00b5f4d820455770e530560"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"4cd3757d607fa8b667b138c1fde8ab7831ae9107","unresolved":false,"context_lines":[{"line_number":687,"context_line":"            action\u003d\"store_true\","},{"line_number":688,"context_line":"            help\u003d_(\"Allow image to be deleted (default)\"),"},{"line_number":689,"context_line":"        )"},{"line_number":690,"context_line":"        public_group \u003d parser.add_mutually_exclusive_group()"},{"line_number":691,"context_line":"        public_group.add_argument("},{"line_number":692,"context_line":"            \"--public\","},{"line_number":693,"context_line":"            action\u003d\"store_true\","},{"line_number":694,"context_line":"            help\u003d_(\"Image is accessible to the public\"),"},{"line_number":695,"context_line":"        )"},{"line_number":696,"context_line":"        public_group.add_argument("},{"line_number":697,"context_line":"            \"--private\","},{"line_number":698,"context_line":"            action\u003d\"store_true\","},{"line_number":699,"context_line":"            help\u003d_(\"Image is inaccessible to the public (default)\"),"},{"line_number":700,"context_line":"        )"},{"line_number":701,"context_line":"        parser.add_argument("},{"line_number":702,"context_line":"            \"--property\","},{"line_number":703,"context_line":"            dest\u003d\"properties\","}],"source_content_type":"text/x-python","patch_set":1,"id":"1f013ff3_8fdc4519","line":700,"range":{"start_line":690,"start_character":8,"end_line":700,"end_character":9},"updated":"2017-05-12 17:54:08.000000000","message":"how will it work with these options?\n\nwhat about adding to the mutually exclusive group here?\n\n  image set foo --public | --private | --community | --shared","commit_id":"e199710a3deb6985b00b5f4d820455770e530560"},{"author":{"_account_id":20401,"name":"M V P Nitesh","email":"parimalanitesh@gmail.com","username":"mvpnitesh"},"change_message_id":"0d37d84e80a82ae40a730ffed8b2be5d5001006c","unresolved":false,"context_lines":[{"line_number":687,"context_line":"            action\u003d\"store_true\","},{"line_number":688,"context_line":"            help\u003d_(\"Allow image to be deleted (default)\"),"},{"line_number":689,"context_line":"        )"},{"line_number":690,"context_line":"        public_group \u003d parser.add_mutually_exclusive_group()"},{"line_number":691,"context_line":"        public_group.add_argument("},{"line_number":692,"context_line":"            \"--public\","},{"line_number":693,"context_line":"            action\u003d\"store_true\","},{"line_number":694,"context_line":"            help\u003d_(\"Image is accessible to the public\"),"},{"line_number":695,"context_line":"        )"},{"line_number":696,"context_line":"        public_group.add_argument("},{"line_number":697,"context_line":"            \"--private\","},{"line_number":698,"context_line":"            action\u003d\"store_true\","},{"line_number":699,"context_line":"            help\u003d_(\"Image is inaccessible to the public (default)\"),"},{"line_number":700,"context_line":"        )"},{"line_number":701,"context_line":"        parser.add_argument("},{"line_number":702,"context_line":"            \"--property\","},{"line_number":703,"context_line":"            dest\u003d\"properties\","}],"source_content_type":"text/x-python","patch_set":1,"id":"1f013ff3_c2fe9204","line":700,"range":{"start_line":690,"start_character":8,"end_line":700,"end_character":9},"in_reply_to":"1f013ff3_8fdc4519","updated":"2017-05-15 07:52:59.000000000","message":"Can u please tell me how to add them to mutually exclusive group","commit_id":"e199710a3deb6985b00b5f4d820455770e530560"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"4cd3757d607fa8b667b138c1fde8ab7831ae9107","unresolved":false,"context_lines":[{"line_number":738,"context_line":"        )"},{"line_number":739,"context_line":"        parser.add_argument("},{"line_number":740,"context_line":"            \"--visibility\","},{"line_number":741,"context_line":"            metavar\u003d\"\u003cVISIBILITY\u003e\","},{"line_number":742,"context_line":"            help\u003d_(\"Scope of image accessibility Valid values: public, \""},{"line_number":743,"context_line":"                   \"private, community, shared\"),"},{"line_number":744,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":1,"id":"1f013ff3_af73814d","line":741,"range":{"start_line":741,"start_character":22,"end_line":741,"end_character":32},"updated":"2017-05-12 17:54:08.000000000","message":"this should be lower case","commit_id":"e199710a3deb6985b00b5f4d820455770e530560"},{"author":{"_account_id":20401,"name":"M V P Nitesh","email":"parimalanitesh@gmail.com","username":"mvpnitesh"},"change_message_id":"0d37d84e80a82ae40a730ffed8b2be5d5001006c","unresolved":false,"context_lines":[{"line_number":738,"context_line":"        )"},{"line_number":739,"context_line":"        parser.add_argument("},{"line_number":740,"context_line":"            \"--visibility\","},{"line_number":741,"context_line":"            metavar\u003d\"\u003cVISIBILITY\u003e\","},{"line_number":742,"context_line":"            help\u003d_(\"Scope of image accessibility Valid values: public, \""},{"line_number":743,"context_line":"                   \"private, community, shared\"),"},{"line_number":744,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":1,"id":"1f013ff3_a203860d","line":741,"range":{"start_line":741,"start_character":22,"end_line":741,"end_character":32},"in_reply_to":"1f013ff3_af73814d","updated":"2017-05-15 07:52:59.000000000","message":"Done","commit_id":"e199710a3deb6985b00b5f4d820455770e530560"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"4cd3757d607fa8b667b138c1fde8ab7831ae9107","unresolved":false,"context_lines":[{"line_number":739,"context_line":"        parser.add_argument("},{"line_number":740,"context_line":"            \"--visibility\","},{"line_number":741,"context_line":"            metavar\u003d\"\u003cVISIBILITY\u003e\","},{"line_number":742,"context_line":"            help\u003d_(\"Scope of image accessibility Valid values: public, \""},{"line_number":743,"context_line":"                   \"private, community, shared\"),"},{"line_number":744,"context_line":"        )"},{"line_number":745,"context_line":"        parser.add_argument("},{"line_number":746,"context_line":"            \"--os-distro\","}],"source_content_type":"text/x-python","patch_set":1,"id":"1f013ff3_0fa2759b","line":743,"range":{"start_line":742,"start_character":12,"end_line":743,"end_character":49},"updated":"2017-05-12 17:54:08.000000000","message":"you can actually limit what the use can input by adding:\n\n  choices\u003d[\u0027public\u0027, \u0027private\u0027, \u0027community\u0027, \u0027shared\u0027]","commit_id":"e199710a3deb6985b00b5f4d820455770e530560"},{"author":{"_account_id":20401,"name":"M V P Nitesh","email":"parimalanitesh@gmail.com","username":"mvpnitesh"},"change_message_id":"0d37d84e80a82ae40a730ffed8b2be5d5001006c","unresolved":false,"context_lines":[{"line_number":739,"context_line":"        parser.add_argument("},{"line_number":740,"context_line":"            \"--visibility\","},{"line_number":741,"context_line":"            metavar\u003d\"\u003cVISIBILITY\u003e\","},{"line_number":742,"context_line":"            help\u003d_(\"Scope of image accessibility Valid values: public, \""},{"line_number":743,"context_line":"                   \"private, community, shared\"),"},{"line_number":744,"context_line":"        )"},{"line_number":745,"context_line":"        parser.add_argument("},{"line_number":746,"context_line":"            \"--os-distro\","}],"source_content_type":"text/x-python","patch_set":1,"id":"1f013ff3_82088a28","line":743,"range":{"start_line":742,"start_character":12,"end_line":743,"end_character":49},"in_reply_to":"1f013ff3_0fa2759b","updated":"2017-05-15 07:52:59.000000000","message":"Done","commit_id":"e199710a3deb6985b00b5f4d820455770e530560"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"0ccd9293c642adec123260178f6c883fe69bc273","unresolved":false,"context_lines":[{"line_number":736,"context_line":"            metavar\u003d\"\u003ckernel-id\u003e\","},{"line_number":737,"context_line":"            help\u003d_(\"ID of kernel image used to boot this disk image\"),"},{"line_number":738,"context_line":"        )"},{"line_number":739,"context_line":"        parser.add_argument("},{"line_number":740,"context_line":"            \"--os-distro\","},{"line_number":741,"context_line":"            metavar\u003d\"\u003cos-distro\u003e\","},{"line_number":742,"context_line":"            help\u003d_(\"Operating system distribution name\"),"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff0f0b1f_e1722aad","side":"PARENT","line":739,"updated":"2017-05-22 20:04:21.000000000","message":"Add these as exclusive-or options as stevemar mentioned earlier.\n\nOSC uses individual switches for enumerated values like this.  (I know, --disk-format and --container-format don\u0027t do that, those vary by deployment configuration, we\u0027re not tracking that stuff.)\n\nAlso, add this to the create command too.","commit_id":"8770b6ed5ce0e8c98a9818cec67e773bd4e841f1"},{"author":{"_account_id":8276,"name":"kiwik","email":"chenrui.momo@gmail.com","username":"kiwik"},"change_message_id":"7e8adc72587a6deaddbae4cb0713d1d42016a512","unresolved":false,"context_lines":[{"line_number":627,"context_line":"class SetImage(command.Command):"},{"line_number":628,"context_line":"    _description \u003d _(\"Set image properties\")"},{"line_number":629,"context_line":""},{"line_number":630,"context_line":"    deadopts \u003d ()"},{"line_number":631,"context_line":""},{"line_number":632,"context_line":"    def get_parser(self, prog_name):"},{"line_number":633,"context_line":"        parser \u003d super(SetImage, self).get_parser(prog_name)"}],"source_content_type":"text/x-python","patch_set":2,"id":"df140735_bf2b4d2e","line":630,"range":{"start_line":630,"start_character":4,"end_line":630,"end_character":17},"updated":"2017-06-01 12:29:35.000000000","message":"Please don\u0027t remove these, --visibility is supported by image v1 API, we have explicit error message to remind users to switch to v2, see my following comment.","commit_id":"7640d082b34eb509838b9daa4045bab4db1c7dad"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"a941b163011b99062082682eec2984b7c2ef68d8","unresolved":false,"context_lines":[{"line_number":697,"context_line":"        public_group.add_argument("},{"line_number":698,"context_line":"            \"--private\","},{"line_number":699,"context_line":"            action\u003d\"store_true\","},{"line_number":700,"context_line":"            help\u003d_(\"Image is inaccessible to the public (default)\"),"},{"line_number":701,"context_line":"        )"},{"line_number":702,"context_line":"        parser.add_argument("},{"line_number":703,"context_line":"            \"--property\","}],"source_content_type":"text/x-python","patch_set":2,"id":"ff0f0b1f_7191b352","line":700,"range":{"start_line":700,"start_character":57,"end_line":700,"end_character":64},"updated":"2017-05-18 13:35:45.000000000","message":"The default was changed to \u0027shared\u0027 in Ocata.  It\u0027s probably best not to mention what the default is in this context, though.\n\nThere\u0027s an extensive discussion of why we did this in the Ocata release notes:\nhttps://docs.openstack.org/releasenotes/glance/ocata.html","commit_id":"7640d082b34eb509838b9daa4045bab4db1c7dad"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"0ccd9293c642adec123260178f6c883fe69bc273","unresolved":false,"context_lines":[{"line_number":697,"context_line":"        public_group.add_argument("},{"line_number":698,"context_line":"            \"--private\","},{"line_number":699,"context_line":"            action\u003d\"store_true\","},{"line_number":700,"context_line":"            help\u003d_(\"Image is inaccessible to the public (default)\"),"},{"line_number":701,"context_line":"        )"},{"line_number":702,"context_line":"        parser.add_argument("},{"line_number":703,"context_line":"            \"--property\","}],"source_content_type":"text/x-python","patch_set":2,"id":"ff0f0b1f_1e21ffb0","line":700,"in_reply_to":"ff0f0b1f_7191b352","updated":"2017-05-22 20:04:21.000000000","message":"Ah, the glorious life-on-the-edge of documenting server-side behaviour in clients! :)\n\nWe should remove this from the help string and document the two defaults in the docs directly.\n\nOh! Even worse!  set commands do not have defaults, when not present the value is unchanged...","commit_id":"7640d082b34eb509838b9daa4045bab4db1c7dad"},{"author":{"_account_id":8276,"name":"kiwik","email":"chenrui.momo@gmail.com","username":"kiwik"},"change_message_id":"7e8adc72587a6deaddbae4cb0713d1d42016a512","unresolved":false,"context_lines":[{"line_number":817,"context_line":""},{"line_number":818,"context_line":"        for deadopt in self.deadopts:"},{"line_number":819,"context_line":"            if getattr(parsed_args, deadopt.replace(\u0027-\u0027, \u0027_\u0027), None):"},{"line_number":820,"context_line":"                raise exceptions.CommandError("},{"line_number":821,"context_line":"                    _(\"ERROR: --%s was given, which is an Image v1 option\""},{"line_number":822,"context_line":"                      \" that is no longer supported in Image v2\") % deadopt)"},{"line_number":823,"context_line":""},{"line_number":824,"context_line":"        kwargs \u003d {}"},{"line_number":825,"context_line":"        copy_attrs \u003d (\u0027architecture\u0027, \u0027container_format\u0027, \u0027disk_format\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"df140735_bfaead95","line":822,"range":{"start_line":820,"start_character":0,"end_line":822,"end_character":76},"updated":"2017-06-01 12:29:35.000000000","message":"here","commit_id":"7640d082b34eb509838b9daa4045bab4db1c7dad"}],"openstackclient/tests/unit/image/v2/test_image.py":[{"author":{"_account_id":8276,"name":"kiwik","email":"chenrui.momo@gmail.com","username":"kiwik"},"change_message_id":"7e8adc72587a6deaddbae4cb0713d1d42016a512","unresolved":false,"context_lines":[{"line_number":1269,"context_line":"        self.assertEqual(set(kwargs[\u0027tags\u0027]), set(k[\u0027tags\u0027]))"},{"line_number":1270,"context_line":"        self.assertIsNone(result)"},{"line_number":1271,"context_line":""},{"line_number":1272,"context_line":"    def test_image_set_dead_options(self):"},{"line_number":1273,"context_line":""},{"line_number":1274,"context_line":"        arglist \u003d ["},{"line_number":1275,"context_line":"            \u0027--visibility\u0027, \u00271-mile\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"df140735_ff09c594","side":"PARENT","line":1272,"range":{"start_line":1272,"start_character":23,"end_line":1272,"end_character":35},"updated":"2017-06-01 12:29:35.000000000","message":"The test case make sense for \"--visibility\" case, please don\u0027t remove","commit_id":"8770b6ed5ce0e8c98a9818cec67e773bd4e841f1"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"eb976a932584413f6d34342a9b4de3eafecd06c2","unresolved":false,"context_lines":[{"line_number":1269,"context_line":"        self.assertEqual(set(kwargs[\u0027tags\u0027]), set(k[\u0027tags\u0027]))"},{"line_number":1270,"context_line":"        self.assertIsNone(result)"},{"line_number":1271,"context_line":""},{"line_number":1272,"context_line":"        def test_image_set_dead_options(self):"},{"line_number":1273,"context_line":""},{"line_number":1274,"context_line":"            arglist \u003d ["},{"line_number":1275,"context_line":"                \u0027--visibility\u0027, \u00271-mile\u0027,"},{"line_number":1276,"context_line":"                image_fakes.image_name,"},{"line_number":1277,"context_line":"            ]"},{"line_number":1278,"context_line":"            verifylist \u003d ["},{"line_number":1279,"context_line":"                (\u0027visibility\u0027, \u00271-mile\u0027),"},{"line_number":1280,"context_line":"                (\u0027image\u0027, image_fakes.image_name),"},{"line_number":1281,"context_line":"            ]"},{"line_number":1282,"context_line":"            parsed_args \u003d self.check_parser(self.cmd, arglist, verifylist)"},{"line_number":1283,"context_line":"            self.assertRaises("},{"line_number":1284,"context_line":"                exceptions.CommandError,"},{"line_number":1285,"context_line":"                self.cmd.take_action, parsed_args)"},{"line_number":1286,"context_line":""},{"line_number":1287,"context_line":""},{"line_number":1288,"context_line":"class TestImageShow(TestImage):"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f201791_1621b59f","line":1285,"range":{"start_line":1272,"start_character":0,"end_line":1285,"end_character":50},"updated":"2017-06-27 14:27:01.000000000","message":"why was this indented? now it doesn\u0027t run :(","commit_id":"bc13d3bb0595f12de5648ec998edf80384d635d6"}],"releasenotes/notes/image_set_visibility-2a05cfd3b4c63ce8.yaml":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"eb976a932584413f6d34342a9b4de3eafecd06c2","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - This feature will allow image owners to share images"},{"line_number":4,"context_line":"    across multiple tenants/projects without explicitly"},{"line_number":5,"context_line":"    creating members individually through the glance API V2."},{"line_number":6,"context_line":"    “Community images” will not appear in user’s default"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"5f201791_f6a6390f","line":3,"range":{"start_line":3,"start_character":4,"end_line":3,"end_character":16},"updated":"2017-06-27 14:27:01.000000000","message":"since the release notes are all compiled together, you have to write out the feature name...  see https://docs.openstack.org/releasenotes/python-openstackclient/ocata.html \n\nhow about:\n\n\"Updated ``image create`` and ``image set`` to allow an image\u0027s ``visibility`` to include ``--shared`` or ``--community`` as well. Shared images can now be shared across projects, and Community images will not appear in a user\u0027s image list.\"","commit_id":"bc13d3bb0595f12de5648ec998edf80384d635d6"}],"releasenotes/notes/image_set_visibility-babf4ff2f687d465.yaml":[{"author":{"_account_id":14758,"name":"Rajath Agasthya","email":"rajagast@cisco.com","username":"rajathagasthya"},"change_message_id":"04013ca7572ae661112e6cd202f03c052c542599","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - Add ``--commnity`` and ``--shared`` options to the ``image create`` and"},{"line_number":4,"context_line":"    ``image set`` commands to allow image owners to share images across"},{"line_number":5,"context_line":"    multiple projects without explicitly creating image members."},{"line_number":6,"context_line":"    “Community images” will not appear in user’s default"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3f1d235d_6270aadd","line":3,"range":{"start_line":3,"start_character":12,"end_line":3,"end_character":20},"updated":"2017-06-30 20:22:02.000000000","message":"Typo.","commit_id":"48b6e43d395d11e4262f575ed075d4efb581822c"}]}
