Skip to content

Commit 835bac3

Browse files
release: jac-client 0.3.10, jac-scale 0.2.10 (#5378)
## Release ### jac-client - Version: 0.3.9 → 0.3.10 - Bump type: patch ### jac-scale - Version: 0.2.9 → 0.2.10 - Bump type: patch - Updated internal dependency versions in dependent packages - Updated release notes Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 parent af5813b commit 835bac3

File tree

4 files changed

+10
-6
lines changed

4 files changed

+10
-6
lines changed

docs/docs/community/release_notes/jac-client.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,14 @@
22

33
This document provides a summary of new features, improvements, and bug fixes in each version of **Jac-Client**. For details on changes that might require updates to your existing code, please refer to the [Breaking Changes](../breaking-changes.md) page.
44

5-
## jac-client 0.3.10 (Unreleased)
5+
## jac-client 0.3.11 (Unreleased)
6+
7+
## jac-client 0.3.10 (Latest Release)
68

79
- **Dev Mode: API Docs accessible from client URL**: The Vite dev server now proxies `/docs`, `/redoc`, `/openapi.json`, `/admin`, and `/graph` to the API backend, so developers can access all dev tools from the client URL without switching ports.
810
- **Fix: Windows Client Compilation and Page Routing**: Fixed multiple Windows-specific issues preventing client apps from compiling and running. (1) **Path normalization**: Module hub lookups now use cross-platform path comparison, handling Windows case-insensitivity and backslash separators. (2) **JS generation**: The ES pass is now explicitly triggered when generated JavaScript is empty, fixing page files compiling to empty output. (3) **Import paths**: Backslashes are now normalized to forward slashes in generated JavaScript imports, fixing Vite build errors like `"page" is not exported`. These fixes are no-ops on Linux/macOS where paths already work correctly.
911

10-
## jac-client 0.3.9 (Latest Release)
12+
## jac-client 0.3.9
1113

1214
- **Updated Examples to Use Typed Interop Pattern**: The `basic-full-stack`, `full-stack-with-auth`, and `little-x` examples now use the typed object hydration pattern (`__from_wire`/`__to_wire`) for server/client communication.
1315
- **Simplified WebTarget Production Preview**: The `start` command for web targets now uses a simple HTTP file server for production preview instead of instantiating a full API server, reducing dependencies and startup complexity.

docs/docs/community/release_notes/jac-scale.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,16 @@
22

33
This document provides a summary of new features, improvements, and bug fixes in each version of **Jac-Scale**. For details on changes that might require updates to your existing code, please refer to the [Breaking Changes](../breaking-changes.md) page.
44

5-
## jac-scale 0.2.10 (Unreleased)
5+
## jac-scale 0.2.11 (Unreleased)
6+
7+
## jac-scale 0.2.10 (Latest Release)
68

79
- **Dev Mode: API Docs accessible from client URL**: In dev mode (`jac start --dev`), the FastAPI Swagger UI (`/docs`) and OpenAPI spec (`/openapi.json`) are now proxied through the Vite dev server, so you can browse your API docs at the same URL as your app without switching ports.
810
- **Security: FastAPI docs disabled in production**: `/docs`, `/redoc`, and `/openapi.json` are no longer exposed in production. They are only available in dev mode.
911
- **Health check endpoint**: Added `GET /healthz` for liveness checks. Returns `{"status": "ok"}` with no authentication required. Useful for Kubernetes probes and monitoring.
1012
- **Warm Pool TTL**: Added `warm_pool_ttl` config to control warm pod lifetime independently from sandbox `ttl_seconds`. Default `0` means warm pods live indefinitely until claimed, preventing the pool from emptying after the sandbox TTL expires.
1113

12-
## jac-scale 0.2.9 (Latest Release)
14+
## jac-scale 0.2.9
1315

1416
- **Ingress Rate Limiting (DDoS Protection)**: Added configurable NGINX rate limiting to the Kubernetes ingress. Limits sustained requests per second, burst headroom, and concurrent connections per client IP using the leaky bucket algorithm. Returns `429 Too Many Requests` when limits are exceeded. Configurable via `[plugins.scale.kubernetes]` in `jac.toml`: `ingress_limit_rps` (default: 20), `ingress_limit_burst_multiplier` (default: 5), `ingress_limit_connections` (default: 20).
1517
- **Cookie-Based Sticky Sessions (optional)**: Added opt-in session affinity via NGINX cookie (`route`). When enabled, every user is pinned to the same pod regardless of IP changes (mobile, NAT, proxies). Cookie never expires in the browser. On pod failure NGINX automatically re-routes and rewrites the cookie. Enabled by default. Disable via `ingress_session_affinity = false` in `[plugins.scale.kubernetes]`.

jac-client/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "jac-client"
3-
version = "0.3.9"
3+
version = "0.3.10"
44
description = "Build full-stack web applications with Jac - one language for frontend and backend."
55
authors = [{name = "Jason Mars", email = "jason@mars.ninja"}]
66
maintainers = [{name = "Jason Mars", email = "jason@mars.ninja"}]

jac-scale/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "jac-scale"
3-
version = "0.2.9"
3+
version = "0.2.10"
44
description = ""
55
authors = [{ name = "Jason Mars", email = "jason@mars.ninja" }]
66
readme = "README.md"

0 commit comments

Comments
 (0)