Apple představil 13palcový MacBook Neo s čipem A18 Pro. V základní konfiguraci za 16 990 Kč.
Kalifornský zákon AB 1043 platný od 1. ledna 2027 vyžaduje, aby operační systémy požadovaly po uživatelích věk nebo datum narození a skrze API poskytovaly aplikacím informaci, zda je uživatel mladší 13 let, má 13 až 16 let, má 16 až 18 let nebo má alespoň 18 let. Vývojáři linuxových distribucí řeší, co s tím (Ubuntu, Fedora, …).
Konference LinuxDays 2026 proběhne o víkendu 3. a 4. října v Praze v areálu ČVUT v Dejvicích na FIT. Čekají vás desítky přednášek, workshopy, stánky a setkání se spoustou chytrých lidí.
Nové verze webových prohlížečů Chrome a Firefox jsou vydávány každé 4 týdny. Aktuální verze Chrome je 145. Aktuální verze Firefoxu je 148. Od září přejde Chrome na dvoutýdenní cyklus vydávání. V kterém týdnu bude mít Chrome větší číslo verze než Firefox? 😀
Apple představil nové čipy M5 Pro a M5 Max, MacBook Pro s čipy M5 Pro a M5 Max, MacBook Air s čipem M5 a Studio Display a nový Studio Display XDR.
Bylo spuštěno hlasování o přednáškách a workshopech pro letošní Installfest, jenž proběhne o víkendu 28. a 29. března v Praze na Karlově náměstí 13.
Byla vydána (Mastodon, 𝕏) třetí RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.
Apple představil iPhone 17e a iPad Air s čipem M4.
Byla vydána verze 1.0 editoru kódů Gram. Jedná se o fork editoru Zed bez telemetrie a umělé inteligence.
Byla oznámena spolupráce GrapheneOS s Motorolou. Podrobnosti v tiskové zprávě. GrapheneOS (Wikpedie) je varianta Androidu zaměřující se na bezpečnost a soukromí.
Je nějak možné zmrazit pythoní proces a pak ho post-mortem "debugovat", podívat se na stack trace, parametry volání, lokální proměnné (vrátane nadřazených framů)? Něco podobného jako když v C/C++ programu zavoláte abort(), ono to hodí coredump, z kterého lze zjistit nějaké informace via gdb.
Jde o tohle: na jediném stroji občas nastane podivná race condition (jinde nenastává), kterou je velmi těžké zreplikovat. Je sice možné zjistit, že nastala, zalogovat, jenže to nestačí.
Nápady k tomu jsem měl zatím jenom dva, ale žádný není ideální:
První možnost je příliš low-level (zjišťování jaký pythoní kód se vlastně vykonává).
Daný race-condition nastane cca 10-20 krát za den, při druhé možnosti buď člověk musí čekat nebo jich má mnoho.
Víte o nejakém jednodušším řešení?
V podobných situacích občas může pomoct pustit interpret pythonu s parametrem -i (interactive). Když program skončí, pustí se pythonní konzole a je možné se v tom rýpat, protože všechny objekty zůstanou beze změny.
Ale to asi znáš.
python -m pdb myscript.pya dále se píše že: When invoked as a script, pdb will automatically enter post-mortem debugging if the program being debugged exits abnormally. After post-mortem debugging (or after normal exit of the program), pdb will restart the program. Automatic restarting preserves pdb's state (such as breakpoints) and in most cases is more useful than quitting the debugger upon program's exit. New in version 2.4: Restarting post-mortem behavior added. Takže by to možná mohlo pomoci, ale já jsem nikdy takhle neladil, to si radši přidám nějaký ten
print navíc
Tohle jde AFAIK s kazdym trocha lepsim pythonim debuggerem. Problematicky skript je spusten automaticky cronem stovky krat denne, co dela cekani na vyskyt race condition neprijemny. Zatim jsem pridal dalsi logging hlasky aby bylo aspon videt kdy chyba nastane prvne (jestli to dela C/C++ kod nebo pythoni kod).
Jinak zatim jsem zjistil, ze dumpnutni kompletniho stavu pythoniho procesu zadny nastroj nedokaze (vyjma coredump).
Po kratkem pruzkumu jsem zjistil, ze by slo naprogramovat nastroj co by to umel jako nadstavbu GDB. Nejake info:
Bohuzel je to prace tak na mesic, co nemam.
Ale nasel jsem jeste CryoPID projekt, ktery pry umi zmrazit proces. Tak to vyzkousim a uvidim.
Treti moznost by byla udelat si jednoducheho daemona , ktereho by procesy zavolaly, kdyby zjistili poruseni invariantu. Ten by je uspal (procesy by cekaly na odpoved). Daemon by se ovladal z command line, mohl by "odekmknout" uspany proces a hodit ho remote debuggeru, nechat pokracovat, atd.
Ja nejvic doufam ze CryoPID bude fungovat
To by se hodilo i v jinych pripadech.
Tiskni
Sdílej: