* deps: migrate from httpx to httpx2 (pydantic's maintained fork) Mechanical rename of httpx -> httpx2 (API-compatible fork of httpx 0.28.1): pyproject.toml deps, PEP 723 inline-script headers, and all import/call sites. Excludes uv.lock (the keeper's allow-list rejects .lock files); the lock refresh needs a separate maintainer-merged PR. Refs #15081 * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * deps: drop tweepy + migrate remaining requests refs to httpx2 - maths/allocation_number.py: docstring example uses httpx2, not requests - web_programming/get_imdbtop.py.DISABLED: import httpx2 instead of requests - remove web_programming/get_user_tweets.py.DISABLED (a Twitter API how-to, not an algorithm) and drop the tweepy dependency that was its only user and the last high-level dep pulling in requests - uv.lock intentionally untouched (keeper allow-list) Refs #15081 --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Dealing with the onslaught of Hacktoberfest
Each year, October brings a swarm of new contributors participating in Hacktoberfest. This event has its pros and cons, but it presents a monumental workload for the few active maintainers of this repo. The maintainer workload is further impacted by a new version of CPython being released in the first week of each October.
To help make our algorithms more valuable to visitors, our CONTRIBUTING.md file outlines several strict requirements, such as tests, type hints, descriptive names, functions, and/or classes. Maintainers reviewing pull requests should try to encourage improvements to meet these goals, but when the workload becomes overwhelming (esp. in October), pull requests that do not meet these goals should be closed.
Below are a few gh scripts that should close pull requests that do not match the definition of an acceptable algorithm as defined in CONTRIBUTING.md. I tend to run these scripts in the following order.
- close_pull_requests_with_require_descriptive_names.sh
- close_pull_requests_with_require_tests.sh
- close_pull_requests_with_require_type_hints.sh
- close_pull_requests_with_failing_tests.sh
- close_pull_requests_with_awaiting_changes.sh
- find_git_conflicts.sh
Run on 14 Oct 2025: 107 of 541 (19.77%) pull requests closed.
| Script run | Open pull requests | Pull requests closed |
|---|---|---|
| None | 541 | 0 |
| require_descriptive_names | 515 | 26 |
| require_tests | 498 | 17 |
| require_type_hints | 496 | 2 |
| failing_tests | 438 | 58 |
| awaiting_changes | 434 | 4 |
| git_conflicts | [ broken ] | 0 |