mirror of
https://github.com/hanzoai/zip-js.git
synced 2026-10-30 18:17:04 +00:00
HIP-0137 "One License" (hanzoai/hips, HIPs/hip-0137-one-license.md) puts BSD-3-Clause out of scope for hanzoai: original Hanzo work takes the standard MIT OR Apache-2.0 dual licence, and only forks keep an upstream licence. LICENSE is now the dual declaration; LICENSE-APACHE and LICENSE-MIT carry the two texts beside it. The existing copyright holder and years are preserved verbatim. package.json and the root entry of package-lock.json follow; dependency entries in the lockfile keep their own licences. NOTICE is unchanged and stays accurate — it credits esbuild, commander and TypeScript as build-time dependencies, none of which is redistributed here or constrains these terms. The v0.1.0 line in HANZO_CHANGES.md records what was true at that release and is left as history; a new entry above it records this change. Co-authored-by: Hanzo Dev <[email protected]>
2.4 KiB
2.4 KiB
HANZO_CHANGES
Tracks Hanzo-internal deltas not visible in CHANGELOG.md (audit
traceability, version pin justifications, brand-policy decisions, etc.).
Unreleased
- Relicensed BSD-3-Clause →
MIT OR Apache-2.0per HIP-0137 (hanzoai/hips,HIPs/hip-0137-one-license.md).LICENSEis now the dual declaration, withLICENSE-APACHE+LICENSE-MITbeside it;package.jsonand the rootpackage-lock.jsonentry follow. The v0.1.0 note below records what was true at that release and is left as-is.NOTICEis unchanged — it credits build-time dependencies (esbuild, commander, TypeScript), which keep their own licences.
v0.1.1
- CI: replace shell-glob test target with explicit file list so the
Node 20 runner (which lacks
--testglob expansion) runs the suite. Pure tooling fix; no behavior change.
v0.1.0 (initial release)
- First public release of
@hanzo/zip. - Source layout:
src/{handler,error,envelope,index}.ts+src/runtime/{goja,javy}.tssrc/build/cli.ts. Mirrorszip-rs(lib + macro + cli) at the file layout level, adapted to TS module conventions.
- Three end-to-end examples (
hello,validate-email,policy-eval) with committed built JS so test harnesses don't depend on the toolchain. - Byte-equivalent JS output to
base/plugins/extbench/fixtures/goja-js/validate.jsverified in V8 (Nodevm). End-to-end verified through the productionbase/plugins/gojavmruntime — all nine invocation cases match the expected wire bytes (goja path normalizes object keys alphabetically per Go'sencoding/json; this is a host property, not a guest bug). - Deps pinned: typescript 5.9.3, esbuild 0.28.0, commander 14.0.3, tsx 4.22.2, @types/node 22.10.5. No major bumps planned; patch-only.
- License: BSD-3-Clause. Upstream credits in
NOTICE. - Built bundle sizes (minified, esbuild):
hello.js— 1553 Bvalidate.js— 1922 Bpolicy_eval.js— 1964 B
- Wasm-target backend (compile JS → wasm) is documented in
src/runtime/javy.tsand the build CLI ships the trailer codegen for it. The end-to-end compile step requires a host-side WASI-stdio shim inbase/plugins/wasmvmthat has not yet landed (tracked inbase/plugins/extbench/fixtures/wazero-javy/TODO.md). Until the shim ships, the wasm-target build is API-complete but not invocable; the goja target is the production path.