Google Chrome 154 byl prohlášen za stabilní. Nejnovější stabilní verze 154.0.8037.57 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Opraveno bylo 108 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Vláda sníží v příštím roce výdaje na IT služby státu o 1,4 miliardy korun. Úspory má umožnit lepší koordinace nákupu služeb napříč resorty prostřednictvím nového zmocněnce. Celkové roční výdaje státu na informační technologie a digitalizaci se podle údajů ministerstva průmyslu a obchodu pohybují okolo 20 až 25 miliard korun ročně, pro letošek bylo na 320 projektů vyčleněno 21 miliard.
Irská komise pro ochranu dat (DPC) uložila americké technologické společnosti Google ze skupiny Alphabet pokutu 403 milionů eur (9,8 miliardy Kč) za neoprávněné nakládání s údaji o poloze uživatelů. Firma podle komise porušila evropské nařízení o ochraně osobních údajů (GDPR). DPC uvedla, že při šetření zjistila, že si lidé nemuseli být vědomi skutečnosti, že jejich poloha byla využívána například k ovlivňování prostřednictvím reklam nebo k odvozování jejich zájmů, a mohli tak ztratit kontrolu nad svými osobními údaji.
Byla oznámena beta verze nového video kodeku Pyrowave pro streamování her v Steam Remote Play. S vysokou propustností a nízkou latencí. S podporou HDR a YUV 4:4:4.
Byl vydán Sublime Text 4 Build 4213. Sublime Text (Wikipedie) je proprietární multiplatformní editor textových souborů a zdrojových kódů. Ke stažení a k vyzkoušení je zdarma. Pro další používání je nutná licence v ceně 99 dolarů. Spolu se Sublime Merge je cena 168 dolarů.
Firma Anthropic, tvůrce AI modelu Claude, začala v oblasti Sanfranciského zálivu v tichosti provozovat vlastní biotechnologickou laboratoř. Anthropic prý chce pomocí AI urychlit hledání léků na nemoci, jimž farmaceutický průmysl dle názoru firmy věnuje příliš málo pozornosti. Firma tvrdí, že laboratoř se zatím soustředí především na základní biologii, nikoli přímo na vývoj léčiv. Farmaceutický výzkum je pro generálního ředitele Daria Amodeie velice osobní téma, jeho otec zemřel na hepatitidu C několik málo let před objevením účinné léčby.
Vědci z Googlu dokončili mapu všech neuronových spojení v mozku (tzv. konektom) samečka mušky octomilky obecné (drosophila melanogaster), hlavním cílem je komparativní analýza s již zmapovaným mozkem samičky. S tímto veřejně dostupným modelem, čítajícím přibližně 160 000 neuronů, se začali bavit nadšenci. Mozek mouchy pohání experimentálního kryptoburzovního bota Stonkfly, případně si zahrál počítačové hry Beat Saber, Mario64 a samozřejmě DOOM (gameplay videa). Ani mozek samičky nezůstal stranou, vyzkoušel si Minecraft.
Alibaba Cloud je dalším sponzorem nadace Omacom Foundation stojící za linuxovou distribucí Omarchy. Přislíbená částka je 3 miliony dolarů, tj. 1 milion dolarů ročně po dobu tří let. Stejná částka jako u DigitalOcean.
Byla vydána nová verze 262 správce systému a služeb systemd (Wikipedie, GitHub).
Canonical oznámil vydání Zephyr 26.04 LTS. Jedná se o komerční distribuci operačního systému pro mikrokontroléry Zephyr (Wikipedie) s podporou až 15 let.
Už delší dobu se věnuji použití Pythonu na webu. Nedávno mě kamarád přivedl na nápad zkusit kromě mod_pythonu či obyčejného CGI také relativně odlehčený framework jménem CherryPy. Z pythoních frameworků jsem zkoušel zatím jen Django, které je velice slušné, ale já si přecejen ten základ aplikace píšu sám. Django toho za mě dělá až moc. Podobně je na tom TurboGears, který je mi ale sympatičtější, protože vychází právě z CherryPy a templating enginu Kid (ten se dobře s CherryPy používá i tak).
Způsobů jak použít CherryPy je více. Můžete buď použít vestavěný server (port 8080, ale nic vám nebrání při absenci Apache to hodit na 80), FastCGI nebo třeba právě můj oblíbený mod_python. Oficiální návod na tuto kombinaci neexistuje, pouze je na webu wikioidní databáze "receptů", mezi nimiž takový návod je.
Brzy jsem však zjistil, že ten návod prakticky vůbec nefunguje (mj. také kvůli současné situaci, kdy se pomalu klube verze 3.0.0 a hodně věcí se mění) a tak jsem se jal o tom diskutovat v cherrypy-users na Google Groups. No a dneska bych vám rád trochu konsolidovaně předložil, co jsme spolu s původním autorem onoho návodu dali dohromady — tedy funkční návod na zprovoznění nejaktuálnější verze CherryPy (3.0.0b2) přes Apache & mod_python.
Nejdřív pro pořádek uvedu, na čem to všechno kutím: Apache/2.0.55 (Ubuntu) mod_python/3.1.4 Python/2.4.3.
Jak nainstalovat výše uvedený SW, to snad nemusím vysvětlovat. Předpokládám, že každý uživatel Linuxu ví, jak se v jeho distru pracuje s balíčkovacím systémem a že člověk zajímající se o Python na webu tak nějak ví jak to s Apachem chodí.
Instalace CherryPy je jedoduchá. Stáhneme poslední verzi a nainstalujeme pomocí
sudo python setup.py installPak využijeme vymožeností open-source a CherryPy si spravíme. V
__init__.py v adresáři cherrypy chybí from cherrypy import _cprequestDále potřebujeme skript modpython_gateway.py, který je v nové verzi CherryPy již nahrazen nativním modulem, ten ale ještě jaksi nefunguje jak má. Stažený skript nakopírujeme někam do PYTHONPATH.
/var/www) vytoříme adresář myapp. V něm vytvoříme webařům snad známý soubor .htaccess a vložíme do něj toto:
PythonPath "['/var/www/myapp']+sys.path" SetHandler python-program PythonHandler modpython_gateway::handler PythonOption wsgi.startup app::startapp PythonOption wsgi.application cherrypy::tree PythonOption wsgi.cleanup cherrypy::engine.stopVěc se dá zařídit i přímo přes
apache2.conf, kam se stejné řádky vloží do tagu <Location /myapp> </Location>.app.py a to s tímto obsahem:
import cherrypy
class HelloWorld:
def index(self):
return "Hello world!"
index.exposed = True
def page(self):
return "Some page..."
page.exposed = True
def startapp(req):
cherrypy.tree.mount(HelloWorld(), "/myapp")
cherrypy.config.update({"environment": "production"})
cherrypy.engine.start(blocking=False)
Ze souboru je dobře vidět, jaká je filosofie stavby CherryPy aplikace. Třída je "adresářovou úrovní", její metody jednotlivými "stránkami" (berte ty uvozovky opravdu vážně). Nesmírně praktická je pak možnost definovat proměnné a další věci v konstruktoru a používat je v jakékoliv metodě té třídy. No a když se pak tyhle věci skoubí s dědičností tříd a podobnými věcmi... Ve startovací funkci se na strom aplikace jednoduše namountuje co a hlavně kam chceme. Abychom náš projekt našli na http://localhost/myapp, naroubujeme třídu HelloWorld na větev /myapp. IMHO perfektní filosofie tvorby webu.
No, a teď bychom měli vidět "Hello World!" na http://localhost/myapp (resp. http://localhost/myapp/index) a text "Some page..." na http://localhost/myapp/page.
Tenhle blogpost rozhodně nemá za cíl podávat vyčerpávající informace o uvedeném frameworku a nějak do hloubky rozebírat jeho princip, to je asi zřejmé. Jen ventiluju svoji radost z toho, že se konečně něco pohlo
Zájemcům doporučuju prošmejdit web CherryPy a uvedenou Google grupu.
Tiskni
Sdílej:
mozem sa este opytat ake mate skusenosti s mod_python? ja som bezal povodne na nom, ale mal som problemy s kesovanim skriptov.No, tak nevim, jestli ted mluvime oba o tom samem, ale ja mel (a obcas i mam) takove problemy taky. Mod_python mi neznamo proc casto nereloaduje moduly a to i kdyz mam explicitne nastaveno
PythonAutoReload On
Ale to je problem jen pri vyvoji.
Jinak s nim mam zksuenosti dobre, zvlaste s tim vestavenym templatovacim systemem. Na opravdu male weby je cisty mod_python spickova vec. I ten jeho CGIHandler je 15x rychlejsi nez ciste CGI
Ta rychlost myslim, ze bude jedna z nespornych vyhod mod_pythonu oproti mod_rewrite. To mi precijen pripadne jako takove "spinave" reseni
...ale ten je mi zrovna nejsympatictejsi.
U cherrypy ale prakticky vubec, je to lepsi. Dokonce pouzivani KID templatu s povolenym kid.enable_import() je spolehlivejsi nez normalne ty soubory natahovat, hazi to mene chyb (neznamo proc mi to pri beznem natahovani obcas napise, ze tam ten soubor neni, nekdy je to OK). Stejne je to pres ten import elegantnejsi
vo verzii 3.3 to ma uz byt odstranene...Jeee, to bych byl stastny jako blecha!
Jedina opravdova vada mod_pythonu...
Nedostal jsem se zatím k tomu, abych naimplementoval podporu pro jiné databázové datové typy, což už asi bude horší.Mozna, ze lepe by to slo v TurboGears, kterej pouziva SQLObject, ne? btw: podle tohoto postu pod kapotou Djanga taky tluce CherryPy
Jednoduchý, a ne..re se do cesty, když mám představu, jak něco napsat.