@@ -409,11 +409,17 @@ The easiest way to get a debug build of CPython for WASI is to use the
409409``Tools/wasm/wasi.py build `` command (which should be run w/ a recent version of
410410Python you have installed on your machine):
411411
412- .. code-block :: shell
412+ .. tab :: CPython 3.14 and newer
413+
414+ .. code-block :: shell
415+
416+ python3 Tools/wasm/wasi build --quiet -- --config-cache --with-pydebug
413417
414- $ python3 Tools/wasm/wasi build --quiet -- --config-cache --with-pydebug
418+ .. tab :: CPython 3.13
415419
416- For Python 3.14 and earlier, use ``Tools/wasm/wasi.py `` instead.
420+ .. code-block :: shell
421+
422+ python3 Tools/wasm/wasi.py build --quiet -- --config-cache --with-pydebug
417423
418424 That single command will configure and build both the build Python and the
419425WASI build in ``cross-build/build `` and ``cross-build/wasm32-wasi ``,
@@ -422,36 +428,48 @@ respectively.
422428You can also do each configuration and build step separately; the command above
423429is a convenience wrapper around the following commands:
424430
425- .. code-block :: shell
426431
427- $ python Tools/wasm/wasi configure-build-python --quiet -- --config-cache --with-pydebug
428- $ python Tools/wasm/wasi make-build-python --quiet
429- $ python Tools/wasm/wasi configure-host --quiet -- --config-cache
430- $ python Tools/wasm/wasi make-host --quiet
432+ .. tab :: CPython 3.14 and newer
433+
434+ .. code-block :: shell
435+
436+ $ python Tools/wasm/wasi configure-build-python --quiet -- --config-cache --with-pydebug
437+ $ python Tools/wasm/wasi make-build-python --quiet
438+ $ python Tools/wasm/wasi configure-host --quiet -- --config-cache
439+ $ python Tools/wasm/wasi make-host --quiet
440+
441+ .. tab :: CPython 3.13
442+
443+ .. code-block :: shell
444+
445+ $ python Tools/wasm/wasi.py configure-build-python --quiet -- --config-cache --with-pydebug
446+ $ python Tools/wasm/wasi.py make-build-python --quiet
447+ $ python Tools/wasm/wasi.py configure-host --quiet -- --config-cache
448+ $ python Tools/wasm/wasi.py make-host --quiet
431449
432450 .. note ::
433451
434452 The ``configure-host `` command infers the use of ``--with-pydebug `` from the
435453 build Python.
436454
437- Running the separate commands after ``wasi.py build `` is useful if you, for example, only want to
438- run the ``make-host `` step after making code changes.
455+ Running the separate commands after ``wasi build `` is useful if you, for example,
456+ only want to run the ``make-host `` step after making code changes.
439457
440458Once everything is complete, there will be a
441- ``cross-build/wasm32-wasi /python.sh `` helper file which you can use to run the
459+ ``cross-build/wasm32-wasip1 /python.sh `` helper file which you can use to run the
442460``python.wasm `` file (see the output from the ``configure-host `` subcommand):
443461
444462.. code-block :: shell
445463
446- $ cross-build/wasm32-wasi /python.sh --version
464+ cross-build/wasm32-wasip1 /python.sh --version
447465
448466 You can also use ``Makefile `` targets and they will work as expected thanks to
449467the ``HOSTRUNNER `` environment variable having been set to a similar value as
450468used in ``python.sh ``:
451469
452470.. code-block :: shell
453471
454- $ make -C cross-build/wasm32-wasi test
472+ make -C cross-build/wasm32-wasip1 test
455473
456474 .. note ::
457475
@@ -1228,13 +1246,18 @@ are available from the
12281246To run the container and launch a Bash shell, run one of the following commands
12291247in a clone of the CPython repository.
12301248
1231- .. code-block :: bash
1249+ .. tab :: Podman
12321250
1233- docker run -it --rm --volume $PWD :/workspace --workdir /workspace ghcr.io/python/devcontainer:latest
1251+ .. code-block :: bash
12341252
1235- .. code-block :: bash
1253+ podman run -it --rm --volume $PWD :/workspace:Z --workdir /workspace ghcr.io/python/devcontainer:latest
1254+
1255+ .. tab :: Docker
1256+
1257+ .. code-block :: bash
1258+
1259+ docker run -it --rm --volume $PWD :/workspace --workdir /workspace ghcr.io/python/devcontainer:latest
12361260
1237- podman run -it --rm --volume $PWD :/workspace:Z --workdir /workspace ghcr.io/python/devcontainer:latest
12381261
12391262 Note that the container has read/write access to the working directory.
12401263You may want to use a separate clone of CPython, or run ``make clean ``
@@ -1249,11 +1272,17 @@ If you prefer, you can build the container image yourself. In a clone of the
12491272`cpython-devcontainers repo `_,
12501273build the container and name it ``cpython-dev ``:
12511274
1252- .. code-block :: bash
1275+ .. tab :: Podman
1276+
1277+ .. code-block :: shell
1278+
1279+ podman build devcontainer/ --tag cpython-dev
12531280
1254- docker build devcontainer/ --tag cpython-dev
1281+ .. tab :: Docker
12551282
1256- (Substitute ``podman `` for ``docker `` if you use Podman.)
1283+ .. code-block :: shell
1284+
1285+ docker build devcontainer/ --tag cpython-dev
12571286
12581287 The same command will update any existing ``cpython-dev `` container.
12591288Run it again from time to time -- especially if the container stops
@@ -1262,13 +1291,18 @@ working for you.
12621291To run the container and launch a Bash shell, run one of the following commands
12631292in a clone of the CPython repository.
12641293
1265- .. code-block :: bash
1294+ .. tab :: Podman
1295+
1296+ .. code-block :: shell
1297+
1298+ podman run -it --rm --volume $PWD :/workspace:Z --workdir /workspace cpython-dev bash
1299+
1300+ .. tab :: Docker
12661301
1267- docker run -it --rm --volume $PWD :/workspace --workdir /workspace cpython-dev
1302+ .. code-block :: shell
12681303
1269- .. code-block :: bash
1304+ docker run -it --rm --volume $PWD :/workspace --workdir /workspace cpython-dev bash
12701305
1271- podman run -it --rm --volume $PWD :/workspace:Z --workdir /workspace cpython-dev
12721306
12731307 The same caveats outlined above when running from a container image from GHCR
12741308also apply here.
0 commit comments