<feed xmlns='http://www.w3.org/2005/Atom'>
<title>multilayer-perceptron/MultiLayerPerceptron/download.py, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>https://git.kagamino.dev/multilayer-perceptron/atom?h=master</id>
<link rel='self' href='https://git.kagamino.dev/multilayer-perceptron/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.kagamino.dev/multilayer-perceptron/'/>
<updated>2026-08-27T10:10:55Z</updated>
<entry>
<title>Migrate to uv and Python 3.14 and add MNIST downloader to make the project runnable</title>
<updated>2026-08-27T10:10:55Z</updated>
<author>
<name>Martin Kagamino Lehoux</name>
<email>martin@lehoux.net</email>
</author>
<published>2026-08-27T10:10:55Z</published>
<link rel='alternate' type='text/html' href='https://git.kagamino.dev/multilayer-perceptron/commit/?id=024b0ead1b0839d3591bad3bdd3a6ab6bd20c381'/>
<id>urn:sha1:024b0ead1b0839d3591bad3bdd3a6ab6bd20c381</id>
<content type='text'>
Context / Problem: setup.py + requirements.txt (Python 3.5) no longer install on modern Python, matplotlib missing from deps, main.py save/load broke on numpy 2.x (inhomogeneous array / allow_pickle), and demo required manual mnist.npy/data files.

What: replace setup.py/requirements.txt with pyproject.toml (hatchling, PEP 621, requires-python &gt;=3.10, classifiers 3.10-3.14), add .python-version 3.14 and uv.lock, add MultiLayerPerceptron/download.py (mlp-download) to fetch MNIST from storage.googleapis and generate data/train.npy, data/test.npy, mnist.npy, fix MultiLayerPerceptron/main.py layers class var and pickle handling with minimal changes, ignore .venv and track uv.lock, update README with uv workflow.

QA: verified uv sync --all-groups, uv run mlp-download, uv run python -m MultiLayerPerceptron.main loads and trains, ruff check passes.
</content>
</entry>
</feed>
