Skip to main content

Tooling to analyze or perform actions on Python code in Houdini packages

Project description

PyPI version Tests codecov

The houdini_package_runner project aims to provide an extensible API and set of tools for analyzing and acting upon files in a Houdini package.

The current tools are all geared towards Python compatibility and styling.

Supported file types include:

  • Python files and packages
  • Python code/context sections inside Houdini XML type files
    • Menus (MainMenu*.xml, ParmMenu.xml, etc)
    • Python panels
    • Shelf tools
  • Digital Assets (binary or expanded asset folders)
    • Python code sections (PythonModule, OnCreated, etc)
    • Python code inside DialogScript definition
      • Callbacks
      • Default parameter expressions
      • Menu scripts
    • Included shelf tools

Currently, the runner tools only function outside of Houdini on disk files.

The following read-only tool runners are provided:

  • pylint - Perform pylint analysis on Python code
  • flake8 - Perform flake8 analysis on Python code

The following tool runner which can modify files are provided:

  • black - Perform black formatting on Python code
  • isort - Use isort to sort Python imports
  • modernize - Use python-modernize for support Python 2 to 3 conversion.

NOTES:

  • In order for the above runner tools to work you'll need to have them installed and available via commandline
  • Operations on binary digital asset files (.otl, .hda) requires that Houdini's provided hotl command be available to run.

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

houdini_package_runner-0.4.1.tar.gz (69.7 kB view hashes)

Uploaded Source

Built Distribution

houdini_package_runner-0.4.1-py3-none-any.whl (40.3 kB view hashes)

Uploaded Python 3

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