You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: guests/python/README.md
+28-3Lines changed: 28 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,7 +14,7 @@ just release
14
14
```
15
15
16
16
## Python Version
17
-
We currently bundle [Python 3.14.0].
17
+
We currently bundle [Python 3.14.0], [build for WASI](https://docs.python.org/3/library/intro.html#webassembly-platforms).
18
18
19
19
## Python Standard Library
20
20
In contrast to a normal Python installation there are a few notable public[^public] modules **missing** from the [Python Standard Library]:
@@ -40,7 +40,14 @@ In contrast to a normal Python installation there are a few notable public[^publ
40
40
Some modules low level modules like [`os`](https://docs.python.org/3/library/os.html) may not offer all methods, types, and constants.
41
41
42
42
## Dependencies
43
-
We do not bundle any additional libraries at the moment. It is currently NOT possible to install your own dependencies.
43
+
Currently we bundle the following libraries:
44
+
45
+
-[`certifi`] (not really used though, see ["I/O > HTTP"](#http))
46
+
-[`charset-normalizer`]
47
+
-[`requests`]
48
+
-[`urllib3`]
49
+
50
+
It is currently NOT possible to install your own dependencies.
44
51
45
52
## Methods
46
53
Currently we only support [Scalar UDF]s. One can write it using a simple Python function:
@@ -187,7 +194,18 @@ def compute(x: int) -> int:
187
194
```
188
195
189
196
## I/O
190
-
There is NO I/O available that escapes the sandbox. The [Python Standard Library] is mounted as a read-only filesystem.
197
+
All I/O operations go through the host, there is no direct interaction with the host operating system.
198
+
199
+
### Filesystem
200
+
The [Python Standard Library] is mounted as a read-only filesystem. The host file system (incl. special paths like `/proc`) are NOT exposed to the guest.
201
+
202
+
### HTTP
203
+
Using [`requests`] or [`urllib3`] you can issue HTTP requests to destinations that are allowed by the host. This is done by [WASI HTTP] and the host is in full control of the HTTP connection including TLS encryption.
204
+
205
+
Note though that the network functionality included in the [Python Standard Library] -- e.g. [`urllib`] and [`socket`] -- are NOT supported.
206
+
207
+
### Other
208
+
There is NO other I/O available that escapes the sandbox.
191
209
192
210
193
211
[^public]: Modules not starting with a `_`.
@@ -198,6 +216,8 @@ There is NO I/O available that escapes the sandbox. The [Python Standard Library
0 commit comments