# 5. Změny v jednotlivých verzích

Tento dokument shrnuje změny v jednotlivých verzích komponenty PEVA Connector.

Změny jsou uvedeny v chronologickém pořadí, nejdříve jsou uvedeny změny v nejnovější verzi.

## 5.1. 1.0.11

> - Oprava: Převzetí starší (snapshotové) databáze Imwhooseru selhávalo při startu chybou `column ... create_time does not exist`. Taková databáze vznikla před přidáním sloupců `create_time` / `send_time` / `scope` do `elza_queue` a PEVA Connector je (na rozdíl od tabulky `pv_fund`) nedoplňoval. Idempotentní changelog nyní tyto chybějící sloupce doplní i na převzaté databázi (viz Migrace z Imwhooseru).

## 5.2. 1.0.10

> - Oprava: Metrika `queue.error_at` pro PEvA chybně rostla i bez chyby (vracela dobu od startu komponenty a navíc posunutou o časové pásmo). Nyní vrací -1, pokud poslední zpracování proběhlo úspěšně, a délku chybového stavu jen při skutečné chybě; sjednocen výpočet času metriky (viz Monitorování).

> - Nově: Metrika `queue.last_success` je nově k dispozici i pro frontu do Elzy (doba od posledního úspěšného odeslání).

> - Dokumentace: doplněn popis generování interního kódu fondu (`internalCode`) a monitorovacích metrik, rozšířena konfigurační dokumentace. Upraven proces publikace dokumentace na web - souběžně se zveřejňuje stabilní (`current`) a vývojová (`next`) verze.

## 5.3. 1.0.9

> - Nově: Zpřístupněn endpoint Prometheus (Actuator `health` a `prometheus`) pro monitorování běhu komponenty (viz Monitorování, Monitorování).

> - Nově: Metriky `queue.last_success` (doba od posledního úspěšného stahování z PEvA) a `queue.oldest_blocked_age` (stáří nejstaršího záznamu uvízlého ve frontě do Elzy) pro snazší hlídání výpadků.

## 5.4. 1.0.8

> - Nově: Volitelné generování interního kódu fondu (`internalCode`) pomocí výrazu SpEL s proměnnou `#fundNumber`; lze nastavit globálně (`peva.internalCode`) nebo pro jednotlivé instituce (viz Konfigurace PEvA).

> - Změna: Z konfigurace `elza` byly odstraněny nepoužívané volby `scope` a `systemCode`.

> - Oprava: Správné párování instituce podle `institutionCode` / `username` při odesílání fondů více institucí.

> - Oprava: Odstraněno selhání kontrolního součtu Liquibase na již nasazených databázích (zafixován changeset `peva-2-pv_fund`).

## 5.5. 1.0.7

> - Nově: Hodnota `name` u oddělení v konfiguraci `departments` se páruje proti názvu i číslu oddělení v PEvA. Při stahování se k fondu ukládají obě hodnoty, takže stačí uvést kteroukoli z nich (viz Konfigurace PEvA).

> - Změna: Při převzetí databáze se entity-side schéma Imwhooseru (sloupec `elza_queue.entity_id` a tabulky `imw_*` / `*_person`), které PEVA Connector nevyužívá, odstraní automaticky a nevratně; úklid již není volitelný (zrušen Liquibase kontext `cleanup` i nastavení `spring.liquibase.contexts`) (viz Migrace z Imwhooseru).

> - Dokumentace: popsáno, že fondy zakládané konektorem jsou v Elze spravované (jen pro čtení) a servisní účet Elzy proto potřebuje oprávnění ADMIN; při chybě odeslání záznam zůstává ve frontě a odeslání se opakuje až do úspěchu (viz Spravované fondy (režim „jen pro čtení“ v Elze)).

## 5.6. 1.0.6

> - Oprava: Na převzatých databázích Imwhooseru se doplní sloupec `department_name` do tabulky `pv_fund` (potřebný pro párování oddělení).

## 5.7. 1.0.1 - 1.0.5

> - Interní: úpravy publikace artefaktů (Artifactory) a procesu nasazení (CI/CD), přidána instalační/aktualizační stránka `/get/peva-connector`. Bez funkčních změn aplikace.

## 5.8. 1.0.0

> - Nově: Vyčlenění importu PEvA z nástroje Imwhooser do samostatné aplikace PEVA Connector. Funkčně odpovídá původnímu importu PEvA.

> - Nově: Idempotentní migrace databáze - schéma se buď vytvoří na prázdné DB, nebo se převezme existující databáze Imwhooseru v „PEVA módu“ (viz Migrace z Imwhooseru).

> - Nově: Distribuční balíček `.zip` (jar, ukázková konfigurace, dokumentace).