Po roce od vydání verze 15.5 bylo vydáno openSUSE Leap 15.6. Přehled novinek v nejnovější verzi této linuxové distribuce v oznámení o vydání a v poznámkách k vydání.
Byla vydána nová verze 256 správce systému a služeb systemd (GitHub). Nově mimo jiné s run0 jako alternativou k sudo.
Společnost Oracle oznámila spolupráci s Google Cloudem, OpenAI a Microsoftem.
Zítra začne v Brně na FIT VUT třídenní open source komunitní konference DevConf.CZ 2024. Vstup je zdarma, nutná je ale registrace. Na programu je celá řada zajímavých přednášek, lightning talků, meetupů a workshopů. Přednášky lze sledovat i online na YouTube kanálu konference. Aktuální dění lze sledovat na Matrixu, 𝕏 nebo Mastodonu.
Google Chrome 126 byl prohlášen za stabilní. Nejnovější stabilní verze 126.0.6478.55 přináší řadu oprav a vylepšení (YouTube). Podrobný přehled v poznámkách k vydání. Opraveno bylo 21 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Byl vydán Mozilla Firefox 127.0. Přehled novinek v poznámkách k vydání, poznámkách k vydání pro firmy a na stránce věnované vývojářům. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 127 je již k dispozici také na Flathubu a Snapcraftu.
Byla vydána (𝕏) nová verze 9.5 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.
Společnost Raspberry Pi dnes vstoupila na Londýnskou burzu jako Raspberry Pi Holdings plc (investor).
Do 17. června do 19:00 běží na Steamu přehlídka nadcházejících her Festival Steam Next | červen 2024 doplněná demoverzemi, přenosy a dalšími aktivitami. Demoverze lze hrát zdarma.
Apple na své vývojářské konferenci WWDC24 (Worldwide Developers Conference, keynote) představil řadu novinek: svou umělou inteligenci pojmenovanou jednoduše Apple Intelligence, iOS 18, visionOS 2, macOS Sequoia, iPadOS 18, watchOS 11, …
Python jakožto virtuální mašina není deterministický. Obvyklým zdrojem nahodilosti je plánování vláken, v Pythonu ale můžete mít korektní jednovláknový program, který vám dá pro jeden vstup pokaždé jiné výsledky. Může za to hashování, hash objektu může být odvozen od jeho adresy v paměti, což je (stejně jako rozvrhování vláken) neuchopitelná záležitost o kterou se stará operační systém.
Já jsem na tuhle vlastnost narazil v momentě, kdy jsem před sebou měl program, který jako klíč k hashovací tabulce používal objekt funkce. Na jiném místě program tabulku sekvenčně procházel, jenže pořadí položek se mezi jednotlivými běhy měnilo.
Existují implementace hash-tabulek, které tímto problémem netrpí. Bohužel, zmiňovaný program je tak velká a složitá bestie, že jsem musel zvolit alternativní přístup: upravit samotný interpret Pythonu.
Patch je to jednoduchý, brutální, ale funkční:
--- Python-2.4.4/Objects/object.c 2006-04-12 19:06:58.000000000 +0200 +++ /home/paskma/B/src/Python-2.4.4/Objects/object.c 2009-03-20 10:01:29.000000000 +0100 @@ -984,6 +984,8 @@ long _Py_HashPointer(void *p) { + return 1; + #if SIZEOF_LONG >= SIZEOF_VOID_P return (long)p; #else
Pochopitelně tenhle hack může sabotovat výkon, v mém případě to ale program příliš nezpomalilo, tahle funkce se používá až když není zbytí.
Tiskni Sdílej: