docs: rewrite JsonRpcBundle docs, add SDK docs, move them under docs/api
uk/docs/api/json-rpc-bundle/change_log/README.md
новий файл +28
−0
1
+
# Історія змін
2
+
<include>(latest.md)
3
+
_________________
4
+
<include>(10.3.1.md)
5
+
_________________
6
+
<include>(10.2.3.md)
7
+
_________________
8
+
<include>(10.1.0.md)
9
+
_________________
10
+
<include>(10.0.0.md)
11
+
_________________
12
+
<include>(9.2.1.md)
13
+
_________________
14
+
<include>(9.1.5.md)
15
+
_________________
16
+
<include>(8.1.14.md)
17
+
_________________
18
+
<include>(7.6.0.md)
19
+
_________________
20
+
<include>(7.0.0.md)
21
+
_________________
22
+
<include>(6.4.0.md)
23
+
_________________
24
+
<include>(5.2.0.md)
25
+
_________________
26
+
<include>(4.5.2.md)
27
+
28
+
Повний опис кожного релізу з прикладами — у теці [releases](https://github.com/UFO-Tech/json-rpc-bundle/tree/main/releases) репозиторію бандла.
uk/docs/api/json-rpc-bundle/change_log/latest.md
новий файл +1
−0
1
+
<include>(10.4.2.md)
uk/docs/api/json-rpc-bundle/change_log/10.4.2.md
новий файл +17
−0
1
+
## Версія 10.4
2
+
3
+
### Ключові зміни
4
+
5
+
* [Переклади для груп API](/docs/api/json-rpc-bundle/documentation): `translations/rpc/<group>.<locale>.yaml`; група важливіша за мову.
6
+
* Переклади з розширень (`translations.paths`), публічний сервіс `RpcLocaleNegotiator`.
7
+
* 10.4.1: `IApiRouteImport` — маршрути адаптера можна підключити окремо для кожної групи API.
8
+
* 10.4.2: `RpcExecutor` — єдина точка входу для адаптерів (REST, MCP); `rpc.post_response` запускається для будь-якого джерела запиту і для кожного виконаного елемента batch.
9
+
10
+
### Що врахувати
11
+
12
+
* Частковий базовий переклад: відсутній `description` береться з базового перекладу мовою `kernel.default_locale`, а не з атрибута / PHPDoc.
13
+
* REST-виклики тепер отримують `rpc.post_response`: для них запрацюють зв'язки кешу й async/notification-лістенери.
14
+
15
+
### Зміни оточення
16
+
17
+
* Без змін відносно 10.3.
uk/docs/api/json-rpc-bundle/change_log/10.3.1.md
новий файл +28
−0
1
+
## Версія 10.3
2
+
3
+
### Ключові зміни
4
+
5
+
* У 2,4–4,2 раза більше запитів за секунду для звичайних викликів і документації.
6
+
* Налаштування [batch](/docs/api/json-rpc-bundle/functionality/batch): `enabled`, inline-режим, ліміт паралельних процесів `process_count`.
7
+
* Notifications у batch за специфікацією: без відповіді, batch лише з notifications — `204`.
8
+
* Від'єднане виконання notifications (`notification.process`).
9
+
* [Переклад назв і описів методів](/docs/api/json-rpc-bundle/documentation) за `Accept-Language`, кеш документації з `ETag`.
10
+
* `cache.pool` — власний пул кешу; ключ кешу відповідей містить реалізацію методу й версію API.
11
+
* Токен і тіло запиту більше не передаються в командному рядку дочірніх процесів.
12
+
13
+
### 10.3.1
14
+
15
+
* Знову виконуються XHR-запити (`X-Requested-With: XMLHttpRequest`).
16
+
* Знову працює `#[Autowire]` в аргументах RPC-методу.
17
+
* Знову застосовується `#[RPC\Info(concat: …)]` — перевірте клієнтів, якщо задано `concat`.
18
+
* Застарілі методи знову позначаються в OpenRPC.
19
+
20
+
### Що врахувати
21
+
22
+
* `batch.process_count` за замовчуванням 2 — великі batch у процесному режимі стали повільнішими.
23
+
* Terminate-лістенери застосунку тепер виконуються після RPC-запитів.
24
+
* Змінились конструктори кількох сервісів (лише при ручному створенні чи успадкуванні); `DocSecurityListener` видалено.
25
+
26
+
### Зміни оточення
27
+
28
+
* `ufo-tech/rpc-objects`: `^3.9.1`.
uk/docs/api/json-rpc-bundle/change_log/10.2.3.md
новий файл +18
−0
1
+
## Версія 10.2
2
+
3
+
### Ключові зміни
4
+
5
+
* [Групи API](/docs/api/json-rpc-bundle/functionality/groups): кілька точок входу (public, internal, BFF) з власними методами, версіями й документацією; атрибут `#[RPC\APIGroups]`.
6
+
* Перевірка токенів для кожної групи через `security.providers` (сервіс-валідатор або окремий список токенів).
7
+
* Завантажувачі маршрутів `ApiYamlFileLoader` / `RpcYamlFileLoader` для адаптерів.
8
+
* `--api-group` для консолі, `apiGroup` для Messenger.
9
+
* Batch на версійну адресу виконує елементи в цій версії.
10
+
11
+
### Що врахувати
12
+
13
+
* Назви маршрутів отримали префікс групи (`general_ufo_rpc_api_server`); старі назви лишаються аліасами для `general`.
14
+
* Конструктор `SimpleTokenValidator`: `(RpcMainConfig $rpcConfig)` -> `(array $tokens = [])`.
15
+
16
+
### Зміни оточення
17
+
18
+
* `PHP`: `>=8.4`. `ufo-tech/rpc-objects`: `^3.9`.
uk/docs/api/json-rpc-bundle/change_log/10.1.0.md
новий файл +14
−0
1
+
## Версія 10.1
2
+
3
+
### Ключові зміни
4
+
5
+
* Підтримка Symfony 8 (`^7.2|^8.0`).
6
+
* [JSON-RPC notifications](/docs/api/json-rpc-bundle/functionality/notifications): запит без `id` отримує `204` і виконується після відповіді.
7
+
* Сувора перевірка JSON-RPC 2.0: `jsonrpc` ≠ `"2.0"` і порожній batch відхиляються з `-32600`.
8
+
* Єдиний формат помилок параметрів: усі проблеми по кожному параметру в `error.data`.
9
+
10
+
### Зміни оточення
11
+
12
+
* `PHP`: `>=8.3` -> `>=8.4`.
13
+
* `Symfony`: `^7.2` -> `^7.2|^8.0`; `symfony/messenger` став явною залежністю.
14
+
* `ufo-tech/rpc-exceptions`: `^1.3` -> `^2`; `ufo-tech/rpc-objects`: `^3.8`; `ufo-tech/dto-transformer`: `^3.1`.