diff --git a/CHANGES.rst b/CHANGES.rst index 808da6b..6041b9e 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -1,9 +1,19 @@ Changelog ========= -0.61.4 (2026-02-16) +0.61.5 (2026-02-18) ------------------- ------------------------ +- Fix empty repository crash due to None timestamp comparison (#489) + [Rodos] + + Empty repositories have None for pushed_at/updated_at, causing a + TypeError when compared to the last_update string. Use .get() with + truthiness check to skip None timestamps in incremental tracking. + + +0.61.4 (2026-02-16) +------------------- - Fix HTTP 451 DMCA and 403 TOS handling regression (#487) [Rodos] The DMCA handling added in PR #454 had a bug: make_request_with_retry() diff --git a/github_backup/__init__.py b/github_backup/__init__.py index 03f7dee..294be4d 100644 --- a/github_backup/__init__.py +++ b/github_backup/__init__.py @@ -1 +1 @@ -__version__ = "0.61.4" +__version__ = "0.61.5" diff --git a/github_backup/github_backup.py b/github_backup/github_backup.py index ada2d40..4d5394e 100644 --- a/github_backup/github_backup.py +++ b/github_backup/github_backup.py @@ -1772,9 +1772,9 @@ def backup_repositories(args, output_directory, repositories): last_update = "0000-00-00T00:00:00Z" for repository in repositories: - if "updated_at" in repository and repository["updated_at"] > last_update: + if repository.get("updated_at") and repository["updated_at"] > last_update: last_update = repository["updated_at"] - elif "pushed_at" in repository and repository["pushed_at"] > last_update: + elif repository.get("pushed_at") and repository["pushed_at"] > last_update: last_update = repository["pushed_at"] if repository.get("is_gist"):