KiCad (Wikipedie), sada svobodných softwarových nástrojů pro počítačový návrh elektronických zařízení (EDA), byl vydán v nové major verzi 10.0.0 (𝕏). Přehled novinek v příspěvku na blogu.
Letošní Turingovou cenu (2025 ACM A.M. Turing Award, Nobelova cena informatiky) získali Charles H. Bennett a Gilles Brassard za základní přínosy do oboru kvantové informatiky, které převrátily pojetí bezpečné neprolomitelné komunikace a výpočetní techniky. Jejich protokol BB84 z roku 1984 umožnil fyzikálně zaručený bezpečný přenos šifrovacích klíčů, zatímco jejich práce o kvantové teleportaci položila teoretické základy pro budoucí kvantový internet. Jejich práce spojila fyziku s informatikou a ovlivnila celou generaci vědců.
Firefox 149 dostupný od 24. března přinese bezplatnou vestavěnou VPN s 50 GB přenesených dat měsíčně (s CZ a SK se zatím nepočítá) a zobrazení dvou webových stránek vedle sebe v jednom panelu (split view). Firefox Labs 149 umožní přidat poznámky k panelům (tab notes, videoukázka).
Byla vydána nová stabilní verze 7.9 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 146. Přehled novinek i s náhledy v příspěvku na blogu.
Dle plánu byla vydána Opera GX pro Linux. Ke stažení je .deb i .rpm. V plánu je flatpak. Opera GX je webový prohlížeč zaměřený na hráče počítačových her.
GNUnet (Wikipedie) byl vydán v nové major verzi 0.27.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.
Byly publikovány informace (technické detaily) o bezpečnostním problému Snapu. Jedná se o CVE-2026-3888. Neprivilegovaný lokální uživatel může s využitím snap-confine a systemd-tmpfiles získat práva roota.
Nightingale je open-source karaoke aplikace, která z jakékoliv písničky lokálního alba (včetně videí) dokáže oddělit vokály, získat text a vše přehrát se synchronizací na úrovni jednotlivých slov a hodnocením intonace. Pro separaci vokálů využívá UVR Karaoke model s Demucs od Mety, texty písní stahuje z lrclib.net (LRCLIB), případně extrahuje pomocí whisperX, který rovněž využívá k načasování slov. V případě audiosouborů aplikace na
… více »Po půl roce vývoje od vydání verze 49 bylo vydáno GNOME 50 s kódovým názvem Tokyo (Mastodon). Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.
Článek na stránkách Fedora Magazinu informuje o vydání Fedora Asahi Remixu 43, tj. linuxové distribuce pro Apple Silicon vycházející z Fedora Linuxu 43.
window.onload=function() {
do_update();
}
function do_update() {
var status=document.getElementById('status');
var latest=document.adminForm.latest_version.value;
var db=document.adminForm.version_db.value;
var state=true;
while(db<=latest && state==true) {
alert(state);
var url='nejaka_url';
var params='latest_version='+latest+'&version_db='+db;
var ajax;
if(window.XMLHttpRequest) {
ajax=new XMLHttpRequest();
} else if(window.ActiveXObject) {
ajax=new ActiveXObject("Microsoft.XMLHTTP");
}
ajax.onreadystatechange=function() {
if(ajax.readyState==4 && ajax.status==200) {
var xml=ajax.responseXML;
var p=document.createElement('p');
p.appendChild(document.createTextNode(xml.getElementsByTagName('message')[0].firstChild.nodeValue));
status.appendChild(p);
if(xml.getElementsByTagName('status')[0].firstChild.nodeValue==1) {
state=false;
//exit;
}
db++;
}
}
ajax.open('POST',url,true);
ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
ajax.setRequestHeader("Content-length", params.length);
ajax.setRequestHeader("Connection", "close");
ajax.send(params);
}
}
První souvisí se zvýrazněnou částí. Proč mi nefunguje toto nastavení proměnné state na false? A v místě, kde je kontrolní smyčka je pořád state=true? Nepomůže ani když zadám zakomentovaný příkaz exit. Stejně se smyčka provádí dál.
Druhý problém je, že smyčka se provádí asi 250x a jednotlivé skripty volané pomocí url a prováděné PHPkem trvají delší dobu a i přesto, že v tu dobu ten js nic nedělá , tak www prohlížeč úplně zablokuje. Jde nějak provádět ten js na pozadí, aby neblokoval prohlížeč, když se provádí ten php skript?
Předem děkuji za vaše rady.
ajax.onreadystatechange=function() { ... }. Nevím, ale proč se to děje. :O
Tiskni
Sdílej: