Skip to content

Releases: atsuoishimoto/pyappdist

0.10.0

Choose a tag to compare

@atsuoishimoto atsuoishimoto released this 25 Jul 04:45
3a545ab
  • New image output format. format = "image" builds no installer:
    the run-in-place image tree is archived as
    <name>-<version>-<target>.zip (Windows targets) or .tar.gz
    (Linux/macOS targets).

0.9.0

Choose a tag to compare

@atsuoishimoto atsuoishimoto released this 14 Jul 08:04
  • 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

Choose a tag to compare

@atsuoishimoto atsuoishimoto released this 04 Jul 04:59
9970da6
  • 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

0.7.0 Pre-release
Pre-release

Choose a tag to compare

@atsuoishimoto atsuoishimoto released this 10 Jun 09:07
  • POSIX launchers are isolated from the host’s PYTHON* environment.

0.6.0

Choose a tag to compare

@atsuoishimoto atsuoishimoto released this 09 Jun 09:09
  • Windows launchers no longer orphan their python child.

0.5.0

0.5.0 Pre-release
Pre-release

Choose a tag to compare

@atsuoishimoto atsuoishimoto released this 08 Jun 15:18
  • Non-ASCII launcher and app names on Windows
  • More robust MSVC toolchain discovery.

0.4.0

0.4.0 Pre-release
Pre-release

Choose a tag to compare

@atsuoishimoto atsuoishimoto released this 07 Jun 04:43

Highlights

  • Build intermediates and final artifacts now live in separate trees (breaking). Intermediates go to .appdist-build/<target>/ and shippable packages to appdist/<target>/dist/. New --build-dir / --appdist-dir options replace the removed --out-dir. A full build wipes the per-target intermediates first for a clean build.
  • Same-version MSI upgrades. New MSI key allow-same-version-upgrades (default false) emits AllowSameVersionUpgrades="yes" on the WiX MajorUpgrade. MSI-only.

Full Changelog: 0.3.1...0.4.0

0.3.1

0.3.1 Pre-release
Pre-release

Choose a tag to compare

@atsuoishimoto atsuoishimoto released this 06 Jun 15:47

Full Changelog: 0.3.0...0.3.1

0.3.0

0.3.0 Pre-release
Pre-release

Choose a tag to compare

@atsuoishimoto atsuoishimoto released this 06 Jun 08:58
  • macOS .app / .dmg packages.
  • Per-OS launcher icons.
  • Per-target extras.
  • python -m launcher entry.

0.2.0

0.2.0 Pre-release
Pre-release

Choose a tag to compare

@atsuoishimoto atsuoishimoto released this 03 Jun 15:01
  • New formats: MSIX, linux, macOS.
  • MSI install scope(user / machine).