2.8 KiB
2.8 KiB
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,marginaprogress, coz jsou odkazy na vnorene modely. V OpenAPI z toho vznikl$refse sourozeneckym klicemdescription. 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$refse 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 enginuweasyprintprepise u obrazku vtdathwidth: <n>%nawidth: auto, odstrani procentualni atributwidtha doplnimax-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,chunkingatoc, vcetne omezeni jednotlivych rezimu cislovani - Swagger a OpenAPI popisuji uchovavani souboru u
POST /converti uPOST /jobsvcetne doby dostupnosti vysledku a chovani po restartu sluzby - pole odpovedi
JobStateaJobProgressmaji v OpenAPI popis - pribyl priklad tela requestu s cislovanim stranek na sirku stranky
1.0.0
Prvni implementace sluzby.
Pridano:
- synchronni endpoint
POST /converts limitem a odkazem na asynchronni cestu - asynchronni endpointy
POST /jobs,GET /jobs/{id},GET /jobs/{id}/result,DELETE /jobs/{id} GET /healths overenim dostupnosti obou enginu a stavem fronty- engine WeasyPrint jako vychozi, engine Chromium pres Playwright, rezim
autos 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