koda-format 1.0.3 → 1.0.5

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 (2) hide show
  1. package/SPEC.md +1 -19
  2. package/package.json +1 -1
package/SPEC.md CHANGED
@@ -18,7 +18,7 @@ KODA (Compact Object Data Architecture) is a structured data format designed for
18
18
 
19
19
  KODA addresses limitations of JSON (verbosity, no comments, non-deterministic key order), YAML (complexity, security issues), and binary formats like MessagePack (non-canonical, key repetition).
20
20
 
21
- **Positioning:** KODA is a **compact binary data format** first. It is optimized for **smaller payloads**, **efficient storage**, **reduced IO**, and **fast binary encode/decode** — not for beating JSON on raw text parsing speed. In real systems, KODA wins on size, IO efficiency, storage, and scalability (see project docs).
21
+ **Positioning:** KODA is a **compact binary data format** first. It is optimized for **smaller payloads**, **efficient storage**, **reduced IO**, and **fast binary encode/decode** — not for beating JSON on raw text parsing speed. In real systems, KODA wins on size, IO efficiency, storage, and scalability (see [README.md](./README.md)).
22
22
 
23
23
  ---
24
24
 
@@ -287,22 +287,4 @@ For `{ "a": 1 "b": 2 }` (keys canonical order `a`, `b`):
287
287
 
288
288
  ---
289
289
 
290
- ## Appendix A: Binary format v2 (proposed, compact storage)
291
-
292
- A future binary format **v2** is designed to minimize size and improve decode performance. It is **not** the current format (v1, §6). Full design: **[BINARY-V2.md](./BINARY-V2.md)**.
293
-
294
- **Summary of v2 layout:**
295
-
296
- | Section | Encoding |
297
- |--------|----------|
298
- | **Header** | 2 B magic (`0x4B 0x44` "KD") + 1 B version (`0x02`) |
299
- | **Dictionary** | varint N + for each key: varint length + UTF-8 bytes (canonical order) |
300
- | **Data** | Single root value. All counts/lengths: **unsigned varint**. Integers: **signed varint (zigzag)** for compact range, or 8 B big-endian escape. |
301
-
302
- **Type tags (1 byte):** 0x00 null, 0x01 false, 0x02 true, 0x03 int (varint), 0x04 int64 (8 B), 0x05 float (8 B), 0x06 string (varint len + UTF-8), 0x08 array (varint count + values), 0x09 object (varint pairs + (varint key index + value)×pairs). No redundant structural markers; no padding.
303
-
304
- **Goals:** Smaller than v1 and than JSON for typical documents; sequential decode; low overhead for small objects; suitable for PostgreSQL BYTEA and large-scale processing.
305
-
306
- ---
307
-
308
290
  *End of specification.*
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "koda-format",
3
- "version": "1.0.3",
3
+ "version": "1.0.5",
4
4
  "type": "module",
5
5
  "description": "Compact Object Data Architecture — text and binary format with canonical encoding",
6
6
  "main": "dist/index.js",