Template for Python projects using Qt as GUI.
Other files: License file (MIT), Features tracker
- Update
base/info.pywith your project data. - Update badge links in README
- Add
CODECOV_TOKENfrom codecov.io to Repository Action secrets. - Update
.github/workflows/build.ymlif necessary
Gen UI- Python script
$ProjectFileDir$/build_tools/qt_gen_ui_files.py - Add this step as a pre-requisite for all the next steps
- Python script
Run App- Python script
$ProjectFileDir$/main.py
- Python script
Run Tests- Unittests in project root directory, pattern
*_test.py
- Unittests in project root directory, pattern
Build Binary- Python Module
PyInstaller - Arguments:
$ProjectFileDir$/build_tools/pyinstaller/binary.spec
- Python Module
Settings ⇒ Tools ⇒ External Tools
Program: $ProjectFileDir$\.venv\Lib\site-packages\PySide6\designer.exe
Arguments: $FilePath$
Directory: $ProjectFileDir$
Project has two hardcoded version numbers. Updating major version resets minor one to zero.
PROJECT_COMPATIBILITY_VERSION
Increased when changes make new version incompatible with the previous one in any way.PROJECT_FEATURE_PACK_VERSION
Increased with significant changes from the user point of view.
Separately, all builds from GitHub Actions will bake "branch:commit" as part of the version info, to simplify finding the exact build. All local builds will have "local:unknown" stated there.