Commit 7010a8cfb9

7010a8cfb998926b0511f4f07aa65af5c20feb0d

parent: 2c2d906460

Verified · cmc

cmc <hello@cleberg.net> · 2026-08-23 01:45 UTC

Stop requirements.txt naming standard-library modules

It listed json, urllib.request, pathlib and typing. json and urllib.request have
no distribution on PyPI, so pip install -r requirements.txt failed outright —
the documented install step did not work.

The other two are worse than useless: typing and pathlib exist on PyPI as
backports for Python 2 and 3.4, and installing them on a modern interpreter
shadows the standard library with older implementations.

hn imports nothing outside the standard library; verified by running it with a
bare interpreter. The file stays, empty and commented, so the documented step
still works.

Layout: unified · split

requirements.txt +11 −4
@@ -1,4 +1,11 @@
1json
2urllib.request
3pathlib
4typing
\ No newline at end of file
1# hn has no third-party dependencies: json, urllib.request, pathlib, datetime
2# and typing are all standard library.
3#
4# This file previously listed those module names, which made
5# `pip install -r requirements.txt` fail outright — json and urllib.request have
6# no distribution on PyPI. Worse, `typing` and `pathlib` DO exist there as
7# backports for Python 2 and 3.4, and installing them on a modern interpreter
8# shadows the standard library with older implementations.
9#
10# Kept as an empty file rather than deleted so the documented install step still
11# works.