@atom-forge/rpc 0.3.3 → 0.3.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.
- package/CHANGELOG.md +81 -0
- package/package.json +3 -2
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## [0.3.3] - 2026-03-28
|
|
4
|
+
|
|
5
|
+
### Fixed
|
|
6
|
+
|
|
7
|
+
- **Node.js / Bun kompatibilitás fájlfeltöltésnél** — egyes runtime-ok (pl. Node.js/undici) multipart form data esetén nem őrzik meg a blob MIME típusát. Ha `argsBlob.type` üres, a szerver mostantól `application/msgpack`-re esik vissza, ahelyett hogy `ParseError`-t dobna.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## [0.3.2] - 2026-03-23
|
|
12
|
+
|
|
13
|
+
### Added
|
|
14
|
+
|
|
15
|
+
- **Patron License** — saját licencdokumentum hozzáadva (`LICENSE`).
|
|
16
|
+
|
|
17
|
+
### Changed
|
|
18
|
+
|
|
19
|
+
- **`package.json` metaadatok** — kulcsszavak, repository URL, szerző és licencmező frissítve.
|
|
20
|
+
- **README** — licenc- és közreműködési szekció bővítve.
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## [0.3.0] - 2026-03-xx
|
|
25
|
+
|
|
26
|
+
### Added
|
|
27
|
+
|
|
28
|
+
- **Client logger** (`src/client/logger.ts`) — önálló modul a kliens oldali debug naplózáshoz.
|
|
29
|
+
- **Cookie segédlet** (`src/util/cookies.ts`) — cookie kezelő utility a szerver kontextushoz.
|
|
30
|
+
- **`ServerContext` cookie API** — `ctx.cookies` elérhetővé vált a handler-ekben.
|
|
31
|
+
|
|
32
|
+
### Changed
|
|
33
|
+
|
|
34
|
+
- **Dokumentáció átstrukturálás** — `README.md` felosztva: `README.en.md`, `README.hu.md`, `README.llm.md` fájlokra.
|
|
35
|
+
- **`createClient` logger integráció** — a debug logging a dedikált logger modulon keresztül történik.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## [0.2.0] - 2026-02-27
|
|
40
|
+
|
|
41
|
+
### Breaking Changes
|
|
42
|
+
|
|
43
|
+
- **URL formátum megváltozott.** A kliensoldali hívások mostantól pont-szeparátoros, teljes egészében `kebab-case` URL-t generálnak.
|
|
44
|
+
- Régi: `/api/users/getProfile`
|
|
45
|
+
- Új: `/api/users.get-profile`
|
|
46
|
+
- **SvelteKit routing:** a `src/routes/api/[...path]/+server.ts` fájlt ajánlott `[path]`-ra cserélni, hogy a régi formátumú kérések ne kerüljenek részleges feldolgozásra.
|
|
47
|
+
|
|
48
|
+
### Added
|
|
49
|
+
|
|
50
|
+
- **`flattenApiDefinition`** — a szerver indulásakor az API definícióból egy lapos `Map<string, { rpcType, handler }>` épül fel. Minden `handler` egy előre összerakott pipeline closure (middleware-ek + Zod-validáció + implementation), így kérésenként csak egy `Map.get()` és egy függvényhívás szükséges.
|
|
51
|
+
- **`camelToKebabCase`** utility (`src/util/string.ts`) — megosztott segédfüggvény a kliens és szerver között, akronimákat helyesen kezelő regex-szel (`getUserID` → `get-user-id`).
|
|
52
|
+
- **415 Unsupported Media Type** válasz ismeretlen `Content-Type` esetén `command` kéréseknél (korábban szótlanul msgpackr-rel próbálkozott).
|
|
53
|
+
|
|
54
|
+
### Changed
|
|
55
|
+
|
|
56
|
+
- **`tango.ts` refaktor** — a `query`/`command`/`get` hármas és a Zod-kezelés duplikációja megszűnt. Két belső helper (`makeDescriptor`, `makeZodMethodSet`) váltja ki a korábbi ~195 soros, triplikált logikát (~76 sorra csökkentve).
|
|
57
|
+
- **`endpointMap`** — a korábbi félrevezető `flatMap` név helyett.
|
|
58
|
+
- **Kliens debug logging** — `isDebug` konstans (korábban kétszer kiértékelt feltétel); hiba esetén az error a konzolcsoporton belül jelenik meg, a csoport mindig bezárul (korábban pipeline-hiba esetén nyitva maradt).
|
|
59
|
+
- **Kliens `middlewareMap` kulcsok** — az új URL-konvencióval konzisztens formátumra frissítve (`.` szeparátor, kebab-case).
|
|
60
|
+
|
|
61
|
+
### Fixed
|
|
62
|
+
|
|
63
|
+
- **Heterogén File tömb feltöltés** — a feltöltési logika mostantól az összes tömbelemre ellenőrzi, hogy `File`-e (`every()`), nem csak az elsőre.
|
|
64
|
+
- **`abortSignal` / `onProgress`** — felesleges ternary operátor eltávolítva a `ClientContext` konstruktorában.
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## [0.1.7] - 2026-xx-xx
|
|
69
|
+
|
|
70
|
+
### Changed
|
|
71
|
+
|
|
72
|
+
- Függőség-frissítések.
|
|
73
|
+
- Zod re-export `tz` névvel (`import { tz } from "@atom-forge/rpc"`).
|
|
74
|
+
- Kódstílus-egységesítés (tömör importok, tab indentáció) az összes forrásfájlban.
|
|
75
|
+
- Pipeline middleware viselkedés finomítva: `undefined`-ot ad vissza, ha nincs illeszkedő middleware.
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## [0.1.0] - 2025-xx-xx
|
|
80
|
+
|
|
81
|
+
Kezdeti implementáció: type-safe RPC keretrendszer middleware támogatással, Zod validációval, fájlfeltöltéssel és progress tracking-gel.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atom-forge/rpc",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.5",
|
|
4
4
|
"description": "Type-safe RPC framework for TypeScript with Zod validation and middleware support",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"rpc",
|
|
@@ -26,7 +26,8 @@
|
|
|
26
26
|
},
|
|
27
27
|
"files": [
|
|
28
28
|
"dist",
|
|
29
|
-
"LICENSE"
|
|
29
|
+
"LICENSE",
|
|
30
|
+
"CHANGELOG.md"
|
|
30
31
|
],
|
|
31
32
|
"scripts": {
|
|
32
33
|
"build": "tsc",
|