Edee.one 10.17.7

Edee.one 10.17.7

Vydáno 11. 8. 2026

Zkopírovat odkaz na sekciVerze modulů

ModulVerze
edee10.17.7
cps10.17.4
rest3.3.3
fulltext11.4.6
registration6.6.5
jobmanager5.1.1

Zkopírovat odkaz na sekciZměny

Zkopírovat odkaz na sekci#2904 Aktualizace externích závislostí - Netty, HttpClient, jsoup, Tika - CVE-2026-59903, CVE-2026-64607, CVE-2026-71497, CVE-2026-66755

Bezpečnostní chyba Dependency

Aktualizace knihoven na verze bez známých zranitelností: Netty (CVE-2026-59903), Apache HttpClient 5 (CVE-2026-64607), jsoup (CVE-2026-71497) a Apache Tika (CVE-2026-66755). Nejzávažnější z nich je únik spojení v HttpClientu, který mohl vést k vyčerpání connection poolu.

Zkopírovat odkaz na sekci#2903 Zobrazení reference na ModuleObject: podpora system-id a vlastní šablony textu

Edee

Odkaz na objekt jiného modulu šlo dosud rozřešit jen podle číselného primárního klíče. Nově funguje i pro objekty adresované stabilním systémovým identifikátorem (typicky joby) a zobrazený popisek si lze poskládat SpEL šablonou bez zásahu do kódu. Součástí je i zpřesnění diagnostiky: chybějící registrace provideru se opět propíše do chybového logu.

Zkopírovat odkaz na sekci#2902 Fulltext - optimalizace statistiky hledání

Fulltext Výkonostní optimalizace

Dohledání výsledků hledání běželo jako plný sken neomezeně rostoucí tabulky statistik a s přibývající historií se zpomalovalo. Databázová migrace doplňuje pokrývající index a rozšiřuje sloupec category na 255 znaků, aby delší kategorie ze statistik tiše nevypadávaly. Nová úloha umí mazat staré záznamy a držet tabulku v rozumné velikosti — ve výchozím stavu je vypnutá, zapíná se fulltext.analytics.purge.job.enabled a ladí fulltext.analytics.retention.days.

Zkopírovat odkaz na sekci#2900 fulltext: delete-only inkrement nepropaguje mazání čtenářům (skipping commit) + race conditions v TwinIndexSearcher

Fulltext Oprava chyby

Inkrementální běh, který jen mazal a nic neindexoval, uložil smazání na disk, ale nezveřejnil ho čtenářům — uživatelé tak viděli smazaný obsah ve výsledcích až do nejbližší indexace nového obsahu. Součástí opravy jsou i souběhy při přepínání indexů. Týká se instalací s inkrementálním mazáním.

Zkopírovat odkaz na sekci#2896 REST endpoint checkPasswordStrength — tělo 400 odpovědi neodpovídá konvenci, neúplný kontrakt

Oprava chyby RESTAPI Registration

Endpoint pro kontrolu síly hesla vrací chybu 400 ve stejném formátu ErrorResultMessage (error.messages[]) jako ostatní endpointy a odpověď odpovídá dokumentovanému kontraktu. Klienti, kteří si na dřívější nestandardní tělo odpovědi udělali vlastní parsování, ho musí upravit.

Zkopírovat odkaz na sekci#2895 REST API: vyzrazení použitých technologií v chybových odpovědích

Bezpečnostní chyba RESTAPI

Chybové odpovědi REST API už neprozrazují použité technologie. Hlášky frameworku a databáze (názvy Java tříd, výjimky, fragmenty databázového schématu) se centrálně sanitizují; klient dál dostane čitelný důvod chyby, útočník ale ztrácí možnost otisknout si backend. Pokud integrace vyhodnocuje chyby podle textu hlášky, přepněte ji na error.messages[].messageCode — struktura odpovědi ani stavové kódy se nemění.

Zkopírovat odkaz na sekci#2876 Fulltext index sync: záloha indexu na OpenShift padá na 'user id is too big' (USTAR limit)

Fulltext Oprava chyby

Zálohovací úlohy fulltextového indexu na OpenShiftu padaly kvůli vysokému UID podu na limitu tar formátu, takže se do úložiště nikdy nic nenahrálo a nové instance neměly co obnovit — fulltext pak vracel nula výsledků. Archiv se nově vytváří v režimu, který vysoká UID i dlouhé cesty zvládá.

Zkopírovat odkaz na sekci#2875 JobManager: po změně definice plánování se nový ComputerHash nikdy nepersistuje → re-plán jobu při každém restartu, tichá ztráta cron slotů

JobManager Oprava chyby

Po úpravě plánu úlohy (například cron výrazu) se nový otisk plánu neuložil, takže se úloha při každém startu aplikace přeplánovala na nejbližší budoucí slot. Restart, který proběhl až po plánovaném čase, tím úlohu tiše odsunul o den dál a zmeškaný běh se nikdy nedohnal. Otisk se nyní ukládá a plán zůstává stabilní.

Zkopírovat odkaz na sekci#2865 NonActivatedAccountsRemover: převést Spring @Scheduled task na cluster-safe JobManager job

Oprava chyby Registration

Mazání neaktivovaných účtů běželo současně na všech instancích clusteru, ty si sáhly na stejné účty a instance, která nestihla smazat první, skončila chybou. Nově jde o úlohu JobManageru, takže ji odbaví právě jedna instance.