Byla vydána nová verze 2.53.18.2 svobodného multiplatformního balíku internetových aplikací SeaMonkey (Wikipedie). Přehled novinek v poznámkách k vydání.
Na blogu programovacího jazyka Swift byl publikován příspěvek Psaní aplikací pro GNOME v programovacím jazyce Swift. Používá se Adwaita pro Swift.
egui je GUI knihovna pro programovací jazyk Rust běžící na webu i nativně. Vydána byla verze 0.27.0.
Byla vydána nová verze 6.1 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.13. Thunderbird na verzi 115.9.0.
Linka STOPonline.cz v roce 2023 přijala 3700 hlášení závadného obsahu na internetu, 22 bylo předáno PČR, 23 bylo předáno ISP a 944 závadových domén zobrazujících dětskou nahotu či pornografii bylo nahráno do mezinárodního systému ICCAM, který je spravován asociací INHOPE.
Byla publikována podrobná analýza v upstreamu již opravené bezpečnostní chyby CVE-2024-1086 v Linuxu v nf_tables.
Byla vydána nová verze 4.1 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v obsáhlých poznámkách k vydání.
Úkolníček Taskwarrior (Wikipedie) pro správu úkolů z příkazového řádku byl vydán ve verzi 3.0.0.
Společnost Canva stojící za stejnojmenným webovým grafickým editorem koupila společnost Serif stojící za grafickým editorem Affinity.
Byla vydána betaverze Fedora Linuxu 40, tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 16. dubna. Z novinek (ChangeSet) lze vypíchnout podporu frameworku pro strojové učení PyTorch. Fedora KDE Plasma Desktop přichází s Plasmou 6 a běží nad Waylandem. Fedora Workstation přichází s GNOME 46.
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: