* fix(ci): count open issues reliably and add a Hacktoberfest countdown
The tracker's "Open issues" line was showing the pull-request total (e.g.
621) instead of the issue total (107). GitHub's `/search/issues`
`is:issue` / `is:pr` qualifiers are unreliable on this large, high-churn
repo -- some runs return the PR pool for *both* queries, so the two lines
printed the same number.
Count without the flaky qualifiers instead:
- open PRs = the `Link: rel="last"` page number of `/repos/{repo}/pulls`
(deterministic, page-numbered pagination);
- open issues = the repo endpoint's `open_issues_count` (issues + PRs)
minus the open-PR total -- self-checking and stable.
Also add the requested Hacktoberfest countdown to the stats block:
- days until 2026-10-01;
- issues to close per day to clear the backlog;
- PRs to merge or close per day to clear the backlog.
Per-day figures round up (finishing a day early beats a day late) and
degrade to a clear message once Hacktoberfest starts, so the block never
divides by zero on the final day.
* chore: re-trigger keeper after marking PR checklist
Appends an 'Open issues' section (144 open: 21 bug / 82 enhancement /
23 awaiting triage / 2 help wanted) to the Hacktoberfest prep doc,
mirroring the PR tracker's checklist notation, plus a first-pass
'Triage recommendations' with close candidates grouped by confidence
(spam, obsolete/removed-file, fixed-by-open-PR, stale feature requests,
verify-then-close, and keep-open good-first-issues).
Checked off 84 tracked PRs that are no longer open since the 2026-09-05
refresh: 10 merged and 74 closed. Updated the checkboxes across both the
main list and the by-directory grouping, and refreshed the 'Latest
refresh' summary line (approximately 669 PRs remain open).
Per #15081.
@cclauss managed the new-root-directory batch from #15081, closing/merging
all except #11842 (data-loss bug) and #12392 (no tests). Check the boxes for
the 10 now-resolved PRs across all three listings (flat, grouped-by-directory,
and 'Creates a new root directory').
Merged: #9896, #9388, #12141, #13231Closed: #13172, #12140, #13119, #11574, #13924, #14611
Still open (unchanged): #11842, #12392, #12648
* docs: group all 770 open PRs by algorithm directory in hacktober_2026_prep.md
* docs: add 'Creates a new root directory' section grouping 13 PRs
As requested by @cclauss, group the open PRs that add a brand-new
top-level directory (absent from master) into their own section so the
new-category decision can be made before code review. Each of the 13
PRs was verified to add at least one file under a top-level path that
does not exist on master.
* docs: configure Sphinx directly and drop unmaintained sphinx-pyproject
sphinx-pyproject has no releases supporting Python 3.14/3.15 and pins an
old Sphinx, which blocks the docs build on newer interpreters. Move the
[tool.sphinx-pyproject] config into a plain docs/conf.py (project name,
version and authors single-sourced from pyproject.toml via stdlib
tomllib), drop the sphinx-pyproject dependency, and depend on sphinx>=8.2
directly. Also bump beautifulsoup4>=4.15 and pandas>=2.3.3.
No changes to uv.lock.
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Christian Clauss <cclauss@me.com>