web-cortex-framework 0.3.0__tar.gz → 0.3.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/Cargo.lock +6 -6
  2. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/Cargo.toml +1 -1
  3. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/PKG-INFO +23 -18
  4. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/README.md +22 -17
  5. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/pyproject.toml +1 -1
  6. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/python/webcortex/__init__.py +1 -1
  7. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/LICENSE +0 -0
  8. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/Cargo.toml +0 -0
  9. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/agent/provider.rs +0 -0
  10. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/agent.rs +0 -0
  11. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/app.rs +0 -0
  12. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/audit.rs +0 -0
  13. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/auth.rs +0 -0
  14. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/bridge.rs +0 -0
  15. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/db.rs +0 -0
  16. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/files.rs +0 -0
  17. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/http.rs +0 -0
  18. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/lib.rs +0 -0
  19. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/manifest.rs +0 -0
  20. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/mcp.rs +0 -0
  21. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/middleware.rs +0 -0
  22. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/openapi.rs +0 -0
  23. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/router.rs +0 -0
  24. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/server.rs +0 -0
  25. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/templates.rs +0 -0
  26. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-core/src/typegen.rs +0 -0
  27. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-py/Cargo.toml +0 -0
  28. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-py/src/behaviour.rs +0 -0
  29. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/crates/webcortex-py/src/lib.rs +0 -0
  30. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/python/webcortex/_bridge.py +0 -0
  31. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/python/webcortex/app.py +0 -0
  32. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/python/webcortex/cli.py +0 -0
  33. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/python/webcortex/schema.py +0 -0
  34. {web_cortex_framework-0.3.0 → web_cortex_framework-0.3.2}/python/webcortex/starters.py +0 -0
@@ -465,7 +465,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
465
465
  checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
466
466
  dependencies = [
467
467
  "libc",
468
- "windows-sys 0.61.2",
468
+ "windows-sys 0.52.0",
469
469
  ]
470
470
 
471
471
  [[package]]
@@ -692,9 +692,9 @@ dependencies = [
692
692
 
693
693
  [[package]]
694
694
  name = "h2"
695
- version = "0.4.15"
695
+ version = "0.4.19"
696
696
  source = "registry+https://github.com/rust-lang/crates.io-index"
697
- checksum = "6cb093c84e8bd9b188d4c4a8cb6579fc016968d14c99882163cd3ff402a4f155"
697
+ checksum = "ef8e5e5a340588f4452631496976cf8636d4a7ecf600239fdc27615d2530bc16"
698
698
  dependencies = [
699
699
  "atomic-waker",
700
700
  "bytes",
@@ -1538,7 +1538,7 @@ dependencies = [
1538
1538
  "once_cell",
1539
1539
  "socket2",
1540
1540
  "tracing",
1541
- "windows-sys 0.61.2",
1541
+ "windows-sys 0.52.0",
1542
1542
  ]
1543
1543
 
1544
1544
  [[package]]
@@ -2714,7 +2714,7 @@ dependencies = [
2714
2714
 
2715
2715
  [[package]]
2716
2716
  name = "webcortex-core"
2717
- version = "0.3.0"
2717
+ version = "0.3.2"
2718
2718
  dependencies = [
2719
2719
  "anyhow",
2720
2720
  "async-stream",
@@ -2745,7 +2745,7 @@ dependencies = [
2745
2745
 
2746
2746
  [[package]]
2747
2747
  name = "webcortex-py"
2748
- version = "0.3.0"
2748
+ version = "0.3.2"
2749
2749
  dependencies = [
2750
2750
  "bytes",
2751
2751
  "futures",
@@ -3,7 +3,7 @@ members = ["crates/webcortex-core", "crates/webcortex-py"]
3
3
  resolver = "3"
4
4
 
5
5
  [workspace.package]
6
- version = "0.3.0"
6
+ version = "0.3.2"
7
7
  edition = "2024"
8
8
  license = "Apache-2.0"
9
9
  rust-version = "1.85"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: web-cortex-framework
3
- Version: 0.3.0
3
+ Version: 0.3.2
4
4
  Classifier: Development Status :: 3 - Alpha
5
5
  Classifier: Intended Audience :: Developers
6
6
  Classifier: License :: OSI Approved :: Apache Software License
@@ -29,9 +29,15 @@ Project-URL: Security, https://github.com/slimboi34/web_cortex_framework/blob/ma
29
29
 
30
30
  # WebCortex
31
31
 
32
- > **Status: pre-release.** Not yet published; build from source. Once released it
33
- > installs as **`web-cortex-framework`** and imports as **`webcortex`** — the same
32
+ ```bash
33
+ pip install web-cortex-framework
34
+ ```
35
+
36
+ > Installs as **`web-cortex-framework`**, imports as **`webcortex`** — the same
34
37
  > split as `djangorestframework` → `import rest_framework`.
38
+ >
39
+ > **Python 3.12, 3.13 and 3.14**, including the free-threaded build (`3.14t`),
40
+ > which is the fast path for Python-backed routes.
35
41
 
36
42
  **📖 [Documentation](https://slimboi34.github.io/web_cortex_framework/)** ·
37
43
  [Tutorial](https://slimboi34.github.io/web_cortex_framework/tutorial/) ·
@@ -83,9 +89,8 @@ headers. No second file, no schema written twice, no drift.
83
89
  ## Start here
84
90
 
85
91
  ```bash
86
- # Not yet on PyPIsee Status below. For now, build from source:
87
- git clone https://github.com/slimboi34/web_cortex_framework && cd webcortex
88
- uv venv --python 3.14 && uv pip install maturin && maturin develop --uv
92
+ # 3.13, or the free-threaded 3.14t not GIL-enabled 3.14. See Known issue.
93
+ uv venv --python 3.13 && uv pip install web-cortex-framework
89
94
 
90
95
  webcortex new myapp # --template api | fullstack | agent | behaviour
91
96
  cd myapp
@@ -336,25 +341,25 @@ Not yet: Postgres, SSE streaming, durable agent runs, local model supervision.
336
341
  See [DESIGN.md](DESIGN.md) for the roadmap, honest risk grading, and — just as
337
342
  importantly — what is deliberately **not** being built.
338
343
 
339
- ## Known issue: CPython 3.14.7 with the GIL enabled
344
+ ## Resolved: the CPython 3.14 import failure
340
345
 
341
- On CPython **3.14.7 specifically, with the GIL enabled**, the compiled extension
342
- fails to import:
346
+ **0.3.1 and earlier fail to import on CPython 3.14.7.** Fixed in 0.3.2; upgrade
347
+ if you are on 3.14.
343
348
 
344
349
  ```
345
350
  ValueError: module functions cannot set METH_CLASS or METH_STATIC
346
351
  ```
347
352
 
348
- 3.12, 3.13, 3.14.6 and the **free-threaded** 3.14.7 build (`3.14t`) are all
349
- unaffected. 3.14.7 was released on 5 August 2026; the failure began the same day.
350
-
351
- This is not a version-resolution accident on your machine `uv` resolves `3.14`
352
- to the newest patch build available when it runs, so an environment that worked
353
- yesterday can stop working today without anything in your project changing. Pin
354
- to 3.13, or use the free-threaded 3.14 build, until this is resolved.
353
+ The cause was pyo3 0.29.1, fixed in 0.29.2. The reason it took a day to find is
354
+ worth recording, because it is a trap any Rust-backed Python project can fall
355
+ into: `Cargo.toml` was updated to require 0.29.2 while `Cargo.lock` still pinned
356
+ 0.29.1. Cargo resolves the newer version at build time, so builds were correct
357
+ but `Swatinem/rust-cache` keys its cache off `Cargo.lock`, which had not changed,
358
+ so CI kept restoring objects compiled against the broken version. The fix looked
359
+ falsified when it had simply never been built.
355
360
 
356
- The investigation so far, including what has been ruled out, is in
357
- [AGENTS.md §11](AGENTS.md#11-known-issue-cpython-3147-with-the-gil-enabled).
361
+ If you hit something similar: build once with a cold cache before concluding a
362
+ dependency fix did not work.
358
363
 
359
364
  ## For AI coding tools
360
365
 
@@ -1,8 +1,14 @@
1
1
  # WebCortex
2
2
 
3
- > **Status: pre-release.** Not yet published; build from source. Once released it
4
- > installs as **`web-cortex-framework`** and imports as **`webcortex`** — the same
3
+ ```bash
4
+ pip install web-cortex-framework
5
+ ```
6
+
7
+ > Installs as **`web-cortex-framework`**, imports as **`webcortex`** — the same
5
8
  > split as `djangorestframework` → `import rest_framework`.
9
+ >
10
+ > **Python 3.12, 3.13 and 3.14**, including the free-threaded build (`3.14t`),
11
+ > which is the fast path for Python-backed routes.
6
12
 
7
13
  **📖 [Documentation](https://slimboi34.github.io/web_cortex_framework/)** ·
8
14
  [Tutorial](https://slimboi34.github.io/web_cortex_framework/tutorial/) ·
@@ -54,9 +60,8 @@ headers. No second file, no schema written twice, no drift.
54
60
  ## Start here
55
61
 
56
62
  ```bash
57
- # Not yet on PyPIsee Status below. For now, build from source:
58
- git clone https://github.com/slimboi34/web_cortex_framework && cd webcortex
59
- uv venv --python 3.14 && uv pip install maturin && maturin develop --uv
63
+ # 3.13, or the free-threaded 3.14t not GIL-enabled 3.14. See Known issue.
64
+ uv venv --python 3.13 && uv pip install web-cortex-framework
60
65
 
61
66
  webcortex new myapp # --template api | fullstack | agent | behaviour
62
67
  cd myapp
@@ -307,25 +312,25 @@ Not yet: Postgres, SSE streaming, durable agent runs, local model supervision.
307
312
  See [DESIGN.md](DESIGN.md) for the roadmap, honest risk grading, and — just as
308
313
  importantly — what is deliberately **not** being built.
309
314
 
310
- ## Known issue: CPython 3.14.7 with the GIL enabled
315
+ ## Resolved: the CPython 3.14 import failure
311
316
 
312
- On CPython **3.14.7 specifically, with the GIL enabled**, the compiled extension
313
- fails to import:
317
+ **0.3.1 and earlier fail to import on CPython 3.14.7.** Fixed in 0.3.2; upgrade
318
+ if you are on 3.14.
314
319
 
315
320
  ```
316
321
  ValueError: module functions cannot set METH_CLASS or METH_STATIC
317
322
  ```
318
323
 
319
- 3.12, 3.13, 3.14.6 and the **free-threaded** 3.14.7 build (`3.14t`) are all
320
- unaffected. 3.14.7 was released on 5 August 2026; the failure began the same day.
321
-
322
- This is not a version-resolution accident on your machine `uv` resolves `3.14`
323
- to the newest patch build available when it runs, so an environment that worked
324
- yesterday can stop working today without anything in your project changing. Pin
325
- to 3.13, or use the free-threaded 3.14 build, until this is resolved.
324
+ The cause was pyo3 0.29.1, fixed in 0.29.2. The reason it took a day to find is
325
+ worth recording, because it is a trap any Rust-backed Python project can fall
326
+ into: `Cargo.toml` was updated to require 0.29.2 while `Cargo.lock` still pinned
327
+ 0.29.1. Cargo resolves the newer version at build time, so builds were correct
328
+ but `Swatinem/rust-cache` keys its cache off `Cargo.lock`, which had not changed,
329
+ so CI kept restoring objects compiled against the broken version. The fix looked
330
+ falsified when it had simply never been built.
326
331
 
327
- The investigation so far, including what has been ruled out, is in
328
- [AGENTS.md §11](AGENTS.md#11-known-issue-cpython-3147-with-the-gil-enabled).
332
+ If you hit something similar: build once with a cold cache before concluding a
333
+ dependency fix did not work.
329
334
 
330
335
  ## For AI coding tools
331
336
 
@@ -7,7 +7,7 @@ build-backend = "maturin"
7
7
  # Both are available on PyPI — the split is for ergonomics, not necessity, the
8
8
  # same way djangorestframework imports as `rest_framework`.
9
9
  name = "web-cortex-framework"
10
- version = "0.3.0"
10
+ version = "0.3.2"
11
11
  description = "A Rust-cored Python web framework where every route is also an agent tool."
12
12
  readme = "README.md"
13
13
  requires-python = ">=3.12"
@@ -17,7 +17,7 @@ server exposing six tools — from nine lines.
17
17
  from ._bridge import HTTPError, Request, Response, free_threaded
18
18
  from .app import WebCortex, Resource
19
19
 
20
- __version__ = "0.3.0"
20
+ __version__ = "0.3.2"
21
21
 
22
22
  __all__ = [
23
23
  "WebCortex",