Po 20 letech a 17 otevřených (open source) krátkých filmech Blender Studio oznámilo plán na svůj první celovečerní film. Cílem samozřejmě není jenom nový otevřený film, ale především vývoj a vylepšení otevřených nástrojů pro spolupráci napříč celým procesem a vytvoření otevřené příručky (playbook) pro filmovou produkci ve velkém měřítku s informacemi, které jsou obvykle dostupné pouze uvnitř komerčních studií, a pomoci tak nezávislým tvůrcům překonat technické a organizační bariéry.
Byla vydána nová verze 26.6.25 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.
Apple bez varování odstranil ze svého obchodu sociální síť VKontaktě i další aplikace skupiny VK, jako je VK Music nebo VK Video [Novinky.cz].
V dubnu loňského roku představený poštovní klient Notion Mail bude 22. září ukončen.
Konference OpenAlt 2026 hledá přednášející. Proběhne o víkendu 7. a 8. listopadu na půdě Fakulty informačních technologií VUT v Brně. Témata konference jsou: Otevřený a svobodný software, IoT a Hnutí tvůrců, Vzdělávání, Bezpečnost a soukromí, Otevřená společnost, komunity a data, OpenMobility a další.
Společnosti OpenAI a Broadcom oznámily čip optimalizovaný pro AI pojmenovaný Jalapeño.
Deno (Wikipedie), běhové prostředí (runtime) pro JavaScript, TypeScript a WebAssembly, bylo vydáno v nové verzi 2.9. Hlavní novinkou je deno desktop pro převod Deno projektu na desktopovou aplikaci. Jedná se o alternativu k frameworkům Electron nebo Tauri.
Od zítra jsou Datové schránky oficiálně na nové adrese datovka.gov.cz. Adresa mojedatovaschranka.cz zůstává funkční do 27. srpna 2026, následně budou uživatelé automaticky přesměrováni na datovka.gov.cz.
Dolphin (Wikipedie), tj. open source multiplatformní emulátor herních konzolí GameCube a Wii od Nintenda, byl vydán ve verzi 2606. S podporou Game Boy Playeru.
Vasudeva Kamath představil utilitu debvulns, alternativu k nativní utilitě debsecan, pro výpis zranitelností v Debianu. Navíc má především možnost výstupu ve strukturovaných formátech JSON a CSV. V plánu je exportér pro Prometheus.
VARCHAR username TEXT msg DATE created_atA potreboval bych odmazat zpravy starsi nez 1 mesic, ale ponechat alespon 3 posledni pro kazdy username (i kdyz budou treba starsi nez 1 mesic) Verim, ze uz to nekdo musel resit, ale asi se googlu spatne ptam :( Dekuji
DELETE starsi nez mesic EXCEPT (SELECT prvni tri starsi nez mesic pro kazdeho usera);
CREATE TABLE msg_log
(
username VARCHAR(100)
, msg TEXT(100)
, created_at DATE
);
CREATE INDEX idx_msg_log_created_at ON msg_log (username, created_at);
INSERT INTO msg_log VALUES ('y', 'A', CURRENT_DATE - interval 6 month);
INSERT INTO msg_log VALUES ('x', 'B', CURRENT_DATE - interval 5 month);
INSERT INTO msg_log VALUES ('x', 'C', CURRENT_DATE - interval 4 month);
INSERT INTO msg_log VALUES ('x', 'D', CURRENT_DATE - interval 4 month);
INSERT INTO msg_log VALUES ('x', 'E', CURRENT_DATE - interval 4 month);
INSERT INTO msg_log VALUES ('x', 'F', CURRENT_DATE - interval 3 month);
INSERT INTO msg_log VALUES ('x', 'G', CURRENT_DATE - interval 2 month);
INSERT INTO msg_log VALUES ('x', 'H', CURRENT_DATE - interval 1 month);
INSERT INTO msg_log VALUES ('x', 'I', CURRENT_DATE - interval 1 day);
INSERT INTO msg_log VALUES ('y', 'J', CURRENT_DATE);
INSERT INTO msg_log VALUES ('z', 'K', CURRENT_DATE - interval 10 month);
INSERT INTO msg_log VALUES ('z', 'L', CURRENT_DATE - interval 9 month);
INSERT INTO msg_log VALUES ('z', 'M', CURRENT_DATE - interval 8 month);
INSERT INTO msg_log VALUES ('z', 'N', CURRENT_DATE - interval 7 month);
INSERT INTO msg_log VALUES ('z', 'O', CURRENT_DATE - interval 6 month);
INSERT INTO msg_log VALUES ('z', 'P', CURRENT_DATE - interval 3 month);
DELETE d
FROM msg_log AS d
WHERE d.username = 'z'
AND d.created_at < (
SELECT min(x.created_at) min_ts
FROM (
SELECT *
FROM msg_log l
WHERE l.created_at < CURRENT_DATE - interval 1 month
AND l.username = 'z'
ORDER BY l.created_at DESC
LIMIT 3
) x)
;
...a volat to pre kazdeho usera zvlast (v priklade 'z').
tu je kompletny priklad pre PostgreSQL (testovane na 12.6):
CREATE TABLE msg_log
(
username VARCHAR
, msg TEXT
, created_at DATE
;
CREATE INDEX idx_msg_log_created_at ON msg_log (username, created_at);
INSERT INTO msg_log VALUES ('y', 'A', current_date - interval '6 month');
INSERT INTO msg_log VALUES ('x', 'B', current_date - interval '5 month');
INSERT INTO msg_log VALUES ('x', 'C', current_date - interval '4 month');
INSERT INTO msg_log VALUES ('x', 'D', current_date - interval '4 month');
INSERT INTO msg_log VALUES ('x', 'E', current_date - interval '4 month');
INSERT INTO msg_log VALUES ('x', 'F', current_date - interval '3 month');
INSERT INTO msg_log VALUES ('x', 'G', current_date - interval '2 month');
INSERT INTO msg_log VALUES ('x', 'H', current_date - interval '1 month');
INSERT INTO msg_log VALUES ('x', 'I', current_date - interval '1 day');
INSERT INTO msg_log VALUES ('y', 'J', current_date);
INSERT INTO msg_log VALUES ('z', 'K', current_date - interval '10 month');
INSERT INTO msg_log VALUES ('z', 'L', current_date - interval '9 month');
INSERT INTO msg_log VALUES ('z', 'M', current_date - interval '8 month');
INSERT INTO msg_log VALUES ('z', 'N', current_date - interval '7 month');
INSERT INTO msg_log VALUES ('z', 'O', current_date - interval '6 month');
INSERT INTO msg_log VALUES ('z', 'P', current_date - interval '3 month');
WITH users AS (
-- idealne mat ulozene v tabulke, na ktoru odkazuje cudzi kluc na msg_log(username)
SELECT DISTINCT username FROM msg_log
), maxDateKeptPerUser AS (
SELECT u.username, (
SELECT min(x.created_at)
FROM (SELECT *
FROM msg_log l
WHERE l.created_at < CURRENT_DATE - interval '1 month'
AND l.username = u.username
ORDER BY l.created_at DESC
LIMIT 3
) x
) AS created_at
FROM users AS u
)
DELETE FROM msg_log AS d
USING maxDateKeptPerUser AS m
WHERE d.username = m.username
AND d.created_at < m.created_at
;
Tiskni
Sdílej: