Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
Před 25 lety zaplavil celý svět virus ILOVEYOU. Virus se šířil e-mailem, jenž nesl přílohu s názvem I Love You. Příjemci, zvědavému, kdo se do něj zamiloval, pak program spuštěný otevřením přílohy načetl z adresáře e-mailové adresy a na ně pak „milostný vzkaz“ poslal dál. Škody vznikaly jak zahlcením e-mailových serverů, tak i druhou činností viru, kterou bylo přemazání souborů uložených v napadeném počítači.
Byla vydána nová major verze 5.0.0 svobodného multiplatformního nástroje BleachBit (GitHub, Wikipedie) určeného především k efektivnímu čištění disku od nepotřebných souborů.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).
Provozovatel čínské sociální sítě TikTok dostal v Evropské unii pokutu 530 milionů eur (13,2 miliardy Kč) za nedostatky při ochraně osobních údajů. Ve svém oznámení to dnes uvedla irská Komise pro ochranu údajů (DPC), která jedná jménem EU. Zároveň TikToku nařídila, že pokud správu dat neuvede do šesti měsíců do souladu s požadavky, musí přestat posílat data o unijních uživatelích do Číny. TikTok uvedl, že se proti rozhodnutí odvolá.
Společnost JetBrains uvolnila Mellum, tj. svůj velký jazykový model (LLM) pro vývojáře, jako open source. Mellum podporuje programovací jazyky Java, Kotlin, Python, Go, PHP, C, C++, C#, JavaScript, TypeScript, CSS, HTML, Rust a Ruby.
Vývojáři Kali Linuxu upozorňují na nový klíč pro podepisování balíčků. K původnímu klíči ztratili přístup.
V březnu loňského roku přestal být Redis svobodný. Společnost Redis Labs jej přelicencovala z licence BSD na nesvobodné licence Redis Source Available License (RSALv2) a Server Side Public License (SSPLv1). Hned o pár dní později vznikly svobodné forky Redisu s názvy Valkey a Redict. Dnes bylo oznámeno, že Redis je opět svobodný. S nejnovější verzí 8 je k dispozici také pod licencí AGPLv3.
Oficiální ceny Raspberry Pi Compute Modulů 4 klesly o 5 dolarů (4 GB varianty), respektive o 10 dolarů (8 GB varianty).
Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.
#deklarace prazdne hash our %konfigurace; sub load_konfig() { # deklaruje lokalni promenne; my %konfigurace; # nacte ze souboru data a ulozi postupne do %konfigurace, # jenz ma strukturu { klic1=>[1,2,3,4],klic2=>[1,2],...} # jestlize doslo ke korektnimu naplneni lokalnich promennych, # zkopiruj my %konfigurace do our %konfigurace, # jinak skonci ale zachovej puvodni globalni konfiguraci. } # hlavni program load_konfig(); # chvili neco dela na zaklade %konfigurace load_konfig(); # chvili neco dela na zaklade nove %konfigurace load_konfig(); # chvili neco dela na zaklade dalsi nove %konfiguraceChci programu menit konfiguraci za behu a chci mit moznost kontroly syntaxe te nove konfigurace aniz bych narusil aktualni beh aplikace.
Sice získám kopii reference, jenže jestli se nepletu, bude se odkazovat na stejný místo v paměti, tedy do lokálních struktur tzn. při opětovném vyvolání té funkce, když budu ukládat nový konfigurák do těch lokálních proměnných, tak si budu zároveň přepisovat ty globální, ne?Tak takhle snad nefungují lokální proměnné ani v Perlu, ne? Resp. je rozdíl mezi
my
a local
, ale už si nepamatuju jaký, tak daleko jsem se v Perlu naštěstí nedostal our $konfigurace={} # reference na hash $konfigurace=load_konfig(); #v load_konfig() my $ret=$main::konfig # puvodni hodnota /VSE v poradku s daty/ && $ret=konfig # lokalni v procedure return $ret; }IMO our %config a my %konfig je zbytecnost samoucelna, nesetrici pamet a znesnadnujici citelnost Povesit load_konfig na signal (HUP, USR1) by byl problem ?
foreach ($key,$value) = $main::konfigurace { # maze globalni strukturu splice(@$value); # vymaze pole pod klicem v hashi delete($main::konfigurace{$key}); # vymaze prvek globalniho hashe; } foreach ($key,$value) = $konfigurace { # vytvari novou globalni strukturu z lokalni $main::konfigurace{$key} = [ @$value ] ; # vytvoř kopii pole a její anonymní referenci ulož jako hodnotu klíče globálního hashe }Tak za výše uvedené bych asi zasloužil oprátku, ale principiálně by to snad mělo být čisté. No ale taky je možné, že jsem jenom nepochopil jak je to s platností lokálních proměnných a lokálních referencí po opuštění bloku a princip chování garbage kolektoru v souvislosti s lokálnímy a globálnímy odkazy na anonymní pole vytvořené v rámci lokálního kontextu.
Tiskni
Sdílej: