Byla vydána nová major verze 28.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Přehled novinek v příspěvku na blogu.
Český telekomunikační úřad zveřejnil Výroční zprávu za rok 2024 (pdf), kde shrnuje své aktivity v loňském roce a přináší i základní popis situace na trhu. Celkový objem přenesených mobilních dat za rok 2024 dosáhl dle odhadu hodnoty přibližně 1,73 tis. PB a jeho meziroční nárůst činí zhruba 30 %. Průměrná měsíční spotřeba dat na datovou SIM kartu odhadem dosáhla 12,5 GB – v předchozím roce šlo o 9,8 GB.
Z novinek představených na Google I/O 2025: Přehledy od AI (AI Overviews) se rozšiřují do dalších zemí. Užitečné, syntetizované přehledy od generativní AI jsou nově k dispozici i českým uživatelům Vyhledávače.
Šestice firem označovaných jako „MAMAAN“ – tedy Meta (Facebook, Instagram), Alphabet (Google), Microsoft, Apple, Amazon a Netflix – je zodpovědná za více než padesát procent světového internetového provozu. Dalšími velkými hráči jsou TikTok a Disney+. Společně tak zásadně určují podobu digitálního prostředí, spotřebitelského chování i budoucích trendů v oblasti technologií. I přesto, že se podíl těchto gigantů od roku 2023 o něco snížil, jejich dominantní postavení zvyšuje volání po regulaci.
Evropská komise (EK) navrhuje zavést plošný poplatek ve výši dvou eur (zhruba 50 Kč) za každý malý balík vstupující do Evropské unie. Poplatek se má týkat balíků v hodnotě do 150 eur (zhruba 3700 Kč), které v EU nepodléhají clu. V loňském roce bylo do EU doručeno kolem 4,6 miliardy takovýchto balíků. Poplatek má krýt náklady na kontroly rostoucího počtu zásilek levného zboží, které pochází především z Číny.
Dnes a zítra probíhá vývojářská konference Google I/O 2025. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).
V Bostonu probíhá konference Red Hat Summit 2025. Vybrané přednášky lze sledovat na YouTube. Dění lze sledovat na síti 𝕏 (#RHSummit).
Společnost Red Hat oficiálně oznámila vydání Red Hat Enterprise Linuxu 10. Vedle nových vlastností přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Podrobnosti v poznámkách k vydání.
Tuto sobotu 24. května se koná historicky první komunitní den projektu Home Assistant. Zváni jsou všichni příznivci, nadšenci a uživatelé tohoto projektu. Pro účast je potřebná registrace. Odkazy na akce v Praze a v Bratislavě.
Troy Hunt představil Have I Been Pwned 2.0, tj. nový vylepšený web služby, kde si uživatelé mohou zkontrolovat, zda se jejich hesla a osobní údaje neobjevily v únicích dat a případně se nechat na další úniky upozorňovat.
Minulý pátek, po 12 letech a 8 měsících jsem změnil doménu u nejstarší, mnou kontinuálně provozované wiki. A nebyla to změna jediná.
Nejprve jsem zvednul verzi MediaWiki z 1.34, které skončil životní cyklus loni na konci listopadu, na aktuální verzi 1.35, s podporou až do září 2023. A s tím byl pochopitelně spojen také upgrade používaných rozšíření.
Z toho jsem měl poněkud obavy, protože udržovat kód rozšíření tak, aby všechno fungovalo i s aktuální verzí MediaWiki není žádná sranda. Většina jejich tvůrců má svojí práce dost a řeší jiné problémy než zrovna to, jestli rozšíření, které si napsali pro MediaWiki verze 1.12 se dá používat i s verzí 1.35.
Problémy, spojené s nějakým rozšířením, se po aktualizaci MediaWiki obvykle projeví tak, že server zobrazí nějakou chybu, nebo nic. A řeší se tak, že se nejdřív zakomentují všechna používaná rozšíření, a pak se znovu postupně zapínají, od těch nejdůležitějších po ta méně důležitá, dokud nepřijdete na to, které z nich způsobuje problém.
Pokud se aktualizujete nějakou starší MediaWiki (viz životní cyklus verzí MediaWiki, tak doporučuji “vyskákat” nejprve na nejbližší LTS verzi a teprve pak aktualizovat dál až po aktuální LTS verzi. I tak si ale nejprve ověřte, jestli lze vámi používaná rozšíření použít. Tyhle informace najdete na vývojářském webu https://www.mediawiki.org, kde má každé rozšíření svou stránku.
Důvodem pro změnu domény bylo postupné sjednocení domén používaných v rámci FEL ČVUT. Tato fakulta sídlí ve dvou lokalitách. V Dejvicích a na Karlově náměstí, a historicky se tak používaly dvě domény feld.cz
a felk.cz
.
Web katedry řídicí techniky, kde jsem v květnu 2008 nastoupil, používal původně doménu dce.felk.cvut.cz
proto jsem zvolil pro wiki, která měla za cíl zdokumentovat do té doby panující chaos, doménové jméno support.dce.felk.cvut.cz
.
Peripetie katederního webu jsem naštěstí řešil pouze okrajově. Nastoupil jsem, coby specialista přes virtualizaci v linuxovém prostředí, se základním cílem a předsevzetím – do windows už ani klacíkem. Ovšem v době, kdy už bylo defakto rozhodnuto o tom, že se nový web katedry rozjede na redakčím systému MediaCentrik, které však bylo MS Windows server only – do té doby běžel katederní web na BSD. Proto byl na jeho správu přijat kolega, specialista na MS Windows. Tento takzvaný “nový web katedry” používal doménu www.dce.felk.cvut.cz
S tímto webem byl ale neustálý oser. Navíc, kolega až jinak fajn kluk to vůbec neuměl s linuxem, takže ho pár let nahradil budoucí šéf SVTI, kterému se podařilo cca po třech letech té MS Win only verze katederního webu konečně zbavit. “Nový nový katederní web” pak měl primární doménu www.dce.cz
. Dnes již všechny tyhle domény vedou na https://control.fel.cvut.cz.
U stroje support jsem s aktualizací a změnou domény (a IP adres) vyčkával až bude po obhajobách, protože se jeho prostřednictvím zveřejňují také bakalářské a diplomové práce studentů. Certifikát končil teď v březnu, takže jsme to spojili s přechodem na Lets' encrypt. Vše proběhlo minulý pátek a pochopitelně se to neobešlo bez problému.
Google umožňuje změnu domény u naindexovaných URL, ale podmínkou k úspěšné realizaci této operace je funkční přesměrování. Než se do toho pustí, kontroluje, jestli se ze všech naindexovaných adres vrací permanent redirect (301). No a v tom byla potíž. Původní certifikát byl vyexpirovaný a nový byl vystaven pouze pro novou doménu, takže veškeré moje pokusy o přesměrování končily na SSL_ERROR_RX_RECORD_TOO_LONG
Příčina i řešení tohoto problému byla jako obvykle lapidární. Především jsme se s kolegou nepochopili. Nedošlo mi, když mi sděloval že “Lets' encrypt je pro supporta povolený” že tím měl na mysli že je to povolené i pro původní doménu. Ovšem poté co jsme si to vyjasnili, pokus o vygenerování certifikátu pro obě domény stejně selhal. Ukázalo se, že chyběl ještě CAA záznam.
Po vyřešení přesměrování začal Google konečně přesouvat naindexovaná URL, ovšem asi z 11 tisíc naindexovaných url adres jich asi 20 házelo error 501, což bylo divné. A skutečně, když jsem se pokusil některou z nich otevřít, skončil jsem s bílou plochou prohlížeče.
Bylo jasné, že za tím vězí nejspíš moje rozšíření AccessControl. To jsem však kompletně přepsal už předloni a pro verzi 3.0.2, až doposud nikdo žádný problém neoznámil. A jak to, že zrovna tyhle stránky? Kdyby nebyly dostupné, tak by je přeci google nenaindexoval.
Vrtalo mi to v hlavě, ovšem abych se na některou z těch stránek dostal a zjistil v čem je problém, bylo nutné ho rozšíření dočasně vypnout.
Ukázalo se, že ty problémové stránky natahovaly šablonu Smazat. Poté co jsem zrušil její obsah, a rozšíření znova zapnul byly stránky normálně dostupné. Chyba tedy byla v šabloně. Jenže její obsah nebyl na první pohled ničím výjimečný.
Používala se jen u stránek určených ke smazání, takže žádná tragédie. Ale přece jen. Proč skončil zacyklením také pokus o otevření stránky s šablonou? Byla to jedna z nejstarších šablon, zkopírovaná v září 2008 z Wikipedie. Tehdy se používala s MediaWiki verze 1.12, ale zrovna tahle šablona se používala jen krátce a to hlavně kolem roku 2014, kdy na údržbě wiki pracovala skupina studentů, takže v té době musela rozhodně fungovat. Souvisel ten problém s MediaWiki verze 1.35, nebo trval delší dobu? To už jsem zpětně ověřit nemohl.
Ale byla tam ještě jedna problémová stránka – singlepage stránka s manuálem k DjVu. Zjistil jsem, že jedna z inkludovaných stránek používá komplexní šablonu, která na základě předaných parametrů natahuje dvě naprosto jednoduché šablony vytvořené v roce 2015. Ovšem ty už jsem si napsal sám. Se šablonou Smazat měly ale jedno společné – způsob, jakým byly dokumentovány.
Od roku 2015 používám dokumentaci vkládanou přes šablonu Dokumentace. Ovšem u inkriminovaných šablon byla dokumentace napsaná přímo do šablony a uzavřená do elementu noinclude
. A pochopitelně tam byl i ukázkový příklad použití šablony. A to bylo ono!
Zjistil jsem, že MediaWiki má jednu nepříjemnou chybu, která je ve spojení s rozšířením AccessControl verze 3.x fatální. V roce 2019, během MediaWiki Hackatonu a asi 14 následujících dní jsem tohle rozšíření přepsal pro potřebu Semantic wiki tak, aby bylo možné používat access listy na bázi šablon. Vše jsem důkladně otestoval, takže mě nenapadlo že by mohl někde nastat problém. Jenže jak se ukázalo, problém nastane, pokud se pokud šablona inkluduje sebe sama.
Nevím sice od kdy, ale od určité doby MediaWiki při náhledu varuje před zasmyčkováním šablony, ale netušil jsem, že takový kód dovolí uložit. Dodatečně, metodou pokus omyl, jsem pak zjistil že ani mému rozšíření to nevadí. Až na jedinou výjimku a tou jsou právě šablony. Tím, že MediaWiki kód nejprve uloží a teprve pak interpretuje, nastane situace kdy vznikne nekonečná smyčka a další editace, která by umožnila chybu opravit, již není možná. Pokud o načtení takové stránky končí s následující chybou:
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 8388616 bytes) in /srv/main/wiki/includes/libs/stats/BufferingStatsdDataFactory.php on line 89
Nejprve jsem tedy kontaktoval Nicholase, na jehož přání jsem změny implementoval, abych ho na případný problém upozornil. A pak jsem začal pracovat na opravě. Bylo nezbytně nutné přidat hook, který by kód ověřil ještě před jeho uložením a v případě self-include jeho uložení zabránil.
V té době už jsem měl tenhle blogpost prakticky napsaný, ale počkal jsem s jeho uveřejněním na to až bude nová verze 4.0 v git repozitáři MediaWiki. Přijde mi, že jde o natolik zásadní změnu, že si to zasloužilo navýšení verze, byť oprava nebyla z hlediska kódu nijak veliká. I z bezpečnostního hlediska to nebyl nějak zvlášť zásadní problém. Obsah nedostupných stránek nebyl nijak kompromitován. Ale to, že pro vyřešení problému je nutné zabezpečení dočasně vypnout mi přišlo jako hodně velký bezpečnostní problém.
Už by k němu tedy nemělo dojít. Většina uživatelů na šablony stejně nehrabe. Problém by mohl nastat jedině v případě, že by chtěl někdo záměrně uškodit tím, že by takto zasmyčkoval nějakou hodně používanou šablonu. Ovšem soudný administrátor takové šablony zamyká. Ale hlavně si říkám, jak bych na ten problém vůbec přišel, kdyby mi ho neoznámil google, protože zasmyčkovanou šablonu vyhledávání ignoruje. Nevíte-li o ní, tak to vypadá jako kdyby neexistovala. Jenže ona existuje a jejím použití bezpečně zabetonuje stránku, do které byla vložena.
Tiskni
Sdílej: