CityGen 0.1.0 (Windows)
CityGen 0.1.0 Release Notes
Released on August 19, 2026.
Highlights
- The project now uses a
src/package layout, which makes packaging and installs cleaner. - CityGen can now be installed and launched with command entry points instead of relying on repo-local execution only.
- Common Minecraft save folders and WorldEdit schematic folders are detected automatically.
- Windows release packaging now has a defined installer flow built around PyInstaller and Inno Setup.
- The isometric renderer now works even when
numbais not installed, while still using CPUnumbaacceleration when available.
What Changed
Packaging and runtime
- Added project metadata and dependencies in
pyproject.toml. - Added
citygenandcitygen-doctorcommand entry points. - Moved application code under
src/. - Added runtime path handling for source, installed, and frozen builds.
- Added a first-run environment doctor for dependency and path checks.
Minecraft path handling
- Replaced machine-specific defaults with discovery for common Minecraft launcher save locations.
- Added WorldEdit schematic-folder discovery with a repo-local fallback.
- Improved extraction failures when the configured world path is missing.
Windows distribution
- Added a Windows installer build script.
- Added PyInstaller hooks for Tcl/Tk so the GUI can start reliably in frozen builds.
- Standardized release output under
dist/release/. - Set
CityGen-setup.exeas the primary release artifact.
Documentation
- Reorganized screenshots and technical docs under
docs/. - Added release process documentation and changelog support.
- Kept
README.mdat repo root and moved the engineering reference todocs/TECHNICAL.md.
Tests
- Added regression coverage for path discovery.
- Added regression coverage for the isometric renderer fallback path.
- Added test bootstrapping for the new
src/layout.
User-visible fixes
- Fixed missing runtime dependency declarations in packaging metadata.
- Replaced Windows-only folder-opening logic with a cross-platform helper.
- Fixed frozen-app startup issues caused by missing
tkinterpackaging.
Upgrade notes
- Direct imports now resolve from
src/, so any local tooling that assumed top-levelconfig/,engine/,gui, orpipelinepaths should be updated. - Technical documentation now lives at
docs/TECHNICAL.md. - Demo images now live under
docs/.
Verification
python -m pytestpython src/config/doctor.py