blueloveTH пре 1 месец
родитељ
комит
f319fedf7e
1 измењених фајлова са 23 додато и 2 уклоњено
  1. 23 2
      docs/features/deploy.md

+ 23 - 2
docs/features/deploy.md

@@ -8,7 +8,8 @@ order: 81
 The feature requires pocketpy version >= `2.1.7`
 !!!
 
-You can deploy your pocketpy program as bytecode files, which slightly improves the loading speed of your program.
+You can deploy your pocketpy program as `.pyc` files, which are compiled bytecodes with necessary metadata.
+This slightly improves the loading speed of your program.
 
 It also makes your users unable to get your source code directly, unless they do expensive reverse engineering.
 
@@ -29,4 +30,24 @@ It compiles all `.py` files in the specified directory into `.pyc` files.
 
 ```sh
 python compileall.py ./main input_path output_path
-```
+```
+
+## Running `.pyc` files
+
+The command-line executable `main` can run `.pyc` files directly:
+
+```sh
+./main output_file.pyc
+```
+
+If you are using C-APIs, you can use the `py_execo()` function.
+
+```c
+/// Run a compiled code object.
+PK_API bool py_execo(const void* data, int size, const char* filename, py_Ref module) PY_RAISE PY_RETURN;
+```
+
+## Trackback Support
+
+Since `.pyc` files do not contain raw sources,
+trackbacks will show line numbers but not the actual source code lines.