Files
dev/third_party/python/README.md

1.1 KiB

Vendored Python packages

This package exposes vendored Python dependencies through stable public Bazel targets. Bazel uses PYTHON_TOOLCHAIN_ROOT to find the monorepo python3 runtime.

Project code depends on targets in //third_party/python. It does not depend on files inside vendored source directories directly.

Use this layout for a vendored package:

third_party/python/
  BUILD.bazel
  <name>/
    LICENSE
    pyproject.toml
    src/

Use the upstream package name for library targets. For command-line tools, add a _bin suffix to the binary target.

Preserve upstream license files and package metadata. Keep repository Bazel files outside upstream source when possible.

Add optional dependencies as separate public targets. Do not bundle optional dependencies into the primary package target.

rpycdec

Ariadne uses rpycdec for archive extraction and debug decompilation. Ariadne uses the game-bundled Ren'Py runtime for AST export.

The vendored source comes from cnfatal/rpycdec at commit 489e9c6b8a48ed7904d7039d7787c36a03c75fe3.

The public targets are:

//third_party/python:rpycdec
//third_party/python:rpycdec_bin