From 7185531f94273cc5c8abf36cbb7e3eacc0adf5a1 Mon Sep 17 00:00:00 2001 From: yusyus Date: Sun, 15 Mar 2026 02:44:06 +0300 Subject: [PATCH] fix: replace PaginatedList slicing with itertools.islice in _extract_issues PyGithub's PaginatedList slicing (issues[:max_issues]) may fail with 'list index out of range' on some PyGithub versions or when repos have no issues. Replace with itertools.islice() which works reliably with any iterable, including PaginatedList. Bug reported by @dream0438-cmd in PR #269. Closes #269 --- src/skill_seekers/cli/github_scraper.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/skill_seekers/cli/github_scraper.py b/src/skill_seekers/cli/github_scraper.py index 14098c9..4e8b4d9 100644 --- a/src/skill_seekers/cli/github_scraper.py +++ b/src/skill_seekers/cli/github_scraper.py @@ -16,6 +16,7 @@ Usage: import argparse import fnmatch +import itertools import json import logging import os @@ -812,7 +813,7 @@ class GitHubScraper: issues = self.repo.get_issues(state="all", sort="updated", direction="desc") issue_list = [] - for issue in issues[: self.max_issues]: + for issue in itertools.islice(issues, self.max_issues): # Skip pull requests (they appear in issues) if issue.pull_request: continue