Open source počítačová hra na hrdiny NetHack (Wikipedie, GitHub) byla vydána v nové verzi 5.0.0. První verze této hry byla vydána v roce 1987.
Evropská komise naléhavě vyzvala členské státy EU, aby kvůli ochraně nezletilých na internetu urychlily zavádění unijní aplikace pro ověřování věku a zajistily její dostupnost do konce roku. Členské státy mohou zavést aplikaci EU pro ověřování věku jako samostatnou aplikaci nebo ji integrovat do takzvané evropské peněženky digitální identity.
Richard Biener oznámil vydání verze 16.1 (16.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 16. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.
Zulip Server z open source komunikační platformy Zulip (Wikipedie, GitHub) byl vydán ve verzi 12.0. Přehled novinek v příspěvku na blogu.
Před 30 lety, tj. v úterý 30. dubna 1996, byl spuštěn Seznam.cz.
Byly zpracovány a zveřejněny všechny videozáznamy, které stojí za zveřejnění, z konference FOSDEM 2026.
Od úterý 28. dubna musí nově uváděné notebooky v Evropské unii podporovat nabíjení přes USB-C. Jednotná nabíječka byla schválena Evropským parlamentem v říjnu 2022.
Byly publikovány informace o kritické zranitelnosti CVE-2026-31431 pojmenované Copy Fail v Linuxu, konkrétně v kryptografii (AF_ALG). Běžný uživatel může získat práva roota (lokální eskalaci práv). Na všech distribucích Linuxu vydaných od roku 2017. Pomocí 732bajtového skriptu. V upstreamu je již opraveno. Zranitelnost byla nalezena pomocí AI Xint Code.
Textový editor Zed dospěl do verze 1.0. Představení v příspěvku na blogu.
Vývojáři svobodného 3D softwaru Blender představili (𝕏, Mastodon, Bluesky) nejnovějšího firemního sponzora Blenderu. Je ním společnost Anthropic stojící za AI Claude a úroveň sponzoringu je Patron, tj. minimálně 240 tisíc eur ročně. Anthropic oznámil sponzorství v tiskové zprávě Claude for Creative Work.
Řešení dotazu:
psql -l, případně (a to pro vás bude asi vhodnější), přímo SQL dotazem: SELECT datname FROM pg_database;
SELECT datname FROM pg_database WHERE datistemplate = false AND datname LIKE 'test%';
Uz zvazuju varianty jako select, grep, nebo nejaky pekny python a pak pgdrop $dbname
Prosim nejakeho guru o pomoc, casto tu byval Pavel Stehule a psal neuveritelna zaklinadla.
Nejde to zrejme proto, ze ve chvili kdy se dela where se nejmenuje ten sloupec modify, ale je to jen tip, protoze mi to rika, ze ten sloupec neexistuje. Cili by to mozna slo prez nejaky select into tmptableÚplně stačí ten výraz, který máte v
SELECT, zkopírovat do WHERE místo modify. Je to duplicitní kód, ale to je holt SQL… (Navíc v té části SELECT to pak asi nebudete potřebovat.)
zkousim nalamat do jednoho dotazuV PostgreSQL máte uložené procedury, je zbytečné to cpát do jednoho dotazu, když to nepotřebujete optimalizovat.
Je to duplicitní kód, ale to je holt SQL…Ani v SQL není potřeba duplikovat kód – stačí použít vnořený dotaz nebo CTE (WITH).
SELECT vyraz AS y FROM foo WHERE y = 10; -- nelzeLze duplikovat výraz (nicméně spočítá se pouze jednou):
SELECT vyraz AS y FROM foo WHERE vyraz = 10; -- vyraz se pocita pouze jednounebo použít derivovanou tabulku a přesunout predikát tam, vně už je alias viditelný:
SELECT * FROM (SELECT vyraz AS y) s WHERE y = 10;
CREATE OR REPLACE FUNCTION clean_all_dbs(IN _days_ago INT)
RETURNS void
LANGUAGE plpgsql
AS
$$
DECLARE
db RECORD;
BEGIN
FOR db IN
SELECT
datname,
(pg_stat_file('base/'||oid ||'/PG_VERSION')).modification AS modify
FROM
pg_database
WHERE
(pg_stat_file('base/'||oid ||'/PG_VERSION')).modification < NOW() - INTERVAL '14 days'
AND datname LIKE '%\_%'
LOOP
EXECUTE 'DROP DATABASE IF EXISTS ' || quote_ident(db.datname);
RAISE INFO 'Dropped database: %', quote_ident(db.datname);
END LOOP;
END;
$$;
Neni tam doreseno jen predani kolik dni zpetne se ma mazat, ale jinak to "skoro" funguje. Jediny problem je "ERROR: DROP DATABASE cannot be executed from a function or multi-command string."
Po chvili googleni jsem se docetl, ze neni podporovano dropovani databazi ve funkcich a tak jsem to nakonec udelal shell scriptem na par radcich.
Ne ze bych workaround nenasel, ale byl to rakovy hnus, ze mi prislo lepsi to udelat scriptem nize
#!/bin/bash
#
# Simple postgre cleaning script
#
days_ago=${1?"First arg define how old databases may be deleted"}
DELDB="/tmp/pg_deleted_db-$(date +%F)"
# Generate databases list
psql -c "SELECT \
datname, \
(pg_stat_file('base/'||oid ||'/PG_VERSION')).modification AS modify \
FROM \
pg_database \
WHERE \
(pg_stat_file('base/'||oid ||'/PG_VERSION')).modification < NOW() - INTERVAL '"${days_ago}" days\' \
AND datname LIKE '%\_%';" | grep '_' > ${DELDB}
# Main
echo "Deleting databases more than $days_ago old..."
while read -r dbname modify; do
dropdb ${dbname} && echo "Database ${dbname} has been dropped because is last modified on ${modify}!"
done < ${DELDB}
Zrejme to neni usecase co by resilo mnoho lidi, ale mozna to nekomu usetri par hodin casu
Tiskni
Sdílej: