void-plugin-hono-jsx 0.1.0-rc.1 → 0.1.0
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.
- package/CHANGELOG.md +8 -0
- package/README.md +16 -16
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.1.0](https://github.com/ts-76/void-plugin-hono-jsx/compare/v0.1.0-rc.1...v0.1.0) (2026-10-18)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Documentation
|
|
7
|
+
|
|
8
|
+
* prepare grouped 0.1.0 normal release ([3d1c3b8](https://github.com/ts-76/void-plugin-hono-jsx/commit/3d1c3b8a323103bcd78ed2716f4d4ecaa5dcf6dd))
|
|
9
|
+
* record RC.1 Workers verification and cleanup ([#109](https://github.com/ts-76/void-plugin-hono-jsx/issues/109)) ([54c0441](https://github.com/ts-76/void-plugin-hono-jsx/commit/54c0441a1d70fee55cad36a41f30f3308048e1f2))
|
|
10
|
+
|
|
3
11
|
## [0.1.0-rc.1](https://github.com/ts-76/void-plugin-hono-jsx/compare/v0.1.0-rc.0...v0.1.0-rc.1) (2026-10-17)
|
|
4
12
|
|
|
5
13
|
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Hono JSX adapter for Void Pages
|
|
2
2
|
|
|
3
|
-
This package integrates Hono JSX with Void Pages. This source
|
|
3
|
+
This package integrates Hono JSX with Void Pages. This source prepares the first normal release, 0.1.0. RC.1 is published and verified; 0.1.0 is not public yet. Published alpha.4 has a different compatibility contract. Prereleases use `next`; normal releases move to `latest` after public verification. As checked on 2026-10-18, `next` selects RC.1 and `latest` still selects the historical alpha.1; use RC.1 explicitly or `@next` until normal-release verification and tag promotion. The package is [MIT licensed](LICENSE) and is not an official Void adapter.
|
|
4
4
|
|
|
5
5
|
## Supported versions
|
|
6
6
|
|
|
@@ -13,18 +13,18 @@ This package integrates Hono JSX with Void Pages. This source documents the upco
|
|
|
13
13
|
| Vite Plus | Host Vite must satisfy the Vite range | 1.3.0 |
|
|
14
14
|
| TypeScript | Project tooling | 7.0.2 |
|
|
15
15
|
|
|
16
|
-
The
|
|
16
|
+
The published RC.1 and normal-release preparation target Void 1.1 and Node 24 only. Published alpha.4 retains its earlier Void 0.x contract; it does not provide this support change or multipart transport. Old Void/launcher manifests remain historical comparison records, not release-selectable configurations. The two supported Hono-only consumers use Void 1.1.11 with plain Vite 8.3.4 or aligned Vite Plus 1.3.0 (host Vite 8.3.4). Ranges admit stable updates, but only locked fixtures are observed test results. New upstream releases require refreshed fixtures, full checks and audit review; prereleases and other Void minors are excluded.
|
|
17
17
|
|
|
18
|
-
Alpha.4 introduced the expanded Link/Form APIs, island forms and graphs, deferred contracts, page options and optional Markdown.
|
|
18
|
+
Alpha.4 introduced the expanded Link/Form APIs, island forms and graphs, deferred contracts, page options and optional Markdown. RC.1 includes the Void 1.1 contract, multipart transport, navigation fallback and deferredResult/use/Suspense support. Use the published RC.1 while 0.1.0 is being prepared; do not combine these instructions with alpha.4.
|
|
19
19
|
|
|
20
20
|
## Install
|
|
21
21
|
|
|
22
22
|
Use Node 24.21.0 or newer within Node 24:
|
|
23
23
|
|
|
24
|
-
The commands below
|
|
24
|
+
The commands below install the publicly available RC.1. Published alpha.4 does not accept Void 1.1. Local tarballs remain available for source verification. Use Node >=24.21.0 <25.0.0.
|
|
25
25
|
|
|
26
26
|
```sh
|
|
27
|
-
npm install void-plugin-hono-jsx@0.1.0-rc.
|
|
27
|
+
npm install void-plugin-hono-jsx@0.1.0-rc.1 hono@4.13.13
|
|
28
28
|
npm install --save-dev void@1.1.11 vite@8.3.4 typescript@7.0.2
|
|
29
29
|
```
|
|
30
30
|
|
|
@@ -37,7 +37,7 @@ npm install --save-dev void@1.1.11 vite@8.3.4 typescript@7.0.2
|
|
|
37
37
|
|
|
38
38
|
## Configure
|
|
39
39
|
|
|
40
|
-
`voidHonoJsx()` and `HonoJsxOptions` replace the earlier `voidHonoPages()` and `HonoPagesOptions` names. This is a breaking alpha API change; the old names are not exported. Alpha.3 uses the earlier names.
|
|
40
|
+
`voidHonoJsx()` and `HonoJsxOptions` replace the earlier `voidHonoPages()` and `HonoPagesOptions` names. This is a breaking alpha API change; the old names are not exported. Alpha.3 uses the earlier names; RC.1 exports the new names shown below.
|
|
41
41
|
|
|
42
42
|
```ts
|
|
43
43
|
// vite.config.ts
|
|
@@ -110,7 +110,7 @@ The adapter snapshots FormData at submission and leaves `Content-Type` unset so
|
|
|
110
110
|
|
|
111
111
|
Full Pages multipart uses a dedicated same-origin mutation request followed by **one explicit GET** through Void's public router on success. Void's public engine cannot consume a raw multipart body or an externally fetched page shell. The GET commits through normal Hono rendering, history, layout/head, navigation state and cancellation checks while preserving component state. It also reruns loaders and may re-evaluate deferred data; the resolved-deferred retention contract for JSON mutations does not apply to multipart. The destination must support a GET. Island multipart retains its existing success behavior: reload or redirect the document.
|
|
112
112
|
|
|
113
|
-
This API is
|
|
113
|
+
This API is included in RC.1 and is not in published alpha.4. It does not add a multipart-capable public transport hook to Void or change the one-shot `action()` helper's body contract.
|
|
114
114
|
|
|
115
115
|
## Static output and prerendering
|
|
116
116
|
|
|
@@ -171,7 +171,7 @@ The `load`, `visible`, `idle` and `media:(query)` policies use Void's shared sch
|
|
|
171
171
|
|
|
172
172
|
## Optional Markdown
|
|
173
173
|
|
|
174
|
-
For this source and its Void 1.1 baseline, use the RC
|
|
174
|
+
For this source and its Void 1.1 baseline, use the published RC.1 or a local tarball. Published alpha.4 has the Markdown exports but retains its earlier Void 0.x contract; alpha.3 predates this API. Add parser peers explicitly only when using Markdown:
|
|
175
175
|
|
|
176
176
|
```sh
|
|
177
177
|
npm install markdown-exit@1.3.0 yaml@2.9.1
|
|
@@ -192,7 +192,7 @@ Create `.md` files in the Pages directory. Standard Markdown, tables, authored H
|
|
|
192
192
|
|
|
193
193
|
Markdown routes use document navigation, and static-only pages emit no executable script. Interactive/script pages reload on development edits; zero-script pages need a normal refresh. Raw HTML is preserved for repository-authored content, without sanitization for untrusted input. Markdown layout files, JSX-expression/tag-child island props, Shiki themes, footnotes, custom containers and a page-catalog virtual module are unsupported. Do not also configure `@void/md/plugin`. Ordinary Pages users do not need these parser peers. See the repository's [Markdown guide](https://github.com/ts-76/void-plugin-hono-jsx/blob/main/docs/markdown.md) for page examples, metadata scoping and the complete contract.
|
|
194
194
|
|
|
195
|
-
##
|
|
195
|
+
## Compatibility and rendering limits
|
|
196
196
|
|
|
197
197
|
The virtual renderer/client entries follow version-specific conventions observed in Void's official adapter rather than a documented third-party registration API. Browser mounting redraws the SSR page; DOM reuse is not guaranteed. Local ISR uses Void's native direct-worker KV/Cache API runtime; managed edge behavior remains unverified. Unsupported modes fail clearly. Package publication and repository visibility are separate maintainer decisions.
|
|
198
198
|
|
|
@@ -230,14 +230,14 @@ The fixture binds local `ISR_CACHE` storage for Void production preview. Real de
|
|
|
230
230
|
|
|
231
231
|
## Known local development limitation
|
|
232
232
|
|
|
233
|
-
On the tested macOS Void/Miniflare development runtime, a POST to an undefined named action can reset the next request on a reused connection. Declared-action browser behavior is verified; this transport edge case remains unresolved upstream. Managed runtime behavior for the edge case is unverified.
|
|
233
|
+
On the tested macOS Void/Miniflare development runtime, a POST to an undefined named action can reset the next request on a reused connection. Declared-action browser behavior is verified; this transport edge case remains unresolved upstream. Managed runtime behavior for the edge case is unverified. On the RC.1 D1 fixture, an oversized-body rejection followed by another pooled request also failed locally; consuming the response body did not prevent it. Local negative checks isolate connections as a test workaround, not a repair. On 2026-10-18, direct Cloudflare HTTPS with RC.1 passed rejection/undefined-action requests followed by healthy GETs through the normal pool, without retries or Connection: close. That does not prove every environment or a forced single TCP socket. The [dated Workers record](https://github.com/ts-76/void-plugin-hono-jsx/blob/main/docs/cloudflare-rc1-verification.md) and [limitations ledger](https://github.com/ts-76/void-plugin-hono-jsx/blob/main/docs/known-limitations.md) separate observed behavior from remaining upstream diagnosis.
|
|
234
234
|
|
|
235
235
|
## RC and normal-release policy
|
|
236
236
|
|
|
237
|
-
|
|
237
|
+
RC.1 public bytes/signatures/provenance and registry consumers have been verified. Its direct Workers/D1 migration, redeployment and cleanup exercise is complete. The next target is 0.1.0 with a normal GitHub Release; that version still requires its own final candidate CI/audits, stage, owner approval and public verification before latest/next promotion. Production ISR remains outside the initial guarantee. Patches in 0.1.x preserve documented APIs; breaking changes move to 0.2.0 or later. Read the [release contract](https://github.com/ts-76/void-plugin-hono-jsx/blob/main/docs/release-contract.md) and [security policy](https://github.com/ts-76/void-plugin-hono-jsx/blob/main/SECURITY.md). Report vulnerabilities [privately](https://github.com/ts-76/void-plugin-hono-jsx/security/advisories/new).
|
|
238
238
|
|
|
239
239
|
|
|
240
|
-
### Common navigation fallback (
|
|
240
|
+
### Common navigation fallback (included in RC.1)
|
|
241
241
|
|
|
242
242
|
Register a default-exported local TSX/JSX module by path. The plugin imports the
|
|
243
243
|
component into its client entry; it does not serialize a function in Vite config.
|
|
@@ -265,10 +265,10 @@ JSON/multipart submission UI remains under
|
|
|
265
265
|
`useNavigation()`/form pending state. SSR stays idle and emits no fallback.
|
|
266
266
|
Without this option, existing behavior is unchanged. The normal page reset and
|
|
267
267
|
preserveState/preserveScroll rules still apply when the destination commits.
|
|
268
|
-
This addition
|
|
268
|
+
This addition shipped in RC.1; RC.0 does not include it.
|
|
269
269
|
|
|
270
270
|
|
|
271
|
-
### Hono use() / Suspense for deferred props (
|
|
271
|
+
### Hono use() / Suspense for deferred props (included in RC.1)
|
|
272
272
|
|
|
273
273
|
`deferredResult(state)` gives Hono a stable, render-only Promise. Void still runs
|
|
274
274
|
the resolver, delivers HTML callbacks/NDJSON and manages prefetch/navigation.
|
|
@@ -313,4 +313,4 @@ the later result to the browser. The adapter does not send Hono replacement HTML
|
|
|
313
313
|
or wait for deferred data in its server renderer. Only full Pages are supported;
|
|
314
314
|
deferred islands/static remain unsupported. Upstream failed-prefetch null values
|
|
315
315
|
remain null (the success value type includes null); this helper does not repair
|
|
316
|
-
that upstream limitation. This API
|
|
316
|
+
that upstream limitation. This API shipped in RC.1; RC.0 does not include it.
|