Skip to main content

Create a version file from a simple YAML config file

Project description

pyinstaller-versionfile

GitHub PyPI Travis (.com) branch Codecov PyPI - Downloads Code Climate maintainability

Create a windows version-file from a simple YAML file that can be used by PyInstaller.

Background

Pyinstaller provides a way to capture Windows version data through a so called version-file. The process of crafting such a version file, and especially keeping the version number updated, is a bit cumbersome. This package aims to make the creation of such a version file easier.

Usage

pyinstaller-versionfile provides a command line interface to convert a simple YAML file into a version-file suitable to pass to PyInstaller via the --version-file= option.

A complete YAML configuration looks like this:

Version: 1.2.3.4
CompanyName: My Imaginary Company
FileDescription: Simple App
InternalName: Simple App
LegalCopyright: © My Imaginary Company. All rights reserved.
OriginalFilename: SimpleApp.exe
ProductName: Simple App

The encoding must be UTF-8.

To create version-file from this, simple run:

create-version-file metadata.yml --outfile file_version_info.txt

where metadata.yml is the YAML configuration file from above.

Extracting Version Information

As an alternative to specifying the version directly in the YAML file, there are two alternatives which may be more suitable, depending on the use case:

Link to an External File

Instead of writing the version string directly into the YAML file, you can also specify the (relative) path to another file. Note that this file must only contain the version string and nothing else.

Version: VERSION.txt
CompanyName: My Imaginary Company
FileDescription: Simple App
InternalName: Simple App
LegalCopyright: © My Imaginary Company. All rights reserved.
OriginalFilename: SimpleApp.exe
ProductName: Simple App

Setting the Version from the Command Line

It is also possible to set the version directly over the command line using the --version option:

create-version-file metadata.yml --outfile file_version_info.txt --version 0.8.1.5

This can be useful if you want to use a CI build number as the version.

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

pyinstaller_versionfile-1.0.2.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

pyinstaller_versionfile-1.0.2-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file pyinstaller_versionfile-1.0.2.tar.gz.

File metadata

  • Download URL: pyinstaller_versionfile-1.0.2.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.7

File hashes

Hashes for pyinstaller_versionfile-1.0.2.tar.gz
Algorithm Hash digest
SHA256 9306cfa636e15bb7550092f4e07654ccddac0ef6c7e9996f3fee906c45ce2643
MD5 9d5d8a74254d2ea8aa0859a58ef6f96f
BLAKE2b-256 9215cb10a01b58fd89e852e785b5ced3dc0553a66652db84fb17e002683abf22

See more details on using hashes here.

File details

Details for the file pyinstaller_versionfile-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: pyinstaller_versionfile-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.7

File hashes

Hashes for pyinstaller_versionfile-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6fcdbd4382069fc9c5cb1676fe1f648f54d4d2ea7e9e5414a299e1dae8d49743
MD5 4f7b30c1e11bda4395048fc784f1201a
BLAKE2b-256 eb0a1c995f0b153a1595991660996ad7fb984fb3b1878f57da8ae644da953be7

See more details on using hashes here.

Supported by

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