Releases: atsuoishimoto/pyappdist
Releases · atsuoishimoto/pyappdist
Release list
0.10.0
0.9.0
- uv projects now export PEP 751 pylock.toml instead of requirements.txt. Per-package index pins in uv.lock (e.g. a PyTorch CUDA index) survive the export — pip fetches the recorded URLs directly.
- MSI builds no longer fail on deep install trees (WiX MAX_PATH limit).
- pipenv extras no longer drop production dependencies.
- The Windows launcher ignores Ctrl+C/Ctrl+Break. Python alone decides how to shut down (finally blocks, atexit hooks, and buffered output are preserved) and its real exit code propagates, as with CPython’s py.exe launcher.
- .pyc files use hash-based invalidation. Timestamp-based .pyc went stale after MSI packaging (CAB timestamps have 2-second granularity), causing recompiles on every cold start; --invalidation-mode checked-hash makes validity independent of timestamps.
- perMachine MSI shortcuts register their keypath under HKLM. It was hardcoded to HKCU, breaking repair and upgrade component-detection for users other than the installing admin.
0.8.0
-
Only the installer is emitted in dist/. The portable .zip (MSI/MSIX) and the .tar.{gz,bz2,xz} (Linux/macOS) are no longer produced — each target now ships just its installer (.msi/.msix/.run). The --no-zip build option is removed.
-
Faster .run payload compression. gzip and xz payloads are now compressed through the external gzip/xz commands when available (xz -T0 uses every core) at presets tuned for build speed, falling back to Python's built-in single-threaded codecs otherwise.
0.7.0
- POSIX launchers are isolated from the host’s PYTHON* environment.
0.6.0
- Windows launchers no longer orphan their python child.
0.5.0
- Non-ASCII launcher and app names on Windows
- More robust MSVC toolchain discovery.
0.4.0
Highlights
- Build intermediates and final artifacts now live in separate trees (breaking). Intermediates go to
.appdist-build/<target>/and shippable packages toappdist/<target>/dist/. New--build-dir/--appdist-diroptions replace the removed--out-dir. A fullbuildwipes the per-target intermediates first for a clean build. - Same-version MSI upgrades. New MSI key
allow-same-version-upgrades(defaultfalse) emitsAllowSameVersionUpgrades="yes"on the WiXMajorUpgrade. MSI-only.
Full Changelog: 0.3.1...0.4.0
0.3.1
0.3.0
- macOS .app / .dmg packages.
- Per-OS launcher icons.
- Per-target extras.
- python -m launcher entry.
0.2.0
- New formats: MSIX, linux, macOS.
- MSI install scope(user / machine).