v1.2.0
Highlights
This release upgrades the Milvus stack to 2.6, automates credential management, and adds end-to-end test coverage.
⚠️ Breaking change for instructors: Milvus 2.6 cannot read 2.3-era volumes. Before starting the upgraded environment, reset the volumes (sample data can simply be re-inserted):cd setup/instructor && docker compose --profile all down -v && ./start-all.sh
Milvus 2.6
- Milvus upgraded from v2.3.3 (EOL) to v2.6.18, following the official standalone compose layout (etcd v3.5.25, MinIO 2024-12-18,
MQ_TYPE: woodpecker) - pymilvus upgraded to 2.6.15; the obsolete
marshmallowpin was removed - All transitive Python dependencies are now pinned to exact versions for reproducible participant installs
Automated credential management
start-all.shnow generates random Milvus root and MinIO passwords on first start, stores them insetup/instructor/.env, waits for Milvus to become healthy, and rotates the root password away from the default (idempotent — safe to rerun)- Participant
.envtemplates use a<password distributed by instructor>placeholder; the scripts refuse to run while any placeholder is unchanged
Delivery guidance
- Remote delivery docs now recommend private networks (Tailscale/VPN) first; ngrok TCP is documented as a fallback with an explicit warning that Milvus gRPC traffic transits the tunnel unencrypted
Demo application
/searchrecovers automatically when the collection was dropped and recreated (no app restart needed after re-inserting data)
Tooling
- New E2E smoke workflow (manual trigger): starts the full instructor environment incl. credential generation, then runs the participant flow (connection test, data insertion, search) end to end
- New release workflow: participant zips are built and attached to every
v*release - CI now runs shellcheck and ruff
- The docs container is built from
mkdocs.Dockerfile(nopip installat startup) check_translation_sync.shno longer leaveschanged_files.txtbehind on local runs- Linux participants: documented the CPU-only torch install (saves several GB)
Upgrade notes for instructors
- Reset volumes and restart:
cd setup/instructor && docker compose --profile all down -v && ./start-all.sh - Note the generated Milvus password printed by
start-all.shand share it with participants - Distribute the regenerated zips (also attached to this release as assets)
Full Changelog: v1.1.0...v1.2.0