)]}'
{"doc/source/template_guide/hot_spec.rst":[{"author":{"_account_id":7385,"name":"Thomas Herve","email":"therve@redhat.com","username":"therve"},"change_message_id":"7bcb351aa08ee983f80727e0e0013679439445f7","unresolved":false,"context_lines":[{"line_number":1965,"context_line":"contains"},{"line_number":1966,"context_line":"--------"},{"line_number":1967,"context_line":""},{"line_number":1968,"context_line":"The ``contains`` function for checking whether the specific value is"},{"line_number":1969,"context_line":"in a sequence."},{"line_number":1970,"context_line":""},{"line_number":1971,"context_line":"The syntax of the ``contains`` function is"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7f231b9d_bc1ef709","line":1968,"updated":"2017-06-12 15:27:53.000000000","message":"It doesn\u0027t make a real sentence. Maybe \"..function checks whether...\" ?","commit_id":"f8be28aa7717479f8c9fdb8f2a770081cfa0c895"},{"author":{"_account_id":8289,"name":"huangtianhua","email":"tiantian223@163.com","username":"huangtianhua"},"change_message_id":"80167fb2afea0b65b5d8c3d2cdd1fe53dc58be90","unresolved":false,"context_lines":[{"line_number":1965,"context_line":"contains"},{"line_number":1966,"context_line":"--------"},{"line_number":1967,"context_line":""},{"line_number":1968,"context_line":"The ``contains`` function for checking whether the specific value is"},{"line_number":1969,"context_line":"in a sequence."},{"line_number":1970,"context_line":""},{"line_number":1971,"context_line":"The syntax of the ``contains`` function is"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7f231b9d_0f2a328f","line":1968,"in_reply_to":"7f231b9d_bc1ef709","updated":"2017-06-13 08:53:12.000000000","message":"Done","commit_id":"f8be28aa7717479f8c9fdb8f2a770081cfa0c895"}],"heat/engine/hot/functions.py":[{"author":{"_account_id":10487,"name":"Kanagaraj Manickam","email":"mkr1481@gmail.com","username":"kanagarajm"},"change_message_id":"5fa4ff154c7e481d74ad01ceaba9b2ec224cdc43","unresolved":false,"context_lines":[{"line_number":1564,"context_line":""},{"line_number":1565,"context_line":"        if not isinstance(resolved_sequence, collections.Sequence):"},{"line_number":1566,"context_line":"            raise TypeError(_(\u0027Incorrect arguments to \"%s\", \u0027"},{"line_number":1567,"context_line":"                              \u0027we check the value whether in \u0027"},{"line_number":1568,"context_line":"                              \u0027a sequence.\u0027) % self.fn_name)"},{"line_number":1569,"context_line":""},{"line_number":1570,"context_line":"        return resolved_value in resolved_sequence"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f231b9d_2cf89c7a","line":1568,"range":{"start_line":1567,"start_character":31,"end_line":1568,"end_character":42},"updated":"2017-06-20 03:34:02.000000000","message":"its not an good idea to use \u0027we\u0027 here. so can we make it something like this\n\nSecond argument to \u0027contains\u0027 function should be an sequence.","commit_id":"2973a2b15d202e4a23af18f04566ef9a86103811"},{"author":{"_account_id":8833,"name":"Rabi Mishra","email":"ramishra@redhat.com","username":"rabi"},"change_message_id":"4a62727c8c6dfc1f14b0e160ed183f65a0d269cc","unresolved":false,"context_lines":[{"line_number":1535,"context_line":"    Takes the form::"},{"line_number":1536,"context_line":""},{"line_number":1537,"context_line":"        contains:"},{"line_number":1538,"context_line":"          - \u003cvalue\u003e"},{"line_number":1539,"context_line":"          - \u003csequence\u003e"},{"line_number":1540,"context_line":""},{"line_number":1541,"context_line":"    The value can be any type that you want to check. Returns true"}],"source_content_type":"text/x-python","patch_set":6,"id":"7f231b9d_8bb54cd0","line":1538,"range":{"start_line":1538,"start_character":12,"end_line":1538,"end_character":19},"updated":"2017-06-20 10:38:03.000000000","message":"Should we also include checking a list/sequence containing another list/sequence?","commit_id":"4339e6cfc9e516fae7733663e5cd9d10484cc376"},{"author":{"_account_id":8833,"name":"Rabi Mishra","email":"ramishra@redhat.com","username":"rabi"},"change_message_id":"4a62727c8c6dfc1f14b0e160ed183f65a0d269cc","unresolved":false,"context_lines":[{"line_number":1566,"context_line":"            raise TypeError(_(\u0027Second argument to \"%s\" should be \u0027"},{"line_number":1567,"context_line":"                              \u0027a sequence.\u0027) % self.fn_name)"},{"line_number":1568,"context_line":""},{"line_number":1569,"context_line":"        return resolved_value in resolved_sequence"}],"source_content_type":"text/x-python","patch_set":6,"id":"7f231b9d_6bcf9057","line":1569,"range":{"start_line":1569,"start_character":15,"end_line":1569,"end_character":50},"updated":"2017-06-20 10:38:03.000000000","message":"set(resolved_value) \u003c\u003d set(resolved_sequence) would possibly do that?","commit_id":"4339e6cfc9e516fae7733663e5cd9d10484cc376"},{"author":{"_account_id":8833,"name":"Rabi Mishra","email":"ramishra@redhat.com","username":"rabi"},"change_message_id":"2d13ae542350ed0057b11521c1cf28be0f0d72fe","unresolved":false,"context_lines":[{"line_number":1566,"context_line":"            raise TypeError(_(\u0027Second argument to \"%s\" should be \u0027"},{"line_number":1567,"context_line":"                              \u0027a sequence.\u0027) % self.fn_name)"},{"line_number":1568,"context_line":""},{"line_number":1569,"context_line":"        return resolved_value in resolved_sequence"}],"source_content_type":"text/x-python","patch_set":6,"id":"5f201791_584a6b80","line":1569,"range":{"start_line":1569,"start_character":15,"end_line":1569,"end_character":50},"in_reply_to":"5f201791_978e962c","updated":"2017-06-21 05:04:56.000000000","message":"Yeah, the one I suggested would not work in many cases. However it\u0027s fair to assume that someone would check numbers(ex. ports)\n\n\u003e\u003e\u003e [8080, 80] in [8080, 80, 8004]\nFalse\n\nI\u0027m ok for this to land assuming \u0027val\u0027 would not be a list.","commit_id":"4339e6cfc9e516fae7733663e5cd9d10484cc376"},{"author":{"_account_id":8289,"name":"huangtianhua","email":"tiantian223@163.com","username":"huangtianhua"},"change_message_id":"a20d53c8d97ca78af7add183c23d13a86374ac92","unresolved":false,"context_lines":[{"line_number":1566,"context_line":"            raise TypeError(_(\u0027Second argument to \"%s\" should be \u0027"},{"line_number":1567,"context_line":"                              \u0027a sequence.\u0027) % self.fn_name)"},{"line_number":1568,"context_line":""},{"line_number":1569,"context_line":"        return resolved_value in resolved_sequence"}],"source_content_type":"text/x-python","patch_set":6,"id":"5f201791_978e962c","line":1569,"range":{"start_line":1569,"start_character":15,"end_line":1569,"end_character":50},"in_reply_to":"7f231b9d_6bcf9057","updated":"2017-06-21 01:32:02.000000000","message":"No, I don\u0027t think so:\n\u003e\u003e\u003e val \u003d \u0027abc\u0027\n\u003e\u003e\u003e seq \u003d \u0027cba\u0027\n\u003e\u003e\u003e val in seq\nFalse\n\u003e\u003e\u003e set(val) \u003c\u003d set(seq)\nTrue\n\n\u003e\u003e\u003e val \u003d \u0027abcd\u0027\n\u003e\u003e\u003e seq \u003d [\u0027abcd\u0027, \u0027efg\u0027]\n\u003e\u003e\u003e val in seq\nTrue\n\u003e\u003e\u003e set(val) \u003c\u003d set(seq)\nFalse\n\n\u003e\u003e\u003e val \u003d [\u0027abc\u0027]\n\u003e\u003e\u003e seq \u003d [\u0027hi\u0027, [\u0027abc\u0027]]\n\u003e\u003e\u003e val in seq\nTrue\n\u003e\u003e\u003e set(val) \u003c\u003d set(seq)\nTraceback (most recent call last):\n  File \"\u003cstdin\u003e\", line 1, in \u003cmodule\u003e\nTypeError: unhashable type: \u0027list\u0027","commit_id":"4339e6cfc9e516fae7733663e5cd9d10484cc376"}],"heat/tests/test_hot.py":[{"author":{"_account_id":10487,"name":"Kanagaraj Manickam","email":"mkr1481@gmail.com","username":"kanagarajm"},"change_message_id":"5fa4ff154c7e481d74ad01ceaba9b2ec224cdc43","unresolved":false,"context_lines":[{"line_number":2218,"context_line":"        tmpl \u003d template.Template(hot_pike_tpl_empty)"},{"line_number":2219,"context_line":"        exc \u003d self.assertRaises(exception.StackValidationFailed,"},{"line_number":2220,"context_line":"                                self.resolve, snippet, tmpl)"},{"line_number":2221,"context_line":"        msg \u003d \u0027Incorrect arguments to \u0027"},{"line_number":2222,"context_line":"        self.assertIn(msg, six.text_type(exc))"},{"line_number":2223,"context_line":""},{"line_number":2224,"context_line":"    def test_contains_with_invalid_args_number(self):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f231b9d_ecf18497","line":2221,"range":{"start_line":2221,"start_character":14,"end_line":2221,"end_character":39},"updated":"2017-06-20 03:34:02.000000000","message":"you want to update here as well.","commit_id":"2973a2b15d202e4a23af18f04566ef9a86103811"},{"author":{"_account_id":10487,"name":"Kanagaraj Manickam","email":"mkr1481@gmail.com","username":"kanagarajm"},"change_message_id":"5fa4ff154c7e481d74ad01ceaba9b2ec224cdc43","unresolved":false,"context_lines":[{"line_number":2234,"context_line":"        tmpl \u003d template.Template(hot_pike_tpl_empty)"},{"line_number":2235,"context_line":"        exc \u003d self.assertRaises(TypeError,"},{"line_number":2236,"context_line":"                                self.resolve, snippet, tmpl)"},{"line_number":2237,"context_line":"        msg \u003d \u0027Incorrect arguments to \u0027"},{"line_number":2238,"context_line":"        self.assertIn(msg, six.text_type(exc))"},{"line_number":2239,"context_line":""},{"line_number":2240,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7f231b9d_cceec8b3","line":2237,"range":{"start_line":2237,"start_character":14,"end_line":2237,"end_character":39},"updated":"2017-06-20 03:34:02.000000000","message":"you may want to update here","commit_id":"2973a2b15d202e4a23af18f04566ef9a86103811"}]}
