|
| 1 | +# 0.1.0 — 2026-05-29 |
| 2 | + |
| 3 | +This release modernizes the deeplabcut-docker helper. The vendored shell script |
| 4 | +(deeplabcut_docker.sh) has been replaced with a pure-Python implementation, |
| 5 | +and the package setup has been updated to use pyproject.toml. |
| 6 | + |
| 7 | +## Breaking changes / migration |
| 8 | + |
| 9 | +- The package now requires Python ≥ 3.10. |
| 10 | +- `setup.cfg` / `MANIFEST.in` have been replaced by `pyproject.toml`. |
| 11 | + Re-install from the new package to pick up the updated entry point. |
| 12 | + |
| 13 | +## New features |
| 14 | + |
| 15 | +- **Pure-Python rewrite** — replaced the vendored shell script with a single |
| 16 | + `deeplabcut_docker.py` module; no shell dependency required. |
| 17 | +- **`--image` flag** — pass an arbitrary `repo:tag` or digest to override the |
| 18 | + default image selection from `DLC_VERSION` / `CUDA_VERSION`. |
| 19 | +- **Local image support** — skips the registry pull when a matching image is |
| 20 | + already present locally (or when a specific version/image is requested). |
| 21 | +- **Supplementary group forwarding** — all supplementary groups of the current |
| 22 | + host user are forwarded into the container via `--group-add`. |
| 23 | +- **Jupyter image validation** — warns at startup when the pulled image does |
| 24 | + not appear to have a Jupyter entrypoint. |
| 25 | +- **Configurable Docker binary** — override via `DOCKER` environment variable |
| 26 | + (e.g. `DOCKER="sudo docker"`). |
| 27 | +- **Token privacy** — the notebook token is no longer echoed to the terminal by |
| 28 | + default; users are instructed to use the value of `NOTEBOOK_TOKEN` instead. |
| 29 | + |
| 30 | +## Security |
| 31 | + |
| 32 | +- **Empty-token warning** — setting `NOTEBOOK_TOKEN=` (empty string) disables |
| 33 | + Jupyter token authentication. `deeplabcut-docker notebook` now logs a |
| 34 | + prominent warning in this case. |
| 35 | + |
| 36 | +## Bug fixes |
| 37 | + |
| 38 | +- Fixed broken Jupyter image support on the current Docker Hub tags. |
| 39 | +- Fixed default user home directory (`/home/{user}` instead of root). |
| 40 | +- Fixed notebook token not being propagated into the container environment. |
| 41 | +- Improved error logging and exit-status propagation from `docker` subprocesses. |
| 42 | + |
| 43 | +## Infrastructure |
| 44 | + |
| 45 | +- Replaced `setup.cfg` + `MANIFEST.in` with `pyproject.toml`. |
| 46 | +- Added `LICENSE` (LGPL-3.0) and `Makefile` for local build and PyPI release. |
0 commit comments