nasa / nasa/cFS-GroundSystem

Have auto-generated .py files be created during make

Open
#102 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Python
Stars
102
Forks
78
PR merge metrics
No merged PRs in 30d

Description

Is your feature request related to a problem? Please describe.
The auto-generated .py files that are created by pyuic5 in order to interface between pyqt5 and the UI are unnecessarily caught in various checks (e.g. lgtm) and git commits. As these are auto-generated, checking them is unnecessary and adds extra complexity to our CM process

Describe the solution you'd like
Keep the .ui files only and use pyuic5 to regenerate the equivalent .py files during the cFS build process.

Additional context
Some end users may not want to use this app, so forcing them to install pyqt5 and related tools is not ideal. Therefore, this should only be done if pyuic5 is actually installed on a user's system and skipped otherwise, with the understanding that the app will be unusable unless built properly.

Requester Info
Leor Bleier, NASA GSFC\Code 582

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the cFS build process and the existing .ui and auto-generated .py files. Check how pyuic5 is currently used, then define the build behavior so generation occurs only when pyuic5 is installed and the application remains otherwise unbuilt; verify that generated files no longer need to be committed.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system, desktop
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.