Skip to content

Latest commit

 

History

History
64 lines (49 loc) · 2.85 KB

File metadata and controls

64 lines (49 loc) · 2.85 KB

ProgramVer — Documentation

!!! warning "Pre-2.0 layout" This page describes the pre-2.0 flat main.py layout. As of 2.0.0 the library is the programver package (VersionDialog, programver/dialog.py) and main.py is a demo, not the module itself — see Known Issues for what changed and the README for current usage. This page is pending a rewrite for 2.0.

A winver-style copyright and version window for your own Python programs: a logo, a version line, a trademark notice, a licence blurb, and buttons that open the full licence and EULA.

ProgramVer/
├── main.py          get_resource_path, openLicense, openEULA, ProgramVer
├── imgs/            the window's images
├── tests/test_main.py
└── docs/            this documentation

Pages

It does not run as shipped

Three files the code needs are absent from the repository:

Wanted by File Present
ProgramVer() imgs/dfdlogo.gif No
openLicense() LICENSE.txt No — the repo has LICENSE.md
openEULA() EULA.txt No

The first stops the window opening at all. MANIFEST.in lists imgs/dfdlogo.gif for packaging, so it is expected to exist and does not.

CI is green throughout, because the test suite mocks file access and every Tk widget. See internal/known-issues.md.

What it is for

Microsoft's winver shows a small window with the product name, version, and licensing notice. ProgramVer is the same idea for a Python program: a function you call from an About menu that presents the same information, with the licence text one click away.

The design assumption is that you edit it. Program name, version, trademark line, licence blurb, and the two document filenames are all literals in main.py, each with a # change as needed comment. That is the intended workflow — see Configuration.

Standard library only

Tkinter and nothing else. Dropping main.py into a project adds no dependencies, which is the point of a component meant to be copied rather than depended on.