)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"1504ecdfe6898248505530a493c8ba968845ab4e","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Stephen Finucane \u003cstephenfin@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2026-09-15 14:24:54 +0100"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Move data files into package"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Otherwise they cannot be discovered when the tool is installed."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"a8dd5b5f_c32970ab","line":7,"range":{"start_line":7,"start_character":10,"end_line":7,"end_character":15},"updated":"2026-09-19 20:05:58.000000000","message":"nit: just a single file?","commit_id":"a43cb9d3b9ed71ef839c37843934de74d403b7e3"}],"openstack_releases/series_status.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"c5d1ee02468eefe183c6b70831bfadfa05f060ea","unresolved":false,"context_lines":[{"line_number":91,"context_line":"    def default(cls):"},{"line_number":92,"context_line":"        ref \u003d ("},{"line_number":93,"context_line":"            importlib.resources.files(\u0027openstack_releases\u0027)"},{"line_number":94,"context_line":"            / \u0027data\u0027"},{"line_number":95,"context_line":"            / \u0027series_status.yaml\u0027"},{"line_number":96,"context_line":"        )"},{"line_number":97,"context_line":"        raw_data \u003d yamlutils.loads(ref.read_text(encoding\u003d\u0027utf-8\u0027))"}],"source_content_type":"text/x-python","patch_set":1,"id":"6182ad39_3f53d388","line":94,"updated":"2026-09-15 13:19:52.000000000","message":"pep8: W503 line break before binary operator","commit_id":"f3cf4bed5643c9eceabb7e05c29f820cf5bd4059"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"c5d1ee02468eefe183c6b70831bfadfa05f060ea","unresolved":false,"context_lines":[{"line_number":92,"context_line":"        ref \u003d ("},{"line_number":93,"context_line":"            importlib.resources.files(\u0027openstack_releases\u0027)"},{"line_number":94,"context_line":"            / \u0027data\u0027"},{"line_number":95,"context_line":"            / \u0027series_status.yaml\u0027"},{"line_number":96,"context_line":"        )"},{"line_number":97,"context_line":"        raw_data \u003d yamlutils.loads(ref.read_text(encoding\u003d\u0027utf-8\u0027))"},{"line_number":98,"context_line":"        return cls(raw_data)"}],"source_content_type":"text/x-python","patch_set":1,"id":"4b748d9b_848febc7","line":95,"updated":"2026-09-15 13:19:52.000000000","message":"pep8: W503 line break before binary operator","commit_id":"f3cf4bed5643c9eceabb7e05c29f820cf5bd4059"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"1504ecdfe6898248505530a493c8ba968845ab4e","unresolved":true,"context_lines":[{"line_number":95,"context_line":"            \u0027series_status.yaml\u0027"},{"line_number":96,"context_line":"        )"},{"line_number":97,"context_line":"        raw_data \u003d yamlutils.loads(ref.read_text(encoding\u003d\u0027utf-8\u0027))"},{"line_number":98,"context_line":"        return cls(raw_data)"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"    @staticmethod"},{"line_number":101,"context_line":"    def _load_series_status_data(root_dir):"}],"source_content_type":"text/x-python","patch_set":2,"id":"5acae0e1_30fd19c8","line":98,"updated":"2026-09-19 20:05:58.000000000","message":"this does more than just moving the data file and should IMO be mentioned accordingly in the commit message. it also leaves the two surrounding helper functions unused so they can get dropped?","commit_id":"a43cb9d3b9ed71ef839c37843934de74d403b7e3"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"0fa3c37eaa6a850d78ac784ee7c47b6177842751","unresolved":true,"context_lines":[{"line_number":95,"context_line":"            \u0027series_status.yaml\u0027"},{"line_number":96,"context_line":"        )"},{"line_number":97,"context_line":"        raw_data \u003d yamlutils.loads(ref.read_text(encoding\u003d\u0027utf-8\u0027))"},{"line_number":98,"context_line":"        return cls(raw_data)"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"    @staticmethod"},{"line_number":101,"context_line":"    def _load_series_status_data(root_dir):"}],"source_content_type":"text/x-python","patch_set":2,"id":"2c405ac8_7c6a768a","line":98,"in_reply_to":"342af18d_b47418ce","updated":"2026-09-25 10:59:01.000000000","message":"ok, but won\u0027t all these references still be using the old, now symlinked file then? guess we should amend these functions instead and keep using them here, too, for consistency. or what is the benefit of this partial move otherwise?","commit_id":"a43cb9d3b9ed71ef839c37843934de74d403b7e3"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"68e1b34bea49d03f0466f45b47274e05610f68af","unresolved":true,"context_lines":[{"line_number":95,"context_line":"            \u0027series_status.yaml\u0027"},{"line_number":96,"context_line":"        )"},{"line_number":97,"context_line":"        raw_data \u003d yamlutils.loads(ref.read_text(encoding\u003d\u0027utf-8\u0027))"},{"line_number":98,"context_line":"        return cls(raw_data)"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"    @staticmethod"},{"line_number":101,"context_line":"    def _load_series_status_data(root_dir):"}],"source_content_type":"text/x-python","patch_set":2,"id":"342af18d_b47418ce","line":98,"in_reply_to":"5acae0e1_30fd19c8","updated":"2026-09-21 11:27:40.000000000","message":"That\u0027s part of the public API and used in-tree here.\n\n```\n❯ ag -w from_directory --ignore tests\nopenstack_releases/series_status.py\n86:    def from_directory(cls, root_dir):\n\nopenstack_releases/cmds/get_series_id.py\n30:    series \u003d series_status.SeriesStatus.from_directory(ROOT_DIR)\n\nopenstack_releases/cmds/list_series.py\n23:    series \u003d series_status.SeriesStatus.from_directory(ROOT_DIR)\n30:    series \u003d series_status.SeriesStatus.from_directory(ROOT_DIR)\n```\n\nI don\u0027t think we can drop it.","commit_id":"a43cb9d3b9ed71ef839c37843934de74d403b7e3"}]}
