diff --git a/.gitignore b/.gitignore index 298d5df..815e444 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,9 @@ __pycache__ CLAUDE.md **/uv.lock !/uv.lock + +pylock.toml +.venv +.venv-workers +.pytest_cache +.ruff_cache diff --git a/01-hello/package.json b/01-hello/package.json index 8c9daf7..c918121 100644 --- a/01-hello/package.json +++ b/01-hello/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.46.0" + "wrangler": "^4.114.0" } } diff --git a/02-binding/package.json b/02-binding/package.json index 62c0f5d..7abe9ff 100644 --- a/02-binding/package.json +++ b/02-binding/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.46.0" + "wrangler": "^4.114.0" } } diff --git a/03-fastapi/package.json b/03-fastapi/package.json index faae1ce..cbbd22e 100644 --- a/03-fastapi/package.json +++ b/03-fastapi/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.46.0" + "wrangler": "^4.114.0" } } diff --git a/04-query-d1/package.json b/04-query-d1/package.json index 43462e9..50c650e 100644 --- a/04-query-d1/package.json +++ b/04-query-d1/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.46.0" + "wrangler": "^4.114.0" } } diff --git a/05-langchain/package.json b/05-langchain/package.json index 3182f66..e71bfe1 100644 --- a/05-langchain/package.json +++ b/05-langchain/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.46.0" + "wrangler": "^4.114.0" } } diff --git a/06-assets/package.json b/06-assets/package.json index 8c4052b..cf21055 100644 --- a/06-assets/package.json +++ b/06-assets/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.46.0" + "wrangler": "^4.114.0" } } diff --git a/07-durable-objects/package.json b/07-durable-objects/package.json index f4c3ca5..3662e51 100644 --- a/07-durable-objects/package.json +++ b/07-durable-objects/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.46.0" + "wrangler": "^4.114.0" } } diff --git a/08-cron/package.json b/08-cron/package.json index a137993..26432e6 100644 --- a/08-cron/package.json +++ b/08-cron/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.46.0" + "wrangler": "^4.114.0" } } diff --git a/09-workers-ai/package.json b/09-workers-ai/package.json index 70c9bfd..24365e8 100644 --- a/09-workers-ai/package.json +++ b/09-workers-ai/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.46.0" + "wrangler": "^4.114.0" } } diff --git a/10-workflows/package.json b/10-workflows/package.json index fe3a4ac..eaae2bc 100644 --- a/10-workflows/package.json +++ b/10-workflows/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.46.0" + "wrangler": "^4.114.0" } } diff --git a/11-opengraph/package.json b/11-opengraph/package.json index b77afec..02e0678 100644 --- a/11-opengraph/package.json +++ b/11-opengraph/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.46.0" + "wrangler": "^4.114.0" } } diff --git a/12-image-gen/package.json b/12-image-gen/package.json index 26070a9..7278254 100644 --- a/12-image-gen/package.json +++ b/12-image-gen/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.46.0" + "wrangler": "^4.114.0" } } diff --git a/13-js-api-pygments/py/package.json b/13-js-api-pygments/py/package.json index b17fdd2..bb0c671 100644 --- a/13-js-api-pygments/py/package.json +++ b/13-js-api-pygments/py/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.110.0" + "wrangler": "^4.114.0" } } diff --git a/14-websocket-stream-consumer/package.json b/14-websocket-stream-consumer/package.json index 603d1f1..b58765c 100644 --- a/14-websocket-stream-consumer/package.json +++ b/14-websocket-stream-consumer/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.46.0" + "wrangler": "^4.114.0" } } diff --git a/15-chatroom/package.json b/15-chatroom/package.json index 538c0d7..97ae873 100644 --- a/15-chatroom/package.json +++ b/15-chatroom/package.json @@ -1,5 +1,5 @@ { - "name": "python-websocket-stream-consumer", + "name": "python-chatroom", "version": "0.0.0", "private": true, "scripts": { @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.50.0" + "wrangler": "^4.114.0" } } diff --git a/16-sync-http-clients/package.json b/16-sync-http-clients/package.json index 2579e77..d24a30f 100644 --- a/16-sync-http-clients/package.json +++ b/16-sync-http-clients/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.46.0" + "wrangler": "^4.114.0" } } diff --git a/17-dynamic-py-py/package.json b/17-dynamic-py-py/package.json index d61093f..d0f793e 100644 --- a/17-dynamic-py-py/package.json +++ b/17-dynamic-py-py/package.json @@ -8,6 +8,6 @@ "start": "uv run pywrangler dev" }, "devDependencies": { - "wrangler": "^4.84.1" + "wrangler": "^4.114.0" } } diff --git a/README.md b/README.md index 8f160e0..6e2a89e 100644 --- a/README.md +++ b/README.md @@ -31,6 +31,7 @@ Need to deploy your Worker to Cloudflare? Python Workers are in open beta and ha - [**`14-websocket-stream-consumer/`**](14-websocket-stream-consumer) — shows how to use [WebSocket](https://developers.cloudflare.com/workers/runtime-apis/websockets/) to consume a stream of data with Python Workers. - [**`15-chatroom/`**](15-chatroom) - A real-time chatroom using WebSocket. - [**`16-sync-http-clients/`**](16-sync-http-clients) — demonstrates outbound HTTP with synchronous Python clients (`requests`, `urllib3`, and `httpx.Client`). +- [**`17-dynamic-py-py/`**](17-dynamic-py-py) — shows how to load and run a Python Worker dynamically at runtime using a [Worker Loader](https://developers.cloudflare.com/workers/runtime-apis/bindings/worker-loader/) binding. diff --git a/pyproject.toml b/pyproject.toml index 77887f9..171d7cb 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "python-workers-examples" version = "0.1.0" -description = "Add your description here" +description = "A collection of examples for writing Cloudflare Workers in Python" readme = "README.md" requires-python = ">=3.12" dependencies = []