)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"change_message_id":"b8978a067a5a8a79e06b9169811e4d4cb5993ac2","unresolved":false,"context_lines":[{"line_number":21,"context_line":"python3.6 and pep660 support. What this means is that pip explodes when"},{"line_number":22,"context_line":"trying to process an editable wheel install through the pyproject.toml"},{"line_number":23,"context_line":"pep517 build setup. To work around this in testing we simply tell tox to"},{"line_number":24,"context_line":"not use a development install of PBR under python3.6."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"This has the potential to break PBR with python3.6 (and older too if the"},{"line_number":27,"context_line":"pip they run under has pep660 support) in the wild when installing"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":13,"id":"cd58d9f7_ea2a9813","line":24,"updated":"2025-01-03 19:31:13.000000000","message":"Nit: This could point out that one component of the problem is pip\u0027s decision to automatically do PEP 660 editable mode in the presence of a pyproject.toml file, as if its mere existence is a magic switch that implies it should work (even though it clearly doesn\u0027t).","commit_id":"0ad8a5a1ef9ff2e73c9cec224635bc3474700432"},{"author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"change_message_id":"b8978a067a5a8a79e06b9169811e4d4cb5993ac2","unresolved":false,"context_lines":[{"line_number":26,"context_line":"This has the potential to break PBR with python3.6 (and older too if the"},{"line_number":27,"context_line":"pip they run under has pep660 support) in the wild when installing"},{"line_number":28,"context_line":"editable packages. The workarounds there are for people to not use"},{"line_number":29,"context_line":"editable installs or to use an older pip version."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Change-Id: I66dfd85972260e9f36b7bc35d26483d04af3690c"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":13,"id":"6d8affa9_9b4400d8","line":29,"updated":"2025-01-03 19:31:13.000000000","message":"But only if they also have a pyproject.toml file, which PBR documents isn\u0027t supported prior to SetupTools 64, which only works with Python 3.7 and newer, so if it does crop up in the wild it\u0027s going to be in a project that doesn\u0027t meet PBR\u0027s declared support expectations to begin with.","commit_id":"0ad8a5a1ef9ff2e73c9cec224635bc3474700432"}],"pyproject.toml":[{"author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"change_message_id":"b8978a067a5a8a79e06b9169811e4d4cb5993ac2","unresolved":false,"context_lines":[{"line_number":2,"context_line":"requires \u003d ["},{"line_number":3,"context_line":"  # Includes pep660 support in setuptools"},{"line_number":4,"context_line":"  \"setuptools\u003e\u003d64.0.0;python_version\u003e\u003d\u00273.7\u0027\","},{"line_number":5,"context_line":"  # Fallback to whatever we can get otherwise"},{"line_number":6,"context_line":"  \"setuptools;python_version\u003c\u00273.7\u0027\""},{"line_number":7,"context_line":"]"},{"line_number":8,"context_line":"build-backend \u003d \"pbr.build\""}],"source_content_type":"text/x-toml","patch_set":13,"id":"e908387f_c53352db","line":5,"updated":"2025-01-03 19:31:13.000000000","message":"Could be worth commenting this is discouraged for projects using PBR, but here to ease testing of PBR itself on older platforms?","commit_id":"0ad8a5a1ef9ff2e73c9cec224635bc3474700432"},{"author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"change_message_id":"b8978a067a5a8a79e06b9169811e4d4cb5993ac2","unresolved":false,"context_lines":[{"line_number":7,"context_line":"]"},{"line_number":8,"context_line":"build-backend \u003d \"pbr.build\""},{"line_number":9,"context_line":"backend-path \u003d [\".\"]"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"[tools.setuptools]"},{"line_number":12,"context_line":"py-modules\u003d[]"}],"source_content_type":"text/x-toml","patch_set":13,"id":"983242b7_b799c920","line":10,"updated":"2025-01-03 19:31:13.000000000","message":"I *think* omitting the [project] section may be sufficient to get pip, setuptools and friends to assume all metadata is dynamic, though we should check the resulting sdist and wheel metadata files built from this to be sure they\u0027re not missing anything important.","commit_id":"0ad8a5a1ef9ff2e73c9cec224635bc3474700432"}],"tox.ini":[{"author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"change_message_id":"b8978a067a5a8a79e06b9169811e4d4cb5993ac2","unresolved":false,"context_lines":[{"line_number":23,"context_line":"commands \u003d stestr run --serial --suppress-attachments {posargs}"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"[testenv:py36]"},{"line_number":26,"context_line":"usedevelop \u003d false"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"[testenv:pep8]"},{"line_number":29,"context_line":"commands \u003d pre-commit run -a"}],"source_content_type":"text/x-properties","patch_set":13,"id":"9f40b572_c8ec8e39","line":26,"updated":"2025-01-03 19:31:13.000000000","message":"This override warrants an explanatory comment for the benefit of future-us (or anyone else trying to maintain it years down the line).","commit_id":"0ad8a5a1ef9ff2e73c9cec224635bc3474700432"}]}
