build(python): vendor rpycdec
This commit is contained in:
42
third_party/python/README.md
vendored
Normal file
42
third_party/python/README.md
vendored
Normal file
@@ -0,0 +1,42 @@
|
||||
# Vendored Python packages
|
||||
|
||||
This package exposes vendored Python dependencies through stable public Bazel targets.
|
||||
Bazel runs Python targets with the local `python3` runtime.
|
||||
|
||||
Project code depends on aliases in `//third_party/python`.
|
||||
It does not depend on versioned package directories directly.
|
||||
|
||||
Use this layout for a vendored package:
|
||||
|
||||
```text
|
||||
third_party/python/
|
||||
BUILD.bazel
|
||||
<name>-<version>/
|
||||
BUILD.bazel
|
||||
LICENSE
|
||||
pyproject.toml
|
||||
src/
|
||||
```
|
||||
|
||||
Use the upstream package name for public aliases.
|
||||
For command-line tools, add a `_bin` suffix to the binary target.
|
||||
|
||||
Preserve upstream license files and package metadata.
|
||||
Keep local Bazel files separate from 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 intended public targets are:
|
||||
|
||||
```text
|
||||
//third_party/python:rpycdec
|
||||
//third_party/python:rpycdec_bin
|
||||
```
|
||||
Reference in New Issue
Block a user