# Zaznam zmen ## 1.0.2 Opraveno: - Swagger UI se u tela requestu rozbil. Verze 1.0.1 pridala popis k polim `page`, `page_numbers`, `toc`, `assets`, `chunking`, `wait_for`, `margin` a `progress`, coz jsou odkazy na vnorene modely. V OpenAPI z toho vznikl `$ref` se sourozeneckym klicem `description`. To je podle OpenAPI 3.1 v poradku, ale Swagger UI 5 takovy uzel nerozbali, takze prestala fungovat ukazka tela requestu i Try it out. Popisy se presunuly do docstringu prislusnych modelu, kde je Swagger zobrazi u samotneho modelu. V OpenAPI uz neni zadny `$ref` se sourozenci. ## 1.0.1 Opraveno: - obrazek uvnitr bunky tabulky, ktery ma sirku v procentech, uz z PDF nemizi. WeasyPrint takovou sirku neumi vyresit proti bunce, jejiz sirku jeste nezna, obrazek vysel nulove siroky a zmizel bez chyby, takze se neobjevil ani v `missing_assets`. Sluzba nove u enginu `weasyprint` prepise u obrazku v `td` a `th` `width: %` na `width: auto`, odstrani procentualni atribut `width` a doplni `max-width: 100%`, pokud zadne nema. Chromia se to netyka. Typicky pripad je produktovy list, kde je fotka v levem sloupci tabulky. Zmeneno: - Swagger a OpenAPI popisuji moznosti strankovani, tedy `page`, `page_numbers`, `chunking` a `toc`, vcetne omezeni jednotlivych rezimu cislovani - Swagger a OpenAPI popisuji uchovavani souboru u `POST /convert` i u `POST /jobs` vcetne doby dostupnosti vysledku a chovani po restartu sluzby - pole odpovedi `JobState` a `JobProgress` maji v OpenAPI popis - pribyl priklad tela requestu s cislovanim stranek na sirku stranky ## 1.0.0 Prvni implementace sluzby. Pridano: - synchronni endpoint `POST /convert` s limitem a odkazem na asynchronni cestu - asynchronni endpointy `POST /jobs`, `GET /jobs/{id}`, `GET /jobs/{id}/result`, `DELETE /jobs/{id}` - `GET /health` s overenim dostupnosti obou enginu a stavem fronty - engine WeasyPrint jako vychozi, engine Chromium pres Playwright, rezim `auto` s detekci skriptu a naslednym fallbackem - deleni dokumentu na casti na strukturalnich hranicich a slucovani vysledku - dvoupruchodovy render obsahu se skutecnymi cisly stranek - cislovani stranek pres CSS countery nebo pres cislovaci vrstvu - zalozky PDF z nadpisu, vypinatelne pres `outline` - profily PDF/A a PDF/UA pres `pdf_profile` - SSRF ochrana s kontrolou po DNS resolvu, na kazdem presmerovani a u vsech pozadavku prohlizece - hlaseni nedostupnych assetu v odpovedi jobu a v logu - fronta s omezenym poctem workeru, zruseni jobu, expirace vysledku - volitelny callback po dokonceni jobu - strukturovane JSON logovani s `job_id` - Dockerfile s WeasyPrintem, Chromiem, fonty s ceskou diakritikou a healthcheckem - testy vcetne fixture o zhruba 1200 strankach Zamerne neimplementovano: - autentizace, zpusob neni domluveny - databaze, Redis ani message broker - webove UI - jakekoliv limity zapnute ve vychozim stavu