Skip to main content

Typing stubs for VapourSynth

Project description

vs-stubs

Typing stubs for VapourSynth

vs-stubs provides Python type stubs for VapourSynth plugins and core functions. This helps editors, IDEs, and static type checkers (e.g. mypy, pyright) understand VapourSynth's API.

Due to the dynamic nature of VapourSynth's plugin system, any newly installed plugins are not automatically reflected in the stubs. When adding plugins, you will need to regenerate stubs to keep the type information accurate and in sync with your environment.

Note that vs-stubs does not include or install any actual VapourSynth plugins. Only their type definitions.


Installation

pip install vsstubs

Usage

You can use vsstubs via the command line or as a Python module.

Command Line

vsstubs

Example:

vsstubs -o output.pyi --template

Python API

from vsstubs import output_stubs

# Example usage
output_stubs(None, "output.pyi", template=True)

CLI Reference

 Usage: vsstubs [OPTIONS] COMMAND [ARGS]...

 vs-stubs command line interface

╭─ Options ─────────────────────────────────────────────────────────────────────╮
│ --template  -T        Export blank template; excludes existing plugins unless │
│                       --load or --add is used.                                │
│ --check     -C        Check for new plugins or new plugin signatures.         │
│ --update    -U        Update the current stubs from the input.                │
│ --help                Show this message and exit.                             │
╰───────────────────────────────────────────────────────────────────────────────╯
╭─ I/O options ─────────────────────────────────────────────────────────────────╮
│ --input   -i,-I      TEXT  Path to the input .pyi file. Use '-' for piping.   │
│ --output  -o,-O      TEXT  Path to write the output .pyi file. '@' to         │
│                            overwrite the input file. '-' for piping.          │
│                            [default: (vapoursynth-stubs/__init__.pyi inside   │
│                            the site-package folder)]                          │
│ --load    -L         PATH  Load plugins from a folder or a single library     │
│                            file.                                              │
╰───────────────────────────────────────────────────────────────────────────────╯
╭─ Informations ────────────────────────────────────────────────────────────────╮
│ --quiet              Suppress message output.                                 │
│ --version  -V        Show version info and exit.                              │
╰───────────────────────────────────────────────────────────────────────────────╯
╭─ Commands ────────────────────────────────────────────────────────────────────╮
│ add      Add or update the specified plugins in the stubs                     │
│ remove   Remove the specified plugins from the stubs                          │
╰───────────────────────────────────────────────────────────────────────────────╯

Examples

  • Simply update the VapourSynth stubs:

    vsstubs
    
  • Generate a template stubs:

    vsstubs -o out.pyi --template
    
  • Add plugin stubs:

    vsstubs -i out.pyi -o @ add resize2
    
  • Remove plugin stubs (On Powershell you will need to escape the @ character):

    vsstubs -i out.pyi -o "@" remove resize2
    

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

vsstubs-1.3.0.tar.gz (32.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vsstubs-1.3.0-py3-none-any.whl (27.9 kB view details)

Uploaded Python 3

File details

Details for the file vsstubs-1.3.0.tar.gz.

File metadata

  • Download URL: vsstubs-1.3.0.tar.gz
  • Upload date:
  • Size: 32.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for vsstubs-1.3.0.tar.gz
Algorithm Hash digest
SHA256 bb5b530173988293dca07b8611dc17753211b22dccbe7fb3f8c5469e8a61c0e1
MD5 ca255befa2651cff72db4cd01f4333a9
BLAKE2b-256 5c02bbc440fd41e4fec442236ca319952dbea960621bec91db7e583603aeb244

See more details on using hashes here.

Provenance

The following attestation bundles were made for vsstubs-1.3.0.tar.gz:

Publisher: pypipublish.yml on Ichunjo/vs-stubs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vsstubs-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: vsstubs-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 27.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for vsstubs-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8909aabc895c9dea6cb60c69592b6ab5e1f0fd8961c219f2dc1e2689156da11c
MD5 970b3e57b1d90388b2caab5627c8e3a5
BLAKE2b-256 2d7bdcba5bf7afa558b5eabd7de2a9930d2bcf9958a520fb91c4180051e4e051

See more details on using hashes here.

Provenance

The following attestation bundles were made for vsstubs-1.3.0-py3-none-any.whl:

Publisher: pypipublish.yml on Ichunjo/vs-stubs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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