contrib/gcc-changelog: Fix Git.AutoInterrupt - sys.meta_path is None exception

I think the following message is new with Python 3.13, at least I starting
seeing the following exception, which could be fixed by a simple call
to 'repo.close()'.

Seemingly the issue was that the lifetime of the destructor exceeded the
object lifetime.

  Exception ignored in: <function Git.AutoInterrupt.__del__ at 0x7ff995aa4f40>
  Traceback (most recent call last):
    File "/usr/lib/python3.13/site-packages/git/cmd.py", line 790, in __del__
    File "/usr/lib/python3.13/site-packages/git/cmd.py", line 781, in _terminate
    File "/usr/lib64/python3.13/subprocess.py", line 2227, in terminate
  ImportError: sys.meta_path is None, Python is likely shutting down

contrib/ChangeLog:

	* gcc-changelog/git_repository.py (parse_git_revisions): Destroy the
	Repo object by calling repo.close() at the end of the function.
This commit is contained in:
Tobias Burnus 2025-03-15 08:53:18 +01:00
parent 6f3bca0db8
commit 254549d2bb

View file

@ -78,4 +78,5 @@ def parse_git_revisions(repo_path, revisions, ref_name=None):
commit_to_info_hook=commit_to_info,
ref_name=ref_name)
parsed_commits.append(git_commit)
repo.close()
return parsed_commits