)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":36208,"name":"Kim HyoBin","display_name":"HyoBin","email":"hb.kim@okestro.com","username":"hbkim"},"change_message_id":"807afe7bcf88f040bfbabc7f5064b852b84e3189","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"5a406332_aa86612e","updated":"2024-06-13 02:13:04.000000000","message":"passlib - bcrypt pined","commit_id":"5abc182b671bebf2b7156fefe9cf439d969a27e7"},{"author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"change_message_id":"0cf88f081f15115a4155bbcaf43315beb242bd45","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"e4dfedfd_2465ccab","updated":"2024-06-12 16:42:09.000000000","message":"thanks","commit_id":"5abc182b671bebf2b7156fefe9cf439d969a27e7"},{"author":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"change_message_id":"7cea99880be7a697dc14d823b8aeeaa8b17715f0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"4aeb67b4_0ed20d1c","updated":"2024-06-21 03:51:58.000000000","message":"Looks good to me.  Normally I\u0027d suggest: `bcrypt\u003c4.1.0  # Apache-2.0` but actually this might make it easier to undo when keystone has a better fix","commit_id":"b9c903e926087fe2f29bd92c9465a3564ccb2a1f"}],"global-requirements.txt":[{"author":{"_account_id":14288,"name":"Matthew Thode","display_name":"prometheanfire","email":"mthode@mthode.org","username":"prometheanfire"},"change_message_id":"c3c41bcbe7bcb4f71cc0a260d09f985e543e5147","unresolved":false,"context_lines":[{"line_number":10,"context_line":"Babel!\u003d2.4.0  # BSD"},{"line_number":11,"context_line":"# NOTE bcrypt is currently pinned at 4.0.1 in upper-constraints due to an issue"},{"line_number":12,"context_line":"# with passlib: https://foss.heptapod.net/python-libs/passlib/-/issues/190"},{"line_number":13,"context_line":"bcrypt  # Apache-2.0"},{"line_number":14,"context_line":"beautifulsoup4  # MIT"},{"line_number":15,"context_line":"betamax  # Apache-2.0"},{"line_number":16,"context_line":"boto  # MIT"}],"source_content_type":"text/plain","patch_set":2,"id":"d582220d_47a21aa0","line":13,"updated":"2024-06-14 17:17:41.000000000","message":"in order for this to be pinned you need to set a cap or some other limiter on bcrypt here","commit_id":"5abc182b671bebf2b7156fefe9cf439d969a27e7"}],"upper-constraints.txt":[{"author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"change_message_id":"b356aa91ea1481eaba20872830f15c7ba479afff","unresolved":true,"context_lines":[{"line_number":217,"context_line":"sphinxcontrib-jsmath\u003d\u003d\u003d1.0.1"},{"line_number":218,"context_line":"python-novaclient\u003d\u003d\u003d18.6.0"},{"line_number":219,"context_line":"pact\u003d\u003d\u003d1.12.0"},{"line_number":220,"context_line":"bcrypt\u003d\u003d\u003d4.0.1"},{"line_number":221,"context_line":"exceptiongroup\u003d\u003d\u003d1.2.1;python_version\u003d\u003d\u00273.10\u0027"},{"line_number":222,"context_line":"exceptiongroup\u003d\u003d\u003d1.2.1;python_version\u003d\u003d\u00273.8\u0027"},{"line_number":223,"context_line":"exceptiongroup\u003d\u003d\u003d1.2.1;python_version\u003d\u003d\u00273.9\u0027"}],"source_content_type":"text/plain","patch_set":1,"id":"6e10083d_6dfb5003","line":220,"updated":"2024-06-12 15:20:24.000000000","message":"lets add an explicit comment stating that Keystone needs that temporarily due to the unmaintained passlib. Otherwise it become hard to understand the reasoning (and unpin it once Keystone drops passlib)","commit_id":"33dd2610005e8144a5544a31722e8853d238f2ba"},{"author":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"change_message_id":"7cea99880be7a697dc14d823b8aeeaa8b17715f0","unresolved":true,"context_lines":[{"line_number":217,"context_line":"sphinxcontrib-jsmath\u003d\u003d\u003d1.0.1"},{"line_number":218,"context_line":"python-novaclient\u003d\u003d\u003d18.6.0"},{"line_number":219,"context_line":"pact\u003d\u003d\u003d1.12.0"},{"line_number":220,"context_line":"bcrypt\u003d\u003d\u003d4.0.1"},{"line_number":221,"context_line":"exceptiongroup\u003d\u003d\u003d1.2.1;python_version\u003d\u003d\u00273.10\u0027"},{"line_number":222,"context_line":"exceptiongroup\u003d\u003d\u003d1.2.1;python_version\u003d\u003d\u00273.8\u0027"},{"line_number":223,"context_line":"exceptiongroup\u003d\u003d\u003d1.2.1;python_version\u003d\u003d\u00273.9\u0027"}],"source_content_type":"text/plain","patch_set":1,"id":"86d0964c_8be2854f","line":220,"in_reply_to":"6e10083d_6dfb5003","updated":"2024-06-21 03:51:58.000000000","message":"That\u0027d be good but this file is *largely* generated and any comments would be lost\nor add additional work for the requirements-core","commit_id":"33dd2610005e8144a5544a31722e8853d238f2ba"}]}
