Skip to main content

VersionInfo helper script for PyInstaller

Project description

VersionInfo helper script for PyInstaller

This repository contains helper scripts to dynamically create VersionInfo objects that can be embedded in .exe files created by PyInstaller.

📚 Build and publish documentation Documentation on Github Pages
🔄 Integration Testing 🧪 Unittests with Coverage Coverage Status
🔍 Typecheck: Mypy 🧠 Typecheck: Pyright 🦋 Typecheck: Pyrefly
🧹 Linters 🚦 Noxfile Self Check
📦 Publish Python Package PyPI - Version PyPI - Python Version

Motivation

This project was created because existing solutions to embed version information inside executables relied on creating artifact files that get read (and eval-ed) by PyInstaller during the build process.
Dynamically creating such files essentially boiled down to inserting data in a string template, with no guides to the user if their entered data is valid or not.
A bit of exploration of PyInstaller's source code and official Microsoft documentation revealed that it should be possible to provide PyInstaller with necessary data straight from .spec files without file-read-and-eval step.
This approach has the added bonus of being type hint compatible, offering rich auto-complete in supported IDEs.

Installation

Wheels are available on PyPI, install with:

pip install versioninfo_helper

Usage

See example_simple.onefile.spec and example_dynamic.onefile.spec for examples on how to integrate VersionInfo creation directly into PyInstaller .spec files.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

versioninfo_helper-1.0.0.2.tar.gz (68.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

versioninfo_helper-1.0.0.2-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file versioninfo_helper-1.0.0.2.tar.gz.

File metadata

  • Download URL: versioninfo_helper-1.0.0.2.tar.gz
  • Upload date:
  • Size: 68.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for versioninfo_helper-1.0.0.2.tar.gz
Algorithm Hash digest
SHA256 b9e15eaef48696f1b78c0a942cc7cb446c496348fde14f0482214300b4b0009f
MD5 db89aca4cf1f6a2efdeb3983a3e9e107
BLAKE2b-256 f14bf24c08938a35a61feccda9154066247b40f51b93dc3bd25420f7182aab57

See more details on using hashes here.

Provenance

The following attestation bundles were made for versioninfo_helper-1.0.0.2.tar.gz:

Publisher: publish.yml on ReggX/versioninfo_helper

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file versioninfo_helper-1.0.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for versioninfo_helper-1.0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1c4aee402c86822fb1aa25584c512547c13f4e8d36b8ca7c68c9559fc174726d
MD5 d03a49e2874026cc13b627e2c60613c1
BLAKE2b-256 a20771ee2598cf4d6e1ad9ecc06b421c4e67e771eab51f6f42a443f62b05a61e

See more details on using hashes here.

Provenance

The following attestation bundles were made for versioninfo_helper-1.0.0.2-py3-none-any.whl:

Publisher: publish.yml on ReggX/versioninfo_helper

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page