)]}'
{"gate.txt":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"fe4eff6a38a515efb2c9cda662e3cdf3145d8478","unresolved":false,"context_lines":[{"line_number":1,"context_line":"alembic\u003d\u003d1.4.2,amqp\u003d\u003d2.6.0,appdirs\u003d\u003d1.4.4,attrs\u003d\u003d19.3.0,automaton\u003d\u003d2.1.0,Babel\u003d\u003d2.8.0,bandit\u003d\u003d1.6.2,bcrypt\u003d\u003d3.1.7,cachetools\u003d\u003d4.1.0,castellan\u003d\u003d3.1.0,certifi\u003d\u003d2020.4.5.2,cffi\u003d\u003d1.14.0,chardet\u003d\u003d3.0.4,cliff\u003d\u003d3.3.0,cmd2\u003d\u003d1.1.0,colorama\u003d\u003d0.4.3,coverage\u003d\u003d5.1,cryptography\u003d\u003d2.9.2,cursive\u003d\u003d0.2.2,ddt\u003d\u003d1.4.1,debtcollector\u003d\u003d2.1.0,decorator\u003d\u003d4.4.2,dnspython\u003d\u003d1.16.0,dogpile.cache\u003d\u003d0.9.2,eventlet\u003d\u003d0.25.2,extras\u003d\u003d1.0.0,fasteners\u003d\u003d0.14.1,fixtures\u003d\u003d3.0.0,flake8\u003d\u003d3.8.3,future\u003d\u003d0.18.2,futurist\u003d\u003d2.2.0,gabbi\u003d\u003d2.0.3,gitdb\u003d\u003d4.0.5,GitPython\u003d\u003d3.1.3,greenlet\u003d\u003d0.4.16,hacking\u003d\u003d3.1.0,idna\u003d\u003d2.9,iso8601\u003d\u003d0.1.12,Jinja2\u003d\u003d2.11.2,jmespath\u003d\u003d0.10.0,jsonpatch\u003d\u003d1.25,jsonpath-rw\u003d\u003d1.4.0,jsonpath-rw-ext\u003d\u003d1.2.2,jsonpointer\u003d\u003d2.0,jsonschema\u003d\u003d3.2.0,keystoneauth1\u003d\u003d4.0.0,keystonemiddleware\u003d\u003d9.0.0,kombu\u003d\u003d4.6.10,linecache2\u003d\u003d1.0.0,lxml\u003d\u003d4.5.1,Mako\u003d\u003d1.1.3,MarkupSafe\u003d\u003d1.1.1,mccabe\u003d\u003d0.6.1,microversion-parse\u003d\u003d1.0.1,mock\u003d\u003d3.0.5,monotonic\u003d\u003d1.5,more-itertools\u003d\u003d8.3.0,msgpack\u003d\u003d0.6.1,munch\u003d\u003d2.5.0,mypy\u003d\u003d0.780,mypy-extensions\u003d\u003d0.4.3,netaddr\u003d\u003d0.7.19,netifaces\u003d\u003d0.10.9,networkx\u003d\u003d2.4,-e git+file:///dev/null@86574032571f305cc29f7c9f219e999dfb94dc83#egg\u003dnova,numpy\u003d\u003d1.18.5,openstacksdk\u003d\u003d0.46.0,os-brick\u003d\u003d3.1.0,os-client-config\u003d\u003d2.1.0,os-resource-classes\u003d\u003d1.0.0,os-service-types\u003d\u003d1.7.0,os-traits\u003d\u003d2.3.0,os-vif\u003d\u003d2.0.0,os-win\u003d\u003d5.0.2,os-xenapi\u003d\u003d0.3.4,osc-lib\u003d\u003d2.2.0,oslo.cache\u003d\u003d2.4.1,oslo.concurrency\u003d\u003d4.1.1,oslo.config\u003d\u003d8.1.0,oslo.context\u003d\u003d3.1.0,oslo.db\u003d\u003d8.2.0,oslo.i18n\u003d\u003d5.0.0,oslo.log\u003d\u003d4.2.1,oslo.messaging\u003d\u003d12.2.0,oslo.middleware\u003d\u003d4.1.0,oslo.policy\u003d\u003d3.2.0,oslo.privsep\u003d\u003d2.2.0,oslo.reports\u003d\u003d2.1.0,oslo.rootwrap\u003d\u003d6.1.0,oslo.serialization\u003d\u003d4.0.0,oslo.service\u003d\u003d2.2.0,oslo.upgradecheck\u003d\u003d1.1.0,oslo.utils\u003d\u003d4.2.1,oslo.versionedobjects\u003d\u003d2.1.0,oslo.vmware\u003d\u003d3.4.0,oslotest\u003d\u003d4.3.0,osprofiler\u003d\u003d3.2.0,ovs\u003d\u003d2.13.0,ovsdbapp\u003d\u003d1.3.0,packaging\u003d\u003d20.4,paramiko\u003d\u003d2.7.1,Paste\u003d\u003d3.4.1,PasteDeploy\u003d\u003d2.1.0,pbr\u003d\u003d5.4.5,pluggy\u003d\u003d0.13.1,ply\u003d\u003d3.11,prettytable\u003d\u003d0.7.2,psutil\u003d\u003d5.7.0,psycopg2\u003d\u003d2.8.5,py\u003d\u003d1.8.1,pyasn1\u003d\u003d0.4.8,pyasn1-modules\u003d\u003d0.2.8,pycadf\u003d\u003d3.0.0,pycodestyle\u003d\u003d2.6.0,pycparser\u003d\u003d2.20,pydot\u003d\u003d1.4.1,pyflakes\u003d\u003d2.2.0,pyinotify\u003d\u003d0.9.6,PyJWT\u003d\u003d1.7.1,PyMySQL\u003d\u003d0.9.3,PyNaCl\u003d\u003d1.4.0,pyOpenSSL\u003d\u003d19.1.0,pyparsing\u003d\u003d2.4.7,pyperclip\u003d\u003d1.8.0,pypowervm\u003d\u003d1.1.24,pyroute2\u003d\u003d0.5.12,pyrsistent\u003d\u003d0.16.0,pytest\u003d\u003d5.4.3,python-barbicanclient\u003d\u003d4.10.0,python-cinderclient\u003d\u003d7.0.0,python-dateutil\u003d\u003d2.8.1,python-editor\u003d\u003d1.0.4,python-glanceclient\u003d\u003d3.1.1,python-ironicclient\u003d\u003d4.1.0,python-keystoneclient\u003d\u003d4.0.0,python-mimeparse\u003d\u003d1.6.0,python-neutronclient\u003d\u003d7.1.1,python-subunit\u003d\u003d1.4.0,pytz\u003d\u003d2020.1,PyYAML\u003d\u003d5.3.1,repoze.lru\u003d\u003d0.7,requests\u003d\u003d2.23.0,requests-mock\u003d\u003d1.8.0,requestsexceptions\u003d\u003d1.4.0,retrying\u003d\u003d1.3.3,rfc3986\u003d\u003d1.4.0,Routes\u003d\u003d2.4.1,simplejson\u003d\u003d3.17.0,six\u003d\u003d1.15.0,smmap\u003d\u003d3.0.4,sortedcontainers\u003d\u003d2.2.2,SQLAlchemy\u003d\u003d1.3.17,sqlalchemy-migrate\u003d\u003d0.13.0,sqlparse\u003d\u003d0.3.1,statsd\u003d\u003d3.3.0,stestr\u003d\u003d3.0.1,stevedore\u003d\u003d2.0.0,suds-jurko\u003d\u003d0.6,taskflow\u003d\u003d4.3.0,Tempita\u003d\u003d0.5.2,tenacity\u003d\u003d6.2.0,testresources\u003d\u003d2.0.1,testscenarios\u003d\u003d0.5.0,testtools\u003d\u003d2.4.0,tooz\u003d\u003d2.5.1,traceback2\u003d\u003d1.4.0,typed-ast\u003d\u003d1.4.1,typing-extensions\u003d\u003d3.7.4.2,unittest2\u003d\u003d1.1.0,urllib3\u003d\u003d1.25.9,vine\u003d\u003d1.3.0,voluptuous\u003d\u003d0.11.7,warlock\u003d\u003d1.3.3,wcwidth\u003d\u003d0.2.4,WebOb\u003d\u003d1.8.6,websockify\u003d\u003d0.9.0,wrapt\u003d\u003d1.12.1,wsgi-intercept\u003d\u003d1.9.2,yappi\u003d\u003d1.2.5,zVMCloudConnector\u003d\u003d1.4.1"}],"source_content_type":"text/plain","patch_set":2,"id":"bf51134e_5b01b3ae","line":1,"updated":"2020-06-26 16:37:21.000000000","message":"I assume this was accidental?","commit_id":"78e34dc8e4695f090b0794af98df304093de2ae7"}],"nova/tests/unit/test_test_utils.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"fe4eff6a38a515efb2c9cda662e3cdf3145d8478","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"        def fake_socket_ok(x, y):"},{"line_number":53,"context_line":"            return mock.Mock()"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"        with fixtures.MonkeyPatch(\u0027socket.socket\u0027, fake_socket_fail):"},{"line_number":56,"context_line":"            self.assertFalse(test_utils.is_ipv6_supported())"},{"line_number":57,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_bb29ef37","line":54,"updated":"2020-06-26 16:37:21.000000000","message":"Intentional?","commit_id":"78e34dc8e4695f090b0794af98df304093de2ae7"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"a411aa71c43371bac590a97d252008b71bcbed56","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"        def fake_socket_ok(x, y):"},{"line_number":53,"context_line":"            return mock.Mock()"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"        with fixtures.MonkeyPatch(\u0027socket.socket\u0027, fake_socket_fail):"},{"line_number":56,"context_line":"            self.assertFalse(test_utils.is_ipv6_supported())"},{"line_number":57,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_1391d0f1","line":54,"in_reply_to":"bf51134e_bb29ef37","updated":"2020-06-29 13:31:29.000000000","message":"This is actually intentional. The TemporaryFile does not implement the socket protocol so nova.tests.unit.test_test_utils.TestUtilsTestCase.test_ipv6_supported test case fails calling bind() on it.","commit_id":"78e34dc8e4695f090b0794af98df304093de2ae7"}]}
