Bylo vydáno Eclipse IDE 2026-06 aneb Eclipse 4.40. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.
Asterinas (GitHub) je v Rustu napsané jádro operačního systému poskytující s jádrem Linux kompatibilní ABI. Vydána byla verze 0.18.0. První distribucí postavenou nad jádrem Asterinas je Asterinas NixOS. Nejedná se o oficiální projekt NixOS a nemá nic společného s NixOS Foundation.
Podrobně byla rozebrána kritická zranitelnost v nf_tables (CVE-2026-23111). Další lokální eskalace práv na Linuxu. V upstreamu byla zranitelnost již v únoru opravena. Ve zdrojovém kódu stačilo odstranit 1 vykřičník.
Evropská komise (EK) nařídila americké společnosti Meta, že musí znovu umožnit bezplatný přístup konkurenčním obecně zaměřeným asistentům umělé inteligence (AI) k WhatsAppu a tento přístup musí zachovat až do ukončení antimonopolního šetření. Opatření je dočasné a má zabránit vážnému a nevratnému poškození konkurence na rychle rostoucím trhu s obecnými AI asistenty. Meta uvedla, že se proti rozhodnutí odvolá.
Společnost Anthropic představila AI modely Claude Fable 5 a Claude Mythos 5. Claude Fable 5 je první model třídy Mythos určený pro běžné použití.
Byla vydána nová stabilní verze 3.24.0, tj. první z nové řady 3.24, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Přehled novinek v poznámkách k vydání.
Na čem pracují vývojáři v Rustu napsaného mikrokernelového unixového operačního systému Redox OS (Wikipedie)? Byl publikován přehled vývoje za květen. Vypíchnout lze nový scheduler EEVDF nebo port desktopového prostředí Xfce na Redox OS.
Upozornění pro uživatele Asahi Linuxu: Neaktualizujte macOS na verzi 27 Golden Gate! Apple změnil detekci spouštěcích oddílů. Po aktualizaci oddíl s Asahi Linuxem nevidí. Snad je to jenom chyba.
Na webu konference Den IPv6, která se konala 4. června v Národní technické knihovně v pražských Dejvicích, jsou nyní k dispozici všechny prezentace (v PDF) a jejich videozáznamy. Organizátory konference byly i letos sdružení CESNET, CZ.NIC a NIX.CZ.
Byla vydána nová verze 9.1.0 správce sbírky fotografií digiKam (Wikipedie). Přehled novinek i s náhledy v oficiálním oznámení (NEWS). Vypíchnout lze vylepšené vyhledávání nebo podporu Pixel Motion Photos. Nejnovější digiKam je ke stažení také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.
function sleep(delay) {
var start = new Date().getTime();
while(new Date().getTime() < start + delay);
}
function tcpPortStatus(host, port, wait, delay) {
var check = 'closed';
var start = new Date().getTime();
while(new Date().getTime() < start + delay) {
var socket = net.createConnection(port, host);
socket.on('data', function() {
check = socket.readyState;
console.log(socket.readyState);
});
if(check == 'open') {
break;
}
sleep(wait);
}
return check;
}
document.write(tcpPortStatus('127.0.0.1', '5900', 500, 2000));
a potrebujem zo "socket.on" získať socket.readyState do premennej check.
Nájde sa tu dobrá duša čo mi ukáže ako na to?
Za odpovede vopred veľmi pekne ďakujem.
function tcpPortStatus(host, port, wait, delay) {
var check = 'closed';
var start = new Date().getTime();
while(new Date().getTime() < start + delay) {
var client = net.createConnection(port, host);
check = new Promise(function(callback) {
client.on('data', function() {
callback(client.readyState);
});
}).then(function(callback) { console.log(callback); return callback; });
document.write(check);
console.log(check);
if(check == 'open') {
break;
}
sleep(wait);
}
return check;
}
document.write(tcpPortStatus('127.0.0.1', '5900', 500, 2000) + '
');
function sleep(timeout) {
var start = new Date().getTime();
while(new Date().getTime() < start + timeout);
}
async function tcpAsyncWrapper(host, port) {
return await tcpPortCheck(host, port);
}
function tcpPortCheck(host, port) {
var client = net.createConnection(port, host);
return new Promise(function(resolve, reject) {
client.on('data', function() {
resolve(client.readyState);
});
}).then(function(resolve) { return resolve; });
}
function tcpPortStatus(host, port, retry, timeout) {
var check = 'closed';
var start = new Date().getTime();
while(new Date().getTime() < start + timeout) {
check = tcpAsyncWrapper(host, port)
console.log(check);
document.write(check);
if(check == 'open') {
break;
}
sleep(retry);
}
return check;
}
document.write(tcpPortStatus('127.0.0.1', '5900', 500, 2000));
Je vôbec možné v JS urobiť to o čo sa snažím? Teda synchrónne počkať na asynchrónnu funkciu?
async function asyncFce()
{
vysledek1 = await nejakaFce();
vysledek2 = await nejakaFce2(vysledek1);
return vysledek2;
}
function topLevel()
{
promise = new Promise(function asyncWrapper() { await asyncFce(); });
promise.then(function zpracujVysledek(vysledek) { /* print vysledek */ } )
}
Tiskni
Sdílej: